Name Last Update
.settings Loading commit data...
config Loading commit data...
devices_channel Loading commit data...
doc Loading commit data...
images Loading commit data...
install Loading commit data...
logs Loading commit data...
public Loading commit data...
simulators Loading commit data...
src Loading commit data...
.gitignore Loading commit data...
.project Loading commit data...
.pydevproject Loading commit data...
README.md Loading commit data...
pyros.py Loading commit data...
setup.py Loading commit data...
start_agent.py Loading commit data...

README.md

PYROS (PYthon Robotic Observatory System)

A Python software for the management of a Telescope control center

COPYRIGHT (C) 2012-2018 IRAP (Institut de Recherche en Astrophysique et Planetologie) Toulouse - France

Authors : etienne.pallier@irap.omp.eu, alain.klotz@irap.omp.eu, patrick.maeght@irap.omp.eu, paul.carensac@epitech.eu, alexandru.burlacu11@gmail.com, jeremy.barneron@gmail.com, quentin.durand@epitech.eu

GPL License (http://www.gnu.org/copyleft/gpl.html) - See the file LICENSE.txt

This software runs with Python 3 and Django 2

To install it, go into the "install/" folder, and read the document INSTALLATION (better is to go to https://docs.google.com/document/d/1m7wUGMUPNPE2gdsQNLILDeF738oIk9OlQjVjNzQyWA8/edit#heading=h.aqi3gs3yp2s3)

This file is written in the markdown format (see https://openclassrooms.com/en/courses/1304236-redigez-en-markdown, https://michelf.ca/projets/php-markdown/syntaxe, https://daringfireball.net/projects/markdown/syntax)


Tested platforms

This software has been tested and validated with the following configurations :

  • Centos 7 (test server planetoweb2) :

    • Python: 3.5
    • Mysql:
    • Apache:
  • Ubuntu 14LTS (Paul Carensac's laptop) :

    • Python: 3.5
    • Mysql: 5.5.46
    • Apache:
  • Ubuntu 16.04 LTS (Jérémy Barneron's laptop) :

    • Python: 3.5.2
    • Mysql: 5.7.15
    • Apache: 2.4.18
    • Django: 1.10.2
  • Mac OS 10.11.4 (Etienne Pallier's laptop)

    • Python: 3.5
    • XAMPP for OS X 5.6.3, which comes with :
      • MySQL: 5.6.21
      • Apache 2.4.10

Project structure

- src/ : conteneur du projet (le nom est sans importance)
    - manage.py : utilitaire en ligne de commande permettant differentes actions sur le projet
    - pyros/ : the actual Python package of the project
        - settings.py : project settings and configuration
        - urls.py : déclaration des URLs du projet
        - wsgi.py : point d'entrée pour déployer le projet avec WSGI

- database/ : database configuration and documentation

- doc/ : project documentation

- install/ : project installation howto

- private/ : the content of this folder is private and thus not commited to git ; it should contain your Python3 virtual environment

- simulators/ : the devices simulators

- public/ : this folder contains all public files like the web html files
    - static/

LAST VERSION

Date: 18/03/2019

Author: E. Pallier

VERSION: 0.20.21

Comment: Multi-agents (2 agents) : AgentA (sender) sends commands to AgentB (receiver)

- AgentA a son propre scenario de commandes à envoyer à AgentB
- Mode opératoire pour lancer un agent:
    - pour démarrer agentA : ./pyros.py start agentA [-c configfile]
    (ou encore: activer l'environnement virtuel, puis lancer "./AgentA.py configfile")
    - pour démarrer agentB : ouvrir un autre terminal et taper "./pyros.py start agentB"
    - pour utiliser thread ou processus : il suffit de mettre la constante RUN_IN_THREAD de AgentA (ou AgentB ou AgentX) à False ou True
- GROSSE OPTIMISATION : plus besoin du script intermédiaire "start_agent.py" !!!
==> pyros.py lance directement "cd src/agent/ ; python AgentX.py"


MAIN CHANGES (MILESTONES):

Full list of commits: https://gitlab.irap.omp.eu/epallier/pyros/commits/master

The list below is obsolete. The new official changes history is here : https://tinyurl.com/pyros-dev#heading=h.2r55bflctpt5

17/01/19 : Version 20190117.0.000.0 (EP)

  • NO MORE CELERY (removed from everywhere)

10/10/18 : Version 2018.0.011 (E. Pallier)

  • NEW versionning plan : YYYYMMDD.M.mmm.b
    • YYYYMMDD = Day (UTC)
    • M = Major version number
    • mmm = Minor version number
    • b = Bugfix number
  • Global Version number is now in src/init.py (idem for each pyros application)
  • new devices_channel/ folder containing the new DeviceControllerAbstract and ClientChannelAbstract classes (independant from pyros for the moment, but will soon be integrated)
  • new src/utils/celme (celestial mecanics) library from Alain Klotz (more and more used inside pyros)
  • better README.md formatted file

14/05/18 : Version 2018.0.001 (Q. Durand)

  • Update all dependencies, update to django 2 and work in progress on the dashboard

23/03/18 Version 0.16.11 (E. Pallier)

  • All unit tests now pass WITHOUT celery (./manage.py test or ./pyros.py test)

22/03/18 Version 0.16.10 (E. Pallier)

  • New global variable USE_CELERY (false by default) in pyros.settings

13/03/18 Version 0.16.7 (E. Pallier)

  • Each agent (envmonitor, majordome, alert) can be started independently with a script (new script start_agent in each agent directory)
  • New command "pyros start" to start pyros in different ways (different options : everything or only some components)

22/02/18 Version 0.16.5 (E. Pallier)

  • Better isolation of Monitoring for easier testing (+ tuto)

01/02/18 Version 0.16.3 (Q. Durand)

  • New installation script src/install/install.py multiplatform (Lin-Mac-Win10, but also tested on Win7)

24/02/17 Version 0.15.1 - Added comments (Jeremy Barneron)

18/01/17 Version 0.15 - Execution with simulators

15/12/16 Version 0.14.1 - Final version 0.14

02/08/16 Version 0.12.4 - Final version 0.12 Simulators first versions https://projects.irap.omp.eu/versions/129

20/07/16 Version 0.11.4 - Final version 0.11 Alert manager second version https://projects.irap.omp.eu/versions/128

05/07/16 Version 0.10.2 - Final version 0.10 Monitoring first version https://projects.irap.omp.eu/versions/120

05/07/16 Version 0.9.2 - Final version 0.9 Analysis skeleton https://projects.irap.omp.eu/versions/119

28/06/16 Version 0.8.3 - Final version 0.8 Execution (majordome & obs manager), first version https://projects.irap.omp.eu/versions/118

23/06/16 Version 0.7.8 - Final version 0.7 Routine manager, first version https://projects.irap.omp.eu/versions/117

20/05/16 Version 0.6.1 - Final version 0.6 Complete user management https://projects.irap.omp.eu/versions/123

20/05/16 Version 0.5.4 - Final version 0.5 Complete alert manager first version https://projects.irap.omp.eu/versions/116

20/05/16 Version 0.4.2 - Final version 0.4 Complete scheduler update https://projects.irap.omp.eu/versions/90

10/05/16 Version 0.3.12 - Final version 0.3 Complete workflow skeleton https://projects.irap.omp.eu/versions/88

13/04/16 Version 0.2.7 - Final version 0.2 Integrate PLANNER module https://projects.irap.omp.eu/versions/97

12/04/16 Version 0.1.1 - Final version 0.1 Multi-platform skeleton easy install + admin interface on database + start dashboard https://projects.irap.omp.eu/versions/87

04/04/16 Installable version (install script)


TODO LIST (URGENT)

DEMO:

  • SIMULATOR:
    • (AC) réserver cette page à un login superuser sinon n'importe qui pourra faire n'importe quoi à distance...
    • 1) PLC :
      • ajouter boutons "START" et "STOP"
      • implémenter weather et site OK/KO
    • 2) TELE : implémenter "start" et "stop"
    • 3) General : implement set to night/day