Skip to content

Add Registration smart proxy feature (SAT-44972)#675

Draft
jeremylenz wants to merge 3 commits into
theforeman:masterfrom
jeremylenz:capsule-registration-feature
Draft

Add Registration smart proxy feature (SAT-44972)#675
jeremylenz wants to merge 3 commits into
theforeman:masterfrom
jeremylenz:capsule-registration-feature

Conversation

@jeremylenz

Copy link
Copy Markdown
Contributor

Why are you introducing these changes? (Problem description, related links)

Adds the Registration smart proxy feature for foremanctl to support proxying host registration requests to Foreman (Jira ticket SAT-44972).

What are the changes introduced in this pull request?

  • Adds the Registration smart proxy feature, which proxies host registration requests to Foreman
  • Registration is HTTPS-only and depends on the Templates feature (auto-enabled via dependency)
  • Adds optional --registration-url parameter for custom registration endpoints (e.g. load balancers)
  • Includes registration in the foreman-proxy-content flavor for standalone Capsule deployments

Notes

  • Includes a minimal templates entry in features.yaml and a basic templates.yml.j2 settings template to support the dependency. These will overlap with PR Add Templates feature to foreman-proxy #519 (Templates feature) — conflicts are additive and easy to resolve once that PR merges.

How to test this pull request

Steps to reproduce:

  • Run cd src && ansible-lint to verify linting passes
  • Deploy with --add-feature registration --registration-url https://quadlet.example.com:8443
  • Verify Registration appears in smart proxy features list
  • Verify registration_url setting is correctly exposed via /v2/features

Checklist

  • Tests added/updated (if applicable)
  • Documentation updated (if applicable)

Implements host registration through the smart proxy with HTTPS-only
support and Templates dependency.

Co-Authored-By: Claude Sonnet 4.5 <noreply@anthropic.com>
Add template_url to templates.yml to satisfy plugin validation requirements. Update registration test to verify feature state instead of hardcoded URL for better test portability.

Co-Authored-By: Claude Sonnet 4.5 <noreply@anthropic.com>
Comment thread .github/workflows/test.yml Outdated
--add-feature remote-execution \
--add-feature bmc \
--add-feature registration \
--registration-url https://quadlet.example.com:8443 \

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I don't think we should set this in our tests.

Copy link
Copy Markdown
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Agreed — removed it. The parameter is optional and the test just verifies the feature is present and running.

The registration_url parameter is optional and doesn't need to be set in tests. The test already verifies the feature is present and running.
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.

2 participants