MENU

Bun × GitHub ActionsでCI/CDを実践しよう|初心者でもできる自動化の基本

コードを書いて、毎回手作業でテストやビルドをしていませんか? それ、GitHub Actionsで自動化できます。 この記事では、話題のJavaScriptランタイム「Bun」とGitHub Actionsを組み合わせて、CI/CD(自動化テストとデプロイ)の基本を学べる構成になっています。 Bun初心者でも大丈夫。シンプルな構成で、動くところまで丁寧に解説します。

目次

1. CI/CDってなに?ざっくり解説

  • CI(継続的インテグレーション):コードをマージするたびにテストなどを自動で実行する仕組み
  • CD(継続的デリバリー):テスト通過後、自動でアプリをデプロイする仕組み

BunとGitHub Actionsを使えば、手動作業を大幅に減らすことができます。


2. 今回のゴール

  • GitHubにpushするとBunのプロジェクトでテストを自動実行
  • bun test が成功したら完了(本記事ではデプロイは扱わずCIまで)

3. プロジェクトの準備

  1. Bunで新しいプロジェクトを作成
bun init
  1. テスト用ファイルを用意 例:sum.ts
export const sum = (a: number, b: number) => a + b;

sum.test.ts

import { expect, test } from "bun:test";
import { sum } from "./sum";

test("sum test", () => {
  expect(sum(2, 3)).toBe(5);
});

4. GitHub Actionsの設定ファイルを作る

.github/workflows/ci.yml を作成:

name: CI

on:
  push:
    branches: [ main ]

jobs:
  test:
    runs-on: ubuntu-latest

    steps:
      - uses: actions/checkout@v3
      - name: Install Bun
        run: curl -fsSL https://bun.sh/install | bash

      - name: Add Bun to PATH
        run: echo "${HOME}/.bun/bin" >> $GITHUB_PATH

      - name: Install deps
        run: bun install

      - name: Run tests
        run: bun test

5. 動作確認

  1. この構成をGitHubにpushすると、自動的にCIが実行されます
  2. テスト結果はGitHubの「Actions」タブから確認可能

💡 テストが落ちたときは、どのテストで失敗したかがログに表示されます


まとめ

Bun × GitHub Actionsは、驚くほど簡単にCIを実現できます。 少しずつ環境構築に慣れながら、自動化による効率化を実感していきましょう。 次のステップとしては、「CD(自動デプロイ)」や「複数環境への切り替え」も検討してみると、さらに実践的です。

よかったらシェアしてね!
  • URLをコピーしました!
  • URLをコピーしました!

この記事を書いた人

・IT業界5年~
未経験からエンジニア挑戦組。もともとは技術職、工場経験も有り。
〇現在はソフトウェア開発

・紹介したいこと
未経験→エンジニア挑戦でつまずいたこと、今更聞けない初歩的なこと、勉強していて良かったこと、暗黙的ルールによる落とし穴等

・趣味
ゲームはPC、SwitchでFPSだったりスローライフから様々やります。

コメント

コメントする

目次