2016-12-27 08:38:21 +00:00
|
|
|
# Rocket Todo Example
|
2016-08-02 02:07:36 +00:00
|
|
|
|
2016-12-27 08:38:21 +00:00
|
|
|
This example makes use of a SQLite database via `diesel` to store todo tasks. As
|
|
|
|
a result, you'll need to have `sqlite3` and its headers installed:
|
2016-08-02 03:01:47 +00:00
|
|
|
|
2016-12-27 08:38:21 +00:00
|
|
|
* **OS X:** `brew install sqlite`
|
|
|
|
* **Debian/Ubuntu:** `apt-get install libsqlite3-dev`
|
|
|
|
* **Arch:** `pacman -S sqlite`
|
2016-08-02 03:01:47 +00:00
|
|
|
|
2017-02-02 23:02:32 +00:00
|
|
|
## Running
|
2016-12-27 08:38:21 +00:00
|
|
|
|
2017-02-02 23:02:32 +00:00
|
|
|
**Before running, building, or testing this example, you'll need to ensure the
|
|
|
|
following:**
|
2016-12-27 08:38:21 +00:00
|
|
|
|
2017-02-02 23:02:32 +00:00
|
|
|
1. A SQLite database file with the proper schema is present.
|
2016-08-02 03:01:47 +00:00
|
|
|
|
2017-02-02 23:02:32 +00:00
|
|
|
On a Unix machine or with bash installed, you can simply run the
|
|
|
|
`boostrap.sh` script to create the database. The script installs the
|
|
|
|
`diesel_cli` tools if they're not already installed and runs the migrations.
|
|
|
|
The script will output a `DATABASE_URL` variable.
|
2016-08-02 03:01:47 +00:00
|
|
|
|
2017-02-02 23:02:32 +00:00
|
|
|
You can also run the migrations manually with the following commands:
|
|
|
|
|
|
|
|
```
|
|
|
|
cargo install diesel_cli # install diesel CLI tools
|
|
|
|
DATABASE_URL=db/db.sql diesel migration run # create db/db.sql
|
|
|
|
```
|
|
|
|
|
|
|
|
2. A `DATABASE_URL` environment variable is set that points to the SQLite
|
|
|
|
database file.
|
|
|
|
|
|
|
|
Use the `DATABASE_URL` variable emitted from the `bootstrap.sh` script, or
|
|
|
|
enter it manually, as follows:
|
2017-02-02 08:41:47 +00:00
|
|
|
|
2017-02-02 23:02:32 +00:00
|
|
|
* `DATABASE_URL=db/db.sql cargo build`
|
|
|
|
* `DATABASE_URL=db/db.sql cargo test`
|
|
|
|
* `DATABASE_URL=db/db.sql cargo run`
|