登録されたメンバーリストを任意の数でシャッフルするためのアプリケーション
- シャッフルを行うためのメンバーを登録するための箱
- シャッフル対象の人を表す
- Member に登録できるタグ
- シャッフルするときのロジックで使われ、同じタグを持つ人どうしは同じグループになりにくくなる
- 所属チームや世代など、なんでも良い
- シャッフル結果のヘッダ
- シャッフルを実行した単位で、そのときのグループ数、グループあたりの人数を保持する
- シャッフル結果の詳細
- シャッフルされた Member の単位
- Go1.13
- MYSQL5.7
-
諸々 インストール
- Go のインストール
- mysql のインストール
- docker のインストール
-
GOPATH の設定
- Go を使うためには、GOPATH を設定する必要があります
- GOPATH 配下には import する外部のライブラリが入ります
- アプリケーションコードを置くことも多いらしい
- 以下を
.bash_profile
なりに書いておきますexport GOPATH=$HOME/.go export PATH=$GOPATH/bin:$PATH
- (GOPATH はどこでも良いのだけど、これがよくある設定らしい)
-
リポジトリをクローンし、docker コンテナの起動
- docker-compose.yml にアプリケーションとDBのコンテナの記述があり、下記コマンドでアプリケーションサーバーが立ち上がります
$ git clone https://github.com/RyotaNakaya/shuffle-members.git $ cd shuffle-members $ docker-compose up
- docker 内の 8080 ポートをローカルマシンの 8080 ポートにフォワーディングしているので、localhost でアクセスできます
- ローカルにマウントする場合は、データベースを事前に作っておきます
- docker-compose.yml にアプリケーションとDBのコンテナの記述があり、下記コマンドでアプリケーションサーバーが立ち上がります
- realize を使用
- ローカルで go run する代わりに、
realize start
で実行すると自動でホットリロードされます
- テストは以下のコマンドで実行できます。
- ローカルに
shuffle_members_test
のデータベースを作っておいてください
go test ./... -timeout 30s -cover