{"id":13769160,"url":"https://github.com/atlanhq/argopm","last_synced_at":"2025-12-27T05:25:44.077Z","repository":{"id":69933724,"uuid":"290434140","full_name":"atlanhq/argopm","owner":"atlanhq","description":"Ship argo workflows in packages","archived":false,"fork":false,"pushed_at":"2025-05-07T11:31:39.000Z","size":1408,"stargazers_count":23,"open_issues_count":11,"forks_count":3,"subscribers_count":25,"default_branch":"master","last_synced_at":"2025-05-07T12:35:07.943Z","etag":null,"topics":["argo","package-manager"],"latest_commit_sha":null,"homepage":"https://www.npmjs.com/package/argopm","language":"JavaScript","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/atlanhq.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":"CONTRIBUTING.md","funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null}},"created_at":"2020-08-26T08:01:06.000Z","updated_at":"2025-04-29T06:43:02.000Z","dependencies_parsed_at":"2024-05-29T11:09:51.986Z","dependency_job_id":"f3e56c73-f0de-456d-8c92-5f3a59bccb82","html_url":"https://github.com/atlanhq/argopm","commit_stats":null,"previous_names":[],"tags_count":78,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/atlanhq%2Fargopm","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/atlanhq%2Fargopm/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/atlanhq%2Fargopm/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/atlanhq%2Fargopm/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/atlanhq","download_url":"https://codeload.github.com/atlanhq/argopm/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":253504550,"owners_count":21918830,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["argo","package-manager"],"created_at":"2024-08-03T17:00:18.302Z","updated_at":"2025-12-27T05:25:44.071Z","avatar_url":"https://github.com/atlanhq.png","language":"JavaScript","funding_links":[],"categories":["Ecosystem Projects"],"sub_categories":[],"readme":"![npm-publish-status](https://github.com/atlanhq/argopm/actions/workflows/npm-publish.yml/badge.svg)\n\n# argopm\n\n`argopm` is a package manager for [Argo Workflows](https://argoproj.github.io/argo-workflows/). It enables developers to\ndistribute and consume argo workflow templates as reusable modules.\n\nUsually, these templates are declared in multiple YAML files and have to be manually applied to the cluster when making\nchanges, doing this becomes very tedious with a growing number of templates.\n\nThat's why we built `argopm`. It allows you to bundle your workflow templates as npm packages so you can distribute and\nconsume them using the amazing tooling already present in the Javascript ecosystem.\n\nWith `argopm` you can also add other k8s resources like configmaps, secrets etc to your package. It also supports adding\ngrafana dashboards right into your package. There is also support for uploading static files to the artifactory (\navailable for AWS S3)\n\n## Getting Started\n\n### Prerequisites\n\n-   Node.js `\u003e v18.20.3`\n\n### Installation\n\n`argopm` is available on [NPM](https://www.npmjs.com/package/argopm). You can install it globally in your node\nenvironment using `npm` or `yarn`.\n\n```bash\nnpm i -g argopm\n```\n\nOR\n\n```bash\nyarn add -g argopm\n```\n\n### Quickstart\n\nTo create a new package with `argopm`, create a directory for your package, `cd` into that directory and\nrun `argopm init .` to scaffold a default package.\n\n```bash\nmkdir sample-package \u0026\u0026 cd sample-package\nargopm init .\n```\n\nOnce this succeeds, you'll see the following contents in your package\n\n```bash\n.\n├── README.md\n├── configmaps\n│   ├── README.md\n│   └── default.yaml\n├── cronworkflows\n│   ├── README.md\n│   └── default.yaml\n├── dashboards\n│   └── grafana\n│       └── observability.json\n├── index.js\n├── package.json\n├── pipelines\n│   ├── README.md\n│   └── default.yaml\n├── secrets\n│   ├── README.md\n│   └── default.yaml\n├── static\n│   ├── README.md\n│   └── data.json\n└── templates\n    ├── README.md\n    └── default.yaml\n\n8 directories, 16 files\n```\n\nYou can then run `argopm install .` to install this package to the kubernetes cluster your current context is set to.\n\n## Usage\n\nYou can use the `--help` flag to get info about various commands.\n\n```\nargopm \u003ccommand\u003e\n\nCommands:\n  argopm install \u003cpackage\u003e          Install a package. Package name can be of the format package@version                            [aliases: i]\n  argopm info \u003cpackage\u003e [template]  Get info of the installed package or a specific template in the package\n  argopm run \u003cpackage\u003e [template]   Run the package or the package template. Pass in arguments using --\n  argopm uninstall \u003cpackage\u003e        Uninstall a package. Uninstalls all dependencies associated with the package.                [aliases: u, r]\n  argopm init [package_name]        Initializes an Argo package inside the current working directory\n  argopm list                       List all the packages installed in the namespace                                                [aliases: l]\n\nOptions:\n      --version    Show version number                                                                                                 [boolean]\n  -n, --namespace  Kubernetes namespace. Packages will be installed in this namespace                                 [string] [default: \"argo\"]\n  -r, --registry   Argo Package Registry                                                        [string] [default: \"https://packages.atlan.com\"]\n  -c, --cluster    Install the template at cluster level                                                              [boolean] [default: false]\n      --help       Show help                                                                                                           [boolean]\n```\n\n## Contributing\n\nRefer to [CONTRIBUTING.md](/CONTRIBUTING.md) for more information on contributing code, docs and tests to `argopm`.\n\n## License\n\nThe project is licensed under the MIT License, see the [LICENSE](LICENSE) file for details.\n\n## Discussion and Support\n\n-   Q\u0026A: [Github Discussions](https://github.com/atlanhq/argopm/discussions)\n-   You can also reach out to engineering@atlan.com\n\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fatlanhq%2Fargopm","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fatlanhq%2Fargopm","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fatlanhq%2Fargopm/lists"}