Understanding Bundles - padogrid/padogrid GitHub Wiki

◀️ Running Groups :link: User Bundle Repos ▶️


If you want to share your workspace configuration with other users then you can create a bundle that includes the required artifacts using the create_bundle command. The created bundle can then be installed by other users by executing the install_bundle command. A bundle is essentially an archive file (tarball) that preserves all the required artifacts for reinstating the exact workspace environment that you captured at the time of bundle creation. You can think of it as a workspace snapshot.

The PadoGrid repos provide bundles with preconfigured apps, clusters, dockers, Kubernetes, and pods that are readily runnable in your PadoGrid workspace environment. All bundle repo names begin with bundle-. They are also cataloged for your convenience and viewable by running show_bundle -catalog -all.

# List all product bundles
show_bundle -all

# List the available bundles with short descriptions
show_bundle -header

# View the current workspace product bundle catalog in the browser
show_bundle -catalog

# View all bundle catalogs in the browser
show_bundle -catalog -all

# View bundle instructions in the browser
show_bundle bundle-hazelcast-4n5-app-kryo_codegen

You can use the install_bundle command to quickly download, install, and run the online bundles in a matter of seconds. For example, any of the following examples installs a bundle that includes source code and scripts for auto-generating Avro and KryoSerializer classes.

# Install bundle in the current workspace
install_bundle -download bundle-hazelcast-4n5-app-kryo_codegen

# Install bundle as a workspace
install_bundle -workspace bundle-hazelcast-4n5-app-kryo_codegen

# Checkout bundle as a workspace for development
install_bundle -checkout bundle-hazelcast-4n5-app-kryo_codegen

# Install a downloaded zip file in the current workspace.
install_bundle ~/Downloads/bundle-hazelcast-4n5-app-kryo_codegen-master.zip

# Install a downloaded zip file as a workspace.
install_bundle -workspace ~/Downloads/bundle-hazelcast-4n5-app-kryo_codegen-master.zip

Workspace

The -workspace option installs the bundle in the specified workspace. If the workspace does not exist then it creates a new workspace. If the -download option is specified with this option, then it downloads the bundle from the repo and installs it in the specified workspace. If the workspace already exists, then this command aborts with an error message.

# Install bundle as workspace using the 'default' name, i.e., the bundle name, as the
# workspace name. This creates the new workspace named, 'bundle-hazelcast-4n5-app-kryo_codegen'
# if it does not exist.
install_bundle -workspace default -download bundle-hazelcast-4n5-app-kryo_codegen

# Install bundle as workspace using the specified name, i.e., 'mybundle', as the workspace name.
# This creates a new workspace named, 'mybundle', if it does not exist.
install_bundle -workspace mybundle -download bundle-hazelcast-4n5-app-kryo_codegen

Checkout

The -checkout option checks out the bundle in the specified workspace. Unlike -workspace, this option keeps the repo intact so that any changes you make to the bundle can be checked in using the git command. Note that to check in, you need write permissions to the bundle repo. This option is particularly useful if you are maintaining your own bundles. PadoGrid supports any user's public and private repos. Please see the subsequent sections for details.

# Checkout bundle as workspace using the 'default' name, i.e., the bundle name, as the
# workspace name. This creates the new workspace named, 'bundle-hazelcast-4n5-app-kryo_codegen',
# if it does not exist.
install_bundle -checkout default -download bundle-hazelcast-4n5-app-kryo_codegen

# Checkout bundle as workspace using the specified name, i.e., 'mybundle', as the workspace name.
# This creates a new workspace named, 'mybundle', if it does not exist.
install_bundle -checkout mybundle -download bundle-hazelcast-4n5-app-kryo_codegen

Repo Zip File

If your target machine does not have access to the Internet, then you can manually download the zip file from the bundle repo using your browser and install the downloaded file. As described before, if the -workspace option is specified, it installs the bundle in the specified workspace.

# Install bundle in the current workspace
install_bundle ~/Downloads/bundle-hazelcast-4n5-app-kryo_codegen-master.zip

# Install bundle as workspace using the 'default' name, i.e., the bundle name, as the
# workspace name. This creates the new workspace named, 'bundle-hazelcast-4n5-app-kryo_codegen'
# if it does not exist.
install_bundle -workspace default ~/Downloads/bundle-hazelcast-4n5-app-kryo_codegen-master.zip

# Install bundle as workspace using the specified name, i.e., 'mybundle', as the workspace name.
# This creates a new workspace named, 'mybundle', if it does not exist.
install_bundle -workspace mybundle ~/Downloads/bundle-hazelcast-4n5-app-kryo_codegen-master.zip

Please see the usage by running one of the following:

# Display man page
man show_bundle
man install_bundle

# Display help (same info as man page)
show_bundle -?
install_bundle -?

Go To Bundle Catalogs


◀️ Running Groups :link: User Bundle Repos ▶️