将 Gitea 注册表地址从 gitea:3000 改为 localhost:3000 并新增推送镜像 workflow
This commit is contained in:
@@ -91,15 +91,15 @@ jobs:
|
|||||||
env:
|
env:
|
||||||
GITEA_TOKEN: ${{ secrets.ERIC_TOKEN }}
|
GITEA_TOKEN: ${{ secrets.ERIC_TOKEN }}
|
||||||
run: |
|
run: |
|
||||||
echo "${GITEA_TOKEN}" | docker login gitea:3000 -u EricXZ --password-stdin
|
echo "${GITEA_TOKEN}" | docker login localhost:3000 -u EricXZ --password-stdin
|
||||||
|
|
||||||
- name: Tag image for registry
|
- name: Tag image for registry
|
||||||
run: |
|
run: |
|
||||||
docker tag rk3576/cc-ros-lyrical:latest gitea:3000/xixing-tech/cc-ros-lyrical:${PLATFORM}-${ROS_DISTRO}-latest
|
docker tag rk3576/cc-ros-lyrical:latest localhost:3000/xixing-tech/cc-ros-lyrical:${PLATFORM}-${ROS_DISTRO}-latest
|
||||||
# 建议同时打一个带 commit sha 的版本tag,方便追溯具体是哪次构建产物
|
# 建议同时打一个带 commit sha 的版本tag,方便追溯具体是哪次构建产物
|
||||||
docker tag rk3576/cc-ros-lyrical:latest gitea:3000/xixing-tech/cc-ros-lyrical:${PLATFORM}-${ROS_DISTRO}-${GITHUB_SHA::8}
|
docker tag rk3576/cc-ros-lyrical:latest localhost:3000/xixing-tech/cc-ros-lyrical:${PLATFORM}-${ROS_DISTRO}-${GITHUB_SHA::8}
|
||||||
|
|
||||||
- name: Push image to Gitea registry
|
- name: Push image to Gitea registry
|
||||||
run: |
|
run: |
|
||||||
docker push gitea:3000/xixing-tech/cc-ros-lyrical:${PLATFORM}-${ROS_DISTRO}-latest
|
docker push localhost:3000/xixing-tech/cc-ros-lyrical:${PLATFORM}-${ROS_DISTRO}-latest
|
||||||
docker push gitea:3000/xixing-tech/cc-ros-lyrical:${PLATFORM}-${ROS_DISTRO}-${GITHUB_SHA::8}
|
docker push localhost:3000/xixing-tech/cc-ros-lyrical:${PLATFORM}-${ROS_DISTRO}-${GITHUB_SHA::8}
|
||||||
@@ -0,0 +1,76 @@
|
|||||||
|
name: Push Cross-Compiled Image to Gitea Registry
|
||||||
|
|
||||||
|
permissions:
|
||||||
|
contents: read
|
||||||
|
|
||||||
|
on:
|
||||||
|
workflow_dispatch:
|
||||||
|
inputs:
|
||||||
|
platform:
|
||||||
|
description: "Target platform"
|
||||||
|
required: true
|
||||||
|
type: choice
|
||||||
|
options: [rk3588, rk3576]
|
||||||
|
default: rk3576
|
||||||
|
ros_distro:
|
||||||
|
description: "ROS 2 distribution"
|
||||||
|
required: true
|
||||||
|
type: choice
|
||||||
|
options: [rolling, jazzy, lyrical]
|
||||||
|
default: lyrical
|
||||||
|
|
||||||
|
jobs:
|
||||||
|
push:
|
||||||
|
runs-on: ubuntu-22.04 # 换成你实际能正常调度的label
|
||||||
|
env:
|
||||||
|
PLATFORM: ${{ inputs.platform }}
|
||||||
|
ROS_DISTRO: ${{ inputs.ros_distro }}
|
||||||
|
|
||||||
|
steps:
|
||||||
|
- name: Check local image exists
|
||||||
|
run: |
|
||||||
|
IMAGE="${PLATFORM}/cc-ros-${ROS_DISTRO}:latest"
|
||||||
|
echo "IMAGE=${IMAGE}" >> $GITHUB_ENV
|
||||||
|
if ! docker image inspect "${IMAGE}" > /dev/null 2>&1; then
|
||||||
|
echo "❌ 本地找不到镜像 ${IMAGE},请先跑构建 workflow"
|
||||||
|
exit 1
|
||||||
|
fi
|
||||||
|
echo "✅ 找到本地镜像 ${IMAGE}"
|
||||||
|
docker inspect --format='Size: {{.Size}} bytes' "${IMAGE}"
|
||||||
|
|
||||||
|
- name: Check token is set
|
||||||
|
env:
|
||||||
|
GITEA_TOKEN: ${{ secrets.ERIC_TOKEN }}
|
||||||
|
run: |
|
||||||
|
if [ -z "$GITEA_TOKEN" ]; then
|
||||||
|
echo "❌ ERIC_TOKEN 是空的,检查secret名字"
|
||||||
|
exit 1
|
||||||
|
fi
|
||||||
|
echo "✅ token长度: ${#GITEA_TOKEN}"
|
||||||
|
|
||||||
|
- name: Log in to Gitea Container Registry
|
||||||
|
env:
|
||||||
|
GITEA_TOKEN: ${{ secrets.ERIC_TOKEN }}
|
||||||
|
run: |
|
||||||
|
echo "${GITEA_TOKEN}" | docker login localhost:3000 -u EricXZ --password-stdin
|
||||||
|
|
||||||
|
- name: Tag image for registry
|
||||||
|
run: |
|
||||||
|
SHA8=$(echo "${GITHUB_SHA}" | cut -c1-8)
|
||||||
|
echo "SHA8=${SHA8}" >> $GITHUB_ENV
|
||||||
|
docker tag "${IMAGE}" "localhost:3000/xixing-tech/cc-ros-${ROS_DISTRO}:${PLATFORM}-latest"
|
||||||
|
docker tag "${IMAGE}" "localhost:3000/xixing-tech/cc-ros-${ROS_DISTRO}:${PLATFORM}-${SHA8}"
|
||||||
|
|
||||||
|
- name: Push image to Gitea registry
|
||||||
|
run: |
|
||||||
|
docker push "localhost:3000/xixing-tech/cc-ros-${ROS_DISTRO}:${PLATFORM}-latest"
|
||||||
|
docker push "localhost:3000/xixing-tech/cc-ros-${ROS_DISTRO}:${PLATFORM}-${SHA8}"
|
||||||
|
|
||||||
|
- name: Summary
|
||||||
|
if: always()
|
||||||
|
run: |
|
||||||
|
echo "### Pushed Image 🚀" >> $GITHUB_STEP_SUMMARY
|
||||||
|
echo "| tag | size |" >> $GITHUB_STEP_SUMMARY
|
||||||
|
echo "|---|---|" >> $GITHUB_STEP_SUMMARY
|
||||||
|
echo "| \`localhost:3000/xixing-tech/cc-ros-${ROS_DISTRO}:${PLATFORM}-latest\` | $(docker inspect --format='{{.Size}}' "${IMAGE}") bytes |" >> $GITHUB_STEP_SUMMARY
|
||||||
|
echo "| \`localhost:3000/xixing-tech/cc-ros-${ROS_DISTRO}:${PLATFORM}-${SHA8}\` | 同上 |" >> $GITHUB_STEP_SUMMARY
|
||||||
Reference in New Issue
Block a user