ci: publishing docker, appimage, nightlies
ci/woodpecker/push/woodpecker Pipeline was successful Details

Tomáš Mládek 2023-08-22 19:59:37 +02:00
parent f4f94d9864
commit 7b89ea7ef4
2 changed files with 64 additions and 15 deletions

View File

@ -36,7 +36,7 @@ pipeline:
- earthly config global.disable_log_sharing true
- earthly +appimage
package:push:
appimage:save:
image: woodpeckerci/plugin-s3
settings:
endpoint:
@ -50,9 +50,52 @@ pipeline:
region: anabasis
source: "dist/*.AppImage"
target: /packages
secrets: [S3_ENDPOINT, S3_ACCESS_KEY, S3_SECRET_KEY]
publish:nightly:appimage:
image: earthly/earthly:v0.7.15
volumes:
- /var/run/docker.sock:/var/run/docker.sock
environment:
- FORCE_COLOR=1
- EARTHLY_EXEC_CMD="/bin/sh"
secrets: [GPG_SIGN_KEY, SSH_CONFIG, SSH_UPLOAD_KEY, SSH_KNOWN_HOSTS]
commands:
- earthly bootstrap
- earthly config global.disable_log_sharing true
- earthly --secret GPG_SIGN_KEY --secret SSH_CONFIG --secret SSH_UPLOAD_KEY --secret SSH_KNOWN_HOSTS +deploy-appimage-nightly
publish:nightly:docker:
image: earthly/earthly:v0.7.15
volumes:
- /var/run/docker.sock:/var/run/docker.sock
environment:
- FORCE_COLOR=1
- EARTHLY_EXEC_CMD="/bin/sh"
secrets: [DOCKER_USER, DOCKER_PASSWORD]
commands:
- echo $${DOCKER_USER}| docker login --username $${DOCKER_USER} --password-stdin
- earthly bootstrap
- earthly config global.disable_log_sharing true
- earthly --push +docker
publish:docker:
image: earthly/earthly:v0.7.15
volumes:
- /var/run/docker.sock:/var/run/docker.sock
environment:
- FORCE_COLOR=1
- EARTHLY_EXEC_CMD="/bin/sh"
secrets: [DOCKER_USER, DOCKER_PASSWORD]
commands:
- echo $${DOCKER_USER}| docker login --username $${DOCKER_USER} --password-stdin
- earthly bootstrap
- earthly config global.disable_log_sharing true
- earthly --push +docker --tag=latest
- earthly --push +docker --tag=$CI_COMMIT_TAG
when:
event: [tag]
publish:release:
image: woodpeckerci/plugin-gitea-release
settings:

View File

@ -14,7 +14,7 @@ appimage:
RUN pipx run appimage-builder
SAVE ARTIFACT UpEnd* AS LOCAL dist/
upend-docker:
docker:
FROM debian:bookworm
RUN apt-get update && \
apt-get -y install libssl3 ffmpeg wget && \
@ -26,12 +26,8 @@ upend-docker:
COPY +upend-cli/bin /usr/bin/upend
COPY --dir +webui/dist /usr/share/upend/webui
CMD ["/usr/bin/upend"]
SAVE IMAGE upend/upend upend
get-version:
LOCALLY
RUN mkdir -p tmp && ./build/get_version.sh | tee tmp/version.txt
SAVE ARTIFACT tmp/version.txt version.txt
ARG tag=trunk
SAVE IMAGE upend/upend:$target
upend-cli:
FROM +base-rust
@ -108,14 +104,24 @@ test-backend:
RUN cargo fetch
RUN cargo nextest run --workspace
appimage-signed:
FROM alpine
RUN apk add git gpg openssh-client
RUN sh -c "$(curl --location https://taskfile.dev/install.sh)" -- -d -b /usr/local/bin
COPY +appimage/* dist/
RUN ls -la dist
RUN apk add gpg
RUN --secret GPG_SIGN_KEY echo "$GPG_SIGN_KEY" | gpg --import
COPY +appimage/* .
RUN gpg --clear-sign *.AppImage
SAVE ARTIFACT *.asc
deploy-appimage-nightly:
FROM +appimage-signed
RUN apk add openssh-client
RUN --secret SSH_KEY --secret SSH_CONFIG --secret SSH_UPLOAD_KEY --secret SSH_KNOWN HOSTS \
mkdir -p $HOME/.ssh && \
echo "$SSH_CONFIG" > $HOME/.ssh/config && \
echo "$SSH_UPLOAD_KEY" > $HOME/.ssh/id_rsa && \
echo "$SSH_KNOWN_HOSTS" > $HOME/.ssh/known_hosts && \
chmod 600 $HOME/.ssh/*
RUN scp -v *.AppImage *.asc mainsite:releases/nightly
base-rust:
FROM rust:bookworm