create util container
This commit is contained in:
commit
cc1c5829de
75
.woodpecker.yml
Normal file
75
.woodpecker.yml
Normal file
@ -0,0 +1,75 @@
|
|||||||
|
variables:
|
||||||
|
&vars
|
||||||
|
- REGISTRY=code.balsillie.net
|
||||||
|
- REGISTRY_USER=michael
|
||||||
|
- SHOUTRRR_VERSION=SHOUTRRR_VERSION=v0.6.1
|
||||||
|
- DOCKERFILE=Dockerfile
|
||||||
|
- CONTEXT=.
|
||||||
|
- MATRIX_HOST=matrix.balsillie.net
|
||||||
|
- MATRIX_PORT=443
|
||||||
|
- MATRIX_ROOM=!HdSXmuHcBMaYExEfkh:balsillie.net
|
||||||
|
|
||||||
|
workspace:
|
||||||
|
base: /git
|
||||||
|
path: pipeline
|
||||||
|
|
||||||
|
clone:
|
||||||
|
git:
|
||||||
|
image: woodpeckerci/plugin-git
|
||||||
|
|
||||||
|
pipeline:
|
||||||
|
|
||||||
|
docker-build:
|
||||||
|
image: docker:latest
|
||||||
|
when:
|
||||||
|
- event: tag
|
||||||
|
volumes:
|
||||||
|
- /var/run/docker.sock:/var/run/docker.sock
|
||||||
|
environment:
|
||||||
|
*vars
|
||||||
|
secrets:
|
||||||
|
- source: REGISTRY_PASSWORD
|
||||||
|
target: REGISTRY_PASSWORD
|
||||||
|
commands:
|
||||||
|
- echo $REGISTRY_PASSWORD | docker login $REGISTRY -u $REGISTRY_USER --password-stdin
|
||||||
|
- docker build
|
||||||
|
-t $REGISTRY/${CI_REPO}:${CI_COMMIT_TAG}
|
||||||
|
-t $REGISTRY/${CI_REPO}:$(date +%F_%H-%M)
|
||||||
|
-t $REGISTRY/${CI_REPO}:latest
|
||||||
|
--pull
|
||||||
|
--build-arg $${SHOUTRRR_VERSION}
|
||||||
|
-f $${DOCKERFILE}
|
||||||
|
$${CONTEXT}
|
||||||
|
- docker push -a $REGISTRY/${CI_REPO}
|
||||||
|
|
||||||
|
notify-matrix-success:
|
||||||
|
image: code.balsillie.net/containers/woodpecker-util
|
||||||
|
pull: false
|
||||||
|
when:
|
||||||
|
- event: tag
|
||||||
|
status: [ success ]
|
||||||
|
environment:
|
||||||
|
*vars
|
||||||
|
secrets:
|
||||||
|
- source: MATRIX_ACCESS_TOKEN
|
||||||
|
target: MATRIX_ACCESS_TOKEN
|
||||||
|
commands:
|
||||||
|
- shoutrrr send
|
||||||
|
--url matrix://$${MATRIX_ACCESS_TOKEN}@$${MATRIX_HOST}:$${MATRIX_PORT}/?rooms=$${MATRIX_ROOM}
|
||||||
|
--message "New image build of ${CI_REPO}, ${CI_COMMIT_TAG}, has been completed and pushed."
|
||||||
|
|
||||||
|
notify-matrix-failure:
|
||||||
|
image: code.balsillie.net/containers/woodpecker-util
|
||||||
|
pull: false
|
||||||
|
when:
|
||||||
|
- event: tag
|
||||||
|
status: [ failure ]
|
||||||
|
environment:
|
||||||
|
*vars
|
||||||
|
secrets:
|
||||||
|
- source: MATRIX_ACCESS_TOKEN
|
||||||
|
target: MATRIX_ACCESS_TOKEN
|
||||||
|
commands:
|
||||||
|
- shoutrrr send
|
||||||
|
--url matrix://$${MATRIX_ACCESS_TOKEN}@$${MATRIX_HOST}:$${MATRIX_PORT}/?rooms=$${MATRIX_ROOM}
|
||||||
|
--message "New image build of ${CI_REPO}, ${CI_COMMIT_TAG}, has failed."
|
17
Dockerfile
Normal file
17
Dockerfile
Normal file
@ -0,0 +1,17 @@
|
|||||||
|
ARG SHOUTRRR_VERSION=v0.6.1
|
||||||
|
FROM golang:bullseye AS builder
|
||||||
|
RUN git clone https://github.com/containrrr/shoutrrr.git shoutrrr \
|
||||||
|
cd ./shoutrrr \
|
||||||
|
git checkout ${SHOUTRRR_VERSION} \
|
||||||
|
go build -o /output ./shoutrrr
|
||||||
|
|
||||||
|
FROM debian:11-slim
|
||||||
|
RUN apt-get update && \
|
||||||
|
apt-get install -y bash curl jq ca-certificates && \
|
||||||
|
rm -rf /var/lib/apt/lists/*
|
||||||
|
|
||||||
|
RUN ln -sf /bin/bash /bin/sh
|
||||||
|
WORKDIR /root
|
||||||
|
COPY --from=builder /output ./shoutrrr
|
||||||
|
RUN chmod +x /root/shoutrrr/shoutrrr && \
|
||||||
|
ln -sf /root/shoutrrr/shoutrrr /usr/bin/shoutrrr
|
12
README.md
Normal file
12
README.md
Normal file
@ -0,0 +1,12 @@
|
|||||||
|
[![status-badge](https://pipeline.balsillie.net/api/badges/containers/woodpecker-util/status.svg)](https://pipeline.balsillie.net/containers/woodpecker-util)
|
||||||
|
|
||||||
|
Utility container for use in Woodpecker CI builds.
|
||||||
|
|
||||||
|
Debian:11-slim base with the following additional packchangesages:
|
||||||
|
|
||||||
|
- Default to BASH shell.
|
||||||
|
- shoutrrr installed from source
|
||||||
|
- Packages installed from repo:
|
||||||
|
- curl
|
||||||
|
- jq
|
||||||
|
- ca-certificates
|
Loading…
Reference in New Issue
Block a user