migrated to woodpecker
All checks were successful
continuous-integration/woodpecker the build was successful

This commit is contained in:
Samuel Philipp 2021-11-05 00:24:12 +01:00
parent 8c1ebb5f98
commit b72e26ff84
4 changed files with 31 additions and 154 deletions

View file

@ -1,124 +0,0 @@
kind: pipeline
type: docker
name: linux-amd64
platform:
os: linux
arch: amd64
steps:
- name: docker
image: plugins/docker
settings:
purge: true
no_cache: true
auto_tag: true
auto_tag_suffix: linux-amd64
repo: spcodes/morty
build_args:
- ARCH=amd64
username:
from_secret: USERNAME
password:
from_secret: PASSWORD
trigger:
branch:
- main
event:
- push
# disable temporarily
#---
#kind: pipeline
#type: docker
#name: linux-arm
#
#platform:
# os: linux
# arch: arm
#
#steps:
# - name: docker
# image: plugins/docker
# settings:
# purge: true
# no_cache: true
# auto_tag: true
# auto_tag_suffix: linux-arm
# repo: spcodes/morty
# build_args:
# - ARCH=arm
# username:
# from_secret: USERNAME
# password:
# from_secret: PASSWORD
#
#trigger:
# branch:
# - main
# event:
# - push
---
kind: pipeline
type: docker
name: linux-arm64
platform:
os: linux
arch: arm64
steps:
- name: docker
image: plugins/docker
settings:
purge: true
no_cache: true
auto_tag: true
auto_tag_suffix: linux-arm64
repo: spcodes/morty
build_args:
- ARCH=arm64
username:
from_secret: USERNAME
password:
from_secret: PASSWORD
trigger:
branch:
- main
event:
- push
---
kind: pipeline
type: docker
name: manifest
steps:
- name: publish-latest
image: plugins/manifest
settings:
ignore_missing: true
target: spcodes/morty
template: spcodes/morty:OS-ARCH
platforms:
- linux/amd64
- linux/arm64
# - linux/arm
username:
from_secret: USERNAME
password:
from_secret: PASSWORD
depends_on:
- linux-amd64
- linux-arm64
# - linux-arm
trigger:
branch:
- main
event:
- push

28
.woodpecker.yml Normal file
View file

@ -0,0 +1,28 @@
pipeline:
docker:
image: plugins/docker
secrets:
- DOCKER_USERNAME
- DOCKER_PASSWORD
repo: spcodes/morty
tags: latest
when:
branch:
- main
event:
- push
cr:
image: plugins/docker
secrets:
- source: CR_USERNAME
target: DOCKER_USERNAME
- source: CR_PASSWORD
target: DOCKER_PASSWORD
registry: cr.sp-codes.de
repo: cr.sp-codes.de/morty
tags: latest
when:
branch:
- main
event:
- push

View file

@ -1,10 +1,5 @@
ARG ARCH
# STEP 1 build executable binary
FROM golang:1.17.1-alpine3.13@sha256:bd3c3710755f637c6ec64b317a22e58f048ddefe622fb03073935ee9073ff99f AS builder-amd64
FROM arm32v7/golang:1.17.1-alpine3.13@sha256:750b25e1c177d21746b2f4eeac941175d44b762fdad0f73b4b51a54ea572fab0 AS builder-arm
FROM arm64v8/golang:1.17.1-alpine3.13@sha256:cef4bfe0462ac7d15bf38c5297d501833c66e0fca1549582c9a02e6e5c11d111 AS builder-arm64
FROM builder-${ARCH} AS builder
FROM golang:1.17.1-alpine3.13@sha256:bd3c3710755f637c6ec64b317a22e58f048ddefe622fb03073935ee9073ff99f AS builder
ENV MORTY_VERSION="f5bff1e285d3f973cacf73318e55175edafd633f"
@ -18,13 +13,10 @@ RUN apk upgrade --no-cache && \
RUN go get -d -v && gofmt -l ./ && go build .
# STEP 2 build the image including only the binary
FROM alpine:3.14.2@sha256:e1c082e3d3c45cccac829840a25941e679c25d438cc8412c2fa221cf1a824e6a AS base-amd64
FROM arm32v7/alpine:3.14.2@sha256:e12ff876f0075740ed3d7bdf788107ae84c1b3dd6dc98b3baea41088aba5236f AS base-arm
FROM arm64v8/alpine:3.14.2@sha256:b06a5cf61b2956088722c4f1b9a6f71dfe95f0b1fe285d44195452b8a1627de7 AS base-arm64
FROM base-${ARCH}
FROM alpine:3.14.2@sha256:e1c082e3d3c45cccac829840a25941e679c25d438cc8412c2fa221cf1a824e6a
RUN apk upgrade --no-cache && \
apk --no-cache add ca-certificates="20191127-r5" && \
apk --no-cache add ca-certificates && \
rm -f /var/cache/apk/* && \
adduser -D -h /usr/local/morty -s /bin/false morty morty

View file

@ -18,28 +18,9 @@
"depNameTemplate": "https://github.com/asciimoo/morty.git",
"versioningTemplate": "git",
"datasourceTemplate": "git-refs"
},
{
"fileMatch": [
"^Dockerfile$"
],
"matchStrings": [
"\\s+(?<depName>[a-z0-9\\-]+?)=\"(?<currentValue>.*?)\""
],
"lookupNameTemplate": "alpine_3_14/{{{depName}}}",
"versioningTemplate": "loose",
"datasourceTemplate": "repology"
}
],
"packageRules": [
{
"datasources": [
"repology"
],
"groupName": [
"base dependencies"
]
},
{
"datasources": [
"docker"