Skip to content

Commit

Permalink
Merge pull request #15 from route06/naming-convention
Browse files Browse the repository at this point in the history
feat!: ワークフローの命名規則をsnake_caseに変更
  • Loading branch information
MH4GF authored Jan 24, 2024
2 parents e8168db + a70bff8 commit 6c81241
Show file tree
Hide file tree
Showing 10 changed files with 53 additions and 13 deletions.
Original file line number Diff line number Diff line change
Expand Up @@ -4,7 +4,7 @@
# types: [opened]
# jobs:
# add-assignee-to-pr:
# uses: route06/actions/.github/workflows/_add-assignee-to-pr.yml@v1
# uses: route06/actions/.github/workflows/add_assignee_to_pr.yml@v2
on:
workflow_call:

Expand Down
Original file line number Diff line number Diff line change
@@ -1,10 +1,10 @@
# 指定した "repo" で、タイトル名に "title" が含まれる最新の Discussion URL を返す。
#
#
# @usage
#
# jobs:
# get-last-discussion-url:
# uses: route06/actions/.github/workflows/_get-last-discussion-url.yml@v1
# uses: route06/actions/.github/workflows/get_last_discussion_url.yml@v2
# with:
# title: Weekly meeting
# repo: route06/my-repo
Expand Down
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
# Github Discussionのコメントが投稿された際に、内容をSlackに送信します。
# NOTE: 現在GitHubのSlack連携ではコメント通知をサポートしていません。
# @see: [Get notifications for comment/reply of Discussions in slack (or equivalent) · community · Discussion #56821](https://github.com/orgs/community/discussions/56821)
#
#
# @usage
#
# on:
Expand All @@ -10,7 +10,7 @@
# jobs:
# discussion_commented:
# if: github.event.discussion && github.event.comment
# uses: route06/actions/.github/workflows/_gh-discussion-comment-to-slack.yml@v1
# uses: route06/actions/.github/workflows/gh_discussion_comment_to_slack.yml@v2
# secrets:
# slack-webhook-url: ${{ secrets.SLACK_XXX_WEBHOOK_URL }}
#
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -12,4 +12,10 @@ concurrency:

jobs:
add-assignee-to-pr:
uses: ./.github/workflows/_add-assignee-to-pr.yml
uses: ./.github/workflows/add_assignee_to_pr.yml

ls-lint:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- uses: ls-lint/[email protected]
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@
#
# jobs:
# notify:
# uses: route06/actions/.github/workflows/_notify-slack.yml@v1
# uses: route06/actions/.github/workflows/notify_slack.yml@v2
# with:
# title: CI failed / ci.yml
# secrets:
Expand Down
4 changes: 4 additions & 0 deletions .ls-lint.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,4 @@
# @see: https://ls-lint.org/2.2/configuration/the-rules.html#overview
ls:
.github/workflows:
.yml: snake_case
10 changes: 6 additions & 4 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -6,10 +6,12 @@ ROUTE06内外から使われることを想定したGitHub ActionsのReusable Wo

各workflowの説明や使い方はリンク先をどうぞ。

* [_add-assignee-to-pr.yml](./.github/workflows/_add-assignee-to-pr.yml)
* [_gh-discussion-comment-to-slack.yml](./.github/workflows/_notify-slack.yml)
* [_notify-slack.yml](./.github/workflows/_notify-slack.yml)
* [_get-last-discussion-url.yml](./.github/workflows/_get-last-discussion-url.yml)
<!-- アルファベット順にソートする -->

* [add_assignee_to_pr.yml](./.github/workflows/add_assignee_to_pr.yml)
* [get_last_discussion_url.yml](./.github/workflows/get_last_discussion_url.yml)
* [gh_discussion_comment_to_slack.yml](./.github/workflows/gh_discussion_comment_to_slack.yml)
* [notify_slack.yml](./.github/workflows/notify_slack.yml)

## 開発者向け

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -12,8 +12,8 @@

route06/actionsの利用者が、バージョンを指定して利用できるようにしたい。以下のようなイメージ:

- `uses: route06/actions/.github/workflows/_add-assignee-to-pr.yml@v1.0.0`
- `uses: route06/actions/.github/workflows/_add-assignee-to-pr.yml@v1`
- `uses: route06/actions/.github/workflows/add_assignee_to_pr.yml@v2.0.0`
- `uses: route06/actions/.github/workflows/add_assignee_to_pr.yml@v2`
- v1系の最新バージョンがpublishされたら自動で利用可能になる

Reusable workflowの仕様として、 `{owner}/{repo}/.github/workflows/{filename}@{ref}` のrefはタグやブランチ名やコミットハッシュが指定可能
Expand Down
27 changes: 27 additions & 0 deletions docs/adr/003-ワークフローの命名規則.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,27 @@
# 3. ワークフローの命名規則

## ステータス

- [ ] 提案中
- [x] 承認
- [ ] 否認
- [ ] 廃止
- [ ] 保留

## 背景

提供するワークフローの命名規則を決めたい。
Reusable Workflow は `/.github/workflows` に配置する必要があり、route06/actionsの利用者が参照するワークフローと自リポジトリでのみ利用するワークフローが混在することになる。この問題に対処するため、これらの区別ができるように命名規則を決めたい。

## 決定

- ワークフローのCaseは全てsnake_caseとする
- 自リポジトリでのみ利用するワークフローは、 `my_{workflow_name}.yml` とする

## コンプライアンス

- [ls-lint](https://ls-lint.org/)をCIで実行し、snake_caseに準拠しているかを確認する。

## 影響

- 良い影響として、route06/actionsのコントリビューターが、命名規則について判断する必要がなくなる
1 change: 1 addition & 0 deletions docs/adr/README.md
Original file line number Diff line number Diff line change
Expand Up @@ -2,3 +2,4 @@

* [1. adrの導入](001-adrの導入.md)
* [2. セマンティックバージョニングの採用](002-セマンティックバージョニングの採用.md)
* [3. ワークフローの命名規則](003-ワークフローの命名規則.md)

0 comments on commit 6c81241

Please sign in to comment.