Commit aa2a3c64 authored by Stavros-Anastasios Charismiadis's avatar Stavros-Anastasios Charismiadis
Browse files

Move Register service to Gunicorn production server

parent 6e42ffe3
Loading
Loading
Loading
Loading
Loading
+4 −2
Original line number Diff line number Diff line
@@ -40,5 +40,7 @@ __EOF__

openssl x509 -req -in /usr/src/app/register_service/certs/register.csr -CA /usr/src/app/register_service/certs/registerCA.crt -CAkey /usr/src/app/register_service/certs/registerCA.key  -CAcreateserial -out /usr/src/app/register_service/certs/register_cert.crt -days 365 -sha256

cd /usr/src/app/
python3 -m register_service
 No newline at end of file
gunicorn --certfile=/usr/src/app/register_service/certs/register_cert.crt \
         --keyfile=/usr/src/app/register_service/certs/register_key.key \
         --bind 0.0.0.0:8080 \
         --chdir /usr/src/app/register_service wsgi:app
 No newline at end of file
+6 −13
Original line number Diff line number Diff line

import os
from flask import Flask
from .controllers.register_controller import register_routes
from controllers.register_controller import register_routes
from flask_jwt_extended import JWTManager
from OpenSSL.crypto import PKey, TYPE_RSA, X509Req, dump_certificate_request, FILETYPE_PEM, dump_privatekey
import requests
import json
import jwt
from .config import Config
from config import Config

app = Flask(__name__)

@@ -32,7 +32,7 @@ csr_request = dump_certificate_request(FILETYPE_PEM, req)
private_key = dump_privatekey(FILETYPE_PEM, key)

# Save superadmin private key
key_file = open("register_service/certs/superadmin.key", 'wb+')
key_file = open("certs/superadmin.key", 'wb+')
key_file.write(bytes(private_key))
key_file.close()

@@ -50,7 +50,7 @@ response = requests.request("POST", url, headers=headers, data=data, verify = Fa
superadmin_cert = json.loads(response.text)['data']['certificate']

# Save the superadmin certificate
cert_file = open("register_service/certs/superadmin.crt", 'wb')
cert_file = open("certs/superadmin.crt", 'wb')
cert_file.write(bytes(superadmin_cert, 'utf-8'))
cert_file.close()

@@ -62,7 +62,7 @@ headers = {
response = requests.request("GET", url, headers=headers, verify = False)

ca_root = json.loads(response.text)['data']['data']['ca']
cert_file = open("register_service/certs/ca_root.crt", 'wb')
cert_file = open("certs/ca_root.crt", 'wb')
cert_file.write(bytes(ca_root, 'utf-8'))
cert_file.close()

@@ -79,10 +79,3 @@ app.config['JWT_PRIVATE_KEY'] = key_data
app.config['REGISTRE_SECRET_KEY'] = config["register"]["register_uuid"]

app.register_blueprint(register_routes)
 No newline at end of file

#----------------------------------------
# launch
#----------------------------------------

if __name__ == "__main__":
	app.run(debug=True, host = '0.0.0.0', port=8080, ssl_context= ("/usr/src/app/register_service/certs/register_cert.crt", "/usr/src/app/register_service/certs/register_key.key"))
+1 −1
Original line number Diff line number Diff line
@@ -5,7 +5,7 @@ import os
class Config:
	def __init__(self):
		self.cached = 0
		self.file="./config.yaml"
		self.file="../config.yaml"
		self.my_config = {}

		stamp = os.stat(self.file).st_mtime
+2 −2
Original line number Diff line number Diff line
#!/usr/bin/env python3

from flask import current_app, Flask, jsonify, request, Blueprint
from ..core.register_operations import RegisterOperations
from ..config import Config
from register_service.core.register_operations import RegisterOperations
from register_service.config import Config
from functools import wraps
from datetime import datetime, timedelta

+2 −2
Original line number Diff line number Diff line
@@ -37,11 +37,11 @@ class RegisterOperations:
            exist_user = mycol.find_one({"username": username})

            if exist_user is None:
                return jsonify("Not exister user with this credentials"), 400
                return jsonify("Not existing user with this credentials"), 400

            access_token = create_access_token(identity=(username + " " + exist_user["uuid"]))
            
            cert_file = open("register_service/certs/ca_root.crt", 'rb')
            cert_file = open("certs/ca_root.crt", 'rb')
            ca_root = cert_file.read()
            cert_file.close()

Loading