From 9eabdec5d3c70171721450a6b5d61d5c5870de42 Mon Sep 17 00:00:00 2001 From: Etienne Pallier Date: Wed, 14 Nov 2018 12:49:22 +0100 Subject: [PATCH] NEW PYROS TECHNICAL DOCUMENT (in docs/) --- devices_channel/src_device/client/client_channel_serial.py | 2 +- doc/PyROS software.docx | Bin 1181550 -> 0 bytes doc/PyROS software.pdf | Bin 1717664 -> 0 bytes doc/PyROS_software.docx | Bin 0 -> 3524605 bytes doc/PyROS_software.odt | Bin 0 -> 3620365 bytes doc/PyROS_software.pdf | Bin 0 -> 2720563 bytes src/majordome/start_agent_majordome_from_test.py | 26 -------------------------- src/pyros/test_settings_NOTUSED.py | 290 -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- 8 files changed, 1 insertion(+), 317 deletions(-) delete mode 100644 doc/PyROS software.docx delete mode 100644 doc/PyROS software.pdf create mode 100644 doc/PyROS_software.docx create mode 100644 doc/PyROS_software.odt create mode 100644 doc/PyROS_software.pdf delete mode 100755 src/majordome/start_agent_majordome_from_test.py delete mode 100644 src/pyros/test_settings_NOTUSED.py diff --git a/devices_channel/src_device/client/client_channel_serial.py b/devices_channel/src_device/client/client_channel_serial.py index cc605de..61687b8 100755 --- a/devices_channel/src_device/client/client_channel_serial.py +++ b/devices_channel/src_device/client/client_channel_serial.py @@ -21,7 +21,7 @@ class ClientChannelSerial(ClientChannel): buf = 1024 - def __init__(self, server_host:str="localhost", server_port:int=11110, buffer_size=1024, DEBUG=False): + def __init__(self, server_host:str="localhost", server_port:int=11110, buffer_size=1024, DEBUG:bool=False): ''' :param server_host: server IP or hostname :param server_port: server port diff --git a/doc/PyROS software.docx b/doc/PyROS software.docx deleted file mode 100644 index 0fcc193..0000000 Binary files a/doc/PyROS software.docx and /dev/null differ diff --git a/doc/PyROS software.pdf b/doc/PyROS software.pdf deleted file mode 100644 index c355ed8..0000000 Binary files a/doc/PyROS software.pdf and /dev/null differ diff --git a/doc/PyROS_software.docx b/doc/PyROS_software.docx new file mode 100644 index 0000000..d1d2f1f Binary files /dev/null and b/doc/PyROS_software.docx differ diff --git a/doc/PyROS_software.odt b/doc/PyROS_software.odt new file mode 100644 index 0000000..e4d188a Binary files /dev/null and b/doc/PyROS_software.odt differ diff --git a/doc/PyROS_software.pdf b/doc/PyROS_software.pdf new file mode 100644 index 0000000..563cb19 Binary files /dev/null and b/doc/PyROS_software.pdf differ diff --git a/src/majordome/start_agent_majordome_from_test.py b/src/majordome/start_agent_majordome_from_test.py deleted file mode 100755 index b442f7f..0000000 --- a/src/majordome/start_agent_majordome_from_test.py +++ /dev/null @@ -1,26 +0,0 @@ -#!/usr/bin/env python - -import os -import sys - -# DJANGO setup -#sys.path.append('/PROJECTS/GFT/SOFT/PYROS_SOFT/PYROS201802') -sys.path.append('..') -#print("file is", __file__) -mypath = os.getcwd() - -# Go into src/ -##os.chdir('..') -#print("Current directory : " + str(os.getcwd())) -os.environ.setdefault("DJANGO_SETTINGS_MODULE", "src.pyros.settings") -#os.environ['SECRET_KEY'] = 'abc' -#os.environ['ENVIRONMENT'] = 'production' -import django -django.setup() - -# MONITORING AGENT setup -agent="majordome" - -if agent=="majordome": - from majordome.tasks import Majordome - Majordome().run() diff --git a/src/pyros/test_settings_NOTUSED.py b/src/pyros/test_settings_NOTUSED.py deleted file mode 100644 index 0a94e17..0000000 --- a/src/pyros/test_settings_NOTUSED.py +++ /dev/null @@ -1,290 +0,0 @@ -""" OBSOLETE FILE """ -""" -Django settings for pyros project. - -Generated by 'django-admin startproject' using Django 1.9.4. - -For more information on this file, see -https://docs.djangoproject.com/en/1.9/topics/settings/ - -For the full list of settings and their values, see -https://docs.djangoproject.com/en/1.9/ref/settings/ -""" - -# Dictionary containing all the versions for the different modules -# IMPORTANT : I must be updated at every commit ! - -MODULES_VERSIONS = { - "Alert Manager" : "0.2.4", - "Analyzer" : "0.1.2", - "Dashboard" : "0.1.1", - "Majordome" : "0.1.4", - "Monitoring" : "0.1.3", - "Observation Manager" : "0.1.3", - "Routine Manager" : "0.1.2", - "Scheduler" : "0.1.2", - "User Manager" : "0.1.1", - "Device" : "0.1.1" -} - -# Set MYSQL to False if you want to use SQLITE -# This line MUST NOT be changed at all except from changing True/False -# (or install_requirements script will become invalid) -MYSQL = True - -# YOU MUST CHANGE THIS VALUE IN PYROSRUN.SH TOO -TEST_PORT = 8001 -# YOU MUST CHANGE THIS VALUE IN PYROSRUN.SH TOO - - -import os - -# Build paths inside the project like this: os.path.join(BASE_DIR, ...) -BASE_DIR = os.path.dirname(os.path.dirname(os.path.abspath(__file__))) - - -# Quick-start development settings - unsuitable for production -# See https://docs.djangoproject.com/en/1.9/howto/deployment/checklist/ - -# SECURITY WARNING: keep the secret key used in production secret! -SECRET_KEY = '0*@w)$rq4x1c2w!c#gn58*$*u$w=s8uw2zpr_c3nj*u%qlxc23' - -# SECURITY WARNING: don't run with debug turned on in production! -DEBUG = True - -ALLOWED_HOSTS = ['localhost'] - - -# Application definition - -INSTALLED_APPS = [ - 'django.contrib.admin', - 'django.contrib.auth', - 'django.contrib.contenttypes', - 'django.contrib.sessions', - 'django.contrib.messages', - 'django.contrib.staticfiles', - - # for using "./manage.py graph_models" with graphviz: - # (https://projects.irap.omp.eu/projects/pyros/wiki/Project_Development#django-extensions-and-graphviz-useful-for-generating-an-image-of-all-the-models-and-their-relationships) - 'django_extensions', - 'test_without_migrations', - 'bootstrap3', - 'dashboard', - 'scheduler', - 'common', - 'alert_manager', - 'analyzer', - 'majordome', - 'monitoring', - 'observation_manager', - 'routine_manager', - 'user_manager', - 'devices' -] - -MIDDLEWARE_CLASSES = [ - 'django.middleware.security.SecurityMiddleware', - 'django.contrib.sessions.middleware.SessionMiddleware', - 'django.middleware.common.CommonMiddleware', - 'django.middleware.csrf.CsrfViewMiddleware', - 'django.contrib.auth.middleware.AuthenticationMiddleware', - 'django.contrib.auth.middleware.SessionAuthenticationMiddleware', - 'django.contrib.messages.middleware.MessageMiddleware', - 'django.middleware.clickjacking.XFrameOptionsMiddleware', -] - -ROOT_URLCONF = 'pyros.urls' - -TEMPLATES = [ - { - 'BACKEND': 'django.template.backends.django.DjangoTemplates', - 'DIRS': ['misc/templates'], - 'APP_DIRS': True, - 'OPTIONS': { - 'context_processors': [ - 'django.template.context_processors.debug', - 'django.template.context_processors.request', - 'django.contrib.auth.context_processors.auth', - 'django.contrib.messages.context_processors.messages', - ], - }, - }, -] - -WSGI_APPLICATION = 'pyros.wsgi.application' - -FIXTURE_DIRS = ( - 'misc/fixtures/', -) - -LOGIN_URL = "/" - -# Database -# https://docs.djangoproject.com/en/1.9/ref/settings/#databases - -# EP modif - -CELERY_TEST = False - -if not CELERY_TEST: - if not MYSQL: - DATABASES = { - 'default': { - 'ENGINE': 'django.db.backends.sqlite3', - 'NAME': os.path.join(BASE_DIR, 'db.sqlite3'), - } - } - else: - DATABASES = { - 'default': { - 'ENGINE': 'django.db.backends.mysql', - 'NAME': 'test_pyros', - 'USER': 'pyros', - 'PASSWORD': 'DjangoPyros', - } - } -else: - DATABASES = { - 'default': { - 'ENGINE': 'django.db.backends.sqlite3', - 'NAME': os.path.join(BASE_DIR, 'testdb.sqlite3'), - 'TEST': { - 'NAME': os.path.join(BASE_DIR, 'testdb.sqlite3'), - }, - } - } - - -# Password validation -# https://docs.djangoproject.com/en/1.9/ref/settings/#auth-password-validators - -AUTH_PASSWORD_VALIDATORS = [ - { - 'NAME': 'django.contrib.auth.password_validation.UserAttributeSimilarityValidator', - }, - { - 'NAME': 'django.contrib.auth.password_validation.MinimumLengthValidator', - }, - { - 'NAME': 'django.contrib.auth.password_validation.CommonPasswordValidator', - }, - { - 'NAME': 'django.contrib.auth.password_validation.NumericPasswordValidator', - }, -] - - -# Internationalization -# https://docs.djangoproject.com/en/1.9/topics/i18n/ - -#LANGUAGE_CODE = 'en-us' -LANGUAGE_CODE = 'fr-FR' - -#TIME_ZONE = 'UTC' -TIME_ZONE = 'Europe/Paris' - -USE_I18N = True - -USE_L10N = True - -USE_TZ = True - - -# To find the media files {{ MEDIA_URL }} -MEDIA_URL = '/public/static/media/' - - -# To find the static files in the app/static/ap/... folders -STATIC_URL = '/public/static/' - -# To find the static files in src/static/. Any local directory can be added to this list. -STATICFILES_DIRS = ( - os.path.join(BASE_DIR, "misc", "static"), - ) - -# Used for deployment (DEBUG = False). Need to run "python manage.py collectstatic" to fill it. -STATIC_ROOT = os.path.join(os.path.dirname(BASE_DIR), 'public', 'static') - - -# EP added -if not DEBUG: - ''' - CACHES = { - 'default': { - 'BACKEND': 'django.core.cache.backends.memcached.MemcachedCache', - 'LOCATION': '127.0.0.1:11211', - } - } - ''' - CACHES = { - 'default': { - 'BACKEND': 'django.core.cache.backends.filebased.FileBasedCache', - 'LOCATION': '/var/tmp/django_cache', - } - } - -else: - CACHES = { - 'default': { - 'BACKEND': 'django.core.cache.backends.dummy.DummyCache', - } - } - -# from django.core.cache import cache -# cache.clear() - -# CELERY CONFIG - -# CELERY_RESULT_BACKEND = 'rpc://' -CELERY_RESULT_BACKEND = 'amqp' - -CELERY_ACCEPT_CONTENT = ['json'] -CELERY_TASK_SERIALIZER = 'json' -CELERY_RESULT_SERIALIZER = 'json' - -CELERY_IMPORTS = ( - "alert_manager.tasks", - "analyzer.tasks", - "majordome.tasks", - "monitoring.tasks", - "observation_manager.tasks", - "scheduler.tasks", -) - -# This config allows only 1 process / queue. We replace it by the -c option at celery workers creation. -# CELERYD_CONCURRENCY = 1 - -''' Following config is needed for manual purge ''' -CELERY_ACKS_LATE = False -CELERYD_PREFETCH_MULTIPLIER = 1 - -CELERY_QUEUES = { - "alert_listener_q": {"exchange": "alert_listener_q", "routing_key": "alert_listener_q"}, - "analysis_q": {"exchange": "analysis_q", "routing_key": "analysis_q"}, - "system_status_q": {"exchange": "system_status_q", "routing_key": "system_status_q"}, - "change_obs_conditions_q": {"exchange": "change_obs_conditions_q", "routing_key": "change_obs_conditions_q"}, - "monitoring_q": {"exchange": "monitoring_q", "routing_key": "monitoring_q"}, - "scheduling_q": {"exchange": "scheduling_q", "routing_key": "scheduling_q"}, - "execute_sequence_q": {"exchange": "execute_sequence_q", "routing_key": "execute_sequence_q"}, - "execute_plan_vis_q": {"exchange": "execute_plan_vis_q", "routing_key": "execute_plan_vis_q"}, - "execute_plan_nir_q": {"exchange": "execute_plan_nir_q", "routing_key": "execute_plan_nir_q"}, - "create_calibrations_q": {"exchange": "create_calibrations_q", "routing_key": "create_calibrations_q"}, -} - -CELERY_ROUTES = { - "alert_manager.tasks.alert_listener": {"queue": "alert_listener_q"}, - "analyzer.tasks.analysis": {"queue": "analysis_q"}, - "majordome.tasks.execute_sequence": {"queue": "execute_sequence_q"}, - "majordome.tasks.system_pause": {"queue": "system_status_q"}, - "majordome.tasks.system_restart": {"queue": "system_status_q"}, - "majordome.tasks.change_obs_conditions": {"queue": "change_obs_conditions_q"}, - "monitoring.tasks.monitoring": {"queue": "monitoring_q"}, - "observation_manager.tasks.execute_plan_vis": {"queue": "execute_plan_vis_q"}, - "observation_manager.tasks.execute_plan_nir": {"queue": "execute_plan_nir_q"}, - "observation_manager.tasks.create_calibrations": {"queue": "create_calibrations_q"}, - "scheduler.tasks.scheduling": {"queue": "scheduling_q"}, -} - -''' Removes pickle warning ''' -CELERY_ACCEPT_CONTENT = ['pickle', 'json', 'msgpack', 'yaml'] -- libgit2 0.21.2