タグをプッシュした時にワークフローが走るようにする

CircleCI ではデフォルトで、すべてのブランチが対象で、すべてのタグ名は除外のような設定になっています。
そのため、以下のようなタグプッシュではワークフローが走ってくれません。

git tag -a v0.0.1 -m '...'
git push origin v0.0.1

CircleCI ではタグの場合「このタグ名(タグ名のパターン)で来たとき走ってほしい」というような名前指定をする必要があります。これはワークフローのフィルターのtagsブロックで設定できます。

以下は、/v[0-9]+\.[0-9]+\.[0-9]+/というタグ名(v0.0.1にマッチ)の時にワークフローが走る設定です。

workflows:
  version: 2
  workflow_name:
    jobs:
      - job_name:
          filters:
            tags:
              only: /v[0-9]+\.[0-9]+\.[0-9]+/

タグ名プッシュの時だけに走るワークフロー

上の設定はまだ以下のような設定のものと同じです。

filters:
  tags:
    only: /v[0-9]+\.[0-9]+\.[0-9]+
  branches:
    only: /.*/

なのですべてのブランチを除外するという設定も必要になります。

filters:
  tags:
    only: /v[0-9]+\.[0-9]+\.[0-9]+
  branches:
    ignore: /.*/