这是indexloc提供的服务,不要输入任何密码
Skip to content

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

Notifications You must be signed in to change notification settings

ttsukagoshi/prod-test-auto-management_2

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

6 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は、deploy.ymlに直接記載するため、設定不要。それ以外のsecretを設定。
  • deploy.ymlファイルで各プロジェクト(本番環境)のフォルダ名、IDを以下のように記載。

    projects:
        - target-dir: 'project_1'
        script-id: 'XXXX'
        - target-dir: 'project_2'
        script-id: 'XXXX'
    
    • prod-test-auto-management_1のREADMEと同様、本番環境のScript IDをGithub ActionsのSecretとして下記のように設定しようとしたが、matrix内では、secretsが使用できない (参考サイト)。そのため、ファイル内に直で記載。(ただし、Scripit IDを非公開にする必要がある場合は、当該箇所の修正が必要。)
    strategy:
      matrix:
        projects:
          - target-dir: 'project_1'
            script-id: ${{ secrets.PROJECT_1_CLASP_SCRIPT_ID }}
          - target-dir: 'project_2'
            script-id: ${{ secrets.PROJECT_2_CLASP_SCRIPT_ID }}
    

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で本番環境に自動デプロイするワークフロー。

Resources

Code of conduct

Stars

Watchers

Forks

Packages

No packages published

Languages

  • JavaScript 100.0%