|
|
|
|
|
# Table of Contents
|
|
|
|
|
|
1. [Introduction](#org92a0eb7)
|
|
|
2. [What the application should do](#orgd555519)
|
|
|
1. [Nomenclature](#org5c1fc2a)
|
|
|
2. [Introduction](#org1158a43)
|
|
|
3. [What the application should do](#org19aacb8)
|
|
|
4. [Basic Conception](#org47e89fb)
|
|
|
1. [Inputs](#org5817d31)
|
|
|
2. [Outputs](#orgdcd8992)
|
|
|
5. [Second step of the pipeline: input validation](#org34efce3)
|
|
|
|
|
|
|
|
|
|
|
|
<a id="org92a0eb7"></a>
|
|
|
<a id="org5c1fc2a"></a>
|
|
|
|
|
|
# Nomenclature
|
|
|
|
|
|
- **CUSCUS:** Our beloved simulator.
|
|
|
- **CUSCUS-APP:** The QT Application that handles CUSCUS execution.
|
|
|
|
|
|
|
|
|
<a id="org1158a43"></a>
|
|
|
|
|
|
# Introduction
|
|
|
|
|
|
This is the laboratory notebook for the CUSCUS project…..maybe we can use GitLab Directly for documentation and planning?==?
|
|
|
This is the laboratory notebook for the CUSCUS project…..maybe we
|
|
|
can use GitLab Directly for documentation and planning?!?
|
|
|
|
|
|
|
|
|
<a id="orgd555519"></a>
|
|
|
<a id="org19aacb8"></a>
|
|
|
|
|
|
# What the application should do
|
|
|
|
|
|
The only objective of the application is to run a set of scripts
|
|
|
|
|
|
The script compose the set of *Cuscus Launch System* (**CLS**) and are
|
|
|
so repartitioned
|
|
|
|
|
|
- `launchCUSCUS.sh` handles them all
|
|
|
- It launches altogether
|
|
|
- `sysCheckFUN.sh`
|
|
|
- `generateXML.sh`
|
|
|
|
|
|
Afterwards it does the following actions:
|
|
|
|
|
|
1. It performs extra system checks
|
|
|
2. Flair GCS
|
|
|
3. N \(\times\) Containers
|
|
|
4. NS3
|
|
|
5. The Simulator
|
|
|
6. The Drones
|
|
|
|
|
|
The idea behind CUSCUS-APP is to have a QT framework that does the
|
|
|
same things in a luser-friendly way.
|
|
|
|
|
|
So it have to get the inputs from the users, **Validate Them** and run
|
|
|
a `set of stuff` (SoS).
|
|
|
|
|
|
|
|
|
<a id="org47e89fb"></a>
|
|
|
|
|
|
# Basic Conception
|
|
|
|
|
|
The smallest computing unit of the whole CUSCUS launching is composed of a single shell command.
|
|
|
|
|
|
All the rest are compositions of these basic units.
|
|
|
|
|
|
So the basic computing unit of CUSCUS-APP is a process that
|
|
|
composes a string from user input, executes it in a shell
|
|
|
environment and collects both output and exit status.
|
|
|
|
|
|
Once there is a working code available, the following step is to
|
|
|
create a process that validates user input separately
|
|
|
|
|
|
|
|
|
<a id="org5817d31"></a>
|
|
|
|
|
|
## Inputs
|
|
|
|
|
|
User inputs
|
|
|
|
|
|
|
|
|
<a id="orgdcd8992"></a>
|
|
|
|
|
|
## Outputs
|
|
|
|
|
|
std output of shell script execution + exit status of shell
|
|
|
|
|
|
|
|
|
<a id="org34efce3"></a>
|
|
|
|
|
|
# TODO Second step of the pipeline: input validation
|
|
|
|
|
|
After having developed a basic **REPL** (read, evaluate, play, linger)
|
|
|
cycle, the following step is to create a validator for the user
|
|
|
input.
|
|
|
|