Charmed-Kubernetes/containerd/hooks/relations/docker-registry
xiafan 35f601a2a0 update kubernetest 1.22 2023-06-29 14:22:27 +08:00
..
.gitignore update kubernetest 1.22 2023-06-29 14:22:27 +08:00
LICENSE update kubernetest 1.22 2023-06-29 14:22:27 +08:00
README.md update kubernetest 1.22 2023-06-29 14:22:27 +08:00
__init__.py update kubernetest 1.22 2023-06-29 14:22:27 +08:00
interface.yaml update kubernetest 1.22 2023-06-29 14:22:27 +08:00
provides.py update kubernetest 1.22 2023-06-29 14:22:27 +08:00
requires.py update kubernetest 1.22 2023-06-29 14:22:27 +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)