Migrate from const.py to config.ini

parent a927f491
...@@ -6,4 +6,4 @@ dist/ ...@@ -6,4 +6,4 @@ dist/
nginx_redirector.egg-info/ nginx_redirector.egg-info/
build/ build/
*.log *.log
*.pyc
include redirector/conf/config.ini
reinstall: reinstall:
pip uninstall nginx-redirector -y && python setup.py install pip uninstall nginx-redirector -y && python setup.py install && redirector-config --edit nginx_dir /home/kantegory/pvt/redirector-tests
#!/usr/bin/env python
# -*- coding: utf-8 -*-
[DEFAULT] [DEFAULT]
nginx_dir = /etc/nginx nginx_dir = /etc/nginx
maps_dir = $(nginx_dir)s/maps maps_dir = %(nginx_dir)s/maps
config_dir = $(nginx_dir)s/location_includes config_dir = %(nginx_dir)s/location-includes
import configparser import configparser
import argparse as ap import argparse as ap
import os
class Config: class Config:
def __init__(self): def __init__(self):
self.config = configparser.ConfigParser() self.config = configparser.ConfigParser()
self.filename = 'config.ini' self.filename = '{}/config.ini'.format(os.path.dirname(__file__))
def read_config(self, filename='config.ini'): def read_config(self, filename=None):
if filename:
self.filename = filename self.filename = filename
self.config.read(self.filename) self.config.read(self.filename)
......
...@@ -7,7 +7,7 @@ import argparse as ap ...@@ -7,7 +7,7 @@ import argparse as ap
from redirector.utils import generators from redirector.utils import generators
from redirector.utils import logger from redirector.utils import logger
from redirector.utils import parser from redirector.utils import parser
from redirector.utils import const
class Redirector: class Redirector:
def __init__(self, logger=None): def __init__(self, logger=None):
...@@ -51,6 +51,6 @@ def main(args=None): ...@@ -51,6 +51,6 @@ def main(args=None):
print("CRITICAL:\n" + str(e)) print("CRITICAL:\n" + str(e))
#if __name__ == "__main__": if __name__ == "__main__":
# main() main()
...@@ -5,7 +5,3 @@ EMAIL = "enk@etersoft.ru" ...@@ -5,7 +5,3 @@ EMAIL = "enk@etersoft.ru"
PYTHON_VERSION = "3.6" PYTHON_VERSION = "3.6"
VERSION_STATUS = "alpha" VERSION_STATUS = "alpha"
NGINX_DIR = "/home/kantegory/pvt/redirector-tests" #"/etc/nginx" # /home/enk
CONFIG_YAML = "/home/kantegory/pvt/nginx-redirector/config.yaml"
MAPS_DIR = NGINX_DIR + "/maps"
CONFIG_DIR = NGINX_DIR + "/location-includes"
from redirector.utils import const from redirector.conf.config import Config
class Generator: class Generator:
def __init__(self): def __init__(self):
...@@ -9,17 +9,20 @@ class Generator: ...@@ -9,17 +9,20 @@ class Generator:
redirects_map = self.map_gen.generate_map(redirects_data[0], project_name) redirects_map = self.map_gen.generate_map(redirects_data[0], project_name)
redirects_with_options = self.map_gen.generate_opt_map(redirects_data[1], project_name) redirects_with_options = self.map_gen.generate_opt_map(redirects_data[1], project_name)
conf_data = self.conf_gen.generate_config(project_name, [code for code, data in redirects_with_options]) conf_data = self.conf_gen.generate_config(project_name, [code for code, data in redirects_with_options])
config = Config()
config.read_config()
try: try:
with open(const.MAPS_DIR + "/%s.map" % project_name, "w") as map_file: with open(config.get_default_dir('MAPS_DIR') + "/%s.map" % project_name, "w") as map_file:
map_file.write(redirects_map) map_file.write(redirects_map)
for code, data in redirects_with_options: for code, data in redirects_with_options:
if code == "301": if code == "301":
code = "permanent" code = "permanent"
elif code == "302": elif code == "302":
code = "redirect" code = "redirect"
with open(const.MAPS_DIR + "/%s_%s_options.map" % (project_name, code), "w") as map_file: with open(config.get_default_dir('MAPS_DIR') + "/%s_%s_options.map" % (project_name, code), "w") as map_file:
map_file.write(data) map_file.write(data)
with open(const.CONFIG_DIR + "/%s.conf" % project_name, "w") as conf_file: with open(config.get_default_dir('CONFIG_DIR') + "/%s.conf" % project_name, "w") as conf_file:
conf_file.write(conf_data) conf_file.write(conf_data)
except Exception as e: except Exception as e:
print(e) print(e)
......
...@@ -7,7 +7,7 @@ import argparse as ap ...@@ -7,7 +7,7 @@ import argparse as ap
from redirector.utils import generators from redirector.utils import generators
from redirector.utils import logger from redirector.utils import logger
from redirector.utils import parser from redirector.utils import parser
from redirector.utils import const
from redirector.redirector import Redirector from redirector.redirector import Redirector
......
...@@ -21,12 +21,13 @@ classifiers_list = [ ...@@ -21,12 +21,13 @@ classifiers_list = [
setup( setup(
name=const.NAME, name=const.NAME,
version="0.1.1", version="0.1.1",
packages=['redirector', 'redirector.utils', 'redirector.tests'], packages=['redirector', 'redirector.utils', 'redirector.tests', 'redirector.conf'],
entry_points={ entry_points={
'console_scripts': [ 'console_scripts': [
'redirector = redirector.redirector:main', 'redirector = redirector.redirector:main',
'redirector-watch = redirector.watcher:watch', 'redirector-watch = redirector.watcher:watch',
'redirector-convert = redirector.htaccess_parser:main' 'redirector-convert = redirector.htaccess_parser:main',
'redirector-config = redirector.conf.config:main'
] ]
}, },
classifiers=classifiers_list, classifiers=classifiers_list,
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment