juju

package module
v0.0.0-...-9ec3720 Latest Latest
Warning

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

Go to latest
Published: Apr 6, 2021 License: AGPL-3.0 Imports: 0 Imported by: 0

README

Juju logo

Juju is a model-driven Operator Lifecycle Manager (OLM). Juju greatly improves the experience of running Kubernetes operators, especially in projects that integrate many operators from different publishers.

Why Juju

A Kubernetes operator is a container that drives the config and operation of a workload. By encapsulating ops code as a reusable container, the operator pattern moves beyond traditional config management to allow much more agile operations for complex cloud workloads.

Shared, open source operators take infra as code to the next level with community-driven ops and integration code. Reuse of ops code improves quality and encourages wider community engagement and contribution. Operators also improve security through consistent automation. Juju operators are a community-driven devsecops approach to open source operations.

Juju implements the Kubernetes operator pattern, but is also a universal OLM that extends the operator pattern to traditional applications (without Kubernetes) on Linux and Windows. Such machine operators can work on bare metal, virtual machines or cloud instances, enabling multi cloud and hybrid cloud operations. Juju allows you to embrace the operator pattern on both container and legacy estate. An operator for machine-based environments can share 95% of its code with a Kubernetes operator for the same app.

Juju excels at application integration. Instead of simply focusing on lifecycle management, the Juju OLM provides a rich application graph model that tells operators how to integrate with one another. This dramatically simplifies the operations of large deployments.

A key focus for Juju is to simplify operator design, development and usage. Instead of making very complex operators for specific scenarios, Juju encourages devops to make composable operators, each of which drives a single Docker image, and which can be reused in different settings. Composable operators enable very rich scenarios to be constructed out of simpler operators that do one thing and do it well.

The OLM provides a central mechanism for operator instantiation, configuration, upgrades, integration and administration. The OLM provides a range of operator lifecycle services including leader election and persistent state. Instead of manually deploying and configuring operators, the OLM manages all the operators in a model at the direction of the administrator.

Open Operator Collection

The world's largest collection of operators all use Juju as their OLM. The Charmhub community emphasizes quality, collaboration and consistency. Publish your own operator and share integration code for other operators to connect to your application.

The Open Operator Manifesto outlines the values of the community and describe the ideal behaviour of operators, to shape contributions and discussions.

Multi cloud and hybrid operations across ARM and x86 infrastructure

The Juju OLM supports AWS, Azure, Google, Oracle, OpenStack, VMware and bare metal machines, as well as any conformant Kubernetes cluster. Integrate operators across clouds, and across machines and containers, just as easily. A single scenario can include applications on Kubernetes, as well as applications on a range of clouds and bare metal instances, all integrated automatically.

Juju operators support multiple CPU architectures. Connect applications on ARM with applications on x86 and take advantage of silicon-specific optimisations. It is good practice for operators to adapt to their environment and accelerate workloads accordingly.

Pure Python operators

The Python Operator Framework makes it easy to write an operator. The framework handles all the details of communication between integrated operators, so you can focus on your own application lifecycle management.

Code sharing between operator publishers is simplified making it much faster to collaborate on distributed systems involving components from many different publishers and upstreams. Your operator is a Python event handler. Lifecycle management, configuration and integration are all events delivered to your charm by the framework.

Architecture

The Juju client, server and agent are all written in Golang. The standard Juju packaging includes an embedded database for centralised logging and persistence, but there is no need to manage that database separately.

Operators can be written in any language but we do encourage new authors to use the Python Operator Framework for ease of contribution, support and community participation.

Production grade

The Juju server has built-in support for high availability when scaled out to three instances. It can monitor itself and grow additional instances in the event of failure, within predetermined limits. Juju supports backup, restore, and rolling upgrade operations appropriate for large-scale centralised enterprise grade management and operations systems.

Get started

Our community hangs out at the Charmhub discourse which serves as a combination mailing list and web forum. Keep up with the news and get a feel for operator engineering and usage there. Get the Juju CLI on Windows, macOS or Linux with the install instructions and try the tutorials. All you need is a small K8s cluster, or an Ubuntu machine or VM to run MicroK8s.

Read the documentation for a comprehensive reference of commands and usage.

Contributing

Follow our code and contribution guidelines to learn how to make code changes. File bugs in Launchpad or ask questions on our Freenode IRC channel.

Documentation

Overview

