Stadium Ticket Vendor Flask RESTful API for GNU/Linux and Unix. This project has been tested with Python 3.6, 3.7, 3.8, and 3.9 on the following platforms: +===========+=================+=============================+==========+ | OS Family | Distribution | OS Version (OS Ports) | Python | +===========+=================+=============================+==========+ | GNU/Linux | Debian | 10 (amd64, s390x) | 3.7.3+ | +-----------+-----------------+-----------------------------+----------+ | GNU/Linux | Debian | 11 (amd64) | 3.9.2+ | +-----------+-----------------+-----------------------------+----------+ | GNU/Linux | Fedora | 33 (x86_64) | 3.9.2+ | +-----------+-----------------+-----------------------------+----------+ | GNU/Linux | openSUSE Leap | 15.2 (x86_64) | 3.6.12+ | +-----------+-----------------+-----------------------------+----------+ | GNU/Linux | openSUSE Leap | 15.3 (x86_64) | 3.6.12+ | +-----------+-----------------+-----------------------------+----------+ | GNU/Linux | Raspbian | 10 (armhf) | 3.7.3+ | +-----------+-----------------+-----------------------------+----------+ | GNU/Linux | Red Hat (RHEL) | 8.5 (x86_64) | 3.6.8 | +-----------+-----------------+-----------------------------+----------+ | GNU/Linux | Rocky | 8.5 (x86_64) | 3.6.8 | +-----------+-----------------+-----------------------------+----------+ | GNU/Linux | Ubuntu | 20.04 (x86_64) | 3.8.5+ | +-----------+-----------------+-----------------------------+----------+ | GNU/Linux | Ubuntu | 22.04 (arm64, x86_64) | 3.10.4 | +-----------+-----------------+-----------------------------+----------+ | Unix | Apple macOS | 12.1 (arm64) | 3.8.9 | +-----------+-----------------+-----------------------------+----------+ | Unix | FreeBSD | 12.2 (amd64) | 3.7.9 | +-----------+-----------------+-----------------------------+----------+ | Unix | FreeBSD | 13.0 (amd64) | 3.7.12 | +-----------+-----------------+-----------------------------+----------+ | Unix | NetBSD | 9.1 (amd64) | 3.8.8 | +-----------+-----------------+-----------------------------+----------+ NOTE: (+) denotes installation as a service tested on platform (*) denotes a non-native (third-party) Python interpreter The various OS ports have been tested on the following processors: +===========+====================================+=========+=========+ | CPU ISA | CPU Vendor and Microarchitecture | 32 bit | 64 bit | +===========+====================================+=========+=========+ | ARMv8.4-A | Apple M1 | N/A | arm64 | +-----------+------------------------------------+---------+---------+ | ARMv8-A | ARM Cortex-A53 | armhf | arm64 | +-----------+------------------------------------+---------+---------+ | x86-64 | Intel Silvermont, Kaby Lake, | N/A | amd64/ | | | and Coffee Lake | | x86_64 | +-----------+------------------------------------+---------+---------+ | z/Arch | IBM z900 via Hercules emulator | N/A | s390x | +-----------+------------------------------------+---------+---------+ 1. To install dependencies (may require root): scripts/install-dependencies 2. To initialize the database schema: run-app python3 -m app create-database (or "make create-database") 3. To run the unit tests using pytest: run-app pytest tests/unit (or "make pytest") 4. To run the app: run-app flask run (or "make run") 5. To run the app client: clients/app-test (or "make client") 6. To stress test the app: clients/load-test (or "make stress") 7. Build and run Docker container (may require root): docker-compose up --build (or "make docker-compose") 8. To report the current status of the app service: get-app-status (or "make get-status") 9. To install the app as a service (may require root): install-app (or "make install") 10. To start the app as a service (may require root): start-app (or "make start") 11. To stop the app as a service (may require root): stop-app (or "make stop") 12. To uninstall the app as a service (may require root): uninstall-app (or "make uninstall")