Skip to main content

Custom CRDs

In addition to built-in Kubernetes API resources, it is possible to use Port's Kubernetes exporter to export and map CRDs from your Kubernetes cluster.

We created several pre-built Port K8s exporter templates, which use CRD exporting, for a quick start when using common 3rd party k8s tools.

It is also possible to write custom CRD export templates for any additional CRDs you might use in your Kubernetes clusters. To obtain all the resource types you can query in your cluster, you can run:

$ kubectl api-resources

For example, to figure out how to map your ArgoCD resources, you can run:

$ kubectl api-resources | grep -i argo
applications app,apps argoproj.io/v1alpha1 true Application
applicationsets appset,appsets argoproj.io/v1alpha1 true ApplicationSet
appprojects appproj,appprojs argoproj.io/v1alpha1 true AppProject

Then, to map ArgoCD applications, add the matching resource kind to your exporter configuration:

- kind: argoproj.io/v1alpha1/applications
identifier: .metadata.name
blueprint: '"argoApp"'
properties:
...