kind: pipeline name: testing trigger: branch: include: - master event: include: - push - pull_request steps: - name: build image: node:13 pull: true group: build-static commands: - yarn --frozen-lockfile --network-timeout 100000 - yarn run lint - yarn run build --- kind: pipeline name: release-latest trigger: branch: - master event: - push steps: - name: fetch-tags image: docker:git commands: - git fetch --tags - name: build image: node:13 pull: true group: build-static commands: - yarn --frozen-lockfile --network-timeout 100000 - yarn run lint - "echo '{\"VERSION\": \"'$(git describe --tags --always --abbrev=10 | sed 's/-/+/' | sed 's/^v//' | sed 's/-g/-/')'\"}' > src/version.json" - yarn run build - sed -i 's/http\:\\/\\/localhost\\:3456\\/api\\/v1/\\/api\\/v1/g' dist/index.html # Override the default api url used for developing - name: static image: kolaente/zip pull: true commands: - cd dist - zip -r ../vikunja-frontend-master.zip * - cd .. depends_on: [ build ] - name: release image: plugins/s3:1 pull: true settings: bucket: vikunja-releases access_key: from_secret: aws_access_key_id secret_key: from_secret: aws_secret_access_key endpoint: https://s3.fr-par.scw.cloud region: fr-par path_style: true source: vikunja-frontend-master.zip target: /frontend/ depends_on: [ static ] --- kind: pipeline name: release-version trigger: event: - tag steps: - name: fetch-tags image: docker:git commands: - git fetch --tags - name: build image: node:13 pull: true group: build-static commands: - yarn --frozen-lockfile --network-timeout 100000 - yarn run lint - "echo '{\"VERSION\": \"'$(git describe --tags --always --abbrev=10 | sed 's/-/+/' | sed 's/^v//' | sed 's/-g/-/')'\"}' > src/version.json" - yarn run build - sed -i 's/http\:\\/\\/localhost\\:3456\\/api\\/v1/\\/api\\/v1/g' dist/index.html # Override the default api url used for developing - name: static image: kolaente/zip pull: true commands: - cd dist - zip -r ../vikunja-frontend-${DRONE_TAG##v}.zip * - cd .. depends_on: [ build ] - name: release image: plugins/s3:1 pull: true settings: bucket: vikunja-releases access_key: from_secret: aws_access_key_id secret_key: from_secret: aws_secret_access_key endpoint: https://s3.fr-par.scw.cloud region: fr-par path_style: true source: vikunja-frontend-${DRONE_TAG##v}.zip target: /frontend/ depends_on: [ static ] --- kind: pipeline name: trigger-desktop-update trigger: branch: - master event: - push depends_on: - release-latest steps: - name: trigger image: plugins/downstream settings: server: https://drone.kolaente.de token: from_secret: drone_token repositories: - vikunja/desktop@master --- kind: pipeline type: docker name: docker-arm-release platform: os: linux arch: arm trigger: ref: - refs/heads/master - "refs/tags/**" steps: - name: fetch-tags image: docker:git commands: - git fetch --tags - name: docker image: plugins/docker:linux-arm pull: true settings: username: from_secret: docker_username password: from_secret: docker_password repo: vikunja/frontend auto_tag: true auto_tag_suffix: linux-arm depends_on: [ fetch-tags ] --- kind: pipeline type: docker name: docker-amd64-release platform: os: linux arch: amd64 trigger: ref: - refs/heads/master - "refs/tags/**" steps: - name: fetch-tags image: docker:git commands: - git fetch --tags - name: docker image: plugins/docker:linux-amd64 pull: true settings: username: from_secret: docker_username password: from_secret: docker_password repo: vikunja/frontend auto_tag: true auto_tag_suffix: linux-amd64 depends_on: [ fetch-tags ] --- kind: pipeline type: docker name: docker-manifest trigger: ref: - refs/heads/master - "refs/tags/**" depends_on: - docker-amd64-release - docker-arm-release steps: - name: manifest pull: always image: plugins/manifest settings: auto_tag: true ignore_missing: true spec: docker-manifest.tmpl password: from_secret: docker_password username: from_secret: docker_username --- kind: pipeline type: docker name: notify trigger: ref: - refs/heads/master - "refs/tags/**" depends_on: - release-version - release-latest - docker-manifest steps: - name: telegram image: appleboy/drone-telegram:1-linux-amd64 settings: token: from_secret: TELEGRAM_TOKEN to: from_secret: TELEGRAM_TO message: > {{repo.owner}}/{{repo.name}}: \[{{build.status}}] Build {{build.number}} {{commit.author}} pushed to {{commit.branch}} {{commit.sha}}: `{{commit.message}}` Build started at {{datetime build.started "2006-Jan-02T15:04:05Z" "GMT+2"}} finished at {{datetime build.finished "2006-Jan-02T15:04:05Z" "GMT+2"}}. when: status: - success - failure