forked from alt/image-forge
Compare commits
8 Commits
workflow
...
test-gitea
Author | SHA1 | Date | |
---|---|---|---|
89420ba75d | |||
31725ede8a | |||
a43eb4be60 | |||
e08e730f2a | |||
4d8b5d349f | |||
25c85b94e7 | |||
f5fac1ad48 | |||
cce0c0d01f |
42
.gitea/workflows/build-k8s-images.yaml
Normal file
42
.gitea/workflows/build-k8s-images.yaml
Normal file
@ -0,0 +1,42 @@
|
||||
name: Build kubernetes images
|
||||
on:
|
||||
push:
|
||||
branches:
|
||||
- test-gitea-actions
|
||||
paths:
|
||||
- ".gitea/workflows/build-k8s-images.yaml"
|
||||
- "org/k8s/kube-apiserver/**"
|
||||
- "org/k8s/kube-controller-manager/**"
|
||||
- "org/k8s/kube-scheduler/**"
|
||||
- "org/k8s/kube-proxy/**"
|
||||
- "tags.toml"
|
||||
- "k8s-images.sh"
|
||||
schedule:
|
||||
- cron: "30 3 1 * *"
|
||||
|
||||
jobs:
|
||||
build-images:
|
||||
runs-on: alt-latest
|
||||
steps:
|
||||
- name: Install the dependencies
|
||||
run: |
|
||||
apt-get update
|
||||
apt-get install -y \
|
||||
podman \
|
||||
python3-module-tomli \
|
||||
python3-module-jinja2 \
|
||||
qemu-user-static-binfmt-aarch64 \
|
||||
qemu-user-static-binfmt-arm \
|
||||
qemu-user-static-binfmt-ppc
|
||||
- name: Check out repository code
|
||||
uses: actions/checkout@v3
|
||||
- name: Log into gitea.basealt.ru
|
||||
run: podman login -u stepchenkoas -p "${{ secrets.ACTIONS_TOKEN }}" gitea.basealt.ru
|
||||
- name: Build docker images for p10 (kube-apiserver, kube-controller-manager, kube-scheduler, kube-proxy)
|
||||
run: ${{ gitea.workspace }}/build-k8s-images.sh gitea.basealt.ru k8s-p10 p10
|
||||
- name: Push docker images for p10 to gitea.basealt.ru
|
||||
run: ${{ gitea.workspace }}/push-k8s-images.sh gitea.basealt.ru k8s-p10 p10
|
||||
- name: Build docker images for sisyphus (kube-apiserver, kube-controller-manager, kube-scheduler, kube-proxy)
|
||||
run: ${{ gitea.workspace }}/build-k8s-images.sh gitea.basealt.ru k8s-sisyphus sisyphus
|
||||
- name: Push docker images for sisyphus to gitea.basealt.ru
|
||||
run: ${{ gitea.workspace }}/push-k8s-images.sh gitea.basealt.ru k8s-sisyphus sisyphus
|
@ -28,7 +28,9 @@ If you push to the users repository, then organiztion is your username.
|
||||
|
||||
## Dependencies
|
||||
On x86_64 machine using p10 branch you need:
|
||||
- `podman`
|
||||
- `python3-module-tomli`
|
||||
- `python3-module-jinja2`
|
||||
- `qemu-user-static-binfmt-aarch64` to build for arm64 architecture
|
||||
- `qemu-user-static-binfmt-arm` to build for arm architecture
|
||||
- `qemu-user-static-binfmt-ppc` to build for ppc64le architecture
|
||||
|
59
k8s-images.sh
Executable file
59
k8s-images.sh
Executable file
@ -0,0 +1,59 @@
|
||||
#!/usr/bin/env sh
|
||||
|
||||
set -xeuo pipefail
|
||||
|
||||
function print_help() {
|
||||
cat <<EOF
|
||||
usage:
|
||||
$0 (build | push) <REGISTRY> <ORGANIZATION> <BRANCH>
|
||||
EOF
|
||||
}
|
||||
|
||||
if [ "$#" -lt 4 ]; then
|
||||
print_help
|
||||
exit 1
|
||||
fi
|
||||
|
||||
COMMAND=$1
|
||||
REGISTRY=${2:-"gitea.basealt.ru"}
|
||||
ORGANIZATION=${3:-"k8s-sisyphus"}
|
||||
BRANCH=${4:-"sisyphus"}
|
||||
|
||||
shift 4
|
||||
|
||||
[ "$COMMAND" == 'build' ] || [ "$COMMAND" == 'push' ] || exit 1
|
||||
|
||||
function build() {
|
||||
./build.py \
|
||||
--branches $BRANCH \
|
||||
--latest $BRANCH \
|
||||
--registry $REGISTRY \
|
||||
--overwrite-organization $ORGANIZATION \
|
||||
--images k8s/kube-apiserver k8s/kube-controller-manager k8s/kube-scheduler k8s/kube-proxy \
|
||||
--tags tags.toml \
|
||||
--skip-stages push \
|
||||
"$@"
|
||||
}
|
||||
|
||||
function push() {
|
||||
./build.py \
|
||||
--branches $BRANCH \
|
||||
--latest $BRANCH \
|
||||
--registry $REGISTRY \
|
||||
--overwrite-organization $ORGANIZATION \
|
||||
--images k8s/kube-apiserver k8s/kube-controller-manager k8s/kube-scheduler k8s/kube-proxy \
|
||||
--tags tags.toml \
|
||||
--stages push \
|
||||
"$@"
|
||||
}
|
||||
|
||||
for version in 1.26.14 1.27.12 1.28.8; do
|
||||
sed -i "s/kubernetes.*-/kubernetes${version::4}-/g" org/k8s/kube-*/*
|
||||
sed -i "s/$BRANCH = \[ \"v.*\" \]/$BRANCH = \[ \"v$version\" \]/g" tags.toml
|
||||
|
||||
if [ "$COMMAND" == 'build' ]; then
|
||||
build "$@"
|
||||
elif [ "$COMMAND" == 'push' ]; then
|
||||
push "$@"
|
||||
fi
|
||||
done
|
Reference in New Issue
Block a user