高木のブログ

GitHub Actionsで使うruby/setup-rubyのバージョンをv1.31.1からv1.51.1に上げた

2020/11/17

問題

毎時働いてくれているGitHub Actionsのワークフローがコケるようになった。
エラー文を見ると、非推奨となったset-envの警告。

Error: Unable to process command '::set-env name=PATH::/home/runner/.rubies/ruby-2.7.1/bin:/home/linuxbrew/.linuxbrew/bin:/home/linuxbrew/.linuxbrew/sbin:/opt/pipx_bin:/usr/share/rust/.cargo/bin:/home/runner/.config/composer/vendor/bin:/home/runner/.dotnet/tools:/snap/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/usr/local/games:/snap/bin' successfully.
Error: The `set-env` command is disabled. Please upgrade to using Environment Files or opt into unsecure command execution by setting the `ACTIONS_ALLOW_UNSECURE_COMMANDS` environment variable to `true`. For more information see: https://github.blog/changelog/2020-10-01-github-actions-deprecating-set-env-and-add-path-commands/

原因

ワークフローでは使っていなかったが、いろいろ調べているとその中で使っている「ruby/setup-ruby」で使わているっぽいことがわかった。(コミットを追ったけどエビデンスは見つけることができなかった。)

解決方法

とりあえず犯人はわかったので、最新版を使うように修正して解決した。

.github/workflows/ruby.yml
    steps:
    - uses: actions/checkout@v2
    - name: Set up Ruby
-     uses: ruby/setup-ruby@ec106b438a1ff6ff109590de34ddc62c540232e0
+     uses: ruby/setup-ruby@v1.51.1
      with:
        ruby-version: 2.7
    - name: Install dependencies

ec106b438a1ff6ff109590de34ddc62c540232e0v1.31.1のコミットハッシュ値

参考

GitHub Actions: Deprecating set-env and add-path commands - GitHub Changelog


Pixela