now

`now alias`がおかしいので、正しく動作するシェルワンライナー

now alias がおかしい

保存していたキャプチャがどっかいってしまったので曖昧ですが、now2からnow aliasargument ...みたいなエラーになりnow alias <url> <alias>でやらないと効かなくなってしまいました。

その後、https://github.com/zeit/now-cli/issues/1701こういうものができたのでyarn global add nowで更新し、now aliasは治りましたが、対象のurlが何故か古いものになってしまいます。

解決シェルワンライナー

これです。

now -n appname \
&& sh -c 'now ls appname | while read line; do if echo \"$line\" | grep \"appname-\" > /dev/null; then set $line; echo \"$2\"; break; fi; done;' | xargs -I@ now ln @ appname \
&& now rm appname --safe --yes

1行目

これはただデプロイしてるだけです。ちなみに-nはアプリ名(appname)を指定してます。

2行目

now ls appnameでこのアプリの全部のurlを含む詳細一覧を出します。その一覧を1行ずつ見ていってappname-が含まれている部分が来たらそれが最新のurlを含む行なので、そこからurlを取り出しnow lnへ渡します。

3行目

最後にデプロイしたもの以外(過去にデプロイした古いアプリ)を全部削除します。