This commit enables Postgres builds and tests in CircleCI. Only
Tokenserver supports Postgres at the moment, and the Python based
integration tests have an implicit dependency on MySQL, so the CI jobs only
use Postgres where possible.
The jobs have been split up and named more explicitly. The hope is to
simply delete the mysql jobs in the future.
- Update docker compose steps for mysql and spanner to use pytest
- Add infra and configuration for pytest to run tests
- Remove old "run.py" test setup
Closes STOR-235
* add pytest and script to make for running tests with pytest
* add conftest for pytest path handling
* move store test results to capture integration results
* remove unneeded run_tests and fix warnings about assert_()
Closes SYNC-4612
* add nextest and llvm-cov for running unit tests.
* test results and coverage output to store_test_results and store_artifacts.
* upgrade build image and Docker Rust version 1.78.0 → 1.81.0
Closes SYNC-4611
* Removes pyo3 and derives tokens directly in Rust
* Adds tests for JWT verifying
* Adds tests for token generation
* Adds metrics for oauth verify error cases
* Updates jsonwebtoken to not include default features (including pem loading)
* Adds context and logs errors during oauth verify
* Uses ring for cryptographic rng
* Adds back python impl under feature flag
* Uses one cached http client for reqwest
This is a breaking change. This commit separates syncstorage and tokenserver settings into separate structs that are contained by a parent `Settings` struct. This means that any env vars that hold settings specific to syncstorage (e.g. `SYNC_DATABASE_URL`) have been renamed to `SYNC_SYNCSTORAGE__DATABASE_URL`. Any settings that were moved from the top-level `Settings` struct to the lower level, syncstorage-specific struct will now have a `SYNC_SYNCSTORAGE__` prefix instead of a `SYNC_` prefix.
Closes#1276
* test: move db-tests back into the main crate
* test: fixup db tests imports and remove db-test crate remnants
* test: kill the no longer needed db_test feature
Closes#410