はじめに
2月から趣味のブログをnoteからPelicaとNetlifyの組み合わせで運用していこうと思っていたが環境構築の際に Error setting python version from runtime.txt
が発生したためメモを残す。
NetlifyでのPythonデフォルトバージョンは2.7
この記事を書いた2020/02/05時点でNetlifyで使っているPythonのデフォルトのバージョンは2.7となっている。確認方法だが、まずNetlifyのSettings → Build & Deploy → Build image selectionから使われているBuild imageがわかる。そして、このBuild image内部で使われている言語のバージョンについてGitHub上のドキュメントに書かれており各言語のバージョンが確認できる。次のURLはBuild image内で使われている言語のバージョン一覧に飛ぶようになっている。
Ubuntu Xenial 16.04 (default) から抜粋となるが、記述時点のものを載せておく。
- Ruby - RUBY_VERSION, .ruby-version
- 2.6.2 (default)
- Any version that rvm can install.
- Node.js - NODE_VERSION, .nvmrc, .node-version
- 10 (default)
- Any version that nvm can install.
- Python - runtime.txt or Pipfile
- 2.7 (default)
- 3.5
- 3.7
- PHP - PHP_VERSION
- 5.6 (default)
- 7.2
- Go - GO_VERSION
- 1.12 (default)
- Java
- 8 (default)
- Emacs
- 25 (default)
- Erlang
- 21 (default)
- Elixir
- 1.7 (default)
その他の確認方法
また、URL先の情報も随時更新されていくと思うので、更新されたときのために別の方法も書いておく。Netlify上のBuild commandで ls -al /opt/buildhome/
を実行することで、内部のディレクトリを確認することが出来る。画像は実際にNetlify上でコマンドを実行したものになる。この場合、2.7と3.5と3.7が使えることになる。Ubuntu Xenial 16.04 (default) に載っているものと同じなので正しいと考えられる。
NetlifyでPythonのバージョンを変えるには
もともとPythonのバージョンを変更しようとしたときに起こったエラーではあるのだが、runtime.txtにバージョン情報を記述することで変更が可能となる。自分の場合は2.7と3.5と3.7しか使えないのに3.6を指定していた為起こったエラーであった。
root |(色々) └runtime.txt
runtime.txt中身
3.7
これだけで良い。
参考情報
先人が歩いてくれたおかげで解決がスムーズとなった。投稿日を見ると2年前後経っているため、リンクが切れていることもありブログを書いた。