on: workflow_dispatch: inputs: myChoice: description: '请选择分支' type: choice required: true options: - branch - tag description: '请输入构建备注2' type: environment required: true jobs: Explore-Gitea-Actions: runs-on: ubuntu-22.04-slim env: # 手动设置 MY_CHOICE: ${{ inputs.myChoice }} # 内置 GITEA_REPO: ${{ gitea.repository }} GITEA_REPO_OWNER: ${{ gitea.repository_owner }} GITEA_REF: ${{ gitea.ref }} GITEA_REF_TYPE: ${{ gitea.ref_type }} GITEA_REF_NAME: ${{ gitea.ref_name }} GITEA_EVENT: ${{ gitea.event_name }} GITEA_ACTOR: ${{ gitea.actor }} GITEA_SERVER_URL: ${{ gitea.server_url }} JOB_STATUS: ${{ job.status }} steps: - run: | echo MY_CHOICE: ${MY_CHOICE}; echo GITEA_REPO: ${GITEA_REPO} echo GITEA_REPO_OWNER: ${GITEA_REPO_OWNER}; echo GITEA_REF: ${GITEA_REF}; echo GITEA_REF_TYPE: ${GITEA_REF_TYPE}; echo GITEA_REF_NAME: ${GITEA_REF_NAME} echo GITEA_EVENT: ${GITEA_EVENT}; echo GITEA_ACTOR: ${GITEA_ACTOR}; echo GITEA_SERVER_URL: ${GITEA_SERVER_URL}; echo JOB_STATUS: ${JOB_STATUS} - name: Checkout env run: | echo "目标名称:${GITEA_REF_NAME}" if [ "${MY_CHOICE}" = "tag" ]; then TAG_NAME="${GITEA_REF_NAME}" else TAG_NAME="latest" fi IMAGE_TAG="${REGISTRY_HOST}/${GITEA_REPOSITORY}:${TAG_NAME}" echo "IMAGE_TAG=${IMAGE_TAG}" if [ -z "${{ secrets.REGISTRY_USER }}" ]; then echo "REGISTRY_USER is empty"; else echo "REGISTRY_USER is set"; fi if [ -z "${{ secrets.REGISTRY_PASSWORD }}" ]; then echo "REGISTRY_PASSWORD is empty"; else echo "REGISTRY_PASSWORD is set"; fi - name: Checkout uses: https://${REGISTRY_HOST}/github/checkout@v4 with: ref: ${{ gitea.ref_name }} - name: Build Docker image run: | docker build -t "${IMAGE_TAG}" . - name: Docker login run: | echo "${{ secrets.REGISTRY_PASSWORD }}" | docker login "${REGISTRY_HOST}" -u "${{ secrets.REGISTRY_USER }}" --password-stdin - name: Build and push run: | docker push ${IMAGE_TAG}