PT #156855096: theia-concourse build

This commit is contained in:
BoykoAlex
2018-05-23 14:42:16 -04:00
parent f2de74f401
commit 231dfb1540
4 changed files with 93 additions and 1 deletions

View File

@@ -108,6 +108,14 @@ resources:
secret_access_key: ((s3_secretkey))
region_name: ((s3_region))
regexp: sts4/vscode-extensions/snapshots/vscode-spring-boot-(.*).vsix
- name: s3-concourse-theia-snapshot
type: s3
source:
bucket: ((s3_bucket))
access_key_id: ((s3_accesskey))
secret_access_key: ((s3_secretkey))
region_name: ((s3_region))
regexp: sts4/theia-extensions/snapshots/theia-concourse-(.*).tar
- name: s3-manifest-yaml-fatjar-snapshot
type: s3
source:
@@ -377,6 +385,25 @@ jobs:
only_tag: true
tag_prefix: V_
tag: version/version
- name: build-concourse-theia-snapshot
plan:
- aggregate:
- get: sts4
trigger: true
- get: maven-cache
- task: build-consourse-theia-snapshot
file: sts4/concourse/tasks/build-theia-package.yml
params:
extension_id: theia-concourse
on_failure:
put: slack-notification
params:
text: |
Concourse ${BUILD_PIPELINE_NAME}/${BUILD_JOB_NAME}/${BUILD_NAME} has failed!
- put: s3-concourse-theia-snapshot
params:
file: out/theia-concourse-*.tar
acl: public-read
- name: promote-fatjars-to-rc
serial: true
plan:
@@ -1116,6 +1143,9 @@ groups:
- build-bosh-atom-package
- build-manifest-yaml-atom-package
- build-spring-boot-atom-package
- name: theia-snapshots
jobs:
- build-concourse-theia-snapshot
- name: atom-release
jobs:
- atom-language-servers-test

View File

@@ -0,0 +1,49 @@
#!/bin/bash
set -e
workdir=`pwd`
sources=$workdir/sts4/theia-extensions/$extension_id
server_id=${extension_id#theia-}
ext_folder=$sources/$server_id
if [ -d "maven-cache" ]; then
echo "Prepopulating maven cache"
tar xzf maven-cache/*.tar.gz -C ${HOME}
else
echo "!!!No stored maven cache found!!! "
echo "!!!This may slow down the build!!!"
fi
cd "$sxt_folder"
timestamp=`date -u +%Y%m%d%H%M`
base_version=`jq -r .version package.json`
if [ "$dist_type" != release ]; then
# for snapshot build, work the timestamp into package.json version qualifier
qualified_version=${base_version}-${timestamp}
npm version ${qualified_version}
echo -e "\n\n*Version: ${qualified_version}*" >> README.md
else
echo -e "\n\n*Version: ${base_version}-RELEASE*" >> README.md
fi
cd "$sources"
./build.sh
cd "$ext_folder"
yarn pack
# for release build we don't don't add version-qualifier to package.json
# So we must instead rename the file ourself to add a qualifier
if [ "$dist_type" == release ]; then
tar_file=`ls *.tar`
release_name=`git tag --points-at HEAD | grep ${extension_id}`
echo "release_name=$release_name"
if [ -z "$release_name" ]; then
echo "Release Candidates must be tagged" >&2
exit 1
else
mv $tar_file ${release_name}.tar
fi
fi
cp *.tar $workdir/out

View File

@@ -0,0 +1,12 @@
inputs:
- name: sts4
- name: maven-cache
outputs:
- name: out
platform: linux
image_resource:
type: docker-image
source:
repository: kdvolder/sts4-build-env
run:
path: sts4/concourse/tasks/build-theia-package.sh

View File

@@ -6,7 +6,8 @@
"version": "0.0.0",
"files": [
"lib",
"src"
"src",
"jars"
],
"dependencies": {
"@theia/core": "latest",