mirror of
https://github.com/thegeeklab/github-releases-notifier.git
synced 2024-11-14 08:00:40 +00:00
349 lines
6.5 KiB
YAML
349 lines
6.5 KiB
YAML
---
|
|
kind: pipeline
|
|
type: docker
|
|
name: testing
|
|
|
|
platform:
|
|
os: linux
|
|
arch: amd64
|
|
|
|
steps:
|
|
- name: vet
|
|
image: golang:1.12
|
|
commands:
|
|
- go vet ./...
|
|
volumes:
|
|
- name: gopath
|
|
path: /go
|
|
|
|
- name: test
|
|
image: golang:1.12
|
|
commands:
|
|
- go test -cover ./...
|
|
volumes:
|
|
- name: gopath
|
|
path: /go
|
|
|
|
volumes:
|
|
- name: gopath
|
|
temp: {}
|
|
|
|
trigger:
|
|
ref:
|
|
- refs/heads/master
|
|
- refs/tags/**
|
|
- refs/pull/**
|
|
|
|
---
|
|
kind: pipeline
|
|
type: docker
|
|
name: build-container-amd64
|
|
|
|
platform:
|
|
os: linux
|
|
arch: amd64
|
|
|
|
steps:
|
|
- name: build
|
|
image: golang:1.12
|
|
commands:
|
|
- "[ -z \"${DRONE_TAG}\" ] && BUILD_VERSION=${DRONE_COMMIT_SHA:0:8} || BUILD_VERSION=${DRONE_TAG##v}"
|
|
- go build -v -ldflags "-X main.Version=$BUILD_VERSION" -a -tags netgo -o release/amd64/github-releases-notifier
|
|
environment:
|
|
CGO_ENABLED: 0
|
|
|
|
- name: executable
|
|
image: golang:1.12
|
|
commands:
|
|
- ./release/amd64/github-releases-notifier --help
|
|
|
|
- name: dryrun
|
|
image: plugins/docker
|
|
settings:
|
|
dockerfile: docker/Dockerfile.amd64
|
|
dry_run: true
|
|
password:
|
|
from_secret: docker_password
|
|
repo: xoxys/github-releases-notifier
|
|
tags: amd64
|
|
username:
|
|
from_secret: docker_username
|
|
when:
|
|
event:
|
|
- pull_request
|
|
|
|
- name: publish
|
|
image: plugins/docker
|
|
settings:
|
|
auto_tag: true
|
|
auto_tag_suffix: amd64
|
|
dockerfile: docker/Dockerfile.amd64
|
|
password:
|
|
from_secret: docker_password
|
|
repo: xoxys/github-releases-notifier
|
|
username:
|
|
from_secret: docker_username
|
|
when:
|
|
event:
|
|
exclude:
|
|
- pull_request
|
|
|
|
trigger:
|
|
ref:
|
|
- refs/heads/master
|
|
- refs/tags/**
|
|
- refs/pull/**
|
|
|
|
depends_on:
|
|
- testing
|
|
|
|
---
|
|
kind: pipeline
|
|
type: docker
|
|
name: build-container-arm64
|
|
|
|
platform:
|
|
os: linux
|
|
arch: arm64
|
|
|
|
steps:
|
|
- name: build
|
|
image: golang:1.12
|
|
commands:
|
|
- "[ -z \"${DRONE_TAG}\" ] && BUILD_VERSION=${DRONE_COMMIT_SHA:0:8} || BUILD_VERSION=${DRONE_TAG##v}"
|
|
- go build -v -ldflags "-X main.Version=$BUILD_VERSION" -a -tags netgo -o release/arm64/github-releases-notifier
|
|
environment:
|
|
CGO_ENABLED: 0
|
|
|
|
- name: executable
|
|
image: golang:1.12
|
|
commands:
|
|
- ./release/arm64/github-releases-notifier --help
|
|
|
|
- name: dryrun
|
|
image: plugins/docker
|
|
settings:
|
|
dockerfile: docker/Dockerfile.arm64
|
|
dry_run: true
|
|
password:
|
|
from_secret: docker_password
|
|
repo: xoxys/github-releases-notifier
|
|
tags: arm64
|
|
username:
|
|
from_secret: docker_username
|
|
when:
|
|
event:
|
|
- pull_request
|
|
|
|
- name: publish
|
|
image: plugins/docker
|
|
settings:
|
|
auto_tag: true
|
|
auto_tag_suffix: arm64
|
|
dockerfile: docker/Dockerfile.arm64
|
|
password:
|
|
from_secret: docker_password
|
|
repo: xoxys/github-releases-notifier
|
|
username:
|
|
from_secret: docker_username
|
|
when:
|
|
event:
|
|
exclude:
|
|
- pull_request
|
|
|
|
trigger:
|
|
ref:
|
|
- refs/heads/master
|
|
- refs/tags/**
|
|
- refs/pull/**
|
|
|
|
depends_on:
|
|
- testing
|
|
|
|
---
|
|
kind: pipeline
|
|
type: docker
|
|
name: build-container-arm
|
|
|
|
platform:
|
|
os: linux
|
|
arch: arm
|
|
|
|
steps:
|
|
- name: build
|
|
image: golang:1.12
|
|
commands:
|
|
- "[ -z \"${DRONE_TAG}\" ] && BUILD_VERSION=${DRONE_COMMIT_SHA:0:8} || BUILD_VERSION=${DRONE_TAG##v}"
|
|
- go build -v -ldflags "-X main.Version=$BUILD_VERSION" -a -tags netgo -o release/arm/github-releases-notifier
|
|
environment:
|
|
CGO_ENABLED: 0
|
|
|
|
- name: executable
|
|
image: golang:1.12
|
|
commands:
|
|
- ./release/arm/github-releases-notifier --help
|
|
|
|
- name: dryrun
|
|
image: plugins/docker
|
|
settings:
|
|
dockerfile: docker/Dockerfile.arm
|
|
dry_run: true
|
|
password:
|
|
from_secret: docker_password
|
|
repo: xoxys/github-releases-notifier
|
|
tags: arm
|
|
username:
|
|
from_secret: docker_username
|
|
when:
|
|
event:
|
|
- pull_request
|
|
|
|
- name: publish
|
|
image: plugins/docker
|
|
settings:
|
|
auto_tag: true
|
|
auto_tag_suffix: arm
|
|
dockerfile: docker/Dockerfile.arm
|
|
password:
|
|
from_secret: docker_password
|
|
repo: xoxys/github-releases-notifier
|
|
username:
|
|
from_secret: docker_username
|
|
when:
|
|
event:
|
|
exclude:
|
|
- pull_request
|
|
|
|
trigger:
|
|
ref:
|
|
- refs/heads/master
|
|
- refs/tags/**
|
|
- refs/pull/**
|
|
|
|
depends_on:
|
|
- testing
|
|
|
|
---
|
|
kind: pipeline
|
|
type: docker
|
|
name: build-binaries
|
|
|
|
platform:
|
|
os: linux
|
|
arch: amd64
|
|
|
|
steps:
|
|
- name: build
|
|
image: techknowlogick/xgo:latest
|
|
commands:
|
|
- "[ -z \"${DRONE_TAG}\" ] && BUILD_VERSION=${DRONE_COMMIT_SHA:0:8} || BUILD_VERSION=${DRONE_TAG##v}"
|
|
- mkdir -p release/
|
|
- xgo -ldflags "-X main.Version=$BUILD_VERSION" -tags netgo -targets 'linux/amd64,linux/arm-6,linux/arm64' -out github-releases-notifier-$BUILD_VERSION .
|
|
- cp /build/* release/
|
|
|
|
- name: checksum
|
|
image: alpine
|
|
commands:
|
|
- cd release/ && sha256sum * > sha256sum.txt
|
|
|
|
- name: publish
|
|
image: plugins/github-release
|
|
settings:
|
|
api_key:
|
|
from_secret: github_token
|
|
files:
|
|
- release/*
|
|
note: CHANGELOG.md
|
|
overwrite: true
|
|
title: ${DRONE_TAG}
|
|
when:
|
|
ref:
|
|
- refs/tags/**
|
|
|
|
trigger:
|
|
ref:
|
|
- refs/heads/master
|
|
- refs/tags/**
|
|
- refs/pull/**
|
|
|
|
depends_on:
|
|
- testing
|
|
|
|
---
|
|
kind: pipeline
|
|
type: docker
|
|
name: notification
|
|
|
|
platform:
|
|
os: linux
|
|
arch: amd64
|
|
|
|
steps:
|
|
- name: manifest
|
|
image: plugins/manifest
|
|
settings:
|
|
auto_tag: true
|
|
ignore_missing: true
|
|
password:
|
|
from_secret: docker_password
|
|
spec: docker/manifest.tmpl
|
|
username:
|
|
from_secret: docker_username
|
|
when:
|
|
status:
|
|
- success
|
|
|
|
- name: readme
|
|
image: sheogorath/readme-to-dockerhub
|
|
environment:
|
|
DOCKERHUB_PASSWORD:
|
|
from_secret: docker_password
|
|
DOCKERHUB_REPO_NAME: github-releases-notifier
|
|
DOCKERHUB_REPO_PREFIX: xoxys
|
|
DOCKERHUB_USERNAME:
|
|
from_secret: docker_username
|
|
README_PATH: README.md
|
|
SHORT_DESCRIPTION: Receive Slack notifications for new GitHub releases
|
|
|
|
- name: microbadger
|
|
image: plugins/webhook
|
|
settings:
|
|
urls:
|
|
from_secret: microbadger_url
|
|
when:
|
|
status:
|
|
- success
|
|
|
|
- name: matrix
|
|
image: plugins/matrix
|
|
settings:
|
|
homeserver:
|
|
from_secret: matrix_homeserver
|
|
password:
|
|
from_secret: matrix_password
|
|
roomid:
|
|
from_secret: matrix_roomid
|
|
template: "Status: **{{ build.status }}**<br/> Build: [{{ repo.Owner }}/{{ repo.Name }}]({{ build.link }}) ({{ build.branch }}) by {{ build.author }}<br/> Message: {{ build.message }}"
|
|
username:
|
|
from_secret: matrix_username
|
|
|
|
trigger:
|
|
ref:
|
|
- refs/heads/master
|
|
- refs/tags/**
|
|
status:
|
|
- success
|
|
- failure
|
|
|
|
depends_on:
|
|
- build-container-amd64
|
|
- build-container-arm64
|
|
- build-container-arm
|
|
- build-binaries
|
|
|
|
---
|
|
kind: signature
|
|
hmac: 982d7a70f6cd3914794b3d085b7f949e72445698d9d4af06323239f98cf83058
|
|
|
|
...
|