自サイトの更新をもっと楽にしたい
現状
構想
💭こんなことできるのかー
microCMSで記事書く→WebhookでGitHub Actionsが実行される→HugoがContent adaptersでページ作ってビルドする→自動でデプロイされる→サイトが更新される、って感じにできるといいな〜
素直にWordPress使えばいいんだろうけど、こっちのほうが惹かれるので一旦できるとこまでやってみよう 自サイト用のリモートリポジトリをつくる
⚠️エラー出た(1回目)
そういえばテーマまわりで他のリポジトリをクローンしてたんだった
記事のとおりに対処
⚠️エラー出た(2回目)
今はmasterじゃなくてmainなんやでみたいなやつ
なんか前もこれでつまずいたな
ふだんからコマンド打ってるわけじゃないから毎回記憶なくす
気を取り直してgit pushを試みる
⚠️エラー出た(3回目)
パスワード認証は廃止されたからアクセストークン持ってこいやみたいなやつ
なんか前もこれで以下略
じゃあパスワード入力求めないで最初に言ってよ〜(って前のときも思った気がする)
⚠️エラー出た(4回目)
初歩的なやつっぽい〜
ワハハ!
⚠️エラー出た(5回目)
トークン生成したのに弾かれる……
SSH鍵を作る方法ならいけるらしい?のでやってみる
⚠️エラー出た(6回目)
鍵がオープンになってて危ないからだめ!みたいなやつ
パーミッションを変えればいけるらしい?のでやってみる
⚠️エラー出た(7回目)
invalid formatとかなんとか言われた
パーミッションがどうとかいうより、もっと手前の何かを間違えてそうだなと感じ始めた(ただの勘)
開きっぱなしにしておいた↑のページたちのタブを反復横跳びしてみる……
名前を指定しない時は勝手に~/.ssh内に鍵を生成してくれますが、上記のように名前を指定するときは~/.ssh内にいないとこの中に生成してくれないので注意です。
ぜっっっっったいこれや!!!!!!!!!!
確認したらやっぱり想定してないとこに秘密鍵のファイルができてた
さっきパーミッション変えたのは別のファイルだったっぽい
ファイル移動した
いけました祝
ひとまず、ビルドとFTPデプロイを自動化しよう
反映してみる
× uses: SamKirkland/FTP-Deploy-Action@v4
バージョンおかしくない?とのエラーが出た
◎ uses: SamKirkland/FTP-Deploy-Action@v4.3.5
× local-dir: ./public
ディレクトリだから/で終わらないとだめだよ〜とのエラーが出た
◎ local-dir: ./public
× server-dir: /public_html
同上
それと、最初どのディレクトリを指定したらいいのかわかんなくて一回サイトが爆発炎上した
◎ server-dir: /home/<ユーザー名>/pub/
うまく動いた!
↑このままだとてがろぐのデータも上書きされるから、除外するようにしないとだ code:deploy.yml
- name: Deploy via FTP
uses: SamKirkland/FTP-Deploy-Action@v4.3.5
with:
server: ${{ secrets.FTP_SERVER }}
username: ${{ secrets.FTP_USERNAME }}
password: ${{ secrets.FTP_PASSWORD }}
protocol: ftp # FTP を使用
local-dir: ./public/ # Hugo のデフォルトの出力ディレクトリ
server-dir: /home/<ユーザー名>/pub/ # FTP サーバー上のデプロイ先ディレクトリ
exclude: |
**/tegalog.xml # てがろぐの投稿データは除外
なんかエラー出た
Error: fatal: No url found for submodule path 'themes/blank' in .gitmodules
なんで今???って感じだけど、どっかでなんか触っちゃったのかなあ
言われた通りにやる感じ
$ git submodule add https://github.com/vimux/blank theme/blank
なんかエラー出た
Updates were rejected because the tip of your current branch is behind
こうしたらいいよ〜という対処法も表示されてるので、その通りにやり直す
できた!
ここからは
コンテンツが全くないまっさらの状態なら、csvでインポートできるみたい
これはオプショナルだし走りながらでいい