Files
spring-tools/concourse/pipeline.yml

1178 lines
33 KiB
YAML

##########################################################
resource_types:
- name: s3-multi
type: docker-image
source:
repository: kdvolder/s3-resource-simple
- name: slack-notification
type: docker-image
source:
repository: cfcommunity/slack-notification-resource
tag: latest
#########################################################
resources:
- name: docker-git
type: git
source:
uri: git@github.com:spring-projects/sts4.git
branch: ((branch))
private_key: ((rsa_id))
paths:
- concourse/docker
- name: sts4
type: git
source:
uri: git@github.com:spring-projects/sts4.git
branch: ((branch))
private_key: ((rsa_id))
- name: sts4-out
type: git
source:
uri: git@github.com:spring-projects/sts4.git
branch: ((branch))
private_key: ((rsa_id))
- name: atom-cf-manifest-yaml
type: git
source:
branch: ((branch))
private_key: ((rsa_id))
uri: git@github.com:spring-projects/atom-cf-manifest-yaml.git
- name: atom-concourse
type: git
source:
branch: ((branch))
private_key: ((rsa_id))
uri: git@github.com:spring-projects/atom-concourse.git
- name: atom-bosh
type: git
source:
branch: ((branch))
private_key: ((rsa_id))
uri: git@github.com:spring-projects/atom-bosh.git
- name: atom-boot-java
type: git
source:
branch: ((branch))
private_key: ((rsa_id))
uri: git@github.com:spring-projects/atom-boot-java.git
- name: atom-boot-properties
type: git
source:
branch: ((branch))
private_key: ((rsa_id))
uri: git@github.com:spring-projects/atom-boot-properties.git
- name: tasks
type: git
source:
uri: git@github.com:spring-projects/sts4.git
branch: ((branch))
paths:
- concourse/tasks
private_key: ((rsa_id))
- name: s3-boot-properties-vsix-snapshot
type: s3
source:
bucket: ((s3_bucket))
access_key_id: ((s3_accesskey))
secret_access_key: ((s3_secretkey))
region_name: ((s3_region))
regexp: sts4/vscode-extensions/snapshots/vscode-boot-properties-(.*).vsix
- name: s3-boot-java-vsix-snapshot
type: s3
source:
bucket: ((s3_bucket))
access_key_id: ((s3_accesskey))
secret_access_key: ((s3_secretkey))
region_name: ((s3_region))
regexp: sts4/vscode-extensions/snapshots/vscode-boot-java-(.*).vsix
- name: s3-concourse-vsix-snapshot
type: s3
source:
bucket: ((s3_bucket))
access_key_id: ((s3_accesskey))
secret_access_key: ((s3_secretkey))
region_name: ((s3_region))
regexp: sts4/vscode-extensions/snapshots/vscode-concourse-(.*).vsix
- name: s3-bosh-vsix-snapshot
type: s3
source:
bucket: ((s3_bucket))
access_key_id: ((s3_accesskey))
secret_access_key: ((s3_secretkey))
region_name: ((s3_region))
regexp: sts4/vscode-extensions/snapshots/vscode-bosh-(.*).vsix
- name: s3-manifest-yaml-vsix-snapshot
type: s3
source:
bucket: ((s3_bucket))
access_key_id: ((s3_accesskey))
secret_access_key: ((s3_secretkey))
region_name: ((s3_region))
regexp: sts4/vscode-extensions/snapshots/vscode-manifest-yaml-(.*).vsix
- name: s3-manifest-yaml-fatjar-snapshot
type: s3
source:
bucket: ((s3_bucket))
access_key_id: ((s3_accesskey))
secret_access_key: ((s3_secretkey))
region_name: ((s3_region))
regexp: sts4/fatjars/snapshots/manifest-yaml-language-server-(.*).jar
- name: s3-manifest-yaml-fatjar--rc
type: s3
source:
bucket: ((s3_prod_bucket))
access_key_id: ((s3_prod_accesskey))
secret_access_key: ((s3_prod_secretkey))
region_name: ((s3_prod_region))
regexp: release/STS4/fatjars/manifest-yaml-language-server-(.*).jar
- name: s3-concourse-fatjar-snapshot
type: s3
source:
bucket: ((s3_bucket))
access_key_id: ((s3_accesskey))
secret_access_key: ((s3_secretkey))
region_name: ((s3_region))
regexp: sts4/fatjars/snapshots/concourse-language-server-(.*).jar
- name: s3-concourse-fatjar--rc
type: s3
source:
bucket: ((s3_prod_bucket))
access_key_id: ((s3_prod_accesskey))
secret_access_key: ((s3_prod_secretkey))
region_name: ((s3_prod_region))
regexp: release/STS4/fatjars/concourse-language-server-(.*).jar
- name: s3-bosh-fatjar-snapshot
type: s3
source:
bucket: ((s3_bucket))
access_key_id: ((s3_accesskey))
secret_access_key: ((s3_secretkey))
region_name: ((s3_region))
regexp: sts4/fatjars/snapshots/bosh-language-server-(.*).jar
- name: s3-bosh-fatjar--rc
type: s3
source:
bucket: ((s3_prod_bucket))
access_key_id: ((s3_prod_accesskey))
secret_access_key: ((s3_prod_secretkey))
region_name: ((s3_prod_region))
regexp: release/STS4/fatjars/bosh-language-server-(.*).jar
- name: s3-boot-java-fatjar-snapshot
type: s3
source:
bucket: ((s3_bucket))
access_key_id: ((s3_accesskey))
secret_access_key: ((s3_secretkey))
region_name: ((s3_region))
regexp: sts4/fatjars/snapshots/boot-java-language-server-(.*).jar
- name: s3-boot-java-fatjar--rc
type: s3
source:
bucket: ((s3_prod_bucket))
access_key_id: ((s3_prod_accesskey))
secret_access_key: ((s3_prod_secretkey))
region_name: ((s3_prod_region))
regexp: release/STS4/fatjars/boot-java-language-server-(.*).jar
- name: s3-boot-properties-fatjar-snapshot
type: s3
source:
bucket: ((s3_bucket))
access_key_id: ((s3_accesskey))
secret_access_key: ((s3_secretkey))
region_name: ((s3_region))
regexp: sts4/fatjars/snapshots/boot-properties-language-server-(.*).jar
- name: s3-boot-properties-fatjar--rc
type: s3
source:
bucket: ((s3_prod_bucket))
access_key_id: ((s3_prod_accesskey))
secret_access_key: ((s3_prod_secretkey))
region_name: ((s3_prod_region))
regexp: release/STS4/fatjars/boot-properties-language-server-(.*).jar
- name: s3-manifest-yaml-atom-snapshot
type: s3
source:
bucket: ((s3_bucket))
access_key_id: ((s3_accesskey))
secret_access_key: ((s3_secretkey))
region_name: ((s3_region))
regexp: sts4/atom/snapshots/cf-manifest-yaml-(.*).tgz
- name: s3-concourse-atom-snapshot
type: s3
source:
bucket: ((s3_bucket))
access_key_id: ((s3_accesskey))
secret_access_key: ((s3_secretkey))
region_name: ((s3_region))
regexp: sts4/atom/snapshots/concourse-pipeline-yaml-(.*).tgz
- name: s3-bosh-atom-snapshot
type: s3
source:
bucket: ((s3_bucket))
access_key_id: ((s3_accesskey))
secret_access_key: ((s3_secretkey))
region_name: ((s3_region))
regexp: sts4/atom/snapshots/bosh-yaml-(.*).tgz
- name: s3-boot-java-atom-snapshot
type: s3
source:
bucket: ((s3_bucket))
access_key_id: ((s3_accesskey))
secret_access_key: ((s3_secretkey))
region_name: ((s3_region))
regexp: sts4/atom/snapshots/boot-java-(.*).tgz
- name: s3-boot-properties-atom-snapshot
type: s3
source:
bucket: ((s3_bucket))
access_key_id: ((s3_accesskey))
secret_access_key: ((s3_secretkey))
region_name: ((s3_region))
regexp: sts4/atom/snapshots/boot-properties-(.*).tgz
- name: vscode-snapshot-website
type: s3-multi
source:
bucket: ((s3_prod_bucket))
access_key_id: ((s3_prod_accesskey))
secret_access_key: ((s3_prod_secretkey))
region_name: ((s3_region))
path: snapshot/STS4/vscode-extensions
options:
- "--acl public-read"
- name: atom-snapshot-website
type: s3-multi
source:
bucket: ((s3_prod_bucket))
access_key_id: ((s3_prod_accesskey))
secret_access_key: ((s3_prod_secretkey))
region_name: ((s3_region))
path: snapshot/STS4/atom-packages
options:
- "--acl public-read"
- name: slack-notification
type: slack-notification
source:
url: ((slack_webhook))
- name: docker-image
type: docker-image
source:
username: ((docker_hub_username))
password: ((docker_hub_password))
repository: kdvolder/sts4-build-env
- name: maven-cache
type: s3
source:
bucket: ((s3_bucket))
access_key_id: ((s3_accesskey))
secret_access_key: ((s3_secretkey))
region_name: ((s3_region))
regexp: mvn-caches/sts4-(.*).tar.gz
- name: version
type: semver
source:
driver: s3
bucket: ((s3_bucket))
key: versions/vscode-extensions
access_key_id: ((s3_accesskey))
secret_access_key: ((s3_secretkey))
region_name: ((s3_region))
initial_version: 0.0.5-RC.6
########################################################################################
jobs:
- name: build-docker-image
serial: true
plan:
- get: docker-git
trigger: true
- put: docker-image
params:
build: docker-git/concourse/docker
get_params:
skip_download: true
- name: build-mvn-cache
serial: true
plan:
- get: sts4
trigger: true
- task: build-mvn-cache
file: sts4/concourse/tasks/build-mvn-cache.yml
- put: maven-cache
params:
file: out/*.tar.gz
- name: build-boot-properties-vsix-snapshot
plan:
- aggregate:
- get: sts4
trigger: true
- get: maven-cache
- task: build-boot-properties-vsix-snapshot
attempts: 3 #Because its a bit flaky with the maven bits
file: sts4/concourse/tasks/build-vsix.yml
params:
extension_id: vscode-boot-properties
on_failure:
put: slack-notification
params:
text: |
Concourse ${BUILD_PIPELINE_NAME}/${BUILD_JOB_NAME}/${BUILD_NAME} has failed!
- put: s3-boot-properties-vsix-snapshot
params:
file: out/vscode-boot-properties-*.vsix
acl: public-read
- name: build-boot-java-vsix-snapshot
plan:
- aggregate:
- get: sts4
trigger: true
- get: maven-cache
- task: build-boot-java-vsix-snapshot
#attempts: 3 #Because its a bit flaky with the maven bits
file: sts4/concourse/tasks/build-vsix.yml
params:
extension_id: vscode-boot-java
on_failure:
put: slack-notification
params:
text: |
Concourse ${BUILD_PIPELINE_NAME}/${BUILD_JOB_NAME}/${BUILD_NAME} has failed!
- put: s3-boot-java-vsix-snapshot
params:
file: out/vscode-boot-java-*.vsix
acl: public-read
- name: build-consourse-vsix-snapshot
plan:
- aggregate:
- get: sts4
trigger: true
- get: maven-cache
- task: build-consourse-vsix-snapshot
file: sts4/concourse/tasks/build-vsix.yml
params:
extension_id: vscode-concourse
on_failure:
put: slack-notification
params:
text: |
Concourse ${BUILD_PIPELINE_NAME}/${BUILD_JOB_NAME}/${BUILD_NAME} has failed!
- put: s3-concourse-vsix-snapshot
params:
file: out/vscode-concourse-*.vsix
acl: public-read
- name: build-bosh-vsix-snapshot
plan:
- aggregate:
- get: sts4
trigger: true
- get: maven-cache
- task: build-bosh-vsix-snapshot
file: sts4/concourse/tasks/build-vsix.yml
params:
extension_id: vscode-bosh
on_failure:
put: slack-notification
params:
text: |
Concourse ${BUILD_PIPELINE_NAME}/${BUILD_JOB_NAME}/${BUILD_NAME} has failed!
- put: s3-bosh-vsix-snapshot
params:
file: out/vscode-bosh-*.vsix
acl: public-read
- name: build-manifest-yaml-vsix-snapshot
plan:
- aggregate:
- get: sts4
trigger: true
- get: maven-cache
- task: build-manifest-yaml-vsix-snapshot
file: sts4/concourse/tasks/build-vsix.yml
params:
extension_id: vscode-manifest-yaml
on_failure:
put: slack-notification
params:
text: |
Concourse ${BUILD_PIPELINE_NAME}/${BUILD_JOB_NAME}/${BUILD_NAME} has failed!
- aggregate:
- put: s3-manifest-yaml-vsix-snapshot
params:
file: out/vscode-manifest-yaml-*.vsix
acl: public-read
- name: trigger-rc-build
serial: true
plan:
- aggregate:
- get: sts4
passed:
- build-manifest-yaml-vsix-snapshot
- build-consourse-vsix-snapshot
- build-bosh-vsix-snapshot
- build-boot-java-vsix-snapshot
- build-boot-properties-vsix-snapshot
- do:
- get: version
params:
pre: RC
- put: version
params:
file: version/version
- put: sts4-out
params:
repository: sts4
only_tag: true
tag_prefix: V_
tag: version/version
- name: promote-fatjars-to-rc
serial: true
plan:
- aggregate:
- get: s3-bosh-fatjar-snapshot
passed:
- build-bosh-atom-package
- get: s3-concourse-fatjar-snapshot
passed:
- build-concourse-atom-package
- get: s3-manifest-yaml-fatjar-snapshot
passed:
- build-manifest-yaml-atom-package
- get: s3-boot-java-fatjar-snapshot
passed:
- build-boot-java-atom-package
- get: s3-boot-properties-fatjar-snapshot
passed:
- build-boot-properties-atom-package
- aggregate:
- put: s3-bosh-fatjar--rc
params:
file: s3-bosh-fatjar-snapshot/*.jar
acl: public-read
- put: s3-concourse-fatjar--rc
params:
file: s3-concourse-fatjar-snapshot/*.jar
acl: public-read
- put: s3-manifest-yaml-fatjar--rc
params:
file: s3-manifest-yaml-fatjar-snapshot/*.jar
acl: public-read
- put: s3-boot-java-fatjar--rc
params:
file: s3-boot-java-fatjar-snapshot/*.jar
acl: public-read
- put: s3-boot-properties-fatjar--rc
params:
file: s3-boot-properties-fatjar-snapshot/*.jar
acl: public-read
- name: prepare-manifest-yaml-atom-rc
serial: true
plan:
- aggregate:
- get: sts4
- get: atom-cf-manifest-yaml
- get: s3-manifest-yaml-fatjar--rc
trigger: true
passed:
- promote-fatjars-to-rc
- task: build-atom-package
params:
package_name: atom-cf-manifest-yaml
input_mapping:
release_repo: atom-cf-manifest-yaml
fatjar: s3-manifest-yaml-fatjar--rc
file: sts4/concourse/tasks/build-atom-package.yml
- put: atom-cf-manifest-yaml
params:
repository: out/repo
rebase: true
- name: prepare-concourse-atom-rc
serial: true
plan:
- aggregate:
- get: sts4
- get: atom-concourse
- get: s3-concourse-fatjar--rc
trigger: true
passed:
- promote-fatjars-to-rc
- task: build-atom-package
params:
package_name: atom-concourse
input_mapping:
release_repo: atom-concourse
fatjar: s3-concourse-fatjar--rc
file: sts4/concourse/tasks/build-atom-package.yml
- put: atom-concourse
params:
repository: out/repo
rebase: true
- name: prepare-bosh-atom-rc
serial: true
plan:
- aggregate:
- get: sts4
- get: atom-bosh
- get: s3-bosh-fatjar--rc
trigger: true
passed:
- promote-fatjars-to-rc
- task: build-atom-package
params:
package_name: atom-bosh
input_mapping:
release_repo: atom-bosh
fatjar: s3-bosh-fatjar--rc
file: sts4/concourse/tasks/build-atom-package.yml
- put: atom-bosh
params:
repository: out/repo
rebase: true
- name: prepare-boot-properties-atom-rc
serial: true
plan:
- aggregate:
- get: sts4
- get: atom-boot-properties
- get: s3-boot-properties-fatjar--rc
trigger: true
passed:
- promote-fatjars-to-rc
- task: build-atom-package
params:
package_name: atom-boot-properties
input_mapping:
release_repo: atom-boot-properties
fatjar: s3-boot-properties-fatjar--rc
file: sts4/concourse/tasks/build-atom-package.yml
- put: atom-boot-properties
params:
repository: out/repo
rebase: true
- name: prepare-boot-java-atom-rc
serial: true
plan:
- aggregate:
- get: sts4
- get: atom-boot-java
- get: s3-boot-java-fatjar--rc
trigger: true
passed:
- promote-fatjars-to-rc
- task: build-atom-package
params:
package_name: atom-boot-java
input_mapping:
release_repo: atom-boot-java
fatjar: s3-boot-java-fatjar--rc
file: sts4/concourse/tasks/build-atom-package.yml
- put: atom-boot-java
params:
repository: out/repo
rebase: true
- name: build-concourse-rc
plan:
- aggregate:
- get: maven-cache
passed:
- build-consourse-vsix-snapshot
- get: sts4
passed:
- trigger-rc-build
- get: version
trigger: true
passed:
- trigger-rc-build
- task: build-concourse-rc
file: sts4/concourse/tasks/rc-build.yml
params:
extension_id: vscode-concourse
on_failure:
put: slack-notification
params:
text: |
Concourse ${BUILD_PIPELINE_NAME}/${BUILD_JOB_NAME}/${BUILD_NAME} has failed!
- put: s3-concourse-vsix-snapshot
params:
file: out/vscode-concourse-*.vsix
acl: public-read
on_success:
put: slack-notification
params:
channel: "#tools-team-internal"
text_file: s3-concourse-vsix-snapshot/url
icon_url: https://raw.githubusercontent.com/spring-projects/sts4/master/vscode-extensions/vscode-concourse/icon.png
text: |
Concourse ${BUILD_PIPELINE_NAME}/${BUILD_JOB_NAME}/${BUILD_NAME} has succeed!
Release candidate available for testing $TEXT_FILE_CONTENT
- name: build-manifest-yaml-rc
plan:
- aggregate:
- get: maven-cache
passed:
- build-manifest-yaml-vsix-snapshot
- get: sts4
passed:
- trigger-rc-build
- get: version
trigger: true
passed:
- trigger-rc-build
- task: build-manifest-yaml-rc
file: sts4/concourse/tasks/rc-build.yml
params:
extension_id: vscode-manifest-yaml
on_failure:
put: slack-notification
params:
text: |
Concourse ${BUILD_PIPELINE_NAME}/${BUILD_JOB_NAME}/${BUILD_NAME} has failed!
- put: s3-manifest-yaml-vsix-snapshot
params:
file: out/vscode-manifest-yaml-*.vsix
acl: public-read
on_success:
put: slack-notification
params:
channel: "#tools-team-internal"
text_file: s3-manifest-yaml-vsix-snapshot/url
icon_url: https://raw.githubusercontent.com/spring-projects/sts4/master/vscode-extensions/vscode-manifest-yaml/icon.png
text: |
Concourse ${BUILD_PIPELINE_NAME}/${BUILD_JOB_NAME}/${BUILD_NAME} has succeed!
Release candidate available for testing $TEXT_FILE_CONTENT
- name: build-bosh-rc
plan:
- aggregate:
- get: maven-cache
passed:
- build-bosh-vsix-snapshot
- get: sts4
passed:
- trigger-rc-build
- get: version
trigger: true
passed:
- trigger-rc-build
- task: build-bosh-rc
file: sts4/concourse/tasks/rc-build.yml
params:
extension_id: vscode-bosh
on_failure:
put: slack-notification
params:
text: |
Concourse ${BUILD_PIPELINE_NAME}/${BUILD_JOB_NAME}/${BUILD_NAME} has failed!
- put: s3-bosh-vsix-snapshot
params:
file: out/vscode-*.vsix
acl: public-read
on_success:
put: slack-notification
params:
channel: "#tools-team-internal"
text_file: s3-bosh-vsix-snapshot/url
icon_url: https://raw.githubusercontent.com/spring-projects/sts4/master/vscode-extensions/vscode-concourse/icon.png
text: |
Build ${BUILD_PIPELINE_NAME}/${BUILD_JOB_NAME}/${BUILD_NAME} has succeed!
Release candidate available for testing $TEXT_FILE_CONTENT
- name: build-boot-properties-rc
plan:
- aggregate:
- get: maven-cache
passed:
- build-boot-properties-vsix-snapshot
- get: sts4
passed:
- trigger-rc-build
- get: version
trigger: true
passed:
- trigger-rc-build
- task: build-boot-properties-rc
file: sts4/concourse/tasks/rc-build.yml
params:
extension_id: vscode-boot-properties
on_failure:
put: slack-notification
params:
text: |
Concourse ${BUILD_PIPELINE_NAME}/${BUILD_JOB_NAME}/${BUILD_NAME} has failed!
- put: s3-boot-properties-vsix-snapshot
params:
file: out/vscode-*.vsix
acl: public-read
on_success:
put: slack-notification
params:
channel: "#tools-team-internal"
text_file: s3-boot-properties-vsix-snapshot/url
icon_url: https://raw.githubusercontent.com/spring-projects/sts4/master/vscode-extensions/vscode-boot-properties/spring-boot-logo.png
text: |
Build ${BUILD_PIPELINE_NAME}/${BUILD_JOB_NAME}/${BUILD_NAME} has succeed!
Release candidate available for testing $TEXT_FILE_CONTENT
- name: build-boot-java-rc
plan:
- aggregate:
- get: maven-cache
passed:
- build-boot-java-vsix-snapshot
- get: sts4
passed:
- trigger-rc-build
- get: version
trigger: true
passed:
- trigger-rc-build
- task: build-boot-java-rc
file: sts4/concourse/tasks/rc-build.yml
params:
extension_id: vscode-boot-java
on_failure:
put: slack-notification
params:
text: |
Concourse ${BUILD_PIPELINE_NAME}/${BUILD_JOB_NAME}/${BUILD_NAME} has failed!
- put: s3-boot-java-vsix-snapshot
params:
file: out/vscode-*.vsix
acl: public-read
on_success:
put: slack-notification
params:
channel: "#tools-team-internal"
text_file: s3-boot-java-vsix-snapshot/url
icon_url: https://raw.githubusercontent.com/spring-projects/sts4/master/vscode-extensions/vscode-boot-java/spring-boot-logo.png
text: |
Build ${BUILD_PIPELINE_NAME}/${BUILD_JOB_NAME}/${BUILD_NAME} has succeed!
Release candidate available for testing $TEXT_FILE_CONTENT
- name: publish-release
serial: true
plan:
- aggregate:
- get: tasks
- get: sts4
passed:
- build-manifest-yaml-rc
- build-concourse-rc
- build-bosh-rc
- build-boot-properties-rc
- build-boot-java-rc
- get: version
passed:
- build-concourse-rc
- build-manifest-yaml-rc
- build-bosh-rc
- build-boot-java-rc
- build-boot-properties-rc
params:
bump: final
- get: s3-concourse-vsix-snapshot
passed:
- build-concourse-rc
- get: s3-manifest-yaml-vsix-snapshot
passed:
- build-manifest-yaml-rc
- get: s3-bosh-vsix-snapshot
passed:
- build-bosh-rc
- get: s3-boot-properties-vsix-snapshot
passed:
- build-boot-properties-rc
- get: s3-boot-java-vsix-snapshot
passed:
- build-boot-java-rc
- task: publish-vsix-releases
file: tasks/concourse/tasks/publish-vsix-releases.yml
input_mapping:
sts4: tasks
params:
vsce_token: ((vsce_token))
on_failure:
put: slack-notification
params:
text: |
Concourse ${BUILD_PIPELINE_NAME}/${BUILD_JOB_NAME}/${BUILD_NAME} has failed!
on_success:
put: slack-notification
params:
channel: "#tools-team-internal"
text_file: version/version
text: |
STS 4 VScode Extensions $TEXT_FILE_CONTENT released
Releases now available on Vscode Marketplace:
• <https://marketplace.visualstudio.com/items?itemName=Pivotal.vscode-manifest-yaml|Cloudfoundry Manifest Editor>
• <https://marketplace.visualstudio.com/items?itemName=Pivotal.vscode-concourse|Concourse CI Pipeline Editor>
• <https://marketplace.visualstudio.com/items?itemName=Pivotal.vscode-bosh|Bosh Deployment Manifest Editor>
• <https://marketplace.visualstudio.com/items?itemName=Pivotal.vscode-boot-properties|Spring Boot Application Properties Support>
• <https://marketplace.visualstudio.com/items?itemName=Pivotal.vscode-boot-java|Spring Boot Java Support>
- aggregate:
- put: sts4-out
params:
repository: sts4
only_tag: true
tag: version/version
tag_prefix: V_
- put: version
params:
file: version/version
- name: bump-version-patch
serial: true
plan:
- aggregate:
- get: sts4
- get: version
params:
bump: patch
- task: bump-versions
file: sts4/concourse/tasks/bump-versions.yml
- put: sts4
params:
repository: out
rebase: true
- put: version
params:
file: version/version
- name: bump-version-minor
serial: true
plan:
- aggregate:
- get: sts4
- get: version
params:
bump: minor
- task: bump-versions
file: sts4/concourse/tasks/bump-versions.yml
- put: sts4
params:
repository: out
rebase: true
- put: version
params:
file: version/version
# - name: post-release
# serial: true
# plan:
# - aggregate:
# - get: sts4
# - get: version
# params:
# bump: patch
# trigger: true
# passed:
# - publish-release
# - task: bump-versions
# file: sts4/concourse/tasks/bump-versions.yml
# - put: sts4-out
# params:
# repository: out
# rebase: true
# - put: version
# params:
# file: version/version
- name: build-atom-snapshot-website
serial: true
plan:
- aggregate:
- get: sts4
- get: s3-bosh-atom-snapshot
trigger: true
passed:
- build-bosh-atom-package
- get: s3-manifest-yaml-atom-snapshot
trigger: true
passed:
- build-manifest-yaml-atom-package
- get: s3-concourse-atom-snapshot
trigger: true
passed:
- build-concourse-atom-package
- get: s3-boot-java-atom-snapshot
trigger: true
passed:
- build-boot-java-atom-package
- get: s3-boot-properties-atom-snapshot
trigger: true
passed:
- build-boot-properties-atom-package
- task: build-website
file: sts4/concourse/tasks/build-atom-website.yml
- put: atom-snapshot-website
params:
path: website
- name: build-vscode-snapshot-website
serial: true
plan:
- aggregate:
- get: sts4
- get: s3-bosh-vsix-snapshot
trigger: true
passed:
- build-bosh-vsix-snapshot
- get: s3-manifest-yaml-vsix-snapshot
trigger: true
passed:
- build-manifest-yaml-vsix-snapshot
- get: s3-boot-properties-vsix-snapshot
trigger: true
passed:
- build-boot-properties-vsix-snapshot
- get: s3-boot-java-vsix-snapshot
trigger: true
passed:
- build-boot-java-vsix-snapshot
- get: s3-concourse-vsix-snapshot
trigger: true
passed:
- build-consourse-vsix-snapshot
- task: build-website
file: sts4/concourse/tasks/build-vscode-website.yml
- put: vscode-snapshot-website
params:
path: website
- name: atom-language-servers-test
plan:
- aggregate:
- get: sts4
trigger: true
- get: maven-cache
- task: atom-language-servers-test
file: sts4/concourse/tasks/atom-language-servers-test.yml
on_failure:
put: slack-notification
params:
text: |
Concourse ${BUILD_PIPELINE_NAME}/${BUILD_JOB_NAME}/${BUILD_NAME} has failed!
on_success:
aggregate:
- put: s3-manifest-yaml-fatjar-snapshot
params:
file: out/manifest-yaml-language-server-*.jar
acl: public-read
- put: s3-concourse-fatjar-snapshot
params:
file: out/concourse-language-server-*.jar
acl: public-read
- put: s3-bosh-fatjar-snapshot
params:
file: out/bosh-language-server-*.jar
acl: public-read
- put: s3-boot-java-fatjar-snapshot
params:
file: out/boot-java-language-server-*.jar
acl: public-read
- put: s3-boot-properties-fatjar-snapshot
params:
file: out/boot-properties-language-server-*.jar
acl: public-read
- name: build-manifest-yaml-atom-package
serial: true
plan:
- aggregate:
- get: sts4
passed:
- atom-language-servers-test
- get: atom-cf-manifest-yaml
- get: s3-manifest-yaml-fatjar-snapshot
trigger: true
passed:
- atom-language-servers-test
- task: build-manifest-yaml-atom-package
params:
package_name: atom-cf-manifest-yaml
input_mapping:
release_repo: atom-cf-manifest-yaml
fatjar: s3-manifest-yaml-fatjar-snapshot
file: sts4/concourse/tasks/build-atom-package.yml
- aggregate:
- put: s3-manifest-yaml-atom-snapshot
params:
file: out/cf-manifest-yaml-*.tgz
acl: public-read
- put: atom-cf-manifest-yaml
params:
repository: out/repo
rebase: true
on_failure:
put: slack-notification
params:
text: |
Concourse ${BUILD_PIPELINE_NAME}/${BUILD_JOB_NAME}/${BUILD_NAME} has failed!
- name: build-concourse-atom-package
serial: true
plan:
- aggregate:
- get: sts4
passed:
- atom-language-servers-test
- get: atom-concourse
- get: s3-concourse-fatjar-snapshot
trigger: true
passed:
- atom-language-servers-test
- task: build-concourse-pipeline-yaml-atom-package
params:
package_name: atom-concourse
input_mapping:
release_repo: atom-concourse
fatjar: s3-concourse-fatjar-snapshot
file: sts4/concourse/tasks/build-atom-package.yml
- aggregate:
- put: s3-concourse-atom-snapshot
params:
file: out/concourse-pipeline-yaml-*.tgz
acl: public-read
- put: atom-concourse
params:
repository: out/repo
rebase: true
on_failure:
put: slack-notification
params:
text: |
Concourse ${BUILD_PIPELINE_NAME}/${BUILD_JOB_NAME}/${BUILD_NAME} has failed!
- name: build-bosh-atom-package
serial: true
plan:
- aggregate:
- get: sts4
passed:
- atom-language-servers-test
- get: atom-bosh
- get: s3-bosh-fatjar-snapshot
trigger: true
passed:
- atom-language-servers-test
- task: build-bosh-atom-package
params:
package_name: atom-bosh
input_mapping:
fatjar: s3-bosh-fatjar-snapshot
release_repo: atom-bosh
file: sts4/concourse/tasks/build-atom-package.yml
- aggregate:
- put: s3-bosh-atom-snapshot
params:
file: out/bosh-yaml-*.tgz
acl: public-read
- put: atom-bosh
params:
repository: out/repo
rebase: true
on_failure:
put: slack-notification
params:
text: |
Concourse ${BUILD_PIPELINE_NAME}/${BUILD_JOB_NAME}/${BUILD_NAME} has failed!
- name: build-boot-java-atom-package
serial: true
plan:
- aggregate:
- get: sts4
passed:
- atom-language-servers-test
- get: atom-boot-java
- get: s3-boot-java-fatjar-snapshot
trigger: true
passed:
- atom-language-servers-test
- task: build-boot-java-atom-package
params:
package_name: atom-boot-java
input_mapping:
fatjar: s3-boot-java-fatjar-snapshot
release_repo: atom-boot-java
file: sts4/concourse/tasks/build-atom-package.yml
- aggregate:
- put: s3-boot-java-atom-snapshot
params:
file: out/boot-java-*.tgz
acl: public-read
- put: atom-boot-java
params:
repository: out/repo
rebase: true
on_failure:
put: slack-notification
params:
text: |
Concourse ${BUILD_PIPELINE_NAME}/${BUILD_JOB_NAME}/${BUILD_NAME} has failed!
- name: build-boot-properties-atom-package
serial: true
plan:
- aggregate:
- get: sts4
passed:
- atom-language-servers-test
- get: atom-boot-properties
- get: s3-boot-properties-fatjar-snapshot
trigger: true
passed:
- atom-language-servers-test
- task: build-boot-properties-atom-package
params:
package_name: atom-boot-properties
input_mapping:
fatjar: s3-boot-properties-fatjar-snapshot
release_repo: atom-boot-properties
file: sts4/concourse/tasks/build-atom-package.yml
- aggregate:
- put: s3-boot-properties-atom-snapshot
params:
file: out/boot-properties-*.tgz
acl: public-read
- put: atom-boot-properties
params:
repository: out/repo
rebase: true
on_failure:
put: slack-notification
params:
text: |
Concourse ${BUILD_PIPELINE_NAME}/${BUILD_JOB_NAME}/${BUILD_NAME} has failed!
groups:
- name: vscode-snapshot
jobs:
- build-vscode-snapshot-website
- build-consourse-vsix-snapshot
- build-boot-properties-vsix-snapshot
- build-boot-java-vsix-snapshot
- build-bosh-vsix-snapshot
- build-manifest-yaml-vsix-snapshot
- name: vscode-release
jobs:
- build-bosh-rc
- build-concourse-rc
- build-manifest-yaml-rc
- build-boot-java-rc
- build-boot-properties-rc
- trigger-rc-build
- publish-release
# - post-release
- build-manifest-yaml-vsix-snapshot
- build-consourse-vsix-snapshot
- build-bosh-vsix-snapshot
- build-boot-java-vsix-snapshot
- build-boot-properties-vsix-snapshot
- name: bump-versions
jobs:
- bump-version-patch
- bump-version-minor
- name: atom-snapshots
jobs:
- build-atom-snapshot-website
- atom-language-servers-test
- build-concourse-atom-package
- build-bosh-atom-package
- build-manifest-yaml-atom-package
- build-boot-java-atom-package
- build-boot-properties-atom-package
- name: atom-rc
jobs:
- prepare-boot-java-atom-rc
- prepare-boot-properties-atom-rc
- prepare-bosh-atom-rc
- prepare-concourse-atom-rc
- prepare-manifest-yaml-atom-rc
- promote-fatjars-to-rc
- name: setup
jobs:
- build-mvn-cache
- build-docker-image