Couple of of bugfixes and update docker-compose to enable
networking between oncall and iris in docker containers.
podman setup will need to be slightly different.
Co-authored-by: Bill Franklin <b.franklin@mwam.com>
* Py3 migration
* Update to Python 3 for CircleCI
* Fix auth bugs for python 3
Also fix notifier bug to check for active users
* Update notifier exception handling
Ignore role:target lookup failures from Iris, since these don't represent
problems with the underlying system, just that people have inactive users
on-call in the future.
* Add get_id param option (#246)
* add get_id param option
* removed superfluous select and simplified logic
* Flake8 typo (#247)
* Hide confusing team settings in an advanced dropdown
* Fix test fixtures
* Add "allow duplicate" scheduler in UI
Already in backend, so enable in FE too
* Add Dockerfile to run oncall in a container
* Move deps into a virtualenv.
Run app not as super user.
Mimick prod setup by using uwsgi
* Fix issue with Dockerfile not having MANIFEST.in and wrong passwords in (#257)
config
* Update to ubuntu:18.04 and python3 packages and executables
* Open config file as utf8
The default configuration file has utf8 characters, and python3
attempts to open the file as ASCII unless an alternate encoding
is specified
* Switch to the python3 uwsgi plugin
* Update print and os.execv statements for python3
Python3 throws an exception when the first argument to os.execv is empty:
ValueError: execv() arg 2 first element cannot be empty
The module documentation suggests that the first element should be the
name of the executed program:
https://docs.python.org/3.7/library/os.html#os.execv
* Map config.docker.yaml in to the container as a volume
./ops/entrypoint.py has the start of environment variable support
to specify a configuration file, but it is incomplete until we
update ./ops/daemons/uwsgi-docker.yaml or add environment support
to oncall-notifier and oncall-scheduler.
This commit allows users to map a specific configuration file in
to their container and have it used by all oncall programs.
* Convert line endings to match the rest of the project.
* Add mysql port to docker configuration
* Assume localhost mysql for default config.yaml
* Update python-dev package and MySQL root password
* Use password when configuring mysql
The project has started using a password on the mysql instance.
Once password auth is consistently working we can consider extracting
the hardcoded password into an env file that is optionally randomly
generated on initial startup.
* Fix preview for round-robin (#269)
* #275 fix for Python3 and Gunicorn load config
* Fixed E303 flake8
* Change encoding & collation + test unicode name
Co-authored-by: Daniel Wang <dwang159@gmail.com>
Co-authored-by: ahm3djafri <42748963+ahm3djafri@users.noreply.github.com>
Co-authored-by: TK <tkahnoski+github@gmail.com>
Co-authored-by: Tim Freund <tim@freunds.net>
Co-authored-by: Rafał Zawadzki <bluszcz@bluszcz.net>
In #251 User avutu noted that a fresh install will fail because an
upstream requirement of the slackclient package requires python 3.
User Linearhero found that version 1.3.1 maintains python 2
compatibility.
* Clean/refactor notifier, add user validation
Fix a few notifier bugs, move reminder/user validator to their own
files, add Makefile to docs
* Move reminder/user validator to notifier directory