LoginSignup
4
1

More than 1 year has passed since last update.

GitHub Actionsを使用したHerokuに自動デプロイする方法

Last updated at Posted at 2023-06-09

概要

GitHub Actionsを使用し、GitHubからHerokuへの自動デプロイを設定する方法を記述致します。

前提条件

まず、以下の条件を満たしていることを確認して下さい。

  • Heroku CLIがインストールされている。
  • Herokuアカウントを所持している。
  • HerokuにデプロイしたいアプリケーションがGitHubリポジトリに存在する。

方法

1. HerokuのAPIキーを取得

Herokuのダッシュボードにログインし、右上のアイコンをクリックし、「Account settings」を選択します。
そこで「API Key」セクションを見つけ、"Reveal"をクリックし、APIキーを表示します。
このキーをメモしておきます。

2. GitHubのリポジトリにSecretsを追加

リポジトリのメインページで「Settings」タブを選択し、「Secrets」をクリックします。
"New repository secret"をクリックして、新しいシークレットを追加します。
シークレットの名前は

  • HEROKU_API_KEY とし、先程メモしたAPIキーを値として入力。
  • HEROKU_APP_NAMEというシークレットを作成し、その値としてHerokuアプリケーションの名前を入力。

3. GitHub Actionsのワークフローファイルを作成

GitHubリポジトリのルートに .github/workflows というディレクトリを作成し、その中にワークフローファイル(例えば、deploy.yml)を作成します。
以下はそのワークフローファイルの一例になります。

deploy.yml
name: Deploy to Heroku
on:
  push:
    branches:
      - main

jobs:
  build:
    runs-on: ubuntu-latest

    steps:
      - uses: actions/checkout@v2

      - name: Login to Heroku
        uses: akhileshns/heroku-deploy@v3.12.12 # This is the action
        with:
          heroku_api_key: ${{ secrets.HEROKU_API_KEY }}
          heroku_app_name: ${{ secrets.HEROKU_APP_NAME }}
          heroku_email: "your-email@example.com"

heroku_emailのところには`herokuで使用しているメールアドレスの置き換えて下さい。
これにより、GitHubのmainブランチにプッシュされると、新しいバージョンのアプリがHerokuに自動的にデプロイされるようになります。

4. ワークフローファイルをGitHubにプッシュ

以上の設定をリポジトリにコミットしてプッシュします。するとGitHub Actionsが自動的にワークフローを読み込み、設定に従ってアクションを実行します。

5. 実行の確認

実行されたことを確認するには、Githubのレポジトリのタブの「Actions」を参照して確認致します。
ここで、過去の実行されたワークフローを確認する事がし、完了です。

これがGitHub Actionsを使用してHerokuに自動デプロイする基本的な手順ですが、各プロジェクトの要件により設定内容が異なるため、必要に応じて適宜調整するとよいと思います。

参考

4
1
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
4
1