Ecosyste.ms: Awesome

An open API service indexing awesome lists of open source software.

Awesome Lists | Featured Topics | Projects

https://github.com/WebFreak001/dub-upgrade

Run `dub upgrade` trying to repeat on network failure and using package cache on GitHub Actions
https://github.com/WebFreak001/dub-upgrade

Last synced: about 2 hours ago
JSON representation

Run `dub upgrade` trying to repeat on network failure and using package cache on GitHub Actions

Awesome Lists containing this project

README

        

# dub-upgrade

GitHub Actions CI Action to run `dub upgrade` with automatic retry on network failure and caching package downloads and optionally also compiled library binaries across builds using dub's native caching functionality.

## Usage

Basic usage:
```yml
steps:
- uses: actions/checkout@v1

- uses: dlang-community/setup-dlang@v1 # install D compiler & Dub
with:
compiler: dmd-latest

- uses: WebFreak001/[email protected]

- name: Run tests # do whatever with upgraded & fetched dependencies
run: dub test
```

Caching compiled binaries:
```yml
steps:
- uses: actions/checkout@v1

- uses: dlang-community/setup-dlang@v1 # install D compiler & Dub
with:
compiler: dmd-latest

- uses: WebFreak001/[email protected]

- name: Run tests # do whatever with upgraded & fetched dependencies
run: dub test

- uses: WebFreak001/[email protected] # second call to cache dependency binaries
with:
store: true # set this to true to not run an upgrade but only update cache
```

Not using cache, only retrying on network failure:
```yml
steps:
- uses: actions/checkout@v1

- uses: dlang-community/setup-dlang@v1 # install D compiler & Dub
with:
compiler: dmd-latest

- uses: WebFreak001/[email protected]
with:
cache: false

- name: Run tests # do whatever with upgraded & fetched dependencies
run: dub test
```