Review `oauth2-proxy-k8s` Charm for Listing

Hello! I’d like to request for the listing of the OAuth2 Proxy k8s operator charm.

OAuth2 Proxy is a reverse proxy and static file server that authenticates users through providers like Google and GitHub, allowing validation by email, domain, or group.

This operator provides the OAuth2 proxy, and consists of Python scripts which wraps the versions distributed by OAuth2 proxy.

PR for code review: Review Charm for Listing by kelkawi-a · Pull Request #6 · canonical/oauth2-proxy-k8s-operator · GitHub

Metadata links

Charmhub.io: Charmhub | Deploy OAuth2 Proxy using Charmhub - The Open Operator Collection

Project repository: GitHub - canonical/oauth2-proxy-k8s-operator: OAuth2 Proxy k8s operator

CI Links

Code linting or-style checks: oauth2-proxy-k8s-operator/tox.ini at main · canonical/oauth2-proxy-k8s-operator · GitHub

Release automation: oauth2-proxy-k8s-operator/.github/workflows/publish_charm.yaml at main · canonical/oauth2-proxy-k8s-operator · GitHub

Unit test implementation: https://github.com/canonical/oauth2-proxy-k8s-operator/blob/main/.github/workflows/test.yaml

Unit test results: https://github.com/canonical/oauth2-proxy-k8s-operator/actions/runs/9838520287

Integration test implementation: https://github.com/canonical/oauth2-proxy-k8s-operator/blob/main/.github/workflows/integration_test.yaml

Integration test results: https://github.com/canonical/oauth2-proxy-k8s-operator/actions/runs/9840377589

Documentation Links

Usage: Charmed OAuth2 Proxy K8s Overview

Contribution: https://github.com/canonical/oauth2-proxy-k8s-operator/blob/main/CONTRIBUTING.md

Licensing: oauth2-proxy-k8s-operator/LICENSE at main · canonical/oauth2-proxy-k8s-operator · GitHub

Publisher: Ali Kelkawi (ali.kelkawi@canonical.com) Canonical Commercial Systems

Thanks @ali-kelkawi for the review request!

@javierdelapuente can you please help with this review? You can go through and tick off the items on the checklist and post the result in this thread. This prior listing request could serve as an example of how to go about it. Please ping @review-coordinators for any questions.

I left some comments in the PR, mostly nitpicking. I have approved it, as it works correctly and I think the issues are minor. However I think it would be nice to tackle some of them in a following PR (like removing the defer use).

Sorry, I deleted the previous checklist, as I realised looking that the links are missing in the Charmhub.io main page, like a homepage or a link to submit bugs, which make it difficult for users to contribute to the charm.

1 Like

Hi, the Charmhub.io main page has now the links to the homepage and to submit bugs. Also, the PR comments were addressed.

Here is the checklist:

Check Review item Objective Review criteria
Intended functionality Despite all the items for publication readiness, the charm must work. Charm does what it is meant to do - ideally done in a demo.
Charmhub.io charm detail page A complete and consistent appearance of the charm is required for a quality impression of the charm collection. The overall appearance looks good, which means:
* The name complies with the naming guidelines.
* The publisher is identified.
* The links are provided.
* The documentation looks reasonable.
Source repository Generally, the source code for charms must be accessible by the community for transparency and collaboration. It is not entirely mandatory to have the charm published as OSS for review, but the repository must be accessible from the persons working on the review request.
Coding conventions The source code of the charm is accessible in the sense of approachability. Consistent source code style and formatting are also considered a sign of being committed to quality. The implemented checks for coding conventions are reasonable and implemented in the regular CI/CD implementation.
Release automation implementation An implementation for automated releasing to charmhub.io improves the ability to provide updates covering vulnerabilities quickly. Release automation for unstable channels to enable testing when new versions of the charm code or the workload become available.
Unit tests implementation In particular, for the charms review, assuring a reasonable test suite is essential to allow for automated releases in future. The unit tests show relevant coverage. It is a case-dependent review.At the time of review, the test runs successfully.
Unit tests results Availability of test results is mandatory for a working collaborative project. URL to test results from CI/CD automation.
Installation test implemented (could be part of the integration test) In particular, for the charm review, assuring a reasonable test suite is essential to allow for automated releases in future. With this test, for every build, it is ensured that the installation is successful. An implementation for checking the installation is present. The implementation should also check for successful installation as part of the automation, and the workload behaves as expected. At the time of review, the test runs successfully.
Installation test results Availability of test results is mandatory for a working collaborative project. URL to test results from CI/CD automation.
Integration tests implemented In particular for the review of charms, assuring a reasonable test suite is important to allow for automated releases in future. With this test, for every build, it is ensured that the integration with other charms is successful. An implementation for testing the required integrations (if applicable) is present. The implementation should also check for successful integration as part of he automation and the workload behaves as expected.
At the time of review, the test runs successfully.
Integration test results Availability of test results is mandatory for a working collaborative project. URL to test results from CI/CD automation.
Documentation for usage The documentation for using the charm should be separate from the documentation for developing or contributing to the charm. URL to this documentation is present.
Documentation for contributing The documentation for contributing to the charm should be separate from the documentation for developing or using the charm. URL to this documentation is present.
Licensing statement For the charm shared, OSS or not, the licensing terms of the charm are clarified (which also implies an identified authorship of the charm). URL to the ruling licensing statement is present.

Thanks @javierdelapuente!

@odysseus-k This one should be good for listing!

Hi,

oauth2-proxy-k8s should now be listed.

Thanks,

Deep

1 Like