Skip to main content

Juju Git Deploy

Juju Git Deploy is a Juju plugin which allows for easily deploying services from local charms hosted on Github. More information about Juju cloud orchestration tool can be found at https://juju.ubuntu.com/.

This plugin is mostly intended as a development tool, and can be useful for testing charms which code base lives in Github. For a more comprehensive and effective experience, take a look at the Juju GUI, which allows managing Juju environments via a user-friendly Web interface, and supports deploying local charms by dragging and dropping zip archives.

Also see Juju Quickstart: it is an easy to set up tool that quickly starts Juju and the GUI, whether you’ve never installed Juju or you have an existing Juju environment running.

Requirements

Juju Git Deploy requires Python >= 3.3 and Juju >= 1.17.7.

Python requirements are listed on the requirements.pip file.

This applications does not require git itself to be installed.

Installation

This plugin is registered on PyPI:

sudo pip3 install juju-git-deploy

Getting started

Bootstrap your Juju environment:

juju bootstrap

Deploy a charm from Github:

juju git-deploy github.com/hatched/ghost-charm

Done!

The charm above can be deployed also copy/pasting the URL, e.g.:

juju git-deploy https://github.com/hatched/ghost-charm

Otherwise, it is possible to use the simplified {user}/{repo} form:

juju git-deploy hatched/ghost-charm

At this point, the juju status command shows that a service is being deployed using the specified local charm.

Deploying a specific git branch

To deploy a specific git branch or reference, append a colon followed by the reference identifier, e.g.:

juju git-deploy frankban/ghost-charm:develop
juju git-deploy https://github.com/frankban/ghost-charm:develop

If the reference is not specified, the repository’s default branch is used (usually master).

Charm series

To deploy the charm on a specific OS series, provide the --series (or -s) argument, e.g.:

juju git-deploy hatched/ghost-charm -s trusty

If --series is not specified the default environment series is used.

Service name

The service name can be provided as second positional argument:

juju git-deploy hatched/ghost-charm:develop ghost-develop

If omitted, the service name is derived from the charm name.

Additional options

Other options include -e to select the Juju environment, --to and --num-units. See the plugin help by running:

juju help git-deploy

TODO

Support --constraints.

Metadata

Release files for juju-git-deploy 0.1.1

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for juju-git-deploy 0.1.1
File Size Uploaded
juju-git-deploy-0.1.1.tar.gz 30.1 kB Details

Release files / juju-git-deploy-0.1.1.tar.gz

Download URL juju-git-deploy-0.1.1.tar.gz
Size 30.1 kB
Tags Source
SHA-256 checksum
How to use checksums
1d2354f77e9e6dc67817cc128ac700a2ff15d93d797b3ea36244c8c083e56fe8
BLAKE2b-256 checksum
How to use checksums
0bd272a6de8c7a8a83c626dafc77a1f1b9ee01e336ecf22660acfc89eb9b6cab
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No

Release history Release notifications | RSS feed

This release

0.1.1 This release

1 release file

0.1.0

1 release file

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page