Compare commits
22 Commits
dd743c2de9
...
30c5bc0974
Author | SHA1 | Date | |
---|---|---|---|
|
30c5bc0974 | ||
|
14b428aed4 | ||
|
a3e29cee46 | ||
|
b656d40539 | ||
|
1def48823c | ||
|
39b569dc52 | ||
|
ad43516f45 | ||
|
4a158980a4 | ||
|
f67c35dbc3 | ||
|
fb94247a08 | ||
|
41ecb137d0 | ||
|
f7bcb7bf0c | ||
|
fd61899cae | ||
|
fd55e825a2 | ||
|
60da67ff16 | ||
|
a6a27ed08b | ||
|
1d0b5301df | ||
|
e50d44024d | ||
|
75f4ffd56f | ||
|
ea7b7f5dde | ||
|
dfc6b9e80e | ||
|
f8305bbc00 |
@ -1,68 +0,0 @@
|
|||||||
version: '{build}'
|
|
||||||
image: 'Visual Studio 2017'
|
|
||||||
platform: 'x64'
|
|
||||||
|
|
||||||
clone_folder: 'c:\gopath\src\github.com\drone-plugins\drone-gitea-release'
|
|
||||||
max_jobs: 1
|
|
||||||
|
|
||||||
environment:
|
|
||||||
GOPATH: c:\gopath
|
|
||||||
DOCKER_USERNAME:
|
|
||||||
secure: '4YzzahbEiMZQJpOCOd1LAw=='
|
|
||||||
DOCKER_PASSWORD:
|
|
||||||
secure: 'VqO/G3Zfslu6zSLdwHKO+Q=='
|
|
||||||
|
|
||||||
install:
|
|
||||||
- ps: |
|
|
||||||
docker version
|
|
||||||
go version
|
|
||||||
- ps: |
|
|
||||||
$env:Path = "c:\gopath\bin;$env:Path"
|
|
||||||
|
|
||||||
build_script:
|
|
||||||
- ps: |
|
|
||||||
go get -u github.com/golang/dep/cmd/dep
|
|
||||||
dep ensure
|
|
||||||
|
|
||||||
if ( $env:APPVEYOR_REPO_TAG -eq 'false' ) {
|
|
||||||
go build -ldflags "-X main.build=$env:APPVEYOR_BUILD_VERSION" -a -o release/drone-gitea-release.exe
|
|
||||||
} else {
|
|
||||||
$version = $env:APPVEYOR_REPO_TAG_NAME.substring(1)
|
|
||||||
go build -ldflags "-X main.version=$version -X main.build=$env:APPVEYOR_BUILD_VERSION" -a -o release/drone-gitea-release.exe
|
|
||||||
}
|
|
||||||
|
|
||||||
docker pull microsoft/nanoserver:10.0.14393.1593
|
|
||||||
docker build -f Dockerfile.windows -t plugins/gitea-release:windows-amd64 .
|
|
||||||
|
|
||||||
test_script:
|
|
||||||
- ps: |
|
|
||||||
docker run --rm plugins/gitea-release:windows-amd64 --version
|
|
||||||
|
|
||||||
deploy_script:
|
|
||||||
- ps: |
|
|
||||||
$ErrorActionPreference = 'Stop';
|
|
||||||
|
|
||||||
if ( $env:APPVEYOR_PULL_REQUEST_NUMBER ) {
|
|
||||||
Write-Host Nothing to deploy.
|
|
||||||
} else {
|
|
||||||
echo $env:DOCKER_PASSWORD | docker login --username $env:DOCKER_USERNAME --password-stdin
|
|
||||||
|
|
||||||
if ( $env:APPVEYOR_REPO_TAG -eq 'true' ) {
|
|
||||||
$major,$minor,$patch = $env:APPVEYOR_REPO_TAG_NAME.substring(1).split('.')
|
|
||||||
|
|
||||||
docker push plugins/gitea-release:windows-amd64
|
|
||||||
|
|
||||||
docker tag plugins/gitea-release:windows-amd64 plugins/gitea-release:$major.$minor.$patch-windows-amd64
|
|
||||||
docker push plugins/gitea-release:$major.$minor.$patch-windows-amd64
|
|
||||||
|
|
||||||
docker tag plugins/gitea-release:windows-amd64 plugins/gitea-release:$major.$minor-windows-amd64
|
|
||||||
docker push plugins/gitea-release:$major.$minor-windows-amd64
|
|
||||||
|
|
||||||
docker tag plugins/gitea-release:windows-amd64 plugins/gitea-release:$major-windows-amd64
|
|
||||||
docker push plugins/gitea-release:$major-windows-amd64
|
|
||||||
} else {
|
|
||||||
if ( $env:APPVEYOR_REPO_BRANCH -eq 'master' ) {
|
|
||||||
docker push plugins/gitea-release:windows-amd64
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
15
.drone.docker.yml
Normal file
15
.drone.docker.yml
Normal file
@ -0,0 +1,15 @@
|
|||||||
|
kind: pipeline
|
||||||
|
name: default
|
||||||
|
|
||||||
|
steps:
|
||||||
|
- name: docker
|
||||||
|
image: plugins/docker
|
||||||
|
settings:
|
||||||
|
username:
|
||||||
|
from_secret: docker_username
|
||||||
|
password:
|
||||||
|
from_secret: docker_password
|
||||||
|
dockerfile: docker/Dockerfile.linux.amd64
|
||||||
|
registry: r.pkg.cx
|
||||||
|
repo: r.pkg.cx/drone/gitea-release
|
||||||
|
auto_tag: true
|
14
.drone.jsonnet
Normal file
14
.drone.jsonnet
Normal file
@ -0,0 +1,14 @@
|
|||||||
|
local pipeline = import 'pipeline.libsonnet';
|
||||||
|
local name = 'drone-gitea-release';
|
||||||
|
|
||||||
|
[
|
||||||
|
pipeline.test('linux', 'amd64'),
|
||||||
|
pipeline.build(name, 'linux', 'amd64'),
|
||||||
|
pipeline.build(name, 'linux', 'arm64'),
|
||||||
|
pipeline.build(name, 'linux', 'arm'),
|
||||||
|
pipeline.notifications(depends_on=[
|
||||||
|
'linux-amd64',
|
||||||
|
'linux-arm64',
|
||||||
|
'linux-arm',
|
||||||
|
]),
|
||||||
|
]
|
9
.drone.windows.jsonnet
Normal file
9
.drone.windows.jsonnet
Normal file
@ -0,0 +1,9 @@
|
|||||||
|
local pipeline = import 'pipeline.libsonnet';
|
||||||
|
local name = 'drone-gitea-release';
|
||||||
|
|
||||||
|
[
|
||||||
|
pipeline.test('windows', 'amd64', '1803'),
|
||||||
|
pipeline.build(name, 'windows', 'amd64', '1803'),
|
||||||
|
pipeline.build(name, 'windows', 'amd64', '1809'),
|
||||||
|
pipeline.notifications('windows', 'amd64', '1809', ['windows-1803', 'windows-1809']),
|
||||||
|
]
|
273
.drone.windows.yml
Normal file
273
.drone.windows.yml
Normal file
@ -0,0 +1,273 @@
|
|||||||
|
---
|
||||||
|
kind: pipeline
|
||||||
|
name: testing
|
||||||
|
|
||||||
|
platform:
|
||||||
|
os: windows
|
||||||
|
arch: amd64
|
||||||
|
version: 1803
|
||||||
|
|
||||||
|
steps:
|
||||||
|
- name: vet
|
||||||
|
pull: always
|
||||||
|
image: golang:1.11-windowsservercore-1803
|
||||||
|
commands:
|
||||||
|
- go vet ./...
|
||||||
|
environment:
|
||||||
|
GO111MODULE: on
|
||||||
|
volumes:
|
||||||
|
- name: gopath
|
||||||
|
path: C:\\gopath
|
||||||
|
|
||||||
|
- name: test
|
||||||
|
pull: always
|
||||||
|
image: golang:1.11-windowsservercore-1803
|
||||||
|
commands:
|
||||||
|
- go test -cover ./...
|
||||||
|
environment:
|
||||||
|
GO111MODULE: on
|
||||||
|
volumes:
|
||||||
|
- name: gopath
|
||||||
|
path: C:\\gopath
|
||||||
|
|
||||||
|
volumes:
|
||||||
|
- name: gopath
|
||||||
|
temp: {}
|
||||||
|
|
||||||
|
trigger:
|
||||||
|
ref:
|
||||||
|
- refs/heads/master
|
||||||
|
- "refs/tags/**"
|
||||||
|
- "refs/pull/**"
|
||||||
|
|
||||||
|
---
|
||||||
|
kind: pipeline
|
||||||
|
name: windows-1803
|
||||||
|
|
||||||
|
platform:
|
||||||
|
os: windows
|
||||||
|
arch: amd64
|
||||||
|
version: 1803
|
||||||
|
|
||||||
|
steps:
|
||||||
|
- name: build-push
|
||||||
|
pull: always
|
||||||
|
image: golang:1.11-windowsservercore-1803
|
||||||
|
commands:
|
||||||
|
- "go build -v -ldflags \"-X main.version=${DRONE_COMMIT_SHA:0:8}\" -a -tags netgo -o release/windows/amd64/drone-gitea-release.exe"
|
||||||
|
environment:
|
||||||
|
CGO_ENABLED: 0
|
||||||
|
GO111MODULE: on
|
||||||
|
when:
|
||||||
|
event:
|
||||||
|
exclude:
|
||||||
|
- tag
|
||||||
|
|
||||||
|
- name: build-tag
|
||||||
|
pull: always
|
||||||
|
image: golang:1.11-windowsservercore-1803
|
||||||
|
commands:
|
||||||
|
- "go build -v -ldflags \"-X main.version=${DRONE_TAG##v}\" -a -tags netgo -o release/windows/amd64/drone-gitea-release.exe"
|
||||||
|
environment:
|
||||||
|
CGO_ENABLED: 0
|
||||||
|
GO111MODULE: on
|
||||||
|
when:
|
||||||
|
event:
|
||||||
|
- tag
|
||||||
|
|
||||||
|
- name: executable
|
||||||
|
pull: always
|
||||||
|
image: golang:1.11-windowsservercore-1803
|
||||||
|
commands:
|
||||||
|
- ./release/windows/amd64/drone-gitea-release.exe --help
|
||||||
|
|
||||||
|
- name: dryrun
|
||||||
|
pull: always
|
||||||
|
image: plugins/docker:windows-1803
|
||||||
|
settings:
|
||||||
|
daemon_off: true
|
||||||
|
dockerfile: docker/Dockerfile.windows.1803
|
||||||
|
dry_run: true
|
||||||
|
password:
|
||||||
|
from_secret: docker_password
|
||||||
|
repo: plugins/gitea-release
|
||||||
|
tags: windows-1803
|
||||||
|
username:
|
||||||
|
from_secret: docker_username
|
||||||
|
volumes:
|
||||||
|
- name: docker_pipe
|
||||||
|
path: \\\\.\\pipe\\docker_engine
|
||||||
|
when:
|
||||||
|
event:
|
||||||
|
- pull_request
|
||||||
|
|
||||||
|
- name: publish
|
||||||
|
pull: always
|
||||||
|
image: plugins/docker:windows-1803
|
||||||
|
settings:
|
||||||
|
auto_tag: true
|
||||||
|
auto_tag_suffix: windows-1803
|
||||||
|
daemon_off: true
|
||||||
|
dockerfile: docker/Dockerfile.windows.1803
|
||||||
|
password:
|
||||||
|
from_secret: docker_password
|
||||||
|
repo: plugins/gitea-release
|
||||||
|
username:
|
||||||
|
from_secret: docker_username
|
||||||
|
volumes:
|
||||||
|
- name: docker_pipe
|
||||||
|
path: \\\\.\\pipe\\docker_engine
|
||||||
|
when:
|
||||||
|
event:
|
||||||
|
exclude:
|
||||||
|
- pull_request
|
||||||
|
|
||||||
|
volumes:
|
||||||
|
- name: docker_pipe
|
||||||
|
host:
|
||||||
|
path: \\\\.\\pipe\\docker_engine
|
||||||
|
|
||||||
|
trigger:
|
||||||
|
ref:
|
||||||
|
- refs/heads/master
|
||||||
|
- "refs/tags/**"
|
||||||
|
- "refs/pull/**"
|
||||||
|
|
||||||
|
depends_on:
|
||||||
|
- testing
|
||||||
|
|
||||||
|
---
|
||||||
|
kind: pipeline
|
||||||
|
name: windows-1809
|
||||||
|
|
||||||
|
platform:
|
||||||
|
os: windows
|
||||||
|
arch: amd64
|
||||||
|
version: 1809
|
||||||
|
|
||||||
|
steps:
|
||||||
|
- name: build-push
|
||||||
|
pull: always
|
||||||
|
image: golang:1.11-windowsservercore-1809
|
||||||
|
commands:
|
||||||
|
- "go build -v -ldflags \"-X main.version=${DRONE_COMMIT_SHA:0:8}\" -a -tags netgo -o release/windows/amd64/drone-gitea-release.exe"
|
||||||
|
environment:
|
||||||
|
CGO_ENABLED: 0
|
||||||
|
GO111MODULE: on
|
||||||
|
when:
|
||||||
|
event:
|
||||||
|
exclude:
|
||||||
|
- tag
|
||||||
|
|
||||||
|
- name: build-tag
|
||||||
|
pull: always
|
||||||
|
image: golang:1.11-windowsservercore-1809
|
||||||
|
commands:
|
||||||
|
- "go build -v -ldflags \"-X main.version=${DRONE_TAG##v}\" -a -tags netgo -o release/windows/amd64/drone-gitea-release.exe"
|
||||||
|
environment:
|
||||||
|
CGO_ENABLED: 0
|
||||||
|
GO111MODULE: on
|
||||||
|
when:
|
||||||
|
event:
|
||||||
|
- tag
|
||||||
|
|
||||||
|
- name: executable
|
||||||
|
pull: always
|
||||||
|
image: golang:1.11-windowsservercore-1809
|
||||||
|
commands:
|
||||||
|
- ./release/windows/amd64/drone-gitea-release.exe --help
|
||||||
|
|
||||||
|
- name: dryrun
|
||||||
|
pull: always
|
||||||
|
image: plugins/docker:windows-1809
|
||||||
|
settings:
|
||||||
|
daemon_off: true
|
||||||
|
dockerfile: docker/Dockerfile.windows.1809
|
||||||
|
dry_run: true
|
||||||
|
password:
|
||||||
|
from_secret: docker_password
|
||||||
|
repo: plugins/gitea-release
|
||||||
|
tags: windows-1809
|
||||||
|
username:
|
||||||
|
from_secret: docker_username
|
||||||
|
volumes:
|
||||||
|
- name: docker_pipe
|
||||||
|
path: \\\\.\\pipe\\docker_engine
|
||||||
|
when:
|
||||||
|
event:
|
||||||
|
- pull_request
|
||||||
|
|
||||||
|
- name: publish
|
||||||
|
pull: always
|
||||||
|
image: plugins/docker:windows-1809
|
||||||
|
settings:
|
||||||
|
auto_tag: true
|
||||||
|
auto_tag_suffix: windows-1809
|
||||||
|
daemon_off: true
|
||||||
|
dockerfile: docker/Dockerfile.windows.1809
|
||||||
|
password:
|
||||||
|
from_secret: docker_password
|
||||||
|
repo: plugins/gitea-release
|
||||||
|
username:
|
||||||
|
from_secret: docker_username
|
||||||
|
volumes:
|
||||||
|
- name: docker_pipe
|
||||||
|
path: \\\\.\\pipe\\docker_engine
|
||||||
|
when:
|
||||||
|
event:
|
||||||
|
exclude:
|
||||||
|
- pull_request
|
||||||
|
|
||||||
|
volumes:
|
||||||
|
- name: docker_pipe
|
||||||
|
host:
|
||||||
|
path: \\\\.\\pipe\\docker_engine
|
||||||
|
|
||||||
|
trigger:
|
||||||
|
ref:
|
||||||
|
- refs/heads/master
|
||||||
|
- "refs/tags/**"
|
||||||
|
- "refs/pull/**"
|
||||||
|
|
||||||
|
depends_on:
|
||||||
|
- testing
|
||||||
|
|
||||||
|
---
|
||||||
|
kind: pipeline
|
||||||
|
name: notifications
|
||||||
|
|
||||||
|
platform:
|
||||||
|
os: windows
|
||||||
|
arch: amd64
|
||||||
|
version: 1809
|
||||||
|
|
||||||
|
steps:
|
||||||
|
- name: manifest
|
||||||
|
pull: always
|
||||||
|
image: plugins/manifest
|
||||||
|
settings:
|
||||||
|
auto_tag: true
|
||||||
|
ignore_missing: true
|
||||||
|
password:
|
||||||
|
from_secret: docker_password
|
||||||
|
spec: docker/manifest.tmpl
|
||||||
|
username:
|
||||||
|
from_secret: docker_username
|
||||||
|
|
||||||
|
- name: microbadger
|
||||||
|
pull: always
|
||||||
|
image: plugins/webhook
|
||||||
|
settings:
|
||||||
|
urls:
|
||||||
|
from_secret: microbadger_url
|
||||||
|
|
||||||
|
trigger:
|
||||||
|
ref:
|
||||||
|
- refs/heads/master
|
||||||
|
- "refs/tags/**"
|
||||||
|
|
||||||
|
depends_on:
|
||||||
|
- windows-1803
|
||||||
|
- windows-1809
|
||||||
|
|
||||||
|
...
|
436
.drone.yml
436
.drone.yml
@ -1,148 +1,332 @@
|
|||||||
workspace:
|
---
|
||||||
base: /go
|
kind: pipeline
|
||||||
path: src/github.com/drone-plugins/drone-gitea-release
|
name: testing
|
||||||
|
|
||||||
pipeline:
|
platform:
|
||||||
deps:
|
os: linux
|
||||||
image: golang:1.10
|
arch: amd64
|
||||||
pull: true
|
|
||||||
commands:
|
|
||||||
- go get -u github.com/golang/dep/cmd/dep
|
|
||||||
- dep ensure
|
|
||||||
|
|
||||||
test:
|
steps:
|
||||||
image: golang:1.10
|
- name: vet
|
||||||
pull: true
|
pull: always
|
||||||
commands:
|
image: golang:1.11
|
||||||
- go vet ./...
|
commands:
|
||||||
- go test -cover ./...
|
- go vet ./...
|
||||||
|
environment:
|
||||||
|
GO111MODULE: on
|
||||||
|
volumes:
|
||||||
|
- name: gopath
|
||||||
|
path: /go
|
||||||
|
|
||||||
build_linux_amd64:
|
- name: test
|
||||||
image: golang:1.10
|
pull: always
|
||||||
pull: true
|
image: golang:1.11
|
||||||
group: build
|
commands:
|
||||||
environment:
|
- go test -cover ./...
|
||||||
- GOOS=linux
|
environment:
|
||||||
- GOARCH=amd64
|
GO111MODULE: on
|
||||||
- CGO_ENABLED=0
|
volumes:
|
||||||
commands:
|
- name: gopath
|
||||||
- |
|
path: /go
|
||||||
if test "${DRONE_TAG}" = ""; then
|
|
||||||
go build -v -ldflags "-X main.build=${DRONE_BUILD_NUMBER}" -a -o release/linux/amd64/drone-gitea-release
|
|
||||||
else
|
|
||||||
go build -v -ldflags "-X main.version=${DRONE_TAG##v} -X main.build=${DRONE_BUILD_NUMBER}" -a -o release/linux/amd64/drone-gitea-release
|
|
||||||
fi
|
|
||||||
|
|
||||||
build_linux_i386:
|
volumes:
|
||||||
image: golang:1.10
|
- name: gopath
|
||||||
pull: true
|
temp: {}
|
||||||
group: build
|
|
||||||
environment:
|
|
||||||
- GOOS=linux
|
|
||||||
- GOARCH=386
|
|
||||||
- CGO_ENABLED=0
|
|
||||||
commands:
|
|
||||||
- |
|
|
||||||
if test "${DRONE_TAG}" = ""; then
|
|
||||||
go build -v -ldflags "-X main.build=${DRONE_BUILD_NUMBER}" -a -o release/linux/i386/drone-gitea-release
|
|
||||||
else
|
|
||||||
go build -v -ldflags "-X main.version=${DRONE_TAG##v} -X main.build=${DRONE_BUILD_NUMBER}" -a -o release/linux/i386/drone-gitea-release
|
|
||||||
fi
|
|
||||||
|
|
||||||
build_linux_arm64:
|
trigger:
|
||||||
image: golang:1.10
|
ref:
|
||||||
pull: true
|
- refs/heads/master
|
||||||
group: build
|
- "refs/tags/**"
|
||||||
environment:
|
- "refs/pull/**"
|
||||||
- GOOS=linux
|
|
||||||
- GOARCH=arm64
|
|
||||||
- CGO_ENABLED=0
|
|
||||||
commands:
|
|
||||||
- |
|
|
||||||
if test "${DRONE_TAG}" = ""; then
|
|
||||||
go build -v -ldflags "-X main.build=${DRONE_BUILD_NUMBER}" -a -o release/linux/arm64/drone-gitea-release
|
|
||||||
else
|
|
||||||
go build -v -ldflags "-X main.version=${DRONE_TAG##v} -X main.build=${DRONE_BUILD_NUMBER}" -a -o release/linux/arm64/drone-gitea-release
|
|
||||||
fi
|
|
||||||
|
|
||||||
build_linux_arm:
|
---
|
||||||
image: golang:1.10
|
kind: pipeline
|
||||||
pull: true
|
name: linux-amd64
|
||||||
group: build
|
|
||||||
environment:
|
|
||||||
- GOOS=linux
|
|
||||||
- GOARCH=arm
|
|
||||||
- CGO_ENABLED=0
|
|
||||||
- GOARM=7
|
|
||||||
commands:
|
|
||||||
- |
|
|
||||||
if test "${DRONE_TAG}" = ""; then
|
|
||||||
go build -v -ldflags "-X main.build=${DRONE_BUILD_NUMBER}" -a -o release/linux/arm/drone-gitea-release
|
|
||||||
else
|
|
||||||
go build -v -ldflags "-X main.version=${DRONE_TAG##v} -X main.build=${DRONE_BUILD_NUMBER}" -a -o release/linux/arm/drone-gitea-release
|
|
||||||
fi
|
|
||||||
|
|
||||||
publish_linux_amd64:
|
platform:
|
||||||
image: plugins/docker:17.12
|
os: linux
|
||||||
pull: true
|
arch: amd64
|
||||||
secrets: [ docker_username, docker_password ]
|
|
||||||
group: docker
|
steps:
|
||||||
|
- name: build-push
|
||||||
|
pull: always
|
||||||
|
image: golang:1.11
|
||||||
|
commands:
|
||||||
|
- "go build -v -ldflags \"-X main.version=${DRONE_COMMIT_SHA:0:8}\" -a -tags netgo -o release/linux/amd64/drone-gitea-release"
|
||||||
|
environment:
|
||||||
|
CGO_ENABLED: 0
|
||||||
|
GO111MODULE: on
|
||||||
|
when:
|
||||||
|
event:
|
||||||
|
exclude:
|
||||||
|
- tag
|
||||||
|
|
||||||
|
- name: build-tag
|
||||||
|
pull: always
|
||||||
|
image: golang:1.11
|
||||||
|
commands:
|
||||||
|
- "go build -v -ldflags \"-X main.version=${DRONE_TAG##v}\" -a -tags netgo -o release/linux/amd64/drone-gitea-release"
|
||||||
|
environment:
|
||||||
|
CGO_ENABLED: 0
|
||||||
|
GO111MODULE: on
|
||||||
|
when:
|
||||||
|
event:
|
||||||
|
- tag
|
||||||
|
|
||||||
|
- name: executable
|
||||||
|
pull: always
|
||||||
|
image: golang:1.11
|
||||||
|
commands:
|
||||||
|
- ./release/linux/amd64/drone-gitea-release --help
|
||||||
|
|
||||||
|
- name: dryrun
|
||||||
|
pull: always
|
||||||
|
image: plugins/docker:linux-amd64
|
||||||
|
settings:
|
||||||
|
daemon_off: false
|
||||||
|
dockerfile: docker/Dockerfile.linux.amd64
|
||||||
|
dry_run: true
|
||||||
|
password:
|
||||||
|
from_secret: docker_password
|
||||||
repo: plugins/gitea-release
|
repo: plugins/gitea-release
|
||||||
|
tags: linux-amd64
|
||||||
|
username:
|
||||||
|
from_secret: docker_username
|
||||||
|
when:
|
||||||
|
event:
|
||||||
|
- pull_request
|
||||||
|
|
||||||
|
- name: publish
|
||||||
|
pull: always
|
||||||
|
image: plugins/docker:linux-amd64
|
||||||
|
settings:
|
||||||
auto_tag: true
|
auto_tag: true
|
||||||
auto_tag_suffix: linux-amd64
|
auto_tag_suffix: linux-amd64
|
||||||
dockerfile: Dockerfile
|
daemon_off: false
|
||||||
when:
|
dockerfile: docker/Dockerfile.linux.amd64
|
||||||
event: [ push, tag ]
|
password:
|
||||||
|
from_secret: docker_password
|
||||||
publish_linux_i386:
|
|
||||||
image: plugins/docker:17.12
|
|
||||||
pull: true
|
|
||||||
secrets: [ docker_username, docker_password ]
|
|
||||||
group: docker
|
|
||||||
repo: plugins/gitea-release
|
repo: plugins/gitea-release
|
||||||
auto_tag: true
|
username:
|
||||||
auto_tag_suffix: linux-i386
|
from_secret: docker_username
|
||||||
dockerfile: Dockerfile.i386
|
when:
|
||||||
when:
|
event:
|
||||||
event: [ push, tag ]
|
exclude:
|
||||||
|
- pull_request
|
||||||
|
|
||||||
publish_linux_arm64:
|
trigger:
|
||||||
image: plugins/docker:17.12
|
ref:
|
||||||
pull: true
|
- refs/heads/master
|
||||||
secrets: [ docker_username, docker_password ]
|
- "refs/tags/**"
|
||||||
group: docker
|
- "refs/pull/**"
|
||||||
|
|
||||||
|
depends_on:
|
||||||
|
- testing
|
||||||
|
|
||||||
|
---
|
||||||
|
kind: pipeline
|
||||||
|
name: linux-arm64
|
||||||
|
|
||||||
|
platform:
|
||||||
|
os: linux
|
||||||
|
arch: arm64
|
||||||
|
|
||||||
|
steps:
|
||||||
|
- name: build-push
|
||||||
|
pull: always
|
||||||
|
image: golang:1.11
|
||||||
|
commands:
|
||||||
|
- "go build -v -ldflags \"-X main.version=${DRONE_COMMIT_SHA:0:8}\" -a -tags netgo -o release/linux/arm64/drone-gitea-release"
|
||||||
|
environment:
|
||||||
|
CGO_ENABLED: 0
|
||||||
|
GO111MODULE: on
|
||||||
|
when:
|
||||||
|
event:
|
||||||
|
exclude:
|
||||||
|
- tag
|
||||||
|
|
||||||
|
- name: build-tag
|
||||||
|
pull: always
|
||||||
|
image: golang:1.11
|
||||||
|
commands:
|
||||||
|
- "go build -v -ldflags \"-X main.version=${DRONE_TAG##v}\" -a -tags netgo -o release/linux/arm64/drone-gitea-release"
|
||||||
|
environment:
|
||||||
|
CGO_ENABLED: 0
|
||||||
|
GO111MODULE: on
|
||||||
|
when:
|
||||||
|
event:
|
||||||
|
- tag
|
||||||
|
|
||||||
|
- name: executable
|
||||||
|
pull: always
|
||||||
|
image: golang:1.11
|
||||||
|
commands:
|
||||||
|
- ./release/linux/arm64/drone-gitea-release --help
|
||||||
|
|
||||||
|
- name: dryrun
|
||||||
|
pull: always
|
||||||
|
image: plugins/docker:linux-arm64
|
||||||
|
settings:
|
||||||
|
daemon_off: false
|
||||||
|
dockerfile: docker/Dockerfile.linux.arm64
|
||||||
|
dry_run: true
|
||||||
|
password:
|
||||||
|
from_secret: docker_password
|
||||||
repo: plugins/gitea-release
|
repo: plugins/gitea-release
|
||||||
|
tags: linux-arm64
|
||||||
|
username:
|
||||||
|
from_secret: docker_username
|
||||||
|
when:
|
||||||
|
event:
|
||||||
|
- pull_request
|
||||||
|
|
||||||
|
- name: publish
|
||||||
|
pull: always
|
||||||
|
image: plugins/docker:linux-arm64
|
||||||
|
settings:
|
||||||
auto_tag: true
|
auto_tag: true
|
||||||
auto_tag_suffix: linux-arm64
|
auto_tag_suffix: linux-arm64
|
||||||
dockerfile: Dockerfile.arm64
|
daemon_off: false
|
||||||
when:
|
dockerfile: docker/Dockerfile.linux.arm64
|
||||||
event: [ push, tag ]
|
password:
|
||||||
|
from_secret: docker_password
|
||||||
publish_linux_arm:
|
|
||||||
image: plugins/docker:17.12
|
|
||||||
pull: true
|
|
||||||
secrets: [ docker_username, docker_password ]
|
|
||||||
group: docker
|
|
||||||
repo: plugins/gitea-release
|
repo: plugins/gitea-release
|
||||||
|
username:
|
||||||
|
from_secret: docker_username
|
||||||
|
when:
|
||||||
|
event:
|
||||||
|
exclude:
|
||||||
|
- pull_request
|
||||||
|
|
||||||
|
trigger:
|
||||||
|
ref:
|
||||||
|
- refs/heads/master
|
||||||
|
- "refs/tags/**"
|
||||||
|
- "refs/pull/**"
|
||||||
|
|
||||||
|
depends_on:
|
||||||
|
- testing
|
||||||
|
|
||||||
|
---
|
||||||
|
kind: pipeline
|
||||||
|
name: linux-arm
|
||||||
|
|
||||||
|
platform:
|
||||||
|
os: linux
|
||||||
|
arch: arm
|
||||||
|
|
||||||
|
steps:
|
||||||
|
- name: build-push
|
||||||
|
pull: always
|
||||||
|
image: golang:1.11
|
||||||
|
commands:
|
||||||
|
- "go build -v -ldflags \"-X main.version=${DRONE_COMMIT_SHA:0:8}\" -a -tags netgo -o release/linux/arm/drone-gitea-release"
|
||||||
|
environment:
|
||||||
|
CGO_ENABLED: 0
|
||||||
|
GO111MODULE: on
|
||||||
|
when:
|
||||||
|
event:
|
||||||
|
exclude:
|
||||||
|
- tag
|
||||||
|
|
||||||
|
- name: build-tag
|
||||||
|
pull: always
|
||||||
|
image: golang:1.11
|
||||||
|
commands:
|
||||||
|
- "go build -v -ldflags \"-X main.version=${DRONE_TAG##v}\" -a -tags netgo -o release/linux/arm/drone-gitea-release"
|
||||||
|
environment:
|
||||||
|
CGO_ENABLED: 0
|
||||||
|
GO111MODULE: on
|
||||||
|
when:
|
||||||
|
event:
|
||||||
|
- tag
|
||||||
|
|
||||||
|
- name: executable
|
||||||
|
pull: always
|
||||||
|
image: golang:1.11
|
||||||
|
commands:
|
||||||
|
- ./release/linux/arm/drone-gitea-release --help
|
||||||
|
|
||||||
|
- name: dryrun
|
||||||
|
pull: always
|
||||||
|
image: plugins/docker:linux-arm
|
||||||
|
settings:
|
||||||
|
daemon_off: false
|
||||||
|
dockerfile: docker/Dockerfile.linux.arm
|
||||||
|
dry_run: true
|
||||||
|
password:
|
||||||
|
from_secret: docker_password
|
||||||
|
repo: plugins/gitea-release
|
||||||
|
tags: linux-arm
|
||||||
|
username:
|
||||||
|
from_secret: docker_username
|
||||||
|
when:
|
||||||
|
event:
|
||||||
|
- pull_request
|
||||||
|
|
||||||
|
- name: publish
|
||||||
|
pull: always
|
||||||
|
image: plugins/docker:linux-arm
|
||||||
|
settings:
|
||||||
auto_tag: true
|
auto_tag: true
|
||||||
auto_tag_suffix: linux-arm
|
auto_tag_suffix: linux-arm
|
||||||
dockerfile: Dockerfile.arm
|
daemon_off: false
|
||||||
when:
|
dockerfile: docker/Dockerfile.linux.arm
|
||||||
event: [ push, tag ]
|
password:
|
||||||
|
from_secret: docker_password
|
||||||
|
repo: plugins/gitea-release
|
||||||
|
username:
|
||||||
|
from_secret: docker_username
|
||||||
|
when:
|
||||||
|
event:
|
||||||
|
exclude:
|
||||||
|
- pull_request
|
||||||
|
|
||||||
manifests:
|
trigger:
|
||||||
image: plugins/manifest:1
|
ref:
|
||||||
pull: true
|
- refs/heads/master
|
||||||
secrets: [ docker_username, docker_password ]
|
- "refs/tags/**"
|
||||||
spec: manifest.tmpl
|
- "refs/pull/**"
|
||||||
|
|
||||||
|
depends_on:
|
||||||
|
- testing
|
||||||
|
|
||||||
|
---
|
||||||
|
kind: pipeline
|
||||||
|
name: notifications
|
||||||
|
|
||||||
|
platform:
|
||||||
|
os: linux
|
||||||
|
arch: amd64
|
||||||
|
|
||||||
|
steps:
|
||||||
|
- name: manifest
|
||||||
|
pull: always
|
||||||
|
image: plugins/manifest
|
||||||
|
settings:
|
||||||
auto_tag: true
|
auto_tag: true
|
||||||
ignore_missing: true
|
ignore_missing: true
|
||||||
when:
|
password:
|
||||||
event: [ push, tag ]
|
from_secret: docker_password
|
||||||
|
spec: docker/manifest.tmpl
|
||||||
|
username:
|
||||||
|
from_secret: docker_username
|
||||||
|
|
||||||
microbadger:
|
- name: microbadger
|
||||||
image: plugins/webhook:1
|
pull: always
|
||||||
pull: true
|
image: plugins/webhook
|
||||||
secrets: [ webhook_url ]
|
settings:
|
||||||
when:
|
urls:
|
||||||
status: [ success ]
|
from_secret: microbadger_url
|
||||||
|
|
||||||
|
trigger:
|
||||||
|
ref:
|
||||||
|
- refs/heads/master
|
||||||
|
- "refs/tags/**"
|
||||||
|
|
||||||
|
depends_on:
|
||||||
|
- linux-amd64
|
||||||
|
- linux-arm64
|
||||||
|
- linux-arm
|
||||||
|
|
||||||
|
...
|
||||||
|
9
.github/issue_template.md
vendored
9
.github/issue_template.md
vendored
@ -0,0 +1,9 @@
|
|||||||
|
<!-- PLEASE READ BEFORE DELETING
|
||||||
|
|
||||||
|
Bugs or Issues? Due to the high number of false positive issues we receive,
|
||||||
|
please do not create a GitHub issue until you have discussed and verified
|
||||||
|
with community support at:
|
||||||
|
|
||||||
|
https://discourse.drone.io/
|
||||||
|
|
||||||
|
-->
|
73
.github/settings.yml
vendored
Normal file
73
.github/settings.yml
vendored
Normal file
@ -0,0 +1,73 @@
|
|||||||
|
repository:
|
||||||
|
name: drone-gitea-release
|
||||||
|
description: Drone plugin for creating and tagging Gitea releases
|
||||||
|
homepage: http://plugins.drone.io/drone-plugins/drone-gitea-release
|
||||||
|
topics: drone, drone-plugin
|
||||||
|
|
||||||
|
private: false
|
||||||
|
has_issues: true
|
||||||
|
has_wiki: false
|
||||||
|
has_downloads: false
|
||||||
|
|
||||||
|
default_branch: master
|
||||||
|
|
||||||
|
allow_squash_merge: true
|
||||||
|
allow_merge_commit: true
|
||||||
|
allow_rebase_merge: true
|
||||||
|
|
||||||
|
labels:
|
||||||
|
- name: bug
|
||||||
|
color: d73a4a
|
||||||
|
description: Something isn't working
|
||||||
|
- name: duplicate
|
||||||
|
color: cfd3d7
|
||||||
|
description: This issue or pull request already exists
|
||||||
|
- name: enhancement
|
||||||
|
color: a2eeef
|
||||||
|
description: New feature or request
|
||||||
|
- name: good first issue
|
||||||
|
color: 7057ff
|
||||||
|
description: Good for newcomers
|
||||||
|
- name: help wanted
|
||||||
|
color: 008672
|
||||||
|
description: Extra attention is needed
|
||||||
|
- name: invalid
|
||||||
|
color: e4e669
|
||||||
|
description: This doesn't seem right
|
||||||
|
- name: question
|
||||||
|
color: d876e3
|
||||||
|
description: Further information is requested
|
||||||
|
- name: renovate
|
||||||
|
color: e99695
|
||||||
|
description: Automated action from Renovate
|
||||||
|
- name: wontfix
|
||||||
|
color: ffffff
|
||||||
|
description: This will not be worked on
|
||||||
|
|
||||||
|
teams:
|
||||||
|
- name: Admins
|
||||||
|
permission: admin
|
||||||
|
- name: Captain
|
||||||
|
permission: admin
|
||||||
|
- name: Maintainers
|
||||||
|
permission: push
|
||||||
|
|
||||||
|
branches:
|
||||||
|
- name: master
|
||||||
|
protection:
|
||||||
|
required_pull_request_reviews:
|
||||||
|
required_approving_review_count: 1
|
||||||
|
dismiss_stale_reviews: false
|
||||||
|
require_code_owner_reviews: false
|
||||||
|
dismissal_restrictions:
|
||||||
|
teams:
|
||||||
|
- Admins
|
||||||
|
- Captain
|
||||||
|
required_status_checks:
|
||||||
|
strict: true
|
||||||
|
contexts:
|
||||||
|
- continuous-integration/drone/pr
|
||||||
|
enforce_admins: false
|
||||||
|
restrictions:
|
||||||
|
users: []
|
||||||
|
teams: []
|
@ -1,9 +0,0 @@
|
|||||||
FROM plugins/base:multiarch
|
|
||||||
|
|
||||||
LABEL maintainer="Drone.IO Community <drone-dev@googlegroups.com>" \
|
|
||||||
org.label-schema.name="Drone Gitea Release" \
|
|
||||||
org.label-schema.vendor="Drone.IO Community" \
|
|
||||||
org.label-schema.schema-version="1.0"
|
|
||||||
|
|
||||||
ADD release/linux/i386/drone-gitea-release /bin/
|
|
||||||
ENTRYPOINT ["/bin/drone-gitea-release"]
|
|
@ -1,12 +0,0 @@
|
|||||||
# escape=`
|
|
||||||
FROM microsoft/nanoserver:10.0.14393.1593
|
|
||||||
|
|
||||||
LABEL maintainer="Drone.IO Community <drone-dev@googlegroups.com>" `
|
|
||||||
org.label-schema.name="Drone Gitea Release" `
|
|
||||||
org.label-schema.vendor="Drone.IO Community" `
|
|
||||||
org.label-schema.schema-version="1.0"
|
|
||||||
|
|
||||||
SHELL ["powershell", "-Command", "$ErrorActionPreference = 'Stop'; $ProgressPreference = 'SilentlyContinue';"]
|
|
||||||
|
|
||||||
ADD release\drone-gitea-release.exe c:\drone-gitea-release.exe
|
|
||||||
ENTRYPOINT [ "c:\\drone-gitea-release.exe" ]
|
|
48
Gopkg.lock
generated
48
Gopkg.lock
generated
@ -1,48 +0,0 @@
|
|||||||
# This file is autogenerated, do not edit; changes may be undone by the next 'dep ensure'.
|
|
||||||
|
|
||||||
|
|
||||||
[[projects]]
|
|
||||||
branch = "master"
|
|
||||||
name = "code.gitea.io/sdk"
|
|
||||||
packages = ["gitea"]
|
|
||||||
revision = "fa91af7569e6ba34bfa382109847cbc79c3fdad8"
|
|
||||||
|
|
||||||
[[projects]]
|
|
||||||
name = "github.com/Sirupsen/logrus"
|
|
||||||
packages = ["."]
|
|
||||||
revision = "c155da19408a8799da419ed3eeb0cb5db0ad5dbc"
|
|
||||||
version = "v1.0.5"
|
|
||||||
|
|
||||||
[[projects]]
|
|
||||||
name = "github.com/joho/godotenv"
|
|
||||||
packages = ["."]
|
|
||||||
revision = "a79fa1e548e2c689c241d10173efd51e5d689d5b"
|
|
||||||
version = "v1.2.0"
|
|
||||||
|
|
||||||
[[projects]]
|
|
||||||
name = "github.com/urfave/cli"
|
|
||||||
packages = ["."]
|
|
||||||
revision = "cfb38830724cc34fedffe9a2a29fb54fa9169cd1"
|
|
||||||
version = "v1.20.0"
|
|
||||||
|
|
||||||
[[projects]]
|
|
||||||
branch = "master"
|
|
||||||
name = "golang.org/x/crypto"
|
|
||||||
packages = ["ssh/terminal"]
|
|
||||||
revision = "21652f85b0fdddb6c2b6b77a5beca5c5a908174a"
|
|
||||||
|
|
||||||
[[projects]]
|
|
||||||
branch = "master"
|
|
||||||
name = "golang.org/x/sys"
|
|
||||||
packages = [
|
|
||||||
"unix",
|
|
||||||
"windows"
|
|
||||||
]
|
|
||||||
revision = "cc7307a45468e49eaf2997c890f14aa03a26917b"
|
|
||||||
|
|
||||||
[solve-meta]
|
|
||||||
analyzer-name = "dep"
|
|
||||||
analyzer-version = 1
|
|
||||||
inputs-digest = "7cb00c5086c5910b3f5a952158b3c99e8a3c41acb235f0591f74545909a00d34"
|
|
||||||
solver-name = "gps-cdcl"
|
|
||||||
solver-version = 1
|
|
19
Gopkg.toml
19
Gopkg.toml
@ -1,19 +0,0 @@
|
|||||||
[[constraint]]
|
|
||||||
branch = "master"
|
|
||||||
name = "code.gitea.io/sdk"
|
|
||||||
|
|
||||||
[[constraint]]
|
|
||||||
name = "github.com/Sirupsen/logrus"
|
|
||||||
version = "1.0.5"
|
|
||||||
|
|
||||||
[[constraint]]
|
|
||||||
name = "github.com/joho/godotenv"
|
|
||||||
version = "1.2.0"
|
|
||||||
|
|
||||||
[[constraint]]
|
|
||||||
name = "github.com/urfave/cli"
|
|
||||||
version = "1.20.0"
|
|
||||||
|
|
||||||
[prune]
|
|
||||||
go-tests = true
|
|
||||||
unused-packages = true
|
|
46
README.md
46
README.md
@ -1,18 +1,50 @@
|
|||||||
# drone-gitea-release
|
# drone-gitea-release
|
||||||
|
|
||||||
[![Build Status](https://beta.drone.io/api/badges/drone-plugins/drone-gitea-release/status.svg)](https://beta.drone.io/drone-plugins/drone-gitea-release)
|
[![Build Status](http://cloud.drone.io/api/badges/drone-plugins/drone-gitea-release/status.svg)](http://cloud.drone.io/drone-plugins/drone-gitea-release)
|
||||||
|
[![Gitter chat](https://badges.gitter.im/drone/drone.png)](https://gitter.im/drone/drone)
|
||||||
|
[![Join the discussion at https://discourse.drone.io](https://img.shields.io/badge/discourse-forum-orange.svg)](https://discourse.drone.io)
|
||||||
|
[![Drone questions at https://stackoverflow.com](https://img.shields.io/badge/drone-stackoverflow-orange.svg)](https://stackoverflow.com/questions/tagged/drone.io)
|
||||||
|
[![](https://images.microbadger.com/badges/image/plugins/gitea-release.svg)](https://microbadger.com/images/plugins/gitea-release "Get your own image badge on microbadger.com")
|
||||||
[![Go Doc](https://godoc.org/github.com/drone-plugins/drone-gitea-release?status.svg)](http://godoc.org/github.com/drone-plugins/drone-gitea-release)
|
[![Go Doc](https://godoc.org/github.com/drone-plugins/drone-gitea-release?status.svg)](http://godoc.org/github.com/drone-plugins/drone-gitea-release)
|
||||||
[![Go Report](https://goreportcard.com/badge/github.com/drone-plugins/drone-gitea-release)](https://goreportcard.com/report/github.com/drone-plugins/drone-gitea-release)
|
[![Go Report](https://goreportcard.com/badge/github.com/drone-plugins/drone-gitea-release)](https://goreportcard.com/report/github.com/drone-plugins/drone-gitea-release)
|
||||||
|
|
||||||
Drone plugin to publish files and artifacts to Gitea Release.
|
Drone plugin to publish files and artifacts to Gitea release. For the usage information and a listing of the available options please take a look at [the docs](http://plugins.drone.io/drone-plugins/drone-gitea-release/).
|
||||||
|
|
||||||
**Note: This plugin requires Gitea 1.5 or newer.**
|
|
||||||
|
|
||||||
## Build
|
## Build
|
||||||
|
|
||||||
Build the binary with the following commands:
|
Build the binary with the following command:
|
||||||
|
|
||||||
|
```console
|
||||||
|
export GOOS=linux
|
||||||
|
export GOARCH=amd64
|
||||||
|
export CGO_ENABLED=0
|
||||||
|
export GO111MODULE=on
|
||||||
|
|
||||||
|
go build -v -a -tags netgo -o release/linux/amd64/drone-gitea-release
|
||||||
```
|
```
|
||||||
GOOS=linux GOARCH=amd64 CGO_ENABLED=0 go build -a -tags netgo -o release/linux/amd64/drone-gitea-release
|
|
||||||
docker build --rm -t plugins/gitea-release .
|
## Docker
|
||||||
|
|
||||||
|
Build the Docker image with the following command:
|
||||||
|
|
||||||
|
```console
|
||||||
|
docker build \
|
||||||
|
--label org.label-schema.build-date=$(date -u +"%Y-%m-%dT%H:%M:%SZ") \
|
||||||
|
--label org.label-schema.vcs-ref=$(git rev-parse --short HEAD) \
|
||||||
|
--file docker/Dockerfile.linux.amd64 --tag plugins/gitea-release .
|
||||||
|
```
|
||||||
|
|
||||||
|
## Usage
|
||||||
|
|
||||||
|
```console
|
||||||
|
docker run --rm \
|
||||||
|
-e PLUGIN_BASE_URL=https://try.gitea.io \
|
||||||
|
-e PLUGIN_API_KEY=your-api-key \
|
||||||
|
-e PLUGIN_FILES=build/* \
|
||||||
|
-e DRONE_REPO_OWNER=gitea \
|
||||||
|
-e DRONE_REPO_NAME=test \
|
||||||
|
-e DRONE_BUILD_EVENT=tag \
|
||||||
|
-v $(pwd):$(pwd) \
|
||||||
|
-w $(pwd) \
|
||||||
|
plugins/gitea-release
|
||||||
```
|
```
|
||||||
|
10
docker/Dockerfile.windows.1803
Normal file
10
docker/Dockerfile.windows.1803
Normal file
@ -0,0 +1,10 @@
|
|||||||
|
# escape=`
|
||||||
|
FROM plugins/base:windows-1803
|
||||||
|
|
||||||
|
LABEL maintainer="Drone.IO Community <drone-dev@googlegroups.com>" `
|
||||||
|
org.label-schema.name="Drone Gitea Release" `
|
||||||
|
org.label-schema.vendor="Drone.IO Community" `
|
||||||
|
org.label-schema.schema-version="1.0"
|
||||||
|
|
||||||
|
ADD release/windows/amd64/drone-gitea-release.exe C:/bin/drone-gitea-release.exe
|
||||||
|
ENTRYPOINT [ "C:\\bin\\drone-gitea-release.exe" ]
|
10
docker/Dockerfile.windows.1809
Normal file
10
docker/Dockerfile.windows.1809
Normal file
@ -0,0 +1,10 @@
|
|||||||
|
# escape=`
|
||||||
|
FROM plugins/base:windows-1809
|
||||||
|
|
||||||
|
LABEL maintainer="Drone.IO Community <drone-dev@googlegroups.com>" `
|
||||||
|
org.label-schema.name="Drone Gitea Release" `
|
||||||
|
org.label-schema.vendor="Drone.IO Community" `
|
||||||
|
org.label-schema.schema-version="1.0"
|
||||||
|
|
||||||
|
ADD release/windows/amd64/drone-gitea-release.exe C:/bin/drone-gitea-release.exe
|
||||||
|
ENTRYPOINT [ "C:\\bin\\drone-gitea-release.exe" ]
|
37
docker/manifest.tmpl
Normal file
37
docker/manifest.tmpl
Normal file
@ -0,0 +1,37 @@
|
|||||||
|
image: plugins/gitea-release:{{#if build.tag}}{{trimPrefix "v" build.tag}}{{else}}latest{{/if}}
|
||||||
|
{{#if build.tags}}
|
||||||
|
tags:
|
||||||
|
{{#each build.tags}}
|
||||||
|
- {{this}}
|
||||||
|
{{/each}}
|
||||||
|
{{/if}}
|
||||||
|
manifests:
|
||||||
|
-
|
||||||
|
image: plugins/gitea-release:{{#if build.tag}}{{trimPrefix "v" build.tag}}-{{/if}}linux-amd64
|
||||||
|
platform:
|
||||||
|
architecture: amd64
|
||||||
|
os: linux
|
||||||
|
-
|
||||||
|
image: plugins/gitea-release:{{#if build.tag}}{{trimPrefix "v" build.tag}}-{{/if}}linux-arm64
|
||||||
|
platform:
|
||||||
|
architecture: arm64
|
||||||
|
os: linux
|
||||||
|
variant: v8
|
||||||
|
-
|
||||||
|
image: plugins/gitea-release:{{#if build.tag}}{{trimPrefix "v" build.tag}}-{{/if}}linux-arm
|
||||||
|
platform:
|
||||||
|
architecture: arm
|
||||||
|
os: linux
|
||||||
|
variant: v7
|
||||||
|
-
|
||||||
|
image: plugins/gitea-release:{{#if build.tag}}{{trimPrefix "v" build.tag}}-{{/if}}windows-1803
|
||||||
|
platform:
|
||||||
|
architecture: amd64
|
||||||
|
os: windows
|
||||||
|
version: 1803
|
||||||
|
-
|
||||||
|
image: plugins/gitea-release:{{#if build.tag}}{{trimPrefix "v" build.tag}}-{{/if}}windows-1809
|
||||||
|
platform:
|
||||||
|
architecture: amd64
|
||||||
|
os: windows
|
||||||
|
version: 1809
|
17
go.mod
Normal file
17
go.mod
Normal file
@ -0,0 +1,17 @@
|
|||||||
|
module github.com/drone-plugins/drone-gitea-release
|
||||||
|
|
||||||
|
go 1.14
|
||||||
|
|
||||||
|
require (
|
||||||
|
code.gitea.io/sdk v0.0.0-20180306012245-fa91af7569e6
|
||||||
|
github.com/Sirupsen/logrus v1.0.5
|
||||||
|
github.com/joho/godotenv v1.2.0
|
||||||
|
github.com/onsi/ginkgo v1.12.0 // indirect
|
||||||
|
github.com/onsi/gomega v1.10.0 // indirect
|
||||||
|
github.com/sirupsen/logrus v1.6.0 // indirect
|
||||||
|
github.com/stretchr/testify v1.5.1 // indirect
|
||||||
|
github.com/urfave/cli v1.20.0
|
||||||
|
golang.org/x/crypto v0.0.0-20180314180259-21652f85b0fd // indirect
|
||||||
|
gopkg.in/airbrake/gobrake.v2 v2.0.9 // indirect
|
||||||
|
gopkg.in/gemnasium/logrus-airbrake-hook.v2 v2.1.2 // indirect
|
||||||
|
)
|
62
go.sum
Normal file
62
go.sum
Normal file
@ -0,0 +1,62 @@
|
|||||||
|
code.gitea.io/sdk v0.0.0-20180306012245-fa91af7569e6 h1:+7v/mFO/rvSm3V7eTMuO7ZovUE9fGDHdZPOGrGHg6G0=
|
||||||
|
code.gitea.io/sdk v0.0.0-20180306012245-fa91af7569e6/go.mod h1:5bZt0dRznpn2JysytQnV0yCru3FwDv9O5G91jo+lDAk=
|
||||||
|
github.com/Sirupsen/logrus v1.0.5 h1:447dy9LxSj+Iaa2uN3yoFHOzU9yJcJYiQPtNz8OXtv0=
|
||||||
|
github.com/Sirupsen/logrus v1.0.5/go.mod h1:rmk17hk6i8ZSAJkSDa7nOxamrG+SP4P0mm+DAvExv4U=
|
||||||
|
github.com/davecgh/go-spew v1.1.0/go.mod h1:J7Y8YcW2NihsgmVo/mv3lAwl/skON4iLHjSsI+c5H38=
|
||||||
|
github.com/davecgh/go-spew v1.1.1 h1:vj9j/u1bqnvCEfJOwUhtlOARqs3+rkHYY13jYWTU97c=
|
||||||
|
github.com/davecgh/go-spew v1.1.1/go.mod h1:J7Y8YcW2NihsgmVo/mv3lAwl/skON4iLHjSsI+c5H38=
|
||||||
|
github.com/fsnotify/fsnotify v1.4.7 h1:IXs+QLmnXW2CcXuY+8Mzv/fWEsPGWxqefPtCP5CnV9I=
|
||||||
|
github.com/fsnotify/fsnotify v1.4.7/go.mod h1:jwhsz4b93w/PPRr/qN1Yymfu8t87LnFCMoQvtojpjFo=
|
||||||
|
github.com/golang/protobuf v1.2.0 h1:P3YflyNX/ehuJFLhxviNdFxQPkGK5cDcApsge1SqnvM=
|
||||||
|
github.com/golang/protobuf v1.2.0/go.mod h1:6lQm79b+lXiMfvg/cZm0SGofjICqVBUtrP5yJMmIC1U=
|
||||||
|
github.com/hpcloud/tail v1.0.0 h1:nfCOvKYfkgYP8hkirhJocXT2+zOD8yUNjXaWfTlyFKI=
|
||||||
|
github.com/hpcloud/tail v1.0.0/go.mod h1:ab1qPbhIpdTxEkNHXyeSf5vhxWSCs/tWer42PpOxQnU=
|
||||||
|
github.com/joho/godotenv v1.2.0 h1:vGTvz69FzUFp+X4/bAkb0j5BoLC+9bpqTWY8mjhA9pc=
|
||||||
|
github.com/joho/godotenv v1.2.0/go.mod h1:7hK45KPybAkOC6peb+G5yklZfMxEjkZhHbwpqxOKXbg=
|
||||||
|
github.com/konsorten/go-windows-terminal-sequences v1.0.3 h1:CE8S1cTafDpPvMhIxNJKvHsGVBgn1xWYf1NbHQhywc8=
|
||||||
|
github.com/konsorten/go-windows-terminal-sequences v1.0.3/go.mod h1:T0+1ngSBFLxvqU3pZ+m/2kptfBszLMUkC4ZK/EgS/cQ=
|
||||||
|
github.com/onsi/ginkgo v1.6.0/go.mod h1:lLunBs/Ym6LB5Z9jYTR76FiuTmxDTDusOGeTQH+WWjE=
|
||||||
|
github.com/onsi/ginkgo v1.12.0 h1:Iw5WCbBcaAAd0fpRb1c9r5YCylv4XDoCSigm1zLevwU=
|
||||||
|
github.com/onsi/ginkgo v1.12.0/go.mod h1:oUhWkIvk5aDxtKvDDuw8gItl8pKl42LzjC9KZE0HfGg=
|
||||||
|
github.com/onsi/gomega v1.7.1/go.mod h1:XdKZgCCFLUoM/7CFJVPcG8C1xQ1AJ0vpAezJrB7JYyY=
|
||||||
|
github.com/onsi/gomega v1.10.0 h1:Gwkk+PTu/nfOwNMtUB/mRUv0X7ewW5dO4AERT1ThVKo=
|
||||||
|
github.com/onsi/gomega v1.10.0/go.mod h1:Ho0h+IUsWyvy1OpqCwxlQ/21gkhVunqlU8fDGcoTdcA=
|
||||||
|
github.com/pmezard/go-difflib v1.0.0 h1:4DBwDE0NGyQoBHbLQYPwSUPoCMWR5BEzIk/f1lZbAQM=
|
||||||
|
github.com/pmezard/go-difflib v1.0.0/go.mod h1:iKH77koFhYxTK1pcRnkKkqfTogsbg7gZNVY4sRDYZ/4=
|
||||||
|
github.com/sirupsen/logrus v1.6.0 h1:UBcNElsrwanuuMsnGSlYmtmgbb23qDR5dG+6X6Oo89I=
|
||||||
|
github.com/sirupsen/logrus v1.6.0/go.mod h1:7uNnSEd1DgxDLC74fIahvMZmmYsHGZGEOFrfsX/uA88=
|
||||||
|
github.com/stretchr/objx v0.1.0/go.mod h1:HFkY916IF+rwdDfMAkV7OtwuqBVzrE8GR6GFx+wExME=
|
||||||
|
github.com/stretchr/testify v1.2.2/go.mod h1:a8OnRcib4nhh0OaRAV+Yts87kKdq0PP7pXfy6kDkUVs=
|
||||||
|
github.com/stretchr/testify v1.5.1 h1:nOGnQDM7FYENwehXlg/kFVnos3rEvtKTjRvOWSzb6H4=
|
||||||
|
github.com/stretchr/testify v1.5.1/go.mod h1:5W2xD1RspED5o8YsWQXVCued0rvSQ+mT+I5cxcmMvtA=
|
||||||
|
github.com/urfave/cli v1.20.0 h1:fDqGv3UG/4jbVl/QkFwEdddtEDjh/5Ov6X+0B/3bPaw=
|
||||||
|
github.com/urfave/cli v1.20.0/go.mod h1:70zkFmudgCuE/ngEzBv17Jvp/497gISqfk5gWijbERA=
|
||||||
|
golang.org/x/crypto v0.0.0-20180314180259-21652f85b0fd h1:cC/2DaX1wcQTuG22GhVYD0kedx0WJnOgKmrxsb3yS+4=
|
||||||
|
golang.org/x/crypto v0.0.0-20180314180259-21652f85b0fd/go.mod h1:6SG95UA2DQfeDnfUPMdvaQW0Q7yPrPDi9nlGo2tz2b4=
|
||||||
|
golang.org/x/net v0.0.0-20180906233101-161cd47e91fd h1:nTDtHvHSdCn1m6ITfMRqtOd/9+7a3s8RBNOZ3eYZzJA=
|
||||||
|
golang.org/x/net v0.0.0-20180906233101-161cd47e91fd/go.mod h1:mL1N/T3taQHkDXs73rZJwtUhF3w3ftmwwsq0BUmARs4=
|
||||||
|
golang.org/x/sync v0.0.0-20180314180146-1d60e4601c6f h1:wMNYb4v58l5UBM7MYRLPG6ZhfOqbKu7X5eyFl8ZhKvA=
|
||||||
|
golang.org/x/sync v0.0.0-20180314180146-1d60e4601c6f/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM=
|
||||||
|
golang.org/x/sys v0.0.0-20180909124046-d0be0721c37e/go.mod h1:STP8DvDyc/dI5b8T5hshtkjS+E42TnysNCUPdjciGhY=
|
||||||
|
golang.org/x/sys v0.0.0-20190422165155-953cdadca894 h1:Cz4ceDQGXuKRnVBDTS23GTn/pU5OE2C0WrNTOYK1Uuc=
|
||||||
|
golang.org/x/sys v0.0.0-20190422165155-953cdadca894/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs=
|
||||||
|
golang.org/x/sys v0.0.0-20191120155948-bd437916bb0e h1:N7DeIrjYszNmSW409R3frPPwglRwMkXSBzwVbkOjLLA=
|
||||||
|
golang.org/x/sys v0.0.0-20191120155948-bd437916bb0e/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs=
|
||||||
|
golang.org/x/text v0.3.0 h1:g61tztE5qeGQ89tm6NTjjM9VPIm088od1l6aSorWRWg=
|
||||||
|
golang.org/x/text v0.3.0/go.mod h1:NqM8EUOU14njkJ3fqMW+pc6Ldnwhi/IjpwHt7yyuwOQ=
|
||||||
|
golang.org/x/xerrors v0.0.0-20190717185122-a985d3407aa7 h1:9zdDQZ7Thm29KFXgAX/+yaf3eVbP7djjWp/dXAppNCc=
|
||||||
|
golang.org/x/xerrors v0.0.0-20190717185122-a985d3407aa7/go.mod h1:I/5z698sn9Ka8TeJc9MKroUUfqBBauWjQqLJ2OPfmY0=
|
||||||
|
gopkg.in/airbrake/gobrake.v2 v2.0.9 h1:7z2uVWwn7oVeeugY1DtlPAy5H+KYgB1KeKTnqjNatLo=
|
||||||
|
gopkg.in/airbrake/gobrake.v2 v2.0.9/go.mod h1:/h5ZAUhDkGaJfjzjKLSjv6zCL6O0LLBxU4K+aSYdM/U=
|
||||||
|
gopkg.in/check.v1 v0.0.0-20161208181325-20d25e280405 h1:yhCVgyC4o1eVCa2tZl7eS0r+SDo693bJlVdllGtEeKM=
|
||||||
|
gopkg.in/check.v1 v0.0.0-20161208181325-20d25e280405/go.mod h1:Co6ibVJAznAaIkqp8huTwlJQCZ016jof/cbN4VW5Yz0=
|
||||||
|
gopkg.in/fsnotify.v1 v1.4.7 h1:xOHLXZwVvI9hhs+cLKq5+I5onOuwQLhQwiu63xxlHs4=
|
||||||
|
gopkg.in/fsnotify.v1 v1.4.7/go.mod h1:Tz8NjZHkW78fSQdbUxIjBTcgA1z1m8ZHf0WmKUhAMys=
|
||||||
|
gopkg.in/gemnasium/logrus-airbrake-hook.v2 v2.1.2 h1:OAj3g0cR6Dx/R07QgQe8wkA9RNjB2u4i700xBkIT4e0=
|
||||||
|
gopkg.in/gemnasium/logrus-airbrake-hook.v2 v2.1.2/go.mod h1:Xk6kEKp8OKb+X14hQBKWaSkCsqBpgog8nAV2xsGOxlo=
|
||||||
|
gopkg.in/tomb.v1 v1.0.0-20141024135613-dd632973f1e7 h1:uRGJdciOHaEIrze2W8Q3AKkepLTh2hOroT7a+7czfdQ=
|
||||||
|
gopkg.in/tomb.v1 v1.0.0-20141024135613-dd632973f1e7/go.mod h1:dt/ZhP58zS4L8KSrWDmTeBkI65Dw0HsyUHuEVlX15mw=
|
||||||
|
gopkg.in/yaml.v2 v2.2.2 h1:ZCJp+EgiOT7lHqUV2J862kp8Qj64Jo6az82+3Td9dZw=
|
||||||
|
gopkg.in/yaml.v2 v2.2.2/go.mod h1:hI93XBmqTisBFMUTm0b8Fm+jr3Dg1NNxqwp+5A1VGuI=
|
||||||
|
gopkg.in/yaml.v2 v2.2.4 h1:/eiJrUcujPVeJ3xlSWaiNi3uSVmDGBK1pDHUHAnao1I=
|
||||||
|
gopkg.in/yaml.v2 v2.2.4/go.mod h1:hI93XBmqTisBFMUTm0b8Fm+jr3Dg1NNxqwp+5A1VGuI=
|
16
main.go
16
main.go
@ -1,7 +1,6 @@
|
|||||||
package main
|
package main
|
||||||
|
|
||||||
import (
|
import (
|
||||||
"fmt"
|
|
||||||
"os"
|
"os"
|
||||||
|
|
||||||
"github.com/Sirupsen/logrus"
|
"github.com/Sirupsen/logrus"
|
||||||
@ -10,16 +9,15 @@ import (
|
|||||||
)
|
)
|
||||||
|
|
||||||
var (
|
var (
|
||||||
version = "0.0.0"
|
version = "unknown"
|
||||||
build = "0"
|
|
||||||
)
|
)
|
||||||
|
|
||||||
func main() {
|
func main() {
|
||||||
app := cli.NewApp()
|
app := cli.NewApp()
|
||||||
app.Name = "gitea-release plugin"
|
app.Name = "gitea-release plugin"
|
||||||
app.Usage = "gitea-release plugin"
|
app.Usage = "gitea-release plugin"
|
||||||
app.Version = fmt.Sprintf("%s+%s", version, build)
|
|
||||||
app.Action = run
|
app.Action = run
|
||||||
|
app.Version = version
|
||||||
app.Flags = []cli.Flag{
|
app.Flags = []cli.Flag{
|
||||||
cli.StringFlag{
|
cli.StringFlag{
|
||||||
Name: "api-key",
|
Name: "api-key",
|
||||||
@ -84,6 +82,11 @@ func main() {
|
|||||||
Usage: "repository name",
|
Usage: "repository name",
|
||||||
EnvVar: "DRONE_REPO_NAME",
|
EnvVar: "DRONE_REPO_NAME",
|
||||||
},
|
},
|
||||||
|
cli.StringFlag{
|
||||||
|
Name: "repo.branch",
|
||||||
|
Usage: "repository branch",
|
||||||
|
EnvVar: "DRONE_REPO_BRANCH",
|
||||||
|
},
|
||||||
cli.StringFlag{
|
cli.StringFlag{
|
||||||
Name: "build.event",
|
Name: "build.event",
|
||||||
Value: "push",
|
Value: "push",
|
||||||
@ -114,8 +117,9 @@ func run(c *cli.Context) error {
|
|||||||
|
|
||||||
plugin := Plugin{
|
plugin := Plugin{
|
||||||
Repo: Repo{
|
Repo: Repo{
|
||||||
Owner: c.String("repo.owner"),
|
Owner: c.String("repo.owner"),
|
||||||
Name: c.String("repo.name"),
|
Name: c.String("repo.name"),
|
||||||
|
Branch: c.String("repo.branch"),
|
||||||
},
|
},
|
||||||
Build: Build{
|
Build: Build{
|
||||||
Event: c.String("build.event"),
|
Event: c.String("build.event"),
|
||||||
|
@ -1,33 +0,0 @@
|
|||||||
image: plugins/gitea-release:{{#if build.tag}}{{trimPrefix build.tag "v"}}{{else}}latest{{/if}}
|
|
||||||
{{#if build.tags}}
|
|
||||||
tags:
|
|
||||||
{{#each build.tags}}
|
|
||||||
- {{this}}
|
|
||||||
{{/each}}
|
|
||||||
{{/if}}
|
|
||||||
manifests:
|
|
||||||
-
|
|
||||||
image: plugins/gitea-release:{{#if build.tag}}{{trimPrefix build.tag "v"}}-{{/if}}linux-amd64
|
|
||||||
platform:
|
|
||||||
architecture: amd64
|
|
||||||
os: linux
|
|
||||||
-
|
|
||||||
image: plugins/gitea-release:{{#if build.tag}}{{trimPrefix build.tag "v"}}-{{/if}}linux-i386
|
|
||||||
platform:
|
|
||||||
architecture: 386
|
|
||||||
os: linux
|
|
||||||
-
|
|
||||||
image: plugins/gitea-release:{{#if build.tag}}{{trimPrefix build.tag "v"}}-{{/if}}linux-arm64
|
|
||||||
platform:
|
|
||||||
architecture: arm64
|
|
||||||
os: linux
|
|
||||||
-
|
|
||||||
image: plugins/gitea-release:{{#if build.tag}}{{trimPrefix build.tag "v"}}-{{/if}}linux-arm
|
|
||||||
platform:
|
|
||||||
architecture: arm
|
|
||||||
os: linux
|
|
||||||
-
|
|
||||||
image: plugins/gitea-release:{{#if build.tag}}{{trimPrefix build.tag "v"}}-{{/if}}windows-amd64
|
|
||||||
platform:
|
|
||||||
architecture: amd64
|
|
||||||
os: windows
|
|
205
pipeline.libsonnet
Normal file
205
pipeline.libsonnet
Normal file
@ -0,0 +1,205 @@
|
|||||||
|
local windows_pipe = '\\\\\\\\.\\\\pipe\\\\docker_engine';
|
||||||
|
local windows_pipe_volume = 'docker_pipe';
|
||||||
|
local test_pipeline_name = 'testing';
|
||||||
|
|
||||||
|
local windows(os) = os == 'windows';
|
||||||
|
|
||||||
|
local golang_image(os, version) =
|
||||||
|
'golang:' + '1.11' + if windows(os) then '-windowsservercore-' + version else '';
|
||||||
|
|
||||||
|
{
|
||||||
|
test(os='linux', arch='amd64', version='')::
|
||||||
|
local is_windows = windows(os);
|
||||||
|
local golang = golang_image(os, version);
|
||||||
|
local volumes = if is_windows then [{name: 'gopath', path: 'C:\\\\gopath'}] else [{name: 'gopath', path: '/go',}];
|
||||||
|
{
|
||||||
|
kind: 'pipeline',
|
||||||
|
name: test_pipeline_name,
|
||||||
|
platform: {
|
||||||
|
os: os,
|
||||||
|
arch: arch,
|
||||||
|
version: if std.length(version) > 0 then version,
|
||||||
|
},
|
||||||
|
steps: [
|
||||||
|
{
|
||||||
|
name: 'vet',
|
||||||
|
image: golang,
|
||||||
|
pull: 'always',
|
||||||
|
environment: {
|
||||||
|
GO111MODULE: 'on',
|
||||||
|
},
|
||||||
|
commands: [
|
||||||
|
'go vet ./...',
|
||||||
|
],
|
||||||
|
volumes: volumes,
|
||||||
|
},
|
||||||
|
{
|
||||||
|
name: 'test',
|
||||||
|
image: golang,
|
||||||
|
pull: 'always',
|
||||||
|
environment: {
|
||||||
|
GO111MODULE: 'on',
|
||||||
|
},
|
||||||
|
commands: [
|
||||||
|
'go test -cover ./...',
|
||||||
|
],
|
||||||
|
volumes: volumes,
|
||||||
|
},
|
||||||
|
],
|
||||||
|
trigger: {
|
||||||
|
ref: [
|
||||||
|
'refs/heads/master',
|
||||||
|
'refs/tags/**',
|
||||||
|
'refs/pull/**',
|
||||||
|
],
|
||||||
|
},
|
||||||
|
volumes: [{name: 'gopath', temp: {}}]
|
||||||
|
},
|
||||||
|
|
||||||
|
build(name, os='linux', arch='amd64', version='')::
|
||||||
|
local is_windows = windows(os);
|
||||||
|
local tag = if is_windows then os + '-' + version else os + '-' + arch;
|
||||||
|
local file_suffix = std.strReplace(tag, '-', '.');
|
||||||
|
local volumes = if is_windows then [{ name: windows_pipe_volume, path: windows_pipe }] else [];
|
||||||
|
local golang = golang_image(os, version);
|
||||||
|
local plugin_repo = 'plugins/' + std.splitLimit(name, '-', 1)[1];
|
||||||
|
local extension = if is_windows then '.exe' else '';
|
||||||
|
{
|
||||||
|
kind: 'pipeline',
|
||||||
|
name: tag,
|
||||||
|
platform: {
|
||||||
|
os: os,
|
||||||
|
arch: arch,
|
||||||
|
version: if std.length(version) > 0 then version,
|
||||||
|
},
|
||||||
|
steps: [
|
||||||
|
{
|
||||||
|
name: 'build-push',
|
||||||
|
image: golang,
|
||||||
|
pull: 'always',
|
||||||
|
environment: {
|
||||||
|
CGO_ENABLED: '0',
|
||||||
|
GO111MODULE: 'on',
|
||||||
|
},
|
||||||
|
commands: [
|
||||||
|
'go build -v -ldflags "-X main.version=${DRONE_COMMIT_SHA:0:8}" -a -tags netgo -o release/' + os + '/' + arch + '/' + name + extension,
|
||||||
|
],
|
||||||
|
when: {
|
||||||
|
event: {
|
||||||
|
exclude: ['tag'],
|
||||||
|
},
|
||||||
|
},
|
||||||
|
},
|
||||||
|
{
|
||||||
|
name: 'build-tag',
|
||||||
|
image: golang,
|
||||||
|
pull: 'always',
|
||||||
|
environment: {
|
||||||
|
CGO_ENABLED: '0',
|
||||||
|
GO111MODULE: 'on',
|
||||||
|
},
|
||||||
|
commands: [
|
||||||
|
'go build -v -ldflags "-X main.version=${DRONE_TAG##v}" -a -tags netgo -o release/' + os + '/' + arch + '/' + name + extension,
|
||||||
|
],
|
||||||
|
when: {
|
||||||
|
event: ['tag'],
|
||||||
|
},
|
||||||
|
},
|
||||||
|
{
|
||||||
|
name: 'executable',
|
||||||
|
image: golang,
|
||||||
|
pull: 'always',
|
||||||
|
commands: [
|
||||||
|
'./release/' + os + '/' + arch + '/' + name + extension + ' --help',
|
||||||
|
],
|
||||||
|
},
|
||||||
|
{
|
||||||
|
name: 'dryrun',
|
||||||
|
image: 'plugins/docker:' + tag,
|
||||||
|
pull: 'always',
|
||||||
|
settings: {
|
||||||
|
dry_run: true,
|
||||||
|
tags: tag,
|
||||||
|
dockerfile: 'docker/Dockerfile.' + file_suffix,
|
||||||
|
daemon_off: if is_windows then 'true' else 'false',
|
||||||
|
repo: plugin_repo,
|
||||||
|
username: { from_secret: 'docker_username' },
|
||||||
|
password: { from_secret: 'docker_password' },
|
||||||
|
},
|
||||||
|
volumes: if std.length(volumes) > 0 then volumes,
|
||||||
|
when: {
|
||||||
|
event: ['pull_request'],
|
||||||
|
},
|
||||||
|
},
|
||||||
|
{
|
||||||
|
name: 'publish',
|
||||||
|
image: 'plugins/docker:' + tag,
|
||||||
|
pull: 'always',
|
||||||
|
settings: {
|
||||||
|
auto_tag: true,
|
||||||
|
auto_tag_suffix: tag,
|
||||||
|
daemon_off: if is_windows then 'true' else 'false',
|
||||||
|
dockerfile: 'docker/Dockerfile.' + file_suffix,
|
||||||
|
repo: plugin_repo,
|
||||||
|
username: { from_secret: 'docker_username' },
|
||||||
|
password: { from_secret: 'docker_password' },
|
||||||
|
},
|
||||||
|
volumes: if std.length(volumes) > 0 then volumes,
|
||||||
|
when: {
|
||||||
|
event: {
|
||||||
|
exclude: ['pull_request'],
|
||||||
|
},
|
||||||
|
},
|
||||||
|
},
|
||||||
|
],
|
||||||
|
trigger: {
|
||||||
|
ref: [
|
||||||
|
'refs/heads/master',
|
||||||
|
'refs/tags/**',
|
||||||
|
'refs/pull/**',
|
||||||
|
],
|
||||||
|
},
|
||||||
|
depends_on: [test_pipeline_name],
|
||||||
|
volumes: if is_windows then [{ name: windows_pipe_volume, host: { path: windows_pipe } }],
|
||||||
|
},
|
||||||
|
|
||||||
|
notifications(os='linux', arch='amd64', version='', depends_on=[])::
|
||||||
|
{
|
||||||
|
kind: 'pipeline',
|
||||||
|
name: 'notifications',
|
||||||
|
platform: {
|
||||||
|
os: os,
|
||||||
|
arch: arch,
|
||||||
|
version: if std.length(version) > 0 then version,
|
||||||
|
},
|
||||||
|
steps: [
|
||||||
|
{
|
||||||
|
name: 'manifest',
|
||||||
|
image: 'plugins/manifest',
|
||||||
|
pull: 'always',
|
||||||
|
settings: {
|
||||||
|
username: { from_secret: 'docker_username' },
|
||||||
|
password: { from_secret: 'docker_password' },
|
||||||
|
spec: 'docker/manifest.tmpl',
|
||||||
|
ignore_missing: true,
|
||||||
|
auto_tag: true,
|
||||||
|
},
|
||||||
|
},
|
||||||
|
{
|
||||||
|
name: 'microbadger',
|
||||||
|
image: 'plugins/webhook',
|
||||||
|
pull: 'always',
|
||||||
|
settings: {
|
||||||
|
urls: { from_secret: 'microbadger_url' },
|
||||||
|
},
|
||||||
|
},
|
||||||
|
],
|
||||||
|
trigger: {
|
||||||
|
ref: [
|
||||||
|
'refs/heads/master',
|
||||||
|
'refs/tags/**',
|
||||||
|
],
|
||||||
|
},
|
||||||
|
depends_on: depends_on,
|
||||||
|
},
|
||||||
|
}
|
16
plugin.go
16
plugin.go
@ -15,8 +15,9 @@ import (
|
|||||||
|
|
||||||
type (
|
type (
|
||||||
Repo struct {
|
Repo struct {
|
||||||
Owner string
|
Owner string
|
||||||
Name string
|
Name string
|
||||||
|
Branch string
|
||||||
}
|
}
|
||||||
|
|
||||||
Build struct {
|
Build struct {
|
||||||
@ -53,10 +54,6 @@ func (p Plugin) Exec() error {
|
|||||||
files []string
|
files []string
|
||||||
)
|
)
|
||||||
|
|
||||||
if p.Build.Event != "tag" {
|
|
||||||
return fmt.Errorf("The Gitea Release plugin is only available for tags")
|
|
||||||
}
|
|
||||||
|
|
||||||
if p.Config.APIKey == "" {
|
if p.Config.APIKey == "" {
|
||||||
return fmt.Errorf("You must provide an API key")
|
return fmt.Errorf("You must provide an API key")
|
||||||
}
|
}
|
||||||
@ -124,11 +121,16 @@ func (p Plugin) Exec() error {
|
|||||||
client.SetHTTPClient(insecureClient)
|
client.SetHTTPClient(insecureClient)
|
||||||
}
|
}
|
||||||
|
|
||||||
|
tag := p.Repo.Branch
|
||||||
|
if p.Build.Event == "tag" {
|
||||||
|
tag = strings.TrimPrefix(p.Commit.Ref, "refs/tags/")
|
||||||
|
}
|
||||||
|
|
||||||
rc := releaseClient{
|
rc := releaseClient{
|
||||||
Client: client,
|
Client: client,
|
||||||
Owner: p.Repo.Owner,
|
Owner: p.Repo.Owner,
|
||||||
Repo: p.Repo.Name,
|
Repo: p.Repo.Name,
|
||||||
Tag: strings.TrimPrefix(p.Commit.Ref, "refs/tags/"),
|
Tag: tag,
|
||||||
Draft: p.Config.Draft,
|
Draft: p.Config.Draft,
|
||||||
Prerelease: p.Config.PreRelease,
|
Prerelease: p.Config.PreRelease,
|
||||||
FileExists: p.Config.FileExists,
|
FileExists: p.Config.FileExists,
|
||||||
|
@ -1,13 +0,0 @@
|
|||||||
{
|
|
||||||
"extends": [
|
|
||||||
"config:base"
|
|
||||||
],
|
|
||||||
"docker": {
|
|
||||||
"fileMatch": [
|
|
||||||
"/docker/Dockerfile"
|
|
||||||
]
|
|
||||||
},
|
|
||||||
"labels": [
|
|
||||||
"renovate"
|
|
||||||
]
|
|
||||||
}
|
|
Loading…
Reference in New Issue
Block a user