簡體   English   中英

在 GitHub 工作流上自動設置發布標簽

[英]Automatically setting the release tag on a GitHub workflow

我正在嘗試構建一個在 GitHub 上創建新版本時觸發的操作,該操作運行良好,但我想在我的操作中引用該標簽:

name: Build production container

on:
  release:
    types:
      - created

jobs:
  deploy:
    runs-on: ubuntu-latest

    steps:
      - name: Checkout
        uses: actions/checkout@v2

      - name: Build the Docker image
        run: |
          echo "${{ SECRET }}" | docker login -u ME --password-stdin docker.pkg.github.com
          docker build app/ -t docker.pkg.github.com/REPO_PATH/image:$VERSION
          docker push docker.pkg.github.com/REPO_PATH/image:$VERSION
        shell: bash
        env:
          VERSION: 0.0.1

這是我的工作操作,但我想自動將標簽拉入 VERSION 環境變量。 我閱讀了文檔,尤其是在此處引用了 GitHub 上下文,但似乎找不到任何相關信息。

我花了一些時間才弄清楚此處記錄的每個方法的操作都有不同的上下文。 所以我正在尋找的參數是並且我在這個例子之后設置了我的動作:

name: Build production container

on:
  release:
    types:
      - created

jobs:
  deploy:
    runs-on: ubuntu-latest

    steps:
      - name: Checkout
        uses: actions/checkout@v2

      - name: Get Tag Name
        id: tag_name
        run: |
          echo ::set-output name=SOURCE_TAG::${GITHUB_REF#refs/tags/}

      - name: Build the Docker image
        run: |
          echo "${{ SECRET }}" | docker login -u ME --password-stdin docker.pkg.github.com
          docker build app/ -t docker.pkg.github.com/REPO_PATH/image:$VERSION
          docker push docker.pkg.github.com/REPO_PATH/image:$VERSION
        shell: bash
        env:
          VERSION: ${{ steps.tag_name.outputs.SOURCE_TAG }}

這基本上增加了獲取源參數作為額外步驟,這樣我就可以在下一步的環境變量中使用它。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM