########################################################## resource_types: - name: s3-multi type: registry-image source: repository: harbor-repo.vmware.com/springossci/s3-resource-simple username: ((docker_hub_username)) password: ((docker_hub_password)) - name: slack-notification type: registry-image source: repository: cfcommunity/slack-notification-resource username: ((docker_hub_username)) password: ((docker_hub_password)) tag: latest - name: artifactory-resource type: registry-image source: repository: springio/artifactory-resource tag: 0.0.10 - name: semver type: docker-image source: repository: concourse/semver-resource tag: "1.7" ######################################################### resources: - name: monthly type: time icon: clock-outline check_every: 24h source: interval: 720h # - name: every-minute # type: time # check_every: 1m # source: # interval: 1mcd - name: docker-git type: git icon: github source: uri: git@github.com:spring-projects/sts4.git branch: ((branch)) private_key: ((rsa_id)) paths: - concourse/docker # - name: boot-dev-pack-git # type: git # source: # uri: git@github.com:spring-projects/sts4.git # branch: ((branch)) # private_key: ((rsa_id)) # paths: # - vscode-extensions/boot-dev-pack - name: sts4 type: git icon: github source: uri: git@github.com:spring-projects/sts4.git branch: ((branch)) private_key: ((rsa_id)) - name: sts4-out type: git icon: github source: uri: git@github.com:spring-projects/sts4.git branch: ((branch)) private_key: ((rsa_id)) - name: sts4-wiki type: git icon: wikipedia source: uri: git@github.com:spring-projects/sts4.wiki.git branch: master private_key: ((rsa_id)) # - name: mirror-vscode-spring-boot # type: git # source: # branch: ((branch)) # private_key: ((rsa_id)) # uri: git@github.com:pivotal/sts4-vscode-spring-boot-mirror.git # - name: mirror-vscode-concourse # type: git # source: # branch: ((branch)) # private_key: ((rsa_id)) # uri: git@github.com:pivotal/sts4-vscode-concourse-mirror.git # - name: mirror-vscode-bosh # type: git # source: # branch: ((branch)) # private_key: ((rsa_id)) # uri: git@github.com:pivotal/sts4-vscode-bosh-mirror.git - name: jvm-launch-utils-git type: git icon: github source: uri: git@github.com:spring-projects/sts4.git private_key: ((rsa_id)) branch: ((branch)) paths: - nodejs-packages/jvm-launch-utils - name: tasks type: git icon: github source: uri: git@github.com:spring-projects/sts4.git branch: ((branch)) paths: - concourse/tasks private_key: ((rsa_id)) # - name: s3-headless-maven-out # type: s3 # source: # bucket: ((s3_bucket)) # access_key_id: ((s3_accesskey)) # secret_access_key: ((s3_secretkey)) # region_name: ((s3_region)) # regexp: sts4/snapshots/headless-maven-out-(.*).tar.gz - name: s3-concourse-vsix-snapshot type: s3 icon: content-save-outline source: bucket: ((s3_bucket)) access_key_id: ((s3_svc_accesskey)) secret_access_key: ((s3_svc_secretkey)) aws_role_arn: arn:aws:iam::((s3_svc_account_id)):role/((s3_svc_user)) region_name: ((s3_region)) regexp: sts4/vscode-extensions/snapshots/vscode-concourse-(.*).vsix - name: s3-bosh-vsix-snapshot type: s3 icon: content-save-outline source: bucket: ((s3_bucket)) access_key_id: ((s3_svc_accesskey)) secret_access_key: ((s3_svc_secretkey)) aws_role_arn: arn:aws:iam::((s3_svc_account_id)):role/((s3_svc_user)) region_name: ((s3_region)) regexp: sts4/vscode-extensions/snapshots/vscode-bosh-(.*).vsix - name: s3-manifest-yaml-vsix-snapshot type: s3 icon: content-save-outline source: bucket: ((s3_bucket)) access_key_id: ((s3_svc_accesskey)) secret_access_key: ((s3_svc_secretkey)) aws_role_arn: arn:aws:iam::((s3_svc_account_id)):role/((s3_svc_user)) region_name: ((s3_region)) regexp: sts4/vscode-extensions/snapshots/vscode-manifest-yaml-(.*).vsix - name: s3-spring-boot-vsix-snapshot type: s3 icon: content-save-outline source: bucket: ((s3_bucket)) access_key_id: ((s3_svc_accesskey)) secret_access_key: ((s3_svc_secretkey)) aws_role_arn: arn:aws:iam::((s3_svc_account_id)):role/((s3_svc_user)) region_name: ((s3_region)) regexp: sts4/vscode-extensions/snapshots/vscode-spring-boot-(.*).vsix - name: s3-spring-cli-vsix-snapshot type: s3 icon: content-save-outline source: bucket: ((s3_bucket)) access_key_id: ((s3_svc_accesskey)) secret_access_key: ((s3_svc_secretkey)) aws_role_arn: arn:aws:iam::((s3_svc_account_id)):role/((s3_svc_user)) region_name: ((s3_region)) regexp: sts4/vscode-extensions/snapshots/vscode-spring-cli-(.*).vsix - name: s3-concourse-vsix-release-cdn type: s3 icon: content-save-outline source: bucket: ((CDN_BUCKET)) access_key_id: ((CDN_S3_ACCESS_KEY)) secret_access_key: ((CDN_S3_SECRET_KEY)) endpoint: ((CDN_S3_ENDPOINT)) regexp: spring-tools/release/STS4/vscode/vscode-concourse-(.*).vsix - name: s3-bosh-vsix-release-cdn type: s3 icon: content-save-outline source: bucket: ((CDN_BUCKET)) access_key_id: ((CDN_S3_ACCESS_KEY)) secret_access_key: ((CDN_S3_SECRET_KEY)) endpoint: ((CDN_S3_ENDPOINT)) regexp: spring-tools/release/STS4/vscode/vscode-bosh-(.*).vsix - name: s3-manifest-yaml-vsix-release-cdn type: s3 icon: content-save-outline source: bucket: ((CDN_BUCKET)) access_key_id: ((CDN_S3_ACCESS_KEY)) secret_access_key: ((CDN_S3_SECRET_KEY)) endpoint: ((CDN_S3_ENDPOINT)) regexp: spring-tools/release/STS4/vscode/vscode-manifest-yaml-(.*).vsix - name: s3-spring-boot-vsix-release-cdn type: s3 icon: content-save-outline source: bucket: ((CDN_BUCKET)) access_key_id: ((CDN_S3_ACCESS_KEY)) secret_access_key: ((CDN_S3_SECRET_KEY)) endpoint: ((CDN_S3_ENDPOINT)) regexp: spring-tools/release/STS4/vscode/vscode-spring-boot-(.*).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-spring-boot-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/spring-boot-language-server-(.*).jar # - name: s3-spring-boot-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/spring-boot-language-server-(.*).jar - name: vscode-snapshot-website-cdn type: s3-multi icon: content-save-outline source: bucket: ((CDN_BUCKET)) access_key_id: ((CDN_S3_ACCESS_KEY)) secret_access_key: ((CDN_S3_SECRET_KEY)) endpoint: ((CDN_S3_ENDPOINT)) region_name: ((s3_region)) path: spring-tools/snapshot/STS4/vscode-extensions change_dir_to: website - name: slack-notification type: slack-notification icon: slack source: url: ((slack_webhook)) - name: docker-image type: registry-image icon: docker source: username: ((docker_hub_username)) password: ((docker_hub_password)) repository: springci/sts4-build-env - name: maven-cache type: s3 icon: cached source: bucket: ((s3_bucket)) access_key_id: ((s3_svc_accesskey)) secret_access_key: ((s3_svc_secretkey)) aws_role_arn: arn:aws:iam::((s3_svc_account_id)):role/((s3_svc_user)) region_name: ((s3_region)) regexp: mvn-caches/sts4-(.*).tar.gz - name: version type: semver icon: counter source: driver: s3 bucket: ((s3_bucket)) key: versions/vscode-extensions access_key_id: ((s3_svc_accesskey)) secret_access_key: ((s3_svc_secretkey)) assume_role_arn: arn:aws:iam::((s3_svc_account_id)):role/((s3_svc_user)) region_name: ((s3_region)) initial_version: 0.0.5-RC.6 - name: nightly type: time icon: clock-outline source: start: 0:00 stop: 1:00 location: US/Eastern days: [Tuesday, Thursday, Saturday] # - name: artifactory # type: artifactory-resource # source: # uri: "https://repo.spring.io" # username: ((artifactory_user)) # password: ((artifactory_password)) # build_name: spring-tools-4 ######################################################################################## jobs: # - name: boot-dev-pack-ovsx-publish # plan: # - in_parallel: # - get: boot-dev-pack-git # trigger: true # - get: tasks # - task: ovsx-build-and-publish # file: tasks/concourse/tasks/ovsx-build-and-publish.yml # input_mapping: # sts4: boot-dev-pack-git # params: # ovsx_token: ((ovsx_token)) - name: vsix-s3-publish plan: - in_parallel: - get: version trigger: true passed: - publish-release - get: s3-spring-boot-vsix-snapshot passed: - publish-release - get: s3-manifest-yaml-vsix-snapshot passed: - publish-release - get: s3-bosh-vsix-snapshot passed: - publish-release - get: s3-concourse-vsix-snapshot passed: - publish-release - in_parallel: - put: s3-spring-boot-vsix-release-cdn params: file: s3-spring-boot-vsix-snapshot/*.vsix - put: s3-manifest-yaml-vsix-release-cdn params: file: s3-manifest-yaml-vsix-snapshot/*.vsix - put: s3-bosh-vsix-release-cdn params: file: s3-bosh-vsix-snapshot/*.vsix - put: s3-concourse-vsix-release-cdn params: file: s3-concourse-vsix-snapshot/*.vsix - name: create-rc-wiki-page serial: true plan: - in_parallel: - get: sts4-wiki - get: sts4 - get: s3-bosh-vsix-snapshot trigger: true passed: - build-bosh-rc - get: s3-manifest-yaml-vsix-snapshot trigger: true passed: - build-manifest-yaml-rc - get: s3-concourse-vsix-snapshot trigger: true passed: - build-concourse-rc - get: s3-spring-boot-vsix-snapshot trigger: true passed: - build-spring-boot-rc - task: create-vsix-release-wiki-page file: sts4/concourse/tasks/create-release-wiki-page.yml params: wiki_page_file_name: VSCode-Release-Candidates input_mapping: concourse-vsix: s3-concourse-vsix-snapshot bosh-vsix: s3-bosh-vsix-snapshot manifest-yaml-vsix: s3-manifest-yaml-vsix-snapshot spring-boot-vsix: s3-spring-boot-vsix-snapshot - put: sts4-wiki params: rebase: true repository: sts4-wiki-out - name: create-release-wiki-page plan: - in_parallel: - get: sts4-wiki - get: sts4 - get: s3-bosh-vsix-release-cdn trigger: true - get: s3-manifest-yaml-vsix-release-cdn trigger: true - get: s3-concourse-vsix-release-cdn trigger: true - get: s3-spring-boot-vsix-release-cdn trigger: true - task: create-vsix-release-wiki-page file: sts4/concourse/tasks/create-release-wiki-page.yml params: wiki_page_file_name: Current-VSCode-Releases input_mapping: concourse-vsix: s3-concourse-vsix-release-cdn bosh-vsix: s3-bosh-vsix-release-cdn manifest-yaml-vsix: s3-manifest-yaml-vsix-release-cdn spring-boot-vsix: s3-spring-boot-vsix-release-cdn - put: sts4-wiki params: rebase: true repository: sts4-wiki-out # - name: build-theia-docker-snapshot-image # serial: true # on_failure: # put: slack-notification # params: # text: | # Concourse ${BUILD_PIPELINE_NAME}/${BUILD_JOB_NAME}/${BUILD_NAME} has failed! # https://ci.spring.io/teams/tools/pipelines/${BUILD_PIPELINE_NAME}/jobs/${BUILD_JOB_NAME}/builds/${BUILD_NAME} # plan: # - in_parallel: # - get: s3-concourse-vsix-snapshot # trigger: true # passed: # - build-consourse-vsix-snapshot # - get: s3-spring-boot-vsix-snapshot # trigger: true # passed: # - build-spring-boot-vsix-snapshot # - 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: sts4 # - task: prepare-theia-docker-image # file: sts4/concourse/tasks/prepare-theia-docker-image.yml # - put: theia-docker-image # params: # build: output # get_params: # skip_download: true - name: build-docker-image serial: true plan: - get: monthly trigger: true - get: docker-git trigger: true - task: build-docker-image privileged: true timeout: 3h30m config: platform: linux image_resource: type: registry-image source: repository: concourse/oci-build-task params: CONTEXT: docker-git/concourse/docker REGISTRY_MIRRORS: harbor-mirror.spring.vmware.com inputs: - name: docker-git outputs: - name: image run: path: build - put: docker-image params: image: image/image.tar - name: build-mvn-cache serial: true plan: - get: sts4 trigger: true - task: build-mvn-cache timeout: 3h30m file: sts4/concourse/tasks/build-mvn-cache.yml - put: maven-cache params: file: out/*.tar.gz - name: build-consourse-vsix-snapshot plan: - in_parallel: - 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! - in_parallel: - put: s3-concourse-vsix-snapshot params: file: out/vscode-concourse-*.vsix acl: public-read # - put: mirror-vscode-concourse # params: # repository: sts4 - name: publish-concourse-pre-release plan: - in_parallel: - get: nightly # trigger: true - get: sts4 - get: maven-cache passed: - build-consourse-vsix-snapshot - task: build-concourse-vsix-pre-release file: sts4/concourse/tasks/build-vsix.yml params: extension_id: vscode-concourse dist_type: pre on_failure: put: slack-notification params: text: | Concourse ${BUILD_PIPELINE_NAME}/${BUILD_JOB_NAME}/${BUILD_NAME} has failed! - task: publish-pre-release file: sts4/concourse/tasks/publish-vsix-pre-releases.yml input_mapping: vsix_folder: out params: vsce_token: ((vsce_token)) on_failure: put: slack-notification params: text: | Pre-Release Publishing for ${BUILD_PIPELINE_NAME}/${BUILD_JOB_NAME}/${BUILD_NAME} has failed! - name: build-bosh-vsix-snapshot plan: - in_parallel: - 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! - in_parallel: - put: s3-bosh-vsix-snapshot params: file: out/vscode-bosh-*.vsix acl: public-read # - put: mirror-vscode-bosh # params: # repository: sts4 - name: publish-bosh-pre-release plan: - in_parallel: - get: nightly # trigger: true - get: sts4 - get: maven-cache passed: - build-bosh-vsix-snapshot - task: build-bosh-vsix-pre-relase file: sts4/concourse/tasks/build-vsix.yml params: extension_id: vscode-bosh dist_type: pre on_failure: put: slack-notification params: text: | Concourse ${BUILD_PIPELINE_NAME}/${BUILD_JOB_NAME}/${BUILD_NAME} has failed! - task: publish-pre-release file: sts4/concourse/tasks/publish-vsix-pre-releases.yml input_mapping: vsix_folder: out params: vsce_token: ((vsce_token)) on_failure: put: slack-notification params: text: | Pre-Release Publishing for ${BUILD_PIPELINE_NAME}/${BUILD_JOB_NAME}/${BUILD_NAME} has failed! - name: build-manifest-yaml-vsix-snapshot plan: - in_parallel: - 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! - in_parallel: - put: s3-manifest-yaml-vsix-snapshot params: file: out/vscode-manifest-yaml-*.vsix acl: public-read - name: publish-manifest-yaml-pre-release plan: - in_parallel: - get: nightly # trigger: true - get: sts4 - get: maven-cache passed: - build-manifest-yaml-vsix-snapshot - task: build-manifest-yaml-vsix-pre-release file: sts4/concourse/tasks/build-vsix.yml params: extension_id: vscode-manifest-yaml dist_type: pre on_failure: put: slack-notification params: text: | Concourse ${BUILD_PIPELINE_NAME}/${BUILD_JOB_NAME}/${BUILD_NAME} has failed! - task: publish-pre-release file: sts4/concourse/tasks/publish-vsix-pre-releases.yml input_mapping: vsix_folder: out params: vsce_token: ((vsce_token)) on_failure: put: slack-notification params: text: | Pre-Release Publishing for ${BUILD_PIPELINE_NAME}/${BUILD_JOB_NAME}/${BUILD_NAME} has failed! - name: build-spring-boot-vsix-snapshot plan: - in_parallel: - get: sts4 # trigger: true - get: maven-cache - task: build-spring-boot-vsix-snapshot timeout: 40m file: sts4/concourse/tasks/build-vsix.yml params: extension_id: vscode-spring-boot on_failure: put: slack-notification params: text: | Concourse ${BUILD_PIPELINE_NAME}/${BUILD_JOB_NAME}/${BUILD_NAME} has failed! - in_parallel: - put: s3-spring-boot-vsix-snapshot params: file: out/vscode-spring-boot-*.vsix acl: public-read # - put: mirror-vscode-spring-boot # params: # repository: sts4 - name: publish-spring-boot-pre-release plan: - in_parallel: - get: nightly # trigger: true - get: sts4 - get: maven-cache passed: - build-spring-boot-vsix-snapshot - task: build-spring-boot-vsix-pre-release timeout: 40m file: sts4/concourse/tasks/build-vsix.yml params: extension_id: vscode-spring-boot dist_type: pre on_failure: put: slack-notification params: text: | Concourse ${BUILD_PIPELINE_NAME}/${BUILD_JOB_NAME}/${BUILD_NAME} has failed! - task: publish-pre-release file: sts4/concourse/tasks/publish-vsix-pre-releases.yml input_mapping: vsix_folder: out params: vsce_token: ((vsce_token)) on_failure: put: slack-notification params: text: | Pre-Release Publishing for ${BUILD_PIPELINE_NAME}/${BUILD_JOB_NAME}/${BUILD_NAME} has failed! - name: build-spring-cli-vsix-snapshot plan: - in_parallel: - get: sts4 # trigger: true - get: maven-cache - task: build-spring-cli-vsix-snapshot timeout: 10m file: sts4/concourse/tasks/build-vsix.yml params: extension_id: vscode-spring-cli on_failure: put: slack-notification params: text: | Concourse ${BUILD_PIPELINE_NAME}/${BUILD_JOB_NAME}/${BUILD_NAME} has failed! - in_parallel: - put: s3-spring-cli-vsix-snapshot params: file: out/vscode-spring-cli-*.vsix acl: public-read - name: trigger-rc-build serial: true plan: - in_parallel: - get: sts4 passed: - build-manifest-yaml-vsix-snapshot - build-consourse-vsix-snapshot - build-bosh-vsix-snapshot - build-spring-boot-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: build-concourse-rc plan: - in_parallel: - 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: "#spring-tools-team" 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: - in_parallel: - 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: "#spring-tools-team" 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: - in_parallel: - 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: "#spring-tools-team" 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-spring-boot-rc plan: - in_parallel: - get: maven-cache passed: - build-spring-boot-vsix-snapshot - get: sts4 passed: - trigger-rc-build - get: version trigger: true passed: - trigger-rc-build - task: build-spring-boot-rc timeout: 40m attempts: 4 file: sts4/concourse/tasks/rc-build.yml params: extension_id: vscode-spring-boot on_failure: put: slack-notification params: text: | Concourse ${BUILD_PIPELINE_NAME}/${BUILD_JOB_NAME}/${BUILD_NAME} has failed! - put: s3-spring-boot-vsix-snapshot params: file: out/vscode-*.vsix acl: public-read on_success: put: slack-notification params: channel: "#spring-tools-team" text_file: s3-spring-boot-vsix-snapshot/url icon_url: https://raw.githubusercontent.com/spring-projects/sts4/master/vscode-extensions/vscode-spring-boot/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-ovsx-releases serial: true plan: - in_parallel: - get: tasks - get: s3-concourse-vsix-snapshot passed: - publish-release - get: s3-manifest-yaml-vsix-snapshot passed: - publish-release - get: s3-bosh-vsix-snapshot passed: - publish-release - get: s3-spring-boot-vsix-snapshot trigger: true passed: - publish-release - task: publish-ovsx-releases file: tasks/concourse/tasks/publish-ovsx-releases.yml input_mapping: sts4: tasks params: ovsx_token: ((ovsx_token)) - name: verify-vsce-token plan: - get: sts4 - task: verify-vsce-token file: sts4/concourse/tasks/verify-vsce-token.yml params: vsce_token: ((vsce_token)) vsce_publisher: ((vsce_publisher)) - name: publish-release serial: true plan: - in_parallel: - get: tasks - get: sts4 passed: - build-manifest-yaml-rc - build-concourse-rc - build-bosh-rc - build-spring-boot-rc - get: version passed: - build-concourse-rc - build-manifest-yaml-rc - build-bosh-rc - build-spring-boot-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-spring-boot-vsix-snapshot passed: - build-spring-boot-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: "#spring-tools-team" text_file: version/version text: | STS 4 VScode Extensions $TEXT_FILE_CONTENT released Releases now available on Vscode Marketplace: • - in_parallel: - put: sts4-out params: repository: sts4 only_tag: true tag: version/version tag_prefix: V_ - put: version params: file: version/version - name: publish-concourse-vsix-release serial: true plan: - in_parallel: - get: tasks - get: sts4 passed: - build-concourse-rc - get: version passed: - build-concourse-rc params: bump: final - get: s3-concourse-vsix-snapshot passed: - build-concourse-rc - task: publish-release file: tasks/concourse/tasks/publish-concourse-vsix-release.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: "#spring-tools-team" text_file: version/version text: | STS 4 VScode Extensions $TEXT_FILE_CONTENT released Releases now available on Vscode Marketplace: • - in_parallel: - 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: - in_parallel: - 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: - in_parallel: - 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: bump-version-major serial: true plan: - in_parallel: - get: sts4 - get: version params: bump: major - task: bump-versions file: sts4/concourse/tasks/bump-versions.yml - put: sts4 params: repository: out rebase: true - put: version params: file: version/version - name: build-vscode-snapshot-website serial: true plan: - in_parallel: - 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-spring-boot-vsix-snapshot trigger: true passed: - build-spring-boot-vsix-snapshot - get: s3-spring-cli-vsix-snapshot trigger: true passed: - build-spring-cli-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 - in_parallel: - put: vscode-snapshot-website-cdn # - name: build-fatjars # plan: # - in_parallel: # - get: sts4 # trigger: true # - get: maven-cache # - task: build-fatjars # file: sts4/concourse/tasks/fatjars-language-servers.yml # attempts: 3 # on_failure: # put: slack-notification # params: # text: | # Concourse ${BUILD_PIPELINE_NAME}/${BUILD_JOB_NAME}/${BUILD_NAME} has failed! # on_success: # in_parallel: # - put: s3-headless-maven-out # params: # file: out/headless-maven-out-*.tar.gz # - 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-spring-boot-fatjar-snapshot # params: # file: out/spring-boot-language-server-*.jar # acl: public-read # - put: artifactory # params: # debug: true # disable_checksum_uploads: true # build_uri: "https://ci.spring.io/teams/${BUILD_TEAM_NAME}/pipelines/${BUILD_PIPELINE_NAME}/jobs/${BUILD_JOB_NAME}/builds/${BUILD_ID}" # build_number: "${BUILD_PIPELINE_NAME}-${BUILD_JOB_NAME}-${BUILD_NAME}" # repo: libs-snapshot-local # folder: maven-out # exclude: # - "**/_remote.repositories" # - name: publish-headless-snapshots # plan: # - in_parallel: # - get: s3-headless-maven-out # passed: # - build-fatjars # - get: sts4 # - task: unpack # file: sts4/concourse/tasks/unpack.yml # input_mapping: # in: s3-headless-maven-out # - put: artifactory # params: # debug: true # disable_checksum_uploads: true # build_uri: "https://ci.spring.io/teams/${BUILD_TEAM_NAME}/pipelines/${BUILD_PIPELINE_NAME}/jobs/${BUILD_JOB_NAME}/builds/${BUILD_ID}" # build_number: "${BUILD_PIPELINE_NAME}-${BUILD_JOB_NAME}-${BUILD_NAME}" # repo: libs-snapshot-local # folder: out # exclude: # - "**/_remote.repositories" # #Can't publish org.json jar because its got a 'release' version number, and artifactory rejects publishing it in snapshot repo. # - "**/org.json*" - name: publish-jvm-launch-utils plan: - in_parallel: - get: jvm-launch-utils-git trigger: true - get: tasks - task: publish file: tasks/concourse/tasks/npm-publish.yml input_mapping: sources_repo: jvm-launch-utils-git params: npm_token: ((npm_token)) sources_dir: nodejs-packages/jvm-launch-utils groups: - name: vscode-snapshot jobs: - build-vscode-snapshot-website - build-consourse-vsix-snapshot - build-spring-boot-vsix-snapshot - build-spring-cli-vsix-snapshot - build-bosh-vsix-snapshot - build-manifest-yaml-vsix-snapshot - name: vscode-pre-release jobs: - publish-spring-boot-pre-release - publish-concourse-pre-release - publish-bosh-pre-release - publish-manifest-yaml-pre-release - name: vscode-release jobs: - verify-vsce-token - build-bosh-rc - build-concourse-rc - build-manifest-yaml-rc - build-spring-boot-rc - trigger-rc-build - publish-release - publish-ovsx-releases - build-manifest-yaml-vsix-snapshot - build-consourse-vsix-snapshot - build-bosh-vsix-snapshot - build-spring-boot-vsix-snapshot - build-spring-cli-vsix-snapshot - publish-concourse-vsix-release - create-rc-wiki-page - vsix-s3-publish - create-release-wiki-page - name: bump-versions jobs: - bump-version-patch - bump-version-minor - bump-version-major # - name: theia-snapshots # jobs: # - build-theia-docker-snapshot-image # - build-consourse-vsix-snapshot # - build-manifest-yaml-vsix-snapshot # - build-spring-boot-vsix-snapshot # - build-bosh-vsix-snapshot - name: setup jobs: - build-mvn-cache - build-docker-image #- name: artifactory # jobs: # - build-fatjars # - publish-headless-snapshots # - name: debugging # jobs: # - concourse-ls-tests - name: npm-packages jobs: - publish-jvm-launch-utils