Skip to content

Plugin CI run on Buildkite#113

Draft
mashhurs wants to merge 17 commits into1.xfrom
mashhurs-1.x
Draft

Plugin CI run on Buildkite#113
mashhurs wants to merge 17 commits into1.xfrom
mashhurs-1.x

Conversation

@mashhurs
Copy link
Copy Markdown
Contributor

Release notes

What does this PR do?

Why is it important/What is the impact to the user?

Checklist

  • My code follows the style guidelines of this project
  • I have commented my code, particularly in hard-to-understand areas
  • I have made corresponding changes to the documentation
  • I have made corresponding change to the default configuration files (and/or docker env variables)
  • I have added tests that prove my fix is effective or that my feature works

Author's Checklist

  • [ ]

How to test this PR locally

Related issues

Use cases

Screenshots

Logs

return " - ".join(parts)


def step_key(prefix, env, index=None):
Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I'm a bit concerned here that there are possible duplicate step names depending on the configuration of the matrix. As I've run in to before, if you try to dynamically build steps and they get the same name BK will reject the pipeline when you try to load it. I'm assuming that is wha the index key is for? Essentially i'm wondering how we guarantee that we will have unique step names, especially in the case where multiple cells have the same versions but different ENV vars.

# Jobs format: explicit env strings per step
for i, group_cfg in enumerate(base_matrix["jobs"]):
groups.append(build_base_jobs_group(group_cfg, default_env, i))
else:
Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

How is this whole block ever encountered? I'm not seeing how jobs wont be in base_matrix. I must be minsunderstadning what base_matrix is...

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I have the same question. How does a plugin run into "stream" format? Are you expecting each plugin has a local base-pr-test-matrix.yml to override the share one? But looking at the command SHARED_CI_DIR=/tmp/ci PLUGIN_DIR=$(pwd) I don't see how the merge happens.

@kaisecheng
Copy link
Copy Markdown
Contributor

@mashhurs Could you include sample input files, commands, and output results to demonstrate how "stream" and "job" formats are triggered?
It would be helpful to list all env variables involved in the build process, along with their description.

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

Successfully merging this pull request may close these issues.

3 participants