juju

package module
v0.0.0-...-b9bb202 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Dec 20, 2024 License: AGPL-3.0 Imports: 0 Imported by: 1

README

Juju logo next to the text Canonical Juju

Juju is an open source application orchestration engine that enables any application operation (deployment, integration, lifecycle management) on any infrastructure (Kubernetes or otherwise) at any scale (development or production) in the same easy way (typically, one line of code), through special operators called ‘charms’.

juju snap build

👉 Juju Learn how to quickly deploy, integrate, and manage charms on any cloud with Juju.
It's as simple as juju deploy foo, juju integrate foo bar, ..., on any cloud.
Charmhub Sample our existing charms on Charmhub.
A charm can be a cluster (OpenStack, Kubernetes), a data platform (PostgreSQL, MongoDB, etc.), an observability stack (Canonical Observability Stack), an MLOps solution (Kubeflow), and so much more.
Charm SDK Write your own charm!
Juju is written in Go, but our SDK supports easy charm development in Python.

Give it a try!

Let's use Juju to deploy, configure, and integrate some Kubernetes charms:

Set up

You will need a cloud and Juju. The quickest way is to use a Multipass VM launched with the charm-dev blueprint.

Install Multipass: Linux | macOS | Windows. On Linux:

sudo snap install multipass

Use Multipass to launch an Ubuntu VM with the charm-dev blueprint:

multipass launch --cpus 4 --memory 8G --disk 30G --name tutorial-vm charm-dev 

Open a shell into the VM:

multipass shell tutorial-vm

Verify that you have Juju and two localhost clouds:

juju clouds

Bootstrap a Juju controller into the MicroK8s cloud:

juju bootstrap microk8s tutorial-controller

Add a workspace, or 'model':

juju add-model tutorial-model

Deploy, configure, and integrate a few things

Deploy Mattermost:

juju deploy mattermost-k8s

See more: Charmhub | mattermost-k8s

Deploy PostgreSQL:

juju deploy postgresql-k8s --channel 14/stable --trust

See more: Charmhub | postgresql-k8s

Enable security in your PostgreSQL deployment:

juju deploy tls-certificates-operator
juju config tls-certificates-operator generate-self-signed-certificates="true" ca-common-name="Test CA"
juju integrate postgresql-k8s tls-certificates-operator

Integrate Mattermost with PostgreSQL:

juju integrate mattermost-k8s postgresql-k8s:db

Watch your deployment come to life:

juju status --watch 1s

(Press Ctrl-C to quit. Drop the --watch 1s flag to get the status statically. Use the --relations flag to view more information about your integrations.)

Test your deployment

When everything is in active or idle status, note the IP address and port of Mattermost and pass them to curl:

curl <IP address>:<port>/api/v4/system/ping

You should see the output below:

{"AndroidLatestVersion":"","AndroidMinVersion":"","IosLatestVersion":"","IosMinVersion":"","status":"OK"}

Congratulations!

You now have a Kubernetes deployment consisting of a Mattermost backed by PosgreSQL with TLS-encrypted traffic!

Clean up

Delete your Multipass VM:

multipass delete --purge tutorial-vm

Uninstall Multipass: Linux | macOS | Windows. On Linux:

snap remove multipass

Next steps

Learn more

Chat with us

Read our Code of conduct and:

File an issue

Make your mark

Documentation

Overview

Package juju is devops distilled.

Project homepage: https://github.com/juju/juju

For more information please refer to the README.md file in this directory.

Directories

