Skip to content

Dynamic CI jobs for examples#2677

Merged
rnorth merged 6 commits intomasterfrom
examples-dynamic-ci-jobs
May 16, 2020
Merged

Dynamic CI jobs for examples#2677
rnorth merged 6 commits intomasterfrom
examples-dynamic-ci-jobs

Conversation

@rnorth
Copy link
Copy Markdown
Member

@rnorth rnorth commented May 7, 2020

Intended to apply our dynamic approach for GitHub Actions jobs to the examples. This includes use of the remote Gradle cache so that we only run an optimal subset of the example jobs.

Two things irk me about this PR:

  • Extensive duplication between ci.yml and ci-examples.yml. I considered trying to set up a matrix arrangement to avoid this, but I suspect it would become an even more complicated arrangement. We've probably already used up all our 'cleverness budget' with the existing dynamic job discovery. I think that on balance duplicating lots of the workflow file may be inelegant but is at least much clearer.

  • I could not find a way to share the Gradle cache configuration between the ./settings.gradle and ./examples/settings.gradle. Extracting this to a custom script plugin failed: even a working setup would break when --scan was enabled, and I've not yet had the energy to investigate why.

I think that, unless I've missed something very obvious, I'd like to proceed with the PR despite both of these annoyances. Happy to hear feedback to the contrary though :)

@@ -1,4 +1,4 @@
name: in-container
name: CI-DinD
Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

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

we're not running "Docker-in-Docker", but mount the socket, hence "in-container" :) Maybe we can use "wormhole" or similar...

Copy link
Copy Markdown
Member Author

Choose a reason for hiding this comment

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

Good point

@rnorth rnorth changed the title WIP: Dynamic CI jobs for examples Dynamic CI jobs for examples May 7, 2020
@rnorth rnorth marked this pull request as ready for review May 7, 2020 10:49
@rnorth rnorth requested a review from kiview as a code owner May 7, 2020 10:49
apply plugin: 'ch.myniva.s3-build-cache'
apply plugin: 'com.gradle.enterprise'

rootProject.name = 'testcontainers-java'
Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

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

Just to be sure - you just moved these lines without changing them, right? Or was it done by accident and we should probably revert it? :)

Copy link
Copy Markdown
Member Author

Choose a reason for hiding this comment

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

Moved deliberately; I'm not sure why but it feels right to have these elements near the top of the file, and leave the cache/buildscan related parts at the bottom.

@rnorth rnorth merged commit 8c7c769 into master May 16, 2020
@rnorth rnorth deleted the examples-dynamic-ci-jobs branch May 16, 2020 19:43
quincy pushed a commit to quincy/testcontainers-java that referenced this pull request May 28, 2020
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants