Skip to content

Add controller-wide CA certificate bundle support#710

Merged
gabriel-samfira merged 2 commits intocloudbase:mainfrom
gabriel-samfira:add-controller-ca
Apr 10, 2026
Merged

Add controller-wide CA certificate bundle support#710
gabriel-samfira merged 2 commits intocloudbase:mainfrom
gabriel-samfira:add-controller-ca

Conversation

@gabriel-samfira
Copy link
Copy Markdown
Member

Adds the ability to configure a CA certificate bundle at the controller level, separate from per-endpoint bundles. The controller CA is combined with endpoint CAs (deduplicated) and installed on runners before any GARM API calls are made. On Linux via cloud-init extra CA certs, and on Windows via the userdata wrapper importing certs into the Root store. This ensures runners can validate GARM's TLS certificate even when it uses a self-signed CA, without needing to duplicate the same bundle across all forge endpoints.

While you can use the controller wide CA bundle to include multiple CAs, it is recommended to keep this bundle to a minimum, as growing the userdata above 16KB may make it fail on providers such as EC2.

Add the ability to upload a controller wide CA bundle. While the endpoint
bundles are aimed at validating the source forge endpoint certificates,
the controller wide CA bundle is meant to encompas the GARM API itself,
and any other endpoints user workflows may require.

The GARM API may sit behind a self signed CA. Runners need to be able to
validate the GARM API when they come online. Overloading the source forge
CA bundles to be used to validate GARM itself or other endpoints is
undesirable, as we'd need to upload the same CA in all source forges.

Signed-off-by: Gabriel Adrian Samfira <gsamfira@cloudbasesolutions.com>
Add the controller CA to the windows userdata wrapper, and make sure
the linux cloud-init config includes both the endpoint and the controller
CA.

The idea is to make sure the controller CA is installed before any call
to the GARM API is made. This will ensure that the certificate is trusted
even when GARM uses a self signed cert.

Signed-off-by: Gabriel Adrian Samfira <gsamfira@cloudbasesolutions.com>
@gabriel-samfira gabriel-samfira merged commit 653c2b4 into cloudbase:main Apr 10, 2026
4 checks passed
@gabriel-samfira gabriel-samfira deleted the add-controller-ca branch April 10, 2026 16:56
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant