mirror of
				https://github.com/actions/cache.git
				synced 2025-11-04 15:48:39 +08:00 
			
		
		
		
	[examples] add c++ conan example
This commit is contained in:
		
							parent
							
								
									67b6d52d50
								
							
						
					
					
						commit
						a339655823
					
				| 
						 | 
					@ -86,6 +86,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:
 | 
					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)
 | 
					- [C# - Nuget](./examples.md#c---nuget)
 | 
				
			||||||
- [D - DUB](./examples.md#d---dub)
 | 
					- [D - DUB](./examples.md#d---dub)
 | 
				
			||||||
- [Elixir - Mix](./examples.md#elixir---mix)
 | 
					- [Elixir - Mix](./examples.md#elixir---mix)
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
							
								
								
									
										42
									
								
								examples.md
									
									
									
									
									
								
							
							
						
						
									
										42
									
								
								examples.md
									
									
									
									
									
								
							| 
						 | 
					@ -1,5 +1,6 @@
 | 
				
			||||||
# Examples
 | 
					# Examples
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					- [C++ - Conan](#c---conan)
 | 
				
			||||||
- [C# - NuGet](#c---nuget)
 | 
					- [C# - NuGet](#c---nuget)
 | 
				
			||||||
- [D - DUB](#d---dub)
 | 
					- [D - DUB](#d---dub)
 | 
				
			||||||
  - [POSIX](#posix)
 | 
					  - [POSIX](#posix)
 | 
				
			||||||
| 
						 | 
					@ -37,6 +38,47 @@
 | 
				
			||||||
- [Swift, Objective-C - CocoaPods](#swift-objective-c---cocoapods)
 | 
					- [Swift, Objective-C - CocoaPods](#swift-objective-c---cocoapods)
 | 
				
			||||||
- [Swift - Swift Package Manager](#swift---swift-package-manager)
 | 
					- [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
 | 
				
			||||||
 | 
					- name: get conan cache
 | 
				
			||||||
 | 
					  uses: actions/cache@v2
 | 
				
			||||||
 | 
					  with:
 | 
				
			||||||
 | 
					    path: |
 | 
				
			||||||
 | 
					      ~/.conan/data
 | 
				
			||||||
 | 
					      !~/.conan/data/**/conan_sources.tgz
 | 
				
			||||||
 | 
					    key: conan-${{ hashFiles('conan.lock') }}
 | 
				
			||||||
 | 
					- name: install conan dependencies
 | 
				
			||||||
 | 
					  run: |
 | 
				
			||||||
 | 
					    conan install . --lockfile conan.lock --build missing
 | 
				
			||||||
 | 
					```
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					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
 | 
				
			||||||
 | 
					- name: get conan cache
 | 
				
			||||||
 | 
					  uses: actions/cache@v2
 | 
				
			||||||
 | 
					  with:
 | 
				
			||||||
 | 
					    path: |
 | 
				
			||||||
 | 
					      ${{ env.CONAN_USER_HOME }}/.conan/data
 | 
				
			||||||
 | 
					      !${{ env.CONAN_USER_HOME }}/.conan/data/**/conan_sources.tgz
 | 
				
			||||||
 | 
					    key: conan-${{ env.PROFILE }}-${{ hashFiles('conan.lock') }}
 | 
				
			||||||
 | 
					- name: install conan dependencies
 | 
				
			||||||
 | 
					  run: |
 | 
				
			||||||
 | 
					    conan install . --lockfile conan.lock --build missing
 | 
				
			||||||
 | 
					```
 | 
				
			||||||
 | 
					
 | 
				
			||||||
## C# - NuGet
 | 
					## C# - NuGet
 | 
				
			||||||
 | 
					
 | 
				
			||||||
Using [NuGet lock files](https://docs.microsoft.com/nuget/consume-packages/package-references-in-project-files#locking-dependencies):
 | 
					Using [NuGet lock files](https://docs.microsoft.com/nuget/consume-packages/package-references-in-project-files#locking-dependencies):
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
		Loading…
	
		Reference in New Issue
	
	Block a user