charm-glance-simplestreams-.../config.yaml
Trent Lloyd c9db7fe9a9 Make the GPG validation keyring configurable
Add a new configuration option custom_keyring which allows the user to
provide a custom GPG keyring for validating the simplestreams source,
instead of the default /usr/share/keyrings/ubuntu-cloudimage-keyring.gpg

Change-Id: Ib564a6e259274a076675687a03c0c2030d35e221
2024-10-04 08:20:04 +00:00

159 lines
5.7 KiB
YAML

options:
mirror_list:
type: string
default: "[{url: 'http://cloud-images.ubuntu.com/releases/',
name_prefix: 'ubuntu:released',
path: 'streams/v1/index.sjson', max: 1,
item_filters: ['release~(trusty|xenial|bionic|focal|jammy)', 'arch~(x86_64|amd64)', 'ftype~(disk1.img|disk.img)']}]"
description: >
YAML-formatted list of simplestreams mirrors and their configuration
properties. Defaults to downloading the released images from
cloud-images.ubuntu.com.
run:
type: boolean
default: False
description: "Enable cron-based synchronisation"
use_swift:
type: boolean
default: True
description: >
Controls whether swift will be used for image metadata storage
or not. If set to False, image metadata will not be written to
object store while images will still be synced to Glance.
ignore_proxy_for_object_store:
type: boolean
default: true
description: |
Controls whether Juju model proxy settings are going to be used
by sstream-mirror-glance when connecting to object-store endpoints
from the Keystone catalog.
frequency:
type: string
default: "daily"
description: "cron job frequency - one of ['hourly', 'daily', 'weekly']"
region:
type: string
default: "RegionOne"
description: "OpenStack region to operate in."
cloud_name:
type: string
default: "glance-simplestreams-sync-openstack"
description: "Cloud name to be used in simplestreams index file"
user_agent:
type: string
default: "glance-simplestreams-sync"
description: >
User agent to use when requesting images from image servers listed in
the mirror_list.
name_prefix:
type: string
default: "auto-sync/"
description: "This is prefixed to the object name when uploading to glance."
visibility:
type: string
default: "public"
description: >
Visibility to apply to stored images. Possible values are
'public', 'private', 'community', and 'shared'.
custom_properties:
type: string
default:
description: >
Space separated list of custom properties (format key=value) to be
set in glance for all synced images e.g. hw_firmware_type,
hw_vif_multiqueue_enabled.
set_latest_property:
type: boolean
default: false
description: >
Set property `latest=true` to recently synced image and then remove
the `latest` property from all the os_version/architecture matching
images.
content_id_template:
type: string
default: "auto.sync"
description: >
A Python-style .format() template to use when generating
content_id properties for images uploaded to glance.
The content_id is considered when matching images between the
source and destination to decide which images to mirror. By
varying this value you can mirror disjoint sets of images from
the same source into a single glance, either by using multiple
deployments of this charm, or by using a tool such as
sstream-mirror-glance, and they will not interfere with each
other.
Here is a more interesting example value:
com.example.customstack.{region}:ubuntu:celery-worker
Currently the only available substitution is "region". Any
other attempted substitutions will break the sync script.
ssl_ca:
type: string
default:
description: |
base64-encoded SSL CA to use to verify certificates from keystone and
glance if using SSL on the services.
nagios_context:
default: "juju"
type: string
description: |
Used by the nrpe-external-master subordinate charm.
A string that will be prepended to instance name to set the host name
in nagios. So for instance the hostname would be something like:
juju-myservice-0
If you're running multiple environments with the same services in them
this allows you to differentiate between them.
nagios_servicegroups:
default: ""
type: string
description: |
A comma-separated list of nagios servicegroups.
If left empty, the nagios_context will be used as the servicegroup
source:
type: string
default:
description: DEPRECATED - option no longer used and will be removed
key:
type: string
default:
description: DEPRECATED - option no longer used and will be removed
hypervisor_mapping:
type: boolean
default: false
description: |
Enable configuration of hypervisor-type on synced images.
.
This is useful in multi-hypervisor clouds supporting both LXD and KVM.
snap-channel:
type: string
default: stable
description: Snap channel to install simplestreams snap from
use-internal-endpoints:
type: boolean
default: False
description: |
OpenStack mostly defaults to using public endpoints for internal
communication between services. If set to True this option will
configure services to use internal endpoints where possible.
image_import_conversion:
type: boolean
default: False
description: |
Enable conversion of images to raw format when uploading images to Glance.
Only supported when "image_conversion" is enabled in Glance.
custom_keyring:
type: string
default:
description: |
base64-encoded GPG keyring for verifying the simplestreams mirror
signature. Only required when mirroring a custom user-created repository,
defaults to /usr/share/keyrings/ubuntu-cloudimage-keyring.gpg which is
used to sign cloud-images.ubuntu.com.
Can be produced with the following command:
gpg --no-default-keyring --keyring gnupg-ring:custom_keyring.gpg \
--keyserver keyserver.ubuntu.com --recv-keys KEYID