問題
以下のようにデプロイのGitHub Actionsを設定したが、掲題のエラーを得る。
steps: - name: Clone repository uses: actions/checkout@v2 - name: Upload to Deno Deploy uses: denoland/deployctl@v1 with: project: "fresh-youtube" entrypoint: "./main.ts"
原因
- import path の解決が上手くいってない模様
- import path、とくにリモートのmoduleは、import_mapにより解決しているはず
- ゆえに、GitHub Actionsのstepにも、それに相当する情報を食わせる必要があるはず
- 参考: Relative import path "preact" not prefixed with / or ./ or ../deno(import-prefix-missing) · Issue #514 · denoland/fresh · GitHub
解決
steps:
- name: Clone repository
uses: actions/checkout@v2
- name: Upload to Deno Deploy
uses: denoland/deployctl@v1
with:
project: "fresh-youtube"
entrypoint: "./main.ts"
+. import-map: "./import_map.json"
雑感
- deno、ノーストレスでTypeScriptが書けるのがよい。
- あと、dependenciesのimportが直接的かつ明示的なのがよい。
- 仕事でコード書かないからこそ、いつも触ってない技術をもっと積極的に触っていかなくてはならないと感じた。
- ということで fresh framework で使えるめちゃくちゃ良い感じのコンポーネント作ったのでぜひStarしてあげてください。
DRYな備忘録として