1
0
Fork 0
mirror of https://code.forgejo.org/actions/cache.git synced 2025-04-02 04:57:46 +02:00
This commit is contained in:
Andrew Marshall 2022-12-24 21:10:26 +03:30 committed by GitHub
commit c718199da4
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
2 changed files with 51 additions and 0 deletions

View file

@ -98,6 +98,7 @@ Every programming language and framework has its own way of caching.
See [Examples](examples.md) for a list of `actions/cache` implementations for use with:
- [C++ - Conan](./examples.md#c---conan)
- [C# - NuGet](./examples.md#c---nuget)
- [Clojure - Lein Deps](./examples.md#clojure---lein-deps)
- [D - DUB](./examples.md#d---dub)

View file

@ -1,5 +1,6 @@
# Examples
- [C++ - Conan](#c---conan)
- [C# - NuGet](#c---nuget)
- [Clojure - Lein Deps](#clojure---lein-deps)
- [D - DUB](#d---dub)
@ -39,6 +40,55 @@
- [Swift, Objective-C - CocoaPods](#swift-objective-c---cocoapods)
- [Swift - Swift Package Manager](#swift---swift-package-manager)
## C++ - Conan
Using [Conan Lockfiles](https://docs.conan.io/en/latest/versioning/lockfiles.html):
```yaml
- name: create conan cache keys
run: |
conan lock create conanfile.py --build missing
- uses: actions/cache@v3
with:
path: |
~/.conan/data
key: conan-${{ hashFiles('conan.lock') }}
run: |
conan install . --lockfile conan.lock --build missing
```
For Windows, use
```yaml
- uses: actions/cache@v3
if: runner.os == 'Windows'
with:
path: |
~/.conan/data
C:/.conan
key: conan-${{ hashFiles('conan.lock') }}
```
Using a custom cache location, and a profile as a partial cache key:
```yaml
env:
CONAN_USER_HOME: /tmp/
PROFILE: my_profile
- name: create lockfile
run: |
conan lock create conanfile.py -pr $PROFILE --build missing
- uses: actions/cache@v3
with:
path: |
${{ env.CONAN_USER_HOME }}/.conan/data
key: conan-${{ env.PROFILE }}-${{ hashFiles('conan.lock') }}
```
## C# - NuGet
Using [NuGet lock files](https://docs.microsoft.com/nuget/consume-packages/package-references-in-project-files#locking-dependencies):