--- kind: pipeline name: test platform: arch: amd64 os: linux steps: - commands: - shellcheck ./wait-for image: koalaman/shellcheck-alpine:stable name: lint - commands: - bats ./wait-for.bats image: bats/bats name: test trigger: ref: - refs/heads/main - refs/tags/** - refs/pull/** --- depends_on: - test kind: pipeline name: build-package platform: arch: amd64 os: linux steps: - commands: - sha256sum wait-for > sha256sum.txt image: alpine name: checksum - commands: - git fetch -tq - git-chglog --no-color --no-emoji -o CHANGELOG.md ${DRONE_TAG:---next-tag unreleased unreleased} image: thegeeklab/git-chglog name: changelog-generate - commands: - prettier CHANGELOG.md - prettier -w CHANGELOG.md image: thegeeklab/alpine-tools name: changelog-format - image: plugins/github-release name: publish-github settings: api_key: from_secret: github_token files: - wait-for - sha256sum.txt note: CHANGELOG.md overwrite: true title: ${DRONE_TAG} when: ref: - refs/tags/** trigger: ref: - refs/heads/main - refs/tags/** - refs/pull/** --- depends_on: - test kind: pipeline name: build-container-amd64 platform: arch: amd64 os: linux steps: - image: thegeeklab/drone-docker:19 name: dryrun settings: dockerfile: docker/Dockerfile.amd64 dry_run: true password: from_secret: docker_password repo: thegeeklab/${DRONE_REPO_NAME} username: from_secret: docker_username when: ref: - refs/pull/** - image: thegeeklab/drone-docker:19 name: publish-dockerhub settings: auto_tag: true auto_tag_suffix: amd64 dockerfile: docker/Dockerfile.amd64 password: from_secret: docker_password repo: thegeeklab/${DRONE_REPO_NAME} username: from_secret: docker_username when: ref: - refs/heads/main - refs/tags/** - image: thegeeklab/drone-docker:19 name: publish-quay settings: auto_tag: true auto_tag_suffix: amd64 dockerfile: docker/Dockerfile.amd64 password: from_secret: quay_password registry: quay.io repo: quay.io/thegeeklab/${DRONE_REPO_NAME} username: from_secret: quay_username when: ref: - refs/heads/main - refs/tags/** trigger: ref: - refs/heads/main - refs/tags/** - refs/pull/** --- depends_on: - test kind: pipeline name: build-container-arm64 platform: arch: arm64 os: linux steps: - image: thegeeklab/drone-docker:19 name: dryrun settings: dockerfile: docker/Dockerfile.arm64 dry_run: true password: from_secret: docker_password repo: thegeeklab/${DRONE_REPO_NAME} username: from_secret: docker_username when: ref: - refs/pull/** - image: thegeeklab/drone-docker:19 name: publish-dockerhub settings: auto_tag: true auto_tag_suffix: arm64 dockerfile: docker/Dockerfile.arm64 password: from_secret: docker_password repo: thegeeklab/${DRONE_REPO_NAME} username: from_secret: docker_username when: ref: - refs/heads/main - refs/tags/** - image: thegeeklab/drone-docker:19 name: publish-quay settings: auto_tag: true auto_tag_suffix: arm64 dockerfile: docker/Dockerfile.arm64 password: from_secret: quay_password registry: quay.io repo: quay.io/thegeeklab/${DRONE_REPO_NAME} username: from_secret: quay_username when: ref: - refs/heads/main - refs/tags/** trigger: ref: - refs/heads/main - refs/tags/** - refs/pull/** --- depends_on: - test kind: pipeline name: build-container-arm platform: arch: arm os: linux steps: - image: thegeeklab/drone-docker:19 name: dryrun settings: dockerfile: docker/Dockerfile.arm dry_run: true password: from_secret: docker_password repo: thegeeklab/${DRONE_REPO_NAME} username: from_secret: docker_username when: ref: - refs/pull/** - image: thegeeklab/drone-docker:19 name: publish-dockerhub settings: auto_tag: true auto_tag_suffix: arm dockerfile: docker/Dockerfile.arm password: from_secret: docker_password repo: thegeeklab/${DRONE_REPO_NAME} username: from_secret: docker_username when: ref: - refs/heads/main - refs/tags/** - image: thegeeklab/drone-docker:19 name: publish-quay settings: auto_tag: true auto_tag_suffix: arm dockerfile: docker/Dockerfile.arm password: from_secret: quay_password registry: quay.io repo: quay.io/thegeeklab/${DRONE_REPO_NAME} username: from_secret: quay_username when: ref: - refs/heads/main - refs/tags/** trigger: ref: - refs/heads/main - refs/tags/** - refs/pull/** --- depends_on: - build-container-amd64 - build-container-arm - build-container-arm64 kind: pipeline name: notifications platform: arch: amd64 os: linux steps: - image: plugins/manifest name: manifest-dockerhub settings: auto_tag: true ignore_missing: true password: from_secret: docker_password spec: docker/manifest.tmpl username: from_secret: docker_username when: status: - success - image: plugins/manifest name: manifest-quay settings: auto_tag: true ignore_missing: true password: from_secret: quay_password spec: docker/manifest-quay.tmpl username: from_secret: quay_username when: status: - success - environment: DOCKER_PASS: from_secret: docker_password DOCKER_USER: from_secret: docker_username PUSHRM_FILE: README.md PUSHRM_SHORT: Poor-mans docker service synchronizer PUSHRM_TARGET: thegeeklab/${DRONE_REPO_NAME} image: chko/docker-pushrm:1 name: pushrm-dockerhub pull: always when: status: - success - environment: APIKEY__QUAY_IO: from_secret: quay_token PUSHRM_FILE: README.md PUSHRM_TARGET: quay.io/thegeeklab/${DRONE_REPO_NAME} image: chko/docker-pushrm:1 name: pushrm-quay pull: always when: status: - success - image: plugins/matrix name: matrix settings: homeserver: from_secret: matrix_homeserver password: from_secret: matrix_password roomid: from_secret: matrix_roomid template: 'Status: **{{ build.status }}**
Build: [{{ repo.Owner }}/{{ repo.Name }}]({{ build.link }}) ({{ build.branch }}) by {{ build.author }}
Message: {{ build.message }}' username: from_secret: matrix_username when: status: - success - failure trigger: ref: - refs/heads/main - refs/tags/** status: - success - failure --- kind: signature hmac: 6fbd749273f067a96f12909fd22d46b28fa32bf61a13000ecd04a760f628140d ...