概要
GitHub Actionで、特定リポジトリにコードがプッシュされたときにコンパイルするように設定する。
GitHub Actionとは
「特定ブランチにpushされたとき、これこれの処理を行う」といったイベント駆動の処理を実行できる機能。
使い方
今回はひとまずActionを回すということで、「masterにpull-requestが来たら、gfortranでコンパイルが通るかを確認する」というリポジトリを作る。
新たなアクションの設定
リポジトリの.github/workflows
の下にmyactions.yml
のようなymlファイルを記述する。
内容
on
にイベント、つまり「xxが起こったら」を記述する。
on: push: branches: [ master ] pull_request: branches: [ master ]
jobs
以下に具体的な処理(job)を記述する。書かれた処理はすべて実行される。jobはstepに分けて書くことができる。
- uses: actions/checkout@v2
という記述があるが、これは外部のActionを取り込む。「actions/checkout」とはサンプルっぽい文字列だが、下記のリポジトリにコードがある。
今回は「src/main.f90
をgfortranでコンパイルする」ので、ステップに書き起こす。
- name: Run a one-line script run: gfortran -o dist/test.out src/main.f90
CIの実行
上記のyamlファイルをコミットして、masterにpull requestをすると、自動的にコンパイル処理が走り、pull request画面でその合否が表示される。
stepごとの状況やログも詳細に見ることができる。