kubeshop / monokle

Monokle is a set of OSS tools designed to help create and maintain high-quality Kubernetes configurations throughout the application lifecycle
https://monokle.io
MIT License
1.79k stars 129 forks source link

Integrate with Cloud #4159

Closed olensmar closed 10 months ago

olensmar commented 1 year ago

As a user I would like to connect my local Monokle instance to my Monokle Cloud account, allowing me to use policies defined in Cloud for my projects locally. This includes the following "workflows":

I no way should this Cloud Integration be "intrusive" or give me the impression that I have to have a Cloud account to use Monokle Desktop - this is purely optional

julioramosest commented 1 year ago

@olensmar some follow-up questions:

julioramosest commented 1 year ago

UX and UI design (ongoing): https://www.figma.com/file/iDtnz4Gz9UF62acn4ccWOP/Cloud-integration?type=design&node-id=0%3A1&mode=design&t=6gamwssF5zLhTGxS-1

olensmar commented 1 year ago

thanks @julioramosest - answers:

@WitoDelnat @devcatalin please chime in to make sure I got this right..

WitoDelnat commented 1 year ago

Hi!

  1. iirc then in the VSC Extension we rely on it being a git repository and then match it based on the git remote. There the idea is to be as low-config as possible as you generally don't start configuring VSC repo per repo.
  2. Currently just policies, soon also suppressions; custom plugins & schemas

Remarks

julioramosest commented 1 year ago

@olensmar @WitoDelnat @devcatalin please check design (posted above) and make your remarks.

Right Wito - let's go with a flat list, I'll add workspace to the details of the project

julioramosest commented 1 year ago

I added search/filter/sort-by capabilities to the project selection dropdowns - useful for busy accounts

f1ames commented 1 year ago
  • Authenticate with Cloud to establish a connection

I guess it would be via device flow too? There are some GitHub login screens on the designs which are not needed in this case.

2. iirc then in the VSC Extension we rely on it being a git repository and then match it based on the git remote. There the idea is to be as low-config as possible as you generally don't start configuring VSC repo per repo.

Maybe we can have matching project (if there is one in a Cloud) as selected by default and then one can change if needed with dropdown?

Also, should we do https://github.com/kubeshop/monokle-core/issues/473 first (or in parallel) or duplicating this logic (auth related) will be fine for now (keep in mind we already have it duplicated in VSC and CLI)?

WitoDelnat commented 1 year ago

FYI, one remark is that suppressions will be linked from the project repository and not just the project so it might make sense that we already make this link explicit!