Path Synopsis
api
agent/hostkeyreporter
Package hostkeyreporter implements the client-side API facade used by the hostkeyreporter worker.
Package hostkeyreporter implements the client-side API facade used by the hostkeyreporter worker.
agent/instancemutater/mocks
Package mocks is a generated GoMock package.
Package mocks is a generated GoMock package.
agent/leadership
Package leadership implements the client to the analog leadership service.
Package leadership implements the client to the analog leadership service.
agent/machineactions
Package machineactions implements the API side of running actions on machines.
Package machineactions implements the API side of running actions on machines.
agent/provisioner/mocks
Package mocks is a generated GoMock package.
Package mocks is a generated GoMock package.
agent/secretsdrain
Package secretsdrain provides the api client for the secretsdrain facade.
Package secretsdrain provides the api client for the secretsdrain facade.
agent/secretsdrain/mocks
Package mocks is a generated GoMock package.
Package mocks is a generated GoMock package.
agent/secretsmanager
Package secretsmanager provides the api client for the secretsmanager facade.
Package secretsmanager provides the api client for the secretsmanager facade.
base/mocks
Package mocks is a generated GoMock package.
Package mocks is a generated GoMock package.
client/action
Package action defines the API client for the Action facade.
Package action defines the API client for the Action facade.
client/application
Package application provides access to the application API facade.
Package application provides access to the application API facade.
client/bundle
Package bundle provides access to the bundle API facade.
Package bundle provides access to the bundle API facade.
client/charms
Package charms provides a client for accessing the charms API.
Package charms provides a client for accessing the charms API.
client/modelupgrader/mocks
Package mocks is a generated GoMock package.
Package mocks is a generated GoMock package.
client/secretbackends
Package secretbackends provides the api client for the secretbackends facade.
Package secretbackends provides the api client for the secretbackends facade.
client/secrets
Package secrets provides the api client for the secrets facade.
Package secrets provides the api client for the secrets facade.
common/charms
Package charms provides common helpers for charm-related APIs.
Package charms provides common helpers for charm-related APIs.
common/secretbackends
Package secretbackends provides the api client for the secretbackends facade.
Package secretbackends provides the api client for the secretbackends facade.
common/secretbackends/mocks
Package mocks is a generated GoMock package.
Package mocks is a generated GoMock package.
common/secretsdrain
Package secretsdrain provides the api client for the secretsdrain facade.
Package secretsdrain provides the api client for the secretsdrain facade.
common/secretsdrain/mocks
Package mocks is a generated GoMock package.
Package mocks is a generated GoMock package.
controller/migrationtarget
Package migrationtarget defines the client side API facade for use by the migration master worker when communicating with the target controller.
Package migrationtarget defines the client side API facade for use by the migration master worker when communicating with the target controller.
controller/pubsub
Package pubsub implements the API for streaming pubsub messages between API servers.
Package pubsub implements the API for streaming pubsub messages between API servers.
controller/secretsbackendmanager
Package secretsbackendmanager provides the api client for the secretsbackendmanager facade.
Package secretsbackendmanager provides the api client for the secretsbackendmanager facade.
controller/usersecrets
Package usersecrets provides the api client for the usersecrets facade.
Package usersecrets provides the api client for the usersecrets facade.
controller/usersecretsdrain
Package usersecretsdrain provides the api client for the usersecretsdrain facade.
Package usersecretsdrain provides the api client for the usersecretsdrain facade.
controller/usersecretsdrain/mocks
Package mocks is a generated GoMock package.
Package mocks is a generated GoMock package.
http/mocks
Package mocks is a generated GoMock package.
Package mocks is a generated GoMock package.
logsender
Package logsender implements the API for storing log messages on the API server.
Package logsender implements the API for storing log messages on the API server.
common/charms/mocks
Package mocks is a generated GoMock package.
Package mocks is a generated GoMock package.
common/credentialcommon
Package credentialcommon is a generated GoMock package.
Package credentialcommon is a generated GoMock package.
common/crossmodel/mocks
Package mocks is a generated GoMock package.
Package mocks is a generated GoMock package.
common/mocks
Package mocks is a generated GoMock package.
Package mocks is a generated GoMock package.
common/networkingcommon/mocks
Package mocks is a generated GoMock package.
Package mocks is a generated GoMock package.
common/secrets/mocks
Package mocks is a generated GoMock package.
Package mocks is a generated GoMock package.
common/storagecommon
Package storagecommon provides common storage-related services for API server facades.
Package storagecommon provides common storage-related services for API server facades.
facade/mocks
Package mocks is a generated GoMock package.
Package mocks is a generated GoMock package.
facades/agent/deployer/mocks
Package mocks is a generated GoMock package.
Package mocks is a generated GoMock package.
facades/agent/hostkeyreporter
Package hostkeyreporter implements the API facade used by the hostkeyreporter worker.
Package hostkeyreporter implements the API facade used by the hostkeyreporter worker.
facades/agent/instancemutater/mocks
Package mocks is a generated GoMock package.
Package mocks is a generated GoMock package.
facades/agent/machine
Package machine implements the API interface used by the machiner worker.
Package machine implements the API interface used by the machiner worker.
facades/agent/machineactions
Package machineactions implements the API server side of running actions on machines.
Package machineactions implements the API server side of running actions on machines.
facades/agent/migrationminion
Package migrationminion defines the API facade for use by the migration minion worker to monitor the progress of, and interact with, model migrations.
Package migrationminion defines the API facade for use by the migration minion worker to monitor the progress of, and interact with, model migrations.
facades/agent/provisioner
Package provisioner supplies the API facade used by the provisioner worker.
Package provisioner supplies the API facade used by the provisioner worker.
facades/agent/secretsdrain
Package secretsdrain provides the backend implementation for the secretsdrain facade.
Package secretsdrain provides the backend implementation for the secretsdrain facade.
facades/agent/secretsdrain/mocks
Package mocks is a generated GoMock package.
Package mocks is a generated GoMock package.
facades/agent/secretsmanager
Package secretsmanager provides the backend implementation for the secretsmanager facade.
Package secretsmanager provides the backend implementation for the secretsmanager facade.
facades/agent/secretsmanager/mocks
Package mocks is a generated GoMock package.
Package mocks is a generated GoMock package.
facades/agent/uniter
Package uniter implements the API interface used by the uniter worker.
Package uniter implements the API interface used by the uniter worker.
facades/agent/upgrader
Package upgrader is a generated GoMock package.
Package upgrader is a generated GoMock package.
facades/client/application
Package application contains API calls for functionality related to deploying and managing applications and their related charms.
Package application contains API calls for functionality related to deploying and managing applications and their related charms.
facades/client/bundle
Package bundle defines an API endpoint for functions dealing with bundles.
Package bundle defines an API endpoint for functions dealing with bundles.
facades/client/charms/mocks
Package mocks is a generated GoMock package.
Package mocks is a generated GoMock package.
facades/client/client
Package client defines the Client facade, which is responsible for providing status API methods to the Juju client.
Package client defines the Client facade, which is responsible for providing status API methods to the Juju client.
facades/client/cloud
Package cloud defines an API endpoint for functions dealing with the controller's cloud definition, and cloud credentials.
Package cloud defines an API endpoint for functions dealing with the controller's cloud definition, and cloud credentials.
facades/client/cloud/mocks
Package mocks is a generated GoMock package.
Package mocks is a generated GoMock package.
facades/client/controller
Package controller defines an API endpoint for functions dealing with controllers as a whole.
Package controller defines an API endpoint for functions dealing with controllers as a whole.
facades/client/controller/mocks
Package mocks is a generated GoMock package.
Package mocks is a generated GoMock package.
facades/client/keymanager
Package keymanager is a generated GoMock package.
Package keymanager is a generated GoMock package.
facades/client/modelconfig/mocks
Package mocks is a generated GoMock package.
Package mocks is a generated GoMock package.
facades/client/modelmanager
Package modelmanager defines an API endpoint for functions dealing with models: creating, listing and sharing models.
Package modelmanager defines an API endpoint for functions dealing with models: creating, listing and sharing models.
facades/client/modelmanager/mocks
Package mocks is a generated GoMock package.
Package mocks is a generated GoMock package.
facades/client/modelupgrader
Package modelupgrader defines an API endpoint for functions dealing with upgrading models.
Package modelupgrader defines an API endpoint for functions dealing with upgrading models.
facades/client/modelupgrader/mocks
Package mocks is a generated GoMock package.
Package mocks is a generated GoMock package.
facades/client/resources/mocks
Package mocks is a generated GoMock package.
Package mocks is a generated GoMock package.
facades/client/secretbackends
Package secretbackends provides the server implementation for the secretbackends facade.
Package secretbackends provides the server implementation for the secretbackends facade.
facades/client/secrets
Package secrets provides the backend implementation for the secrets facade.
Package secrets provides the backend implementation for the secrets facade.
facades/client/secrets/mocks
Package mocks is a generated GoMock package.
Package mocks is a generated GoMock package.
facades/client/sshclient
Package sshclient implements the API endpoint required for Juju clients that wish to make SSH connections to Juju managed machines.
Package sshclient implements the API endpoint required for Juju clients that wish to make SSH connections to Juju managed machines.
facades/client/storage
Package storage provides an API server facade for managing storage entities.
Package storage provides an API server facade for managing storage entities.
facades/controller/caasmodelconfigmanager/mocks
Package mocks is a generated GoMock package.
Package mocks is a generated GoMock package.
facades/controller/charmrevisionupdater/mocks
Package mocks is a generated GoMock package.
Package mocks is a generated GoMock package.
facades/controller/crossmodelsecrets/mocks
Package mocks is a generated GoMock package.
Package mocks is a generated GoMock package.
facades/controller/migrationmaster
Package migrationmaster defines the API facade for use by the migration master worker when communicating with its own controller.
Package migrationmaster defines the API facade for use by the migration master worker when communicating with its own controller.
facades/controller/migrationmaster/mocks
Package mocks is a generated GoMock package.
Package mocks is a generated GoMock package.
facades/controller/migrationtarget
Package migrationtarget defines the API facade for use by the migration master worker when interacting with the target controller during a migration.
Package migrationtarget defines the API facade for use by the migration master worker when interacting with the target controller during a migration.
facades/controller/remoterelations/mocks
Package mocks is a generated GoMock package.
Package mocks is a generated GoMock package.
facades/controller/secretbackendmanager
Package secretbackendmanager provides the backend implementation for the secretbackendmanager facade.
Package secretbackendmanager provides the backend implementation for the secretbackendmanager facade.
facades/controller/undertaker
Package undertaker is a generated GoMock package.
Package undertaker is a generated GoMock package.
facades/controller/usersecrets
Package usersecrets provides the backend implementation for the usersecrets facade.
Package usersecrets provides the backend implementation for the usersecrets facade.
facades/controller/usersecrets/mocks
Package mocks is a generated GoMock package.
Package mocks is a generated GoMock package.
facades/controller/usersecretsdrain
Package usersecretsdrain provides the backend implementation for the usersecretsdrain facade.
Package usersecretsdrain provides the backend implementation for the usersecretsdrain facade.
facades/controller/usersecretsdrain/mocks
Package mocks is a generated GoMock package.
Package mocks is a generated GoMock package.
httpattachment
Package httpattachment provides facilities for attaching a streaming blob of data and associated metadata to an HTTP API request, and for reading that blob on the server side.
Package httpattachment provides facilities for attaching a streaming blob of data and associated metadata to an HTTP API request, and for reading that blob on the server side.
logsink/mocks
Package mocks is a generated GoMock package.
Package mocks is a generated GoMock package.
observer/metricobserver
Package metricobserver provides an implementation of apiserver/observer.ObserverFactory that maintains Prometheus metrics.
Package metricobserver provides an implementation of apiserver/observer.ObserverFactory that maintains Prometheus metrics.
observer/metricobserver/mocks
Package mocks is a generated GoMock package.
Package mocks is a generated GoMock package.
stateauthenticator
Package stateauthenticator is a generated GoMock package.
Package stateauthenticator is a generated GoMock package.
kubernetes/provider/exec/mocks
Package mocks is a generated GoMock package.
Package mocks is a generated GoMock package.
kubernetes/provider/mocks
Package mocks is a generated GoMock package.
Package mocks is a generated GoMock package.
kubernetes/provider/pebble
Package pebble defines constants (probe handlers, health check ports) to be used in Pebble container specs.
Package pebble defines constants (probe handlers, health check ports) to be used in Pebble container specs.
kubernetes/provider/resources/mocks
Package mocks is a generated GoMock package.
Package mocks is a generated GoMock package.
mocks
Package mocks is a generated GoMock package.
Package mocks is a generated GoMock package.
Package cloud provides functionality to parse information describing clouds, including regions, supported auth types etc.
Package cloud provides functionality to parse information describing clouds, including regions, supported auth types etc.
cmd
Package cmd provides the structs and methods for building Juju commands.
Package cmd provides the structs and methods for building Juju commands.
containeragent/initialize/mocks
Package mocks is a generated GoMock package.
Package mocks is a generated GoMock package.
containeragent/utils/mocks
Package mocks is a generated GoMock package.
Package mocks is a generated GoMock package.
internal/loginprovider
Package loginprovider contains login providers required only by the Juju CLI.
Package loginprovider contains login providers required only by the Juju CLI.
juju/application/bundle/mocks
Package mocks is a generated GoMock package.
Package mocks is a generated GoMock package.
juju/application/deployer/mocks
Package mocks is a generated GoMock package.
Package mocks is a generated GoMock package.
juju/application/mocks
Package mocks is a generated GoMock package.
Package mocks is a generated GoMock package.
juju/application/store/mocks
Package mocks is a generated GoMock package.
Package mocks is a generated GoMock package.
juju/application/utils/mocks
Package mocks is a generated GoMock package.
Package mocks is a generated GoMock package.
juju/caas/mocks
Package mocks is a generated GoMock package.
Package mocks is a generated GoMock package.
juju/charmhub
Package charmhub implements the Charmhub-related CLI commands, such as "juju download", "juju find", and "juju info".
Package charmhub implements the Charmhub-related CLI commands, such as "juju download", "juju find", and "juju info".
juju/charmhub/mocks
Package mocks is a generated GoMock package.
Package mocks is a generated GoMock package.
juju/cloud/mocks
Package mocks is a generated GoMock package.
Package mocks is a generated GoMock package.
juju/commands/mocks
Package mocks is a generated GoMock package.
Package mocks is a generated GoMock package.
juju/config
Package config provides a common base struct to be used for Juju's various config commands (config, model-config, controller-config, model-defaults).
Package config provides a common base struct to be used for Juju's various config commands (config, model-config, controller-config, model-defaults).
juju/controller
Package controller groups various commands that are based on talking directly to the controller, and not environments in the controller.
Package controller groups various commands that are based on talking directly to the controller, and not environments in the controller.
juju/interact
Package interact provides helper methods for interacting with the CLI user at command run time.
Package interact provides helper methods for interacting with the CLI user at command run time.
juju/machine/mocks
Package mocks is a generated GoMock package.
Package mocks is a generated GoMock package.
juju/secrets/mocks
Package mocks is a generated GoMock package.
Package mocks is a generated GoMock package.
juju/space/mocks
Package mocks is a generated GoMock package.
Package mocks is a generated GoMock package.
juju/ssh/mocks
Package mocks is a generated GoMock package.
Package mocks is a generated GoMock package.
juju/storage
Package storage implements the "juju storage" command, which provides a storage management interface for manipulating and inspecting storage entities (volumes, filesystems, charm storage).
Package storage implements the "juju storage" command, which provides a storage management interface for manipulating and inspecting storage entities (volumes, filesystems, charm storage).
jujud
The `jujud` binary provides, among other things, commands that are used in agent definition files to spawn various agents.
The `jujud` binary provides, among other things, commands that are used in agent definition files to spawn various agents.
jujud-controller/agent/mocks
Package mocks is a generated GoMock package.
Package mocks is a generated GoMock package.
jujud/agent/mocks
Package mocks is a generated GoMock package.
Package mocks is a generated GoMock package.
jujud/reboot/mocks
Package mocks is a generated GoMock package.
Package mocks is a generated GoMock package.
modelcmd/mocks
Package mocks is a generated GoMock package.
Package mocks is a generated GoMock package.
Package core exists to hold concepts and pure logic pertaining to juju's domain.
Package core exists to hold concepts and pure logic pertaining to juju's domain.
errors
Package errors defines a set of common error types for use within Juju.
Package errors defines a set of common error types for use within Juju.
leadership
Package leadership holds code pertaining to application leadership in juju.
Package leadership holds code pertaining to application leadership in juju.
leadership/mocks
Package mocks is a generated GoMock package.
Package mocks is a generated GoMock package.
lxdprofile
Package lxdprofile defines a set of functions and constants that can interact with LXD Profiles.
Package lxdprofile defines a set of functions and constants that can interact with LXD Profiles.
lxdprofile/mocks
Package mocks is a generated GoMock package.
Package mocks is a generated GoMock package.
machine
Package machine provide core common types that all of Juju can use to reason about machines in a model.
Package machine provide core common types that all of Juju can use to reason about machines in a model.
modelconfig
Package modelconfig provides core types that can be used for interacting with model config.
Package modelconfig provides core types that can be used for interacting with model config.
os
Package os provides access to operating system related configuration.
Package os provides access to operating system related configuration.
output/progress/mocks
Package mocks is a generated GoMock package.
Package mocks is a generated GoMock package.
paths/transientfile
Package transientfile provides helpers for creating files that do not survive machine reboots.
Package transientfile provides helpers for creating files that do not survive machine reboots.
presence
Package presence works on the premise that an agent it alive if it has a current connection to one of the API servers.
Package presence works on the premise that an agent it alive if it has a current connection to one of the API servers.
resource
Package resources provides core functionality for the "resources" feature in Juju.
Package resources provides core functionality for the "resources" feature in Juju.
resource/testing
Package testing provides helpers for testing with resources.
Package testing provides helpers for testing with resources.
secrets
Package secrets is used for the core secrets data model.
Package secrets is used for the core secrets data model.
ssh
Package ssh holds core types needed for Juju for representing ssh information throughout the system.
Package ssh holds core types needed for Juju for representing ssh information throughout the system.
version
Package version contains versioning information for juju.
Package version contains versioning information for juju.
Package domain implements domain services.
Package domain implements domain services.
access
Package access provides the services for managing users and permissions in Juju.
Package access provides the services for managing users and permissions in Juju.
agentprovisioner
Package agentprovisioner defines the agent provisioner service, which the provisioner uses to retrieve container configuration for provisioning.
Package agentprovisioner defines the agent provisioner service, which the provisioner uses to retrieve container configuration for provisioning.
annotation
Package annotation provides a way to attach key-value pairs to object types.
Package annotation provides a way to attach key-value pairs to object types.
application
Package application provides the domain types for an application.
Package application provides the domain types for an application.
application/charm
Package charm provides the domain types for a charm.
Package charm provides the domain types for a charm.
cloud
Package cloud contains the service for managing clouds known to Juju.
Package cloud contains the service for managing clouds known to Juju.
cloudimagemetadata
Package cloudimagemetadata provides a service to store and retrieve cloud image metadata.
Package cloudimagemetadata provides a service to store and retrieve cloud image metadata.
controller
Package controller holds the controller state and service.
Package controller holds the controller state and service.
controllernode
Package controllernode provides the service that keeps track of controller nodes.
Package controllernode provides the service that keeps track of controller nodes.
externalcontroller
Package externalcontroller provides a service to keep track of external controllers.
Package externalcontroller provides a service to keep track of external controllers.
flag
Package flag provides a service that keeps track of global boolean operational flags.
Package flag provides a service that keeps track of global boolean operational flags.
keymanager
Package keys provides the domain needed for configuring public keys on a model for a user.
Package keys provides the domain needed for configuring public keys on a model for a user.
keyupdater
Package keyupdater provides the domain knowledge for retrieving the authorised keys for the different entities within Juju.
Package keyupdater provides the domain knowledge for retrieving the authorised keys for the different entities within Juju.
machine
Package machine provides the services for managing machines in Juju.
Package machine provides the services for managing machines in Juju.
model
Package model contains the controller model service.
Package model contains the controller model service.
modelagent
Package modelagent defines a domain to access information about the agents running in a model, such as the version.
Package modelagent defines a domain to access information about the agents running in a model, such as the version.
network
Package network provides the service for managing juju's networking aspects, namely spaces and subnets.
Package network provides the service for managing juju's networking aspects, namely spaces and subnets.
resource
Package resource provides the domain types for a resource.
Package resource provides the domain types for a resource.
schema
Package schema contains the schema definitions for all the domains.
Package schema contains the schema definitions for all the domains.
upgrade/state
Package upgrade state provides a type for representing the state of an upgrade.
Package upgrade state provides a type for representing the state of an upgrade.
cmd
imagedownloads
Package imagedownloads implements image-downloads metadata from simplestreams.
Package imagedownloads implements image-downloads metadata from simplestreams.
mocks
Package mocks is a generated GoMock package.
Package mocks is a generated GoMock package.
simplestreams
Package simplestreams supports locating, parsing, and filtering metadata in simplestreams format.
Package simplestreams supports locating, parsing, and filtering metadata in simplestreams format.
testing
Code generated by MockGen.
Code generated by MockGen.
schemagen/gen
Code generated by MockGen.
Code generated by MockGen.
schemagen/jsonschema-gen
Package jsonschema uses reflection to generate JSON Schemas from Go types [1].
Package jsonschema uses reflection to generate JSON Schemas from Go types [1].
internal
auth
Package auth provides common types and functions for aiding in authentication within Juju.
Package auth provides common types and functions for aiding in authentication within Juju.
charm
Package charm represents the wire protocol for the charm.
Package charm represents the wire protocol for the charm.
charm/charmdownloader
Package charmdownloader is responsible for downloading charms and bundles from the charm store.
Package charmdownloader is responsible for downloading charms and bundles from the charm store.
charm/downloader
Package downloader is deprecated use charmdownloader instead.
Package downloader is deprecated use charmdownloader instead.
charm/downloader/mocks
Package mocks is a generated GoMock package.
Package mocks is a generated GoMock package.
charm/repository/mocks
Package mocks is a generated GoMock package.
Package mocks is a generated GoMock package.
charmhub
Package charmhub is an HTTP client for sending requests to the Charmhub API.
Package charmhub is an HTTP client for sending requests to the Charmhub API.
charmhub/path
Package path defines helpers for constructing Charmhub API URL paths.
Package path defines helpers for constructing Charmhub API URL paths.
charmhub/transport
Package transport defines the request and response structs for use with the Charmhub API client.
Package transport defines the request and response structs for use with the Charmhub API client.
cloudconfig/cloudinit
Package cloudinit implements a way of creating a cloud-init configuration file.
Package cloudinit implements a way of creating a cloud-init configuration file.
cloudconfig/providerinit
Package providerinit offers userdata in a gzipped format to be used by different cloud providers.
Package providerinit offers userdata in a gzipped format to be used by different cloud providers.
cloudconfig/providerinit/renderers
Package renderers implements a way to encode the userdata depending on the OS and the provider.
Package renderers implements a way to encode the userdata depending on the OS and the provider.
cmd
container/broker/mocks
Package mocks is a generated GoMock package.
Package mocks is a generated GoMock package.
container/lxd/mocks
Package mocks is a generated GoMock package.
Package mocks is a generated GoMock package.
container/lxd/testing
Package testing contains the testing infrastructure to mock out the LXD API.
Package testing contains the testing infrastructure to mock out the LXD API.
container/testing
Code generated by MockGen.
Code generated by MockGen.
dlv
Package dlv allows to run any binaries with latest version of delve.
Package dlv allows to run any binaries with latest version of delve.
docker/registry/internal/mocks
Package mocks is a generated GoMock package.
Package mocks is a generated GoMock package.
docker/registry/mocks
Package mocks is a generated GoMock package.
Package mocks is a generated GoMock package.
environschema
Package environschema implements a way to specify configuration attributes for Juju environments.
Package environschema implements a way to specify configuration attributes for Juju environments.
environschema/form
Package form provides ways to create and process forms based on environschema schemas.
Package form provides ways to create and process forms based on environschema schemas.
errors
Package errors implements a set of error helpers and proxies on to standard go errors for use within Juju.
Package errors implements a set of error helpers and proxies on to standard go errors for use within Juju.
featureflag
Package featureflag gives other parts of Juju the ability to easily check to see if a feature flag has been defined.
Package featureflag gives other parts of Juju the ability to easily check to see if a feature flag has been defined.
fs
mongo/mongometrics
Package mongometrics contains MongodB-related Prometheus metric collectors.
Package mongometrics contains MongodB-related Prometheus metric collectors.
mongo/mongotest
Package mongotest is a generated GoMock package.
Package mongotest is a generated GoMock package.
observability/probe
Package probe provides a common set of interfaces and default implementations to facilitate probe support over many packages in Juju.
Package probe provides a common set of interfaces and default implementations to facilitate probe support over many packages in Juju.
packaging/commands
Package commands contains an interface which returns common package-manager related commands and the reference implementation for apt and yum-based systems.
Package commands contains an interface which returns common package-manager related commands and the reference implementation for apt and yum-based systems.
packaging/config
Package config defines an interface which returns packaging-related configuration options and operations depending on the desired package-management system.
Package config defines an interface which returns packaging-related configuration options and operations depending on the desired package-management system.
packaging/manager
Package manager defines an interface which can carry out numerous package-management related operations on the local system and the respective implementations on apt and yum-based systems.
Package manager defines an interface which can carry out numerous package-management related operations on the local system and the respective implementations on apt and yum-based systems.
packaging/manager/testing
Package testing contains a mock implementation of the manager.PackageManager interface which always returns positive outcomes and a nil error.
Package testing contains a mock implementation of the manager.PackageManager interface which always returns positive outcomes and a nil error.
pki
provider/azure
Package azure implements the Azure provider, registered with the environs registry under the name "azure".
Package azure implements the Azure provider, registered with the environs registry under the name "azure".
provider/common/mocks
Package mocks is a generated GoMock package.
Package mocks is a generated GoMock package.
provider/dummy
Package dummy implements an environment provider for testing purposes, registered with environs under the name "dummy".
Package dummy implements an environment provider for testing purposes, registered with environs under the name "dummy".
provider/equinix/mocks
Package mocks is a generated GoMock package.
Package mocks is a generated GoMock package.
provider/lxd/lxdnames
Package lxdnames provides names for the LXD provider.
Package lxdnames provides names for the LXD provider.
provider/oci/testing
Code generated by MockGen.
Code generated by MockGen.
provider/openstack
Package openstack implements the OpenStack provider, registered with environs under the name "openstack".
Package openstack implements the OpenStack provider, registered with environs under the name "openstack".
provider/vsphere/mocks
Package mocks is a generated GoMock package.
Package mocks is a generated GoMock package.
pubsub/agent
Package agent contains messages for all agents rather than controllers.
Package agent contains messages for all agents rather than controllers.
resource/mocks
Package mocks is a generated GoMock package.
Package mocks is a generated GoMock package.
secrets
Package secrets provides the service layer for the various secrets backends.
Package secrets provides the service layer for the various secrets backends.
secrets/mocks
Package mocks is a generated GoMock package.
Package mocks is a generated GoMock package.
secrets/provider/juju
Package juju provides the juju secrets backend.
Package juju provides the juju secrets backend.
secrets/provider/kubernetes
Package kubernetes provides the kubernetes secrets backend.
Package kubernetes provides the kubernetes secrets backend.
secrets/provider/kubernetes/mocks
Package mocks is a generated GoMock package.
Package mocks is a generated GoMock package.
secrets/provider/vault
Package vault provides the vault secrets backend.
Package vault provides the vault secrets backend.
secrets/provider/vault/mocks
Package mocks is a generated GoMock package.
Package mocks is a generated GoMock package.
service/mocks
Package mocks is a generated GoMock package.
Package mocks is a generated GoMock package.
service/pebble/identity
Package identity defines the various types to work with the Pebble identities file.
Package identity defines the various types to work with the Pebble identities file.
service/pebble/plan
Package plan defines the various types to work with the Pebble plan and layers.
Package plan defines the various types to work with the Pebble plan and layers.
service/snap
Package snap manages installing and running snaps.
Package snap manages installing and running snaps.
socketlistener
Package socketlistener provides a worker that will listen on a specified unix socket identified by a file descriptor.
Package socketlistener provides a worker that will listen on a specified unix socket identified by a file descriptor.
ssh
ssh/importer
Package importer provides a means for importing public ssh keys from a well known internet based location such as Github or Launchpad.
Package importer provides a means for importing public ssh keys from a well known internet based location such as Github or Launchpad.
storage
Package storage defines structures and functions relating to charm storage.
Package storage defines structures and functions relating to charm storage.
upgrades
Package upgrades provides infrastructure to upgrade previous Juju deployments to the current Juju version.
Package upgrades provides infrastructure to upgrade previous Juju deployments to the current Juju version.
upgrades/mocks
Package mocks is a generated GoMock package.
Package mocks is a generated GoMock package.
upgrades/upgradevalidation/mocks
Package mocks is a generated GoMock package.
Package mocks is a generated GoMock package.
worker/apiaddressupdater/mocks
Package mocks is a generated GoMock package.
Package mocks is a generated GoMock package.
worker/authenticationworker/mocks
Package mocks is a generated GoMock package.
Package mocks is a generated GoMock package.
worker/bootstrap
Package bootstrap ensures that when the initial bootstrap process has started that we seed the following:
Package bootstrap ensures that when the initial bootstrap process has started that we seed the following:
worker/caasadmission
Package caasadmission defines the caasadmission worker.
Package caasadmission defines the caasadmission worker.
worker/caasapplicationprovisioner
Package caasapplicationprovisioner defines two types of worker:
Package caasapplicationprovisioner defines two types of worker:
worker/caasapplicationprovisioner/mocks
Package mocks is a generated GoMock package.
Package mocks is a generated GoMock package.
worker/caasfirewaller/mocks
Package mocks is a generated GoMock package.
Package mocks is a generated GoMock package.
worker/caasmodelconfigmanager/mocks
Package mocks is a generated GoMock package.
Package mocks is a generated GoMock package.
worker/caasprobebinder
Package caasprobebinder exists to bind probe providers to the caasprober.
Package caasprobebinder exists to bind probe providers to the caasprober.
worker/caasunitsmanager/mocks
Package mocks is a generated GoMock package.
Package mocks is a generated GoMock package.
worker/charmrevision
Package charmrevision defines the charm revision updater worker.
Package charmrevision defines the charm revision updater worker.
worker/computeprovisioner
Package computeprovisioner defines the compute provisioner worker.
Package computeprovisioner defines the compute provisioner worker.
worker/containerbroker
Package containerbroker worker sole responsibility is to manage the lifecycle of a instance-broker.
Package containerbroker worker sole responsibility is to manage the lifecycle of a instance-broker.
worker/containerbroker/mocks
Package mocks is a generated GoMock package.
Package mocks is a generated GoMock package.
worker/containerprovisioner
Package containerprovisioner defines the container provisioner worker.
Package containerprovisioner defines the container provisioner worker.
worker/controlleragentconfig
Package controlleragentconfig provides a worker that listens on the "/reload" endpoint of the config change socket and restarts any workers that have requested to watch the config.
Package controlleragentconfig provides a worker that listens on the "/reload" endpoint of the config change socket and restarts any workers that have requested to watch the config.
worker/controlsocket
Package controlsocket defines the controlsocket worker, which exposes a Unix socket that the juju-controller charm can use to affect Juju state.
Package controlsocket defines the controlsocket worker, which exposes a Unix socket that the juju-controller charm can use to affect Juju state.
worker/deployer/mocks
Package mocks is a generated GoMock package.
Package mocks is a generated GoMock package.
worker/diskmanager
Package diskmanager defines a worker that periodically lists block devices on the machine it runs on.
Package diskmanager defines a worker that periodically lists block devices on the machine it runs on.
worker/firewaller/mocks
Package mocks is a generated GoMock package.
Package mocks is a generated GoMock package.
worker/fortress
Package fortress implements a convenient metaphor for an RWLock.
Package fortress implements a convenient metaphor for an RWLock.
worker/gate
Package gate provides a mechanism by which independent workers can wait for one another to finish a task, without introducing explicit dependencies between those workers.
Package gate provides a mechanism by which independent workers can wait for one another to finish a task, without introducing explicit dependencies between those workers.
worker/httpclient
Package httpclient provides a worker that manages http clients.
Package httpclient provides a worker that manages http clients.
worker/instancemutater
Package instancemutater defines workers that compares the list of lxd profiles applied to a machine with the list of expected profiles based on the application versions which should be running on the machine.
Package instancemutater defines workers that compares the list of lxd profiles applied to a machine with the list of expected profiles based on the application versions which should be running on the machine.
worker/instancemutater/mocks
Package mocks is a generated GoMock package.
Package mocks is a generated GoMock package.
worker/instancepoller/mocks
Package mocks is a generated GoMock package.
Package mocks is a generated GoMock package.
worker/introspection
Package introspection defines the worker that can report internal agent state through the use of a machine local socket.
Package introspection defines the worker that can report internal agent state through the use of a machine local socket.
worker/introspection/pprof
Package pprof is a fork of net/http/pprof modified to communicate over a unix socket.
Package pprof is a fork of net/http/pprof modified to communicate over a unix socket.
worker/lease
Package lease, also known as the manager, manages the leases used by individual Juju workers.
Package lease, also known as the manager, manages the leases used by individual Juju workers.
worker/logsender/logsendertest
Package logsendertest provides testing utilities related to the logsender package.
Package logsendertest provides testing utilities related to the logsender package.
worker/logsender/mocks
Package mocks is a generated GoMock package.
Package mocks is a generated GoMock package.
worker/machineactions/mocks
Package mocks is a generated GoMock package.
Package mocks is a generated GoMock package.
worker/mocks
Package mocks is a generated GoMock package.
Package mocks is a generated GoMock package.
worker/reboot/mocks
Package mocks is a generated GoMock package.
Package mocks is a generated GoMock package.
worker/remoterelations
Package remoterelations defines workers which manage the operation of cross model relations.
Package remoterelations defines workers which manage the operation of cross model relations.
worker/secretbackendrotate
Package secretbackendrotate provides a worker for tracking and rotating a secret backend token.
Package secretbackendrotate provides a worker for tracking and rotating a secret backend token.
worker/secretbackendrotate/mocks
Package mocks is a generated GoMock package.
Package mocks is a generated GoMock package.
worker/secretexpire
Package secretexpire provides a worker for tracking and notifying when a secret revision should expire.
Package secretexpire provides a worker for tracking and notifying when a secret revision should expire.
worker/secretexpire/mocks
Package mocks is a generated GoMock package.
Package mocks is a generated GoMock package.
worker/secretrotate
Package secretrotate provides a worker for tracking and notifying when a secret should be rotated.
Package secretrotate provides a worker for tracking and notifying when a secret should be rotated.
worker/secretrotate/mocks
Package mocks is a generated GoMock package.
Package mocks is a generated GoMock package.
worker/secretsdrainworker
Package secretsdrainworker provides a worker running on the agent for draining secrets to the new active backend when the model changed secret backend.
Package secretsdrainworker provides a worker running on the agent for draining secrets to the new active backend when the model changed secret backend.
worker/secretsdrainworker/mocks
Package mocks is a generated GoMock package.
Package mocks is a generated GoMock package.
worker/secretspruner
Package secretspruner provides a worker for tracking and pruning when a user supplied secret revision is obsolote.
Package secretspruner provides a worker for tracking and pruning when a user supplied secret revision is obsolote.
worker/secretspruner/mocks
Package mocks is a generated GoMock package.
Package mocks is a generated GoMock package.
worker/simplesignalhandler
Package simplesignalhandler provides a worker that responds to os signals and returns a pre-defined error from this worker when the signal is received.
Package simplesignalhandler provides a worker that responds to os signals and returns a pre-defined error from this worker when the signal is received.
worker/stateconverter/mocks
Package mocks is a generated GoMock package.
Package mocks is a generated GoMock package.
worker/storageprovisioner
Package storageprovisioner provides a worker that manages the provisioning and deprovisioning of storage volumes and filesystems, and attaching them to and detaching them from machines.
Package storageprovisioner provides a worker that manages the provisioning and deprovisioning of storage volumes and filesystems, and attaching them to and detaching them from machines.
worker/uniter
Package uniter is the "uniter" worker which implements the capabilities of the unit agent, for example running a charm's hooks in response to model events.
Package uniter is the "uniter" worker which implements the capabilities of the unit agent, for example running a charm's hooks in response to model events.
worker/uniter/api
Package api defines the api client interfaces used by the uniter and the gomock mocks used in testing.
Package api defines the api client interfaces used by the uniter and the gomock mocks used in testing.
worker/uniter/charm/mocks
Package mocks is a generated GoMock package.
Package mocks is a generated GoMock package.
worker/uniter/hook
Package hook provides types that define the hooks known to the Uniter.
Package hook provides types that define the hooks known to the Uniter.
worker/uniter/operation/mocks
Package mocks is a generated GoMock package.
Package mocks is a generated GoMock package.
worker/uniter/relation
Package relation implements persistent local storage of a unit's relation state, and translation of relation changes into hooks that need to be run.
Package relation implements persistent local storage of a unit's relation state, and translation of relation changes into hooks that need to be run.
worker/uniter/relation/mocks
Package mocks is a generated GoMock package.
Package mocks is a generated GoMock package.
worker/uniter/runner/context
Package context contains the ContextFactory and Context definitions.
Package context contains the ContextFactory and Context definitions.
worker/uniter/runner/context/mocks
Package mocks is a generated GoMock package.
Package mocks is a generated GoMock package.
worker/uniter/runner/jujuc
Package jujuc implements the server side of the jujuc proxy tool, which forwards command invocations to the unit agent process so that they can be executed against specific state.
Package jujuc implements the server side of the jujuc proxy tool, which forwards command invocations to the unit agent process so that they can be executed against specific state.
worker/uniter/runner/jujuc/mocks
Package mocks is a generated GoMock package.
Package mocks is a generated GoMock package.
worker/uniter/runner/mocks
Package mocks is a generated GoMock package.
Package mocks is a generated GoMock package.
worker/uniter/secrets/mocks
Package mocks is a generated GoMock package.
Package mocks is a generated GoMock package.
worker/uniter/storage
Package storage contains the storage subsystem for the uniter, responding to changes in storage attachments (lifecycle, volume/filesystem details) by queuing hooks and managing the storage attachments' lifecycle.
Package storage contains the storage subsystem for the uniter, responding to changes in storage attachments (lifecycle, volume/filesystem details) by queuing hooks and managing the storage attachments' lifecycle.
worker/upgrader/mocks
Package mocks is a generated GoMock package.
Package mocks is a generated GoMock package.
rpc
jsoncodec
Package jsoncodec provides a JSON codec for the rpc package.
Package jsoncodec provides a JSON codec for the rpc package.
scripts
juju-mongotop Module
Package state enables reading, observing, and changing the state stored in MongoDB of a whole model managed by juju.
Package state enables reading, observing, and changing the state stored in MongoDB of a whole model managed by juju.
mgo
migrations
Package migrations aims to create an intermediate state between state and the description package.
Package migrations aims to create an intermediate state between state and the description package.
stateenvirons
Package stateenvirons provides types and functions that interface the state and environs packages.
Package stateenvirons provides types and functions that interface the state and environs packages.
watcher
Package watcher provides an interface for observing changes to arbitrary MongoDB documents that are maintained via the mgo/txn transaction package.
Package watcher provides an interface for observing changes to arbitrary MongoDB documents that are maintained via the mgo/txn transaction package.
Package testcharms holds a corpus of charms for testing.
Package testcharms holds a corpus of charms for testing.

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL