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

Determine the architecture(s) during the source build for a dynamic matrix of architectures for the binary job #207

Open
Centuriondan opened this issue Nov 6, 2018 · 3 comments

Comments

@Centuriondan
Copy link

For Devuan we are using matrix to build multiple architectures of a single build request - but currently the architectures are hardcoded at job creation time. I'd like to make this dynamic, so we can at build time select either a subset or all currently available buildable architectures. (It will allow for adding new architectures to the repositories later or (re)building only a single architecture.

I expect the process would go something like this:

  1. A label "architectures" can be specified as part of the source job with possible values being the same as those supported by the Architecture: field in the control file Package: stanza.
  2. The source build reads the debian/control file to determine the broadest selection of architectures that the package needs built
  3. The architectures label is modified based on:
  • Any architecture in the label not supported by the control file selection of architectures is dropped from the label.
  • If only a subset of architectures are listed in the label then those architectures remain.
  • If no architectures are set in the label then all the supported architectures will be built.

The key benefits of this approach would be:

  • a much simpler process to setup the jobs for each package
  • dynamic detection of supported architectures at build time
  • build time selection of a subset of architectures to run
@Centuriondan Centuriondan changed the title Determine the architecture(s) during the source build for a dynamic matrix of architectures to build Determine the architecture(s) during the source build for a dynamic matrix of architectures for the binary job Nov 6, 2018
@mika
Copy link
Owner

mika commented Nov 6, 2018

That would be fantastic if that would work :)

@Centuriondan
Copy link
Author

Centuriondan commented Nov 6, 2018

@mika: It's been on on my todo list for about 2 years... for Devuan we have a tool called devuan-release-bot which listens to gitlab for issues where we can command it to setup the jenkins jobs and build packages, and this would allow me to drop more then 30% of the spaghetti code (not my work) before I refactor that sucker ;-)

@mika
Copy link
Owner

mika commented Nov 6, 2018

Hehe, oh nice! :)

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

No branches or pull requests

2 participants