[Go][AWS] Elastic Beanstalk で超ちっちゃいCLIサービス「dotti」を作った
[Go][AWS] Elastic Beanstalk で超ちっちゃいCLIサービス「dotti」を作った:
明けましておめでとうございます !!
みなさん元気ですか !!
僕は元気です !!
それはさておき, よくあるこれってどっちが多数なん?的なのを手軽に確認できるサービスというていで, AWS+Go でサービス作りました
CLIから使えるお手軽エンジニア向けサービス的な感じです
制作時間はおよそ 4 時間
いい時代になりましたね
(CLIでサービスって言うんだろうか...なんかちゃんとした言い方あったらすみません )
こんなん
サーバーとクライアントで分けました
サーバー
https://github.com/mentol310/dotti-server
クライアント
https://github.com/mentol310/dotti
サーバーは、
↓ のコードをほぼ丸パクリ
https://dev.classmethod.jp/go/golang-single-binary-web-application-on-elastic-beanstalk/
詰まったところとか悩んだところとか
今回は
シンプルなものが好きです
詰まったところとか
今年初のサービスでありながら地味に人生初のサービスです !!
サービスといっていいのかわかんないですが、サービスって言い張ります !!
サービスとして大きくなってきてから Vue とかでフロント作れば ... ええですよね ... ??
現状デプロイ毎にデータが揮発するので, データ移したりなんやします(そのうち)
と言いつつ多分お金勿体無いので, アラート飛んできたらトメマス ... 短い命をお楽しみください
はじめに
明けましておめでとうございます !!みなさん元気ですか !!
僕は元気です !!
それはさておき, よくあるこれってどっちが多数なん?的なのを手軽に確認できるサービスというていで, AWS+Go でサービス作りました
CLIから使えるお手軽エンジニア向けサービス的な感じです
制作時間はおよそ 4 時間
いい時代になりましたね
(CLIでサービスって言うんだろうか...なんかちゃんとした言い方あったらすみません )
どんなん?
こんなん~/go/src/github.com/mentol310/dotti ❯ ./dotti list +----+----------------------------+---------+---------+ | ID | TITLE | A COUNT | B COUNT | +----+----------------------------+---------+---------+ | 1 | インデント幅2ならA, 4ならB | 0 | 0 | +----+----------------------------+---------+---------+ ~/go/src/github.com/mentol310/dotti master ❯ dotti post -i 1 -s A Success !! ~/go/src/github.com/mentol310/dotti master ❯ dotti list +----+----------------------------+---------+---------+ | ID | TITLE | A COUNT | B COUNT | +----+----------------------------+---------+---------+ | 1 | インデント幅2ならA, 4ならB | 1 | 0 | +----+----------------------------+---------+---------+
レポジトリ
サーバーとクライアントで分けましたサーバー
https://github.com/mentol310/dotti-server
クライアント
https://github.com/mentol310/dotti
サーバー
サーバーは、↓ のコードをほぼ丸パクリ
https://dev.classmethod.jp/go/golang-single-binary-web-application-on-elastic-beanstalk/
詰まったところとか悩んだところとか
- entry リストを返す GET API で, 構造体map をそのまま返したらレスポンスで
json.Unmarshal
でコケた
- 配列に変換して返すことで解決
- UpdateEntry で A か B で分岐してインクリメントするところ, もうちょいスマートな構造を持てそうな
クライアント
今回は go cli
で検索上位に来てた urfave/cli
を使いましたspf13/cobra
とどっちにするか悩みましたが、 urfave/cli
に A simple, fast, and fun package
と書かれていたのでこちらを選択しましたシンプルなものが好きです
詰まったところとか
- Commands でコマンドを入れ子にできると言うのに気付くのに時間がかかりました
- Flags をグローバルじゃないところにモテるとかその辺り ...
終わり
今年初のサービスでありながら地味に人生初のサービスです !!サービスといっていいのかわかんないですが、サービスって言い張ります !!
サービスとして大きくなってきてから Vue とかでフロント作れば ... ええですよね ... ??
現状デプロイ毎にデータが揮発するので, データ移したりなんやします(そのうち)
と言いつつ多分お金勿体無いので, アラート飛んできたらトメマス ... 短い命をお楽しみください
コメント
コメントを投稿