Package 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
acceptancetests
api
application
Package application provides access to the application api facade.
Package application provides access to the application api facade.
base/mocks
Package mocks is a generated GoMock package.
Package mocks is a generated GoMock package.
bundle
Package bundle provides access to the bundle api facade.
Package bundle provides access to the bundle api facade.
charms
Package charms provides a client for accessing the charms API.
Package charms provides a client for accessing the charms API.
common/charms
Package charms provides a client for accessing the charms API.
Package 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.
instancemutater/mocks
Package mocks is a generated GoMock package.
Package mocks is a generated GoMock package.
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.
provisioner/mocks
Package mocks is a generated GoMock package.
Package mocks is a generated GoMock package.
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.
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/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/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
The machiner package implements the API interface used by the machiner worker.
The machiner package implements the API interface used by the machiner worker.
facades/agent/machineactions
machineactions implements the the apiserver side of running actions on machines
machineactions implements the the apiserver side of running actions on machines
facades/agent/meterstatus
Package meterstatus provides the meter status API facade.
Package meterstatus provides the meter status API facade.
facades/agent/meterstatus/mocks
Package mocks is a generated GoMock package.
Package mocks is a generated GoMock package.
facades/agent/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.
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/provisioner/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/uniter/mocks
Package mocks is a generated GoMock package.
Package mocks is a generated GoMock package.
facades/agent/upgradesteps/mocks
Package mocks is a generated GoMock package.
Package mocks 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/application/mocks
Package mocks is a generated GoMock package.
Package mocks is a generated GoMock package.
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/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.
facades/client/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.
facades/client/machinemanager/mocks
Package mocks is a generated GoMock package.
Package mocks is a generated GoMock package.
facades/client/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.
facades/client/modelgeneration/mocks
Package mocks is a generated GoMock package.
Package mocks is a generated GoMock package.
facades/client/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.
facades/client/modelmanager/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/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/client/subnets/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/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.
facades/controller/migrationmaster
This package defines the API facade for use by the migration master worker when communicating with its own controller.
This package 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
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.
facades/controller/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.
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.
ecs
ecs/mocks
Package mocks is a generated GoMock package.
Package mocks 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/resources/mocks
Package mocks is a generated GoMock package.
Package mocks is a generated GoMock package.
kubernetes/provider/specs/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.
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.
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
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
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.
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/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/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/machine/mocks
Package mocks is a generated GoMock package.
Package mocks is a generated GoMock package.
juju/model/mocks
Package mocks is a generated GoMock package.
Package mocks is a generated GoMock package.
juju/romulus/budget
Package budget defines the command used to update budgets.
Package budget defines the command used to update budgets.
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/sla
The sla package contains the implementation of the juju sla command.
The sla package contains the implementation of the juju sla command.
juju/space/mocks
Package mocks is a generated GoMock package.
Package mocks is a generated GoMock package.
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/reboot/mocks
Package mocks is a generated GoMock package.
Package mocks is a generated GoMock package.
output/progress/mocks
Package mocks is a generated GoMock package.
Package mocks is a generated GoMock package.
plugins/juju-wait-for/api
Package api exists because we can't generate mocks in the main namespace.
Package api exists because we can't generate mocks in the main namespace.
plugins/juju-wait-for/api/mocks
Package mocks is a generated GoMock package.
Package mocks is a generated GoMock package.
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.
broker/mocks
Package mocks is a generated GoMock package.
Package mocks is a generated GoMock package.
kvm
Package kvm provides the facilities to deploy to kvm instances.
Package kvm provides the facilities to deploy to kvm instances.
lxd
lxd/mocks
Package mocks is a generated GoMock package.
Package mocks is a generated GoMock package.
lxd/testing
Package testing is a generated GoMock package.
Package testing is a generated GoMock package.
testing
Package testing is a generated GoMock package.
Package testing is a generated GoMock package.
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.
cache
Package cache is responsible for keeping an in memory representation of the controller's models.
Package cache is responsible for keeping an in memory representation of the controller's models.
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.
os
Package os provides access to operating system related configuration.
Package os provides access to operating system related configuration.
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
The presence package works on the premise that an agent it alive if it has a current connection to one of the API servers.
The presence package works on the premise that an agent it alive if it has a current connection to one of the API servers.
imagedownloads
Package imagedownloads implements image-downloads metadata from simplestreams.
Package imagedownloads implements image-downloads metadata from simplestreams.
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.
mocks
Package mocks is a generated GoMock package.
Package mocks is a generated GoMock package.
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.
testing
Package testing is a generated GoMock package.
Package testing is a generated GoMock package.
tools
Package tools supports locating, parsing, and filtering Ubuntu tools metadata in simplestreams format.
Package tools 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.
schemagen/gen
Package gen is a generated GoMock package.
Package gen is a generated GoMock package.
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.
mongometrics
Package mongometrics contains MongodB-related Prometheus metric collectors.
Package mongometrics contains MongodB-related Prometheus metric collectors.
ssh
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.
api
pki
tls
provider
all
common/mocks
Package mocks is a generated GoMock package.
Package mocks is a generated GoMock package.
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".
ec2
gce
lxd
lxd/lxdnames
Package lxdnames provides names for the lxd provider.
Package lxdnames provides names for the lxd provider.
oci
oci/testing
Package testing is a generated GoMock package.
Package testing is a generated GoMock package.
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.
The resource package provides the functionality of the "resources" feature in Juju.
The resource package provides the functionality of the "resources" feature in Juju.
resourceadapters/mocks
Package mocks is a generated GoMock package.
Package mocks is a generated GoMock package.
resourcetesting
This package provides helpers for testing with resources.
This package provides helpers for testing with resources.
rpc
jsoncodec
The jsoncodec package provides a JSON codec for the rpc package.
The jsoncodec package provides a JSON codec for the rpc package.
scripts
mocks
Package mocks is a generated GoMock package.
Package mocks is a generated GoMock package.
snap
Package snap is a minimal service.Service implementation, derived from the on service/upstart package.
Package snap is a minimal service.Service implementation, derived from the on service/upstart package.
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.
globalclock
Package globalclock provides clients for updating and reading the global virtual time, stored in the MongoDB database.
Package globalclock provides clients for updating and reading the global virtual time, stored in the MongoDB database.
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.
mocks
Package mocks is a generated GoMock package.
Package mocks is a generated GoMock 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
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.
MACHINE GENERATED BY github.com/juju/juju/generate/certgen.
MACHINE GENERATED BY github.com/juju/juju/generate/certgen.
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.
mocks
Package mocks is a generated GoMock package.
Package mocks is a generated GoMock package.
utils
Package version contains versioning information for juju.
Package version contains versioning information for juju.
watcher
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).
caasapplicationprovisioner/mocks
Package mocks is a generated GoMock package.
Package mocks is a generated GoMock package.
caasfirewallerembedded/mocks
Package mocks is a generated GoMock package.
Package mocks is a generated GoMock package.
caasoperator/mocks
Package mocks is a generated GoMock package.
Package mocks is a generated GoMock package.
containerbroker/mocks
Package mocks is a generated GoMock package.
Package mocks is a generated GoMock package.
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.
instancemutater/mocks
Package mocks is a generated GoMock package.
Package mocks is a generated GoMock package.
instancepoller/mocks
Package mocks is a generated GoMock package.
Package mocks is a generated GoMock package.
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.
logsender/logsendertest
Package logsendertest provides testing utilities related to the logsender package.
Package logsendertest provides testing utilities related to the logsender package.
machineactions/mocks
Package mocks is a generated GoMock package.
Package mocks is a generated GoMock package.
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.
meterstatus/mocks
Package mocks is a generated GoMock package.
Package mocks is a generated GoMock package.
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.
mocks
Package mocks is a generated GoMock package.
Package mocks is a generated GoMock package.
multiwatcher
Package multiwatcher provides watchers that watch the entire model.
Package multiwatcher provides watchers that watch the entire model.
provisioner/mocks
Package mocks is a generated GoMock package.
Package mocks is a generated GoMock package.
pruner/mocks
Package mocks is a generated GoMock package.
Package mocks is a generated GoMock package.
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
Package hook provides types that define the hooks known to the Uniter
Package hook provides types that define the hooks known to the Uniter
uniter/operation/mocks
Package mocks is a generated GoMock package.
Package mocks is a generated GoMock package.
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/relation/mocks
Package mocks is a generated GoMock package.
Package mocks is a generated GoMock package.
uniter/runner/context
Package context contains the ContextFactory and Context definitions.
Package context contains the ContextFactory and Context definitions.
uniter/runner/context/mocks
Package mocks is a generated GoMock package.
Package mocks is a generated GoMock package.
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/runner/jujuc/mocks
Package mocks is a generated GoMock package.
Package mocks is a generated GoMock package.
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.
upgradedatabase/mocks
Package mocks is a generated GoMock package.
Package mocks is a generated GoMock package.
upgradeseries/mocks
Package mocks is a generated GoMock package.
Package mocks is a generated GoMock package.

Jump to

Keyboard shortcuts

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