Promote argo application between environments
Project description
argops
A command-line interface for promoting Argocd applications between environments.
Features:
- smart promote of value files between environments
- Dry-run option to see the changes.
Installing
pipx install argops
It's recommended that you add to your ArgoCD .gitignore the *-decrypted.yaml string. This pattern will exclude these temporary files from being committed to your git repository. These files are created by argops during the decryption and encryption of sops secrets. Although argops cleans up these files after use, there's a possibility that they might be left behind if an error occurs during processing.
Usage
To use the tool, simply run it from your terminal on the directory where your environment directories are.
argops \
--src-dir=<source directory> \
--dest-dir=<destination directory> \
--dry-run
By default the source directory is staging and the destination directory production. The --dry-run flag will show you what changes will it do without making them.
Once you know that the changes are OK, remove the --dry-run option.
Known issues
Comments of promoted secrets are over the changed line
When you promote an environment specific values file, there are inline comments on the keys that have changed. However, sops doesn't support this format and adds the comment above the changed line. It's an upstream issue that is difficult to be addressed by us.
Development
If you want to run the tool from source, make sure you have Python and all required packages installed. You can do this using:
git clone https://codeberg.org/lyz/argops
cd argops
make init
Help
If you need help or want to report an issue, please see our issue tracker.
License
GPLv3
Authors
Lyz
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
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file argops-0.6.0.tar.gz.
File metadata
- Download URL: argops-0.6.0.tar.gz
- Upload date:
- Size: 51.8 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.1.0 CPython/3.11.2
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
993afad167c63d23a4853a3e54f7062a9fdeddbefdee6db2109a473528ec30db
|
|
| MD5 |
ecc88bd67c5ef54b735be4c04f378cb6
|
|
| BLAKE2b-256 |
87c2254783fc9f692af31aab101b616e1e0f3dd475bec9fab330dc30a8c3669e
|
File details
Details for the file argops-0.6.0-py3-none-any.whl.
File metadata
- Download URL: argops-0.6.0-py3-none-any.whl
- Upload date:
- Size: 40.9 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.1.0 CPython/3.11.2
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
25741f84dc955f1bfcf70273e04b637712f216419c64e460f256aaa328830fa0
|
|
| MD5 |
98cf9c13d2d3d36c958dd836da555a89
|
|
| BLAKE2b-256 |
c6b0fc649bdf327a9c5e73426da4f6f8e1f9ca3ae4f4a3d19b622e140eb5802b
|