Daz DeBoer 
							
						 
					 
					
						
						
							
							
						
						
						
							
						
						
							4137be6a8b 
							
						 
					 
					
						
						
							
							Minor improvement to logging in post-action  
						
						... 
						
						
						
						- Ensure that "Caching Gradle state" group always has 1 message
- Only print cache report when entries were restored or saved 
						
						
					 
					
						2021-11-05 08:35:45 -06:00 
						 
				 
			
				
					
						
							
							
								Daz DeBoer 
							
						 
					 
					
						
						
							
							
						
						
						
							
						
						
							4e899835b3 
							
						 
					 
					
						
						
							
							Avoid failing build on distributions cache errors  
						
						... 
						
						
						
						- Warn and continue on failure to restore a Gradle distribution from cache
- Warn and continue on failure to save a Gradle distribution to cache
- Extract common functionality for consistent handling of cache failures
Fixes  #116  
						
						
					 
					
						2021-11-05 07:01:48 -06:00 
						 
				 
			
				
					
						
							
							
								Daz DeBoer 
							
						 
					 
					
						
						
							
							
						
						
						
							
						
						
							717db318c1 
							
						 
					 
					
						
						
							
							Fix logging of cache key for Gradle User Home  
						
						
						
						
					 
					
						2021-10-31 20:49:29 -06:00 
						 
				 
			
				
					
						
							
							
								Daz DeBoer 
							
						 
					 
					
						
						
							
							
						
						
						
							
						
						
							472ac8a356 
							
						 
					 
					
						
						
							
							Report sizes of cache entries  
						
						... 
						
						
						
						Using the patched version of @actions/cache, we now report the total
size of cache entries restored/saved, as well as details of each one. 
						
						
					 
					
						2021-10-30 13:45:39 -06:00 
						 
				 
			
				
					
						
							
							
								Daz DeBoer 
							
						 
					 
					
						
						
							
							
						
						
						
							
						
						
							d785346c8c 
							
						 
					 
					
						
						
							
							Use cache.description  
						
						
						
						
					 
					
						2021-10-30 13:44:22 -06:00 
						 
				 
			
				
					
						
							
							
								Daz DeBoer 
							
						 
					 
					
						
						
							
							
						
						
						
							
						
						
							6ca4d4ade2 
							
						 
					 
					
						
						
							
							Improve formatting for caching report  
						
						
						
						
					 
					
						2021-10-30 12:15:00 -06:00 
						 
				 
			
				
					
						
							
							
								Daz DeBoer 
							
						 
					 
					
						
						
							
							
						
						
						
							
						
						
							75cec40e58 
							
						 
					 
					
						
						
							
							Rename 'report' classes to 'listener'  
						
						... 
						
						
						
						- `CachingReport` -> `CacheListener`
- `CacheEntryReport` -> `CacheEntryListener` 
						
						
					 
					
						2021-10-30 12:15:00 -06:00 
						 
				 
			
				
					
						
							
							
								Daz DeBoer 
							
						 
					 
					
						
						
							
							
						
						
						
							
						
						
							c317ccac62 
							
						 
					 
					
						
						
							
							Refactor: extract cache-base out of cache-utils  
						
						
						
						
					 
					
						2021-10-30 12:15:00 -06:00 
						 
				 
			
				
					
						
							
							
								Daz DeBoer 
							
						 
					 
					
						
						
							
							
						
						
						
							
						
						
							a74bb0fad6 
							
						 
					 
					
						
						
							
							Monitor cache saves and add basic caching report  
						
						... 
						
						
						
						- Restore `CachingReport` instance in 'post' action
- Record keys for any entries saved
- Report caching activity as JSON in post action 
						
						
					 
					
						2021-10-30 12:14:59 -06:00 
						 
				 
			
				
					
						
							
							
								Daz DeBoer 
							
						 
					 
					
						
						
							
							
						
						
						
							
						
						
							727b4612ba 
							
						 
					 
					
						
						
							
							Fix early return from bundle processing  
						
						
						
						
					 
					
						2021-10-30 12:11:59 -06:00 
						 
				 
			
				
					
						
							
							
								Daz DeBoer 
							
						 
					 
					
						
						
							
							
						
						
						
							
						
						
							f0f68e07c3 
							
						 
					 
					
						
						
							
							Better handling of .cache files that are not restored  
						
						... 
						
						
						
						- Remove any .cache file that is not restored
