You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
|
|
3 months ago | |
|---|---|---|
| .. | ||
| .devcontainer | 4 months ago | |
| app | 4 months ago | |
| doc | 4 months ago | |
| docker | 3 months ago | |
| lib | 4 months ago | |
| tests | 4 months ago | |
| .clang-format | 4 months ago | |
| .clang-tidy | 4 months ago | |
| CMakeLists.txt | 4 months ago | |
| CMakePresets.json | 4 months ago | |
| README.md | 4 months ago | |
| vcpkg.json | 4 months ago | |
README.md
Ovierview
Read top-level README.md for more information on this repository.
Authentication
No external service is used. JWT tokens are created and verified using jwt-cpp library.
Default, pre-defined user databse is a simple json file (app/defaults/users.json).
Build and Run
cd docker
docker compose build
docker compose up
Note: do not use this for development. See .devcontainer directory for development setup.
For non-container development, see Dockerfile and replicate the steps. Simple build-and-test.sh
script would look like this:
#/bin/bash
OUT_DIR=./out
DEBUG_DIR=$OUT_DIR/build/debug
cmake -DCMAKE_BUILD_TYPE=Debug \
-DCMAKE_EXPORT_COMPILE_COMMANDS=TRUE \
-DCMAKE_TOOLCHAIN_FILE=/opt/vcpkg/scripts/buildsystems/vcpkg.cmake \
-S /workspace -B $DEBUG_DIR
cd "$DEBUG_DIR"
cmake --build . -- -j8
ctest --output-on-failure .
Testing
Unit tests are added to ctest and executed on docker build. Execute ctest . in build dir to run it.
Use top-level testing/tavern scripts to run functional tests.