upend/.woodpecker.yml
Tomáš Mládek 42ab70fd07 ci: switch to Earthly
Squashed commit of the following:

commit 06baa23fc8
Author: Tomáš Mládek <t@mldk.cz>
Date:   Wed Aug 23 11:10:19 2023 +0200

    ci, fix: forgot push

commit 6494be49d2
Author: Tomáš Mládek <t@mldk.cz>
Date:   Wed Aug 23 11:01:14 2023 +0200

    fix, ci: docker tag arg

commit 38682ba930
Author: Tomáš Mládek <t@mldk.cz>
Date:   Wed Aug 23 10:54:45 2023 +0200

    ci: parallelize push steps

commit 5eeab18aa0
Author: Tomáš Mládek <t@mldk.cz>
Date:   Wed Aug 23 10:52:37 2023 +0200

    ci, fix: docker login

commit ce10d0d04a
Author: Tomáš Mládek <t@mldk.cz>
Date:   Wed Aug 23 10:41:52 2023 +0200

    ci: remove earthly verbose

commit ff9b842968
Author: Tomáš Mládek <t@mldk.cz>
Date:   Wed Aug 23 10:41:23 2023 +0200

    ci, fix: typo

commit df80ee0610
Author: Tomáš Mládek <t@mldk.cz>
Date:   Wed Aug 23 10:06:47 2023 +0200

    ci, refactor: better step names

commit 80093f8964
Author: Tomáš Mládek <t@mldk.cz>
Date:   Wed Aug 23 10:05:03 2023 +0200

    ci, fix: earthly config for publish:appimage step

commit 650824df99
Author: Tomáš Mládek <t@mldk.cz>
Date:   Wed Aug 23 10:04:50 2023 +0200

    ci, refactor: only explicitly copy AppImages in sign target

commit 3b53e2dc64
Author: Tomáš Mládek <t@mldk.cz>
Date:   Wed Aug 23 08:01:43 2023 +0200

    ci: EARTHLY_VERBOSE=1

commit cec95ea29a
Author: Tomáš Mládek <t@mldk.cz>
Date:   Wed Aug 23 07:10:09 2023 +0200

    ci: earthly bootstrap after conf

commit 7afe653d57
Author: Tomáš Mládek <t@mldk.cz>
Date:   Wed Aug 23 07:04:08 2023 +0200

    ci, fix: remove ssh_key secret

commit b549d891ed
Author: Tomáš Mládek <t@mldk.cz>
Date:   Tue Aug 22 22:02:01 2023 +0200

    ci, fix: missing gpg-agent

commit 47938c7147
Author: Tomáš Mládek <t@mldk.cz>
Date:   Tue Aug 22 20:55:15 2023 +0200

    ci, fix: unify earthly config

commit 7b89ea7ef4
Author: Tomáš Mládek <t@mldk.cz>
Date:   Tue Aug 22 19:59:37 2023 +0200

    ci: publishing docker, appimage, nightlies

commit f4f94d9864
Author: Tomáš Mládek <t@mldk.cz>
Date:   Tue Aug 22 18:19:00 2023 +0200

    ci: add lint & test step

commit be180ed59b
Author: Tomáš Mládek <t@mldk.cz>
Date:   Mon Aug 21 16:13:03 2023 +0200

    ci, wip: earthly integration

commit 39db638cbd
Author: Tomáš Mládek <t@mldk.cz>
Date:   Mon Aug 21 16:12:21 2023 +0200

    ci: use `upend --version` for AppImage, move get_version.sh logic to cli

commit 5188336c7e
Author: Tomáš Mládek <t@mldk.cz>
Date:   Mon Aug 21 12:30:47 2023 +0200

    ci: refix AppImage, switch to appimage-builder, build docker

commit 27f7941020
Author: Tomáš Mládek <t@mldk.cz>
Date:   Sat Aug 19 18:55:03 2023 +0200

    wip: remote woodpecker CI config for the time being

commit 53e775b85d
Author: Tomáš Mládek <t@mldk.cz>
Date:   Sat Aug 19 18:47:59 2023 +0200

    wip: delete .env

    it's interpreted by Earthly and I'm not sure it's necessary anyway

commit 26bec32803
Author: Tomáš Mládek <t@mldk.cz>
Date:   Sat Aug 19 18:47:32 2023 +0200

    wip: initial somewhat functional Earthfile
2023-08-23 12:13:24 +02:00

126 lines
3.6 KiB
YAML

pipeline:
lint:
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: [EARTHLY_CONFIGURATION]
commands:
- mkdir ~/.earthly && echo "$EARTHLY_CONFIGURATION" > ~/.earthly/config.yaml
- earthly bootstrap
- earthly +lint
test:
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: [EARTHLY_CONFIGURATION]
commands:
- mkdir ~/.earthly && echo "$EARTHLY_CONFIGURATION" > ~/.earthly/config.yaml
- earthly bootstrap
- earthly +test
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: [EARTHLY_CONFIGURATION, REGISTRY, REGISTRY_USER, REGISTRY_PASSWORD]
commands:
- mkdir ~/.earthly && echo "$EARTHLY_CONFIGURATION" > ~/.earthly/config.yaml
- earthly bootstrap
- earthly +appimage
appimage:save:
group: push
image: woodpeckerci/plugin-s3
settings:
endpoint:
from_secret: S3_ENDPOINT
access_key:
from_secret: S3_ACCESS_KEY
secret_key:
from_secret: S3_SECRET_KEY
bucket: upend-ci-packages
path_style: true
region: anabasis
source: "dist/*.AppImage"
target: /packages
secrets: [S3_ENDPOINT, S3_ACCESS_KEY, S3_SECRET_KEY]
appimage:publish:nightly:
group: push
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:
[
EARTHLY_CONFIGURATION,
GPG_SIGN_KEY,
SSH_CONFIG,
SSH_UPLOAD_KEY,
SSH_KNOWN_HOSTS,
]
commands:
- mkdir ~/.earthly && echo "$EARTHLY_CONFIGURATION" > ~/.earthly/config.yaml
- earthly bootstrap
- earthly --secret GPG_SIGN_KEY --secret SSH_CONFIG --secret SSH_UPLOAD_KEY --secret SSH_KNOWN_HOSTS +deploy-appimage-nightly
docker:nightly:
group: push
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: [EARTHLY_CONFIGURATION, DOCKER_USER, DOCKER_PASSWORD]
commands:
- echo $${DOCKER_PASSWORD}| docker login --username $${DOCKER_USER} --password-stdin
- mkdir ~/.earthly && echo "$EARTHLY_CONFIGURATION" > ~/.earthly/config.yaml
- earthly bootstrap
- earthly --push +docker
docker:release:
group: push
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: [EARTHLY_CONFIGURATION, DOCKER_USER, DOCKER_PASSWORD]
commands:
- echo $${DOCKER_PASSWORD}| docker login --username $${DOCKER_USER} --password-stdin
- mkdir ~/.earthly && echo "$EARTHLY_CONFIGURATION" > ~/.earthly/config.yaml
- earthly bootstrap
- earthly --push +docker --tag=latest
- earthly --push +docker --tag=$CI_COMMIT_TAG
when:
event: [tag]
gitea:release:
group: push
image: woodpeckerci/plugin-gitea-release
settings:
base_url: https://git.thm.place
files:
- "*.AppImage"
- "*.asc"
- webext/web-ext-artifacts/*.zip
checksum: sha512
api_key:
from_secret: woodpecker_api_key
target: main
when:
event: [tag]