initial commit
Some checks failed
ci/woodpecker/push/lint Pipeline was successful
ci/woodpecker/push/build Pipeline failed
ci/woodpecker/push/test unknown status
ci/woodpecker/push/deploy unknown status

This commit is contained in:
Aaron Riedel 2024-10-21 22:09:47 +02:00
commit ef347edac8
Signed by: aaron
GPG key ID: 643004654D40D577
6 changed files with 183 additions and 0 deletions

39
.woodpecker/.build.yaml Normal file
View file

@ -0,0 +1,39 @@
steps:
- name: docker
image: woodpeckerci/plugin-docker-buildx
privileged: true
settings:
registry:
from_secret: REGISTRY_URL
username:
from_secret: REGISTRY_USER
password:
from_secret: REGISTRY_PASS
repo: $${REGISTRY_URL}/${CI_REPO}
tags:
- latest
- ${CI_PIPELINE_NUMBER}
secrets: [ REGISTRY_URL ]
when:
- branch: main
event: [push, manual]
- name: docker-build
image: woodpeckerci/plugin-docker-buildx
privileged: true
settings:
registry:
from_secret: REGISTRY_URL
username:
from_secret: REGISTRY_USER
password:
from_secret: REGISTRY_PASS
repo: ${REGISTRY_URL}/${CI_REPO}
tags:
- testing-${CI_PIPELINE_NUMBER}
secrets: [ REGISTRY_URL ]
when:
- branch:
exclude: main
event: [push, manual]
depends_on:
- lint

115
.woodpecker/.deploy.yaml Normal file
View file

@ -0,0 +1,115 @@
skip_clone: true
steps:
- name: bump tag in deployment-repo (prod)
image: git.ar21.de/aaron/kustomize-ci
commands:
- git clone https://git.ar21.de/aaron/deploymentrepo.git deployment-repo
- cd deployment-repo/testapp/overlays/prod
- kustomize edit set image git.ar21.de/aaron/testapp=git.ar21.de/aaron/testapp:${CI_PIPELINE_NUMBER}
when:
- branch: main
event: push
- name: bump tag in deployment-repo (testing)
image: git.ar21.de/aaron/kustomize-ci
commands:
- git clone https://git.ar21.de/aaron/deploymentrepo.git deployment-repo
- cd deployment-repo/testapp/overlays/testing
- kustomize edit set image git.ar21.de/aaron/testapp=git.ar21.de/aaron/testapp:testing-${CI_PIPELINE_NUMBER}
when:
- branch:
exclude: main
event: push
- name: push new tag to deployment-repo (prod)
image: appleboy/drone-git-push
settings:
branch: "${CI_PIPELINE_NUMBER}_testapp_prod"
remote: ssh://git@git.ar21.de:2222/aaron/deploymentrepo.git
path: deployment-repo
force: false
commit: true
commit_message: "testapp: update image tag to ${CI_PIPELINE_NUMBER} (done automagically via Woodpecker pipeline)"
ssh_key:
from_secret: FORGEJO_SSH_KEY
when:
- branch: main
event: push
- name: push new tag to deployment-repo (staging)
image: appleboy/drone-git-push
settings:
branch: "${CI_PIPELINE_NUMBER}_testapp_staging"
remote: ssh://git@git.ar21.de:2222/aaron/deploymentrepo.git
path: deployment-repo
force: false
commit: true
commit_message: "testapp STAGING: update image tag to staging-${CI_PIPELINE_NUMBER} (done automagically via Woodpecker pipeline)"
ssh_key:
from_secret: FORGEJO_SSH_KEY
when:
- branch:
exclude: main
event: push
- name: create pull request (prod)
image: git.ar21.de/tom/push-message-randomizer:latest
pull: true
settings:
gitea_address: https://git.ar21.de
gitea_token:
from_secret: FORGEJO_API
owner: ${CI_REPO_OWNER}
repo: deploymentrepo
branch: "${CI_PIPELINE_NUMBER}_testapp_prod"
base_branch: main
pr_title: "TESTAPP: update image tag to ${CI_PIPELINE_NUMBER}"
pr_body: |
### testapp image update
{- random-pr-message -}
### Configuration
📅 **Schedule**: Branch creation - At any time, Automerge - At any time.
🚦 **Automerge**: Enabled.
skip_on_missing_branch: true
close_pr_if_empty: true
delete_branch_if_pr_empty: true
merge_when_checks_succeed: true
delete_branch_after_merge: true
when:
- branch: main
event: push
- name: create pull request (staging)
image: git.ar21.de/tom/push-message-randomizer:latest
pull: true
settings:
gitea_address: https://git.ar21.de
gitea_token:
from_secret: FORGEJO_API
owner: ${CI_REPO_OWNER}
repo: deploymentrepo
branch: "${CI_PIPELINE_NUMBER}_testapp_staging"
base_branch: main
pr_title: "TESTAPP STAGING: update image tag to ${CI_PIPELINE_NUMBER}"
pr_body: |
### testapp image update
{- random-pr-message -}
### Configuration
📅 **Schedule**: Branch creation - At any time, Automerge - At any time.
🚦 **Automerge**: Enabled.
skip_on_missing_branch: true
close_pr_if_empty: true
delete_branch_if_pr_empty: true
merge_when_checks_succeed: true
delete_branch_after_merge: true
when:
- branch:
exclude: main
event: push
depends_on:
- lint
- build
- test

7
.woodpecker/.lint.yaml Normal file
View file

@ -0,0 +1,7 @@
labels:
backend: docker
steps:
- name: Lint Dockerfile
image: hadolint/hadolint:latest-alpine
commands:
- hadolint -t error Dockerfile

20
.woodpecker/.test.yaml Normal file
View file

@ -0,0 +1,20 @@
skip_clone: true
steps:
- name: Test image (prod)
image: ${REGISTRY_URL}/${CI_REPO}:${CI_PIPELINE_NUMBER}
commands:
- echo test
when:
- branch: main
event: [push, manual]
- name: Test image
image: ${REGISTRY_URL}/${CI_REPO}:testing-${CI_PIPELINE_NUMBER}
commands:
- echo test
when:
- branch:
exclude: main
event: [push, manual]
depends_on:
- lint
- build

2
Dockerfile Normal file
View file

@ -0,0 +1,2 @@
FROM alpine:latest
RUN echo "Building"

0
README.md Normal file
View file