Documentation ¶
Overview ¶
Juju is devops distilled.
Project homepage: https://github.com/juju/juju
For more information please refer to the README file in this directory.
Directories ¶
Path | Synopsis |
---|---|
application
Package application provides access to the application api facade.
|
Package application provides access to the application api facade. |
charms
charms provides a client for accessing the charms API.
|
charms provides a client for accessing the charms API. |
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. |
leadership
Package leadership implements the client to the analog leadership service.
|
Package leadership implements the client to the analog leadership service. |
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. |
machineactions
machineactions implements the the api side of running actions on machines
|
machineactions implements the the api side of running actions on machines |
meterstatus
Package meterstatus contains an implementation of the api facade to watch the meter status of a unit for changes and return the current meter status.
|
Package meterstatus contains an implementation of the api facade to watch the meter status of a unit for changes and return the current meter status. |
metricsadder
Package metricsadder contains an implementation of the api facade to add metrics to the state.
|
Package metricsadder contains an implementation of the api facade to add metrics to the state. |
metricsdebug
The metricsdebug package contains the implementation of a client to access metrics debug functions within state.
|
The metricsdebug package contains the implementation of a client to access metrics debug functions within state. |
metricsmanager
The metricsmanager package contains implementation for an api facade to access metrics functions within state
|
The metricsmanager package contains implementation for an api facade to access metrics functions within state |
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. |
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. |
cloud
Package cloud defines an API end point for functions dealing with the controller's cloud definition, and cloud credentials.
|
Package cloud defines an API end point for functions dealing with the controller's cloud definition, and cloud credentials. |
common/storagecommon
Package storagecommon provides common storage-related services for API server facades.
|
Package storagecommon provides common storage-related services for API server facades. |
controller
The controller package defines an API end point for functions dealing with controllers as a whole.
|
The controller package defines an API end point for functions dealing with controllers as a whole. |
hostkeyreporter
Package hostkeyreporter implements the API facade used by the hostkeyreporter worker.
|
Package hostkeyreporter implements the API facade used by the hostkeyreporter worker. |
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. |
machine
The machiner package implements the API interface used by the machiner worker.
|
The machiner package implements the API interface used by the machiner worker. |
machineactions
machineactions implements the the apiserver side of running actions on machines
|
machineactions implements the the apiserver side of running actions on machines |
meterstatus
Package meterstatus provides the meter status API facade.
|
Package meterstatus provides the meter status API facade. |
metricsdebug
Package metricsdebug contains the implementation of an api endpoint for metrics debug functionality.
|
Package metricsdebug contains the implementation of an api endpoint for metrics debug functionality. |
metricsender
Package metricsender contains functions for sending metrics from a controller to a remote metric collector.
|
Package metricsender contains functions for sending metrics from a controller to a remote metric collector. |
metricsmanager
Package metricsmanager contains the implementation of an api endpoint for calling metrics functions in state.
|
Package metricsmanager contains the implementation of an api endpoint for calling metrics functions in state. |
migrationmaster
This package defines the API facade for use by the migration master worker when communicating to it's own controller.
|
This package defines the API facade for use by the migration master worker when communicating to it's own controller. |
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. |
migrationtarget
This package defines the API facade for use by the migration master worker when interacting with the target controller during a migration.
|
This package defines the API facade for use by the migration master worker when interacting with the target controller during a migration. |
modelmanager
Package modelmanager defines an API end point for functions dealing with models.
|
Package modelmanager defines an API end point for functions dealing with models. |
resumer
The resumer package implements the API interface used by the resumer worker.
|
The resumer package implements the API interface used by the resumer worker. |
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. |
storage
Package storage provides an API server facade for managing storage entities.
|
Package storage provides an API server facade for managing storage entities. |
Package audit records auditable events
|
Package audit records auditable events |
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. |
cloudinit
The cloudinit package implements a way of creating a cloud-init configuration file.
|
The cloudinit package implements a way of creating a cloud-init configuration file. |
providerinit
This package offers userdata in a gzipped format to be used by different cloud providers
|
This package offers userdata in a gzipped format to be used by different cloud providers |
providerinit/renderers
The renderers package implements a way to encode the userdata depending on the OS and the provider.
|
The renderers package implements a way to encode the userdata depending on the OS and the provider. |
juju/controller
The controller package groups various commands that are based on talking directly to the controller, and not environments in the controller.
|
The controller package 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/romulus/commands
Package commands provides functionality for registering all the romulus commands.
|
Package commands provides functionality for registering all the romulus commands. |
juju/romulus/listplans
The listplans package contains implementation of the command that can be used to list plans that are available for a charm.
|
The listplans package contains implementation of the command that can be used to list plans that are available for a charm. |
juju/romulus/setplan
The setplan package contains the implementation of the juju set-plan command.
|
The setplan package contains the implementation of the juju set-plan command. |
juju/romulus/updateallocation
Package updateallocation defines the command used to update allocations.
|
Package updateallocation defines the command used to update allocations. |
juju/storage
The storage command provides a storage management interface, for manipulating and inspecting storage entities (volumes, filesystems, charm storage).
|
The storage command provides a storage management interface, for manipulating and inspecting storage entities (volumes, filesystems, charm storage). |
jujud/agent
agent contains jujud's machine agent.
|
agent contains jujud's machine agent. |
component
|
|
all
The all package facilitates the registration of Juju components into the relevant machinery.
|
The all package facilitates the registration of Juju components into the relevant machinery. |
modelmanager
Package modelmanager provides the business logic for model management operations in the controller.
|
Package modelmanager provides the business logic for model management operations in the controller. |
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. |
description
The description package defines the structure and representation and serialisation of models to facilitate the import and export of models from different controllers.
|
The description package defines the structure and representation and serialisation of models to facilitate the import and export of models from different controllers. |
leadership
Package leadership holds code pertaining to application leadership in juju.
|
Package leadership holds code pertaining to application leadership in juju. |
imagemetadata
The imagemetadata package supports locating, parsing, and filtering Ubuntu image metadata in simplestreams format.
|
The imagemetadata package supports locating, parsing, and filtering Ubuntu image metadata in simplestreams format. |
simplestreams
The simplestreams package supports locating, parsing, and filtering metadata in simplestreams format.
|
The simplestreams package supports locating, parsing, and filtering metadata in simplestreams format. |
tools
The tools package supports locating, parsing, and filtering Ubuntu tools metadata in simplestreams format.
|
The tools package supports locating, parsing, and filtering Ubuntu tools metadata in simplestreams format. |
Package feature package defines the names of the current feature flags.
|
Package feature package defines the names of the current feature flags. |
This package contains functional tests only.
|
This package contains functional tests only. |
The logfwd package contains the tools needed to do log record forwarding in juju.
|
The logfwd package contains the tools needed to do log record forwarding in juju. |
syslog
The syslog package holds the tools needed to perform log forwarding from Juju to a remote syslog (RFC 5424) host.
|
The syslog package holds the tools needed to perform log forwarding from Juju to a remote syslog (RFC 5424) host. |
The payload package (and subpackages) contain the implementation of the charm payload feature component.
|
The payload package (and subpackages) contain the implementation of the charm payload feature component. |
dummy
The dummy provider implements an environment provider for testing purposes, registered with environs under the name "dummy".
|
The dummy provider implements an environment provider for testing purposes, registered with environs under the name "dummy". |
lxd/lxdnames
Package lxdnames provides names for the lxd provider.
|
Package lxdnames provides names for the lxd provider. |
The resource package provides the functionality of the "resources" feature in Juju.
|
The resource package provides the functionality of the "resources" feature in Juju. |
api/private/server
This package holds the hook context API server implementation.
|
This package holds the hook context API server implementation. |
resourcetesting
This package provides helpers for testing with resources.
|
This package provides helpers for testing with resources. |
jsoncodec
The jsoncodec package provides a JSON codec for the rpc package.
|
The jsoncodec package provides a JSON codec for the rpc package. |
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. |
backups
Package backups contains all the stand-alone backup-related functionality for juju state.
|
Package backups contains all the stand-alone backup-related functionality for juju state. |
bakerystorage
Package bakerystorage provides an implementation of the bakery Storage interface that uses MongoDB to store items.
|
Package bakerystorage provides an implementation of the bakery Storage interface that uses MongoDB to store items. |
lease
The lease package exists to implement distributed lease management on top of mgo/txn, and to expose assert operations that allow us to gate other mgo/txn transactions on lease state.
|
The lease package exists to implement distributed lease management on top of mgo/txn, and to expose assert operations that allow us to gate other mgo/txn transactions on lease state. |
presence
The presence package implements an interface for observing liveness of arbitrary keys (agents, processes, etc) on top of MongoDB.
|
The presence package implements an interface for observing liveness of arbitrary keys (agents, processes, etc) on top of MongoDB. |
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
The watcher package provides an interface for observing changes to arbitrary MongoDB documents that are maintained via the mgo/txn transaction package.
|
The watcher package provides an interface for observing changes to arbitrary MongoDB documents that are maintained via the mgo/txn transaction package. |
Package storage defines structures and functions relating to charm storage.
|
Package storage defines structures and functions relating to charm storage. |
Package testcharms holds a corpus of charms for testing.
|
Package testcharms holds a corpus of charms for testing. |
The upgrades package provides infrastructure to upgrade previous Juju deployments to the current Juju version.
|
The upgrades package provides infrastructure to upgrade previous Juju deployments to the current Juju version. |
utils
|
|
Package version contains versioning information for juju.
|
Package version contains versioning information for juju. |
legacy
Package legacy contains state-watcher-tuned worker harnesses; the canonical implementations are in the watcher package, but aren't type-compatible with original-style watchers -- such as those returned from state methods -- which we still have a couple of uses for (and the certupdater use might even be legitimate).
|
Package legacy contains state-watcher-tuned worker harnesses; the canonical implementations are in the watcher package, but aren't type-compatible with original-style watchers -- such as those returned from state methods -- which we still have a couple of uses for (and the certupdater use might even be legitimate). |
catacomb
Catacomb leverages tomb.Tomb to bind the lifetimes of, and track the errors of, a group of related workers.
|
Catacomb leverages tomb.Tomb to bind the lifetimes of, and track the errors of, a group of related workers. |
dependency
The dependency package exists to address a general problem with shared resources and the management of their lifetimes.
|
The dependency package exists to address a general problem with shared resources and the management of their lifetimes. |
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. |
fortress
Package fortress implements a convenient metaphor for an RWLock.
|
Package fortress implements a convenient metaphor for an RWLock. |
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. |
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. |
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. |
meterstatus
Package meterstatus provides a worker that executes the meter-status-changed hook periodically.
|
Package meterstatus provides a worker that executes the meter-status-changed hook periodically. |
metrics/collect
Package collect provides a worker that executes the collect-metrics hook periodically, as long as the workload has been started (between start and stop hooks).
|
Package collect provides a worker that executes the collect-metrics hook periodically, as long as the workload has been started (between start and stop hooks). |
metrics/sender
Package sender contains the implementation of the metric sender manifold.
|
Package sender contains the implementation of the metric sender manifold. |
metrics/spool
Package spool contains the implementation of a worker that extracts the spool directory path from the agent config and enables other workers to write and read metrics to and from a the spool directory using a writer and a reader.
|
Package spool contains the implementation of a worker that extracts the spool directory path from the agent config and enables other workers to write and read metrics to and from a the spool directory using a writer and a reader. |
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. |
uniter/hook
hook provides types that define the hooks known to the Uniter
|
hook provides types that define the hooks known to the Uniter |
uniter/relation
relation implements persistent local storage of a unit's relation state, and translation of relation changes into hooks that need to be run.
|
relation implements persistent local storage of a unit's relation state, and translation of relation changes into hooks that need to be run. |
uniter/runner/context
Package context contains the ContextFactory and Context definitions.
|
Package context contains the ContextFactory and Context definitions. |
uniter/runner/jujuc
The worker/uniter/runner/jujuc package 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.
|
The worker/uniter/runner/jujuc package 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. |
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. |
Click to show internal directories.
Click to hide internal directories.