Commit graph

124 commits

Author SHA1 Message Date
Daz DeBoer
a7f880172e
Use a released version of 'gradle-build-action' for our CI job 2022-06-05 09:06:23 -06:00
Daz DeBoer
5203a0b09d
Capture build results when config-cache is enabled
When enabled, the configuration-cache will cause the build to fail when a
`buildFinished` listener is added. Instead, use a BuildService to listen for task
failures and to write the results on build completion.
2022-06-05 00:29:42 -06:00
Daz DeBoer
500607bc35
Capture build-results without build-scan publication
The `buildScanPublished` is only called when a build scan is published by the build.
Support other invocations by adding a `buildFinished` listener.
2022-06-05 00:28:24 -06:00
Daz DeBoer
754892d4ae
Add workflow to run init-script tests 2022-06-05 00:27:36 -06:00
Daz DeBoer
748dc30fdc
Support and test Gradle 3.5.1
Fix build-scan-capture.init.gradle so that it applies to versions 3.+,
and include this version in test coverage.
2022-06-05 00:26:21 -06:00
Daz DeBoer
00cdd4dcf9
Explicitly allow cache-write for test invocations
The `gradle-build-action` test workflows need to write cache entries,
even when run on non-default branches. This change add explicit configuration
to set `cache-read-only: false` when cache writing is required.
2022-06-04 11:39:19 -06:00
Daz DeBoer
9ab4abd18c
Update to latest version of all github actions 2022-06-04 09:26:11 -06:00
Daz DeBoer
7e85212f59
Add workflow with several Gradle builds to demo job summary 2022-06-02 11:52:52 -06:00
Daz DeBoer
992ccebeea
Only run main workflows when relevant files change 2022-05-29 17:27:11 -06:00
Daz DeBoer
c13dc6c789
Fix and re-enable test for save/restore config-cache 2022-05-29 17:27:11 -06:00
Daz DeBoer
5e6af67a5e
Fix CI-full-check for renamed workflow 2022-05-29 15:05:31 -06:00
Daz DeBoer
e32d23f291
Capitalize to improve ordering 2022-05-29 15:04:12 -06:00
Daz DeBoer
a880eab216
More consistent names for workflow jobs 2022-05-29 15:04:11 -06:00
Daz DeBoer
6c8fe00271
Fix typo in workflow 2022-05-29 14:49:05 -06:00
Daz DeBoer
0c3292abfb
Reduce overlap of ci workflows 2022-05-29 14:44:21 -06:00
Daz DeBoer
66050d88b2
Add workflow to purge old workflow runs 2022-05-29 14:32:16 -06:00
Daz DeBoer
1771c6f669
Temporarily disable failing test in quick-check 2022-05-29 14:32:16 -06:00
Daz DeBoer
acc77da702
Build distribution when running quick-check workflow
The action requires the generated distribution to committed to the 'dist' directory.
During regular development this step causes a number of problems:
- It's easy to forget to add/commit these generated files.
- It's very difficult/impossible to merge/rebase commits that involve generated files
- These file add unnecessary bulk to the git history

With this change, the quick-check workflow will first build the distribution and then
use the generated output for testing. Building and committing these files will only be
required when merging into the 'main' branch.
2022-05-29 14:25:12 -06:00
Daz DeBoer
bdb9f7fd28
Use shorter workflow names 2022-05-29 13:04:26 -06:00
Daz DeBoer
f9e15febb7
Restrict quick-check workflow to ubuntu for faster feedback 2022-05-29 13:04:26 -06:00
Daz DeBoer
1ba2a63e58
Fix restore-configuration-cache test workflow
The sequential jobs in the workflow emulate repeated execution of the
same Job, so they work better if given the same job id.
2022-05-29 13:03:24 -06:00
Daz DeBoer
c838a38ea1
Combine all integTest workflows into 2 workflow runs
- Workflow to run all integTest workflows, allowing use of prior cache entries
- Workflow that starts with empty cache

Both of these use workflow_call to combine the existing workflows.
2022-05-29 13:03:10 -06:00
Daz DeBoer
2bb20697b4
Rename config-cache jobs for clarity 2022-05-29 09:32:24 -06:00
Daz DeBoer
be62f7d934
Merge branch 'releases/v2.1'
* releases/v2.1:
  Build outputs
  Remove downloaded wrapper zips before caching
  Fix typo in worklow step
