-
Notifications
You must be signed in to change notification settings - Fork 137
feat(rest): add site prerequisite bootstrap workflow #2964
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
Merged
Merged
Changes from all commits
Commits
Show all changes
8 commits
Select commit
Hold shift + click to select a range
2a2c79a
feat(rest): add site prerequisite bootstrap workflow
osu 362278d
chore(rest): regenerate Core protobuf bindings
osu ad3c90d
fix(rest): harden site bootstrap validation
osu bce84ac
refactor(rest): align site bootstrap with API workflows
osu a6e1117
Merge origin/main into feat/1889-site-prerequisite-bootstrap
osu 2b2b0f2
fix(rest): recover stale bootstrap resource IDs
osu d407f71
fix(rest): simplify site bootstrap manifest
osu a8a477b
fix(rest): require an existing bootstrap site
osu File filter
Filter by extension
Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
There are no files selected for viewing
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -0,0 +1,94 @@ | ||
| # SPDX-FileCopyrightText: Copyright (c) 2026 NVIDIA CORPORATION & AFFILIATES. All rights reserved. | ||
| # SPDX-License-Identifier: Apache-2.0 | ||
| # | ||
| # Example input for `nicocli site bootstrap`. Each `request` object is passed | ||
| # to the corresponding REST operation and must contain only attributes allowed | ||
| # by that operation's OpenAPI request schema. | ||
|
|
||
| provider: | ||
| org: provider-org | ||
| tenant: | ||
| org: tenant-org | ||
|
|
||
| # The Site must already exist. Bootstrap looks it up but never creates it. | ||
| site: | ||
| request: | ||
| name: sjc4 | ||
| description: San Jose site 4 | ||
|
|
||
| siteIpBlocks: | ||
| # Site IP Blocks are created automatically from fabric prefixes reported | ||
| # by the Site. This selector discovers the existing block; it never posts | ||
| # a Provider-created IP Block. Rerun bootstrap if inventory is not ready. | ||
| match: | ||
| siteId: "${site.id}" | ||
| routingType: DatacenterOnly | ||
| prefix: 10.40.0.0 | ||
| prefixLength: 16 | ||
|
|
||
| instanceTypes: | ||
| compute: | ||
| request: | ||
| name: compute-large | ||
| description: Compute profile for SJC4 | ||
| siteId: "${site.id}" | ||
| labels: | ||
| tier: compute | ||
| # Replace this with a capability reported by machines at the site. | ||
| machineCapabilities: | ||
| - type: CPU | ||
| name: x86-64 | ||
| count: 1 | ||
|
|
||
| allocations: | ||
| network: | ||
| request: | ||
| name: tenant-network | ||
| description: Tenant network allocation for SJC4 | ||
| tenantId: "${tenant.id}" | ||
| siteId: "${site.id}" | ||
| allocationConstraints: | ||
| - resourceType: IPBlock | ||
| resourceTypeId: "${siteIpBlocks.id}" | ||
| constraintType: OnDemand | ||
| constraintValue: 24 | ||
| compute: | ||
| request: | ||
| name: tenant-compute | ||
| description: One reserved machine for the tenant | ||
| tenantId: "${tenant.id}" | ||
| siteId: "${site.id}" | ||
| allocationConstraints: | ||
| - resourceType: InstanceType | ||
| resourceTypeId: "${instanceTypes.compute.id}" | ||
| constraintType: Reserved | ||
| constraintValue: 1 | ||
|
|
||
| vpcs: | ||
| tenant: | ||
| request: | ||
| name: tenant-vpc | ||
| description: Tenant VPC at SJC4 | ||
| siteId: "${site.id}" | ||
|
|
||
| vpcPrefixes: | ||
| tenant: | ||
| request: | ||
| name: tenant-prefix | ||
| vpcId: "${vpcs.tenant.id}" | ||
| ipBlockId: "${allocations.network.allocationConstraints.0.derivedResourceId}" | ||
| prefixLength: 24 | ||
|
|
||
| # Instances are optional. Remove this section until machines assigned to the | ||
| # instance type are ready and the compute allocation can be satisfied. | ||
| instances: | ||
| worker: | ||
| request: | ||
| name: worker-1 | ||
| description: First tenant worker | ||
| tenantId: "${tenant.id}" | ||
| instanceTypeId: "${instanceTypes.compute.id}" | ||
| vpcId: "${vpcs.tenant.id}" | ||
| interfaces: | ||
| - vpcPrefixId: "${vpcPrefixes.tenant.id}" | ||
| isPhysical: true | ||
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Oops, something went wrong.
Oops, something went wrong.
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Uh oh!
There was an error while loading. Please reload this page.