You've already forked DataMate
feature: add the pipeline for pushing images to Huawei Cloud (#167)
This commit is contained in:
47
.github/workflows/docker-push-to-huaweicloud-reusable.yml
vendored
Normal file
47
.github/workflows/docker-push-to-huaweicloud-reusable.yml
vendored
Normal file
@@ -0,0 +1,47 @@
|
||||
name: docker-push-to-huaweicloud-reusable.yml
|
||||
on:
|
||||
workflow_call:
|
||||
inputs:
|
||||
version:
|
||||
description: 'image version (e.g. latest or v0.0.1-beta)'
|
||||
required: true
|
||||
default: 'latest'
|
||||
type: string
|
||||
service_name:
|
||||
description: 'image version (e.g. latest or v0.0.1-beta)'
|
||||
required: true
|
||||
default: 'latest'
|
||||
type: string
|
||||
secrets:
|
||||
HUAWEI_CLOUD_SWR_LOGIN_PWD:
|
||||
description: 'login pwd'
|
||||
required: true
|
||||
|
||||
jobs:
|
||||
retag-and-push:
|
||||
name: Retag and Push to Huawei Cloud SWR
|
||||
runs-on: ubuntu-latest
|
||||
steps:
|
||||
- name: Pull source image and retag (amd)
|
||||
shell: bash
|
||||
run: |
|
||||
SOURCE_IMAGE=ghcr.io/modelengine-group/${{ inputs.service_name}}:${{ inputs.version}}
|
||||
TARGET_IMAGE=swr.cn-east-3.myhuaweicloud.com/data-mate/${{ inputs.service_name}}:${{ inputs.version}}
|
||||
docker pull "${SOURCE_IMAGE}"
|
||||
docker tag "${SOURCE_IMAGE}" "${TARGET_IMAGE}"-amd
|
||||
- name: Pull source image and retag (arm)
|
||||
shell: bash
|
||||
run: |
|
||||
SOURCE_IMAGE=ghcr.io/modelengine-group/${{ inputs.service_name}}:${{ inputs.version}}
|
||||
TARGET_IMAGE=swr.cn-east-3.myhuaweicloud.com/data-mate/${{ inputs.service_name}}:${{ inputs.version}}
|
||||
docker pull "${SOURCE_IMAGE}" --platform=linux/arm64
|
||||
docker tag "${SOURCE_IMAGE}" "${TARGET_IMAGE}"-arm
|
||||
- name: Push image to Huawei SWR using
|
||||
shell: bash
|
||||
run: |
|
||||
TARGET_IMAGE=swr.cn-east-3.myhuaweicloud.com/data-mate/${{ inputs.service_name}}:${{ inputs.version}}
|
||||
echo "${{ secrets.HUAWEI_CLOUD_SWR_LOGIN_PWD}}" | docker login swr.cn-east-3.myhuaweicloud.com --username=cn-east-3@HPUA3ZGOTQFAFMM59DB9 --password-stdin
|
||||
docker push "${TARGET_IMAGE}"-amd
|
||||
docker push "${TARGET_IMAGE}"-arm
|
||||
docker manifest create "${TARGET_IMAGE}" "${TARGET_IMAGE}"-amd "${TARGET_IMAGE}"-arm
|
||||
docker manifest push "${TARGET_IMAGE}"
|
||||
73
.github/workflows/docker-push-to-huaweicloud.yml
vendored
Normal file
73
.github/workflows/docker-push-to-huaweicloud.yml
vendored
Normal file
@@ -0,0 +1,73 @@
|
||||
name: docker-push-to-huaweicloud.yml
|
||||
on:
|
||||
workflow_dispatch:
|
||||
inputs:
|
||||
version:
|
||||
description: 'image version (e.g. latest or v0.0.1-beta)'
|
||||
required: true
|
||||
default: 'latest'
|
||||
type: string
|
||||
|
||||
jobs:
|
||||
frontend:
|
||||
name: Push Frontend Image
|
||||
uses: ./.github/workflows/docker-push-to-huaweicloud-reusable.yml
|
||||
with:
|
||||
service_name: datamate-frontend
|
||||
version: ${{ inputs.version}}
|
||||
secrets:
|
||||
HUAWEI_CLOUD_SWR_LOGIN_PWD: ${{ secrets.HUAWEI_CLOUD_SWR_LOGIN_PWD}}
|
||||
|
||||
backend:
|
||||
name: Push Backend Image
|
||||
uses: ./.github/workflows/docker-push-to-huaweicloud-reusable.yml
|
||||
with:
|
||||
service_name: datamate-backend
|
||||
version: ${{ inputs.version}}
|
||||
secrets:
|
||||
HUAWEI_CLOUD_SWR_LOGIN_PWD: ${{ secrets.HUAWEI_CLOUD_SWR_LOGIN_PWD}}
|
||||
|
||||
backend-python:
|
||||
name: Push Backend-Python Image
|
||||
uses: ./.github/workflows/docker-push-to-huaweicloud-reusable.yml
|
||||
with:
|
||||
service_name: datamate-backend-python
|
||||
version: ${{ inputs.version}}
|
||||
secrets:
|
||||
HUAWEI_CLOUD_SWR_LOGIN_PWD: ${{ secrets.HUAWEI_CLOUD_SWR_LOGIN_PWD}}
|
||||
|
||||
runtime:
|
||||
name: Push Runtime Image
|
||||
uses: ./.github/workflows/docker-push-to-huaweicloud-reusable.yml
|
||||
with:
|
||||
service_name: datamate-runtime
|
||||
version: ${{ inputs.version}}
|
||||
secrets:
|
||||
HUAWEI_CLOUD_SWR_LOGIN_PWD: ${{ secrets.HUAWEI_CLOUD_SWR_LOGIN_PWD}}
|
||||
|
||||
database:
|
||||
name: Push Database Image
|
||||
uses: ./.github/workflows/docker-push-to-huaweicloud-reusable.yml
|
||||
with:
|
||||
service_name: datamate-database
|
||||
version: ${{ inputs.version}}
|
||||
secrets:
|
||||
HUAWEI_CLOUD_SWR_LOGIN_PWD: ${{ secrets.HUAWEI_CLOUD_SWR_LOGIN_PWD}}
|
||||
|
||||
deer-flow-backend:
|
||||
name: Push deer-flow-backend Image
|
||||
uses: ./.github/workflows/docker-push-to-huaweicloud-reusable.yml
|
||||
with:
|
||||
service_name: deer-flow-backend
|
||||
version: ${{ inputs.version}}
|
||||
secrets:
|
||||
HUAWEI_CLOUD_SWR_LOGIN_PWD: ${{ secrets.HUAWEI_CLOUD_SWR_LOGIN_PWD}}
|
||||
|
||||
deer-flow-frontend:
|
||||
name: Push deer-flow-frontend Image
|
||||
uses: ./.github/workflows/docker-push-to-huaweicloud-reusable.yml
|
||||
with:
|
||||
service_name: deer-flow-frontend
|
||||
version: ${{ inputs.version}}
|
||||
secrets:
|
||||
HUAWEI_CLOUD_SWR_LOGIN_PWD: ${{ secrets.HUAWEI_CLOUD_SWR_LOGIN_PWD}}
|
||||
Reference in New Issue
Block a user