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

Support image component and deploy devfile command / initial odo deploy implementation #5109

Closed
2 tasks done
Tracked by #2756
kadel opened this issue Oct 1, 2021 · 10 comments
Closed
2 tasks done
Tracked by #2756
Labels
area/deploy Issues or PRs specific to the `odo deploy` command kind/user-story An issue of user-story kind priority/High Important issue; should be worked on before any other issues (except priority/Critical issue(s)).
Milestone

Comments

@kadel
Copy link
Member

kadel commented Oct 1, 2021

/kind user-story

User Story

As a developer I want to be able to use devfile.yaml with outer loop support (using devfile's image component and deploy command)

Acceptance Criteria

Links

Implementation notes

  • odo deploy should use local machine to build the image
  • autodetect and use container engine that is available on the local machine (we will start with podman or docker)
  • interaction with container engine? Executing cli vs apis (https://docs.podman.io/en/latest/_static/api.html, https://docs.docker.com/engine/api/) Starting with simply executing cli might be easier, as both podman and docker have more or less same interface)
  • there is no odo or devfile specific way to handle image registry credentials, it will reduce whatever is configured for local container engine (set by docker login or podman login)

Open questions:

  • how to make sure that application deployed using odo push doesn't collide with odo deploy?

/kind user-story

@openshift-ci openshift-ci bot added the kind/user-story An issue of user-story kind label Oct 1, 2021
@kadel kadel added area/deploy Issues or PRs specific to the `odo deploy` command priority/High Important issue; should be worked on before any other issues (except priority/Critical issue(s)). labels Oct 1, 2021
@kadel kadel changed the title odo deploy initial odo deploy implementation Oct 1, 2021
@kadel kadel changed the title initial odo deploy implementation Support image component and deploy devfile command / initial odo deploy implementation Oct 4, 2021
@scottkurz
Copy link
Contributor

Just reacting to:

there is no odo or devfile specific way to handle image registry credentials, it will reduce whatever is configured for local container engine

There is this example in the outer loop proposal.

Maybe that'd be good for a later issue/story.

@kadel
Copy link
Member Author

kadel commented Oct 12, 2021

Just reacting to:

there is no odo or devfile specific way to handle image registry credentials, it will reduce whatever is configured for local container engine

There is this example in the outer loop proposal.

Maybe that'd be good for a later issue/story.

@scottkurz It looks like this did not get into the first draft of the specification.

There is no envFrom property in current Devfile 2.2.0 spec (https://devfile.io/docs/devfile/2.2.0/user-guide/api-reference.html)

And I would say that that is a good thing. We are starting with local build and referencing secrets from cluster would be tricky, and I'm not sure that this is what would users expect.

We can look into this later once we start thinking about remote (in cluster) builds.

@serenamarie125 serenamarie125 added this to the 2.5 (planning) milestone Oct 13, 2021
@dharmit
Copy link
Member

dharmit commented Oct 14, 2021

For the first iteration:

  • fetching devfile and all the manifest is out of the scope. We better create our own sample and simple manifests.
  • add support for "composite" commands which odo doesn't have right now Add support for composite run commands #5054

High level scope for Sprint 209:

  • add support for building images using podman and docker in the first iteration (using os.Exec, no APIs)
  • add support for composite commands (@kadel to provide an example other than a devfile that has deploy)

@kadel
Copy link
Member Author

kadel commented Oct 15, 2021

  • add support for building images using podman and docker in the first iteration (using os.Exec, no APIs)

created #5145 to capture this

  • add support for composite commands (@kadel to provide an example other than a devfile that has deploy)

issue already exists #5054
I'll add example to #5054

While looking at #5054 I figured out that odo already supports composite commands (for example as build commands) problem is only with composite commands as run commands, this is due to the fact that odo executes run commands via supervisor, so it is a bit trickier.
But for deploy command we should not have this problem, so the current way of handling composite commands that is alredy there for build should work

@serenamarie125
Copy link

@kadel is it fair to say that we will support devfile 2.2 with this?

@kadel
Copy link
Member Author

kadel commented Nov 22, 2021

@kadel is it fair to say that we will support devfile 2.2 with this?

yes, this was only new thing added in 2.2, so after this is implemented we can say that odo supports devfile 2.2

@dharmit
Copy link
Member

dharmit commented Nov 23, 2021

@kadel can you open an issue for odo undeploy or odo deploy --delete whatever it is that we would want to use to delete the resource deployed by odo deploy?

Also, should we have some command to show the user a list of resources (deployed by odo deploy) along with their state? I'm drawing parallels with odo component list command, which tells the user if the component is pushed. Similarly odo url list, odo service list. How would a user know the state of the resources created by odo deploy?

@kadel
Copy link
Member Author

kadel commented Nov 24, 2021

@kadel can you open an issue for odo undeploy or odo deploy --delete whatever it is that we would want to use to delete the resource deployed by odo deploy?

#5246

Also, should we have some command to show the user a list of resources (deployed by odo deploy) along with their state? I'm drawing parallels with odo component list command, which tells the user if the component is pushed. Similarly odo url list, odo service list. How would a user know the state of the resources created by odo deploy?

@dharmit feel free to create issue for that

@kadel
Copy link
Member Author

kadel commented Dec 9, 2021

implemented in #5228
/close

@openshift-ci openshift-ci bot closed this as completed Dec 9, 2021
@openshift-ci
Copy link

openshift-ci bot commented Dec 9, 2021

@kadel: Closing this issue.

In response to this:

implemented in #5228
/close

Instructions for interacting with me using PR comments are available here. If you have questions or suggestions related to my behavior, please file an issue against the kubernetes/test-infra repository.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
area/deploy Issues or PRs specific to the `odo deploy` command kind/user-story An issue of user-story kind priority/High Important issue; should be worked on before any other issues (except priority/Critical issue(s)).
Projects
None yet
Development

No branches or pull requests

4 participants