Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

ICU-12811 Add CI workflow to retain caches that are flaky/costly to init #2281

Merged
merged 1 commit into from
Jan 13, 2023

Conversation

echeran
Copy link
Contributor

@echeran echeran commented Jan 12, 2023

This PR is adding a workflow to ensure that certain CI caches are not evicted when they are flaky/costly to create.

The motivating reason is that PRs can have spurious build failures because the Maven build job cannot download all of the dependency artifacts due to flakiness. The job needs to be re-run in that case until all of the dependency artifacts can be successfully downloaded. This happens when the cache does not exist, which can happen because the cache is evicted automatically after 7 days of inactivity.

Note: Although ICU4J only has a few test dependencies, the Maven build uses plugins that are implemented with code that have many transitive dependencies.

By ensuring that the cache exists on the upstream default branch (main), the CI invocations for PRs will be able to reuse the cache from the default branch and load from it during the first run for that PR. This will help insulate contributors from job failures due to the flakiness.

Checklist
  • Required: Issue filed: https://unicode-org.atlassian.net/browse/ICU-12811
  • Required: The PR title must be prefixed with a JIRA Issue number.
  • Required: The PR description must include the link to the Jira Issue, for example by completing the URL in the first checklist item
  • Required: Each commit message must be prefixed with a JIRA Issue number.
  • Issue accepted (done by Technical Committee after discussion)
  • Tests included, if applicable
  • API docs and/or User Guide docs changed or added, if applicable

Copy link
Member

@markusicu markusicu left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

looks plausible...

.github/workflows/cache_retain.yml Outdated Show resolved Hide resolved
.github/workflows/cache_retain.yml Outdated Show resolved Hide resolved
.github/workflows/cache_retain.yml Outdated Show resolved Hide resolved
@jira-pull-request-webhook
Copy link

Hooray! The files in the branch are the same across the force-push. 😃

~ Your Friendly Jira-GitHub PR Checker Bot

Copy link
Member

@markusicu markusicu left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

lgtm tnx

@echeran
Copy link
Contributor Author

echeran commented Jan 13, 2023

fyi @srl295

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

4 participants