- Report on any .cache file that exists but has no config 
						
						
					 
					
						2021-10-30 06:28:20 -06:00 
						 
				 
			
				
					
						
							
							
								Daz DeBoer 
							
						 
					 
					
						
						
							
							
						
						
						
							
						
						
							8ba5a0033b 
							
						 
					 
					
						
						
							
							Track 'fully-restored' by tracking each cache restore  
						
						... 
						
						
						
						Instead of tracking a single 'fully-restored' flag, track the restore status of each
cache entry restore. If any of these are requested but not restored, then the overall
Gradle User Home cache is not fully restored.
Added special handling for the case when zero artifact bundles are set: this is used
in tests to simulate a not-fully-restored state. 
						
						
					 
					
						2021-10-30 06:05:21 -06:00 
						 
				 
			
				
					
						
							
							
								Daz DeBoer 
							
						 
					 
					
						
						
							
							
						
						
						
							
						
						
							9edc2a11bd 
							
						 
					 
					
						
						
							
							Only restore configuration-cache if Gradle Home is fully restored  
						
						... 
						
						
						
						Fixes  #107  
					
						2021-10-29 09:34:36 -06:00 
						 
				 
			
				
					
						
							
							
								Daz DeBoer 
							
						 
					 
					
						
						
							
							
						
						
						
							
						
						
							4ebd000afd 
							
						 
					 
					
						
						
							
							Bundle all downloaded dependency files  
						
						... 
						
						
						
						Previously, only .jar files were bundled, with other files (modules, POMs, zips, etc)
being left in Gradle User Home. All downloaded files are now included in the bundle.
Fixes  #100  
						
						
					 
					
						2021-10-29 08:03:03 -06:00 
						 
				 
			
				
					
						
							
							
								Daz DeBoer 
							
						 
					 
					
						
						
							
							
						
						
						
							
						
						
							063fc6a872 
							
						 
					 
					
						
						
							
							Allow source files to contain lines up to 120 characters  
						
						... 
						
						
						
						This avoids excessive line-feeds when reformatting code to 80 char lines. 
						
						
					 
					
						2021-10-29 07:50:06 -06:00 
						 
				 
			
				
					
						
							
							
								Daz DeBoer 
							
						 
					 
					
						
						
							
							
						
						
						
							
						
						
							e3ada7e5c2 
							
						 
					 
					
						
						
							
							Use multiline input parameters instead of JSON input  
						
						... 
						
						
						
						The `gradle-home-cache-includes` and `gradle-home-cache-excludes` parameters were initially implemented
as JSON string inputs. This makes these inputs non-idiomatic and easier to get wrong.
This change converts them to multi-line input parameters.
Fixes  #106  
						
						
					 
					
						2021-10-29 07:29:57 -06:00 
						 
				 
			
				
					
						
							
							
								Daz DeBoer 
							
						 
					 
					
						
						
							
							
						
						
						
							
						
						
							27f2dc276c 
							
						 
					 
					
						
						
							
							Rename and document parameters for clarity  
						
						... 
						
						
						
						- cache-paths -> gradle-home-cache-includes
- cache-exclude-paths -> gradle-home-cache-excludes
- CACHE_DEBUG_ENABLED -> GRADLE_BUILD_ACTION_CACHE_DEBUG_ENABLED 
						
						
					 
					
						2021-10-27 16:05:07 -06:00 
						 
				 
			
				
					
						
							
							
								Daz DeBoer 
							
						 
					 
					
						
						
							
							
						
						
						
							
						
						
							39db90e99b 
							
						 
					 
					
						
						
							
							Include build scan link in failure notice  
						
						
						
						
					 
					
						2021-10-21 12:04:25 -06:00 
						 
				 
			
				
					
						
							
							
								Daz DeBoer 
							
						 
					 
					
						
						
							
							
						
						
						
							
						
						
							4cf255df10 
							
						 
					 
					
						
						
							
							Move bundle metadata files out of caches directory  
						
						... 
						
						
						
						Instead, use a separate '.gradle-build-action' directory for bundle
