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

Add dependency check for current child samples #1142

Closed
michael-valdron opened this issue Jun 21, 2023 · 15 comments · Fixed by devfile/registry#397
Closed

Add dependency check for current child samples #1142

michael-valdron opened this issue Jun 21, 2023 · 15 comments · Fixed by devfile/registry#397
Assignees
Labels
area/ci area/registry Devfile registry for stacks and infrastructure

Comments

@michael-valdron
Copy link
Member

michael-valdron commented Jun 21, 2023

Which area/kind this issue is related to?

/area ci
/area registry

Issue Description

In order to ensure our current child samples remain compatible with changes to their parent stacks, a dependency check on these samples will be necessary to prevent breaking changes from being introduced to the parents. This dependency check should be run on all PRs made to the community registry repository.

We need to:

  1. Set up a dependency tree that shows the current child samples for each parent stack
  2. Triggers the testing of child samples as part of the PR tests of the parent stacks

The auto-generated dependency tree and inclusion of additional child stacks/samples are planned in the upcoming #1060 changes.

@michael-valdron
Copy link
Member Author

Targeting this issue for next sprint to focus on higher prior items.

@michael-valdron michael-valdron moved this from To Do 📝 to In Progress 🚧 in Devfile Project Jul 14, 2023
@michael-valdron
Copy link
Member Author

michael-valdron commented Jul 14, 2023

For the parent stack dependency tree we can use a parents.yaml file which could be built from a script that runs nightly.

Proposed parents file:

parents:
  stack1_name:
    children:
      - name: child1_name
      - name: child2_name
        version: 1.0.2
  stack2_name:
    version: 1.1.0
    children:
      - name: child3_name

@elsony
Copy link
Contributor

elsony commented Jul 14, 2023

How quick is the script to build the parent.yaml? If the generation of the script is quick, can we just generate it on the fly instead of storing it as part of the repo? The issue with running nightly is what if the PR introduces a new dependency? Then the PR build may not be able to trigger the dependent child test run.

@michael-valdron
Copy link
Member Author

How quick is the script to build the parent.yaml? If the generation of the script is quick, can we just generate it on the fly instead of storing it as part of the repo? The issue with running nightly is what if the PR introduces a new dependency? Then the PR build may not be able to trigger the dependent child test run.

@elsony I'll need to look into building the file using multiple versions but yeah this makes for sense on the fly over nightly due to it building fast enough and getting the recent sample changes in real-time. I could still build this yaml in the check script then passing it into the Go test suite to be worked on.

@michael-valdron
Copy link
Member Author

Proposed parents file:

parents:
  stack1_name:
    children:
      - name: child1_name
      - name: child2_name
        version: 1.0.2
  stack2_name:
    version: 1.1.0
    children:
      - name: child3_name

Revised parents yaml based on multiple parent versions:

parents:
  - name: stack1_name
    children:
      - name: child1_name
      - name: child2_name
        version: 1.0.2
  - name: stack2_name
    version: 1.1.0
    children:
      - name: child3_name
  - name: stack2_name
    version: 1.2.0
    children:
      - name: child3_name
      - name: child4_name

@michael-valdron
Copy link
Member Author

Have created test suite for validating child samples, continuing to work out errors and fit multi versions for both stacks and samples. Targeting next sprint to accomplish this.

@michael-valdron
Copy link
Member Author

Have created test suite for validating child samples, continuing to work out errors and fit multi versions for both stacks and samples. Targeting next sprint to accomplish this.

Additional test suite has been scrapped for reuse of existing test suite for stack validation, some stack testing cannot be reused and is omitted from these additions.

@michael-valdron michael-valdron moved this from In Progress 🚧 to In Review 👀 in Devfile Project Jul 26, 2023
@michael-valdron
Copy link
Member Author

Ready for review: devfile/registry#195

@michael-valdron
Copy link
Member Author

Investigating a problem with the validate devfile schema test suite: devfile/registry#195 (comment)

@michael-valdron
Copy link
Member Author

Investigating a problem with the validate devfile schema test suite: devfile/registry#195 (comment)

Continuing in Sprint 245 due to vacation leave.

@thepetk
Copy link
Contributor

thepetk commented Aug 9, 2023

Moved item to 245 as requested

@michael-valdron michael-valdron moved this from In Review 👀 to To Do 📝 in Devfile Project Aug 28, 2023
@michael-valdron
Copy link
Member Author

Change in priority this sprint requires my focus on other issues at this time.

@michael-valdron michael-valdron moved this from To Do 📝 to Backlog in Devfile Project Sep 6, 2023
@michael-valdron michael-valdron moved this from Backlog to Refinement in Devfile Project Nov 28, 2023
@Jdubrick Jdubrick moved this from Refinement to Backlog in Devfile Project Jan 18, 2024
@michael-valdron
Copy link
Member Author

michael-valdron commented Apr 18, 2024

Repriorizing this issue to be planned for resuming in upcoming sprint due to issues caused by recent changes to parent stacks, increasing priority to critical.

@michael-valdron michael-valdron moved this from Backlog to To Do 📝 in Devfile Project Apr 30, 2024
@michael-valdron michael-valdron moved this from To Do 📝 to In Progress 🚧 in Devfile Project May 14, 2024
@michael-valdron
Copy link
Member Author

Failures of cache_samples.sh helper script (#1553) is blocking this issue.

@michael-valdron michael-valdron moved this from In Progress 🚧 to In Review 👀 in Devfile Project May 23, 2024
@michael-valdron
Copy link
Member Author

PR ready for review: devfile/registry#397

@github-project-automation github-project-automation bot moved this from In Review 👀 to Done ✅ in Devfile Project May 28, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
area/ci area/registry Devfile registry for stacks and infrastructure
Projects
Status: Done ✅
3 participants