Skip to content

Pull application from cluster (Devfile as a ConfigMap in the cluster) #5869

Open
@rm3l

Description

@rm3l

User Story

  • As on odo user
  • I want to be able to import/pull application running on the cluster (I don't have it's devfile, and I don't know where the source code is)
  • So that I can make changes to the application and run it with my changes

Acceptance Criteria

  • It should sync the Devfile content to a ConfigMap in the cluster
    - [ ] It should watch for changes to this ConfigMap and handle them in its reconcile loop
  • This ConfigMap should be the parent Kubernetes owner object of all the other objects odo creates (Deployments, Services, ...)
  • This ConfigMap should be used whenever we need to retrieve all Kubernetes objects that pertain to the Devfile
  • Leave room for extension in the ConfigMap spec
  • Make sure the naming scheme allows to store this in a shared namespace. Naming scheme should be consistent with what will be done in Allow multiple odo users share one namespace #5862
  • Update odo delete logic to use this
  • Make sure Devfile changes are handled even if the devfile.yaml is Git-ignore'd. For example, changes to the commands in the Devfile should cause the commands to be restarted in the container. See odo dev: react to changes as soon as possible #5933 (comment)
  • It should also not break the --no-watch flag

Notes

  • side effect odo codebase could be simplified (e.g., ownerReferences / deletion handling, selecting all dependent resources)

- Use new approach based on reconcile loop POC: https://github.com/feloy/odo-dev-controller-poc

Links

/kind user-story

Metadata

Metadata

Assignees

No one assigned

    Labels

    kind/user-storyAn issue of user-story kindlifecycle/frozenIndicates that an issue or PR should not be auto-closed due to staleness.priority/LowNice to have issue. It's not immediately on the project roadmap to get it done.

    Type

    No type

    Projects

    Status

    No status

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions