GitHub Actionsで環境変数を試してみる

はじめに

この記事では、「GitHub Actionsで環境変数とは何か、どう使うのか」について書いています。

GitHub Actionsは様々なことを自動で行わせることができる便利な機能で、色々使えるようになりたいと機能を試しながら勉強した内容を記事にしました。

自分に向けた備忘録でもありますが、「GitHub Actionsで環境変数をよく知らない」や「jobs間などで変数を使いまわしたい」な人の一助になれば嬉しいです。

環境変数ってなに?

とても平たく説明すると「job間やsteps間で共通して使える変数」のようなものです。

例えば「この名前はymlファイル内で何か所も書いてるけど後で変更しやすいように一か所で定義したい」などの時に役に立ちます。

GitHub Actionsでは、GitHub Actiuonsで定義された環境変数もありますが、自分で変数を作って使用することもできます。

簡単な例で環境変数を試してみる

では簡単な例で見てみましょう

name: Action Sample

on:
  workflow_dispatch:

env:
  GREETING: Hello

jobs:
  greet:

    runs-on: ubuntu-latest

    steps:
      - name: ${{env.GREETING}}
        run: echo "Hello World!"

Hello World!を出力するだけのものです。

ポイントは2つで、1つ目は

env:
  GREETING: Hello

GREETINGという環境変数(この中身はHello)を定義していること。そして2つ目は

    steps:
      - name: ${{env.GREETING}}

とnameに環境変数を使用している点です。

環境変数を使用する時は${{env.環境変数名}}と書きます。

(※正確にはymlファイル上で使用する場合であり、bashシェルで使用する場合などはまた書き方が違うのですが、今回は簡単な例で環境変数というものがどんなものかを伝えたいのでそのことには触れません)

こうすることでアクション実行時、nameHelloになります。

では上のコードのアクションを実行させその内容を確認してみましょう。画面は以下のようになります。

赤枠の部分、nameで指定した文字列が表示されますが、環境変数で指定したHelloが表示されているのが分かります。(${{env.GREETING}}とは表示されていません)

おわりに

GitHub Actionsで環境変数とは何か、どう使うのか」について解説しました。

今回は導入として基本的な使い方を説明しましたが、非常に便利ですので是非これをきっかけに公式ドキュメントなどで使い方を学ぼうと思っていただけたら幸いです。

さいごに、記事を書く上で参考にしたサイトのリンクを以下に掲載します。合わせて読んでいただくと良いかと思います。

https://docs.github.com/ja/actions/learn-github-actions/environment-variables

https://book.st-hakky.com/docs/github-actions-environment-variable/