https://github.com/userver-framework/realmedium_sample
https://github.com/userver-framework/realmedium_sample
Last synced: 4 months ago
JSON representation
- Host: GitHub
- URL: https://github.com/userver-framework/realmedium_sample
- Owner: userver-framework
- License: apache-2.0
- Created: 2023-08-30T10:02:53.000Z (over 2 years ago)
- Default Branch: develop
- Last Pushed: 2024-12-08T07:56:43.000Z (about 1 year ago)
- Last Synced: 2024-12-08T08:25:50.439Z (about 1 year ago)
- Language: C++
- Size: 113 KB
- Stars: 8
- Watchers: 6
- Forks: 4
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- Contributing: CONTRIBUTING.md
- License: LICENSE
- Code of conduct: CODE_OF_CONDUCT.md
Awesome Lists containing this project
README
# RealMedium
[](https://github.com/userver-framework/realmedium_sample/actions/workflows/ci.yml)
[](https://github.com/userver-framework/realmedium_sample/actions/workflows/docker.yaml)
This is project created in summer school Yandex.
This codebase was created to demonstrate a fully fledged backend application built with **[userver framework](https://userver.tech/)**
### Prerequisites
[Install the userver](https://userver.tech/de/dab/md_en_2userver_2build_2build.html#ways_to_get_userver) into the system
or
* check it out `git clone --depth 1 https://github.com/userver-framework/userver.git /path/to/userver`
* install all of its dependencies
* `ln -s /path/to/userver /path/to/realmedioum_sample/third_party/userver`
### Docker-compose
```
# Clone submodules
git submodule update --init
# Run service
make docker-start-service-release
```
### Local
```
make service-start-release
```
## Tests
Run unit and functional tests in docker or local.
### Docker-compose
```
make docker-test-release
```
### Local
```
make test-release
```
## Makefile
* `make build-debug` - debug build of the service with all the assertions and sanitizers enabled
* `make build-release` - release build of the service with LTO
* `make test-debug` - does a `make build-debug` and runs all the tests on the result
* `make test-release` - does a `make build-release` and runs all the tests on the result
* `make start-debug` - builds the service in debug mode and starts it
* `make start-release` - builds the service in release mode and starts it
* `make` or `make all` - builds and runs all the tests in release and debug modes
* `make format` - autoformat all the C++ and Python sources
* `make clean-` - cleans the object files
* `make dist-clean` - clean all, including the CMake cached configurations
* `make install` - does a `make build-release` and runs install in directory set in environment `PREFIX`
* `make install-debug` - does a `make build-debug` and runs install in directory set in environment `PREFIX`
* `make docker-COMMAND` - run `make COMMAND` in docker environment
* `make docker-build-debug` - debug build of the service with all the assertions and sanitizers enabled in docker environment
* `make docker-test-debug` - does a `make build-debug` and runs all the tests on the result in docker environment
* `make docker-build-release` - release build of the service with all the assertions and sanitizers enabled in docker environment
* `make docker-test-release` - does a `make build-release` and runs all the tests on the result in docker environment
* `make docker-start-release` - does a `make install-release` and runs service in docker environment
* `make docker-start-debug` - does a `make install-debug` and runs service in docker environment
* `make docker-clean-data` - stop docker containers and clean database data
## Authors project:
**Manager:**
Viktoriia Berkholts
**Developers:**
rumxcola
Konstantin Artemev
GasikPasik
Anna Volkova
Nikita Semenov
Vadim Romanyuk
artemiev.kk
Elizaveta Rudneva
**Maintainer:**
Alexander Malkov