diff options
| -rw-r--r-- | service/pixelated/adapter/mail_service.py | 2 | ||||
| -rw-r--r-- | service/pixelated/user_agent.py | 3 | ||||
| -rw-r--r-- | service/setup.py | 33 | 
3 files changed, 35 insertions, 3 deletions
| diff --git a/service/pixelated/adapter/mail_service.py b/service/pixelated/adapter/mail_service.py index 822ea930..54deb488 100644 --- a/service/pixelated/adapter/mail_service.py +++ b/service/pixelated/adapter/mail_service.py @@ -33,7 +33,7 @@ class MailService:              self.password = password              self.server_name = server_name              self.mailbox_name = 'INBOX' -            self.certs_home = os.path.join(os.path.abspath("."), "pixelated", "certificates") +            self.certs_home = os.path.abspath(os.path.join(os.path.abspath(__file__), "..", "..", "certificates"))              self.tags = Tags()              self._open_leap_session()          except: diff --git a/service/pixelated/user_agent.py b/service/pixelated/user_agent.py index f780cad6..270ca265 100644 --- a/service/pixelated/user_agent.py +++ b/service/pixelated/user_agent.py @@ -28,7 +28,8 @@ from pixelated.adapter.mail_service import MailService  from pixelated.adapter.pixelated_mail import PixelatedMail  from pixelated.tags import Tags -app = Flask(__name__, static_url_path='', static_folder='../../web-ui/app') +static_folder = os.path.abspath(os.path.join(os.path.abspath(__file__), "..", "..", "web-ui", "app")) +app = Flask(__name__, static_url_path='', static_folder=static_folder)  app.config.from_pyfile(os.path.join(os.environ['HOME'], '.pixelated'))  mail_service = MailService(app.config['LEAP_USERNAME'], app.config['LEAP_PASSWORD'], app.config['LEAP_SERVER_NAME']) diff --git a/service/setup.py b/service/setup.py index b5f72fe5..2c7180be 100644 --- a/service/setup.py +++ b/service/setup.py @@ -20,8 +20,38 @@ if 'develop' in sys.argv:      sys.argv.append('--always-unzip')  from setuptools import setup +from collections import defaultdict  import os + +def _folder_for(file): +    broken_path = file.split('/') +    new_path = "web-ui/app/" + "/".join(broken_path[3:(len(broken_path) -1)]) +    return new_path[0:-1] if new_path[-1] == '/' else new_path + +def _create_data_files(original_files): +    data_files_hash = defaultdict(list) + +    for file in original_files: +        data_files_hash[_folder_for(file)].append(file) + +    return data_files_hash.items() + +def _web_ui_files(): +    web_ui_files = [] +    for root, dirname, filenames in os.walk('../web-ui/dist'): +        for filename in filenames: +            web_ui_files.append(os.path.join(root, filename)) +    return web_ui_files + +def data_files(): +    certificates = ('pixelated/certificates', ['pixelated/certificates/example.wazokazi.is.ca.crt']) + +    _data_files = _create_data_files(_web_ui_files()) +    _data_files.append(certificates) + +    return _data_files +  def read(fname):      return open(os.path.join(os.path.dirname(__file__), fname)).read() @@ -55,5 +85,6 @@ setup(name='Pixelated User Agent Service',          'console_scripts': [              'pixelated-user-agent = pixelated.user_agent:setup'          ] -      } +      }, +      data_files=data_files()       ) | 
