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

Devfile components sync support #2473

Closed
3 tasks
rajivnathan opened this issue Dec 17, 2019 · 4 comments · Fixed by #2681
Closed
3 tasks

Devfile components sync support #2473

rajivnathan opened this issue Dec 17, 2019 · 4 comments · Fixed by #2681
Assignees
Labels
area/devfile-spec Issues or PRs related to the Devfile specification and how odo handles and interprets it. kind/feature Categorizes issue as a feature request. For PRs, that means that the PR is the implementation
Projects

Comments

@rajivnathan
Copy link
Contributor

rajivnathan commented Dec 17, 2019

Related to #2470

  • Implement source syncing to containers within a fat pod.
  • Ignore files in .gitignore
  • Sync delta changes instead of entire source
@rajivnathan
Copy link
Contributor Author

/area devfile

@openshift-ci-robot openshift-ci-robot added the area/devfile-spec Issues or PRs related to the Devfile specification and how odo handles and interprets it. label Dec 18, 2019
@girishramnani girishramnani added the kind/feature Categorizes issue as a feature request. For PRs, that means that the PR is the implementation label Jan 6, 2020
@rajivnathan rajivnathan changed the title Devfile sync support Devfile components sync support Jan 7, 2020
@johnmcollier
Copy link
Member

/assign @johnmcollier

@johnmcollier
Copy link
Member

As discussed on the odo dev meeting today:

  • We'll keep the existing watch and sync technology, it works fine as-is, and should work well with Devfile projects
  • Current sync function can only sync to one container
  • As Devfile projects may deploy fat / multi-container pods, we may need to sync the source code to multiple containers, so need to modify the sync function to support that
    • However, we don't want to sync to every container
  • We'll use the mountsources field in the devfile to determine which containers need access to the source code, and have a single shared volume with the source that those containers would mount
    • Means we only need to sync once

@girishramnani girishramnani added this to For consideration in Sprint 180 via automation Feb 12, 2020
@johnmcollier
Copy link
Member

Updating the plan for Devfile syncing:

  • When creating the deployment for devfiles, create an emptyDir volume and mount it under /projects
    • /projects is the default mount path for projects in Che with devfiles
  • If a component has mountSources: true set in it, we'll mount the emptyDir volume to it
  • When syncing, we'll sync the source code to the first container we found that had set mountSources: true.
    • No need to sync across the other containers since they will be sharing the same volume.

@elsony elsony moved this from For consideration to To do in Sprint 180 Feb 14, 2020
@elsony elsony moved this from To do to In progress in Sprint 180 Feb 19, 2020
@elsony elsony added this to For consideration in Sprint 181 via automation Mar 10, 2020
@elsony elsony moved this from For consideration to In progress in Sprint 181 Mar 10, 2020
@girishramnani girishramnani removed this from In progress in Sprint 180 Mar 11, 2020
Sprint 181 automation moved this from In progress to Done Mar 12, 2020
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
area/devfile-spec Issues or PRs related to the Devfile specification and how odo handles and interprets it. kind/feature Categorizes issue as a feature request. For PRs, that means that the PR is the implementation
Projects
No open projects
Sprint 181
  
Done
Development

Successfully merging a pull request may close this issue.

4 participants