コンテンツの更新時にGitHub Actionsを自動実行する
概要
このチュートリアルでは、コンテンツの更新時に GitHub Actionsを自動実行する方法を説明します。
手動でコンテンツを更新した場合のほか、承認ワークフローを利用した場合とAPIを使用してコンテンツを更新した場合についても説明します。
学べること
コンテンツの更新時にGitHub Actionsを実行方法を学びます。 流れは以下の通りです。
前提条件
このページはKurocoとNuxt.jsでのプロジェクトが構築済みであり、コンテンツ一覧のページが作成されていることを前提としています。
まだ構築していない場合は、下記のチュートリアルを参照してください。
Kurocoビギナーズガイド
KurocoとNuxt.jsで、コンテンツ一覧ページを作成する
GitHub Workflowの設定
GitHubと接続し、リポジトリを設定すると、GitHubの設定画面は以下のようになります。
GitHub Actionsを実行するには、Kuroco管理画面のGitHubページでワークフローを設定する必要があります。設定されていない場合、コンテンツ更新時にワークフロー連携を有効にしていてもGitHub Actionsが実行されません。
ここでワークフローと対象ブランチを設定する必要があります。GitHubリポジトリに基づいて対応する項目を選択し、[更新する]をクリックしてください。
GitHub Actionsを使用してコンテンツを作成する
[コンテンツ] -> [コンテンツ名] に移動して、[追加] をクリックして新しいコンテンツを作成します。
ワークフローを「有効」にします。
ワークフローを「有効」に設定してコンテンツを追加または更新すると、自動でGitHub Actionsが実行されます。
ワークフローの設定を有効にして更新すると、次回更新時にもワークフローの設定はデフォルトで有効がチェックされた状態になります。
承認ワークフローを使用してコンテンツを作成する
GitHub Actionsは、コンテンツが更新されたときに自動的に実行されます。
承認ワークフローがそのコンテンツに設定されている場合は、すべてのグループが承認し、コンテンツが公開/更新されたときにGitHub Actionsが実行されます。
1. 承認ワークフローの作成
承認ワークフローを作成するには、サイドメニューで[オペレーション] -> [承認ワークフロー]に遷移します。ここで新しいワークフローを追加するか、既に作成されている場合は編集します。
必要な情報を入力し、承認ワークフローを作成してください。
2. フロー設定をする
コンテンツの作成/更新から公開までのフロー設定をします。
フロー設定が完了したら、コンテンツの編集にすすみます。
3. 新しいトピックを作成する
[コンテンツ] > [コンテンツ名] に移動して、[追加] をクリックして新しいコンテンツを作成します。
4. GitHubワークフローと承認ワークフローを設定する
コンテンツが公開された後にGitHub Actionsが実行されるようGitHubのワークフロー設定を有効にします。承認ワークフローの設定も合わせて実施します。
5. コンテンツを更新する
コンテンツに承認フローワークフローが設定されている場合は承認待ちに移行します。
6. GitHub Actionsが実行されることを確認する
Contentの設定後、GitHubアクションが実行されます。 GitHub の [アクション] タブで確認できます。
APIを使用してコンテンツを作成する
API経由でコンテンツが更新された場合でもGitHubアクションを実行するように設定できます。このチュートリアルでは簡単化のため、承認フローを使用せずにContents APIを使用します。
承認フローを使用したコンテンツの追加方法については、こちらを参照してください。
1. コンテンツ挿入APIの作成
サイドメニューからエンドポイント一覧のページに遷移します。追加をクリックし、以下のエンドポイントを追加します。
設定 | 値 |
---|---|
パス | エンドポイントのパス。必要に応じて入力してください。 |
カテゴリー | 「コンテンツ」を選択します。 |
モデル | Topics v1 |
オペレーション | コンテンツで実行する操作を選択します。(insert or update) |
topics_group_id | コンテンツ定義IDを入力します。 |
2. リクエストを送信する
エンドポイントの動作はSwagger UIで確認します。
新しく作成したエンドポイントを選択して、[Try it out]をクリックします。
ここで、dispatch_github_workflow
を1で渡すと、コンテンツが公開されたときにGitHub Actionsが実行されます。
承認ワークフローが使用されている場合、GitHub Actionsは承認ワークフローが完了した後に実行されます。 また、コンテンツが非公開に設定された場合や、後日公開されるように日時指定がされた場合、GitHub Actionsはコンテンツが公開されたときに実行されます。
このチュートリアルでは簡単化のため、open_flg
を1で渡し、コンテンツを挿入するとすぐに公開されるようにします。これにより、コンテンツの追加時にすぐにGitHub Actionsが実行されます。
コンテンツの内容を入力し、[Execute]をクリックします。
レスポンスでコンテンツが正常に追加されたことを確認します。
コンテンツ一覧に遷移し、コンテンツが追加されていることを確認します。
3. GitHub Actionsの実行を確認する
GitHubリポジトリのActionsタブに遷移すると、GitHub Actionsが実行されたことを確認できます。
サポート
お探しのページは見つかりましたか?解決しない場合は、問い合わせフォームからお問い合わせいただくか、Slackコミュニティにご参加ください。