diff --git a/.drone.yml b/.drone.yml
index 1e89cd2..2847097 100644
--- a/.drone.yml
+++ b/.drone.yml
@@ -1,57 +1,162 @@
---
kind: pipeline
-type: docker
-name: testing
+name: test
platform:
os: linux
arch: amd64
steps:
-- name: staticcheck
- pull: always
- image: golang:1.15
- commands:
- - go run honnef.co/go/tools/cmd/staticcheck ./...
- volumes:
- - name: gopath
- path: /go
+ - name: deps
+ image: golang:1.18
+ commands:
+ - make deps
+ volumes:
+ - name: godeps
+ path: /go
-- name: lint
- pull: always
- image: golang:1.15
- commands:
- - go run golang.org/x/lint/golint -set_exit_status ./...
- volumes:
- - name: gopath
- path: /go
+ - name: lint
+ image: golang:1.18
+ commands:
+ - make lint
+ volumes:
+ - name: godeps
+ path: /go
-- name: vet
- pull: always
- image: golang:1.15
- commands:
- - go vet ./...
- volumes:
- - name: gopath
- path: /go
-
-- name: test
- pull: always
- image: golang:1.15
- commands:
- - go test -cover -v ./...
- volumes:
- - name: gopath
- path: /go
+ - name: test
+ image: golang:1.18
+ commands:
+ - make test
+ volumes:
+ - name: godeps
+ path: /go
volumes:
-- name: gopath
- temp: {}
+ - name: godeps
+ temp: {}
trigger:
ref:
- - refs/heads/master
- - refs/tags/**
- - refs/pull/**
+ - refs/heads/main
+ - refs/tags/**
+ - refs/pull/**
+
+---
+kind: pipeline
+name: release
+
+platform:
+ os: linux
+ arch: amd64
+
+steps:
+ - name: changelog-generate
+ image: thegeeklab/git-chglog
+ commands:
+ - git fetch -tq
+ - git-chglog --no-color --no-emoji -o CHANGELOG.md ${DRONE_TAG:---next-tag unreleased unreleased}
+
+ - name: changelog-format
+ image: thegeeklab/alpine-tools
+ commands:
+ - prettier CHANGELOG.md
+ - prettier -w CHANGELOG.md
+
+ - name: publish
+ image: plugins/github-release
+ settings:
+ api_key:
+ from_secret: github_token
+ note: CHANGELOG.md
+ overwrite: true
+ title: ${DRONE_TAG}
+ when:
+ ref:
+ - refs/tags/**
+
+image_pull_secrets:
+ - docker_config
+
+trigger:
+ ref:
+ - refs/heads/main
+ - refs/tags/**
+ - refs/pull/**
+
+depends_on:
+ - test
+
+---
+kind: pipeline
+name: docs
+
+platform:
+ os: linux
+ arch: amd64
+
+steps:
+ - name: markdownlint
+ image: thegeeklab/markdownlint-cli
+ commands:
+ - markdownlint 'README.md' 'CONTRIBUTING.md'
+
+ - name: spellcheck
+ image: node:lts-alpine
+ commands:
+ - npm install -g spellchecker-cli
+ - spellchecker --files 'README.md' 'CONTRIBUTING.md' -d .dictionary -p spell indefinite-article syntax-urls --no-suggestions
+ environment:
+ FORCE_COLOR: true
+ NPM_CONFIG_LOGLEVEL: error
+
+trigger:
+ ref:
+ - refs/heads/main
+ - refs/tags/**
+ - refs/pull/**
+
+depends_on:
+ - release
+
+---
+kind: pipeline
+name: notifications
+
+platform:
+ os: linux
+ arch: amd64
+
+steps:
+ - name: matrix
+ image: thegeeklab/drone-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 }}){{#if build.Branch}} ({{ build.Branch }}){{/if}} by {{ commit.Author }}
Message: {{ commit.Message.Title }}"
+ username:
+ from_secret: matrix_username
+ when:
+ status:
+ - success
+ - failure
+
+trigger:
+ ref:
+ - refs/heads/main
+ - refs/tags/**
+ status:
+ - success
+ - failure
+
+depends_on:
+ - docs
+
+---
+kind: signature
+hmac: 0b88e084ab3ba9a23c6eb355fd62a050da4bc000c298e8df3f720598542a2c24
...
diff --git a/.github/settings.yml b/.github/settings.yml
index b465a9d..92c956d 100644
--- a/.github/settings.yml
+++ b/.github/settings.yml
@@ -1,6 +1,6 @@
repository:
name: drone-plugin-lib
- description: Custom template library for Drone CI
+ description: Helper library for writing Drone CI plugins
topics: drone, drone-plugin
private: false