nodepool #4

Supports: focal bionic
Add to new model

Description

Node pool is used by zuul to manage cloud resources.


Zuul

Zuul is a CI application developed by the OpenInfra Foudation.


Configuration

auth-url
(string) The URL of the keystone API used to authenticate. On OpenStack control panels, this can be found at Access and Security > API Access > Credentials.
cloud-name
(string) Name of the cloud
endpoint-tls-ca
(string) A CA certificate that can be used to verify the target cloud API endpoints. Use 'include-base64://' in a bundle to include a certificate. Otherwise, pass a base64-encoded certificate (base64 of "-----BEGIN" to "-----END") as a config option in a Juju CLI invocation.
extra_packages
(string) Space separated list of extra deb packages to install.
install_keys
(string) List of signing keys for install_sources package sources, per charmhelpers standard format (a yaml list of strings encoded as a string). The keys should be the full ASCII armoured GPG public keys. While GPG key ids are also supported and looked up on a keyserver, operators should be aware that this mechanism is insecure. null can be used if a standard package signing key is used that will already be installed on the machine, and for PPA sources where the package signing key is securely retrieved from Launchpad.
install_sources
(string) List of extra apt sources, per charm-helpers standard format (a yaml list of strings encoded as a string). Each source may be either a line that can be added directly to sources.list(5), or in the form ppa:<user>/<ppa-name> for adding Personal Package Archives, or a distribution component to enable.
nodepool_config
(string) nodepool_config is rendered directly into /etc/nodepool/nodepool.yaml and is used to configure what nodepool does. Some additional details are rendered before this, such as the environment's zookeeper servers. . An example of what your config may look like: . providers: - name: serverstack # this is a nodepool identifier for this cloud provider (cloud+region combo) region-name: serverstack # this needs to match the region name in clouds.yaml but is only needed if there is more than one region cloud: serverstack # This needs to match the name in clouds.yaml cloud-images: - name: bionic # Defines a cloud-image for nodepool image-name: auto-sync/ubuntu-bionic-18.04-amd64-server-20201117-disk1.img # name of image from cloud username: ubuntu # The user Zuul should log in as pools: - name: main max-servers: 4 # nodepool will never create more than this many servers labels: - name: bionic-small # defines label that will be used to get one of these in a job flavor-name: 'm1.medium' # name of flavor from cloud cloud-image: bionic # matches name from cloud-images key-name: nodepool # name of the keypair to use for authentication labels: - name: bionic-small # defines label that will be used in jobs min-ready: 2 # nodepool will always keep this many booted and ready to go
providers: - name: serverstack # this is a nodepool identifier for this cloud provider (cloud+region combo) region-name: serverstack # this needs to match the region name in clouds.yaml but is only needed if there is more than one region cloud: serverstack # This needs to match the name in clouds.yaml cloud-images: - name: bionic # Defines a cloud-image for nodepool image-name: auto-sync/ubuntu-bionic-18.04-amd64-server-20201117-disk1.img # name of image from cloud username: ubuntu # The user Zuul should log in as pools: - name: main max-servers: 4 # nodepool will never create more than this many servers labels: - name: bionic-small # defines label that will be used to get one of these in a job flavor-name: 'm1.medium' # name of flavor from cloud cloud-image: bionic # matches name from cloud-images key-name: nodepool # name of the keypair to use for authentication labels: - name: bionic-small # defines label that will be used in jobs min-ready: 2 # nodepool will always keep this many booted and ready to go
package_status
(string) The status of service-affecting packages will be set to this value in the dpkg database. Valid values are "install" and "hold".
install
password
(string) Password of a valid user set in keystone.
project-domain-name
(string) Name of the project domain where you want to create your resources.
project-name
(string) Name of project where you want to create your resources.
region-name
(string) Name of the region to configure
user-domain-name
(string) Name of the user domain where you want to create your resources.
username
(string) Username of a valid user set in keystone.