Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Design Kyma CLI flow for basic kyma use case #2221

Open
kwiatekus opened this issue Sep 26, 2024 · 1 comment
Open

Design Kyma CLI flow for basic kyma use case #2221

kwiatekus opened this issue Sep 26, 2024 · 1 comment
Assignees

Comments

@kwiatekus
Copy link
Contributor

kwiatekus commented Sep 26, 2024

Description

Propose how to combine kyma CLI into the following scenario (not every step must necessarily mean a new kyma cli command).

I have empty cluster (SKR)

  • explore what are available modules to enable
  • explore what capabilities are available via api-gateway module (info)
  • explore what CRDs are available via api-gateway module (API-Rule)
  • enable module api-gateway
  • check status of api-gateway (read config, state)
  • explore what capabilities are available via btp-operator module (info)
  • explore what CRDs are available via btp-operator module (Service Instance, Service Binding)
  • enable module btp-operator
  • check status of btp-operator (read config, state)
  • explore what capabilities are available via docker-registry module (info)
  • enable docker-registry
  • explore what CRDs are available via CloudManager module (NFSStorage)
  • enable module cloud-manager (& check status)
  • create NFS storage via cloud manager
  • inspect the status of nfs storage - learn the PVC name
  • configure docker-registry (expose it and set the storage by referencing pvc from cloud manager)
  • create reference instance to a shared btp object store service (this command already exists among alpha commands)
  • create binding to the instance
  • view the status of binding - learn the secret name
  • Implement a simple CRUD service that use btp object store (consumes the mounted secret via sap cloud sdk) -> Dockerfile
  • Read docker registry config (config.json) from docker registry CR
  • Login into docker registry via Docker CLI (using config.json)
  • push image (from dockerfile)
  • create deployment for the service ( using image url)
  • expose the service using api rule

Reason
The goal of this excercise is to design what could be the kyma CLI commands based on a real life scenario
Kyma cli should allow to interact with resources that kyma brings on top of kubernetes.

@pPrecel
Copy link
Contributor

pPrecel commented Sep 26, 2024

Commands

I collected all current commands and located them in three categories. This may help with designing new commands.

Current (grouped) commands

These commands should be still in the CLI but maybe we should refactor/redesign them

# utils/scripts
kyma alpha access # <- produce kubeconfig for given cluster 

# module management
kyma alpha modules # <- list available modules based on PB JSON
kyma alpha add # <- add deploy community-module based on PB JSON
kyma alpha add managed # <- add kyma-module to the Kyma CR
kyma alpha remove # <- remove deployed community-module based on PB JSON
kyma alpha remove managed # <- remove kyma-module from the Kyma CR

# module resources
kyma alpha image-import # <- import image from local docker daemon to the cluster using port-forward (kyma docker-registry image-import / import)
kyma alpha reference-instance # <- add instance ref to shared svc instance (btp) (kyma btp-operator reference-instance)

Comands to remove

As in the title

# utils??
kyma alpha provision # <- provision kyma on btp

Commands to redefine

We don't decided what to do with these commands

# utils/scripts
kyma alpha oidc # <- create kubeconfig with oidc token

# these commands are related with btp-operator but for example map looks like util/script
kyma alpha hana
kyma alpha hana check
kyma alpha hana credentials
kyma alpha hana delete
kyma alpha hana map
kyma alpha hana provision

@kwiatekus kwiatekus assigned kwiatekus and Cortey and unassigned kwiatekus Sep 30, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

3 participants