2022-05-29 09:23:36 -06:00
Daz DeBoer
e3ceb00204
Fix typo in worklow step 2022-05-29 08:48:46 -06:00
Leonard Brünings
544da49fda
Disable minify to get smaller diffs and save space
Due to a limitation in ncc, the js files contain CRLF line endings
which are then converted by git.
2022-05-27 20:28:26 -06:00
Daz DeBoer
26ea4afa08
Use kotlin-dsl sample to demo failure 2022-05-24 16:51:53 +02:00
Daz DeBoer
dc49976071
Add manual test to demonstrate failing build 2022-05-24 15:00:47 +02:00
Daz DeBoer
3c3fdfcc0c
Moved workflow samples out of .github/workflows
The `.github/workflows` directory has additional permissions attached, preventing these
files from being by the Upgrade Gradle Wrapper plugin.
2022-04-05 09:55:31 -06:00
Daz DeBoer
cde360986c
Improve sample for build-scan comment on PR 2022-04-04 15:12:03 -06:00
Daz DeBoer
72e45fe25b
Only run workflows when relevant files change 2022-04-02 12:51:23 -06:00
Daz DeBoer
cfe0b72a03
Bump to GE plugin v3.9 2022-04-02 12:45:18 -06:00
Daz DeBoer
a6bb0f87a3
Reformat Groovy to trigger Dependabot 2022-04-02 12:40:57 -06:00
Daz DeBoer
a1bb3349df
Bump Jnit version in samples 2022-04-02 12:37:16 -06:00
Daz DeBoer
aabb2db775
Move workflow samples under .github 2022-04-02 12:33:04 -06:00
Daz DeBoer
73602de30a
Update test for wrapper upgrade 2022-04-02 11:20:31 -06:00
Daz DeBoer
53af4d4f57
Fix check for config-cache usage
Now that environment variable reads are auto-detected by Gradle 7.4,
we need a different mechanism to check that the configuration cache is
being used successfully.
2022-03-17 11:15:38 -06:00
bot-githubaction
b10e7caf66
Bump Gradle Wrapper 7.4.1 in __tests__/samples 2022-03-16 13:18:21 -06:00
Daz DeBoer
adcc4faa55
Prevent concurrent running of integ-test workflows 2022-03-14 13:28:54 -06:00
Daz DeBoer
800e52f373
Run all tests on macos-latest 2022-02-03 09:11:06 -07:00
Daz DeBoer
08d5b40ca5
Add experimental support for 'cache-write-only'
There may be cases where it a "fresh" cache entry would be beneficial,
for example if the Gradle User Home cache entry grows over time.

This setting would run the build as if no prior cache entry exists.
2022-01-20 15:04:11 -07:00
Daz DeBoer
4f616f683a
Include github.run_attempt in test cache keys
This change to the integration tests should properly isolate multiple runs of the same job.
Previously, some jobs would fail if you attempted to re-run them via the UI, because the cache
entries would be re-used from the previous run.
2022-01-18 10:52:22 -07:00
Daz DeBoer
755aebc7d1
Test build-scan capture with pre-existing GUH 2022-01-17 14:44:31 -07:00
Daz DeBoer
97a4d7a5fd
Test build-scan capture works with cache-disabled 2022-01-17 14:29:11 -07:00
Daz DeBoer
a7260b277e
Specify mandatory 'distribution' arg for setup-java 2022-01-17 14:28:53 -07:00
Daz DeBoer
f4e053dda1
Upgrade to reference actions/setup-java@v2
- Update all references in README.md
- Update version used in `pr-build-scan-comment`
- Discourage the use of `cache: gradle` with `setup-java@v2`
2022-01-16 16:18:09 -07:00
Benedikt Ritter
a7c463b44a
Update to latest version of actions/github-script
See https://github.com/marketplace/actions/github-script#breaking-changes-in-v5

* Update docs to latest github-script action version
* Update CI build to latest GitHub API
2022-01-16 15:45:15 -07:00
Daz DeBoer
76ea8a76b2
Treat configuration-cache as an extracted entry
Instead of using a fallback strategy to locate a configuration-cache entry
based on the current job and git SHA, these entries are now keyed based on their
file content with the keys persisted in the primary Gradle User Home entry.

This removes the chance of having a configuration-cache entry restored that is
incompatible with the restored Gradle User Home state, and makes the logic easier
to understand.

This change involved a fairly major refactor, with the CacheEntryExtractor being
split out from the primary cache implementation, and adding a separate extractor
implementation for configuration-cache.
2021-12-30 16:03:02 -07:00
Daz DeBoer
12fc52a49a
Combine java-toolchain entry definitions
- Remove configuration parameter for cache-entry-definitions. This allows richer modelling of extracted entries.
- Include both *.zip and *.tar.gz in entry definition for java-toolchains.
2021-12-30 16:03:02 -07:00
Daz DeBoer
c61f5d87b4
Test java-toolchain cache 2021-12-17 21:10:31 -07:00