GitHub Actions は、GitHub のリポジトリで何かが起きたときに、決まった処理を自動で動かす機能です。きっかけには、変更が送られたときや、変更の取り込みの依頼(プルリクエスト)が出されたときを選べます。決まった日時に動かすことも、手で動かすこともできます。動かす処理は、ワークフローと呼ぶ設定のファイルに書いて、リポジトリの中に置きます。処理は、GitHub が用意する Linux・Windows・macOS の仮想のパソコンで動きます。自社で用意したパソコンで動かすこともできます。
よく使うのは、変更が送られるたびにテストを流す使い方です。人が覚えていなくても、テストは毎回流れます。AI にプログラムを直させたときも、前に作った機能が壊れていないかを確かめられます(テストファースト)。テストが通った変更を、そのまま本番に反映する設定もできます。
本番のサーバーや外のサービスにつなぐ鍵は、Secrets と呼ぶ暗号化された保管場所に入れます。ワークフローのファイルには書きません。Secrets の値は、ワークフローの中で使うと書いたときだけ読まれます。処理の記録(ログ)に出た値は自動で伏せられますが、公式の説明でも、伏せる処理が必ず効くとは限らないとしています。鍵には、その処理に要る分だけの権限を付けておきます(最小権限)。
費用は、公開のリポジトリで GitHub の標準の環境を使う分は無料です。非公開のリポジトリでは、契約ごとに無料で使える時間の枠があり、超えた分が請求されます。