| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201 |
- box: node:10
- services:
- - mongo:3.6
- test:
- steps:
- - script:
- name: set yarn cache-folder
- code: yarn config set cache-folder $WERCKER_CACHE_DIR/yarn
- - script:
- name: install dependencies
- code: |
- yarn
- - script:
- name: print dependencies
- code: |
- echo -n "node " && node -v
- echo -n "npm " && npm -v
- yarn list --depth=0
- - script:
- name: npm test
- code: |
- export MONGO_URI=mongodb://$MONGO_PORT_27017_TCP_ADDR/growi_test
- echo "export MONGO_URI=$MONGO_URI"
- npm test
- after-steps:
- - slack-notifier:
- url: $SLACK_WEBHOOK_URL
- channel: ci
- username: wercker
- notify_on: "failed"
- build-prod:
- steps:
- - script:
- name: set yarn cache-folder
- code: yarn config set cache-folder $WERCKER_CACHE_DIR/yarn
- - script:
- name: install dependencies
- code: |
- yarn
- - script:
- name: install plugins
- code: |
- yarn add growi-plugin-lsx growi-plugin-pukiwiki-like-linker
- - script:
- name: print dependencies
- code: |
- echo -n "node " && node -v
- echo -n "npm " && npm -v
- yarn list --depth=0
- - script:
- name: npm run build:prod:analyze
- code: |
- npm run build:prod:analyze
- - script:
- name: npm run server:prod:ci
- code: |
- export MONGO_URI=mongodb://$MONGO_PORT_27017_TCP_ADDR/growi
- echo "export MONGO_URI=$MONGO_URI"
- npm run server:prod:ci
- after-steps:
- - script:
- name: copy report to artifacts
- code: |
- cp -r report $WERCKER_REPORT_ARTIFACTS_DIR
- - slack-notifier:
- url: $SLACK_WEBHOOK_URL
- channel: ci
- username: wercker
- notify_on: "failed"
- build-dev:
- steps:
- - script:
- name: set yarn cache-folder
- code: yarn config set cache-folder $WERCKER_CACHE_DIR/yarn
- - script:
- name: install dependencies
- code: |
- yarn
- - script:
- name: install plugins
- code: |
- yarn add growi-plugin-lsx growi-plugin-pukiwiki-like-linker
- - script:
- name: print dependencies
- code: |
- echo -n "node " && node -v
- echo -n "npm " && npm -v
- yarn list --depth=0
- - script:
- name: npm run build:dev
- code: |
- npm run build:dev
- after-steps:
- - slack-notifier:
- url: $SLACK_WEBHOOK_URL
- channel: ci
- username: wercker
- notify_on: "failed"
- release: # would be run on release branch
- steps:
- - install-packages:
- packages: jq
- - script:
- name: bump version
- code: |
- sh ./bin/wercker/init-git.sh
- # git reset
- git reset --hard
- # npm version to bump version
- npm version patch
- - script:
- name: get RELEASE_VERSION
- code: |
- export RELEASE_VERSION=`npm run version --silent`
- echo "export RELEASE_VERSION=$RELEASE_VERSION"
- - script:
- name: commit and push
- code: |
- TMP_RELEASE_BRANCH=tmp/release-$RELEASE_VERSION
- git checkout -B $TMP_RELEASE_BRANCH
- git push -u origin HEAD:$TMP_RELEASE_BRANCH
- export RELEASE_GIT_COMMIT=`git rev-parse HEAD`
- - github-create-release:
- token: $GITHUB_TOKEN
- tag: v$RELEASE_VERSION
- target-commitish: $RELEASE_GIT_COMMIT
- - script:
- name: remove temporary release branch
- code: |
- git push --delete origin $TMP_RELEASE_BRANCH
- - script:
- name: trigger growi-docker release pipeline
- code: GROWI_DOCKER_PIPELINE_ID=$GROWI_DOCKER_PIPELINE_ID_CDN sh ./bin/wercker/trigger-growi-docker.sh
- - script:
- name: trigger growi-docker release-nocdn pipeline
- code: GROWI_DOCKER_PIPELINE_ID=$GROWI_DOCKER_PIPELINE_ID_NOCDN sh ./bin/wercker/trigger-growi-docker.sh
- after-steps:
- - slack-notifier:
- url: $SLACK_WEBHOOK_URL
- channel: ci
- username: wercker
- notify_on: "failed"
- release-rc: # would be run on rc/* branches
- steps:
- - install-packages:
- packages: jq
- - script:
- name: get RELEASE_VERSION
- code: |
- export RELEASE_VERSION=`npm run version --silent`
- export RELEASE_GIT_COMMIT=$WERCKER_GIT_COMMIT
- echo "export RELEASE_VERSION=$RELEASE_VERSION"
- echo "export RELEASE_GIT_COMMIT=$RELEASE_GIT_COMMIT"
- - script:
- name: trigger growi-docker release-rc pipeline
- code: sh ./bin/wercker/trigger-growi-docker.sh
- after-steps:
- - slack-notifier:
- url: $SLACK_WEBHOOK_URL
- channel: ci
- username: wercker
- notify_on: "failed"
|