Skip to main content

Bill Of Materials Management for Future Agile CICD

Project description

agileupbom

Python 3.8+ project to manage AgileUP pipeline bill-of-materials with the following features:

  • Linux and Windows compatible project.
  • Defines BOM model.
  • Manages bom yaml in S3 compatible storage.

Prerequisites

This project uses poetry is a tool for dependency management and packaging in Python. It allows you to declare the libraries your project depends on, it will manage (install/update) them for you.

Use the installer rather than pip installing-with-the-official-installer.

poetry self add poetry-bumpversion
poetry -V
Poetry (version 1.2.0)

Windows Path

Install poetry from powershell in admin mode.

(Invoke-WebRequest -Uri https://install.python-poetry.org -UseBasicParsing).Content | py -

The path will be C:\Users\<YOURUSER>\AppData\Roaming\Python\Scripts\poetry.exe which will will need to add to your system path.

Windows GitBash

When using gitbash you can setup an alias for the poetry command:

alias poetry="\"C:\Users\<YOURUSER>\AppData\Roaming\Python\Scripts\poetry.exe\""

Getting Started

poetry update
poetry install

Run

poetry run agileupbom

Lint

poetry run flake8

Test

poetry run pytest

Publish

  • By default we are using PYPI packages.
  • Create yourself an access token for PYPI and then follow the instructions.
export PYPI_USERNAME=__token__ 
export PYPI_PASSWORD=<Your API Token>
poetry publish --build --username $PYPI_USERNAME --password $PYPI_PASSWORD

Versioning

We use SemVer for versioning. For the versions available, see the tags on this repository.

Releasing

We are using poetry-bumpversion to manage release versions.

poetry version patch

Dependency

Once the release has been created it is now available for you to use in other python projects via:

pip install agileupbom

And also for poetry projects via:

poetry add agileupbom

Contributing

Please read CONTRIBUTING.md for details on our code of conduct, and the process for submitting pull requests to us.

License

This project is licensed under the Apache License, Version 2.0 - see the LICENSE file for details

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

agileupbom-0.0.12.tar.gz (4.5 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

agileupbom-0.0.12-py3-none-any.whl (5.5 kB view details)

Uploaded Python 3

File details

Details for the file agileupbom-0.0.12.tar.gz.

File metadata

  • Download URL: agileupbom-0.0.12.tar.gz
  • Upload date:
  • Size: 4.5 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: poetry/1.2.0 CPython/3.9.2 Linux/5.18.0-14parrot1-amd64

File hashes

Hashes for agileupbom-0.0.12.tar.gz
Algorithm Hash digest
SHA256 de893d39026818020b664f79360933031e2a85d7b3ee8942c85469f702bb7091
MD5 9a95726e5af39d65bacf758887e49a4e
BLAKE2b-256 97247fac4a51256c85b946eaed66344d8726e36dc566ba009a20e44cf3eaf67a

See more details on using hashes here.

File details

Details for the file agileupbom-0.0.12-py3-none-any.whl.

File metadata

  • Download URL: agileupbom-0.0.12-py3-none-any.whl
  • Upload date:
  • Size: 5.5 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: poetry/1.2.0 CPython/3.9.2 Linux/5.18.0-14parrot1-amd64

File hashes

Hashes for agileupbom-0.0.12-py3-none-any.whl
Algorithm Hash digest
SHA256 3124f8ec7c0e1b991accc46f6321ff30d9d21544eb651b73db7bbfc176dd2850
MD5 2e5b374a9b0fbb14c1ef4823ea6c0563
BLAKE2b-256 482302b841b9b14d338de160fb6827e531f5de17a82b3bae9e36ca6ab7878022

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page