OpenCodeでGitHub Actions CI/CDを構築するチュートリアル

OpenCodeとGitHub Actionsを組み合わせたCI/CDパイプラインの構築方法を解説。自動デプロイやDevOpsの実践的な手順を紹介。

OpenCodeGitHub ActionsCI/CD自動デプロイDevOps2026/5/25

はじめに

OpenCodeは、オープンソースのコード管理・実行プラットフォームです。このチュートリアルでは、GitHub Actionsを使ってOpenCodeプロジェクトのCI/CDパイプラインを構築する方法をステップバイステップで解説します。自動テスト、ビルド、デプロイを自動化し、開発効率を向上させましょう。

前提条件

  • GitHubアカウント
  • OpenCodeプロジェクト(リポジトリにコードがプッシュされていること)
  • 基本的なGitとGitHub Actionsの知識
  • ステップ1: GitHub Actionsのワークフローファイルを作成する

    リポジトリのルートに.github/workflowsディレクトリを作成し、その中にYAMLファイル(例:ci-cd.yml)を配置します。

    name: CI/CD Pipeline
    

    on: push: branches: [ main ] pull_request: branches: [ main ]

    jobs: test: runs-on: ubuntu-latest steps: - uses: actions/checkout@v3 - name: Setup OpenCode run: | curl -fsSL https://opencode.sh/install.sh | bash opencode --version - name: Run tests run: opencode test

    deploy: needs: test runs-on: ubuntu-latest if: github.ref == 'refs/heads/main' steps: - uses: actions/checkout@v3 - name: Deploy to production run: opencode deploy --env production

    ステップ2: ワークフローのトリガーを理解する

  • on.push:mainブランチへのプッシュ時にパイプラインを起動
  • on.pull_request:mainブランチへのPR作成時にもテストを実行
  • jobs:並列または直列で実行するジョブを定義
  • ステップ3: テストジョブの設定

    テストジョブでは、OpenCodeをインストールし、プロジェクトのテストを実行します。opencode testコマンドがテストスイートを実行することを前提としています。必要に応じて、テストフレームワーク(Jest、Mochaなど)の設定を別途行ってください。

    ステップ4: デプロイジョブの設定

    デプロイジョブはテストジョブの成功後に実行され、opencode deployコマンドで本番環境にデプロイします。環境変数やシークレットはGitHub Secretsに保存し、ワークフロー内で安全に参照します。

    <li>name: Deploy</li>
      env:
        OPENCODE_API_KEY: ${{ secrets.OPENCODE_API_KEY }}
      run: opencode deploy --env production
    

    ステップ5: シークレットの設定

    GitHubリポジトリの「Settings」→「Secrets and variables」→「Actions」で、以下のシークレットを追加します。

  • OPENCODE_API_KEY:OpenCodeのAPIキー
  • その他必要な環境変数
  • ステップ6: ワークフローのテスト

    ワークフローファイルをコミットしてプッシュすると、自動的にパイプラインが実行されます。GitHubの「Actions」タブで実行状況を確認できます。

    高度な設定

    マルチブランチ対応

    複数のブランチで異なるデプロイ先を設定する場合:

    <li>name: Deploy</li>
      run: |
        if [ "${{ github.ref }}" == "refs/heads/main" ]; then
          opencode deploy --env production
        elif [ "${{ github.ref }}" == "refs/heads/staging" ]; then
          opencode deploy --env staging
        fi
    

    キャッシュの利用

    依存関係のインストールを高速化するためにキャッシュを追加:

    <li>name: Cache OpenCode dependencies</li>
      uses: actions/cache@v3
      with:
        path: ~/.opencode
        key: ${{ runner.os }}-opencode-${{ hashFiles('**/opencode.lock') }}
    

    トラブルシューティング

  • ワークフローが実行されない:YAMLのインデントが正しいか確認。onの指定が正しいか確認。
  • テストが失敗する:ローカルでopencode testが通るか確認。環境変数の不足がないか確認。
  • デプロイに失敗する:APIキーが正しく設定されているか確認。デプロイ先の設定を確認。
  • まとめ

    このチュートリアルでは、OpenCodeとGitHub Actionsを連携させたCI/CDパイプラインの構築方法を紹介しました。自動テストと自動デプロイにより、開発サイクルを高速化し、ヒューマンエラーを減らすことができます。さらに高度な設定については、OpenCodeの公式ドキュメントを参照してください。

    参考リンク

  • OpenCode公式サイト
  • GitHub Actionsドキュメント
  • OpenCode CLIリファレンス
  • 🛡️
    ContentLens 品質チェック済み

    この記事はAI品質チェッカーContentLensで分析されています。記事を貼り付けるだけで誰でも無料で品質スコアを確認できます。