Skip to content

Commit

Permalink
Merge branch 'develop' into 'master'
Browse files Browse the repository at this point in the history
v.0.1.0

See merge request dylangalea/panic!43
  • Loading branch information
Dylan Galea committed Mar 22, 2021
2 parents 8ea6ad1 + 0be23e4 commit 7ecb32a
Show file tree
Hide file tree
Showing 446 changed files with 95,840 additions and 0 deletions.
5 changes: 5 additions & 0 deletions .dockerignore
Original file line number Diff line number Diff line change
@@ -0,0 +1,5 @@
./config
./alerter/logs
./certificates
./web-installer/node_modules
./web-installer/build
93 changes: 93 additions & 0 deletions .env
Original file line number Diff line number Diff line change
@@ -0,0 +1,93 @@
# Do not modify the values below unless they are passwords, usernames, token
# secrets or logging configurations. Other values don't require changing
# because PANIC is run inside a docker container on an internal network.
# NB: Specifically do not modify port numbers.

# If you would like to change the docker network IPs due to a network clash,
# make sure that it obeys the subnet rules inside the docker-compose.yml file

# Installer configuration
INSTALLER_IP=172.18.0.3
INSTALLER_PORT=8000
INSTALLER_USERNAME=admin
INSTALLER_PASSWORD=password
ACCESS_TOKEN_SECRET=7dgtas97fgsd97tgs9tg3490t6g508th0hge80rhg0s90dgs
ACCESS_TOKEN_LIFE=120
REFRESH_TOKEN_SECRET=9g9g90df8ghd80gh80tg0h8rth085gh458h085h0g8y54hg
REFRESH_TOKEN_LIFE=86400

# Mongo configuration
DB_NAME=panicdb
DB_IP=172.18.0.2
DB_IP_TEST=172.19.0.2
DB_PORT=27017
INSTALLER_AUTH_COLLECTION=installer_authentication
ACCOUNTS_COLLECTION=accounts

# Alerter configuration
ALERTER_IP=172.18.0.4
UNIQUE_ALERTER_IDENTIFIER=panic_alerter

# Redis configuration
REDIS_IP=172.18.0.5
REDIS_IP_TEST=172.19.0.5
REDIS_PORT=6379
REDIS_DB=10
REDIS_TEST_DB=11

# RabbitMQ configuration
RABBIT_IP=172.18.0.6
RABBIT_IP_TEST=172.19.0.6
RABBIT_PORT=5672

# Health Checker configuration
HEALTH_CHECKER_IP=172.18.0.7

# Tests configuration
TESTS_IP=172.19.0.8

# Logs configuration
LOGGING_LEVEL=INFO
DATA_STORE_LOG_FILE_TEMPLATE=logs/stores/{}.log
MONITORS_LOG_FILE_TEMPLATE=logs/monitors/{}.log
TRANSFORMERS_LOG_FILE_TEMPLATE=logs/data_transformers/{}.log
HEALTH_CHECKER_LOG_FILE_TEMPLATE=logs/health_checker/{}.log
MANAGERS_LOG_FILE_TEMPLATE=logs/managers/{}.log
ALERTERS_LOG_FILE_TEMPLATE=logs/alerters/{}.log
ALERT_ROUTER_LOG_FILE=logs/alert_router/alert_router.log
CHANNEL_HANDLERS_LOG_FILE_TEMPLATE=logs/channels/handlers/{}.log
CONFIG_MANAGER_LOG_FILE=logs/configs/configs_manager.log
ALERTS_LOG_FILE=logs/alerts/alerts.log
# Log files with {} are Python template strings, where {} is replaced with
# text that makes the log file name specific to the process that logs to it.
# For example, system_monitor_{}.log may become system_monitor_validator.log

# GitHub monitoring configuration
GITHUB_RELEASES_TEMPLATE=https://api.github.com/repos/{}releases
# This is a Python template string, where {} is replaced with (for example)
# w3f/substrate/ so that the complete link becomes:
# https://api.github.com/repos/w3f/substrate/releases

# Monitoring periods
SYSTEM_MONITOR_PERIOD_SECONDS=60
GITHUB_MONITOR_PERIOD_SECONDS=3600
# These define how often a monitor runs an iteration of its monitoring loop

# Publishers limits
DATA_TRANSFORMER_PUBLISHING_QUEUE_SIZE=1000
ALERTER_PUBLISHING_QUEUE_SIZE=1000
CHANNELS_MANAGER_PUBLISHING_QUEUE_SIZE=1000
ALERT_ROUTER_PUBLISHING_QUEUE_SIZE=1000
# These define how much messages should be stored in a publisher queue before
# starting to prune old messages. This happens when for some reason messages are
# not being sent by the publisher.

# Console Output
ENABLE_CONSOLE_ALERTS=True

# Log Alerts to file
ENABLE_LOG_ALERTS=True

# Twilio Preferences
TWIML=<Response><Reject/></Response>
TWIML_IS_URL=false
98 changes: 98 additions & 0 deletions .gitattributes
Original file line number Diff line number Diff line change
@@ -0,0 +1,98 @@
# Obtained from here: https://stackoverflow.com/questions/19411981/images-corrupt-after-git-push

# Set the default behavior
* text=auto

# source code
*.php text
*.css text
*.sass text
*.scss text
*.less text
*.styl text
*.js text eol=lf
*.jsx text eol=lf
*.coffee text
*.json text
*.htm text
*.html text
*.xml text
*.svg text
*.txt text
*.ini text
*.inc text
*.pl text
*.rb text
*.py text
*.scm text
*.sql text
*.sh text
*.bat text

# templates
*.ejs text
*.hbt text
*.jade text
*.haml text
*.hbs text
*.dot text
*.tmpl text
*.phtml text

# server config
.htaccess text

# git config
.gitattributes text
.gitignore text
.gitconfig text

# code analysis config
.jshintrc text
.jscsrc text
.jshintignore text
.csslintrc text

# misc config
*.yaml text
*.yml text
.editorconfig text

# build config
*.npmignore text
*.bowerrc text

# Heroku
Procfile text
.slugignore text

# Documentation
*.md text
LICENSE text
AUTHORS text


#
## These files are binary and should be left untouched
#

# (binary is a macro for -text -diff)
*.png binary
*.jpg binary
*.jpeg binary
*.gif binary
*.ico binary
*.mov binary
*.mp4 binary
*.mp3 binary
*.flv binary
*.fla binary
*.swf binary
*.gz binary
*.zip binary
*.7z binary
*.ttf binary
*.eot binary
*.woff binary
*.pyc binary
*.pdf binary
49 changes: 49 additions & 0 deletions .gitignore
Original file line number Diff line number Diff line change
@@ -0,0 +1,49 @@
# See https://help.github.com/articles/ignoring-files/ for more about ignoring files.

# vs code
.vscode

# project builds
/builds
/cache

# dependencies
web-installer/node_modules
# IDE
.idea

# Byte-compiled
__pycache__/

# logs
**/*.log
**/*.log*
npm-debug.log*
yarn-debug.log*
yarn-error.log*

# configs
config/**
!config/**/


# dependencies
node_modules/
/.pnp
.pnp.js

# testing
coverage

# production
build

# misc
.DS_Store
.env.local
.env.development.local
.env.test.local
.env.production.local

# Gitkeep
!**/.gitkeep
41 changes: 41 additions & 0 deletions .gitlab-ci.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,41 @@
image: node:latest

before_script:
- cd web-installer

stages:
- build
- test

cache:
paths:
- web-installer/node_modules/

install:
stage: build
script:
- npm install
- npm i gulp
artifacts:
paths:
- node_modules/

include:
- template: Code-Quality.gitlab-ci.yml

code_quality:
stage: test
# rules:
# - if: '$CODE_QUALITY_DISABLED'
# when: never
# - if: '$CI_PIPELINE_SOURCE == "merge_request_event"' # Run code quality job in merge request pipelines
# - if: '$CI_COMMIT_BRANCH == $CI_DEFAULT_BRANCH' # Run code quality job in pipelines on the master branch (but not in other branch pipelines)
# - if: '$CI_COMMIT_TAG' # Run code quality job in pipelines for tags
artifacts:
paths: [gl-code-quality-report.json]

# test:
# stage: test
# script:
# - npm install
# - npm test
15 changes: 15 additions & 0 deletions .gitlab/merge_request_templates/Documentation.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,15 @@
Closes: #XXX

## Description

<!-- Add a description -->

## Checklist

<!-- Mark the following with an 'x' once satisfied -->
- [ ] MR marked as WIP until work is done
- [ ] MR directed at `develop` branch
- [ ] MR linked to issue (Closes #XXX)
- [ ] Re-reviewed `Files changed` in the MR explorer
- [ ] Add `R4R` label once MR is ready for review
- [ ] Tag reviewers
23 changes: 23 additions & 0 deletions .gitlab/merge_request_templates/General.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,23 @@
Closes: #XXX

## Description

<!-- Add a description -->

## Checklist

<!-- Mark the following with an 'x' once satisfied -->
- [ ] MR marked as WIP until work is done
- [ ] MR directed at `develop` branch
- [ ] MR linked to issue (Closes #XXX)
- [ ] Wrote and/or updated tests
- [ ] Ran _all_ tests using `docker-compose -p panic-tests -f docker-compose-tests.yml up --build -d test-suite` to ensure no breaks
- [ ] Ran PANIC using `docker-compose up --build -d` and ensured that no errors are outputted in the console and logs
- [ ] Updated relevant documentation (both inline and `doc/`)
- [ ] Updated setup scripts and config files and config examples
- [ ] Updated Pipfile and Pipfile.lock to include any new required packages
- [ ] Added an entry to the `Unreleased` section in `CHANGELOG.md`
- [ ] Used IDE auto-formatting and used an 80-char hard margin
- [ ] Re-reviewed `Files changed` in the MR explorer
- [ ] Add `R4R` label once MR is ready for review
- [ ] Tag reviewers
Loading

0 comments on commit 7ecb32a

Please sign in to comment.