Write a json's GPAO file
Project description
IGN GPAO Project Builder
IGN GPAO Project builder est une bibliothèque python de création de projet au format JSON pour la GPAO.
Prérequis
- Python 3 ou plus
Installation
Vous pouvez la télécharger depuis les dépôts officiels de PyPI:
pip install ign-gpao-project-builder
Exemple d'utilisation
from gpao.builder import Builder
from gpao.project import Project
from gpao.job import Job
job1 = Job("job1", "touch file", tags=["tag1", "tag2"])
job2 = Job("job2", "touch file")
job3 = Job("job3", "touch file", job1, tags=["tag1", "tag2"])
job3.add_dependency(job2)
# print(job1.to_json())
# print(job2.to_json())
# print(job3.to_json())
project1 = Project("project1", [job1, job2, job3])
# print(project1.to_json())
job4 = Job("job4", "touch file")
job5 = Job("job5", "touch file")
job5.add_dependency(job4)
project2 = Project("project2", [job4, job5])
#print(project2.to_json())
job6 = Job("job6", "touch file")
job7 = Job("job7", "touch file", job6)
project3 = Project("project3", [job6, job7], [project1, project2])
#print(project3.to_json())
builder = Builder([project1, project2])
builder.add_project(project3)
builder.save_as_json("project.json")
Cet exemple sauvegarde un fichier project.json
avec le contenu suivant :
{
"projects": [
{
"name": "project1",
"jobs": [
{
"name": "job1",
"command": "touch file",
"tags": [
"tag1",
"tag2"
]
},
{
"name": "job2",
"command": "touch file"
},
{
"name": "job3",
"command": "touch file",
"deps": [
{
"id": 0
},
{
"id": 1
}
],
"tags": [
"tag1",
"tag2"
]
}
]
},
{
"name": "project2",
"jobs": [
{
"name": "job4",
"command": "touch file"
},
{
"name": "job5",
"command": "touch file",
"deps": [
{
"id": 0
}
]
}
]
},
{
"name": "project3",
"jobs": [
{
"name": "job6",
"command": "touch file"
},
{
"name": "job7",
"command": "touch file",
"deps": [
{
"id": 0
}
]
}
],
"deps": [
{
"id": 0
},
{
"id": 1
}
]
}
]
}
Licence
Ce projet est sous licence CECILL-B (voir LICENSE.md).
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Close
Hashes for ign-gpao-project-builder-0.7.2.tar.gz
Algorithm | Hash digest | |
---|---|---|
SHA256 | 6e7224978febf9f2ff8f5ca06b7d4a7679dda5d685813733de4814393d040a06 |
|
MD5 | 9db0f9d2681181594ba5eca2eb4dad5a |
|
BLAKE2b-256 | a4067ef83dc4190832d1d66f6e0cf7180a0e1bf08b702c267555bed5ccad0765 |
Close
Hashes for ign_gpao_project_builder-0.7.2-py3-none-any.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | dc0fadfb26f51ba16e9d238bb6326a75df0195385479c1793b7aa358bc4f3c2f |
|
MD5 | 57217d7011f034d10b82777e59d7a195 |
|
BLAKE2b-256 | d166e19c70ef975ab600f537c8cac0095aa9dfc019ca69591f09ab6e894b9b29 |