Compare commits

...

39 Commits

Author SHA1 Message Date
c75d6e6c6a * MOD: change docker base image to alpine:latest
Some checks failed
Build and push / check and test (push) Successful in 10s
Build and push / build_and_push (push) Failing after 1m9s
Signed-off-by: Uwe Hermann <uh@uleenucks.de>
2025-01-09 09:12:49 +01:00
5e2893c81e * ADD: metabase docker image
All checks were successful
Build and push / check and test (push) Successful in 9s
Build and push / build_and_push (push) Successful in 6m36s
Signed-off-by: Uwe Hermann <uh@uleenucks.de>
2024-02-08 20:47:59 +01:00
99dcaecc0e Update .gitea/workflows/test_build_and_push.yaml
All checks were successful
Build and push / check and test (push) Successful in 6s
Build and push / build_and_push (push) Successful in 2m28s
2024-02-08 19:03:57 +01:00
8dff38ab9c Update .gitea/workflows/test_build_and_push.yaml
All checks were successful
Build and push / check and test (push) Successful in 7s
Build and push / build_and_push (push) Successful in 2m25s
2024-02-06 22:17:19 +01:00
a33d3dc23a Update .gitea/workflows/test_build_and_push.yaml
Signed-off-by: uleenucks <uwe.hermann@uleenucks.de>
2024-02-06 22:15:25 +01:00
23db79b9fd Update .gitea/workflows/test_build_and_push.yaml
Some checks failed
Build and push / check and test (push) Successful in 7s
Build and push / build_and_push (push) Has been cancelled
2024-02-01 21:57:23 +01:00
89ba33b593 Update .gitea/workflows/test_build_and_push.yaml
Some checks failed
Build and push / check and test (push) Successful in 6s
Build and push / build_and_push (push) Has been cancelled
2024-02-01 21:55:50 +01:00
f960c0ffd4 Update .gitea/workflows/test_build_and_push.yaml
Some checks failed
Build and push / check and test (push) Successful in 6s
Build and push / build_and_push (push) Failing after 5s
2024-02-01 21:54:35 +01:00
a1155421d2 * MOD: workflow tests
All checks were successful
Build and push / check and test (push) Successful in 7s
Build and push / build_and_push (push) Successful in 2m39s
Signed-off-by: Uwe Hermann <uh@uleenucks.de>
2024-01-21 17:34:56 +01:00
77283a2077 * MOD: add schedule
All checks were successful
Build and push / check and test (push) Successful in 6s
Build and push / build_and_push (push) Successful in 2m34s
Signed-off-by: Uwe Hermann <uh@uleenucks.de>
2024-01-21 14:32:17 +01:00
efc362cf78 * MOD: add schedule
All checks were successful
Build and push / check and test (push) Successful in 6s
Build and push / build_and_push (push) Successful in 2m31s
Signed-off-by: Uwe Hermann <uh@uleenucks.de>
2024-01-21 14:25:28 +01:00
5a283b8e19 * MOD: workflow tests
Some checks failed
Build and push / check and test (push) Successful in 6s
Build and push / build_and_push (push) Has been cancelled
Signed-off-by: Uwe Hermann <uh@uleenucks.de>
2024-01-21 14:23:29 +01:00
e655989d33 * MOD: add schedule
All checks were successful
Build and push / check and test (push) Successful in 6s
Build and push / build_and_push (push) Successful in 2m28s
Signed-off-by: Uwe Hermann <uh@uleenucks.de>
2024-01-21 14:01:27 +01:00
9504b924ae * MOD: workflow tests
All checks were successful
Build and push / check and test (push) Successful in 6s
Build and push / build_and_push (push) Successful in 2m40s
Signed-off-by: Uwe Hermann <uh@uleenucks.de>
2024-01-21 13:55:55 +01:00
ae4c6b8a85 * MOD: workflow tests
All checks were successful
Build and push / build_and_push (push) Successful in 28s
Signed-off-by: Uwe Hermann <uh@uleenucks.de>
2024-01-21 13:49:14 +01:00
dcac760df7 * MOD: workflow tests
Some checks failed
Build and push / build_and_push (push) Failing after 16s
Signed-off-by: Uwe Hermann <uh@uleenucks.de>
2024-01-21 13:48:36 +01:00
6ce1991464 * MOD: workflow tests
Signed-off-by: Uwe Hermann <uh@uleenucks.de>
2024-01-21 13:48:07 +01:00
f63abc247d * MOD: workflow tests
Some checks failed
Build and push / build_and_push (push) Failing after 2s
Signed-off-by: Uwe Hermann <uh@uleenucks.de>
2024-01-21 13:34:35 +01:00
1bff9d81f1 * MOD: workflow tests
Some checks failed
Build and push / build_and_push (push) Failing after 2s
Signed-off-by: Uwe Hermann <uh@uleenucks.de>
2024-01-21 13:34:12 +01:00
a09a1e4054 * MOD: workflow tests
Some checks failed
Build and push / check and test (push) Successful in 6s
Build and push / build_and_push (push) Failing after 2s
Signed-off-by: Uwe Hermann <uh@uleenucks.de>
2024-01-21 13:33:14 +01:00
3737ef0ee3 * MOD: workflow tests
Some checks failed
Build and push / check and test (push) Successful in 6s
Build and push / build_and_push (push) Failing after 2s
Signed-off-by: Uwe Hermann <uh@uleenucks.de>
2024-01-21 13:31:42 +01:00
7046ed0d9e * MOD: workflow tests
Some checks failed
Build and push / check and test (push) Successful in 6s
Build and push / build_and_push (push) Failing after 2s
Signed-off-by: Uwe Hermann <uh@uleenucks.de>
2024-01-21 13:31:04 +01:00
02b3cae924 * MOD: workflow tests
Some checks failed
Build and push / check and test (push) Failing after 6s
Build and push / build_and_push (push) Failing after 1s
Signed-off-by: Uwe Hermann <uh@uleenucks.de>
2024-01-21 13:30:28 +01:00
c265e9b41f * MOD: workflow tests
Some checks failed
Build and push / check and test (push) Failing after 8s
Build and push / build_and_push (push) Failing after 2s
Signed-off-by: Uwe Hermann <uh@uleenucks.de>
2024-01-21 13:29:55 +01:00
84b0d50d05 * MOD: workflow tests
Some checks failed
Build and push / check and test (push) Failing after 6s
Build and push / build_and_push (push) Failing after 2s
Signed-off-by: Uwe Hermann <uh@uleenucks.de>
2024-01-21 13:29:04 +01:00
a84d82e431 * MOD: workflow tests
Some checks failed
Build and push / check and test (push) Failing after 6s
Build and push / build_and_push (push) Failing after 2s
Signed-off-by: Uwe Hermann <uh@uleenucks.de>
2024-01-21 13:27:21 +01:00
38c2b5c2f6 * MOD: workflow tests
Some checks failed
Build and push / check and test (push) Failing after 6s
Build and push / build_and_push (push) Failing after 2s
Signed-off-by: Uwe Hermann <uh@uleenucks.de>
2024-01-21 13:25:09 +01:00
b6f1f947b4 * MOD: workflow tests
Some checks failed
Build and push / check and test (push) Successful in 6s
Build and push / build_and_push (push) Failing after 4m7s
Signed-off-by: Uwe Hermann <uh@uleenucks.de>
2024-01-21 10:39:17 +01:00
b8fbe97f77 * MOD: workflow tests
Some checks failed
Build and push / check and test (push) Successful in 6s
Build and push / build_and_push (push) Failing after 5m13s
Signed-off-by: Uwe Hermann <uh@uleenucks.de>
2024-01-21 10:20:14 +01:00
8923acae19 * MOD: workflow tests
Some checks failed
Build and push / check and test (push) Successful in 7s
Build and push / build_and_push (push) Has been cancelled
Signed-off-by: Uwe Hermann <uh@uleenucks.de>
2024-01-21 10:19:46 +01:00
957e4be974 * MOD: workflow tests
All checks were successful
Build and push / test_shellcheck (push) Successful in 6s
Build and push / build_and_push (push) Has been skipped
Signed-off-by: Uwe Hermann <uh@uleenucks.de>
2024-01-21 10:13:54 +01:00
fda895ed93 * MOD: workflow tests
All checks were successful
Build and push / test_shellcheck (push) Successful in 6s
Build and push / build_and_push (push) Has been skipped
Signed-off-by: Uwe Hermann <uh@uleenucks.de>
2024-01-21 10:12:31 +01:00
32de968207 * MOD: workflow tests
Some checks failed
Build and push / test_shellcheck (push) Failing after 6s
Build and push / build_and_push (push) Has been skipped
Signed-off-by: Uwe Hermann <uh@uleenucks.de>
2024-01-21 10:12:04 +01:00
fa5127bbf6 * MOD: workflow tests
Some checks failed
Build and push / test_shellcheck (push) Failing after 6s
Build and push / build_and_push (push) Has been cancelled
Signed-off-by: Uwe Hermann <uh@uleenucks.de>
2024-01-21 10:07:05 +01:00
02bcf1aaac * MOD: workflow tests
Some checks failed
Build and push / test_shellcheck (push) Successful in 6s
Build and push / build_and_push (push) Has been cancelled
Signed-off-by: Uwe Hermann <uh@uleenucks.de>
2024-01-21 09:53:29 +01:00
8c3f5be513 * MOD: workflow tests
Some checks failed
Build and push / build_and_push (push) Has been cancelled
Build and push / tests (push) Has been cancelled
Signed-off-by: Uwe Hermann <uh@uleenucks.de>
2024-01-21 09:51:03 +01:00
85303e709b Merge pull request '* MOD: workflow tests' (#4) from actions_test into main
Some checks failed
Build and push / build_and_push (push) Has been cancelled
Test stage / check and test (push) Has been cancelled
Reviewed-on: #4
2024-01-21 09:46:35 +01:00
114a274da9 Merge branch 'main' into actions_test
All checks were successful
Test stage / check and test (push) Successful in 6s
2024-01-21 09:46:11 +01:00
2c1c026196 Merge pull request '* MOD: workflow' (#3) from actions_test into main
Some checks failed
Build and push / build_and_push (push) Failing after 5m11s
Test stage / check and test (push) Successful in 6s
Reviewed-on: #3
2024-01-21 09:31:09 +01:00
11 changed files with 152 additions and 135 deletions

View File

@@ -1,26 +0,0 @@
---
name: Build and push
on:
push:
branches:
- main
workflow_run:
workflows: ["Test stage"]
branches: [main]
types:
- completed
jobs:
buildpush:
name: build_and_push
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- name: Login to docker
run: mkdir -p $HOME/.docker && cp config.json $HOME/.docker/config.json
- name: Install docker
run: curl -fsSL https://get.docker.com | sh
- name: Install parallel
run: apt install parallel -y
- name: Build docker container
run: ./build-all.sh && exit 0

View File

@@ -1,11 +1,13 @@
---
name: Test stage
on:
- push
push:
branches-ignore:
- main
jobs:
test_shellcheck:
name: check and test
name: Run shellcheck
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4

View File

@@ -0,0 +1,134 @@
---
name: Build and push
on:
schedule:
- cron: '0 3 * * *'
push:
branches:
- 'main'
jobs:
test_shellcheck:
name: check and test
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- name: Install shellcheck
run: apt update && apt install -y shellcheck
- name: test
run: ./shellcheck.sh
buildpush:
name: build_and_push
needs: [tests_shellcheck]
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- name: Kaniko build htop
uses: aevea/action-kaniko@master
with:
image: uleenucks/htop
tag: latest
path: htop
username: ${{ secrets.DOCKERHUB_USERNAME }}
password: ${{ secrets.DOCKERHUB_PASSWORD }}
cache: false
exra_args: --cleanup
- name: Kaniko build lynx
uses: aevea/action-kaniko@master
with:
image: uleenucks/lynx
tag: latest
path: lynx
username: ${{ secrets.DOCKERHUB_USERNAME }}
password: ${{ secrets.DOCKERHUB_PASSWORD }}
cache: false
exra_args: --cleanup
- name: Kaniko build mtr
uses: aevea/action-kaniko@master
with:
image: uleenucks/mtr
tag: latest
path: mtr
username: ${{ secrets.DOCKERHUB_USERNAME }}
password: ${{ secrets.DOCKERHUB_PASSWORD }}
cache: false
exra_args: --cleanup
- name: Kaniko build nmap
uses: aevea/action-kaniko@master
with:
image: uleenucks/nmap
tag: latest
path: nmap
username: ${{ secrets.DOCKERHUB_USERNAME }}
password: ${{ secrets.DOCKERHUB_PASSWORD }}
cache: false
exra_args: --cleanup
- name: Kaniko build postgres-backup
uses: aevea/action-kaniko@master
with:
image: uleenucks/postgres-backup
tag: latest
path: postgres-backup
username: ${{ secrets.DOCKERHUB_USERNAME }}
password: ${{ secrets.DOCKERHUB_PASSWORD }}
cache: false
exra_args: --cleanup
- name: Kaniko build pyweb
uses: aevea/action-kaniko@master
with:
image: uleenucks/pyweb
tag: latest
path: pyweb
username: ${{ secrets.DOCKERHUB_USERNAME }}
password: ${{ secrets.DOCKERHUB_PASSWORD }}
cache: false
exra_args: --cleanup
- name: Kaniko build shellcheck
uses: aevea/action-kaniko@master
with:
image: uleenucks/shellcheck
tag: latest
path: shellcheck
username: ${{ secrets.DOCKERHUB_USERNAME }}
password: ${{ secrets.DOCKERHUB_PASSWORD }}
cache: false
exra_args: --cleanup
- name: Kaniko build traceroute
uses: aevea/action-kaniko@master
with:
image: uleenucks/traceroute
tag: latest
path: traceroute
username: ${{ secrets.DOCKERHUB_USERNAME }}
password: ${{ secrets.DOCKERHUB_PASSWORD }}
cache: false
exra_args: --cleanup
- name: Kaniko build vaultwarden-backup
uses: aevea/action-kaniko@master
with:
image: uleenucks/vaultwarden-backup
tag: latest
path: vaultwarden-backup
username: ${{ secrets.DOCKERHUB_USERNAME }}
password: ${{ secrets.DOCKERHUB_PASSWORD }}
cache: false
exra_args: --cleanup
- name: Kaniko build metabase
uses: aevea/action-kaniko@master
with:
image: uleenucks/metabase
tag: latest
path: metabase
username: ${{ secrets.DOCKERHUB_USERNAME }}
password: ${{ secrets.DOCKERHUB_PASSWORD }}
cache: false
exra_args: --cleanup

View File

@@ -1,101 +0,0 @@
#!/bin/bash
set -e
set -o pipefail
SCRIPT="$(cd "$(dirname "${BASH_SOURCE[0]}")" && pwd)/$(basename "${BASH_SOURCE[0]}")"
REPO_URL="${REPO_URL:-uleenucks}"
JOBS=${JOBS:-4}
DOCKER="$(which docker)"
ERRORS="$(pwd)/errors"
dcleanup(){
"${DOCKER}" rm "$(${DOCKER} ps -aq 2>/dev/null)" 2>/dev/null
"${DOCKER}" rm -v "$(${DOCKER} ps --filter status=exited -q 2>/dev/null)" 2>/dev/null
"${DOCKER}" rmi "$(${DOCKER} images --filter dangling=true -q 2>/dev/null)" 2>/dev/null
}
build_and_push(){
base=$1
suite=$2
build_dir=$3
echo "Building ${REPO_URL}/${base}:${suite} for context ${build_dir}"
docker build --rm --force-rm -t "${REPO_URL}/${base}:${suite}" "${build_dir}" || return 1
# on successful build, push the image
echo " --- "
echo "Successfully built ${base}:${suite} with context ${build_dir}"
echo " --- "
# try push a few times because notary server sometimes returns 401 for
# absolutely no reason
n=0
until [ $n -ge 5 ]; do
docker push --disable-content-trust=false "${REPO_URL}/${base}:${suite}" && break
echo "Try #$n failed... sleeping for 15 seconds"
n=$((n+1))
sleep 15
done
# also push the tag latest for "stable" (chrome), "tools" (wireguard) or "3.5" tags for zookeeper
if [[ "$suite" == "stable" ]] || [[ "$suite" == "3.6" ]] || [[ "$suite" == "tools" ]]; then
docker tag "${REPO_URL}/${base}:${suite}" "${REPO_URL}/${base}:latest"
docker push --disable-content-trust=false "${REPO_URL}/${base}:latest"
fi
}
dofile() {
f=$1
image=${f%Dockerfile}
base=${image%%\/*}
build_dir=$(dirname "$f")
suite=${build_dir##*\/}
if [[ -z "$suite" ]] || [[ "$suite" == "$base" ]]; then
suite=latest
fi
{
$SCRIPT build_and_push "${base}" "${suite}" "${build_dir}"
} || {
# add to errors
echo "${base}:${suite}" >> "$ERRORS"
}
echo
echo
}
main(){
# get the dockerfiles
IFS=$'\n'
mapfile -t files < <(find -L . -iname '*Dockerfile' | sed 's|./||' | sort)
unset IFS
# build all dockerfiles
echo "Running in parallel with ${JOBS} jobs."
parallel --tag --verbose --ungroup -j"${JOBS}" "$SCRIPT" dofile "{1}" ::: "${files[@]}"
if [[ ! -f "$ERRORS" ]]; then
echo "No errors, hooray!"
else
echo "[ERROR] Some images did not build correctly, see below." >&2
echo "These images failed: $(cat "$ERRORS")" >&2
exit 1
fi
}
run(){
args=$*
f=$1
if [[ "$f" == "" ]]; then
main "$args"
else
$args
fi
}
run "$@"
#prescript
dcleanup

View File

@@ -1,4 +1,4 @@
FROM alpine:3.18
FROM alpine:latest
LABEL maintainer.name="Uwe Hermann"\
maintainer.email="uh@uleenucks.de"

View File

@@ -1,6 +1,6 @@
# Run Lynx in a container
#
FROM alpine:3.18
FROM alpine:latest
LABEL maintainer.name="Uwe Hermann"\
maintainer.email="uh@uleenucks.de"

8
metabase/Dockerfile Normal file
View File

@@ -0,0 +1,8 @@
FROM metabase/metabase
LABEL maintainer.name="Uwe Hermann"\
maintainer.email="uh@uleenucks.de"
RUN mkdir /data/ \
&& wget https://crowdsec-statics-assets.s3-eu-west-1.amazonaws.com/metabase_sqlite.zip \
&& unzip metabase_sqlite.zip -d /data/ \
&& rm metabase_sqlite.zip

View File

@@ -1,4 +1,4 @@
FROM alpine:3.18
FROM alpine:latest
LABEL maintainer.name="Uwe Hermann"\
maintainer.email="uh@uleenucks.de"

View File

@@ -1,4 +1,4 @@
FROM alpine:3.18
FROM alpine:latest
LABEL maintainer.name="Uwe Hermann"\
maintainer.email="uh@uleenucks.de"

View File

@@ -1,4 +1,4 @@
FROM alpine:3.18
FROM alpine:latest
LABEL maintainer.name="Uwe Hermann"\
maintainer.email="uh@uleenucks.de"

View File

@@ -1,4 +1,4 @@
FROM alpine:3.18
FROM alpine:latest
LABEL maintainer.name="Uwe Hermann"\
maintainer.email="uh@uleenucks.de"