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.3.tar.gz
Algorithm | Hash digest | |
---|---|---|
SHA256 | fd9f68807c6024cfa1bbd933d86100950918f89301410c8e09a519eeae160967 |
|
MD5 | 12c72c4722fcd0709e3d917635447566 |
|
BLAKE2b-256 | b1135149da04cf6e7cd1b709e91cfb48977d430cadb940ea2a8ab39888614c0f |
Close
Hashes for ign_gpao_project_builder-0.7.3-py3-none-any.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | a3b69be1e5c52aa132040bf1ac3974ee6ff379f92a07a955c545574601772453 |
|
MD5 | edf1f558be0351667fc67ea60f40eec3 |
|
BLAKE2b-256 | 6ceb5f59d1e4fe822e4e1d49e3db2e6971b6e2e7537f94b21f332cdb84a351f1 |