Skip to content

Latest commit

 

History

History
63 lines (44 loc) · 2.81 KB

README.md

File metadata and controls

63 lines (44 loc) · 2.81 KB

雙峰祭オンラインシステム バックエンド

CI Release Generate documentation docs (develop) docs

Requirements

ローカルでの実行には以下のツールが必要です。

これに加えて、開発には以下のツールが必要です。

  • Nix
  • Cachix
    • あるとビルド時間が短くなります

Run

次のコマンドでローカルに API サーバーを起動します。 これはリリースごとに push される ghcr.io/sohosai/sos21-backend イメージを用いています。

$ export SOS21_FIREBASE_PROJECT_ID=<project ID>
$ export SOS21_ADMINISTRATOR_EMAIL=<email address>
$ docker-compose -f docker-compose.run.yml up

localhost:3000 で API サーバーが、 localhost:4010Prism の Validation Proxy を経由した API サーバーが利用できます。

Development

ビルドの依存関係の固定に Nix を用いています。 Cachix をインストールし、 cachix use sos21-backend するとバイナリキャッシュを利用できます。

$ cp .envrc.sample .envrc  # edit .envrc
$ source .envrc            # or use direnv
$ docker-compose -f docker-compose.dev.yml up -d
$ nix-shell
$ cargo run --bin sos21-api-server

Prism の Validation Proxy が localhost:4010 から利用できます。

Migrations

nix-shell 内で次のコマンドを実行し、マイグレーションを適用します。

$ cd sos21-database
$ sqlx migrate run

詳しくは sos21-database を参照してください。