Skip to main content

Push your git-secret protected configuration parameters to AWS Parameter Store using roles for multiple accounts

Project description

# hush-push

## Installation

`pip install --user hush-push`

## Usage
```
usage: hush [-h] [--version] [--execute] [--overwrite] [--verbose]
[--remote-endpoint REMOTE_ENDPOINT]

Hello world

optional arguments:
-h, --help show this help message and exit
--version show the current version
--execute, -e create the specified configuration parameters
--overwrite, -o force put the configuration parameters even if they
already exist
--verbose, -v enable verbose logging
--remote-endpoint REMOTE_ENDPOINT, -r REMOTE_ENDPOINT
specify remote endpoint
```

## Pre-requisites
You need to specify which configuration file to use by setting the environment variable `AWS_CONFIG_FILE` to the absolute path of your configuration file.

## Directory structure

The directory structure need to be organized in folders at the root of your project. The first folder name should be equal to the profile name specified in the configuration file to use for the call. If your config looks like this:
```ini
[profile accProfile]
role_arn = arn:aws:iam::000000000000:role/ROLE
region = eu-west-1
source_profile = default
```
You must put your configuration parameters in the following structure under the directory `secrets/`:
```
<project-root>:
secrets/
accProfile/
parameterName
```

If the `parameterName` is a folder structure, the configuration parameter name will be a concatenated version of those. If the folder structure looks like this:
```
<project-root>:
secrets/
accProfile/
eu-west-1/
staging/
remoteEndpoint
```
the parameter name will look like this: `/eu-west-1/staging/remoteEndpoint` with the value of the parameter set to the content of the file `remoteEndpoint`

## Development

To build the dist: `python3 setup.py sdist bdist_wheel` and answer "no" to the question if it's a production release. To upload the created dist run `python3 -m twine upload --repository-url https://test.pypi.org/legacy/ dist/*` and sign in with your username and password.

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

hush-push-0.3.0.tar.gz (4.4 kB view hashes)

Uploaded Source

Built Distribution

hush_push-0.3.0-py2-none-any.whl (7.4 kB view hashes)

Uploaded Python 2

Supported by

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