79 lines
2.4 KiB
Markdown
79 lines
2.4 KiB
Markdown
|
|
# Operation Pandora Trigger Commandcenter
|
|
|
|
A [MEAN Stack](http://mean.io/) application created for [https://www.opt4.net](https://www.opt4.net) Arma3 Community
|
|
|
|
|
|
## Installation
|
|
|
|
All steps described here are working with a Debian based Linux system
|
|
|
|
### Setup required 3rd Party Software
|
|
|
|
#### Setup for Development
|
|
|
|
Run the installation script located in the docs folder:
|
|
|
|
```text
|
|
./docs/opt-cc-environment/3rd-party-install.sh
|
|
```
|
|
|
|
It installs NPM, Node and MongoDB on latest versions.
|
|
In addition, it sets up the mongo deamon to start up automatically with the system.
|
|
|
|
#### Setup for Production
|
|
|
|
**NOTE:** It his highly recommended **not** to run the following steps as _root_ user!
|
|
|
|
For production setup run the script, described in _Setup for development_, adding the parameter `prod`
|
|
|
|
```text
|
|
./docs/opt-cc-environment/3rd-party-install.sh prod
|
|
```
|
|
|
|
This adds the [`pm2` process manager](http://pm2.keymetrics.io/) to be installed and start the _opt-cc_ server as `pm2` process.
|
|
Run the `sudo` command printed as last output to configure the `pm2` process for automatic start on the system.
|
|
|
|
## Development
|
|
|
|
### Run and Modify Application
|
|
**NOTE:** Do not use the execution described here in any production environment! It will make the running application highly vulnerable.
|
|
|
|
Before triggering the environment execution run
|
|
|
|
```text
|
|
npm install
|
|
```
|
|
|
|
inside the main folder, to process all needed npm package installations for the program execution.
|
|
|
|
To compile the Angular code and afterwards start the Express server with `nodemon` for development purpose run
|
|
|
|
```text
|
|
npm run dev
|
|
```
|
|
|
|
Any changes on `server` code will trigger an automatic restart of the Express server.
|
|
|
|
Changes on `static` code can be submitted with
|
|
|
|
```text
|
|
npm run deploy-static
|
|
```
|
|
|
|
The page must be reloaded after this build step is finished, in order to make changes visible.
|
|
|
|
## Run Tests
|
|
_TODO_
|
|
|
|
## License Information
|
|
|
|
|
|
### NodeJS Express Server (`/server`)
|
|
published under [CC BY-SA 4.0 License](https://creativecommons.org/licenses/by-sa/4.0/legalcode.txt) \
|
|
Main concept for API Server, pagination and MongoDB usage by [Prof. Dr.-Ing. Johannes Konert](https://prof.beuth-hochschule.de/konert/) \
|
|
All endpoints, signature image builder and Arma3 RPT-Log parsing by [Florian Hartwich](https://de.linkedin.com/in/florian-hartwich-b67b02125)
|
|
|
|
### Angular 6 Frontend (`/static`)
|
|
published under [MIT License](https://opensource.org/licenses/MIT)
|