OREILLYの『サーバーレスシングルページアプリケーション』を勉強中だったのですが,sspa server
コマンドが動かず苦戦したので共有.
ポイント
1. bashではなくpowershell を使ってた.
そもそもsspaファイルはラッパースクリプトの定義ファイルです.ラッパースクリプトとは既存のbashコマンド(ls
とかcd
とか)を書き足したり,上書きしたりするスクリプトです.なのでpowershellではそのまま打ち込んでも起動しません.
bash sspa server
と打ち込むことでbashコマンドとして機能します.
2. LFではなくCRLFを使ってた.
gitHubやVScodeでは改行コードをデフォルトでCRLFを採用しています.ですが,bashではLFを採用しており,スクリプトを実行しようとするとエラーを吐きます.
因みに直接編集を行わなくてもgitHubで操作した場合でも改行コードが変わる場合があるらしいです.検証してないので真偽は分かりません.
3. python2ではなくpython3を使ってた
自分が普段使っているpythonはpython3だったのですが,このテキストではpython2を想定しているみたいです.コマンドもpython2からpython3でpython
からpython3
に変更されたので,sspaのファイルをexec python -m ~
からexec python3 -m ~
と書き換える必要があります.まだ,テキストを読み進めてないのでバージョン違いによる動作の影響は今のところ不明です.ただ,序盤は開発用のサーバーを起動してるだけなのでしばらくは問題なさそうです.