67 lines
1.3 KiB
Markdown
67 lines
1.3 KiB
Markdown
# User service
|
|
|
|
User service handles everything related to user creation, user login, etc...
|
|
|
|
## Installation
|
|
|
|
Use cargo to install the project dependencies
|
|
|
|
```bash
|
|
cargo build
|
|
```
|
|
|
|
## Setup
|
|
|
|
Env variables:
|
|
Create a .env file and include the following variables
|
|
1. HOST_ADDRESS
|
|
2. HOST_PORT
|
|
3. DB_HOST
|
|
4. DB_USER
|
|
5. DB_PASS
|
|
6. DB_DATABASE_NAME
|
|
7. DATABASE_URL
|
|
|
|
To run this project correctly, you must first apply the migrations to the database. You can do this by installing sqlx-cli.
|
|
|
|
```bash
|
|
cargo install sqlx-cli
|
|
```
|
|
|
|
Then execute and apply the migrations to the database.
|
|
|
|
```bash
|
|
sqlx migrate run
|
|
```
|
|
|
|
# Tests
|
|
Tests are WIP. Not done yet.
|
|
|
|
# Release
|
|
To build for release on current platform
|
|
|
|
```bash
|
|
cargo build --release
|
|
```
|
|
|
|
To build for release on x86-64 linux From m1 macs
|
|
``` bash
|
|
brew tap SergioBenitez/osxct
|
|
brew install x86_64-unknown-linux-gnu
|
|
```
|
|
|
|
```bash
|
|
cargo build --release --target x86_64-unknown-linux-gnu
|
|
```
|
|
|
|
To build and deploy to server
|
|
```bash
|
|
./deploy-to-backend.sh
|
|
```
|
|
|
|
Or follow this guide (Export these vars): [cross-compilation-from-m1](https://github.com/messense/homebrew-macos-cross-toolchains)
|
|
You can find the executable inside target/release/{name of proj}
|
|
|
|
## License & Attribution
|
|
By Franklin E. Blanco
|
|
[Creative Commons](https://creativecommons.org/licenses/by-nc-nd/3.0/legalcode) |