Python: GitHub Actions ワークフローの設定

このドキュメントはGitHub Actions でデプロイするガイドの一部です。完全なガイドはこちらからご覧いただけます:GitHub Actions を使って Python コードをデプロイする方法

👋 Stackhero ドキュメントへようこそ!

Stackhero は、デプロイ作業を効率化するために設計された、すぐに使える Python クラウド ソリューションを提供しています:

  • シンプルな git push だけで、数秒でアプリケーションを本番環境にデプロイできます。
  • ご自身のドメイン名を利用可能で、HTTPS 証明書の自動設定により安全な接続も自動で管理されます。
  • 自動バックアップワンクリックアップデート予測可能な料金体系により、インフラ管理ではなくコードに集中できます。
  • プライベートかつ専用インフラ上で、強力なパフォーマンスセキュリティを実現。お客様の環境は分離され、保護されています。

時間を節約し、ワークフローをシンプルに:Stackhero の Python クラウドホスティング なら、わずか 5分でコードを稼働させることができます。

リポジトリ内に .github/workflows ディレクトリがなければ作成し、その中に deploy-to-stackhero.yml というファイルを追加します。

# File: .github/workflows/deploy-to-stackhero.yml

name: Deploy to Stackhero
run-name: Deploy branch "${{ github.ref_name }}" to Stackhero

on:
  push:
    # git push 時にデプロイアクションをトリガーするブランチのリストです。
    # GitHub の「Settings」→「Environments」で、ブランチ名に対応する環境を作成するのを忘れずに。
    # その環境に対応するシークレット "STACKHERO_SSH_PRIVATE_KEY" と変数 "STACKHERO_ENDPOINT" を追加してください。
    branches: [ "production", "staging" ]

jobs:
  Deploy:
    environment: ${{ github.ref_name }}
    runs-on: ubuntu-latest
    steps:
    - uses: stackhero-io/github-actions-deploy-to-stackhero@v1
      with:
        # シークレット "STACKHERO_SSH_PRIVATE_KEY" と変数 "STACKHERO_ENDPOINT" は、GitHub の「Settings」→「Environments」で該当ブランチの環境に設定してください。
        ssh_private_key: ${{ secrets.STACKHERO_SSH_PRIVATE_KEY }}
        endpoint: ${{ vars.STACKHERO_ENDPOINT }}

ワークフローファイルを追加したら、変更をコミットします:

git add -A .
git commit -m "Add GitHub Actions to deploy to Stackhero"

本番ブランチを作成するには:

git checkout -b production

そして、変更を GitHub に push します:

git push --set-upstream origin production

これで、production ブランチが GitHub に push され、GitHub Actions がトリガーされて Stackhero インスタンスへコードがデプロイされます。

デプロイ状況を確認するには、GitHub プロジェクトページで Actions をクリックしてください。

本番環境にデプロイされた GitHub Actions本番環境にデプロイされた GitHub Actions

以上で、GitHub Actions を使った本番環境への自動デプロイが完了です。