monokle icon indicating copy to clipboard operation
monokle copied to clipboard

Add a way to import validate Unknown resources like ArgoCD / ExternalSecrets etc...

Open slamer59 opened this issue 3 years ago • 4 comments

Is your feature request related to a problem? Please describe. Today any CRD resource are put under Unknow resources

For exemple here the resource is of Jaeger kind : image

Describe the solution you'd like Add the ability to load those definition into Monokle so we can validate those resources like any standards one

  • point to a URL containing those definition. With Lens application we can add helm repo like this. image
  • put files directly

Describe alternatives you've considered We can add the to the project but it is not really good option (for exemple in GitOps I don't want to push them). We can also do

if you don't want to add them to your project (understandable..) you could first open a separate project/folder (or browse a cluster) containing these CRDs - Monokle will learn/remember them until it it is restarted... as suggested by @olensmar

Additional context This is where (I think) are defined the CRD for Jaeger

https://github.com/jaegertracing/jaeger-operator/tree/8695866b4c71af5967f2b567c3280757af647561/config/crd

slamer59 avatar Sep 16 '22 11:09 slamer59

thanks for this @slamer59 - digging in!

olensmar avatar Sep 19 '22 05:09 olensmar

Hey. We are currently finalizing a preliminary solution for this that we hope it will be included in 1.11 when we release in a few day, and we will be then improving it in following versions with better UX. I hope you can test the new version and give us some feedback so our UX is great!

chargio avatar Sep 27 '22 14:09 chargio

Hi @slamer59 , we've released the 1.11 version of Monokle and have included a solution for registering and persisting CRDs.

image

In the Validation tab there is now a Panel that lists all the CRDs that are registered in Monokle.

You can register new CRDs using any URL that points to the YAML content of a CRD. With the Jaeger example that you provided, I was able to register the CRDs with the following URL: https://raw.githubusercontent.com/jaegertracing/jaeger-operator/8695866b4c71af5967f2b567c3280757af647561/config/crd/bases/jaegertracing.io_jaegers.yaml

Additionally, any CRDs that Monokle will find in the local files of your project or in the resources loaded from the cluster, will now be saved & registered in this panel.

Download the 1.11 release from here: https://github.com/kubeshop/monokle/releases/tag/v1.11.0

Any feedback from you regarding this feature will be very valuable to us because we plan to extend and improve this feature in the following weeks. Thank you!

devcatalin avatar Oct 03 '22 13:10 devcatalin

Hello, here is my test. I tested it in a GitOps monorepo. All my apps are defined on a subfolder. For feeling it is great !

Feedback (tell me if you want to open one issue)

  • I wish I could have added a folder or "folder URL" in git-like. This require to integrate github / gitlab way of managing git repo to extract this information. For exemple this contains many CRD https://github.com/vmware-tanzu/velero/tree/main/config/crd/

  • I wonder if Monokle reads in tar.gz charts ? I have ExternalSecrets operators but it is not validated. image

When this operator is in the same parent folder. I think Monokle cannot found CRD for file cluster-secret-store.yaml in external-secrets-0.5.8.tgz here is a summary of the tree:

├── argocd
│   ├── applications
│   │   ├── gooddata.yaml
│   │   ├── helm
│   │   │   ├── my-app
│   │   │   │   ├── Chart.lock
│   │   │   │   ├── charts
│   │   │   │   │   └── myapp-0.20.1.tgz
│   │   │   │   ├── Chart.yaml
│   │   │   │   ├── README.md
│   │   │   │   ├── templates
│   │   │   │   │   ├── cluster-secret-store.yaml
│   │   │   │   └── values.yaml
│   ├── operators
│   │   ├── external-secrets-operator
│   │   │   ├── Chart.lock
│   │   │   ├── charts
│   │   │   │   └── external-secrets-0.5.8.tgz
│   │   │   ├── Chart.yaml
│   │   │   ├── README.md
│   │   │   └── values.yaml
  • It seems like we need to reopen Monokle to refresh
  • I cannot test the feedback before since I cannot delete registered CRD
  • What happened when we have two times the same CRD ?

slamer59 avatar Oct 04 '22 09:10 slamer59

Hey. Thanks for your feedback. Actually some of your current concerns have been addressed in 1.12 (soon to be released)

chargio avatar Oct 20 '22 07:10 chargio

One quick question. Can you elaborate on the support for tar.gz files? Are you using git repos in tar files to store CRD between different repos? There can be more things in the tar file, so why not extracting the files into a folder and then open it?

chargio avatar Oct 21 '22 06:10 chargio

Yes sure. It might not be just for CRD but I usually do helm dependency update before pushing to the repo. By default, helm keep them packed.

After that gitops pull my repo and have all to proceed.

I can do that but it is for all my apps and git will see them as new files so I will need to clean it aftwards.

Le ven. 21 oct. 2022, 08:55, Sergio Ocón-Cárdenas @.***> a écrit :

One quick question. Can you elaborate on the support for tar.gz files? Are you using git repos in tar files to store CRD between different repos? There can be more things in the tar file, so why not extracting the files into a folder and then open it?

— Reply to this email directly, view it on GitHub https://github.com/kubeshop/monokle/issues/2351#issuecomment-1286537405, or unsubscribe https://github.com/notifications/unsubscribe-auth/AGA4VSHGFQN6YRHHYECBI43WEI463ANCNFSM6AAAAAAQOIM64Y . You are receiving this because you were mentioned.Message ID: @.***>

slamer59 avatar Oct 21 '22 17:10 slamer59

Adding this to the overhaul we are doing of the Helm + CRD capabilities. We have some other things to do but we are trying to add this soon. Would you have a link to the documentation in the Helm repo for this? I want to make sure we are covering the use case properly.

chargio avatar Nov 15 '22 10:11 chargio

Hey I am a newcomer in this project and I would like to contribute

govind15496 avatar Jan 05 '23 16:01 govind15496

Closing - we have #2786 as a follow up

olensmar avatar May 11 '23 08:05 olensmar