0
1

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

AntigravityとGithub mcpでWSLにCI/CDしてみる

0
Posted at

はじめに

GoogleのAI搭載IDE「Antigravity」で、WSLにCI/CDしてみました。
Antigravityのエージェントによるコーディングと、ローカルリソース(WSL)による実行を連携させる構成の備忘録です。

構成概要

  • IDE: Antigravity (Editor / Agent)
  • Repository: GitHub
  • CI/CD: GitHub Actions (Self-hosted Runner)
  • Infrastructure: WSL 2 (Ubuntu)
  • auto_restart_wsl_cicd_blueprint_1767881142725.png

1. WSL Self-hosted Runner の準備

GitHub Actionsの実行環境をクラウド(GitHub hosted)ではなく、手元のWSL上に構築します。これにより、AntigravityからPushされたコードをローカルのDocker環境等で即座に動作確認できます。

1.1 ランナーのインストール

GitHubのリポジトリ設定(Settings > Actions > Runners)からLinux用アーカイブを取得し、WSL上で展開します。

基本的にはランナーのインストールページのコマンドを実行すればいいです。

LinuxのX64を選択し、Downloadコマンド群の実行>Configureコマンド群を実行

コマンド1.png

1.2 GitHubトークンの取得

Antigravityからのリポジトリ操作に必要なトークン(Fine-grained Personal Access Token)を発行します。

  1. GitHubの右上のアイコン> Settings > Developer settings > Personal access tokens > Fine-grained tokens を開きます。
  2. Generate new token をクリックし、以下を設定します。
  • Repository access: Only select repositories (対象のリポジトリを選択)
  • Permissions: WorkFlows contents(read and write)
    許可.png
  1. 生成されたトークン(github_pat_...)を控えてGithub mcpの設定に反映させる

2. Antigravityでのワークフロー作成

Antigravityのエージェント機能を利用し、Self-hosted Runner向けのワークフローを作成・Pushします。

2.1 ワークフロー定義

.github/workflows/docker-access.yml を作成してもらいました。
runs-on: self-hosted を指定することで、先ほど設定したWSLランナーにジョブが割り振られます。

name: Docker Access on WSL

on:
  push:
    branches: [ main ]
    paths:
      - '.github/workflows/docker-access.yml'
  workflow_dispatch:

jobs:
  launch-container:
    runs-on: self-hosted
    steps:
      - name: Stop existing container if any
        run: docker stop hello-docker-web || true && docker rm hello-docker-web || true
      - name: Launch Hello Docker Web Server
        run: |
          docker run -d \
            --name hello-docker-web \
            --restart always \
            -p 8080:80 \
            nginx:alpine
          
          # カスタムのHello Dockerメッセージを書き込む
          docker exec hello-docker-web sh -c "echo '<h1>Hello Docker from WSL! (Auto-started)</h1>' > /usr/share/nginx/html/index.html"
          
          echo "Web server is running on port 8080."
          echo "Access via: http://localhost:8080 from your Windows browser."
          echo "Restart policy 'always' has been applied."

3. 流れの確認

  1. Antigravityから変更をPush。

  2. WSL側のRunnerログにジョブの着信を確認。
    test-wl.png

  3. Dockerコマンドが正常に実行され、GitHubのActionsタブに成功ステータスが返却されました。
    actions.png

4.実際にアクセスしてみる
確認.png

まとめ

Antigravity IDEの高いコーディング能力と、WSLのローカル実行環境をGitHub Actionsでつなぐことができました。

0
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
0
1

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?