This repo is the index of layers available for building Juju Charms.
Each layer is represented by a small JSON file in either the layers
or interfaces
directory, depending on the type of layer, and
each file should conform to the schema encoded in the schema.json
file. Specifically, it must contain at least the following fields:
id
: The name by which the layer will be referenced inlayer.yaml
, e.g.,basic
name
: The human-friendly name of the layerrepo
: The URL of the git or bzr repo for the layersummary
: A short description of the purpose of the layer
The name of the file must match the ID field, with a .json
suffix.
To add or modify a layer in the index, just create a PR against this repo in
which you have added the appropriate JSON file and run the
update_readme.py
script to update the index below.
If you would like to build a charm using a fork of this repo (e.g., to test a
new layer before submitting a PR, if you have private layers or layers under
test and don't want to use local layers, etc.), you just need to pass
in a URL where the repo contents are available via HTTP/S to charm-build
.
For example, to build using a fork in your personal namespace in GitHub:
charm build --interface-service https://raw.githubusercontent.com/myuser/layer-index/mybranch/
ID | Name | Summary |
---|---|---|
ansible-base | ansible-base | Base / charm layer for charming w/ Ansible |
apache-bigtop-base | Apache Bigtop Base Layer | Base layer for charms needing Apache Bigtop |
apache-bigtop-gateway | apache-bigtop-gateway | Base layer for Gateway node from Apache Big Top |
apache-flume-base | Apache Flume Base | Base layer for Apache Flume charms |
apache-hadoop-datanode | Apache Hadoop DataNode | Base / charm layer for the DataNode component of Hadoop |
apache-hadoop-namenode | Apache Hadoop NameNode | Charm layer for the NameNode component of Hadoop |
apache-hadoop-nodemanager | Apache Hadoop NodeManager | Base / charm layer for the NodeManager component of Hadoop |
apache-hadoop-plugin | apache-hadoop-plugin | Simplified connection point for Apache Hadoop platform |
apache-hadoop-resourcemanager | Apache Hadoop ResourceManager | Charm layer for the ResourceManager component of Hadoop |
apache-hadoop-slave | apache-hadoop-slave | Combined slave node (DataNode + NodeManager) for Apache Hadoop |
apache-php | Apache PHP base layer | Configurable base for Apache PHP charms |
apache-wsgi | Apache WSGI base layer | Configurable base for Apache WSGI charms |
apt | Apt layer | Easily deal with apt sources and deb packages |
barbican-client | Barbican Client | Reactive layer to help pull secrets from barbican |
basic | Basic Layer | Base layer for charms with the Reactive framework |
beats-base | Beats Base | Base layer for Elastic Beats |
bigtop-base | Apache Bigtop Base Layer | Base layer for charms needing Apache Bigtop |
buildpacks | Buildpacks | Experimental layer for using buildpacks to generate Charmed applications |
caas-base | Base Layer for CAAS charms | Base layer for CAAS charms with the Reactive framework |
cdk-service-kicker | CDK Service Kicker | Installs a background service, cdk-service-kicker, for kicking cdk services. |
ceph-base | EXPERIMENTAL Ceph Base Layer | EXPERIMENTAL Ceph base layer |
ceph-basic | EXPERIMENTAL ceph-basic | EXPERIMENTAL ceph-basic layer |
ceph-mon | EXPERIMENTAL Ceph Mon layer | EXPERIMENTAL Ceph Mon layer |
charmscaler-base | Charmscaler Base | Charmscaler base layer |
conda-api | Conda API | Conda API layer |
consul-base | Consul Base | Reactive base layer for consul |
coordinator | Coordinator Layer | Coordinate operations between units in a service, such as rolling restarts. |
debug | debug | Provides a troubleshooting debug action |
django | Django | Django / GUNICORN |
docker-resource | Docker Resource Layer | Layer for managing charm resources of type 'docker' |
docker | Docker | Layer to deliver and install Docker on Ubuntu, Debian, Centos hosts. |
elastic-base | Elastic-Base | Base layer for Elastic.co charms |
elasticsearch-client | Elasticsearch Client | Elasticsearch client layer |
elixir | Elixir | Runtime layer for Elixir applications |
flannel | Flannel | Flannel Overlay Network layer for docker |
flask | Flask | Layer to create Flask webservers running on nginx |
git-deploy | Git Deploy | Layer to aid with deploying code from github |
go-binary | Go Binary Base Layer | Takes a statically compiled go binary and starts it as a service |
hadoop-base | Hadoop Base | Base layer for a charm needing the Apache Hadoop libraries |
hadoop-client | hadoop-client | Base and charm layer for Hadoop clients |
hadoop-datanode | hadoop-datanode | Base layer for DataNode from Apache BigTop |
hadoop-ganglia | hadoop-ganglia | Base layer for adding Ganglia support to Hadoop core charms |
hadoop-nodemanager | hadoop-nodemanager | Base layer for NodeManager from Apache BigTop |
haproxy-core | haproxy-core | A reactive layer that delivers a minimal haproxy layer to use in other application layers. |
hhvm | HHVM | Provides HHVM and composer for php applications |
ibm-base | IBM Base Layer | Base layer for IBM charms |
ibm-im | IBM IM | This layer provides IBM Installation Manager, which can be used to install many IBM products. |
ibm-was-nd | IBM WAS ND | Charm layer for IBM WAS ND DM and WAS ND Node charms |
jenkins-workspace | Jenkins Workspace | Configure Jenkins with workspace snapshots |
jenkins | jenkins | Juju charm to deploy and scale Jenkins |
juju-client | juju-client | Layer for Charms which depend on Juju CLI being installed in active Model |
kubernetes-common | Kubernetes common lib | Provides a common library for Kubernetes charms. |
layer-debug | debug | Provides a troubleshooting debug action |
leadership | Leadership layer | Help reactive framework charms deal with Juju leadership |
lets-encrypt | lets-encrypt | Automatic Let's Encrypt registration for Juju charms, just set the fqdn |
lxd-proxy | LXD Proxy | iptables proxy that adds and removes PREROUTING rules to ease host -> container proxying with juju |
memcache-client | Memcache Client | Client layer for Memcache |
metrics | Metrics Layer | Reactive charm layer supporting Juju metrics collection |
munin | munin | munin server |
nagios | Nagios Layer | Provide boilerplate required to relate services to the cs:nrpe subordinate |
nginx-passenger | Nginx Passenger | Reactive layer for nginx-passenger |
nginx | NGINX | NGINX layer for deploying web applications |
nodejs | NodeJS | Runtime layer for NodeJS applications |
ntpmon | ntpmon | NTP monitoring for telegraf |
nvidia-cuda | Nvidia CUDA | Installs CUDA and Nvidia drivers when supported GPU hardware is detected |
openjdk | OpenJDK | OpenJDK using the java layer |
openstack-api | OpenStack API layer | OpenStack API layer |
openstack-principle | OpenStack principle layer | OpenStack principle layer |
openstack | OpenStack base layer | OpenStack base layer |
options | options | Layer for reading options defined in layer.yaml |
promreg-client | promreg-client | A layer to aid in registering a target with Prometheus Registration |
puppet-agent | Puppet Agent | Puppet-agent layer - supports puppet 3 & 4. |
puppet | Puppet Layer (deprecated) | Puppet layer (deprecated; use puppet-agent) |
ruby | Ruby | Build layer for Ruby applications |
slurm | slurm | Base layer for Slurm |
snap-action | snap-action | Perform snap commands via an action |
snap | Snap layer | Snap layer for installing and updating Snap packages |
sshproxy | sshproxy | A layer intended to ease the development of charms that need to execute commands over SSH. |
status | Status management layer | Manage workload status in reactive charms |
storage | Storage | A charm layer to handle Juju attached storage devices. |
supervisor | Supervisor | Layer for Supervisor |
swarm | Docker Swarm | Stand alone layer, to extend docker into a Swarm cluster participant |
tls-client | tls-client | A layer to handle interface:tls-certificates requires side. |
tls | tls | The tls charm layer creates certificates and keys for each peer unit of a charm. |
uwsgi | uWSGI | uWSGI layer |
vnfproxy | vnfproxy | A layer to ease development of "proxy" charms that operate against VNF images |
ID | Name | Summary |
---|---|---|
apache-website | apache-website | Interface layer for the apache-website interface protocol |
arangodb | arangodb | Interface layer for ArangoDB |
audit | audit | Interface for use with the auditd charm |
aws-elb | AWS-ELB | AWS-ELB provides and requires interfaces. |
aws-integration | aws-integration | Interface layer for connecting to the AWS integration charm |
azure-integration | azure-integration | Interface layer for connecting to the Azure integration charm |
barbican-hsm | barbican-hsm | Interface supporting the integration between Barbican and HSM devices |
basic-auth-check | basic-auth-check | Interface for the basic-auth-service to validate HTTP Basic-Auth credentials |
benchmark | benchmark | Interface layer for the benchmark protocol |
bgp | bgp | Interface layer for exchanging BGP neighbour information between charms |
bind-rndc | BIND RNDC interface | BIND RNDC interface |
cassandra | cassandra | Cassandra database client interface |
ceph-admin | ceph-admin | The admin interface for ceph will provide the user with the ceph admin key |
ceph-base | Ceph Base Layer | Ceph base layer |
ceph-client | ceph-client | Ceph Client interface |
ceph-mds | ceph-mds | CephFS interface to the MDS relation on ceph-mon |
ceph-osd | ceph-osd | ceph osd relation |
ceph-radosgw | ceph-radosgw | Ceph RadosGW interface |
ceph | ceph | ceph mon peer interface |
charms-ci | charms-ci | Juju charms CI interface |
conda | Conda | Conda provides and requires interfaces |
conn-check | conn-check | conn-check interface |
consul-agent | consul-agent | Hashicorp Consul |
consul | consul | Hashicorp Consul |
cwr-ci | cwr-ci | Interface for relating to Cloud Weather Report (part of the Juju CI system) |
db-info | DB Info | Ease the process of application <-> application database creds transference. |
db2 | db2 | This interface layer handles the communication between IBM DB2 and Consumer charms. |
dbname | DB Name | Interface to coordinate database name between applications. |
designate | designate | Designate DNS as a Service interface |
dfs-slave | dfs-slave | Interface layer for the DataNode <-> NameNode protocol |
dfs | dfs | Interface layer for the hdfs interface protocol |
dm-node | dm-node | This interface handles the comunication between IBM WAS ND DM and IBM WAS ND Node charms |
docker-image-host | docker-image-host | Interface to send image to docker host |
dockerhost | dockerhost | Docker connection information for a unit |
druid-config | Druid Configuration | Configuration layer for Spicule's Druid charms. |
elastic-beats | elastic-beats | Interface for elastic beats |
elasticsearch | elasticsearch | Interface to connect with elasticsearch. |
etcd-proxy | etcd-proxy | Do you need etcd as a read/readwrite proxy to a cluster? use this interface. |
etcd | etcd | Interface for relating to etcd |
flume-agent | flume-agent | Interface layer for communication between Apache Flume charms |
gcp-integration | gcp-integration | Interface layer for connecting to the GCP integration charm |
giraph | giraph | This interface handles the communication between Apache Giraph and its clients |
gluster-fuse | gluster-fuse | Distributed posix storage provided by GlusterFS |
gluster-nfs | gluster-nfs | Scale out NFS provided by GlusterFS |
gluster-peer | gluster-peer | Peer interface for glusterfs nodes |
gnocchi | gnocchi | Gnocchi Metrics Service interface |
gpfs | gpfs | Interface layer between IBM Spectrum Scale Manager and IBM Spectrum Scale client as well as peer communication among manager/client units |
grafana-source | grafana-source | Grafana source |
hacluster | hacluster | hacluster interface for relations with hacluster subordinate charm |
hadoop-plugin | hadoop-plugin | Interface for relating to Apache Hadoop |
hadoop-rest | hadoop-rest | Interface layer for connecting to hadoop-plugin without installation |
hbase-quorum | hbase quorum | This interface layer handles the communication among Apache HBase peers |
hbase | hbase | This interface layer handles the communication between Apache HBase and its clients |
hive | hive | Interface for relating to Apache Hive |
http | http | HTTP Relation Stub |
https | https | Basic HTTPS interface |
ibm-db2 | ibm-db2 | This interface layer handles the communication between IBM DB2 and Consumer charms. |
ibm-mq | ibm-mq | This interface handles the communication between IBM MQ and other consumer charms. |
ibm-wxs | ibm-wxs | This interface layer handles the communication between IBM WXS Catalog charm and other consumer charms, such as IBM WXS Container and IBM WXS Client |
ignite-hadoop | ignite-hadoop | Minimal interface layer for connecting Apache Ignite-Hadoop to Apache Hadoop slave |
influxdb-api | influxdb-api | InfluxDB Query Interface |
java | java | Interface for relating to subordinate charms providing a Java runtime or JDK |
jdbc | jdbc | JDBC interface for generic connectivity across databases |
jenkins-extension | jenkins-extension | Admin interface to the jenkins master |
jenkins-slave | jenkins-slave | Communication between a Jenkins master and a Jenkins slave |
jenkins-zuul | jenkins-zuul | communication between a Jenkins master and Zuul Jenkins via the zuul interface |
juju-info | juju-info | Implied interface for subordinates with special behavior. This is not a substitute for a proper relationship interface. |
kafka | kafka | Interface layer for communication between Kafka and its clients |
kapacitor | kapacitor | Interface layer for Kapacitor |
keystone-admin | keystone-admin | keystone-admin:identity-admin interface to use shared admin API credentials |
keystone-credentials | keystone-credentials | keystone-credentials: Interface for integrating with Keystone identity credentials |
keystone-domain-backend | keystone-domain-backend | Interface for integration of subordinate charms providing domain specific identity backends |
keystone-fid-service-provider | keystone-fid-service-provider | An interface to connect a federated identity provider to the Keystone charm |
keystone | keystone | Keystone interface |
kube-control | kube-control | master-worker control interface for Kubernetes |
kube-dns | kube-dns | Kubernetes DNS Details |
kubernetes-cni | kubernetes-cni | Interface for relating various CNI implementations |
limeds | limeds | Interface to connect to LimeDS |
livy | Apache Livy relation | Relation to connect a charm to Apache Livy. |
local-monitors | local-monitors | relation for registering nagios checks |
logstash-client | logstash-client | Interface for connecting with logstash based systems. |
mahout | mahout | This interface layer handles the communication between Apache Mahout and its clients |
manila-plugin | manila-plugin | manila-plugin: configuration plugin to allow manila plugins to configure the manila service |
mapred-slave | mapred-slave | Interface layer for the NodeManager <-> ResourceManager protocol |
mapred | mapred | Interface for the YARN client protocol |
memcache | Memcache | Interface for relating memcache. |
midonet-api | MidoNet API | MidoNet API interface between provider and consuming charms |
mongodb-cluster | mongodb-cluster | relation to connect to a mongo database cluster |
mongodb | mongodb | relation to connect to a mongo database |
monitor | monitor | This interface layer for monitor protocol |
mount | mount | Interface layer for connecting mounts to a charm such as NFS |
munin-node | munin-node | munin-node relation |
munin | munin | munin relation |
mysql-root | mysql-root | Administrative MySQL interface with admin access granted to connected applications |
mysql-shared | mysql-shared | MySQL Shared Database interface |
mysql | mysql | Standard MySQL interface with generated, per-service databases |
namenode-cluster | namenode-cluster | Interface layer for running Apache Hadoop NameNode as HA |
neutron-plugin-api-subordinate | neutron-plugin-api-subordinate | This interface is used for a charm to send configuration information to the neutron-api principle charm and request a restart of a service managed by that charm. |
neutron-plugin-zlmao | neutron-plugin | Interface for intergrating Neutron SDN with the nova-compute charm |
neutron-plugin | neutron-plugin | Interface for intergrating Neutron SDN with the nova-compute charm |
nfsstorage | nfsstorage | This interface layer handles the communication between LSF/Spectrum Symphony Storage which is acting as a NFS Server and NFS Clients like Platform LSF Master, Spectrum Symphony Master. |
nginx-stats | NGINX Stats | NGINX stats/status protocol |
nrpe-external-master | nrpe-external-master | relation for registering nagios checks |
odl-controller-api | odl-controller-api | Interface for intergrating with an OpenDayLight Controller RESTful API |
oozie | oozie | Connection for oozie to consumers |
openstack-ha | openstack-ha | Interface for managing information with peers in the same OpenStack service |
openstack-integration | openstack-integration | Interface layer for connecting to the OpenStack integrator charm |
opentsdb | opentsdb | Interface layer for OpenTSDB. |
ovsdb-manager | ovsdb-manager | Interface for relating to the OVSDB manager aspect of OpenDayLight SDN |
panko | panko | Panko Event Service interface |
peer-discovery | peer-discovery | [proposal] simple interface to discover all peers of a charm through peer relation |
pgsql | pgsql | Postgresql database client interface |
platformmaster | platformmaster | This interface layer handles the communication between Platform Master (like IBM Platform LSF, IBM Spectrum Symphony) and Platform Server/Nodes. |
prometheus-rules | prometheus-rules | Relation Stub to export Prometheus alerting rules |
prometheus | prometheus | Prometheus target interface |
public-address | public-address | Simple relation that provides the providers public-address and a port |
rabbitmq | rabbitmq | RabbitMQ AMQP interface |
redis | redis | Interface for relating to redis |
rsyslog | Rsyslog layer | This rsyslog layer will enable rsyslog and enable building additional logging configuration. |
sdn-plugin | sdn-plugin | An abstraction of common configurations for SDN providers, to be consumed by charms |
service-control | service-control | This interface is used for a charm to request a restart of a service managed by another charm. |
slurm-cluster | slurm-cluster | Interface layer for Slurm |
solr | solr | Solr Charm Interface |
spark-quorum | spark quorum | This interface layer handles the communication among Apache Spark peers |
spark | spark | Interface layer for the spark interface protocol |
spectrum-scale-client | spectrum-scale-client | Basic interface required for communication between Spectrum Scale client and IBM Cinder SpectrumScale (driver for gpfs) |
syslog | syslog | Interface layer for the syslog protocol |
tls-certificates | tls-certificates | An interface for exchanging tls certificates using provides and requres relations. |
tls | tls | The TLS interface provides a peering relationship to exchange certificates and CSR's. |
vault-kv | vault-kv | Interface layer for the vault-kv protocol |
vault | vault | Hashicorp Vault omterface |
vsphere-integration | vsphere-integration | Interface layer for connecting to the VMware vSphere integration charm |
was-ihs | was-ihs | This Interface handles the communication between IBM WAS Base/IBM WAS ND and IBM Http Server |
was-nd | was-nd | This interface handles the communication between IBM WAS ND DM and other consumer charms. |
websso-fid-service-provider | websso-fid-service-provider | An interface to connect a federated identity provider to OpenStack dashboard charm |
weebl | weebl | Interface for relating to the OIL dashboard (Weebl) |
wsgi | wsgi | Basic WSGI interface |
zeppelin | zeppelin | Interface layer for interacting with charms for Apache Zeppelin |
zookeeper-quorum | zookeeper quorum | This interface layer handles the communication among Apache Zookeeper peers |
zookeeper | zookeeper | This interface layer handles the communication between Apache Zookeeper and its clients |