metadata files. This directory is always part of the cache-path. 
						
						
					 
					
						2021-10-21 11:13:09 -06:00 
						 
				 
			
				
					
						
							
							
								Daz DeBoer 
							
						 
					 
					
						
						
							
							
						
						
						
							
						
						
							1113cb87cb 
							
						 
					 
					
						
						
							
							Allow cache-exclude-paths to be configured for action  
						
						... 
						
						
						
						All excluded paths are deleted prior to caching the Gradle User Home. 
						
						
					 
					
						2021-10-21 11:13:09 -06:00 
						 
				 
			
				
					
						
							
							
								Daz DeBoer 
							
						 
					 
					
						
						
							
							
						
						
						
							
						
						
							9c95294209 
							
						 
					 
					
						
						
							
							Allow cache-paths to be set via action config  
						
						
						
						
					 
					
						2021-10-21 11:13:08 -06:00 
						 
				 
			
				
					
						
							
							
								Daz DeBoer 
							
						 
					 
					
						
						
							
							
						
						
						
							
						
						
							f901ec9c20 
							
						 
					 
					
						
						
							
							Bump cache-protocol version  
						
						
						
						
					 
					
						2021-10-20 15:04:14 -06:00 
						 
				 
			
				
					
						
							
							
								Daz DeBoer 
							
						 
					 
					
						
						
							
							
						
						
						
							
						
						
							a94b9252d5 
							
						 
					 
					
						
						
							
							Improve cache logging  
						
						
						
						
					 
					
						2021-10-16 10:15:40 -06:00 
						 
				 
			
				
					
						
							
							
								Daz DeBoer 
							
						 
					 
					
						
						
							
							
						
						
						
							
						
						
							cb6a0acca4 
							
						 
					 
					
						
						
							
							Use precise matching for artifact bundles  
						
						... 
						
						
						
						This should fix the warnings issued when saving artifact bundles. 
						
						
					 
					
						2021-10-16 09:49:15 -06:00 
						 
				 
			
				
					
						
							
							
								Daz DeBoer 
							
						 
					 
					
						
						
							
							
						
						
						
							
						
						
							aa2ed2e033 
							
						 
					 
					
						
						
							
							Use cache protocol version for bundle keys too  
						
						
						
						
					 
					
						2021-10-16 09:49:14 -06:00 
						 
				 
			
				
					
						
							
							
								Daz DeBoer 
							
						 
					 
					
						
						
							
							
						
						
						
							
						
						
							263f84178a 
							
						 
					 
					
						
						
							
							Prefix cache key with protocol version  
						
						... 
						
						
						
						This will ensure that incompatiblee cache entries generated by previous action releases
will not be used. 
						
						
					 
					
						2021-10-16 08:33:42 -06:00 
						 
				 
			
				
					
						
							
							
								Daz DeBoer 
							
						 
					 
					
						
						
							
							
						
						
						
							
						
						
							709ded51a5 
							
						 
					 
					
						
						
							
							Treat directory for instrumented jar as single artifact  
						
						... 
						
						
						
						Leaving the `.lock` and `.receipt` files lying around was causing
issues when the actual jar files were not restored. Now the entire
directory will either be missing, or completely restored. 
						
						
					 
					
						2021-10-15 14:54:29 -06:00 
						 
				 
			
				
					
						
							
							
								Daz DeBoer 
							
						 
					 
					
						
						
							
							
						
						
						
							
						
						
							da64595ccc 
							
						 
					 
					
						
						
							
							Make artifact bundle definitions an input parameter  
						
						
						
						
					 
					
						2021-10-15 13:21:13 -06:00 
						 
				 
			
				
					
						
							
							
								Daz DeBoer 
							
						 
					 
					
						
						
							
							
						
						
						
							
						
						
							29b14c7fca 
							
						 
					 
					
						
						
							
							Refactor: rename methods for 'bundle' concept  
						
						
						
						
					 
					
						2021-10-15 12:34:38 -06:00 
						 
				 
			
				
					
						
							
							
								Daz DeBoer 
							
						 
					 
					
						
						
							
							
						
						
						
							
						
						
							53ccc3e0d7 
							
						 
					 
					
						
						
							
							Add more cache debug logging  
						
						
						
						
					 
					
						2021-10-15 11:45:15 -06:00 
						 
				 
			
				
					
						
							
							
								Daz DeBoer 
							
						 
					 
					
						
						
							
							
						
						
						
							
						
						
							8ab7c9d8dd 
							
						 
					 
					
						
						
							
							Do not fail action on cache errors  
						
						... 
						
						
						
						Ensure that we catch and log errors in `beforeSave` and `afterRestore`,
