Exam Continuous Integration EPSI DevOps 3A
Authors :
- Thibault Scorielle
- Antoine Letailleur
- Dimitri Perreaux
Purpose :
The objective of this project is to generate a diamond pattern using letters. The script takes a letter as a parameter and displays a diamond, starting with 'A', where the provided letter marks the widest point of the diamond.
Exemple :
diamond('A')
A
diamond('B')
A
B B
A
diamond('C')
A
B B
C C
B B
A
Want to use this project?
- FORK / CLONE
run the project
$ cd diamond_ci_exam
$ py diamond_ci_exam.py '<your_letter>'
#ex : $ py diamond_ci_exam.py 'J'
(default parameter : 'F')
- CREATE and ACTIVATE a VIRTUAL ENVIRONMENT to use poetry
Install venv
$ py -m pip install --user virtualenv
Create virtual env
$ py venv env
Activate virtual env
$ .\env\Scripts\activate
Install pipx
$ python -m pip install pipx
$ python -m pipx ensurepath
Install poetry
$ pipx install poetry
Install poetry dependencies
$ poetry install
Run Linters locally with poetry
$ poetry run flake8 ./diamond_ci_exam/diamond_ci_exam.py
$ poetry run isort ./diamond_ci_exam/diamond_ci_exam.py
$ poetry run bandit ./diamond_ci_exam/diamond_ci_exam.py
FLAKE8 : check PEP8
ISORT : check imports
BANDIT : find common security issues in Python code
- TESTS
Unit Tests locally
- witout poetry
$ python -m unittest discover -s test
- with poetry
$ poetry run python -m unittest discover -s test
- PUBLISH PACKAGE
$ poetry publish --build --username __token__ --password <pypi API token>
/!\ Don't forget to change the version of the package in pyproject.toml when you want to push and to update the package /!\
** Project is written with python 3.11 and tested on 3.9, 3.10, 3.11 **
Metadata
Release files for diamond_ci_exam 0.1.8
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | |
|---|---|---|---|
| diamond_ci_exam-0.1.8.tar.gz | 2.3 kB | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| diamond_ci_exam-0.1.8-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 5.1 kB
Release files / diamond_ci_exam-0.1.8.tar.gz
| Download URL | diamond_ci_exam-0.1.8.tar.gz |
|---|---|
| Size | 2.3 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
3508f422f7948570c96df110654032c02239c5ece74abaf482c2196a2b6b940d
|
|
BLAKE2b-256 checksum How to use checksums |
78e9515b4f38539ad36d5191b1a667eda4d4cd833e0c9f28c5ba0876543a5583
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
poetry/1.7.1 CPython/3.9.18 Linux/6.2.0-1018-azure
|
Release files / diamond_ci_exam-0.1.8-py3-none-any.whl
| Download URL | diamond_ci_exam-0.1.8-py3-none-any.whl |
|---|---|
| Size | 2.9 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
803884d073656b208d42fc70e9f267a0e41629c0e1f9874a0350664e6edaf972
|
|
BLAKE2b-256 checksum How to use checksums |
cd04fbbcb69cf81fdba12cedfb319dc03961aafd2919de01bd981fb57c997011
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
poetry/1.7.1 CPython/3.9.18 Linux/6.2.0-1018-azure
|