okaryo.log

Dart用のCI環境をGithubActionsに準備する | okaryo.log

Dart用のCI環境をGithubActionsに準備する

    #Dart#GitHubActions#GitHub#CI/CD

やりたいこと

Githubにプッシュするたびにテストとリントを実行するようにしたい。

今回はピュアなDart環境用のCIを作る。Flutter環境はこちらの記事を参考にされたい。

Flutter用のCI環境をGithubActionsに準備する

事前準備

リント用にanalysis_options.yamlを事前に作成して設定を記述しておく。

余談だが、analysis_optionsの拡張子をymlとしていたら動かなくて詰まった。。

workflowsを作成

.github/workflows/[ファイル名].ymlを作成し、以下を記述する。

name: Test and Lint

on:
  push:

jobs:
  test-and-lint:
    name: Run test and lint
    runs-on: ubuntu-latest
    steps:
      - uses: actions/checkout@v3
      - name: Set up Dart SDK
        uses: dart-lang/setup-dart@v1
        with:
          sdk: 2.13.0
      - name: Install dependencies
        run: dart pub get
      - name: Run test
        run: dart run test
      - name: Run analyze
        run: dart analyze

Dart SDKのActionsのMarketplaceで見つけたdart-lang/setup-dart@v1を使用した。バージョンやFlavor等の設定もできる。詳しくはREADMEを参照されたい。

- name: Set up Dart SDK
  uses: dart-lang/setup-dart@v1
  with:
    sdk: 2.13.0

Dart SDKがセットアップできたらdart pub getでパッケージをインストールし、dart run testdart analyzeでそれぞれテストとリントを実行する。

これでGithubにプッシュするたびにテストとリントが走るようになった。

おわり

最近は個人的にTDDがアツいのもあってプライベートでもプロジェクトを始める時は、まずテスト環境とCI環境のセットアップからやっている。

GithubActionsはMarketplaceにActionsがたくさんあり、簡単にCI環境を構築できるので助かっている。


関連記事
最新記事
プロモーション

This site uses Google Analytics.