language: node_js node_js: - 10.16.0 services: - docker before_install: - export MAJOR_VERSION="2" - export VSCODE_VERSION="1.39.2" - export VERSION="$MAJOR_VERSION.$TRAVIS_BUILD_NUMBER" - export TAG="$VERSION-vsc$VSCODE_VERSION" - if [[ "$TRAVIS_BRANCH" == "master" ]]; then export MINIFY="true"; fi - if [[ "$TRAVIS_BRANCH" == "master" ]]; then export PACKAGE="true"; fi # Don't build on tags because we'll already have built the commit. jobs: include: - name: "Linux build" os: linux dist: trusty env: TARGET="linux" PUSH_DOCKER="true" if: tag IS blank script: scripts/ci.bash - name: "Alpine build" os: linux dist: trusty env: TARGET="alpine" if: tag IS blank script: scripts/ci.bash - name: "MacOS build" os: osx if: tag IS blank script: travis_wait 40 scripts/ci.bash git: depth: 3 before_deploy: - echo "$TAG" "$TRAVIS_COMMIT" - git config --local user.name "$USER_NAME" - git config --local user.email "$USER_EMAIL" - if ! git tag "$TAG" "$TRAVIS_COMMIT" ; then echo "$TAG already exists"; fi - if [[ -n "$PUSH_DOCKER" ]] ; then echo "$DOCKER_PASSWORD" | docker login -u "$DOCKER_USERNAME" --password-stdin ; fi deploy: - provider: releases file_glob: true draft: true tag_name: "$TAG" target_commitish: "$TRAVIS_COMMIT" name: "$TAG" skip_cleanup: true api_key: secure: YL/x24KjYjgYXPcJWk3FV7FGxI79Mh6gBECQEcdlf3fkLEoKFVgzHBoUNWrFPzyR4tgLyWNAgcpD9Lkme1TRWTom7UPjXcwMNyLcLa+uec7ciSAnYD9ntLTpiCuPDD1u0LtRGclSi/EHQ+F8YVq+HZJpXTsJeAmOmihma3GVbGKSZr+BRum+0YZSG4w+o4TOlYzw/4bLWS52MogZcwpjd+hemBbgXLuGU2ziKv2vEKCZFbEeA16II4x1WLI4mutDdCeh7+3aLzGLwDa49NxtsVYNjyNFF75JhCTCNA55e2YMiLz9Uq69IXe/mi5F7xUaFfhIqqLNyKBnKeEOzu3dYnc+8n3LjnQ+00PmkF05nx9kBn3UfV1kwQGh6QbyDmTtBP07rtUMyI14aeQqHjxsaVRdMnwj9Q2DjXRr8UDqESZF0rmK3pHCXS2fBhIzLE8tLVW5Heiba2pQRFMHMZW+KBE97FzcFh7is90Ait3T8enfcd/PWFPYoBejDAdjwxwOkezh5N5ZkYquEfDYuWrFi6zRFCktsruaAcA+xGtTf9oilBBzUqu8Ie+YFWH5me83xakcblJWdaW/D2rLJAJH3m6LFm8lBqyUgDX5t/etob6CpDuYHu5D1J3XINOj/+aLAcadq6qlh70PMZS3zYffUu3JlzaD2amlSHIT8b5YXFc= file: - release/*.tar.gz - release/*.zip on: repo: cdr/code-server branch: master - provider: script skip_cleanup: true script: docker build -f ./scripts/ci.dockerfile -t codercom/code-server:"$TAG" -t codercom/code-server:v2 . && docker push codercom/code-server:"$TAG" && docker push codercom/code-server:v2 on: repo: cdr/code-server branch: master condition: -n "$PUSH_DOCKER" cache: yarn: true directories: - source