Commit graph

402 commits

Author SHA1 Message Date
daz
0325d99e52 Workflow fixes
- Fix typo in 'paths-ignore'
- Add back 'buildDistribution' to demo job summary
2024-04-12 10:34:50 -06:00
daz
5893d44739
Use fixed job name for cache restore 2024-04-12 00:38:28 -06:00
daz
fb14e0ee5b Skip the 'download-dist' step for full integ-test
After the '[bot] update dist directory' commit, we run a full test suite.
This will now use the content from the 'dist' directory, rather than
regenerating this content in the test.
2024-04-12 00:24:44 -06:00
daz
0261d93071
Switch back to unique cache entries with full integ-test 2024-04-11 23:00:25 -06:00
daz
7d97cfadb0
Avoid most workflows when only 'dist' has changed 2024-04-11 22:54:09 -06:00
daz
ebf9707dff Use a bot token to generate "Update dist" commit
This will permit workflows to run when this commit is applied.

- Avoid running ci-update-dist for modifications to dist directory (no recursion)
- Run full-suite only in response to bot updates.
2024-04-11 22:44:13 -06:00
daz
0627979b9c Only allow one integ-test at a time per branch 2024-04-11 22:44:13 -06:00
daz
62557f3635
Enable wrapper validation with setup-gradle action 2024-04-11 11:56:55 -06:00
daz
33741bd2bb
Make it easier to run workflows locally with 'act' 2024-04-11 11:56:01 -06:00
daz
39cecc54d0
Add wrapper-validation workflows 2024-04-11 08:39:21 -06:00
daz
3252e655d0
Ensure each integ-test gets a unique cache-key-prefix 2024-04-10 20:07:14 -06:00
daz
be0b7f44a7
Temporarily disable cache prefixing in integ tests
This is an attempt to stabilize our CI workflows.
2024-04-10 19:49:08 -06:00
Philip Wedemann
0f427bc07b
Add a test for merging existing toolchains.xml (#151) 2024-04-10 17:20:36 -06:00
daz
30a2ee13f2
Skip certain tests when running from fork 2024-04-10 17:05:09 -06:00
daz
d37a479015
Use pull_request triggers primarily for workflows
Instead of relying on push triggers in general, we now use pull_request
and reserve push triggers for main and release branches.

This makes the behaviour more consistent for users contributing from
repository forks. However, we no longer have a quick-feedback loop
for development.
2024-04-10 16:48:14 -06:00
daz
3e155e3d92
Avoid running incompatible tests on Windows 2024-04-10 13:11:19 -06:00
daz
6832731061
Fix the 'build-dist' action 2024-04-10 12:16:13 -06:00
dependabot[bot]
87f10dd82f
Bump com.gradle.develocity from 3.17 to 3.17.1 in /.github/workflow-samples/groovy-dsl (#144)
Bumps com.gradle.develocity from 3.17 to 3.17.1.


[![Dependabot compatibility
score](https://dependabot-badges.githubapp.com/badges/compatibility_score?dependency-name=com.gradle.develocity&package-manager=gradle&previous-version=3.17&new-version=3.17.1)](https://docs.github.com/en/github/managing-security-vulnerabilities/about-dependabot-security-updates#about-compatibility-scores)

Dependabot will resolve any conflicts with this PR as long as you don't
alter it yourself. You can also trigger a rebase manually by commenting
`@dependabot rebase`.

[//]: # (dependabot-automerge-start)
[//]: # (dependabot-automerge-end)

---

<details>
<summary>Dependabot commands and options</summary>
<br />

You can trigger Dependabot actions by commenting on this PR:
- `@dependabot rebase` will rebase this PR
- `@dependabot recreate` will recreate this PR, overwriting any edits
that have been made to it
- `@dependabot merge` will merge this PR after your CI passes on it
- `@dependabot squash and merge` will squash and merge this PR after
your CI passes on it
- `@dependabot cancel merge` will cancel a previously requested merge
and block automerging
- `@dependabot reopen` will reopen this PR if it is closed
- `@dependabot close` will close this PR and stop Dependabot recreating
it. You can achieve the same result by closing it manually
- `@dependabot show <dependency name> ignore conditions` will show all
of the ignore conditions of the specified dependency
- `@dependabot ignore this major version` will close this PR and stop
Dependabot creating any more for this major version (unless you reopen
the PR or upgrade to it yourself)
- `@dependabot ignore this minor version` will close this PR and stop
Dependabot creating any more for this minor version (unless you reopen
the PR or upgrade to it yourself)
- `@dependabot ignore this dependency` will close this PR and stop
Dependabot creating any more for this dependency (unless you reopen the
PR or upgrade to it yourself)


</details>

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-04-10 11:46:48 -06:00
dependabot[bot]
a66014f771
Bump com.gradle.develocity from 3.17 to 3.17.1 in /.github/workflow-samples/no-wrapper (#143)
Bumps com.gradle.develocity from 3.17 to 3.17.1.


[![Dependabot compatibility
score](https://dependabot-badges.githubapp.com/badges/compatibility_score?dependency-name=com.gradle.develocity&package-manager=gradle&previous-version=3.17&new-version=3.17.1)](https://docs.github.com/en/github/managing-security-vulnerabilities/about-dependabot-security-updates#about-compatibility-scores)

Dependabot will resolve any conflicts with this PR as long as you don't
alter it yourself. You can also trigger a rebase manually by commenting
`@dependabot rebase`.

[//]: # (dependabot-automerge-start)
[//]: # (dependabot-automerge-end)

---

<details>
<summary>Dependabot commands and options</summary>
<br />

You can trigger Dependabot actions by commenting on this PR:
- `@dependabot rebase` will rebase this PR
- `@dependabot recreate` will recreate this PR, overwriting any edits
that have been made to it
- `@dependabot merge` will merge this PR after your CI passes on it
- `@dependabot squash and merge` will squash and merge this PR after
your CI passes on it
- `@dependabot cancel merge` will cancel a previously requested merge
and block automerging
- `@dependabot reopen` will reopen this PR if it is closed
- `@dependabot close` will close this PR and stop Dependabot recreating
it. You can achieve the same result by closing it manually
- `@dependabot show <dependency name> ignore conditions` will show all
of the ignore conditions of the specified dependency
- `@dependabot ignore this major version` will close this PR and stop
Dependabot creating any more for this major version (unless you reopen
the PR or upgrade to it yourself)
- `@dependabot ignore this minor version` will close this PR and stop
Dependabot creating any more for this minor version (unless you reopen
the PR or upgrade to it yourself)
- `@dependabot ignore this dependency` will close this PR and stop
Dependabot creating any more for this dependency (unless you reopen the
PR or upgrade to it yourself)


</details>

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-04-10 11:44:52 -06:00
dependabot[bot]
4ccff7d80f
Bump com.gradle.develocity from 3.17 to 3.17.1 in /.github/workflow-samples/kotlin-dsl (#142)
Bumps com.gradle.develocity from 3.17 to 3.17.1.


[![Dependabot compatibility
score](https://dependabot-badges.githubapp.com/badges/compatibility_score?dependency-name=com.gradle.develocity&package-manager=gradle&previous-version=3.17&new-version=3.17.1)](https://docs.github.com/en/github/managing-security-vulnerabilities/about-dependabot-security-updates#about-compatibility-scores)

Dependabot will resolve any conflicts with this PR as long as you don't
alter it yourself. You can also trigger a rebase manually by commenting
`@dependabot rebase`.

[//]: # (dependabot-automerge-start)
[//]: # (dependabot-automerge-end)

---

<details>
<summary>Dependabot commands and options</summary>
<br />

You can trigger Dependabot actions by commenting on this PR:
- `@dependabot rebase` will rebase this PR
- `@dependabot recreate` will recreate this PR, overwriting any edits
that have been made to it
- `@dependabot merge` will merge this PR after your CI passes on it
- `@dependabot squash and merge` will squash and merge this PR after
your CI passes on it
- `@dependabot cancel merge` will cancel a previously requested merge
and block automerging
- `@dependabot reopen` will reopen this PR if it is closed
- `@dependabot close` will close this PR and stop Dependabot recreating
it. You can achieve the same result by closing it manually
- `@dependabot show <dependency name> ignore conditions` will show all
of the ignore conditions of the specified dependency
- `@dependabot ignore this major version` will close this PR and stop
Dependabot creating any more for this major version (unless you reopen
the PR or upgrade to it yourself)
- `@dependabot ignore this minor version` will close this PR and stop
Dependabot creating any more for this minor version (unless you reopen
the PR or upgrade to it yourself)
- `@dependabot ignore this dependency` will close this PR and stop
Dependabot creating any more for this dependency (unless you reopen the
PR or upgrade to it yourself)


</details>

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-04-10 11:43:49 -06:00
dependabot[bot]
5e5501accb Bump com.gradle.develocity
Bumps com.gradle.develocity from 3.17 to 3.17.1.

---
updated-dependencies:
- dependency-name: com.gradle.develocity
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-04-10 11:38:52 -06:00
daz
b2fd266e89
List changed files when failing due to dist directory change
Hopefully this will help track down spurious failures.
2024-04-10 11:36:05 -06:00
daz
0be451eca3
Simplify the workflow triggers 2024-04-10 11:09:42 -06:00
daz
7b822e51a5
Merge quick and full tests into single workflow
- Run quick suite for Dependabot
- Run quick suite in forks
- Run quick suite if no PR is associated with commit
- Otherwise run full suite
2024-04-10 09:50:15 -06:00
daz
9e47918adf Build and commit changes to 'dist' automatically
Instead of requiring that developers keep the 'dist' directory up-to-date,
this process is now automated via a workflow.
Whenever a commit is pushed to 'main' (or a 'release/**' branch), the workflow will
build the application and commit any changes to the 'dist' directory.
2024-04-10 07:33:46 -06:00
daz
b64dafb1c9 Use locally built dist for demo workflows 2024-04-10 07:33:46 -06:00
daz
153b1135d0
Remove old workflow 2024-04-10 06:58:06 -06:00
daz
211d342ee6
Rename workflow 2024-04-10 06:57:13 -06:00
daz
6599acbe46
Add back dependency-review.yml so we can rename it 2024-04-10 06:55:58 -06:00
daz
e7c0080dc5
Remove old workflows 2024-04-10 06:52:39 -06:00
daz
0979245ebd
Rename 'check' workflows to 'integ-test' 2024-04-10 06:50:04 -06:00
daz
73638aa351
Run quick-check only if commit is NOT part of a PR
Without a mechanism to check this in the workflow trigger,
we instead run the workflow but skip all jobs if the commit belongs to a PR.

This effectively means that commits-without-PR will run quick-check, and commits-with-PR
will run full-check.
2024-04-10 06:39:42 -06:00
daz
d28f25d60a
Cache npm 2024-04-10 06:04:32 -06:00
daz
8bac4a819c
Split out check-and-unit-test into separate workflow 2024-04-10 06:01:23 -06:00
daz
bd3d4b0246
Check for secrets when running tests that require them 2024-04-10 05:47:43 -06:00
daz
667e034cd9
Split out test that requires DV access key 2024-04-10 05:46:20 -06:00
daz
cd54673221
Use runner-os consistently in integ-tests 2024-04-10 05:46:19 -06:00
daz
0ebfbb8f41
Always build 'dist' directory for integ-tests 2024-04-10 05:06:37 -06:00
daz
9169d36880
Consolidate 'dependency-submission' tests into integ-test workflow 2024-04-10 05:00:05 -06:00
daz
63fcfbfe27
Disable fail-fast for integ tests 2024-04-09 16:07:32 -06:00
daz
92975d7f32
Allow a task name to be specified for dependency-submission
Fixes: #125
2024-04-09 08:46:20 -06:00
Daz DeBoer
e235596c88
Only process build results once (#133)
On long-lived machines, it's possible that the `.build-results` directory isn't cleared between invocations. This will result in the job summary including results from previous jobs.

By marking each build-results file as 'processed' at the end of the job, we can avoid this scenario.
2024-04-08 19:44:46 -06:00
daz
a9dc5dee4e
Bump to CCUD plugin v2.0 everywhere 2024-04-07 22:42:14 -06:00
daz
ab471b0c20
Better test coverage for 'dependency-submission'
- Add 'dependency-submission' failure cases
- Add dependency-submission to job summary demo
- Fix permissions for dependency review
2024-04-07 16:57:18 -06:00
daz
90bf65c87c
Generated graph is submitted immediately by dependency-submission action
While `setup-gradle` must wait until the end of job to submit all of the generated
graphs, the `dependency-submission` action will not save/upload the generated graph
immediately, in the same step where it is generated.
2024-04-07 16:57:18 -06:00
daz
38a821729e
Use consistent action params between setup-gradle and dependency-submission
To ensure expected caching (and other) behaviour, we should keep these config
parameters as consistent as possible.
2024-04-07 12:11:50 -06:00
daz
ed4d086d37
Make dependency-submission and setup-gradle play nicely
Now, a `dependency-submission` step will trigger a dependency-graph
generation, even if it follows a `setup-gradle` step in the workflow.

Similarly, a `setup-gradle` step with `dependency-graph` configured
will function as expected even if it follows a `setup-gradle` step.
2024-04-06 19:31:07 -06:00
daz
ebf4d13461
Convert dependency-submission action to Typescript
Instead of being a thin wrapper over `setup-gradle`, the `dependency-submission`
action is now a fully-fledged action sharing implementation with `setup-gradle`.
2024-04-06 19:31:04 -06:00
daz
d71ecafebf
Minor test reorg 2024-04-06 16:00:53 -06:00
daz
1390ca6454
Don't rely on preinstalled gradle for test 2024-04-06 14:52:02 -06:00