Netlify の Pythonのバージョンが変わって焦る
ブログのビルドができなくて焦る
Netlify のビルドで以下のようなエラーが出てブログのビルドが出来なくなって いました。
ローカルではうまく生成できていたのにおかしいなと思い、ログを追っていくとPython のバージョンが見つからず、Python2が使われていました。
11:31:59 PM: /usr/local/bin/run-build-functions.sh: line 150: /opt/buildhome/python3.6.2/bin/activate: No such file or directory 11:31:59 PM: Error setting python version from runtime.txt 11:31:59 PM: Will use default version (2.7)
Netlify の ガイド は以下のようになっています。
PYTHON
We have Python versions 2.7.4, 3.4.0, 3.5.2, and 3.6.2 available. While 2.7.4 is the default, you can select one of those versions with a runtime.txt containing the version number (from those 4) that you prefer.
ガイドを確認しても、指定した Python 3.6.2 が提供されているはずです。
でも、ログを確認する限り Not Foundとなっています。
解決
怪しいので、 Deploy setting で /opt/buildhome 以下が確認できるよう
ls -al /opt/buildhome/
を指定しました。
結果をログで確認すると、Python 3.6.2 は削除されたようで 3.6.4 がインストール されているのがわかります。勝手に消すなよ。
12:34:27 AM: drwxr-xr-x 1 buildbot nogroup 4096 Feb 23 15:34 . 12:34:27 AM: drwxr-xr-x 1 root root 4096 Feb 23 15:33 .. 12:34:27 AM: -rw-r--r-- 1 buildbot nogroup 200 Feb 22 17:30 .bash_profile 12:34:27 AM: -rw-r--r-- 1 buildbot nogroup 118 Feb 22 17:30 .bashrc 12:34:27 AM: drwxr-xr-x 3 root root 4096 Feb 22 17:33 .binrc 12:34:27 AM: drwxr-xr-x 3 buildbot nogroup 4096 Feb 22 17:33 .boot 12:34:27 AM: drwxrwxrwx 3 buildbot nogroup 4096 Feb 15 15:18 .cache 12:34:27 AM: drwxr-xr-x 9 buildbot nogroup 4096 Feb 22 17:34 .cask 12:34:27 AM: drwx------ 1 buildbot nogroup 4096 Feb 22 17:32 .config 12:34:27 AM: drwxr-xr-x 3 buildbot nogroup 4096 Feb 22 17:31 .gem 12:34:27 AM: drwx------ 2 buildbot nogroup 4096 Feb 22 17:32 .gnupg 12:34:27 AM: drwxr-xr-x 3 buildbot nogroup 4096 Feb 22 17:33 .lein 12:34:27 AM: drwxr-xr-x 3 buildbot nogroup 4096 Feb 22 17:33 .m2 12:34:27 AM: -rw-r--r-- 1 buildbot nogroup 118 Feb 22 17:30 .mkshrc 12:34:27 AM: drwxr-xr-x 141 buildbot nogroup 4096 Feb 22 17:32 .npm 12:34:27 AM: drwxr-xr-x 1 buildbot nogroup 4096 Feb 22 17:32 .nvm 12:34:27 AM: drwxr-xr-x 1 buildbot nogroup 4096 Feb 23 15:34 .php 12:34:27 AM: -rw-r--r-- 1 buildbot nogroup 317 Feb 22 17:32 .profile 12:34:27 AM: drwxr-xr-x 6 buildbot nogroup 4096 Feb 22 17:33 python2.7 12:34:27 AM: lrwxrwxrwx 1 buildbot nogroup 24 Feb 22 17:33 python2.7.5 -> /opt/buildhome/python2.7 12:34:27 AM: drwxr-xr-x 5 buildbot nogroup 4096 Feb 22 17:33 python3.4 12:34:27 AM: lrwxrwxrwx 1 buildbot nogroup 24 Feb 22 17:33 python3.4.0 -> /opt/buildhome/python3.4 12:34:27 AM: drwxr-xr-x 4 buildbot nogroup 4096 Feb 22 17:33 python3.5 12:34:27 AM: lrwxrwxrwx 1 buildbot nogroup 24 Feb 22 17:33 python3.5.5 -> /opt/buildhome/python3.5 12:34:27 AM: drwxr-xr-x 1 buildbot nogroup 4096 Feb 22 17:33 python3.6 12:34:27 AM: lrwxrwxrwx 1 buildbot nogroup 24 Feb 22 17:33 python3.6.4 -> /opt/buildhome/python3.6 12:34:27 AM: drwxr-xr-x 25 buildbot nogroup 4096 Feb 22 17:30 .rvm 12:34:27 AM: -rw-r--r-- 1 buildbot nogroup 25 Feb 22 17:30 .rvmrc 12:34:27 AM: drwxr-xr-x 4 buildbot nogroup 4096 Feb 22 17:32 .yarn 12:34:27 AM: -rw-r--r-- 1 buildbot nogroup 118 Feb 22 17:30 .zlogin 12:34:27 AM: -rw-r--r-- 1 buildbot nogroup 118 Feb 22 17:30 .zshrc<Paste>
よく見ると、python3.6.4 は python3.6 にシンボリックリンクが切られているので、 詳細なバージョンを指定せずこちらを指定せよという意図なのでしょう。
runtime.txt に 3.6を指定して再 Deployして無事ビルドできました。