npm package discovery and stats viewer.

Discover Tips

  • General search

    [free text search, go nuts!]

  • Package details

    pkg:[package-name]

  • User packages

    @[username]

Sponsor

Optimize Toolset

I’ve always been into building performant and accessible sites, but lately I’ve been taking it extremely seriously. So much so that I’ve been building a tool to help me optimize and monitor the sites that I build to make sure that I’m making an attempt to offer the best experience to those who visit them. If you’re into performant, accessible and SEO friendly sites, you might like it too! You can check it out at Optimize Toolset.

About

Hi, 👋, I’m Ryan Hefner  and I built this site for me, and you! The goal of this site was to provide an easy way for me to check the stats on my npm packages, both for prioritizing issues and updates, and to give me a little kick in the pants to keep up on stuff.

As I was building it, I realized that I was actually using the tool to build the tool, and figured I might as well put this out there and hopefully others will find it to be a fast and useful way to search and browse npm packages as I have.

If you’re interested in other things I’m working on, follow me on Twitter or check out the open source projects I’ve been publishing on GitHub.

I am also working on a Twitter bot for this site to tweet the most popular, newest, random packages from npm. Please follow that account now and it will start sending out packages soon–ish.

Open Software & Tools

This site wouldn’t be possible without the immense generosity and tireless efforts from the people who make contributions to the world and share their work via open source initiatives. Thank you 🙏

© 2024 – Pkg Stats / Ryan Hefner

argopm

v0.10.11

Published

Argo package manager

Downloads

273

Readme

npm-publish-status

argopm

argopm is a package manager for Argo Workflows. It enables developers to distribute and consume argo workflow templates as reusable modules.

Usually, these templates are declared in multiple YAML files and have to be manually applied to the cluster when making changes, doing this becomes very tedious with a growing number of templates.

That's why we built argopm. It allows you to bundle your workflow templates as npm packages so you can distribute and consume them using the amazing tooling already present in the Javascript ecosystem.

With argopm you can also add other k8s resources like configmaps, secrets etc to your package. It also supports adding grafana dashboards right into your package. There is also support for uploading static files to the artifactory ( available for AWS S3)

Getting Started

Prerequisites

  • Node.js > v16.9.0

Installation

argopm is available on NPM. You can install it globally in your node environment using npm or yarn.

npm i -g argopm

OR

yarn add -g argopm

Quickstart

To create a new package with argopm, create a directory for your package, cd into that directory and run argopm init . to scaffold a default package.

mkdir sample-package && cd sample-package
argopm init .

Once this succeeds, you'll see the following contents in your package

.
├── README.md
├── configmaps
│   ├── README.md
│   └── default.yaml
├── cronworkflows
│   ├── README.md
│   └── default.yaml
├── dashboards
│   └── grafana
│       └── observability.json
├── index.js
├── package.json
├── pipelines
│   ├── README.md
│   └── default.yaml
├── secrets
│   ├── README.md
│   └── default.yaml
├── static
│   ├── README.md
│   └── data.json
└── templates
    ├── README.md
    └── default.yaml

8 directories, 16 files

You can then run argopm install . to install this package to the kubernetes cluster your current context is set to.

Usage

You can use the --help flag to get info about various commands.

argopm <command>

Commands:
  argopm install <package>          Install a package. Package name can be of the format package@version                            [aliases: i]
  argopm info <package> [template]  Get info of the installed package or a specific template in the package
  argopm run <package> [template]   Run the package or the package template. Pass in arguments using --
  argopm uninstall <package>        Uninstall a package. Uninstalls all dependencies associated with the package.                [aliases: u, r]
  argopm init [package_name]        Initializes an Argo package inside the current working directory
  argopm list                       List all the packages installed in the namespace                                                [aliases: l]

Options:
      --version    Show version number                                                                                                 [boolean]
  -n, --namespace  Kubernetes namespace. Packages will be installed in this namespace                                 [string] [default: "argo"]
  -r, --registry   Argo Package Registry                                                        [string] [default: "https://packages.atlan.com"]
  -c, --cluster    Install the template at cluster level                                                              [boolean] [default: false]
      --help       Show help                                                                                                           [boolean]

Contributing

Refer to CONTRIBUTING.md for more information on contributing code, docs and tests to argopm.

License

The project is licensed under the MIT License, see the LICENSE file for details.

Discussion and Support