Day23 サーバーレスなのにサーバーあるような雰囲気のシステムを作るなら?
かなり限られた話なのであんまり期待しないでください.
何を作ったの?
今回は,とあるシステム編集システム(?)を作りました.
凄い雑に言うなら,複雑な設定ファイルをGUI上でいじれるみたいな.
そのGUIというのはHTMLです.
その設定ファイルというのはGitHubレポジトリにあります.
かなり最強のAPI,GitHub REST APIとは?
GitHub REST APIというのは,名の通りGitHubの操作を出来るREST APIです.
何が出来るのかというと,Issue作成とかコミットにコメントを付けたりとか…あとはレポジトリ上のコードを編集したり,ファイルを持ってきたり更新したり,コミットを作ったりできます.
そう,GitHub上で操作できる事 (GitHubのWebエディターも含めて) はほぼなんでもできるといっても過言ではないです.
そう,コミットを作れるんです.ファイルを編集できるんです.
…つまり,ファイルサーバーになるんじゃないですか?
というわけで私は考えてしまいました.
いつぞやでStaticAPIなる謎の技術を勝手に紹介しましたが,それの編集を行うWebアプリが作れます.こういえばなんとなく分かるでしょうか.
どうやって使うんや!
はい.これでいいですか.
というのも,このプロジェクト自体はかなりAI任せに作ったらなんかできたレベルなんですよね.
正直最近自力コーディング力が落ちてきているような.
まぁちなみにGitHubのレポジトリには一応ちゃんとサイズ制限はあります.
LFSとか使ったとしてもまぁ制限はあります.
なので,ストレージみたいに使うのは無理かな?
(いや,複数のレポジトリを作るとかならできるか? ファイルのリストを持つレポジトリと,ファイルを持つレポジトリをファイル数だけ作ってとか…)
このように,夢が広がります.(多分規約とか的にあれなので辞めましょう.)
つまりどのような使い方が理想?
あるアプリケーションがあって,そのニュースとか設定とかを提供するような静的APIサービスをGitHub Pagesで作って,それを編集するためのGUIシステムとしてGitHub REST APIを使ったものを作れば,全部サーバーレスで作れますね.っていう…
というわけで
あなたもあるアプリケーションがあって(中略)全部サーバーレスで作る場合はGitHub REST APIでも使ってみてはいかがでしょうか.
変なこと言ってますけど,Issue管理とかでも出来るので,このGitHub REST API自体は便利なので使ってみてください.