name: Docker Image CI on: push: branches: - main jobs: build: runs-on: gitea-official-runner container: image: harbor.merlin.xin/testing/merlin/builder:v0.0.0 steps: - name: Checkout code uses: actions/checkout@v4 - name: docker login env: HARBOR_USERNAME: ${{ secrets.HARBOR_ROBOT }} HARBOR_PASSWORD: ${{ secrets.HARBOR_ROBOT_SECRET }} HARBOR_URL: ${{ vars.HARBOR_URL }} run: docker login ${HARBOR_URL} -u ${HARBOR_USERNAME} -p ${HARBOR_PASSWORD} - name: Build and push Docker images env: HARBOR_URL: ${{ vars.HARBOR_URL }} TAG: ${{ github.sha }} run: | ROOT_DIR=$(pwd) # 遍历所有包含 Dockerfile 的目录 find . -type f -name "Dockerfile" | while read dockerfile; do dir=$(dirname "$dockerfile") name=$(basename "$dir") IMAGE_NAME="${HARBOR}/testing/merlin/${name}:${TAG}" echo "Building and pushing image: ${IMAGE_NAME}" done