########################################################## 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-out type: git source: uri: git@github.com:spring-projects/sts4.git branch: {{branch}} private_key: {{rsa_id}} - name: sts4 type: git source: uri: git@github.com:spring-projects/sts4.git branch: {{branch}} 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-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-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: 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: slack-notification type: slack-notification source: url: https://hooks.slack.com/services/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 - name: docker-image type: docker-image source: username: {{docker_hub_username}} password: {{docker_hub_password}} repository: kdvolder/sts4-build-env ######################################################################################## 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-vsix-snapshots plan: - get: sts4 trigger: true - task: build-vscode-extensions file: sts4/concourse/tasks/build-vscode-extensions.yml on_success: aggregate: - put: s3-manifest-yaml-vsix-snapshot params: file: vsix-files/vscode-manifest-yaml-*.vsix acl: public-read - put: s3-boot-properties-vsix-snapshot params: file: vsix-files/vscode-boot-properties-*.vsix acl: public-read - put: s3-concourse-vsix-snapshot params: file: vsix-files/vscode-concourse-*.vsix acl: public-read on_failure: put: slack-notification params: channel: "@aboyko" text: | Concourse ${BUILD_PIPELINE_NAME}/${BUILD_JOB_NAME}/${BUILD_NAME} has failed! - name: trigger-manifest-yaml-rc-build plan: - get: sts4 passed: - build-snapshot-website - get: s3-manifest-yaml-vsix-snapshot passed: - build-snapshot-website - task: trigger-manifest-yaml-rc-build file: sts4/concourse/tasks/create-rc-build-tag.yml params: extension_id: vscode-manifest-yaml - put: sts4-out params: repository: sts4 tag: out/tag only_tag: true - name: build-snapshot-website plan: - aggregate: - get: sts4 passed: - build-vsix-snapshots - get: s3-manifest-yaml-vsix-snapshot passed: - build-vsix-snapshots trigger: true - get: s3-boot-properties-vsix-snapshot passed: - build-vsix-snapshots trigger: true - get: s3-concourse-vsix-snapshot passed: - build-vsix-snapshots trigger: true - task: build-website file: sts4/concourse/tasks/build-website.yml - put: snapshot-website params: path: website on_success: put: slack-notification params: channel: "@aboyko" text: | SUCCESS Concourse ${BUILD_PIPELINE_NAME}/${BUILD_JOB_NAME}/${BUILD_NAME}! New snapshots available at http://dist.springsource.com/snapshot/STS4/nightly-distributions.html