2019-10-31 11:36:50 -04:00
# Examples
- [C# - Nuget ](#c---nuget )
2019-11-05 19:04:07 +02:00
- [Elixir - Mix ](#elixir---mix )
- [Go - Modules ](#go---modules )
2019-10-31 11:36:50 -04:00
- [Java - Gradle ](#java---gradle )
- [Java - Maven ](#java---maven )
2019-11-05 19:04:07 +02:00
- [Node - npm ](#node---npm )
- [Node - Yarn ](#node---yarn )
2019-10-31 11:36:50 -04:00
- [Ruby - Gem ](#ruby---gem )
2019-11-05 00:15:02 +09:00
- [Rust - Cargo ](#rust---cargo )
2019-11-05 19:04:07 +02:00
- [Swift, Objective-C - Carthage ](#swift-objective-c---carthage )
- [Swift, Objective-C - CocoaPods ](#swift-objective-c---cocoapods )
2019-10-31 11:36:50 -04:00
2019-11-05 19:04:07 +02:00
## C# - Nuget
Using [NuGet lock files ](https://docs.microsoft.com/nuget/consume-packages/package-references-in-project-files#locking-dependencies ):
2019-10-31 11:36:50 -04:00
```yaml
2019-11-04 16:40:33 -05:00
- uses: actions/cache@v1
2019-10-31 11:36:50 -04:00
with:
2019-11-05 19:04:07 +02:00
path: ~/.nuget/packages
key: ${{ runner.os }}-nuget-${{ hashFiles('**/packages.lock.json') }}
2019-10-31 11:36:50 -04:00
restore-keys: |
2019-11-05 19:04:07 +02:00
${{ runner.os }}-nuget-
2019-10-31 11:36:50 -04:00
```
2019-11-05 19:04:07 +02:00
## Elixir - Mix
2019-10-31 11:36:50 -04:00
```yaml
2019-11-04 16:40:33 -05:00
- uses: actions/cache@v1
2019-10-31 11:36:50 -04:00
with:
2019-11-05 19:04:07 +02:00
path: deps
key: ${{ runner.os }}-mix-${{ hashFiles(format('{0}{1}', github.workspace, '/mix.lock')) }}
2019-10-31 11:36:50 -04:00
restore-keys: |
2019-11-05 19:04:07 +02:00
${{ runner.os }}-mix-
2019-10-31 11:36:50 -04:00
```
2019-11-05 19:04:07 +02:00
## Go - Modules
2019-11-05 17:03:56 +01:00
2019-10-31 11:36:50 -04:00
```yaml
2019-11-04 16:40:33 -05:00
- uses: actions/cache@v1
2019-10-31 11:36:50 -04:00
with:
2019-11-05 19:04:07 +02:00
path: ~/go/pkg/mod
key: ${{ runner.os }}-go-${{ hashFiles('**/go.sum') }}
2019-10-31 11:36:50 -04:00
restore-keys: |
2019-11-05 19:04:07 +02:00
${{ runner.os }}-go-
2019-10-31 11:36:50 -04:00
```
## Java - Gradle
```yaml
2019-11-04 16:40:33 -05:00
- uses: actions/cache@v1
2019-10-31 11:36:50 -04:00
with:
path: ~/.gradle/caches
key: ${{ runner.os }}-gradle-${{ hashFiles('**/*.gradle') }}
restore-keys: |
${{ runner.os }}-gradle-
```
## Java - Maven
```yaml
2019-11-04 16:40:33 -05:00
- uses: actions/cache@v1
2019-10-31 11:36:50 -04:00
with:
path: ~/.m2/repository
key: ${{ runner.os }}-maven-${{ hashFiles('**/pom.xml') }}
restore-keys: |
2019-10-31 12:08:09 -07:00
${{ runner.os }}-maven-
2019-10-31 11:36:50 -04:00
```
2019-11-05 19:04:07 +02:00
## Node - npm
2019-10-31 11:36:50 -04:00
```yaml
2019-11-05 17:03:56 +01:00
- uses: actions/cache@v1
with:
2019-11-05 19:04:07 +02:00
path: node_modules
key: ${{ runner.os }}-node-${{ hashFiles('**/package-lock.json') }}
2019-11-05 17:03:56 +01:00
restore-keys: |
2019-11-05 19:04:07 +02:00
${{ runner.os }}-node-
2019-10-31 11:36:50 -04:00
```
2019-11-05 19:04:07 +02:00
## Node - Yarn
2019-10-31 11:36:50 -04:00
```yaml
2019-11-04 16:40:33 -05:00
- uses: actions/cache@v1
2019-10-31 11:36:50 -04:00
with:
2019-11-05 19:04:07 +02:00
path: ~/.cache/yarn
key: ${{ runner.os }}-yarn-${{ hashFiles(format('{0}{1}', github.workspace, '/yarn.lock')) }}
2019-10-31 11:36:50 -04:00
restore-keys: |
2019-11-05 19:04:07 +02:00
${{ runner.os }}-yarn-
2019-10-31 11:36:50 -04:00
```
## Ruby - Gem
```yaml
2019-11-04 16:40:33 -05:00
- uses: actions/cache@v1
2019-10-31 11:36:50 -04:00
with:
path: vendor/bundle
key: ${{ runner.os }}-gem-${{ hashFiles('**/Gemfile.lock') }}
restore-keys: |
${{ runner.os }}-gem-
2019-11-01 20:27:43 +01:00
```
2019-11-05 00:15:02 +09:00
## Rust - Cargo
2019-11-05 17:03:56 +01:00
```yaml
2019-11-05 00:15:02 +09:00
- name: Cache cargo registry
2019-11-04 16:40:33 -05:00
uses: actions/cache@v1
2019-11-05 00:15:02 +09:00
with:
path: ~/.cargo/registry
key: ${{ runner.os }}-cargo-registry-${{ hashFiles('**/Cargo.lock') }}
- name: Cache cargo index
2019-11-04 16:40:33 -05:00
uses: actions/cache@v1
2019-11-05 00:15:02 +09:00
with:
path: ~/.cargo/git
key: ${{ runner.os }}-cargo-index-${{ hashFiles('**/Cargo.lock') }}
- name: Cache cargo build
2019-11-04 16:40:33 -05:00
uses: actions/cache@v1
2019-11-05 00:15:02 +09:00
with:
path: target
key: ${{ runner.os }}-cargo-build-target-${{ hashFiles('**/Cargo.lock') }}
```
2019-11-05 19:04:07 +02:00
## Swift, Objective-C - Carthage
```yaml
- uses: actions/cache@v1
with:
path: Carthage
key: ${{ runner.os }}-carthage-${{ hashFiles('**/Cartfile.resolved') }}
restore-keys: |
${{ runner.os }}-carthage-
```
## Swift, Objective-C - CocoaPods
```yaml
- uses: actions/cache@v1
with:
path: Pods
key: ${{ runner.os }}-pods-${{ hashFiles('**/Podfile.lock') }}
restore-keys: |
${{ runner.os }}-pods-
```