|
|
@ -430,21 +430,28 @@ Replace `~/.local/share/renv` with the correct `path` if not using Ubuntu.
|
|
|
|
|
|
|
|
|
|
|
|
## Ruby - Bundler
|
|
|
|
## Ruby - Bundler
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
[`ruby/setup-ruby`](https://github.com/ruby/setup-ruby) provides a way to automatically run `bundle install` and cache the result:
|
|
|
|
|
|
|
|
|
|
|
|
```yaml
|
|
|
|
```yaml
|
|
|
|
- uses: actions/cache@v2
|
|
|
|
- uses: ruby/setup-ruby@v1
|
|
|
|
with:
|
|
|
|
with:
|
|
|
|
path: vendor/bundle
|
|
|
|
bundler-cache: true
|
|
|
|
key: ${{ runner.os }}-gems-${{ hashFiles('**/Gemfile.lock') }}
|
|
|
|
|
|
|
|
restore-keys: |
|
|
|
|
|
|
|
|
${{ runner.os }}-gems-
|
|
|
|
|
|
|
|
```
|
|
|
|
```
|
|
|
|
When dependencies are installed later in the workflow, we must specify the same path for the bundler.
|
|
|
|
|
|
|
|
|
|
|
|
If necessary, you can also cache gems manually using `actions/cache`:
|
|
|
|
|
|
|
|
|
|
|
|
```yaml
|
|
|
|
```yaml
|
|
|
|
- name: Bundle install
|
|
|
|
- uses: actions/cache@v2
|
|
|
|
|
|
|
|
with:
|
|
|
|
|
|
|
|
path: vendor/bundle
|
|
|
|
|
|
|
|
key: bundle-use-ruby-${{ matrix.os }}-${{ matrix.ruby }}-${{ hashFiles('**/Gemfile.lock') }}
|
|
|
|
|
|
|
|
restore-keys: |
|
|
|
|
|
|
|
|
bundle-use-ruby-${{ matrix.os }}-${{ matrix.ruby }}-
|
|
|
|
|
|
|
|
- name: bundle install
|
|
|
|
run: |
|
|
|
|
run: |
|
|
|
|
|
|
|
|
bundle config deployment true
|
|
|
|
bundle config path vendor/bundle
|
|
|
|
bundle config path vendor/bundle
|
|
|
|
bundle install --jobs 4 --retry 3
|
|
|
|
bundle install --jobs 4
|
|
|
|
```
|
|
|
|
```
|
|
|
|
|
|
|
|
|
|
|
|
## Rust - Cargo
|
|
|
|
## Rust - Cargo
|
|
|
|