add workflows: sync-images for apollo kafka mysql redis

This commit is contained in:
Haitao Pan 2025-01-12 10:03:51 +08:00
parent b5f486504c
commit 954c500e91
4 changed files with 188 additions and 0 deletions

View File

@ -0,0 +1,60 @@
name: Sync Images for Apollo
on:
schedule:
- cron: "0 0 * * *"
pull_request:
paths:
- '.github/workflows/sync-images-apollo.yaml'
workflow_dispatch:
branches:
- main
jobs:
apollo-adminservice:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v2
- name: Initialize and Sync Apollo-adminservice image
env:
USER: ${{ secrets.IMAGES_REPO_USER }}
PASSWORD: ${{ secrets.IMAGES_REPO_PASSWORD }}
shell: bash
run: |
sudo apt update && sudo apt install -y git
echo "$PASSWORD" | docker login --username=$USER --password-stdin global-images.onwalk.net
docker pull docker.io/apolloconfig/apollo-adminservice:2.3.0
docker tag docker.io/apolloconfig/apollo-adminservice:2.3.0 global-images.onwalk.net/public/apolloconfig/apollo-adminservice:2.3.0
docker push global-images.onwalk.net/public/apolloconfig/apollo-adminservice:2.3.0
apollo-configservice:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v2
- name: Initialize and Sync Harbor DB
env:
USER: ${{ secrets.IMAGES_REPO_USER }}
PASSWORD: ${{ secrets.IMAGES_REPO_PASSWORD }}
shell: bash
run: |
sudo apt update && sudo apt install -y git
echo "$PASSWORD" | docker login --username=$USER --password-stdin global-images.onwalk.net
docker pull docker.io/apolloconfig/apollo-configservice:2.3.0
docker tag docker.io/apolloconfig/apollo-configservice:2.3.0 global-images.onwalk.net/public/apolloconfig/apollo-configservice:2.3.0
docker push global-images.onwalk.net/public/apolloconfig/apollo-configservice:2.3.0
apollo-portal:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v2
- name: Initialize and Sync Harbor Jobservice
env:
USER: ${{ secrets.IMAGES_REPO_USER }}
PASSWORD: ${{ secrets.IMAGES_REPO_PASSWORD }}
shell: bash
run: |
sudo apt update && sudo apt install -y git
echo "$PASSWORD" | docker login --username=$USER --password-stdin global-images.onwalk.net
docker pull docker.io/apolloconfig/apollo-portal:2.3.0
docker tag docker.io/apolloconfig/apollo-portal:2.3.0 global-images.onwalk.net/public/apolloconfig/apollo-portal:2.3.0
docker push global-images.onwalk.net/public/apolloconfig/apollo-portal:2.3.0

View File

@ -0,0 +1,42 @@
name: sync images for Kafka
on:
schedule:
- cron: "0 0 * * *"
pull_request:
paths:
- '.github/workflows/sync-images-nginx.yaml'
workflow_dispatch:
branches:
- main
jobs:
sync-images:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v2
- name: Initialization environment
env:
USER: ${{ secrets.IMAGES_REPO_USER }}
PASSWORD: ${{ secrets.IMAGES_REPO_PASSWORD }}
shell: bash
run: |
sudo apt update
sudo apt install git -y
echo "$PASSWORD" | docker login --username=$USER --password-stdin images.onwalk.net
- name: sync images
shell: bash
run: |
function sync_image()
{
local src_image=$1
local dest_image=$2
docker pull $src_image
docker tag $src_image $dest_image
docker push $dest_image
}
sync_image "docker.io/bitnami/kafka:3.9.0-debian-12-r4" "images.onwalk.net/public/kafka:3.9.0-debian-12-r4"
sync_image "docker.io/bitnami/kubectl:1.32.0-debian-12-r0" "images.onwalk.net/public/kubectl:1.32.0-debian-12-r0"

View File

@ -0,0 +1,44 @@
name: sync images for Mysql
on:
schedule:
- cron: "0 0 * * *"
pull_request:
paths:
- '.github/workflows/sync-images-mysql.yaml'
workflow_dispatch:
branches:
- main
jobs:
sync-images:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v2
- name: Initialization environment
env:
USER: ${{ secrets.IMAGES_REPO_USER }}
PASSWORD: ${{ secrets.IMAGES_REPO_PASSWORD }}
shell: bash
run: |
sudo apt update
sudo apt install git -y
echo "$PASSWORD" | docker login --username=$USER --password-stdin images.onwalk.net
- name: sync images
shell: bash
run: |
function sync_image()
{
local src_image=$1
local dest_image=$2
docker pull $src_image
docker tag $src_image $dest_image
docker push $dest_image
}
sync_image "docker.io/library/redis:alpine" "images.onwalk.net/public/redis:alpine"
sync_image "docker.io/otel/opentelemetry-collector-contrib:0.62.0" "images.onwalk.net/public/opentelemetry-collector-contrib:0.62.0"
#sync_image "busybox:1.32" "images.onwalk.net/public/busybox:1.32"
#sync_image "docker.io/mysql:5.7.30" "images.onwalk.net/public/database/mysql:5.7.30"

View File

@ -0,0 +1,42 @@
name: sync images for Redis
on:
schedule:
- cron: "0 0 * * *"
pull_request:
paths:
- '.github/workflows/sync-images-redis.yaml'
workflow_dispatch:
branches:
- main
jobs:
sync-images:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v2
- name: Initialization environment
env:
USER: ${{ secrets.IMAGES_REPO_USER }}
PASSWORD: ${{ secrets.IMAGES_REPO_PASSWORD }}
shell: bash
run: |
sudo apt update
sudo apt install git -y
echo "$PASSWORD" | docker login --username=$USER --password-stdin images.onwalk.net
- name: sync images
shell: bash
run: |
function sync_image()
{
local src_image=$1
local dest_image=$2
docker pull $src_image
docker tag $src_image $dest_image
docker push $dest_image
}
sync_image "docker.io/bitnami/redis-cluster:7.4.1-debian-12-r3" "images.onwalk.net/public/redis-cluster:7.4.1-debian-12-r3"
sync_image "docker.io/bitnami/redis:7.4.1-debian-12-r3" "images.onwalk.net/public/redis:7.4.1-debian-12-r3"