Skip to content

DAOS-19809 control: Enable multiprovider functionality - #19346

Open
kjacque wants to merge 8 commits into
masterfrom
kjacque/multiprovider-ux
Open

kjacque wants to merge 8 commits into
masterfrom
kjacque/multiprovider-ux

Conversation

@kjacque

@kjacque kjacque commented Oct 21, 2026 •

Copy link
Copy Markdown
Contributor

This patch enables user access to multiprovider functionality. Multi-provider access may be configured in the server and agent configuration files.

Features: control

Steps for the author:

  • Commit message follows the guidelines.
  • Appropriate Features or Test-tag pragmas were used.
  • Appropriate Functional Test Stages were run.
  • At least two positive code reviews including at least one code owner from each category referenced in the PR.
  • Testing is complete. If necessary, forced-landing label added and a reason added in a comment.

After all prior steps are complete:

  • Gatekeeper requested (daos-gatekeeper added as a reviewer).

This patch enables user access to multiprovider functionality.
Multi-provider access may be configured in the server and agent
configuration files.

Features: control

Signed-off-by: Kris Jacque <kris.jacque@hpe.com>
@kjacque kjacque self-assigned this Oct 21, 2026
@github-actions

github-actions Bot commented Oct 21, 2026 •

Copy link
Copy Markdown

Ticket title is 'Enable multiprovider configuration and user-facing output'
Status is 'In Review'
https://daosio.atlassian.net/browse/DAOS-19809

@kjacque kjacque added the control-plane work on the management infrastructure of the DAOS Control Plane label Oct 21, 2026
@daosbuild3

Copy link
Copy Markdown
Collaborator

Test stage Functional Hardware Medium MD on SSD completed with status FAILURE. https://jenkins-3.daos.hpc.amslabs.hpecorp.net//job/daos-stack/job/daos/view/change-requests/job/PR-19346/1/execution/node/1948/log

@kjacque

kjacque commented Oct 22, 2026

Copy link
Copy Markdown
Contributor Author

Failures:

The support collect log error is legitimate. I think this (otherwise unrelated) code is keying off from user-readable system query output instead of JSON. Will fix.

Features: control

Signed-off-by: Kris Jacque <kris.jacque@hpe.com>
@kjacque
kjacque marked this pull request as ready for review October 23, 2026 00:06
@kjacque
kjacque requested review from a team as code owners October 23, 2026 00:06
@kjacque
kjacque requested review from knard38, mjmac and tanabarr October 23, 2026 00:06
@daosbuild3

Copy link
Copy Markdown
Collaborator

Test stage Functional Hardware Medium MD on SSD completed with status UNSTABLE. https://jenkins-3.daos.hpc.amslabs.hpecorp.net/job/daos-stack/job/daos//view/change-requests/job/PR-19346/2/testReport/

@kjacque

kjacque commented Oct 23, 2026 •

Copy link
Copy Markdown
Contributor Author

GHA failure is unrelated: DAOS-19821

The only CI test failure is unrelated: https://daosio.atlassian.net/browse/DAOS-15518

@kjacque kjacque added the forced-landing The PR has known failures or has intentionally reduced testing, but should still be landed. label Oct 23, 2026
Comment thread src/control/lib/support/log.go
Comment thread src/control/server/engine/config.go Outdated
Comment thread src/control/server/engine/config.go Outdated
Comment thread src/control/server/engine/config.go
Features: control

Signed-off-by: Kris Jacque <kris.jacque@hpe.com>
Features: control

Signed-off-by: Kris Jacque <kris.jacque@hpe.com>
@kjacque
kjacque requested a review from knard38 October 28, 2026 21:51
@kjacque kjacque removed the forced-landing The PR has known failures or has intentionally reduced testing, but should still be landed. label Oct 28, 2026
Comment thread src/control/server/engine/config.go Outdated
@daosbuild3

Copy link
Copy Markdown
Collaborator

Test stage Functional Hardware Medium MD on SSD completed with status FAILURE. https://jenkins-3.daos.hpc.amslabs.hpecorp.net//job/daos-stack/job/daos/view/change-requests/job/PR-19346/4/execution/node/1845/log

Features: control

Signed-off-by: Kris Jacque <kris.jacque@hpe.com>
@kjacque
kjacque requested a review from knard38 October 29, 2026 23:06

@tanabarr tanabarr left a comment

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.

Is the administration guide up-to-date with multi- provider documentation? The config file updates look non- intuitive for the administrator and will needs clear instructions.
The comments I have made are nonblocking but could be considered for a future code improvements to improve clarity within the code.

[0-1] Joined
2 Stopped

System property self_heal flags disabled: exclude, pool_exclude, pool_rebuild

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.

nit, I think this probably would look better with the system property flags printed after the provider table

return strings.Join(result, MultiProviderSeparator)
}

fc.Provider = normalizeMultiprov(fc.Provider)

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.

shouldn't we be changing the names to plurals to make sure the naming continues to be accurate and intuitive? if the user could expect the strings to indicate multiple providers then we should be calling the struct field "Providers" so as with Interfaces and InterfacePorts.

if trimmed != "" {
result = append(result, trimmed)
}
if len(strs) == 1 && strs[0] == "" {

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.

maybe this could be handled with a "MultiValueString" type that handed the serialisation/deserialisation internally that we could apply to values like Providers/Interfaces/InterfacePorts that had this behaviour rather than sprinkling around the normalize and split helper functions?

This branch has not been deployed

No deployments
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

control-plane work on the management infrastructure of the DAOS Control Plane

Development

Successfully merging this pull request may close these issues.

4 participants