Use per-branch CI images

Closes gh-23439
This commit is contained in:
Phillip Webb 2020-09-21 20:01:05 -07:00
parent 4ed7febc47
commit b0cc5fba4e
4 changed files with 51 additions and 50 deletions

View File

@ -9,6 +9,7 @@ branch: "2.1.x"
milestone: "2.1.x"
build-name: "spring-boot"
pipeline-name: "spring-boot-2.1.x"
ci-image-name: "spring-boot-ci-21x"
concourse-url: "https://ci.spring.io"
bintray-subject: "spring"
bintray-repo: "jars"

View File

@ -127,18 +127,18 @@ resources:
uri: ((github-repo))
branch: ((branch))
paths: ["ci/images/*"]
- name: spring-boot-ci-image
- name: ci-image
type: docker-image
icon: docker
source:
<<: *docker-resource-source
repository: ((docker-hub-organization))/spring-boot-ci-image
- name: spring-boot-jdk11-ci-image
repository: ((docker-hub-organization))/((ci-image-name))
- name: ci-image-jdk11
type: docker-image
icon: docker
source:
<<: *docker-resource-source
repository: ((docker-hub-organization))/spring-boot-jdk11-ci-image
repository: ((docker-hub-organization))/((ci-image-name))-jdk11
- name: artifactory-repo
type: artifactory-resource
icon: package-variant
@ -179,34 +179,34 @@ resources:
icon: clock-outline
source: { interval: "24h" }
jobs:
- name: build-spring-boot-ci-images
- name: build-ci-images
plan:
- get: ci-images-git-repo
trigger: true
- in_parallel:
- put: spring-boot-ci-image
- put: ci-image
params:
build: ci-images-git-repo/ci/images
dockerfile: ci-images-git-repo/ci/images/spring-boot-ci-image/Dockerfile
- put: spring-boot-jdk11-ci-image
dockerfile: ci-images-git-repo/ci/images/ci-image/Dockerfile
- put: ci-image-jdk11
params:
build: ci-images-git-repo/ci/images
dockerfile: ci-images-git-repo/ci/images/spring-boot-jdk11-ci-image/Dockerfile
dockerfile: ci-images-git-repo/ci/images/ci-image-jdk11/Dockerfile
- name: detect-jdk-updates
plan:
- get: git-repo
- get: every-wednesday
trigger: true
- get: spring-boot-ci-image
- get: ci-image
- in_parallel:
- task: detect-jdk8-update
image: spring-boot-ci-image
image: ci-image
file: git-repo/ci/tasks/detect-jdk-updates.yml
params:
<<: *github-task-params
JDK_VERSION: java8
- task: detect-jdk11-update
image: spring-boot-ci-image
image: ci-image
file: git-repo/ci/tasks/detect-jdk-updates.yml
params:
<<: *github-task-params
@ -216,10 +216,10 @@ jobs:
- get: git-repo
- get: every-wednesday
trigger: true
- get: spring-boot-ci-image
- get: ci-image
- do:
- task: detect-ubuntu-image-updates
image: spring-boot-ci-image
image: ci-image
file: git-repo/ci/tasks/detect-ubuntu-image-updates.yml
params:
<<: *github-task-params
@ -228,10 +228,10 @@ jobs:
- get: git-repo
- get: every-wednesday
trigger: true
- get: spring-boot-ci-image
- get: ci-image
- do:
- task: detect-docker-updates
image: spring-boot-ci-image
image: ci-image
file: git-repo/ci/tasks/detect-docker-updates.yml
params:
<<: *github-task-params
@ -239,30 +239,30 @@ jobs:
serial: true
public: true
plan:
- get: spring-boot-ci-image
- get: ci-image
- get: git-repo
trigger: true
- put: repo-status-build
params: { state: "pending", commit: "git-repo" }
- do:
- task: build-project
image: spring-boot-ci-image
image: ci-image
<<: *build-project-task-params
- in_parallel:
- task: build-samples
image: spring-boot-ci-image
image: ci-image
file: git-repo/ci/tasks/build-samples.yml
timeout: ((task-timeout))
params:
<<: *gradle-enterprise-task-params
- task: build-integration-tests
image: spring-boot-ci-image
image: ci-image
file: git-repo/ci/tasks/build-integration-tests.yml
timeout: ((task-timeout))
params:
<<: *gradle-enterprise-task-params
- task: build-deployment-tests
image: spring-boot-ci-image
image: ci-image
file: git-repo/ci/tasks/build-deployment-tests.yml
timeout: ((task-timeout))
params:
@ -291,7 +291,7 @@ jobs:
serial: true
public: true
plan:
- get: spring-boot-ci-image
- get: ci-image
- get: git-repo
resource: git-pull-request
trigger: true
@ -302,20 +302,20 @@ jobs:
path: git-repo
status: pending
- task: build-project
image: spring-boot-ci-image
image: ci-image
file: git-repo/ci/tasks/build-pr-project.yml
timeout: ((task-timeout))
- in_parallel:
- task: build-samples
image: spring-boot-ci-image
image: ci-image
file: git-repo/ci/tasks/build-samples.yml
timeout: ((task-timeout))
- task: build-integration-tests
image: spring-boot-ci-image
image: ci-image
file: git-repo/ci/tasks/build-integration-tests.yml
timeout: ((task-timeout))
- task: build-deployment-tests
image: spring-boot-ci-image
image: ci-image
file: git-repo/ci/tasks/build-deployment-tests.yml
timeout: ((task-timeout))
on_success:
@ -332,30 +332,30 @@ jobs:
serial: true
public: true
plan:
- get: spring-boot-jdk11-ci-image
- get: ci-image-jdk11
- get: git-repo
trigger: true
- put: repo-status-jdk11-build
params: { state: "pending", commit: "git-repo" }
- do:
- task: build-project
image: spring-boot-jdk11-ci-image
image: ci-image-jdk11
<<: *build-project-task-params
- in_parallel:
- task: build-samples
image: spring-boot-jdk11-ci-image
image: ci-image-jdk11
file: git-repo/ci/tasks/build-samples.yml
timeout: ((task-timeout))
params:
<<: *gradle-enterprise-task-params
- task: build-integration-tests
image: spring-boot-jdk11-ci-image
image: ci-image-jdk11
file: git-repo/ci/tasks/build-integration-tests.yml
timeout: ((task-timeout))
params:
<<: *gradle-enterprise-task-params
- task: build-deployment-tests
image: spring-boot-jdk11-ci-image
image: ci-image-jdk11
file: git-repo/ci/tasks/build-deployment-tests.yml
timeout: ((task-timeout))
params:
@ -399,11 +399,11 @@ jobs:
- name: stage-milestone
serial: true
plan:
- get: spring-boot-ci-image
- get: ci-image
- get: git-repo
trigger: false
- task: stage
image: spring-boot-ci-image
image: ci-image
file: git-repo/ci/tasks/stage.yml
params:
RELEASE_TYPE: M
@ -420,11 +420,11 @@ jobs:
- name: stage-rc
serial: true
plan:
- get: spring-boot-ci-image
- get: ci-image
- get: git-repo
trigger: false
- task: stage
image: spring-boot-ci-image
image: ci-image
file: git-repo/ci/tasks/stage.yml
params:
RELEASE_TYPE: RC
@ -441,11 +441,11 @@ jobs:
- name: stage-release
serial: true
plan:
- get: spring-boot-ci-image
- get: ci-image
- get: git-repo
trigger: false
- task: stage
image: spring-boot-ci-image
image: ci-image
file: git-repo/ci/tasks/stage.yml
params:
RELEASE_TYPE: RELEASE
@ -462,7 +462,7 @@ jobs:
- name: promote-milestone
serial: true
plan:
- get: spring-boot-ci-image
- get: ci-image
- get: git-repo
trigger: false
- get: artifactory-repo
@ -472,7 +472,7 @@ jobs:
download_artifacts: false
save_build_info: true
- task: promote
image: spring-boot-ci-image
image: ci-image
file: git-repo/ci/tasks/promote.yml
params:
RELEASE_TYPE: M
@ -491,7 +491,7 @@ jobs:
- name: promote-rc
serial: true
plan:
- get: spring-boot-ci-image
- get: ci-image
- get: git-repo
trigger: false
- get: artifactory-repo
@ -501,7 +501,7 @@ jobs:
download_artifacts: false
save_build_info: true
- task: promote
image: spring-boot-ci-image
image: ci-image
file: git-repo/ci/tasks/promote.yml
params:
RELEASE_TYPE: RC
@ -520,7 +520,7 @@ jobs:
- name: promote-release
serial: true
plan:
- get: spring-boot-ci-image
- get: ci-image
- get: git-repo
trigger: false
- get: artifactory-repo
@ -530,7 +530,7 @@ jobs:
download_artifacts: false
save_build_info: true
- task: promote
image: spring-boot-ci-image
image: ci-image
file: git-repo/ci/tasks/promote.yml
params:
RELEASE_TYPE: RELEASE
@ -539,7 +539,7 @@ jobs:
- name: sync-to-maven-central
serial: true
plan:
- get: spring-boot-ci-image
- get: ci-image
- get: git-repo
- get: artifactory-repo
trigger: true
@ -548,7 +548,7 @@ jobs:
download_artifacts: false
save_build_info: true
- task: sync-to-maven-central
image: spring-boot-ci-image
image: ci-image
file: git-repo/ci/tasks/sync-to-maven-central.yml
params:
<<: *bintray-task-params
@ -565,11 +565,11 @@ jobs:
tag: generated-release-notes/tag
body: generated-release-notes/release-notes.md
groups:
- name: "Build"
- name: "builds"
jobs: ["build", "jdk11-build", "windows-build"]
- name: "Release"
- name: "releases"
jobs: ["stage-milestone", "stage-rc", "stage-release", "promote-milestone", "promote-rc", "promote-release", "sync-to-maven-central"]
- name: "CI Images"
jobs: ["build-spring-boot-ci-images", "detect-docker-updates", "detect-jdk-updates", "detect-ubuntu-image-updates"]
- name: "Build Pull Requests"
- name: "ci-images"
jobs: ["build-ci-images", "detect-docker-updates", "detect-jdk-updates", "detect-ubuntu-image-updates"]
- name: "pull-requests"
jobs: ["build-pull-requests"]