and do not fail the entire workflow in these cases. 
						
						
					 
					
						2021-10-14 12:19:24 -06:00 
						 
				 
			
				
					
						
							
							
								Daz DeBoer 
							
						 
					 
					
						
						
							
							
						
						
						
							
						
						
							4968d2280b 
							
						 
					 
					
						
						
							
							Allow time for processes to release file locks on windows  
						
						
						
						
					 
					
						2021-10-04 23:59:08 +02:00 
						 
				 
			
				
					
						
							
							
								Daz DeBoer 
							
						 
					 
					
						
						
							
							
						
						
						
							
						
						
							60b1ffac6b 
							
						 
					 
					
						
						
							
							Fix build-scan-init script to work with build-in build-scan plugins  
						
						
						
						
					 
					
						2021-09-29 14:39:48 -06:00 
						 
				 
			
				
					
						
							
							
								Daz DeBoer 
							
						 
					 
					
						
						
							
							
						
						
						
							
						
						
							0918f5f2a4 
							
						 
					 
					
						
						
							
							Rename source file for clarity  
						
						
						
						
					 
					
						2021-09-28 00:04:50 -06:00 
						 
				 
			
				
					
						
							
							
								Daz DeBoer 
							
						 
					 
					
						
						
							
							
						
						
						
							
						
						
							a7174b82a2 
							
						 
					 
					
						
						
							
							Use init script to capture build scan URL  
						
						... 
						
						
						
						Instead of parsing the log output, we instead register a
buildScanPublished listener and record the build scan URL
to a file. This file is subsequently read to report the
build scan URL.
Fixes  #30  
						
						
					 
					
						2021-09-28 00:04:41 -06:00 
						 
				 
			
				
					
						
							
							
								Daz DeBoer 
							
						 
					 
					
						
						
							
							
						
						
						
							
						
						
							5a5a5b4387 
							
						 
					 
					
						
						
							
							Normalize paths to Gradle User Home when calculating cache keys  
						
						... 
						
						
						
						Fixes  #77  
					
						2021-09-27 21:52:03 -06:00 
						 
				 
			
				
					
						
							
							
								Daz DeBoer 
							
						 
					 
					
						
						
							
							
						
						
						
							
						
						
							cc5cdb7fe0 
							
						 
					 
					
						
						
							
							Adapt caching for GRADLE_USER_HOME env var  
						
						... 
						
						
						
						Fixes  #74  
					
						2021-09-27 21:50:14 -06:00 
						 
				 
			
				
					
						
							
							
								Daz DeBoer 
							
						 
					 
					
						
						
							
							
						
						
						
							
						
						
							bebb162342 
							
						 
					 
					
						
						
							
							Usability improvements:  
						
						... 
						
						
						
						- Include bundle name in cache key
- Emit a few more messages at 'info' 
						
						
					 
					
						2021-09-15 17:50:53 -06:00 
						 
				 
			
				
					
						
							
							
								Daz DeBoer 
							
						 
					 
					
						
						
							
							
						
						
						
							
						
						
							6084a4eb65 
							
						 
					 
					
						
						
							
							Cache artifacts with single entry per type  
						
						... 
						
						
						
						When caching is too fine-grained, an excessive number of cache
requests can result in HTTP 429 errors due to rate limiting.
By caching all artifacts of a particular type in a single entry
we hope to mitigate this, at the expense of some reduction in
cache space optimization.
This change also adds caching for all dependency jars, as well as
instrumented jars in the 'caches/jars-X' directory. 
						
						
					 
					
						2021-09-15 17:45:47 -06:00 
						 
				 
			
				
					
						
							
							
								Daz DeBoer 
							
						 
					 
					
						
						
							
							
						
						
						
							
						
						
							dbb485d80d 
							
						 
					 
					
						
						
							
							Only perform  post-restore and pre-save cache actions when required  
						
						
						
						
					 
					
						2021-09-15 17:45:47 -06:00 
						 
				 
			
				
					
						
							
							
								Daz DeBoer 
							
						 
					 
					
						
						
							
							
						
						
						
							
						
						
							fe64d05f86 
							
						 
					 
					
						
						
							
							Do not cache dependency jars individually  
						
						... 
						
						
						
						Unfortunately, doing this overloads the GitHub actions cache infrastructure
leading to failures and unpredictable results.
A later solution may re-implement artifact sharing for dependency jars
as well as jars within the `caches/jars-9` directory. But for now these
will be duplicated across each Gradle User Home cache entry. 
						
						
					 
					
						2021-09-14 18:07:28 -06:00 
						 
				 
			
				
					
						
							
							
								Daz DeBoer 
							
						 
					 
					
						
						
							
							
						
						
						
							
						
						
							decca791c5 
							
						 
					 
					
						
						
							
							Consolidate error handling for cache restore/save  
						
						
						
						
					 
					
						2021-09-14 13:39:37 -06:00 
						 
				 
			
				
					
						
							
							
								Daz DeBoer 
							
						 
					 
					
						
						
							
							
						
						
						
							
						
						
							bd08e7b7cd 
							
						 
					 
					
						
						
							
							Do not fail build on error restoring artifact for marker  
						
						... 
						
						
						
						Instead, catch and report these errors before continuing. 
						
						
					 
					
						2021-09-14 13:38:48 -06:00 
						 
				 
			
				
					
						
							
							
								Daz DeBoer 
							
						 
					 
					
						
						
							
							
						
						
						
							
						
						
							cca55d0890 
							
						 
					 
					
						
						
							
							Fail action execution on unhandled errors  
						
						... 
						
						
						
						Without this, the error logs contain an "UnhandledPromiseRejectionError"
but the action is reported as succeeding. 
						
						
					 
					
						2021-09-14 07:48:06 -06:00 
						 
				 
			
				
					
						
							
							
								Daz DeBoer 
							
						 
					 
					
						
						
							
							
						
						
						
							
						
						
							bbe1574290 
							
						 
					 
					
						
						
							
							Add some TODOs to the code for future reference  
						
						
						
						
					 
					
						2021-09-13 11:50:07 -06:00 
						 
				 
			
				
					
						
							
							
								Daz DeBoer 
							
						 
					 
					
						
						
							
							
						
						
						
							
						
						
							4264cda558 
							
						 
					 
					
						
						
							
							Group log messages generated when provisioning Gradle  
						
						
						
						
					 
					
						2021-09-13 11:50:07 -06:00 
						 
				 
			
				
					
						
							
							
								Daz DeBoer 
							
						 
					 
					
						
						
							
							
						
						
						
							
						
						
							3390540145 
							
						 
					 
					
						
						
							
							Simplify setting caches to disabled or read-only  
						
						
						
						
					 
					
						2021-09-13 11:04:42 -06:00 
						 
				 
			
				
					
						
							
							
								Daz DeBoer 
							
						 
					 
					
						
						
							
							
						
						
						
							
						
						
							1c72a31463 
							
						 
					 
					
						
						
							
							Allow cache debug logging to be selectively enabled  
						
						... 
						
						
						
						- Move more messages out of main 'info' log
- Only log cache entry size when debugging
- Process cache entries sequentially when debugging 
						
						
					 
					
						2021-09-13 10:52:09 -06:00 
						 
				 
			
				
					
						
							
							
								Daz DeBoer 
							
						 
					 
					
						
						
							
							
						
						
						
							
						
						
							7dfbe33bba 
							
						 
					 
					
						
						
							
							Improve formatting for cache entry size reporting  
						
						
						
						
					 
					
						2021-09-13 10:51:24 -06:00 
						 
				 
			
				
					
						
							
							
								Daz DeBoer 
							
						 
					 
					
						
						
							
							
						
						
						
							
						
						
							e63ddf9c00 
							
						 
					 
					
						
						
							
							Avoid warning for cache reservation errors  
						
						... 
						
						
						
						We have no way of knowing if another build has already cached these
artifacts, so CacheReservationError is expected. 
						
						
					 
					
						2021-09-13 10:50:47 -06:00