在 GitHub 个操作中添加基于日期的标签

Bump date-based tag in GitHub Actions

我正在尝试使用 GitHub 操作创建 project 的自动发布,其中发布标签基于日期。我不想使用标准语义版本控制,因为这个项目是另一个使用基于日期的版本控制的项目的分支。我找到了有关在工作流程中获取日期的帖子,目前为止:

name: Publish

on:
  push:
    branches: [ main ]
  pull_request:
    branches: [ main ]

jobs:
  publish:
    name: Publish release of font files
    runs-on: ubuntu-latest
    steps:
      - name: Create foo file
        run: |
          mkdir cascadios
          > cascadios/foo.txt
          
      - name: Get tag name from date
        id: tag_name
        run: echo "::set-output name=date::$(date +'%y%m.%d')"

      - name: Zip font files
        run: |
          cd cascadios
          zip ../cascadios-${{ steps.tag_name.outputs.date }}.zip *
          cd ..

      - name: Create tag
        uses: mathieudutour/github-tag-action@v6.0
        id: tag_version
        with:
          github_token: ${{ github.token }}
          custom_tag: ${{ steps.tag_name.outputs.date }}

Note: I have it creating a blank file to release to save the 15 minutes of building.

直到我在一天内发布两个版本(例如今天,我正在大量测试此工作流程)之前,它一直很有效。我怎样才能得到它,这样我就可以在标签中添加一个动态补丁号,这样就不会引起冲突?一个例子可能看起来像 v2112.13.0.

您可以使用我们的版本控制库 - https://github.com/relizaio/versioning

然后您可以将版本模式声明为:YYYY.0M.0D.Micro

然后以下命令将生成一个基本版本:

docker run --rm relizaio/versioning -s YYYY.0M.0D.Micro

现在,如果您已经有了一个版本 2021.12.14.1 并想提高它,您可以这样做

docker run --rm relizaio/versioning -s YYYY.0M.0D.Micro -v 2021.12.14.1 -a bump

如果您在 12 月 14 日调用它,这将产生 2021.12.14.2,如果您在 12 月 15 日调用此命令,则会产生 2021.12.15.0