-
Bo-Chun Chen authored8f96b642
README.md 8.57 KiB
Introduction
This is a flask application that leverages RabbitMQ and Celery to asynchronously create a Cheaha user account. Currently the project is being developed on an Openstack cluster.
Project Setup
To clone this repo use the command:
$ git clone https://gitlab.rc.uab.edu/mmoo97/flask_user_reg.git
$ cd flask_user_reg
Prerequisites
Setup a Virtual Environment
- Ensure you have created a virtual environment
called
venv
setup running python3.- Note, this project requires a virtual environment running python3 (3.6.8 in this case).
- Create this by navigating to you home directory via typing
$ cd
and entering the following commands:
$ python3 -m venv ~/venv $ source ~/venv
- Upon Activation, you should see the prompt update accordingly:
[centos@ood ~]$ <------Old Prompt (venv) [centos@ood ~]$ <------New Prompt
venv
but would change to reflect whatever name you initialized it with in the previous step. Additionally, this example is running on theood node
provisioned via OpenStack. - Create this by navigating to you home directory via typing
- Note, this project requires a virtual environment running python3 (3.6.8 in this case).
- Ensure pip is installed.
-
- Check if installed by typing
$ pip
- Install pip using
$ python -m pip install --user --upgrade pip
.
- Check if installed by typing
-
- Check if installed using
$ py
- Install pip using
$ py -m pip install --upgrade pip
- Check if installed using
-
- Ensure Flask and other dependencies are installed to you virtual environment using the following commands:
$ cd ~/your/repo/path/flask_user_reg
$ pip install -r requirements.txt
- Note, to install flask in your own
$HOME
usepip install --user Flask
.
Install RabbitMQ
(Reference: here)
- Install RabbitMQ server on the host machine. (Installation Guide)
-
$ brew update
$ brew install rabbitmq
- it is recommended that you add the following line to your
.bash_profile
:export PATH=$PATH:/usr/local/opt/rabbitmq/sbin
. - Start server using the command
$ rabbitmq-server
. (Note, this implementation assumes RabbitMQ is running on localhost on standard port 5672)
-
- Download the installer from here and run.
- Post install, the server should be running. To check, run
$ rabbitmqctl.bat status
.
-
- First, import signing key using
$ rpm --import https://github.com/rabbitmq/signing-keys/releases/download/2.0/rabbitmq-release-signing-key.asc
- Next, install Erlang using
$ yum install https://dl.fedoraproject.org/pub/epel/epel-release-latest-7.noarch.rpm
- Finally, install RabbitMq using
$ yum install rabbitmq-server-3.8.2-1.el8.noarch.rpm
- The server is not started as a daemon by default when the RabbitMQ server package is installed. To start the
daemon by default when the system boots, as an administrator run:
$ chkconfig rabbitmq-server on
. - As an administrator, start and stop the server as usual:
/sbin/service rabbitmq-server start
/sbin/service rabbitmq-server stop
- First, import signing key using
-
- Add the user "reggie" using the command
$ rabbitmqctl add_user reggie reggie
.- The current configuration assumes the following username password combination. To change the password, type
$ rabbitmqctl change_password reggie <new_password>
. - Note that rabbitmqctl may require sudo permissions and that changing the password will require a password
change in the credentials within
test_producer.py
andbase_consumer.py
as well.
- The current configuration assumes the following username password combination. To change the password, type
Setup pre commit hook
- via Homebrew(Mac)
brew install pre-commit
- via pip
pip install pre-commit
After pre-commit is installed, run install in the repo directory:
$ pre-commit install
> pre-commit installed at .git/hooks/pre-commit