Skip to content

Conversation

jolivier23
Copy link
Contributor

@jolivier23 jolivier23 commented Aug 25, 2025

When building the new style RPMs, we need to publish dependencies to a different repo.
system-pipeline-lib uses the "product" and chooses the repo based on whether daos is in the name
so use this fact to publish dependencies, if built, to the dependency repo.

Change-Id: Iafe3932bbb7f2cfd5c5d2695cece9fa051130391

Change-Id: Iafe3932bbb7f2cfd5c5d2695cece9fa051130391
Signed-off-by: Jeff Olivier <[email protected]>
Change-Id: Ie77cb83f6aada50b9812809d233dbccabdb805a2
Signed-off-by: Jeff Olivier <[email protected]>
Change-Id: I8591a3b330ff624a03fba5fd7ca30d60688f9185
Signed-off-by: Jeff Olivier <[email protected]>
Comment on lines 93 to 112
if (config.get('new_rpm', false)) {
publishToRepository product: product,
format: repo_format,
maturity: 'stable',
tech: target,
repo_dir: 'artifacts/' + target
} else {
if (fileExists('artifacts/' + target + '/deps')) {
publishToRepository product: 'deps',
format: repo_format,
maturity: 'stable',
tech: target,
repo_dir: 'artifacts/' + target + '/deps'
}
publishToRepository product: product,
format: repo_format,
maturity: 'stable',
tech: target,
repo_dir: 'artifacts/' + target + '/daos'
}
Copy link
Contributor

@phender phender Aug 26, 2025

Choose a reason for hiding this comment

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

Should this last publishToRepository use repo_dir: 'artifacts/' + target such that the new daos RPMs are located in the same path as the old ones are currently? Assuming yes, then can't his just simplify down to:

Suggested change
if (config.get('new_rpm', false)) {
publishToRepository product: product,
format: repo_format,
maturity: 'stable',
tech: target,
repo_dir: 'artifacts/' + target
} else {
if (fileExists('artifacts/' + target + '/deps')) {
publishToRepository product: 'deps',
format: repo_format,
maturity: 'stable',
tech: target,
repo_dir: 'artifacts/' + target + '/deps'
}
publishToRepository product: product,
format: repo_format,
maturity: 'stable',
tech: target,
repo_dir: 'artifacts/' + target + '/daos'
}
if (fileExists('artifacts/' + target + '/deps')) {
publishToRepository product: 'deps',
format: repo_format,
maturity: 'stable',
tech: target,
repo_dir: 'artifacts/' + target + '/deps'
}
publishToRepository product: product,
format: repo_format,
maturity: 'stable',
tech: target,
repo_dir: 'artifacts/' + target

Copy link
Contributor Author

Choose a reason for hiding this comment

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

I've put the daos rpms in daos subdirectory. I don't think they can be in a higher level directory from 'deps' as I think that would cause deps to be pulled into daos.

Copy link
Contributor Author

Choose a reason for hiding this comment

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

Maybe we could do deps/ instead to avoid this?

Copy link
Contributor Author

Choose a reason for hiding this comment

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

Ok, I think this is better. Though now I need to refresh my other PR again. I discovered that it was not executing the code correctly as I had the if backwards

Change-Id: I328096c68ae698029681dd6cf3a833d0011fdfc6
Signed-off-by: Jeff Olivier <[email protected]>
Change-Id: I57921424330ebb1d5d8d1f01f47ec42a2c17ffbb
Signed-off-by: Jeff Olivier <[email protected]>
@jolivier23
Copy link
Contributor Author

If someone can review (and land this) it would unblock my other PR, which I think is doing what is desired now (should only build dependencies if there are no RPMs with the same version already built).

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.

2 participants