0.8.17ではchmod必要
Digdag 0.8.17では以下のようにselfupdate後にchmodが必要だった
# id
uid=0(root) gid=0(root) groups=0(root) context=unconfined_u:unconfined_r:unconfined_t:s0-s0:c0.c1023
# umask
0022
# ls -l `which digdag`
-rwxr-xr-x. 1 root root 24144190 Oct 8 10:13 /usr/local/bin/digdag
# digdag --version
0.8.17
# digdag selfupdate
2016-10-25 10:25:33 +0900: Digdag v0.8.17
Checking the latest version...
Upgrading to 0.8.17...
Verifying...
Upgraded to 0.8.17
# ls -l `which digdag`
-rwx--x--x. 1 root root 24144190 Oct 25 10:25 /usr/local/bin/digdag
# su - vagrant
$ digdag --version
bash: /usr/local/bin/digdag: Permission denied
$ sudo chmod 755 `which digdag`
$ digdag --version
0.8.17
embulkは大丈夫
# ls -l `which embulk`
-rwxr-xr-x. 1 root root 42916789 Aug 13 08:41 /usr/local/bin/embulk
# embulk selfupdate
2016-10-26 13:10:34.684 +0900: Embulk v0.8.13
Checking the latest version...
Found new version 0.8.14.
Downloading https://dl.bintray.com/embulk/maven/embulk-0.8.14.jar ...
Updated to 0.8.14.
# ls -l `which embulk`
-rwxr-xr-x. 1 root root 41500238 Oct 26 13:10 /usr/local/bin/embulk
0.8.18で改善(2016/10/31追記)
本記事のコメントにある通り、0.8.18では改善した
$ sudo /usr/local/bin/digdag selfupdate
2016-10-31 15:32:18 +0900: Digdag v0.8.17
Checking the latest version...
Upgrading to 0.8.18...
Verifying...
Upgraded to 0.8.18
$ sudo /usr/local/bin/digdag selfupdate
2016-10-31 15:33:05 +0900: Digdag v0.8.18
Checking the latest version...
Upgrading to 0.8.18...
Verifying...
Upgraded to 0.8.18
$ ls -l `which digdag`
-rwxr-xr-x. 1 root root 25269257 Oct 31 15:33 /usr/local/bin/digdag
感謝!
おまけ:サーバとクライアントでバージョンが合わないとエラー
Digdagサーバだけselfupdate&サーバプロセス再起動した状態だと、Digdagクライアントで以下のようになる
$ digdag version
2016-10-31 15:57:46 +0900: Digdag v0.8.17
Client version: 0.8.17
Server version: 0.8.18
$ digdag workflows
2016-10-31 16:00:27 +0900: Digdag v0.8.17
error: Client and server version mismatch: Client: 0.8.17, Server: 0.8.18.
Please run following command locally to download a compatible version with the server:
digdag selfupdate 0.8.18
Digdagクライアントの方が先にバージョンアップした状態でも同じ
$ digdag version
2016-10-31 16:04:28 +0900: Digdag v0.8.18
Client version: 0.8.18
Server version: 0.8.17
$ digdag workflows
2016-10-31 16:04:36 +0900: Digdag v0.8.18
error: Client and server version mismatch: Client: 0.8.18, Server: 0.8.17.
Please run following command locally to download a compatible version with the server:
digdag selfupdate 0.8.17
しかし、クライアントと通信しないサーバ(Workflow executorやAgentだけが動いている)なら、バージョンが一致していなくても問題なくWorkflow executorやAgentは動作する