Skip to main content

An extension to hvac, implementing recursive removal and retrieval of secrets and models for tokens and policies.

Project description

An extension to hvac, implementing recursive removal and retrieval of secrets and models for tokens and policies.

Development Workflow

The workflow supports the following steps

  • lint

  • test

  • build

  • document

  • upload

  • graph

These actions are supported out of the box by the corresponding scripts under _CI/scripts directory with sane defaults based on best practices. Sourcing setup_aliases.ps1 for windows powershell or setup_aliases.sh in bash on Mac or Linux will provide with handy aliases for the shell of all those commands prepended with an underscore.

The bootstrap script creates a .venv directory inside the project directory hosting the virtual environment. It uses pipenv for that. It is called by all other scripts before they do anything. So one could simple start by calling _lint and that would set up everything before it tried to actually lint the project

Once the code is ready to be delivered the _tag script should be called accepting one of three arguments, patch, minor, major following the semantic versioning scheme. So for the initial delivery one would call

$ _tag –minor

which would bump the version of the project to 0.1.0 tag it in git and do a push and also ask for the change and automagically update HISTORY.rst with the version and the change provided.

So the full workflow after git is initialized is:

  • repeat as necessary (of course it could be test - code - lint :) ) * code * lint * test

  • commit and push

  • develop more through the code-lint-test cycle

  • tag (with the appropriate argument)

  • build

  • upload (if you want to host your package in pypi)

  • document (of course this could be run at any point)

Important Information

This template is based on pipenv. In order to be compatible with requirements.txt so the actual created package can be used by any part of the existing python ecosystem some hacks were needed. So when building a package out of this do not simple call

$ python setup.py sdist bdist_egg

as this will produce an unusable artifact with files missing. Instead use the provided build and upload scripts that create all the necessary files in the artifact.

Project Features

  • TODO

History

0.1.0 (25-05-2018)

  • First release

0.2.0 (30-07-2018)

  • Added concurrency in retrieving the tokens from the server.

1.0.0 (16-10-2018)

  • Ported the template part to python 3.7

  • Officially dropped support for python 2.7

1.0.2 (25-10-2018)

  • Updated template and dependencies

1.1.0 (29-11-2018)

  • Updated to 0.7.0 of hvac

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

hashivaultlib-1.1.0.tar.gz (75.1 kB view details)

Uploaded Source

Built Distribution

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

hashivaultlib-1.1.0-py3.7.egg (88.9 kB view details)

Uploaded Egg

File details

Details for the file hashivaultlib-1.1.0.tar.gz.

File metadata

  • Download URL: hashivaultlib-1.1.0.tar.gz
  • Upload date:
  • Size: 75.1 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/1.12.1 pkginfo/1.4.2 requests/2.20.1 setuptools/40.4.3 requests-toolbelt/0.8.0 tqdm/4.28.1 CPython/3.7.0

File hashes

Hashes for hashivaultlib-1.1.0.tar.gz
Algorithm Hash digest
SHA256 d7f4d91595525c2d9c8370eddc7d8faacb42ddbd4f4cc79d211a78f01e11b944
MD5 dafebafea65885c26a2ae44a3106d661
BLAKE2b-256 d4ecb88cf77845325bbc02bb851ac6754c3a86327e50a681a6093eb9ab7c3c01

See more details on using hashes here.

File details

Details for the file hashivaultlib-1.1.0-py3.7.egg.

File metadata

  • Download URL: hashivaultlib-1.1.0-py3.7.egg
  • Upload date:
  • Size: 88.9 kB
  • Tags: Egg
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/1.12.1 pkginfo/1.4.2 requests/2.20.1 setuptools/40.4.3 requests-toolbelt/0.8.0 tqdm/4.28.1 CPython/3.7.0

File hashes

Hashes for hashivaultlib-1.1.0-py3.7.egg
Algorithm Hash digest
SHA256 406853d40a40b2205fda2efbed0b8d1c1be58bc3c1435ae57b282151f0a0a95f
MD5 833f9d917c9e554da287131312ef9aef
BLAKE2b-256 9bd3007f1c1a1b9db362f4050ab3a07dacdaa90ac9be14bab71e2bcfce428adb

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