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 |
apache2 | Apache2 | Reactive layer for Apache webserver |
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 |
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 |
composer | PHP Composer | Reactive layer for php composer |
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 | Docker | Layer to deliver and install Docker on Ubuntu, Debian, Centos hosts. |
elastic-base | Elastic-Base | Base layer for Elastic.co charms |
elasticsearch-base | Elasticsearch Base | Base layer for elasticsearch |
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 |
gitlab | Gitlab Layer | Reactive layer for gitlab |
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 |
java | Oracle Java | Juju layer for Oracle Java |
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 |
layer-debug | debug | Provides a troubleshooting debug action |
layer-gitlab | Gitlab Layer | Reactive layer for gitlab |
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 |
phalcon | Phalcon | Reactive layer for installing and configuring Phalcon php web framework |
postfix | Postfix | Reactive layer for postfix MTA |
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-base | puppet-base | Base layer for puppet4 |
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. |
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 |
zabbix-base | zabbix-base | Reactive base layer for zabbix charms |
ID | Name | Summary |
---|---|---|
apache-website | apache-website | Interface layer for the apache-website interface protocol |
audit | audit | Interface for use with the auditd 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 |
beanstalkd | beanstalkd | Reactive provides and requires interfaces for beanstalkd |
benchmark | benchmark | Interface layer for the benchmark protocol |
bind-rndc | BIND RNDC interface | BIND RNDC 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 |
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 | dbname | Interface to coordinate database name between applications. |
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 |
elastic-beats | elastic-beats | Interface for elastic beats |
elasticsearch-stats | Elasticsearch Stats | Interface for integrating with metrics gathering layers |
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 |
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 |
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 |
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 | 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 |
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 |
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 |
openstack-ha | openstack-ha | Interface for managing information with peers in the same OpenStack service |
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. |
postgresql-stats | Postgresql Stats | Interface for integrating with metrics gathering layers |
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-stats | Redis Stats | Interface to be used for integration with metrics gathering layers |
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 | vault | Hashicorp Vault omterface |
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. |
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 |