Charmed-Kubernetes/containerd/hooks/relations/docker-registry
xiafan 672d7fa08c update kubernetest 1.24 2023-06-30 17:58:50 +08:00
..
.github/workflows update kubernetest 1.24 2023-06-30 17:58:50 +08:00
.gitignore update kubernetest 1.24 2023-06-30 17:58:50 +08:00
LICENSE update kubernetest 1.24 2023-06-30 17:58:50 +08:00
README.md update kubernetest 1.24 2023-06-30 17:58:50 +08:00
__init__.py update kubernetest 1.24 2023-06-30 17:58:50 +08:00
interface.yaml update kubernetest 1.24 2023-06-30 17:58:50 +08:00
provides.py update kubernetest 1.24 2023-06-30 17:58:50 +08:00
requires.py update kubernetest 1.24 2023-06-30 17:58:50 +08:00

README.md

Overview

This layer encapsulates the docker-registry interface communication protocol and provides an API for charms on either side of relations using this interface.

Usage

In your charm's layer.yaml, ensure that interface:docker-registry is included in the includes section:

includes: ['layer:basic', 'interface:docker-registry']

And in your charm's metadata.yaml, ensure that a relation endpoint is defined using the docker-registry interface protocol:

requires:
  docker-registry:
    interface: docker-registry

React to changes from docker-registry as follows:

@when('endpoint.docker-registry.ready')
    def registry_ready():
        registry = endpoint_from_flag('endpoint.docker-registry.ready')
        configure_registry(registry.registry_netloc)
        if registry.has_auth_basic():
            configure_auth(registry.basic_user,
                           registry.basic_password)