From 6c797abaa2c42335e90d9be02b673adb6bfd490f Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Sergio=20Casta=C3=B1o=20Arteaga?= Date: Tue, 10 Jan 2023 19:23:17 +0100 Subject: [PATCH] Add experimental support for Kyverno policies (#2655) MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Related to #2653 Signed-off-by: Sergio Castaño Arteaga Signed-off-by: Cintia Sanchez Garcia Co-authored-by: Sergio Castaño Arteaga Co-authored-by: Cintia Sanchez Garcia --- README.md | 1 + charts/artifact-hub/Chart.yaml | 3 +- charts/artifact-hub/values.schema.json | 2 +- .../schema/041_kyverno_policies.sql | 5 + database/tests/schema/schema.sql | 3 +- docs/api/openapi.yaml | 88 ++++++++++++++++++ docs/kyverno_annotations.md | 32 +++++++ docs/kyverno_policies_repositories.md | 49 ++++++++++ docs/repositories.md | 1 + docs/www/content/_index.md | 7 +- docs/www/headers/keptn_annotations | 2 +- docs/www/headers/kyverno_annotations | 7 ++ .../www/headers/kyverno_policies_repositories | 7 ++ docs/www/headers/olm_annotations | 2 +- docs/www/headers/olm_operators_repositories | 2 +- docs/www/headers/opa_policies_repositories | 2 +- docs/www/headers/tekton_annotations | 2 +- .../www/headers/tekton_pipelines_repositories | 2 +- docs/www/headers/tekton_tasks_repositories | 2 +- .../headers/tinkerbell_actions_repositories | 2 +- internal/handlers/handlers.go | 4 +- internal/handlers/pkg/handlers_test.go | 11 +++ internal/hub/repo.go | 7 ++ internal/repo/manager.go | 4 + internal/tracker/helpers.go | 10 +- internal/tracker/source/generic/generic.go | 22 +++++ internal/tracker/tracker.go | 1 + scripts/prepare-docs.sh | 8 +- web/public/static/media/kubewarden_icon.png | Bin 0 -> 21646 bytes web/public/static/media/kyverno-light.svg | 1 + web/public/static/media/kyverno.svg | 1 + web/public/static/media/kyverno_icon.png | Bin 0 -> 37141 bytes .../static/media/placeholder_pkg_kyverno.png | Bin 0 -> 183807 bytes web/src/layout/common/Image.tsx | 2 + web/src/layout/common/RepositoryIcon.test.tsx | 7 ++ web/src/layout/common/RepositoryIcon.tsx | 4 + web/src/layout/common/SampleQueries.test.tsx | 4 + .../controlPanel/repositories/Modal.tsx | 14 +++ .../__snapshots__/Modal.test.tsx.snap | 5 + .../home/__snapshots__/index.test.tsx.snap | 40 +++++++- web/src/layout/home/index.test.tsx | 5 +- web/src/layout/home/index.tsx | 21 +++-- web/src/layout/package/Details.tsx | 53 +++++++++++ web/src/layout/package/index.tsx | 56 +++++++++++ web/src/types.ts | 13 +++ web/src/utils/data.tsx | 11 ++- web/src/utils/repoKind.test.tsx | 8 ++ web/src/utils/repoKind.ts | 4 + widget/public/index.html | 1 + widget/src/layout/Widget.tsx | 2 + widget/src/layout/common/Image.test.tsx | 7 ++ widget/src/layout/common/Image.tsx | 2 + widget/src/layout/common/RepositoryIcon.tsx | 1 + .../src/layout/common/RepositoryIconLabel.tsx | 4 + widget/src/layout/common/SVGIcons.test.tsx | 5 + widget/src/layout/common/SVGIcons.tsx | 32 +++++++ widget/src/types.ts | 1 + 57 files changed, 554 insertions(+), 38 deletions(-) create mode 100644 database/migrations/schema/041_kyverno_policies.sql create mode 100644 docs/kyverno_annotations.md create mode 100644 docs/kyverno_policies_repositories.md create mode 100644 docs/www/headers/kyverno_annotations create mode 100644 docs/www/headers/kyverno_policies_repositories create mode 100644 web/public/static/media/kubewarden_icon.png create mode 100644 web/public/static/media/kyverno-light.svg create mode 100644 web/public/static/media/kyverno.svg create mode 100644 web/public/static/media/kyverno_icon.png create mode 100644 web/public/static/media/placeholder_pkg_kyverno.png diff --git a/README.md b/README.md index 58be3d25..0abe3782 100644 --- a/README.md +++ b/README.md @@ -24,6 +24,7 @@ At the moment, the following artifacts kinds are supported *(with plans to suppo - [Keptn integrations](https://keptn.sh) - [Kubectl plugins (Krew)](https://krew.sigs.k8s.io/) - [Kubewarden policies](https://www.kubewarden.io) +- [Kyverno policies](https://kyverno.io) - [OLM operators](https://github.com/operator-framework) - [Open Policy Agent (OPA) policies](https://www.openpolicyagent.org/) - [Tekton tasks and pipelines](https://tekton.dev/) diff --git a/charts/artifact-hub/Chart.yaml b/charts/artifact-hub/Chart.yaml index 6d154265..6fafd9b6 100644 --- a/charts/artifact-hub/Chart.yaml +++ b/charts/artifact-hub/Chart.yaml @@ -2,7 +2,7 @@ apiVersion: v2 name: artifact-hub description: Artifact Hub is a web-based application that enables finding, installing, and publishing Kubernetes packages. type: application -version: 1.11.1-3 +version: 1.11.1-4 appVersion: 1.11.0 kubeVersion: ">= 1.19.0-0" home: https://artifacthub.io @@ -22,6 +22,7 @@ keywords: - containers images - kubewarden - gatekeeper + - kyverno maintainers: - name: Sergio email: tegioz@icloud.com diff --git a/charts/artifact-hub/values.schema.json b/charts/artifact-hub/values.schema.json index 2056e557..bfb3abdb 100644 --- a/charts/artifact-hub/values.schema.json +++ b/charts/artifact-hub/values.schema.json @@ -1054,7 +1054,7 @@ }, "repositoriesKinds": { "title": "Repositories kinds to process ([] = all)", - "description": "The following kinds are supported at the moment: falco, helm, olm, opa, tbaction, krew, helm-plugin, tekton-task, keda-scaler, coredns, keptn, tekton-pipeline, container, kubewarden, gatekeeper", + "description": "The following kinds are supported at the moment: falco, helm, olm, opa, tbaction, krew, helm-plugin, tekton-task, keda-scaler, coredns, keptn, tekton-pipeline, container, kubewarden, gatekeeper, kyverno", "type": "array", "items": { "type": "string" diff --git a/database/migrations/schema/041_kyverno_policies.sql b/database/migrations/schema/041_kyverno_policies.sql new file mode 100644 index 00000000..651a9f15 --- /dev/null +++ b/database/migrations/schema/041_kyverno_policies.sql @@ -0,0 +1,5 @@ +insert into repository_kind values (15, 'Kyverno policies'); + +---- create above / drop below ---- + +delete from repository_kind where repository_kind_id = 15; diff --git a/database/tests/schema/schema.sql b/database/tests/schema/schema.sql index afec2336..fcbf88b2 100644 --- a/database/tests/schema/schema.sql +++ b/database/tests/schema/schema.sql @@ -521,7 +521,8 @@ select results_eq( (11, 'Tekton pipelines'), (12, 'Containers images'), (13, 'Kubewarden policies'), - (14, 'Gatekeeper policies') + (14, 'Gatekeeper policies'), + (15, 'Kyverno policies') $$, 'Repository kinds should exist' ); diff --git a/docs/api/openapi.yaml b/docs/api/openapi.yaml index 98fc8b81..9d46fe9e 100644 --- a/docs/api/openapi.yaml +++ b/docs/api/openapi.yaml @@ -1341,6 +1341,29 @@ paths: $ref: "#/components/responses/TooManyRequests" "500": $ref: "#/components/responses/InternalServerError" + "/packages/kyverno/{repoName}/{packageName}": + get: + tags: + - Packages + summary: Get package details + description: Get package details + operationId: getKyvernoPoliciesDetails + parameters: + - $ref: "#/components/parameters/RepoNameParam" + - $ref: "#/components/parameters/PackageNameParam" + responses: + "200": + description: "" + content: + application/json: + schema: + $ref: "#/components/schemas/KyvernoPolicy" + "404": + $ref: "#/components/responses/NotFoundResponse" + "429": + $ref: "#/components/responses/TooManyRequests" + "500": + $ref: "#/components/responses/InternalServerError" "/packages/opa/{repoName}/{packageName}": get: tags: @@ -1696,6 +1719,30 @@ paths: $ref: "#/components/responses/TooManyRequests" "500": $ref: "#/components/responses/InternalServerError" + "/packages/kyverno/{repoName}/{packageName}/{version}": + get: + tags: + - Packages + summary: Get package version details + description: Get package version details + operationId: getKyvernoPoliciesVersionDetails + parameters: + - $ref: "#/components/parameters/RepoNameParam" + - $ref: "#/components/parameters/PackageNameParam" + - $ref: "#/components/parameters/VersionParam" + responses: + "200": + description: "" + content: + application/json: + schema: + $ref: "#/components/schemas/KyvernoPolicy" + "404": + $ref: "#/components/responses/NotFoundResponse" + "429": + $ref: "#/components/responses/TooManyRequests" + "500": + $ref: "#/components/responses/InternalServerError" "/packages/opa/{repoName}/{packageName}/{version}": get: tags: @@ -3581,6 +3628,43 @@ components: kubewarden/mutation: type: string example: "true" + KyvernoPolicy: + allOf: + - $ref: "#/components/schemas/Package" + - type: object + properties: + relative_path: + type: string + nullable: false + example: /general/allowedrepos + data: + type: object + nullable: false + properties: + policy: + type: string + nullable: false + example: >- + apiVersion: kyverno.io/v1 + kind: ClusterPolicy + metadata: + name: add-certificates-volume + annotations: + policies.kyverno.io/title: Add Certificates as a Volume + policies.kyverno.io/category: Sample + policies.kyverno.io/subject: Pod,Volume + kyverno/subject: + type: string + example: "Pod, Volume" + kyverno/version: + type: string + example: "1.5.0" + kyverno/kubernetesVersion: + type: string + example: "1.21" + kyverno/category: + type: string + example: "OpenShift" Link: type: object nullable: false @@ -4168,6 +4252,7 @@ components: * `12` - Container images * `13` - Kubewarden policies * `14` - Gatekeeper policies + * `15` - Kyverno policies RepositoryKindParam: type: string enum: @@ -4186,6 +4271,7 @@ components: - container - kubewarden - gatekeeper + - kyverno description: | Repository kind name: * `helm` - Helm charts @@ -4203,6 +4289,7 @@ components: * `container` - Container images * `kubewarden` - Kubewarden policies * `gatekeeper` - Gatekeeper policies + * `kyverno` - Kyverno policies RepositorySummary: type: object required: @@ -4700,6 +4787,7 @@ components: * `12` - Container images * `13` - Kubewarden policies * `14` - Gatekeeper policies + * `15` - Kyverno policies PackageNameParam: in: path name: packageName diff --git a/docs/kyverno_annotations.md b/docs/kyverno_annotations.md new file mode 100644 index 00000000..24f36296 --- /dev/null +++ b/docs/kyverno_annotations.md @@ -0,0 +1,32 @@ +# Kyverno annotations + +You can provide some extra information about your Kyverno policies by using the `annotations` field in the [Artifact Hub package metadata file](https://github.com/artifacthub/hub/blob/master/docs/metadata/artifacthub-pkg.yml). + +## Supported annotations + +- **kyverno/category** *(string)* + +Category the policy fits in. Unless the policy applies to a community or "external" Kubernetes project, use other. + +- **kyverno/kubernetesVersion** *(string)* + +Version(s) of Kubernetes against which the policy should work. Value should ideally be a range of versions no more than two prior (ex., 1.19-1.21) and must be enclosed in quotes. + +- **kyverno/subject** *(string)* + +The focus of the policy. For example, Pod or Ingress or a CustomResource like ClusterIssuer. The subject is the "thing" on which the policy operates. For multiple, use a comma-separated string like Pod, Deployment. + +- **kyverno/version** *(string)* + +Minimum version of Kyverno where this policy works. Note that this isn't the version of Kyverno where it was developed or tested but the minimum version of Kyverno where it's supported. If unknown, omit. + +## Example + +```yaml +... +annotations: + kyverno/category: "OpenShift" + kyverno/kubernetesVersion: "1.20" + kyverno/subject: "Route" + kyverno/version: "1.6.0" +``` diff --git a/docs/kyverno_policies_repositories.md b/docs/kyverno_policies_repositories.md new file mode 100644 index 00000000..d4858d19 --- /dev/null +++ b/docs/kyverno_policies_repositories.md @@ -0,0 +1,49 @@ +## Kyverno policies repositories + +Kyverno policies repositories are expected to be hosted in GitHub, GitLab or Bitbucket repos. When adding your repository to Artifact Hub, the url used **must** follow the following format: + +- `https://github.com/user/repo[/path/to/packages]` +- `https://gitlab.com/user/repo[/path/to/packages]` +- `https://bitbucket.org/user/repo[/path/to/packages]` + +By default the `master` branch is used, but it's possible to specify a different one from the UI. + +*Please NOTE that the repository URL used when adding the repository to Artifact Hub **must NOT** contain the git hosting platform specific parts, like **tree/branch**, just the path to your packages like it would show in the filesystem.* + +The *path/to/packages* provided can contain metadata for one or more packages. Each package version **must** be on a separate folder, and it's up to you to decide if you want to publish one or multiple versions of your package. + +The structure of a repository with multiple policies packages and versions could look something like this: + +```sh +$ tree path/to/packages +path/to/packages +├── artifacthub-repo.yml +├── package1 +│   ├── 1.0.0 +│   │   ├── README.md +│   │   └── artifacthub-pkg.yml +│   └── 2.0.0 +│      ├── README.md +│   └── artifacthub-pkg.yml +└── package2 + └── 1.0.0 +       ├── README.md + └── artifacthub-pkg.yml +``` + +This structure is flexible, and in some cases it can be greatly simplified. In the case of a single package with a single version available at a time (the publisher doesn't want to make previous ones available, for example), the structure could look like this: + +```sh +$ tree path/to/packages +path/to/packages +├── artifacthub-repo.yml +└── package1 +    ├── README.md + └── artifacthub-pkg.yml +``` + +In the previous case, even the `package1` directory could be omitted. The reason is that both packages names and versions are read from the `artifacthub-pkg.yml` metadata file, so directories names are not used at all. + +Each package version **needs** an `artifacthub-pkg.yml` metadata file. Please see the file [spec](https://github.com/artifacthub/hub/blob/master/docs/metadata/artifacthub-pkg.yml) for more details. The [artifacthub-repo.yml](https://github.com/artifacthub/hub/blob/master/docs/metadata/artifacthub-repo.yml) repository metadata file shown above can be used to setup features like [Verified publisher](https://github.com/artifacthub/hub/blob/master/docs/repositories.md#verified-publisher) or [Ownership claim](https://github.com/artifacthub/hub/blob/master/docs/repositories.md#ownership-claim). This file must be located at `/path/to/packages`. + +Once you have added your repository, you are all set up. As you add new versions of your policies packages or even new packages to your git repository, they'll be automatically indexed and listed in Artifact Hub. diff --git a/docs/repositories.md b/docs/repositories.md index ade34de2..4948b23d 100644 --- a/docs/repositories.md +++ b/docs/repositories.md @@ -13,6 +13,7 @@ The following repositories kinds are supported at the moment: - [Keptn integrations repositories](https://github.com/artifacthub/hub/blob/master/docs/keptn_integrations_repositories.md) - [Krew kubectl plugins repositories](https://github.com/artifacthub/hub/blob/master/docs/krew_kubectl_plugins_repositories.md) - [Kubewarden policies repositories](https://github.com/artifacthub/hub/blob/master/docs/kubewarden_policies_repositories.md) +- [Kyverno policies repositories](https://github.com/artifacthub/hub/blob/master/docs/kyverno_policies_repositories.md) - [OLM operators repositories](https://github.com/artifacthub/hub/blob/master/docs/olm_operators_repositories.md) - [OPA policies repositories](https://github.com/artifacthub/hub/blob/master/docs/opa_policies_repositories.md) - [Tekton pipelines repositories](https://github.com/artifacthub/hub/blob/master/docs/tekton_pipelines_repositories.md) diff --git a/docs/www/content/_index.md b/docs/www/content/_index.md index a5cc7f6d..69ddf9b0 100644 --- a/docs/www/content/_index.md +++ b/docs/www/content/_index.md @@ -13,11 +13,12 @@ The documentation is organized in the following topics: | ------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------- | | [Repositories guide](/docs/topics/repositories) | The repositories guide explains how to add repositories to Artifact Hub, as well as other related concepts like Verified publisher or Ownership Claim. | | [Helm annotations](/docs/topics/annotations/helm) | Describes some custom annotations that allow enriching the existing metadata in Helm Charts to improve users' experience in Artifact Hub. | -| [OLM annotations](/docs/topics/annotations/olm) | Describes some custom annotations that allow enriching the existing metadata in OLM operators to improve users' experience in Artifact Hub. | +| [Keptn annotations](/docs/topics/annotations/keptn) | Describes some custom annotations that allow enriching the existing metadata in Keptn integrations to improve users' experience in Artifact Hub. | | [Krew annotations](/docs/topics/annotations/krew) | Describes some custom annotations that allow enriching the existing metadata in Krew kubectl plugins to improve users' experience in Artifact Hub. | -| [Tekton annotations](/docs/topics/annotations/tekton) | Describes some custom annotations that allow enriching the existing metadata in Tekton tasks to improve users' experience in Artifact Hub. | | [Kubewarden annotations](/docs/topics/annotations/kubewarden) | Describes some custom annotations that allow enriching the existing metadata in Kubewarden policies to improve users' experience in Artifact Hub. | -| [keptn annotations](/docs/topics/annotations/keptn) | Describes some custom annotations that allow enriching the existing metadata in Keptn integrations to improve users' experience in Artifact Hub. | +| [Kyverno annotations](/docs/topics/annotations/kyverno) | Describes some custom annotations that allow enriching the existing metadata in Kyverno policies to improve users' experience in Artifact Hub. | +| [OLM annotations](/docs/topics/annotations/olm) | Describes some custom annotations that allow enriching the existing metadata in OLM operators to improve users' experience in Artifact Hub. | +| [Tekton annotations](/docs/topics/annotations/tekton) | Describes some custom annotations that allow enriching the existing metadata in Tekton tasks to improve users' experience in Artifact Hub. | | [Packages security report](/docs/topics/security_report) | Explains how packages are scanned for security vulnerabilities and the structure of the security report. | | [Authorization](/docs/topics/authorization) | Explains how the authorization mechanism that allows organizations to define what actions can be performed by their members works and how to set it up. | | [Architecture](/docs/topics/architecture) | Describes the components that form Artifact Hub, what each of them do and the layout of the source repository. | diff --git a/docs/www/headers/keptn_annotations b/docs/www/headers/keptn_annotations index dcfb43da..4712fcd6 100644 --- a/docs/www/headers/keptn_annotations +++ b/docs/www/headers/keptn_annotations @@ -1,6 +1,6 @@ --- title: "Keptn" -weight: 4 +weight: 2 aliases: [ "/keptn_annotations", ] diff --git a/docs/www/headers/kyverno_annotations b/docs/www/headers/kyverno_annotations new file mode 100644 index 00000000..c8b7f8b2 --- /dev/null +++ b/docs/www/headers/kyverno_annotations @@ -0,0 +1,7 @@ +--- +title: "Kyverno" +weight: 5 +aliases: [ + "/kyverno_annotations" +] +--- diff --git a/docs/www/headers/kyverno_policies_repositories b/docs/www/headers/kyverno_policies_repositories new file mode 100644 index 00000000..27abf9ac --- /dev/null +++ b/docs/www/headers/kyverno_policies_repositories @@ -0,0 +1,7 @@ +--- +title: "Kyverno policies" +weight: 11 +aliases: [ + "/kyverno_policies_repositories", +] +--- diff --git a/docs/www/headers/olm_annotations b/docs/www/headers/olm_annotations index 98daedb1..81add935 100644 --- a/docs/www/headers/olm_annotations +++ b/docs/www/headers/olm_annotations @@ -1,6 +1,6 @@ --- title: "OLM" -weight: 2 +weight: 6 aliases: [ "/olm_annotations", ] diff --git a/docs/www/headers/olm_operators_repositories b/docs/www/headers/olm_operators_repositories index 787a7c7d..95ab7c15 100644 --- a/docs/www/headers/olm_operators_repositories +++ b/docs/www/headers/olm_operators_repositories @@ -1,6 +1,6 @@ --- title: "OLM operators" -weight: 11 +weight: 12 aliases: [ "/olm_operators_repositories", ] diff --git a/docs/www/headers/opa_policies_repositories b/docs/www/headers/opa_policies_repositories index 95d13c2f..3c557087 100644 --- a/docs/www/headers/opa_policies_repositories +++ b/docs/www/headers/opa_policies_repositories @@ -1,6 +1,6 @@ --- title: "OPA policies" -weight: 12 +weight: 13 aliases: [ "/opa_policies_repositories", ] diff --git a/docs/www/headers/tekton_annotations b/docs/www/headers/tekton_annotations index 94d8da09..b44d1f66 100644 --- a/docs/www/headers/tekton_annotations +++ b/docs/www/headers/tekton_annotations @@ -1,6 +1,6 @@ --- title: "Tekton" -weight: 4 +weight: 7 aliases: [ "/tekton_annotations", ] diff --git a/docs/www/headers/tekton_pipelines_repositories b/docs/www/headers/tekton_pipelines_repositories index c7a70114..e461ea16 100644 --- a/docs/www/headers/tekton_pipelines_repositories +++ b/docs/www/headers/tekton_pipelines_repositories @@ -1,6 +1,6 @@ --- title: "Tekton pipelines" -weight: 13 +weight: 14 aliases: [ "/tekton_pipelines_repositories", ] diff --git a/docs/www/headers/tekton_tasks_repositories b/docs/www/headers/tekton_tasks_repositories index dd8fc604..fe8e568c 100644 --- a/docs/www/headers/tekton_tasks_repositories +++ b/docs/www/headers/tekton_tasks_repositories @@ -1,6 +1,6 @@ --- title: "Tekton tasks" -weight: 14 +weight: 15 aliases: [ "/tekton_tasks_repositories" ] diff --git a/docs/www/headers/tinkerbell_actions_repositories b/docs/www/headers/tinkerbell_actions_repositories index 21e08163..3f422f84 100644 --- a/docs/www/headers/tinkerbell_actions_repositories +++ b/docs/www/headers/tinkerbell_actions_repositories @@ -1,6 +1,6 @@ --- title: "Tinkerbell actions" -weight: 15 +weight: 16 aliases: [ "/tinkerbell_actions_repositories", ] diff --git a/internal/handlers/handlers.go b/internal/handlers/handlers.go index 9fae2f3c..2b65cf17 100644 --- a/internal/handlers/handlers.go +++ b/internal/handlers/handlers.go @@ -264,7 +264,7 @@ func (h *Handlers) setupRouter() { r.Get("/stats", h.Packages.GetStats) r.With(corsMW).Get("/search", h.Packages.Search) r.With(h.Users.RequireLogin).Get("/starred", h.Packages.GetStarredByUser) - r.Route("/{^helm$|^falco$|^opa$|^olm|^tbaction|^krew|^helm-plugin|^tekton-task|^keda-scaler|^coredns|^keptn|^tekton-pipeline|^container|^kubewarden|^gatekeeper$}/{repoName}/{packageName}", func(r chi.Router) { + r.Route("/{^helm$|^falco$|^opa$|^olm|^tbaction|^krew|^helm-plugin|^tekton-task|^keda-scaler|^coredns|^keptn|^tekton-pipeline|^container|^kubewarden|^gatekeeper|^kyverno$}/{repoName}/{packageName}", func(r chi.Router) { r.Get("/feed/rss", h.Packages.RssFeed) r.With(corsMW).Get("/summary", h.Packages.GetSummary) r.Get("/{version}", h.Packages.Get) @@ -421,7 +421,7 @@ func (h *Handlers) setupRouter() { // Index special entry points r.Route("/packages", func(r chi.Router) { - r.Route("/{^helm$|^falco$|^opa$|^olm|^tbaction|^krew|^helm-plugin|^tekton-task|^keda-scaler|^coredns|^keptn|^tekton-pipeline|^container|^kubewarden|^gatekeeper$}/{repoName}/{packageName}", func(r chi.Router) { + r.Route("/{^helm$|^falco$|^opa$|^olm|^tbaction|^krew|^helm-plugin|^tekton-task|^keda-scaler|^coredns|^keptn|^tekton-pipeline|^container|^kubewarden|^gatekeeper|^kyverno$}/{repoName}/{packageName}", func(r chi.Router) { r.With(h.Packages.InjectIndexMeta).Get("/{version}", h.Static.Index) r.With(h.Packages.InjectIndexMeta).Get("/", h.Static.Index) }) diff --git a/internal/handlers/pkg/handlers_test.go b/internal/handlers/pkg/handlers_test.go index ee8acdd8..6eb68a0f 100644 --- a/internal/handlers/pkg/handlers_test.go +++ b/internal/handlers/pkg/handlers_test.go @@ -2047,6 +2047,17 @@ func TestBuildURL(t *testing.T) { "2.0.0", baseURL + "/packages/gatekeeper/repo1/pkg1/2.0.0", }, + { + &hub.Package{ + NormalizedName: "pkg1", + Repository: &hub.Repository{ + Kind: hub.Kyverno, + Name: "repo1", + }, + }, + "2.0.0", + baseURL + "/packages/kyverno/repo1/pkg1/2.0.0", + }, } for _, tc := range testCases { tc := tc diff --git a/internal/hub/repo.go b/internal/hub/repo.go index 95c6b480..5d1c98ed 100644 --- a/internal/hub/repo.go +++ b/internal/hub/repo.go @@ -91,6 +91,9 @@ const ( // Gatekeeper represents a repository with Gatekeeper policies. Gatekeeper RepositoryKind = 14 + + // Kyverno represents a repository with Kyverno policies. + Kyverno RepositoryKind = 15 ) // GetKindName returns the name of the provided repository kind. @@ -116,6 +119,8 @@ func GetKindName(kind RepositoryKind) string { return "krew" case Kubewarden: return "kubewarden" + case Kyverno: + return "kyverno" case OLM: return "olm" case OPA: @@ -155,6 +160,8 @@ func GetKindFromName(kind string) (RepositoryKind, error) { return Krew, nil case "kubewarden": return Kubewarden, nil + case "kyverno": + return Kyverno, nil case "olm": return OLM, nil case "opa": diff --git a/internal/repo/manager.go b/internal/repo/manager.go index 29e95905..bb8947ad 100644 --- a/internal/repo/manager.go +++ b/internal/repo/manager.go @@ -88,6 +88,7 @@ var ( hub.Keptn, hub.Krew, hub.Kubewarden, + hub.Kyverno, hub.OLM, hub.OPA, hub.TBAction, @@ -280,6 +281,7 @@ func (m *Manager) ClaimOwnership(ctx context.Context, repoName, orgName string) hub.Keptn, hub.Krew, hub.Kubewarden, + hub.Kyverno, hub.OLM, hub.OPA, hub.TBAction, @@ -452,6 +454,7 @@ func (m *Manager) locateMetadataFile(r *hub.Repository, basePath string) string hub.Keptn, hub.Krew, hub.Kubewarden, + hub.Kyverno, hub.OLM, hub.OPA, hub.TBAction, @@ -808,6 +811,7 @@ func (m *Manager) validateURL(r *hub.Repository) error { hub.Keptn, hub.Krew, hub.Kubewarden, + hub.Kyverno, hub.OLM, hub.OPA, hub.TBAction, diff --git a/internal/tracker/helpers.go b/internal/tracker/helpers.go index 9bbed062..26f889c1 100644 --- a/internal/tracker/helpers.go +++ b/internal/tracker/helpers.go @@ -112,7 +112,15 @@ func SetupSource(i *hub.TrackerSourceInput) hub.TrackerSource { source = krew.NewTrackerSource(i) case hub.OLM: source = olm.NewTrackerSource(i) - case hub.OPA, hub.TBAction, hub.KedaScaler, hub.CoreDNS, hub.Keptn, hub.Kubewarden, hub.Gatekeeper: + case + hub.CoreDNS, + hub.Gatekeeper, + hub.KedaScaler, + hub.Keptn, + hub.Kubewarden, + hub.Kyverno, + hub.OPA, + hub.TBAction: source = generic.NewTrackerSource(i) case hub.TektonTask, hub.TektonPipeline: source = tekton.NewTrackerSource(i) diff --git a/internal/tracker/source/generic/generic.go b/internal/tracker/source/generic/generic.go index 68dc8a59..0797761c 100644 --- a/internal/tracker/source/generic/generic.go +++ b/internal/tracker/source/generic/generic.go @@ -29,6 +29,10 @@ const ( // that contains the template. GatekeeperTemplateKey = "template" + // KyvernoPolicyKey represents the key used in the package's data field that + // contains the raw policy. + KyvernoPolicyKey = "policy" + // OPAPoliciesKey represents the key used in the package's data field that // contains the raw policies. OPAPoliciesKey = "policies" @@ -191,6 +195,8 @@ func PreparePackage(r *hub.Repository, md *hub.PackageMetadata, pkgPath string) kindData, err = prepareFalcoData(pkgPath, ignorer) case hub.Gatekeeper: kindData, err = prepareGatekeeperData(pkgPath) + case hub.Kyverno: + kindData, err = prepareKyvernoData(pkgPath) case hub.OPA: kindData, err = prepareOPAData(pkgPath, ignorer) } @@ -283,6 +289,22 @@ func prepareGatekeeperData(pkgPath string) (map[string]interface{}, error) { }, nil } +// prepareKyernoData reads and formats Kyverno specific data available in the +// path provided, returning the resulting data structure. +func prepareKyvernoData(pkgPath string) (map[string]interface{}, error) { + // Read policy file + policyPath := path.Join(pkgPath, path.Base(pkgPath)+".yaml") + policy, err := os.ReadFile(policyPath) + if err != nil { + return nil, fmt.Errorf("error reading kyverno policy file: %w", err) + } + + // Return package data field + return map[string]interface{}{ + KyvernoPolicyKey: string(policy), + }, nil +} + // prepareOPAData reads and formats OPA specific data available in the path // provided, returning the resulting data structure. func prepareOPAData(pkgPath string, ignorer ignore.IgnoreParser) (map[string]interface{}, error) { diff --git a/internal/tracker/tracker.go b/internal/tracker/tracker.go index 8879d6b8..1372f2d0 100644 --- a/internal/tracker/tracker.go +++ b/internal/tracker/tracker.go @@ -184,6 +184,7 @@ func (t *Tracker) cloneRepository() (string, string, error) { hub.Keptn, hub.Krew, hub.Kubewarden, + hub.Kyverno, hub.OPA, hub.TBAction, hub.TektonPipeline, diff --git a/scripts/prepare-docs.sh b/scripts/prepare-docs.sh index a2930d0c..0026e22b 100755 --- a/scripts/prepare-docs.sh +++ b/scripts/prepare-docs.sh @@ -16,6 +16,7 @@ cat docs/www/headers/keda_scalers_repositories docs/keda_scalers_repositories.md cat docs/www/headers/keptn_integrations_repositories docs/keptn_integrations_repositories.md > docs/www/content/topics/repositories/keptn-integrations.md cat docs/www/headers/krew_kubectl_plugins_repositories docs/krew_kubectl_plugins_repositories.md > docs/www/content/topics/repositories/krew-kubectl-plugins.md cat docs/www/headers/kubewarden_policies_repositories docs/kubewarden_policies_repositories.md > docs/www/content/topics/repositories/kubewarden-policies.md +cat docs/www/headers/kyverno_policies_repositories docs/kyverno_policies_repositories.md > docs/www/content/topics/repositories/kyverno-policies.md cat docs/www/headers/olm_operators_repositories docs/olm_operators_repositories.md > docs/www/content/topics/repositories/olm-operators.md cat docs/www/headers/opa_policies_repositories docs/opa_policies_repositories.md > docs/www/content/topics/repositories/opa-policies.md cat docs/www/headers/tekton_pipelines_repositories docs/tekton_pipelines_repositories.md > docs/www/content/topics/repositories/tekton-pipelines.md @@ -24,8 +25,9 @@ cat docs/www/headers/tinkerbell_actions_repositories docs/tinkerbell_actions_rep cat docs/www/headers/security_report docs/security_report.md > docs/www/content/topics/security_report.md cat docs/www/headers/cli docs/cli.md > docs/www/content/topics/cli.md cat docs/www/headers/helm_annotations docs/helm_annotations.md > docs/www/content/topics/annotations/helm.md -cat docs/www/headers/olm_annotations docs/olm_annotations.md > docs/www/content/topics/annotations/olm.md -cat docs/www/headers/krew_annotations docs/krew_annotations.md > docs/www/content/topics/annotations/krew.md -cat docs/www/headers/tekton_annotations docs/tekton_annotations.md > docs/www/content/topics/annotations/tekton.md cat docs/www/headers/keptn_annotations docs/keptn_annotations.md > docs/www/content/topics/annotations/keptn.md +cat docs/www/headers/krew_annotations docs/krew_annotations.md > docs/www/content/topics/annotations/krew.md cat docs/www/headers/kubewarden_annotations docs/kubewarden_annotations.md > docs/www/content/topics/annotations/kubewarden.md +cat docs/www/headers/kyverno_annotations docs/kyverno_annotations.md > docs/www/content/topics/annotations/kyverno.md +cat docs/www/headers/olm_annotations docs/olm_annotations.md > docs/www/content/topics/annotations/olm.md +cat docs/www/headers/tekton_annotations docs/tekton_annotations.md > docs/www/content/topics/annotations/tekton.md diff --git a/web/public/static/media/kubewarden_icon.png b/web/public/static/media/kubewarden_icon.png new file mode 100644 index 0000000000000000000000000000000000000000..cc267d92f49d91485aefd53ed00446966e377a13 GIT binary patch literal 21646 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 \ No newline at end of file diff --git a/web/public/static/media/kyverno.svg b/web/public/static/media/kyverno.svg new file mode 100644 index 00000000..41bd9bd2 --- /dev/null +++ b/web/public/static/media/kyverno.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/web/public/static/media/kyverno_icon.png b/web/public/static/media/kyverno_icon.png new file mode 100644 index 0000000000000000000000000000000000000000..25e05313be788b0a85a1032ed7c64108616009f8 GIT binary patch literal 37141 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 XE-=TNZ&Ir7aI7$-Cx~T4 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ÂjWioVgx3WP^`hTxgii94C0*89bEz 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 O0000 { return '/static/media/placeholder_pkg_kubewarden.png'; case RepositoryKind.Gatekeeper: return '/static/media/placeholder_pkg_gatekeeper.png'; + case RepositoryKind.Kyverno: + return '/static/media/placeholder_pkg_kyverno.png'; default: return PLACEHOLDER_SRC; } diff --git a/web/src/layout/common/RepositoryIcon.test.tsx b/web/src/layout/common/RepositoryIcon.test.tsx index 1385da4f..6014e198 100644 --- a/web/src/layout/common/RepositoryIcon.test.tsx +++ b/web/src/layout/common/RepositoryIcon.test.tsx @@ -114,6 +114,13 @@ describe('RepositoryIcon', () => { expect(icon).toHaveProperty('src', 'http://localhost/static/media/gatekeeper-light.svg'); }); + it('renders Kyverno policy icon', () => { + render(); + const icon = screen.getByAltText('Icon'); + expect(icon).toBeInTheDocument(); + expect(icon).toHaveProperty('src', 'http://localhost/static/media/kyverno-light.svg'); + }); + it('renders Chart icon - default type', () => { render(); const icons = screen.getAllByAltText('Icon'); diff --git a/web/src/layout/common/RepositoryIcon.tsx b/web/src/layout/common/RepositoryIcon.tsx index 45004341..37f66a7b 100644 --- a/web/src/layout/common/RepositoryIcon.tsx +++ b/web/src/layout/common/RepositoryIcon.tsx @@ -69,6 +69,10 @@ const ICONS = { default: '/static/media/gatekeeper.svg', white: '/static/media/gatekeeper-light.svg', }, + [RepositoryKind.Kyverno]: { + default: '/static/media/kyverno.svg', + white: '/static/media/kyverno-light.svg', + }, }; const RepositoryIcon = (props: Props) => { diff --git a/web/src/layout/common/SampleQueries.test.tsx b/web/src/layout/common/SampleQueries.test.tsx index db2256f3..4ef0fe6b 100644 --- a/web/src/layout/common/SampleQueries.test.tsx +++ b/web/src/layout/common/SampleQueries.test.tsx @@ -74,6 +74,10 @@ jest.mock('../../utils/getSampleQueries', () => () => { name: 'Gatekeeper policies', querystring: 'kind=14', }, + { + name: 'Kyverno policies', + querystring: 'kind=15', + }, ]; }); diff --git a/web/src/layout/controlPanel/repositories/Modal.tsx b/web/src/layout/controlPanel/repositories/Modal.tsx index a3f090a2..4f604724 100644 --- a/web/src/layout/controlPanel/repositories/Modal.tsx +++ b/web/src/layout/controlPanel/repositories/Modal.tsx @@ -409,6 +409,17 @@ const RepositoryModal = (props: Props) => { ); break; + case RepositoryKind.Kyverno: + link = ( + + Kyverno policies + + ); + break; } if (isUndefined(link)) return; @@ -431,6 +442,7 @@ const RepositoryModal = (props: Props) => { case RepositoryKind.TektonPipeline: case RepositoryKind.Kubewarden: case RepositoryKind.Gatekeeper: + case RepositoryKind.Kyverno: return ( <>

{ RepositoryKind.TektonPipeline, RepositoryKind.Kubewarden, RepositoryKind.Gatekeeper, + RepositoryKind.Kyverno, ].includes(selectedKind) && (

{ RepositoryKind.Container, RepositoryKind.Kubewarden, RepositoryKind.Gatekeeper, + RepositoryKind.Kyverno, ].includes(selectedKind) && (
diff --git a/web/src/layout/controlPanel/repositories/__snapshots__/Modal.test.tsx.snap b/web/src/layout/controlPanel/repositories/__snapshots__/Modal.test.tsx.snap index 8c8c56b1..2e6e4f2d 100644 --- a/web/src/layout/controlPanel/repositories/__snapshots__/Modal.test.tsx.snap +++ b/web/src/layout/controlPanel/repositories/__snapshots__/Modal.test.tsx.snap @@ -109,6 +109,11 @@ exports[`Repository Modal - repositories section creates snapshot 1`] = ` > Kubewarden policies + +
+ -
- +
+ + +
+ Icon +
+ + Kyverno policies + +
+
+
Discovering artifacts to use with CNCF projects can be difficult. If every CNCF project that needs to share artifacts creates its own Hub this creates a fair amount of repeat work for each project and a fractured experience for those trying to find the artifacts to consume. The Artifact Hub attempts to solve that by providing a single experience for consumers that any CNCF project can leverage. diff --git a/web/src/layout/home/index.test.tsx b/web/src/layout/home/index.test.tsx index 134718a4..37ad466d 100644 --- a/web/src/layout/home/index.test.tsx +++ b/web/src/layout/home/index.test.tsx @@ -131,7 +131,7 @@ describe('Home index', () => { await waitFor(() => expect(API.getStats).toHaveBeenCalledTimes(1)); const links = await screen.findAllByRole('button'); - expect(links).toHaveLength(19); + expect(links).toHaveLength(20); expect(links[2]).toHaveProperty('href', 'https://github.com/artifacthub/hub'); expect(links[3]).toHaveProperty('href', 'https://cloud-native.slack.com/channels/artifact-hub'); @@ -153,8 +153,9 @@ describe('Home index', () => { expect(links[15]).toHaveProperty('href', 'https://keptn.sh/'); expect(links[16]).toHaveProperty('href', 'https://opencontainers.org/'); expect(links[17]).toHaveProperty('href', 'https://www.kubewarden.io/'); + expect(links[18]).toHaveProperty('href', 'https://www.kyverno.io/'); - expect(links[18]).toHaveProperty('href', 'https://www.cncf.io/sandbox-projects/'); + expect(links[19]).toHaveProperty('href', 'https://www.cncf.io/sandbox-projects/'); }); }); }); diff --git a/web/src/layout/home/index.tsx b/web/src/layout/home/index.tsx index 92ef2bff..18c7f227 100644 --- a/web/src/layout/home/index.tsx +++ b/web/src/layout/home/index.tsx @@ -229,7 +229,7 @@ const HomeView = (props: Props) => { configurations for CNCF projects. For example, this could include Helm charts and plugins, Falco configurations, Open Policy Agent (OPA) and Gatekeeper policies, OLM operators, Tinkerbell actions, kubectl plugins, Tekton tasks and pipelines, KEDA scalers, CoreDNS plugins, Keptn integrations, - container images, and Kubewarden policies. + container images, Kubewarden policies and Kyverno policies.
@@ -283,6 +283,8 @@ const HomeView = (props: Props) => {
+ +
{
- -
@@ -325,7 +325,6 @@ const HomeView = (props: Props) => {
-
@@ -334,6 +333,8 @@ const HomeView = (props: Props) => {
+ +
{
- {/*
- +
- Gatekeeper policies + Kyverno policies
-
*/} + Discovering artifacts to use with CNCF projects can be difficult. If every CNCF project that needs to share artifacts creates its own Hub this creates a fair amount of repeat work for each project and a diff --git a/web/src/layout/package/Details.tsx b/web/src/layout/package/Details.tsx index c82e27be..5ef8c8b1 100644 --- a/web/src/layout/package/Details.tsx +++ b/web/src/layout/package/Details.tsx @@ -8,6 +8,7 @@ import { HelmChartType, KeptnData, KubewardenData, + KyvernoData, Package, PackageViewsStats, RepositoryKind, @@ -275,6 +276,58 @@ const Details = (props: Props) => { )} ); + + case RepositoryKind.Kyverno: + const subjects: string[] = + props.package.data && + !isUndefined(props.package.data[KyvernoData.Subject]) && + props.package.data[KyvernoData.Subject] !== '' + ? props.package.data[KyvernoData.Subject]!.split(',') + : []; + + return ( + <> + {props.package.data && props.package.data.kyvernoVersion && ( +
+ +

+ {props.package.data.kyvernoVersion} +

+
+ )} + {props.package.data && props.package.data.kyvernoKubernetesVersion && ( +
+ +

+ {props.package.data.kyvernoKubernetesVersion} +

+
+ )} + {props.package.data && props.package.data.kyvernoCategory && ( +
+ +

+ {props.package.data.kyvernoCategory} +

+
+ )} + {subjects.length > 0 && ( +
+ + {subjects.map((subject: string, index: number) => ( +

+ {subject} +

+ ))} +
+ )} + + ); + case RepositoryKind.TektonTask: return ( <> diff --git a/web/src/layout/package/index.tsx b/web/src/layout/package/index.tsx index 47f58e3c..84d5608f 100644 --- a/web/src/layout/package/index.tsx +++ b/web/src/layout/package/index.tsx @@ -440,6 +440,20 @@ const PackageView = (props: Props) => { return manifest; }; + const getKyvernoPolicy = (): string | undefined => { + let policy: string | undefined; + if ( + !isUndefined(detail) && + !isNull(detail) && + !isNull(detail.data) && + !isUndefined(detail.data) && + !isUndefined(detail.data.policy) + ) { + policy = detail.data.policy as string; + } + return policy; + }; + const getGatekeeperTemplate = (): string | undefined => { let manifest: string | undefined; if ( @@ -657,6 +671,48 @@ const PackageView = (props: Props) => { ); + case RepositoryKind.Kyverno: + let policy: string | undefined = getKyvernoPolicy(); + if (!isUndefined(policy)) { + additionalTitles += '# Policy\n'; + } + return ( + <> + {!isUndefined(policy) && ( +
+ + +
+ + + {policy} + +
+
+ )} + + ); + default: return null; } diff --git a/web/src/types.ts b/web/src/types.ts index af76799d..21b913a4 100644 --- a/web/src/types.ts +++ b/web/src/types.ts @@ -16,6 +16,7 @@ export enum RepositoryKind { Container, Kubewarden, Gatekeeper, + Kyverno, } export enum KeptnData { @@ -28,6 +29,13 @@ export enum KubewardenData { Mutation = 'kubewardenMutation', } +export enum KyvernoData { + Subject = 'kyvernoSubject', + Version = 'kyvernoVersion', + KubernetesVersion = 'kyvernoKubernetesVersion', + Category = 'kyvernoCategory', +} + export enum HelmChartType { Library = 'library', Application = 'application', @@ -214,10 +222,15 @@ export interface PackageData { apiVersion?: string; type?: HelmChartType; kubeVersion?: string; + policy?: string; [KeptnData.Version]?: string; [KeptnData.Kind]?: string; [KubewardenData.Resources]?: string; [KubewardenData.Mutation]?: string; + [KyvernoData.Subject]?: string; + [KyvernoData.Version]?: string; + [KyvernoData.Category]?: string; + [KyvernoData.KubernetesVersion]?: string; tasks?: TektonTaskInPipeline[]; alternativeLocations?: string[]; } diff --git a/web/src/utils/data.tsx b/web/src/utils/data.tsx index a6770b9e..9110a3ea 100644 --- a/web/src/utils/data.tsx +++ b/web/src/utils/data.tsx @@ -178,6 +178,15 @@ export const REPOSITORY_KINDS: RepoKindDef[] = [ icon: , active: true, }, + { + kind: RepositoryKind.Kyverno, + label: 'kyverno', + name: 'Kyverno policies', + singular: 'Kyverno policy', + plural: 'Kyverno policies', + icon: , + active: true, + }, { kind: RepositoryKind.OLM, label: 'olm', @@ -777,4 +786,4 @@ export const CVSS_V3_VECTORS: { [key: string]: CVSSVectorMetric[] } = { export const OCI_PREFIX = 'oci://'; export const PKG_DETAIL_PATH = - /^\/packages\/(helm|falco|opa|olm|tbaction|krew|helm-plugin|tekton-task|keda-scaler|coredns|keptn|tekton-pipeline|kubewarden|gatekeeper|container)\//; + /^\/packages\/(helm|falco|opa|olm|tbaction|krew|helm-plugin|tekton-task|keda-scaler|coredns|keptn|tekton-pipeline|kubewarden|gatekeeper|kyverno|container)\//; diff --git a/web/src/utils/repoKind.test.tsx b/web/src/utils/repoKind.test.tsx index baec29a5..6ccd9be0 100644 --- a/web/src/utils/repoKind.test.tsx +++ b/web/src/utils/repoKind.test.tsx @@ -63,6 +63,10 @@ describe('repoKind', () => { expect(methods.getRepoKind('gatekeeper')).toBe(RepositoryKind.Gatekeeper); }); + it('kyverno', () => { + expect(methods.getRepoKind('kyverno')).toBe(RepositoryKind.Kyverno); + }); + it('unknown', () => { expect(methods.getRepoKind('unknown')).toBeNull(); }); @@ -129,6 +133,10 @@ describe('repoKind', () => { expect(methods.getRepoKindName(RepositoryKind.Gatekeeper)).toBe('gatekeeper'); }); + it('kyverno kind', () => { + expect(methods.getRepoKindName(RepositoryKind.Kyverno)).toBe('kyverno'); + }); + it('unknown kind', () => { expect(methods.getRepoKindName(20)).toBeNull(); }); diff --git a/web/src/utils/repoKind.ts b/web/src/utils/repoKind.ts index 27fd9cbe..76b2bf1d 100644 --- a/web/src/utils/repoKind.ts +++ b/web/src/utils/repoKind.ts @@ -32,6 +32,8 @@ const getRepoKind = (repoName: string): RepositoryKind | null => { return RepositoryKind.Kubewarden; case 'gatekeeper': return RepositoryKind.Gatekeeper; + case 'kyverno': + return RepositoryKind.Kyverno; default: return null; } @@ -69,6 +71,8 @@ const getRepoKindName = (repoKind: RepositoryKind): string | null => { return 'kubewarden'; case RepositoryKind.Gatekeeper: return 'gatekeeper'; + case RepositoryKind.Kyverno: + return 'kyverno'; default: return null; } diff --git a/widget/public/index.html b/widget/public/index.html index 1af3fc03..b70b48c4 100644 --- a/widget/public/index.html +++ b/widget/public/index.html @@ -9,6 +9,7 @@ +

Capabilities PSP: A Pod Security Policy that controls Container Capabilities

— Open in Artifact Hub

artifact-hub: Artifact Hub is a web-based application that enables finding, installing, and publishing Kubernetes packages.

— Open in Artifact Hub
diff --git a/widget/src/layout/Widget.tsx b/widget/src/layout/Widget.tsx index e7a29325..d12c321d 100644 --- a/widget/src/layout/Widget.tsx +++ b/widget/src/layout/Widget.tsx @@ -79,6 +79,8 @@ const getRepoKindName = (repoKind: RepositoryKind): string | null => { return 'kubewarden'; case RepositoryKind.Gatekeeper: return 'gatekeeper'; + case RepositoryKind.Kyverno: + return 'kyverno'; default: return null; } diff --git a/widget/src/layout/common/Image.test.tsx b/widget/src/layout/common/Image.test.tsx index 41a2ee75..b2d19c41 100644 --- a/widget/src/layout/common/Image.test.tsx +++ b/widget/src/layout/common/Image.test.tsx @@ -130,6 +130,13 @@ describe('Image', () => { expect(image).toHaveProperty('src', 'https://localhost:8000/static/media/placeholder_pkg_gatekeeper.png'); }); + it('renders Kyverno icon', () => { + render(); + const image = screen.getByAltText('alt image'); + expect(image).toBeInTheDocument(); + expect(image).toHaveProperty('src', 'https://localhost:8000/static/media/placeholder_pkg_kyverno.png'); + }); + it('renders placeholder icon', () => { render(icon} />); expect(screen.getByText('icon')).toBeInTheDocument(); diff --git a/widget/src/layout/common/Image.tsx b/widget/src/layout/common/Image.tsx index a2d99242..47b50ad1 100644 --- a/widget/src/layout/common/Image.tsx +++ b/widget/src/layout/common/Image.tsx @@ -59,6 +59,8 @@ const Image = (props: Props) => { return '/static/media/placeholder_pkg_kubewarden.png'; case RepositoryKind.Gatekeeper: return '/static/media/placeholder_pkg_gatekeeper.png'; + case RepositoryKind.Kyverno: + return '/static/media/placeholder_pkg_kyverno.png'; default: return PLACEHOLDER_SRC; } diff --git a/widget/src/layout/common/RepositoryIcon.tsx b/widget/src/layout/common/RepositoryIcon.tsx index 589dcb59..41222d83 100644 --- a/widget/src/layout/common/RepositoryIcon.tsx +++ b/widget/src/layout/common/RepositoryIcon.tsx @@ -27,6 +27,7 @@ const ICONS: IconsList = { [RepositoryKind.Container]: , [RepositoryKind.Kubewarden]: , [RepositoryKind.Gatekeeper]: , + [RepositoryKind.Kyverno]: , }; const RepositoryIcon = (props: Props) => ( diff --git a/widget/src/layout/common/RepositoryIconLabel.tsx b/widget/src/layout/common/RepositoryIconLabel.tsx index 74ed1c4b..a7aacca2 100644 --- a/widget/src/layout/common/RepositoryIconLabel.tsx +++ b/widget/src/layout/common/RepositoryIconLabel.tsx @@ -76,6 +76,10 @@ const REPOSITORY_KINDS: RepoKindDef[] = [ kind: RepositoryKind.Gatekeeper, name: 'Gatekeeper policy', }, + { + kind: RepositoryKind.Kyverno, + name: 'Kyverno policy', + }, ]; const Wrapper = styled('span')` diff --git a/widget/src/layout/common/SVGIcons.test.tsx b/widget/src/layout/common/SVGIcons.test.tsx index 93f22321..828d0019 100644 --- a/widget/src/layout/common/SVGIcons.test.tsx +++ b/widget/src/layout/common/SVGIcons.test.tsx @@ -98,6 +98,11 @@ describe('SVGIcons', () => { expect(screen.getByTitle('gatekeeper')); }); + it('renders kyverno icon', () => { + render(); + expect(screen.getByTitle('kyverno')); + }); + it('does not render when name is not in the list', () => { render(); expect(screen.getByTestId('iconWrapper')).toBeEmptyDOMElement(); diff --git a/widget/src/layout/common/SVGIcons.tsx b/widget/src/layout/common/SVGIcons.tsx index 275ddd10..72e08ec4 100644 --- a/widget/src/layout/common/SVGIcons.tsx +++ b/widget/src/layout/common/SVGIcons.tsx @@ -849,6 +849,38 @@ const SVGIcons = (props: Props) => ( ); + case 'kyverno': + return ( + + {props.name} + + + + + + + + + + + + ); + default: return null; } diff --git a/widget/src/types.ts b/widget/src/types.ts index 1288974a..a3f98ae3 100644 --- a/widget/src/types.ts +++ b/widget/src/types.ts @@ -38,6 +38,7 @@ export enum RepositoryKind { Container, Kubewarden, Gatekeeper, + Kyverno, } export interface SearchResults {