Skip to content

複数のGoogle Apps Scriptプロジェクトのテスト環境と本番環境を一つのリポジトリで管理し、Github Actionsで本番環境に自動デプロイするワークフロー。

Notifications You must be signed in to change notification settings

tsato21/prod-test-auto-management_2

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

14 Commits
 
 
 
 
 
 
 
 
 
 

Repository files navigation

prod-test-auto-management_2 (for Google Apps Script Projects)

目次

1 概要

複数のGoogle Apps Scriptプロジェクトのテスト環境と本番環境を一つのリポジトリで管理し、Github Actionsで本番環境に自動デプロイするワークフロー。

2 セットアップ

⭐️ prod-test-auto-management_1のREADMEと異なる部分のみ、記載。

  • ローカルリポジトリの構成を以下の構成に設定する。(prod-test-auto-management_1のREADME >2 セットアップ > 2)

    ./
    ├─ project_1/
    │  └─ src/
    │  │  ├─ appsscript.json
    │  │  └─ Code.gs
    │  └─ .clasp.json
    ├─ project_2/
    │  └─ src/
    │  │  ├─ appsscript.json
    │  │  └─ Code.gs
    │  └─ .clasp.json
    
  • Repository Secretを設定。(prod-test-auto-management_1のREADME > 2 セットアップ > 8)

    • CLASP_SCRIPT_IDは、各プロジェクトごとに記載。(例: RELEASE_PROJECT1_CLASP_SCRIPT_ID)
  • deploy.ymlファイルで各プロジェクト(本番環境)のフォルダ名、IDを以下のように記載。(prod-test-auto-management_1のREADME > 2 セットアップ > 9)

    strategy:
      matrix:
        projects:
          - target-dir: 'project_1'
            script-id-key: 'RELEASE_PROJECT1_CLASP_SCRIPT_ID'
          - target-dir: 'project_2'
            script-id-key: 'RELEASE_PROJECT2_CLASP_SCRIPT_ID'
    
    • matrixを使用して、各プロジェクトごとにjobを走らせる仕様。

3 使用方法

⭐️ prod-test-auto-management_1のREADMEと異なる部分のみ、記載。(XXX)は当該READMEのセクションを示している。

  • 全てのプロジェクトのテスト環境用ファイルを最新の状態にする。(prod-test-auto-management_1のREADME > 3 使用方法 > 1)

    • 各プロジェクト内で作業する際は、cd project_1のように、当該プロジェクトに移動してから作業。
    • 別プロジェクトや、Githubへのpush作業時は、cd ..でrootフォルダに戻る。
  • Commit & タグ付け & Pushで、全てのプロジェクトの本番環境用ファイルが最新の状態 & Versionが更新される。(prod-test-auto-management_1のREADME > 3 使用方法 > 2)

4 参考文献

5 サンプル

About

複数のGoogle Apps Scriptプロジェクトのテスト環境と本番環境を一つのリポジトリで管理し、Github Actionsで本番環境に自動デプロイするワークフロー。

Topics

Resources

Stars

Watchers

Forks

Packages

No packages published