diff --git a/.gitignore b/.gitignore index e418491..59c24b5 100644 --- a/.gitignore +++ b/.gitignore @@ -23,4 +23,60 @@ Thumbs.db vite.config.js.timestamp-* vite.config.ts.timestamp-* -.envrc \ No newline at end of file +.envrc +logs/ +*.log +npm-debug.log* +yarn-debug.log* +yarn-error.log* +pnpm-debug.log* +lerna-debug.log* + +# Diagnostic reports +report.[0-9]*.[0-9]*.[0-9]*.[0-9]*.json + +# Runtime data +pids +*.pid +*.seed +*.pid.lock + +# Coverage reports +coverage/ +*.lcov + +# Build output +dist/ +out/ +tmp/ +temp/ + +# Dependency directories +bower_components/ +jspm_packages/ + +# Compiled source +*.class +*.dll +*.exe +*.o +*.so +*.pyc +*.pyo +*.pyd +__pycache__/ + +# Package files +*.tgz +*.zip + +# IDE and editor folders +.vscode/ +.idea/ +*.swp +*.swo + +# Environment files +.env.local +docs/DEVELOPER.md +static/merge-crds.py diff --git a/CHANGELOG.md b/CHANGELOG.md new file mode 100644 index 0000000..e69de29 diff --git a/README.md b/README.md index 0e0df67..4467051 100644 --- a/README.md +++ b/README.md @@ -1,5 +1,100 @@ -# EDA Resource Browser +# EDA Resource Browser - Visual Architecture -## Generating +## System Overview -Requires `yq` and `kubectl`. +Resource Browser is a compact SvelteKit application that reads CRD manifests stored in the repo (under `static/resources//...`) and exposes: + +- A release-aware resource browser and search index +- Per-resource pages showing YAML and OpenAPI-style schema details +- Lightweight version comparison and diff views + +The app is built with SvelteKit + Vite and can be deployed as a static site (for example, Cloudflare Pages). + + +# 🚀 EDA Resource Browser + +A compact, fast web UI for exploring Nokia EDA Custom Resource Definitions (CRDs) and release manifests. + +Clean, focused features: + +- 🔎 Search and browse CRDs by release +- 📄 View YAML and OpenAPI-style schemas for each resource +- 🔁 Compare versions across releases and inspect diffs + +Quick start + +1. Install dependencies: + +```bash +pnpm install +``` + +2. Run the development server (hot-reload): + +```bash +pnpm run dev +``` + +3. Build for production: + +```bash +pnpm run prepare +pnpm run build +``` + +Preview the production build locally: + +```bash +pnpm run preview +``` + +Notes and tips + +- Demo data: sample CRD manifests are placed under `static/resources//...` — the app reads these for the release browser. +- CI tip: if `pnpm install` in CI errors with a frozen-lockfile mismatch, regenerate the lockfile locally with: + +```bash +pnpm install --no-frozen-lockfile +git add pnpm-lock.yaml +git commit -m "chore: update pnpm-lock.yaml" +``` + +Developer notes + +- Built with SvelteKit + Vite and styled with TailwindCSS. Routes expose a home listing and per-resource detail pages. +- Keep changes small and UI-focused. If you add a new release, drop its manifest under `static/resources//manifest.json`. + +Contributing + +- Open issues and PRs welcome. Please include a short description and screenshots where helpful. + +### Performance notes + +We changed the hero/background handling to improve LCP: + +- The primary hero is now an inline (via a element) inserted early in the layout for accurate LCP measurement and preloading control. The CSS now uses gradients only; the image sits behind the page content. +- Fonts: we prefer WOFF2 for smaller payloads and preloaded critical hero fonts. If you need to generate WOFF2 assets from the existing TTF fonts in `/static/fonts`, run: + +````bash +pnpm install -D ttf2woff2 +pnpm run generate:woff2 + +Note: `ttf2woff2` reads from stdin and writes a compressed WOFF2 to stdout. The `generate:woff2` script wraps this in a loop and pipes each TTF into the converter. If you prefer a one-off command, you can run: + +```bash +npx ttf2woff2 < static/fonts/NokiaPureText_Rg.ttf > static/fonts/NokiaPureText_Rg.woff2 +```` + +Or to convert all TTFs at once using a shell loop (same as the script): + +```bash +for f in static/fonts/*.ttf; do npx ttf2woff2 < "$f" > "${f%.ttf}.woff2"; done +``` + +``` + +That converts TTF files in `static/fonts` to WOFF2. After that, update the `app.html` preloads if you change filenames. + + + +``` diff --git a/e2e/demo.test.ts b/e2e/demo.test.ts index 9985ce1..47a3a17 100644 --- a/e2e/demo.test.ts +++ b/e2e/demo.test.ts @@ -4,3 +4,9 @@ test('home page has expected h1', async ({ page }) => { await page.goto('/'); await expect(page.locator('h1')).toBeVisible(); }); + +test('LCP background image should be preloaded and have high priority', async ({ page }) => { + await page.goto('/'); + const img = page.locator('#main-scroll picture img[fetchpriority="high"]'); + await expect(img).toHaveCount(1); +}); diff --git a/ecosystem.config.cjs b/ecosystem.config.cjs new file mode 100644 index 0000000..fe4208b --- /dev/null +++ b/ecosystem.config.cjs @@ -0,0 +1,22 @@ +module.exports = { + apps: [ + { + name: 'resource-browser', + // use pnpm if pnpm is installed; fallback to npm would be explicit + script: 'pnpm', + args: 'run dev -- --host 0.0.0.0', + // Do not specify an interpreter; allow PM2 to execute `pnpm` directly + // interpreter: 'bash', + env: { + NODE_ENV: 'development' + }, + watch: false, + autorestart: true, + restart_delay: 5000, + max_restarts: 10, + error_file: './logs/pm2-error.log', + out_file: './logs/pm2-out.log', + log_date_format: 'YYYY-MM-DD HH:mm Z' + } + ] +}; diff --git a/ecosystem.config.js b/ecosystem.config.js new file mode 100644 index 0000000..4965a6c --- /dev/null +++ b/ecosystem.config.js @@ -0,0 +1,23 @@ +module.exports = { + apps: [ + { + name: 'resource-browser', + script: 'pnpm', + args: 'run dev -- --host 0.0.0.0', + // Ensure this matches where the repo is checked out on the host + cwd: '/home/noksysadm/work/resource-browser', + // Leave interpreter unset so PM2 executes the 'pnpm' binary directly + // interpreter: 'bash', + env: { + NODE_ENV: 'development' + }, + watch: false, + autorestart: true, + restart_delay: 5000, + max_restarts: 10, + error_file: '/home/noksysadm/work/resource-browser/logs/pm2-error.log', + out_file: '/home/noksysadm/work/resource-browser/logs/pm2-out.log', + log_date_format: 'YYYY-MM-DD HH:mm Z' + } + ] +}; diff --git a/package-lock.json b/package-lock.json index b372041..81b6c9c 100644 --- a/package-lock.json +++ b/package-lock.json @@ -1,12 +1,12 @@ { "name": "resource-browser", - "version": "0.0.1", + "version": "1.0.0", "lockfileVersion": 3, "requires": true, "packages": { "": { "name": "resource-browser", - "version": "0.0.1", + "version": "1.0.0", "devDependencies": { "@eslint/compat": "^1.2.5", "@eslint/js": "^9.18.0", diff --git a/package.json b/package.json index 93dd09c..d203720 100644 --- a/package.json +++ b/package.json @@ -1,7 +1,7 @@ { "name": "resource-browser", "private": true, - "version": "0.0.1", + "version": "1.0.0", "type": "module", "scripts": { "dev": "vite dev --host 0.0.0.0", @@ -16,6 +16,9 @@ "test": "npm run test:unit -- --run && npm run test:e2e", "test:e2e": "playwright test" }, + "dependencies": { + "ajv": "^8.17.1" + }, "devDependencies": { "@eslint/compat": "^1.2.5", "@eslint/js": "^9.18.0", diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index 558cc61..5fd7c96 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -7,6 +7,10 @@ settings: importers: .: + dependencies: + ajv: + specifier: ^8.17.1 + version: 8.17.1 devDependencies: '@eslint/compat': specifier: ^1.2.5 @@ -161,8 +165,8 @@ packages: resolution: {integrity: sha512-IchNf6dN4tHoMFIn/7OE8LWZ19Y6q/67Bmf6vnGREv8RSbBVb9LPJxEcnwrcwX6ixSvaiGoomAUvu4YSxXrVgw==} engines: {node: '>=12'} - '@emnapi/runtime@1.4.5': - resolution: {integrity: sha512-++LApOtY0pEEz1zrd9vy1/zXVaVJJ/EbAF3u0fXIzPJEDtnITsBGbbK0EkM72amhl/R5b+5xx0Y/QhcVOpuulg==} + '@emnapi/runtime@1.7.1': + resolution: {integrity: sha512-PVtJr5CmLwYAU9PZDMITZoR5iAOShYREoR45EyyLrbntV50mdePTgUn4AmOw90Ifcj+x2kRjdzr1HP3RrNiHGA==} '@esbuild/aix-ppc64@0.25.4': resolution: {integrity: sha512-1VCICWypeQKhVbE9oW/sJaAmjLxhVqacdkvPLEjwlttjfwENRSClS8EjBz0KzRyFSCPDIkuXW34Je/vk7zdB7Q==} @@ -1079,6 +1083,9 @@ packages: ajv@6.12.6: resolution: {integrity: sha512-j3fVLgvTo527anyYyJOGTYJbG+vnnQYvE0m5mmkc1TK+nxAppkCLMIL0aZ4dblVCNoGShhm+kzE4ZUykBoMg4g==} + ajv@8.17.1: + resolution: {integrity: sha512-B/gBuNg5SiMTrPkC+A2+cW0RszwxYmn6VYxB/inlBStS5nx6xHIt/ehKRhIMhqusl7a8LjQoZnjCs5vhwxOQ1g==} + ansi-regex@5.0.1: resolution: {integrity: sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ==} engines: {node: '>=8'} @@ -1222,6 +1229,10 @@ packages: resolution: {integrity: sha512-3UDv+G9CsCKO1WKMGw9fwq/SWJYbI0c5Y7LU1AXYoDdbhE2AHQ6N6Nb34sG8Fj7T5APy8qXDCKuuIHd1BR0tVA==} engines: {node: '>=8'} + detect-libc@2.1.2: + resolution: {integrity: sha512-Btj2BOOO83o3WyH59e8MgXsxEQVcarkUOpEYrubB0urwnN10yQ364rsiByU11nZlqWYZm05i/of7io4mzihBtQ==} + engines: {node: '>=8'} + devalue@5.1.1: resolution: {integrity: sha512-maua5KUiapvEwiEAe+XnlZ3Rh0GD+qI1J/nb9vrJc3muPXvcF/8gXYTWF76+5DAqHyDUtOIImEuo0YKE9mshVw==} @@ -1343,6 +1354,9 @@ packages: fast-levenshtein@2.0.6: resolution: {integrity: sha512-DCXu6Ifhqcks7TZKY3Hxp3y6qphY5SJZmrWMDrKcERSOXWQdMhU9Ig/PYrzyw/ul9jOIyh0N4M0tbC5hodg8dw==} + fast-uri@3.1.0: + resolution: {integrity: sha512-iPeeDKJSWf4IEOasVVrknXpaBV0IApz/gp7S2bb7Z4Lljbl2MGJRqInZiUrQwV16cpzw/D3S5j5Julj/gT52AA==} + fastq@1.19.1: resolution: {integrity: sha512-GwLTyxkCXjXbxqIhTsMI2Nui8huMPtnxg7krajPJAjnEG/iiOS7i+zCtWGZR9G0NBKbXKh6X9m9UIsYX/N6vvQ==} @@ -1469,6 +1483,9 @@ packages: json-schema-traverse@0.4.1: resolution: {integrity: sha512-xbbCH5dCYU5T8LcEhhuh7HJ88HXuW3qsI3Y0zOZFKfZEHcpWiHU/Jxzk629Brsab/mMiHQti9wMP+845RPe3Vg==} + json-schema-traverse@1.0.0: + resolution: {integrity: sha512-NM8/P9n3XjXhIZn1lLhkFaACTOURQXjWhV4BA/RnOv8xvgqtqpAX9IO4mRQxSx1Rlo4tqzeqb0sOlruaOy3dug==} + json-stable-stringify-without-jsonify@1.0.1: resolution: {integrity: sha512-Bdboy+l7tA3OGW6FjyFHWkP5LuByj1Tk33Ljyq0axyzdk9//JSi2u3fP1QSmd1KNwq6VOKYGlAu87CisVir6Pw==} @@ -1819,6 +1836,10 @@ packages: resolution: {integrity: sha512-RSYAtP31mvYLkAHrOlh25pCNQ5hWnT106VukGaaFfuJrZFkGRX5GhUAdPqpSDXxOhA2c4akmRuplv1mRqnBn6Q==} engines: {node: '>=8'} + require-from-string@2.0.2: + resolution: {integrity: sha512-Xf0nWe6RseziFMu+Ap9biiUbmplq6S9/p+7w7YXP/JBHhrUDDUhwa+vANyubuqfZWTveU//DYVGsDG7RKL/vEw==} + engines: {node: '>=0.10.0'} + resolve-from@4.0.0: resolution: {integrity: sha512-pb/MYmXstAkysRFx8piNI1tGFNQIFA3vkE3Gq4EuA1dF6gHp/+vgZqsCGJapvy8N3Q+4o7FwvquPJcnZ7RYy4g==} engines: {node: '>=4'} @@ -1844,6 +1865,11 @@ packages: engines: {node: '>=10'} hasBin: true + semver@7.7.3: + resolution: {integrity: sha512-SdsKMrI9TdgjdweUSR9MweHA4EJ8YxHn8DFaDisvhVlUOe4BF1tLD7GAj0lIqWVl+dPb/rExr0Btby5loQm20Q==} + engines: {node: '>=10'} + hasBin: true + set-cookie-parser@2.7.1: resolution: {integrity: sha512-IOc8uWeOZgnb3ptbCURJWNjWUPcO3ZnTTdzsurqERrP6nPyv+paC55vJM0LpOlT2ne+Ix+9+CRG1MNLlyZ4GjQ==} @@ -2233,7 +2259,7 @@ snapshots: dependencies: '@jridgewell/trace-mapping': 0.3.9 - '@emnapi/runtime@1.4.5': + '@emnapi/runtime@1.7.1': dependencies: tslib: 2.8.1 optional: true @@ -2518,7 +2544,7 @@ snapshots: '@img/sharp-wasm32@0.33.5': dependencies: - '@emnapi/runtime': 1.4.5 + '@emnapi/runtime': 1.7.1 optional: true '@img/sharp-win32-ia32@0.33.5': @@ -2968,6 +2994,13 @@ snapshots: json-schema-traverse: 0.4.1 uri-js: 4.4.1 + ajv@8.17.1: + dependencies: + fast-deep-equal: 3.1.3 + fast-uri: 3.1.0 + json-schema-traverse: 1.0.0 + require-from-string: 2.0.2 + ansi-regex@5.0.1: {} ansi-styles@4.3.0: @@ -3078,6 +3111,8 @@ snapshots: detect-libc@2.0.4: {} + detect-libc@2.1.2: {} + devalue@5.1.1: {} dom-accessibility-api@0.5.16: {} @@ -3271,6 +3306,8 @@ snapshots: fast-levenshtein@2.0.6: {} + fast-uri@3.1.0: {} + fastq@1.19.1: dependencies: reusify: 1.1.0 @@ -3366,6 +3403,8 @@ snapshots: json-schema-traverse@0.4.1: {} + json-schema-traverse@1.0.0: {} + json-stable-stringify-without-jsonify@1.0.1: {} keyv@4.5.4: @@ -3601,6 +3640,8 @@ snapshots: regexparam@3.0.0: {} + require-from-string@2.0.2: {} + resolve-from@4.0.0: {} reusify@1.1.0: {} @@ -3641,13 +3682,15 @@ snapshots: semver@7.7.2: {} + semver@7.7.3: {} + set-cookie-parser@2.7.1: {} sharp@0.33.5: dependencies: color: 4.2.3 - detect-libc: 2.0.4 - semver: 7.7.2 + detect-libc: 2.1.2 + semver: 7.7.3 optionalDependencies: '@img/sharp-darwin-arm64': 0.33.5 '@img/sharp-darwin-x64': 0.33.5 diff --git a/src/app.css b/src/app.css index 456d675..2b638cf 100644 --- a/src/app.css +++ b/src/app.css @@ -2,164 +2,668 @@ @custom-variant dark (&:where(.dark, .dark *)); +/* ============================================ + FONT FACES + ============================================ */ @font-face { - font-family: "NokiaPureText"; - src: url("/fonts/NokiaPureText_Rg.ttf"); - font-style: normal; - font-weight: normal; - font-display: swap; + font-family: 'NokiaPureText'; + src: + url('/fonts/NokiaPureText_Lt.woff2') format('woff2'), + url('/fonts/NokiaPureText_Lt.ttf') format('truetype'); + font-weight: 300; + font-style: normal; + font-display: swap; } @font-face { - font-family: "NokiaPureText"; - src: url("/fonts/NokiaPureText_Lt.ttf"); - font-weight: 300; - font-style: normal; - font-display: swap; + font-family: 'NokiaPureText'; + src: + url('/fonts/NokiaPureText_Rg.woff2') format('woff2'), + url('/fonts/NokiaPureText_Rg.ttf') format('truetype'); + font-weight: 400; + font-style: normal; + font-display: swap; } @font-face { - font-family: "NokiaPureText"; - src: url("/fonts/NokiaPureText_Rg.ttf"); - font-weight: 400; - font-style: normal; - font-display: swap; + font-family: 'NokiaPureText'; + src: + url('/fonts/NokiaPureText_Md.woff2') format('woff2'), + url('/fonts/NokiaPureText_Md.ttf') format('truetype'); + font-weight: 500; + font-style: normal; + font-display: swap; } @font-face { - font-family: "NokiaPureText"; - src: url("/fonts/NokiaPureText_Md.ttf"); - font-weight: 500; - font-style: normal; - font-display: swap; + font-family: 'NokiaPureText'; + src: + url('/fonts/NokiaPureText_Bd.woff2') format('woff2'), + url('/fonts/NokiaPureText_Bd.ttf') format('truetype'); + font-weight: 700; + font-style: normal; + font-display: swap; } @font-face { - font-family: "NokiaPureText"; - src: url("/fonts/NokiaPureText_Bd.ttf"); - font-weight: 700; - font-style: normal; - font-display: swap; + font-family: 'NokiaPureHeadline'; + src: + url('/fonts/NokiaPureHeadline_ULt.woff2') format('woff2'), + url('/fonts/NokiaPureHeadline_ULt.ttf') format('truetype'); + font-weight: 200; + font-style: normal; + font-display: swap; } @font-face { - font-family: "NokiaPureHeadline"; - src: url("/fonts/NokiaPureHeadline_Rg.ttf"); - font-style: normal; - font-weight: normal; - font-display: swap; + font-family: 'NokiaPureHeadline'; + src: + url('/fonts/NokiaPureHeadline_Lt.woff2') format('woff2'), + url('/fonts/NokiaPureHeadline_Lt.ttf') format('truetype'); + font-weight: 300; + font-style: normal; + font-display: swap; } @font-face { - font-family: "NokiaPureHeadline"; - src: url("/fonts/NokiaPureHeadline_ULt.ttf"); - font-weight: 200; - font-style: normal; - font-display: swap; + font-family: 'NokiaPureHeadline'; + src: + url('/fonts/NokiaPureHeadline_Rg.woff2') format('woff2'), + url('/fonts/NokiaPureHeadline_Rg.ttf') format('truetype'); + font-weight: 400; + font-style: normal; + font-display: swap; } @font-face { - font-family: "NokiaPureHeadline"; - src: url("/fonts/NokiaPureHeadline_Lt.ttf"); - font-weight: 300; - font-style: normal; - font-display: swap; + font-family: 'NokiaPureHeadline'; + src: + url('/fonts/NokiaPureHeadline_Bd.woff2') format('woff2'), + url('/fonts/NokiaPureHeadline_Bd.ttf') format('truetype'); + font-weight: 700; + font-style: normal; + font-display: swap; } @font-face { - font-family: "NokiaPureHeadline"; - src: url("/fonts/NokiaPureHeadline_Rg.ttf"); - font-weight: 400; - font-style: normal; - font-display: swap; + font-family: 'NokiaPureHeadline'; + src: + url('/fonts/NokiaPureHeadline_XBd.woff2') format('woff2'), + url('/fonts/NokiaPureHeadline_XBd..ttf') format('truetype'); + font-weight: 800; + font-style: normal; + font-display: swap; } -@font-face { - font-family: "NokiaPureHeadline"; - src: url("/fonts/NokiaPureHeadline_Bd.ttf"); - font-weight: 700; - font-style: normal; - font-display: swap; +/* ============================================ + THEME VARIABLES + ============================================ */ +@theme { + --font-nunito: 'Nunito', sans-serif; + --font-fira: 'Fira Code', monospace; + --font-nokia: 'NokiaPureText', sans-serif; + --font-nokia-headline: 'NokiaPureHeadline', sans-serif; + --default-font-family: 'NokiaPureText', sans-serif; } -@font-face { - font-family: "NokiaPureHeadline"; - src: url("/fonts/NokiaPureHeadline_XBd.ttf"); - font-weight: 800; - font-style: normal; - font-display: swap; +/* ============================================ + BASE STYLES + ============================================ */ +@layer base { + /* Modern CSS reset */ + :global(*), + :global(*::before), + :global(*::after) { + box-sizing: border-box; + margin: 0; + padding: 0; + } + + :global(html) { + scroll-behavior: smooth; + -webkit-font-smoothing: antialiased; + -moz-osx-font-smoothing: grayscale; + /* Prevent the browser (document) from showing a scrollbar; child containers handle scrolling */ + overflow: hidden; + } + + :global(body) { + @apply text-gray-900 dark:text-white antialiased bg-white dark:bg-[#0f172a]; + font-family: var(--font-nokia), 'Nunito', sans-serif; + min-height: 100vh; + /* Hide the document scrollbar so child containers manage scrolling */ + overflow: hidden; + } + + /* Reduce CLS by stabilizing headline and hero typography metrics across font swap. + `font-size-adjust` helps keep x-height consistent across fallback and web fonts. */ + :global(h1), + :global(.font-nokia-headline) { + font-size-adjust: 0.5; /* conservative default for Nokia headline to reduce size shift */ + line-height: 1.02; /* stabilize line height for large titles */ + } + + /* Headings and display text should use the Nokia headline family */ + :global(h1), + :global(h2), + :global(h3), + :global(h4) { + font-family: + var(--font-nokia-headline), + var(--font-nokia), + system-ui, + -apple-system, + 'Segoe UI', + Roboto, + 'Helvetica Neue', + Arial; + letter-spacing: -0.01em; + line-height: 1.05; + } + + /* Small UI copy / pills use medium weight for clarity */ + :global(.pill), + :global(.badge) { + font-family: + var(--font-nokia), + system-ui, + -apple-system, + 'Segoe UI', + Roboto, + 'Helvetica Neue', + Arial; + font-weight: 600; + letter-spacing: 0.01em; + } + + /* Ensure images and media are responsive by default */ + :global(img), + :global(picture), + :global(video), + :global(canvas), + :global(svg) { + display: block; + max-width: 100%; + height: auto; + } + + /* Remove default button styles */ + :global(button) { + background: none; + border: none; + font: inherit; + cursor: pointer; + } + + /* Smooth transitions for interactive elements */ + :global(button), + :global(a), + :global(input), + :global(select), + :global(textarea) { + @apply transition-colors duration-200; + } + + /* Modern focus styles */ + :global(*:focus-visible) { + @apply outline-2 outline-offset-2 outline-blue-500; + } + + /* Remove default list styles */ + :global(ul), + :global(ol) { + list-style: none; + } } -@theme { - --font-nunito: 'Nunito', sans-serif; - --font-fira: 'Fira Code', monospace; - --font-nokia: 'NokiaPureText', sans-serif; - --font-nokia-headline: 'NokiaPureHeadline', sans-serif; - --default-font-family: 'NokiaPureText', sans-serif; +/* ============================================ + UTILITY CLASSES + ============================================ */ +@layer utilities { + /* Prevent root scrolling (for modals/overlays) */ + .no-root-scroll { + overflow: hidden !important; + height: 100% !important; + } + + /* Background with header image */ + .has-header-img { + position: relative; + z-index: 1; + /* Always apply gradient overlay and white text since background is always dark */ + background-image: + linear-gradient(120deg, rgba(2, 10, 35, 0.42), rgba(4, 45, 120, 0.48)), + linear-gradient(60deg, rgba(7, 36, 120, 0.25), rgba(18, 164, 228, 0.2)); + background-size: cover; + background-position: center; + background-repeat: no-repeat; + /* Avoid 'fixed' attachment as it can cause heavy repaints and delay LCP; use 'scroll' for better performance */ + background-attachment: scroll; + /* Use overlay to keep the blue tones visible while providing a darkened foreground for contrast */ + background-blend-mode: overlay, screen, normal; + /* Use a light foreground text color when over the header image to better contrast with darker background */ + color: rgba(255, 255, 255, 0.95); + } + + /* Dark Mode: Apply gradient overlay and white text */ + :global(.dark) .has-header-img { + /* Same styles as default, kept for specificity if needed */ + background-image: + linear-gradient(120deg, rgba(2, 10, 35, 0.42), rgba(4, 45, 120, 0.48)), + linear-gradient(60deg, rgba(7, 36, 120, 0.25), rgba(18, 164, 228, 0.2)); + } + + /* Positioned hero image element (inline) that contributes to LCP; it sits behind .has-header-img. + The actual image is inserted in the layout as an with fetchpriority="high". */ + .header-bg-container { + /* Keep the hero background anchored to the viewport so it always + covers the visible area and doesn't reveal the animated bg + below when the page content scrolls. */ + position: fixed; + inset: 0; + z-index: -1; /* place behind page content */ + overflow: hidden; + pointer-events: none; + user-select: none; + /* Always show */ + display: block; + } + :global(.dark) .header-bg-container { + display: block; + } + .header-bg-img { + position: absolute; + inset: 0; + width: 100%; + height: 100vh; /* ensure the image always covers the viewport height */ + object-fit: cover; + object-position: center; + min-height: 100vh; + min-width: 100%; + display: block; + } + +/* Light-mode: make the hero image appear as a lighter background + We apply a subtle brightening / desaturation so foreground dark text is readable. */ +:global(:not(.dark)) .header-bg-img { + filter: brightness(1.06) saturate(1.02) contrast(1.02); + opacity: 0.98; + transition: filter 260ms ease, opacity 260ms ease; } -@layer base { - :global(html) { - scroll-behavior: smooth; - } +/* Dark-mode: darker and slightly more saturated image to match dark overlay */ +:global(.dark) .header-bg-img { + filter: brightness(0.5) saturate(0.9) contrast(0.95); + transition: filter 260ms ease; } -@layer utilities { - .has-header-img { - background: url(/images/background.webp) center center; - background-size: cover; - } +/* For the content container that uses .has-header-img, use a lighter gradient overlay in light mode + so the image reads as a soft, light background and text is dark. */ +:global(:not(.dark)) .has-header-img { + background-image: + linear-gradient(120deg, rgba(255,255,255,0.32), rgba(250,250,250,0.22)), + linear-gradient(60deg, rgba(255,255,255,0.16), rgba(236, 253, 255, 0.12)); + background-size: cover; + background-position: center; + color: rgba(2,6,23,0.95); /* dark foreground on light bg */ +} - .dropdown:hover .dropdown-content { - display: block; - } +/* Ensure page titles are visible and dark in light mode (overrides some `text-white` usages) */ +:global(:not(.dark)) h1, +:global(:not(.dark)) h2, +:global(:not(.dark)) h3, +:global(:not(.dark)) .font-extrabold { + color: #f59e0b !important; /* amber-500 to match site accents in light mode */ } +/* Ensure dark-mode retains the darker overlay defined earlier */ +:global(.dark) .has-header-img { + background-image: + linear-gradient(120deg, rgba(2, 10, 35, 0.42), rgba(4, 45, 120, 0.48)), + linear-gradient(60deg, rgba(7, 36, 120, 0.25), rgba(18, 164, 228, 0.2)); +} + + /* Mobile - use lighter background image and scroll attachment to reduce performance cost */ + @media (max-width: 768px) { + :global(.dark) .has-header-img { + /* For mobile devices, avoid loading the large background image to improve LCP. + Use the gradient overlay instead — this provides a visually similar look while + saving network bytes. If you prefer to use a mobile-optimized image, add + a reduced-size asset in /static/images and swap this out. */ + background-image: + linear-gradient(120deg, rgba(2, 10, 35, 0.42), rgba(4, 45, 120, 0.48)), + linear-gradient(60deg, rgba(7, 36, 120, 0.25), rgba(18, 164, 228, 0.2)); + background-attachment: scroll; /* Fixed is heavy on mobile */ + background-position: center center; + } + } + + /* Avoid layout shifts for short action buttons by sizing them in CSS. */ + :global(.release-more-btn) { + min-width: 84px; /* ensures min width for 'More' button to avoid width change when fonts load */ + display: inline-flex; + align-items: center; + justify-content: center; + } + + /* Subtle grid pattern background (dark) */ + .bg-pattern { + background-image: + linear-gradient(to right, rgba(255, 255, 255, 0.05) 1px, transparent 1px), + linear-gradient(to bottom, rgba(255, 255, 255, 0.05) 1px, transparent 1px); + background-size: 40px 40px; + } + + /* Grid pattern for light backgrounds */ + .bg-grid-pattern { + background-image: + linear-gradient(to right, rgba(99, 102, 241, 0.03) 1px, transparent 1px), + linear-gradient(to bottom, rgba(99, 102, 241, 0.03) 1px, transparent 1px); + background-size: 32px 32px; + } + + /* Dropdown hover effect */ + .dropdown:hover .dropdown-content { + display: block; + } + + /* Light-mode dropdowns and select controls: ensure background is light and text is dark for readability */ + :global(:not(.dark)) .dropdown-content, + :global(:not(.dark)) .dropdown, + :global(:not(.dark)) .select-pro, + :global(:not(.dark)) select, + :global(:not(.dark)) .dropdown-item, + :global(:not(.dark)) .menu, + :global(:not(.dark)) .dropdown .content { + background: #ffffff !important; + color: rgba(2,6,23,0.96) !important; + border-color: rgba(2,6,23,0.06) !important; + } + + :global(:not(.dark)) .dropdown-content a, + :global(:not(.dark)) .dropdown-content button, + :global(:not(.dark)) .dropdown-content span { + color: rgba(2,6,23,0.96) !important; + } + + /* Make sure custom select component uses dark text on light mode */ + :global(:not(.dark)) .select-pro { + @apply bg-white text-gray-900; /* Tailwind will process */ + } + + /* Ensure dropdown options use dark text and white background in light mode (dropdown menu in native selects) */ + :global(:not(.dark)) select option, + :global(:not(.dark)) .select-pro option { + color: rgba(2,6,23,0.96) !important; + background: #ffffff !important; + } + + /* Header (top nav) overrides for light mode: ensure any hard-coded white text becomes dark for readability */ + :global(:not(.dark)) nav.fixed, + :global(:not(.dark)) nav.fixed * { + color: rgba(2,6,23,0.95) !important; + } + + /* Custom border width for diff indicators */ + .border-l-3 { + border-left-width: 3px; + } + + /* Smooth fade-in animation */ + @keyframes fadeIn { + from { + opacity: 0; + transform: translateY(10px); + } + to { + opacity: 1; + transform: translateY(0); + } + } + + .animate-fade-in { + animation: fadeIn 0.3s ease-out; + } + + /* Pulse animation for interactive elements */ + @keyframes pulse-subtle { + 0%, + 100% { + opacity: 1; + } + 50% { + opacity: 0.8; + } + } + + .animate-pulse-subtle { + animation: pulse-subtle 2s cubic-bezier(0.4, 0, 0.6, 1) infinite; + } + + /* Professional glow effect for amber elements */ + .glow-amber { + box-shadow: + 0 0 20px rgba(245, 158, 11, 0.3), + 0 0 40px rgba(245, 158, 11, 0.1); + } + + /* Enhanced shadow for cards */ + .shadow-pro { + box-shadow: + 0 10px 25px -5px rgba(0, 0, 0, 0.3), + 0 10px 10px -5px rgba(0, 0, 0, 0.1); + } + + /* Subtle border glow */ + .border-glow { + border: 1px solid rgba(245, 158, 11, 0.2); + box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.1); + } +} + +/* Additional light-mode dropdown/popover containers used by various components */ +:global(:not(.dark)) .dropdown-menu, +:global(:not(.dark)) .popover, +:global(:not(.dark)) .popover-content, +:global(:not(.dark)) .popup, +:global(:not(.dark)) .choices__list, +:global(:not(.dark)) .react-select__menu { + background: #ffffff !important; + color: rgba(2,6,23,0.96) !important; + border-color: rgba(2,6,23,0.06) !important; +} + +/* ============================================ + COMPONENT STYLES + ============================================ */ @layer components { - .scroll-thin { - /* Firefox support */ - scrollbar-width: thin; - scrollbar-color: #bec4c4 #f1f1f1; - - /* Scrollbar size */ - &::-webkit-scrollbar { - width: 2px; - height: 2px; - } - - /* Light mode track and thumb */ - &::-webkit-scrollbar-track { - background: #f1f1f1; - } - &::-webkit-scrollbar-thumb { - background: #bec4c4; - } - - /* Light mode hover */ - @variant hover { - &::-webkit-scrollbar-thumb:hover { - background: #555; - } - } - - /* Dark mode overrides */ - @variant dark { - /* Firefox support */ - scrollbar-color: rgb(109, 109, 109) rgb(55 65 81); - - &::-webkit-scrollbar-track { - background: rgb(55 65 81); - } - &::-webkit-scrollbar-thumb { - background: rgb(109, 109, 109); - } - - /* Dark mode hover */ - @variant hover { - &::-webkit-scrollbar-thumb:hover { - background: #555; - } - } - } - } -} \ No newline at end of file + /* Custom scrollbar styling */ + .scroll-thin { + /* Firefox support */ + scrollbar-width: thin; + scrollbar-color: rgb(109, 109, 109) rgb(55 65 81); + + /* Webkit scrollbar */ + &::-webkit-scrollbar { + width: 6px; + height: 6px; + } + + &::-webkit-scrollbar-track { + background: rgb(55 65 81); + } + + &::-webkit-scrollbar-thumb { + background: rgb(109, 109, 109); + border-radius: 3px; + } + + &::-webkit-scrollbar-thumb:hover { + background: rgb(156, 163, 175); + } + } + + /* Sidebar scroll thumb - a small visible indicator suitable for mobile and desktop */ + .sidebar-scroll-thumb { + position: absolute; + right: 6px; + top: 0; + width: 4px; + border-radius: 4px; + background: rgba(255, 255, 255, 0.12); + transition: + transform 120ms linear, + opacity 200ms ease-in-out; + will-change: transform, opacity; + opacity: 0; + pointer-events: none; /* don't block clicks */ + } + + /* When a header image is active, remove any border/backgrounds for top elements so the image shows through */ + :global(.has-header-img) .sidebar-header, + :global(.has-header-img) .content-header { + background: transparent !important; + border-color: transparent !important; + box-shadow: none !important; + --tw-bg-opacity: 0 !important; + } + + /* Sidebar footer (compact) - shown above the sidebar on resource pages */ + .sidebar-footer { + position: fixed; + left: 0; + top: 4rem; /* below the header (mobile/default) */ + width: 20rem; /* match w-80 on small screens & default */ + padding: 0.5rem 1rem; + display: flex; + align-items: center; + justify-content: center; + z-index: 50; + pointer-events: auto; + background: rgba(255, 255, 255, 0.03); + color: rgba(255, 255, 255, 0.95); + border-right: 1px solid rgba(255, 255, 255, 0.04); + font-size: 0.75rem; /* text-xs */ + font-style: italic; + } + /* Ensure footer clears the larger header padding on medium+ screens */ + @media (min-width: 768px) { + .sidebar-footer { + top: 5rem; /* matches md:pt-20 in layouts */ + } + } + @media (min-width: 1024px) { + .sidebar-footer { + width: 16rem; /* match lg:w-64 */ + } + } + + /* slightly more visible on hover or when user is actively interacting*/ + .scroll-thin:hover + .sidebar-scroll-thumb, + .sidebar-scroll-thumb:hover { + background: rgba(255, 255, 255, 0.18); + opacity: 1; + } + + /* Ensure side-scroll thumb is more visible on mobile devices */ + @media (max-width: 1024px) { + .sidebar-scroll-thumb { + right: 10px; + width: 6px; + background: rgba(255, 255, 255, 0.22); + box-shadow: 0 0 6px rgba(0, 0, 0, 0.25) inset; + } + } + + /* Pro select styling used for release dropdowns and tool selects */ + .select-pro { + @apply rounded-lg border border-white/10 bg-white/5 px-3 py-1 text-sm text-gray-900 transition-colors dark:border-white/10 dark:bg-black/30 dark:text-gray-200; + } + + .select-pro:focus { + @apply ring-2 ring-cyan-400 outline-none; + } + + /* Utility to suppress blur/backdrop blur on UI elements (use for buttons that must remain sharp) */ + .no-blur { + filter: none !important; + -webkit-filter: none !important; + backdrop-filter: none !important; + -webkit-backdrop-filter: none !important; + } +} +/* Ensure content sits above the header image */ +:global(.has-header-img) { + position: relative; + z-index: 1; +} + +/* Theme toggle pill (matching reference style) */ +.theme-toggle { + display: inline-flex; + align-items: center; + padding: 2px; + background: transparent; + border-radius: 9999px; + cursor: pointer; +} +.theme-track { + display: block; + width: 48px; + height: 28px; + border-radius: 9999px; + background: linear-gradient(180deg, #f3f4f6, #e5e7eb); + border: 1px solid rgba(15, 23, 42, 0.06); + position: relative; + transition: background 200ms ease, border-color 200ms ease; +} +.theme-thumb { + width: 22px; + height: 22px; + border-radius: 9999px; + background: white; + box-shadow: 0 6px 12px rgba(16,24,40,0.12); + position: absolute; + top: 3px; + left: 3px; + display: inline-flex; + align-items: center; + justify-content: center; + color: #f59e0b; /* amber for sun */ + transition: transform 200ms cubic-bezier(.2,.9,.2,1), background 200ms ease, color 200ms ease; +} +.theme-thumb.is-dark { + transform: translateX(20px); + background: #0b1220; /* dark thumb */ + color: #fef3c7; /* soft yellow moon color */ + box-shadow: 0 6px 14px rgba(2,6,23,0.6); +} + +/* Dark track styling when dark mode is active on root */ +:global(.dark) .theme-track { + background: linear-gradient(180deg, #0f172a, #0b1220); + border: 1px solid rgba(255,255,255,0.06); +} + +/* Focus state */ +.theme-toggle:focus .theme-track, +.theme-toggle:focus-visible .theme-track { + outline: none; + box-shadow: 0 0 0 4px rgba(59,130,246,0.14); +} + +/* Make icons slightly smaller on small screens */ +@media (max-width: 640px) { + .theme-track { + width: 44px; + height: 26px; + } + .theme-thumb { + width: 20px; + height: 20px; + left: 3px; + } + .theme-thumb.is-dark { + transform: translateX(18px); + } +} diff --git a/src/app.html b/src/app.html index 0a28813..0fe7318 100644 --- a/src/app.html +++ b/src/app.html @@ -1,28 +1,74 @@ + + + + + - - - - + + + + + + + + + + + + + + + + - - - - %sveltekit.head% + %sveltekit.head% + + - - - - -
%sveltekit.body%
- - - \ No newline at end of file + +
%sveltekit.body%
+ + diff --git a/src/hooks.server.ts b/src/hooks.server.ts new file mode 100644 index 0000000..f5b9a5d --- /dev/null +++ b/src/hooks.server.ts @@ -0,0 +1,62 @@ +import type { Handle } from '@sveltejs/kit'; + +export const handle: Handle = async ({ event, resolve }) => { + const response = await resolve(event); + + // Suppress 404 logging for CRD version availability checks + // These are intentional HEAD requests to check if a version exists + if ( + response.status === 404 && + event.url.pathname.includes('/resources/') && + event.url.pathname.endsWith('.yaml') + ) { + // Don't log these 404s - they're expected during version availability checks + return response; + } + + return response; +}; + +// Suppress console output for CRD check 404s +const originalConsoleWarn = console.warn; +const originalConsoleInfo = console.info; +const originalConsoleLog = console.log; + +console.warn = (...args: any[]) => { + const msg = args.join(' '); + if ( + typeof msg === 'string' && + msg.includes('Not found:') && + msg.includes('/resources/') && + msg.includes('.yaml') + ) { + return; // Skip logging + } + originalConsoleWarn.apply(console, args); +}; + +console.info = (...args: any[]) => { + const msg = args.join(' '); + if ( + typeof msg === 'string' && + msg.includes('Not found:') && + msg.includes('/resources/') && + msg.includes('.yaml') + ) { + return; // Skip logging + } + originalConsoleInfo.apply(console, args); +}; + +console.log = (...args: any[]) => { + const msg = args.join(' '); + if ( + typeof msg === 'string' && + msg.includes('Not found:') && + msg.includes('/resources/') && + msg.includes('.yaml') + ) { + return; // Skip logging + } + originalConsoleLog.apply(console, args); +}; diff --git a/src/lib/components/AnimatedBackground.svelte b/src/lib/components/AnimatedBackground.svelte new file mode 100644 index 0000000..5a52528 --- /dev/null +++ b/src/lib/components/AnimatedBackground.svelte @@ -0,0 +1,67 @@ + +
+ +
+ + +
+ + +
+ + +
+ + +
+
+ + diff --git a/src/lib/components/DiffRender.svelte b/src/lib/components/DiffRender.svelte new file mode 100644 index 0000000..3b49634 --- /dev/null +++ b/src/lib/components/DiffRender.svelte @@ -0,0 +1,406 @@ + + +

{type.toUpperCase()}

+
    +
  • + {desc} +
  • + {#if 'properties' in scope || (compareScope && 'properties' in compareScope)} + {#each getCombinedKeys() as key} + {@const requiredList = 'required' in scope ? scope.required : []} + {@const existsHere = 'properties' in scope && key in scope.properties} + {@const folder = existsHere ? (scope as any).properties[key] : null} + {@const diffStatus = getDiffStatus(key)} + {@const bgClass = + diffStatus === 'added' + ? 'bg-green-100 dark:bg-green-900/20 border-l-3 border-green-600 dark:border-green-500' + : diffStatus === 'removed' + ? 'bg-red-100 dark:bg-red-900/20 border-l-3 border-red-600 dark:border-red-500' + : diffStatus === 'modified' + ? 'bg-amber-100 dark:bg-yellow-900/20 border-l-3 border-amber-600 dark:border-yellow-500' + : ''} + {@const fieldCompareData = + compareScope && 'properties' in compareScope && key in compareScope.properties + ? compareScope.properties[key] + : null} + {@const localField = 'properties' in scope ? ((scope as any).properties[key] ?? null) : null} +
  • + {#if existsHere} + {#if diffStatus !== 'unchanged' && !isObjectSchema(folder)} + +
    + {/if} + {#if diffStatus !== 'unchanged' && !isObjectSchema(folder)} + +
    + + {#if folder && getDefault(folder)} +
    + default: + {getDefault(folder)} +
    + {:else if fieldCompareData && getDefault(fieldCompareData)} +
    + default: +   +
    + {/if} + + + {#if folder && getEnum(folder)} +
    + enum: +
    + +
    +
    + {:else if fieldCompareData && getEnum(fieldCompareData)} +
    + enum: +   +
    + {/if} + + + {#if folder && getFormat(folder)} +
    + format: + {getFormat(folder)} +
    + {:else if fieldCompareData && getFormat(fieldCompareData)} +
    + format: +   +
    + {/if} + + + {#if folder && (getMinimum(folder) !== undefined || getMaximum(folder) !== undefined)} +
    + constraints: + + {#if folder && getMinimum(folder) !== undefined}min: {getMinimum(folder)}{/if} + {#if folder && getMinimum(folder) !== undefined && getMaximum(folder) !== undefined}, + {/if} + {#if folder && getMaximum(folder) !== undefined}max: {getMaximum(folder)}{/if} + +
    + {:else if fieldCompareData && (getMinimum(fieldCompareData) !== undefined || getMaximum(fieldCompareData) !== undefined)} +
    + constraints: +   +
    + {/if} + + + {#if folder && (getMinItems(folder) !== undefined || getMaxItems(folder) !== undefined)} +
    + array size: + + {#if folder && getMinItems(folder) !== undefined}minItems: {getMinItems(folder)}{/if} + {#if folder && getMinItems(folder) !== undefined && getMaxItems(folder) !== undefined}, + {/if} + {#if folder && getMaxItems(folder) !== undefined}maxItems: {getMaxItems(folder)}{/if} + +
    + {:else if fieldCompareData && (getMinItems(fieldCompareData) !== undefined || getMaxItems(fieldCompareData) !== undefined)} +
    + array size: +   +
    + {/if} +
    + {/if} + + {:else} + {#if fieldCompareData} + {#if !isObjectSchema(fieldCompareData)} +
    + {#if getDefault(fieldCompareData)} +
    +   +
    + {/if} + {#if getEnum(fieldCompareData)} +
    +   +
    + {/if} + {#if getFormat(fieldCompareData)} +
    +   +
    + {/if} + {#if getMinimum(fieldCompareData) !== undefined || getMaximum(fieldCompareData) !== undefined} +
    +   +
    + {/if} + {#if getMinItems(fieldCompareData) !== undefined || getMaxItems(fieldCompareData) !== undefined} +
    +   +
    + {/if} +
    + {/if} + {#if getEnum(fieldCompareData)} +
    + enum: +
    + +
    +
    + {/if} + {#if getFormat(fieldCompareData)} +
    + format: + {getFormat(fieldCompareData)} +
    + {/if} + {#if getMinimum(fieldCompareData) !== undefined || getMaximum(fieldCompareData) !== undefined} +
    + constraints: + + {#if getMinimum(fieldCompareData) !== undefined}min: {getMinimum( + fieldCompareData + )}{/if} + {#if getMinimum(fieldCompareData) !== undefined && getMaximum(fieldCompareData) !== undefined}, + {/if} + {#if getMaximum(fieldCompareData) !== undefined}max: {getMaximum( + fieldCompareData + )}{/if} + +
    + {/if} + {#if getMinItems(fieldCompareData) !== undefined || getMaxItems(fieldCompareData) !== undefined} +
    + array size: + + {#if getMinItems(fieldCompareData) !== undefined}minItems: {getMinItems( + fieldCompareData + )}{/if} + {#if getMinItems(fieldCompareData) !== undefined && getMaxItems(fieldCompareData) !== undefined}, + {/if} + {#if getMaxItems(fieldCompareData) !== undefined}maxItems: {getMaxItems( + fieldCompareData + )}{/if} + +
    + {/if} + {/if} + + + {/if} +
  • + {/each} + {/if} +
diff --git a/src/lib/components/EnumDisplay.svelte b/src/lib/components/EnumDisplay.svelte new file mode 100644 index 0000000..f5efb78 --- /dev/null +++ b/src/lib/components/EnumDisplay.svelte @@ -0,0 +1,11 @@ + + +{#if text} + {text} +{/if} diff --git a/src/lib/components/Footer.svelte b/src/lib/components/Footer.svelte deleted file mode 100644 index b1ca02a..0000000 --- a/src/lib/components/Footer.svelte +++ /dev/null @@ -1,89 +0,0 @@ - - -
-
- Created by - Siva Sivakumar - - & - Roman Dodin - -
- - Not an official Nokia product -
diff --git a/src/lib/components/Navbar.svelte b/src/lib/components/Navbar.svelte index e5ad495..1cf608a 100644 --- a/src/lib/components/Navbar.svelte +++ b/src/lib/components/Navbar.svelte @@ -1,67 +1,133 @@ - diff --git a/src/lib/components/PageCredits.svelte b/src/lib/components/PageCredits.svelte new file mode 100644 index 0000000..2e757b0 --- /dev/null +++ b/src/lib/components/PageCredits.svelte @@ -0,0 +1,79 @@ + + +
+
+ +
+
diff --git a/src/lib/components/Render.svelte b/src/lib/components/Render.svelte index b592a31..9513906 100644 --- a/src/lib/components/Render.svelte +++ b/src/lib/components/Render.svelte @@ -8,6 +8,11 @@ export let source: string; export let type: string; export let data: Schema; + export let showType: boolean = true; + export let compact: boolean = false; + export let onResourcePage: boolean = false; + export let showDiffIndicator: boolean = false; + export let forceExpandAll: boolean = false; const desc = getDescription(data); const scope = getScope(data); @@ -19,26 +24,36 @@ : 'border-gray-300 dark:border-gray-600'; -

{type.toUpperCase()}

-
    -
  • - {desc} -
  • - {#if 'properties' in scope} -
    - {#each Object.entries(scope.properties) as [key, folder]} - {@const requiredList = 'required' in scope ? scope.required : []} - - {/each} -
    - {/if} -
+{#if showType} +

{type.toUpperCase()}

+{/if} +
+
    +
  • + {desc} +
  • + {#if 'properties' in scope} +
    + {#each Object.entries(scope.properties) as [key, folder]} + {@const requiredList = 'required' in scope ? scope.required : []} + + {/each} +
    + {/if} +
+
diff --git a/src/lib/components/Sidebar.svelte b/src/lib/components/Sidebar.svelte new file mode 100644 index 0000000..edd36f7 --- /dev/null +++ b/src/lib/components/Sidebar.svelte @@ -0,0 +1,427 @@ + + + + + + + + +{#if isMobileMenuOpen} +
e.key === 'Escape' && closeMobileMenu()} + role="button" + tabindex="0" + >
+{/if} + + +
+ +
+ + + + +
+ + +
+ + +
+
+ + + + +
+ + + +
+
+ + +
+
+ {$resourceSearchFilter.length} resource{$resourceSearchFilter.length !== 1 ? 's' : ''} +
+
+ + + {#each $resourceSearchFilter as resDef} + {@const isSelected = $page.url.pathname.startsWith(`/${resDef.name}/`)} + + {/each} +
+
+
diff --git a/src/lib/components/Theme.svelte b/src/lib/components/Theme.svelte index d404947..29e0dfa 100644 --- a/src/lib/components/Theme.svelte +++ b/src/lib/components/Theme.svelte @@ -1,46 +1,57 @@ - - \ No newline at end of file + diff --git a/src/lib/components/TopHeader.svelte b/src/lib/components/TopHeader.svelte new file mode 100644 index 0000000..af14f07 --- /dev/null +++ b/src/lib/components/TopHeader.svelte @@ -0,0 +1,197 @@ + + + diff --git a/src/lib/components/Tree.svelte b/src/lib/components/Tree.svelte index f878989..ec2b90e 100644 --- a/src/lib/components/Tree.svelte +++ b/src/lib/components/Tree.svelte @@ -2,9 +2,23 @@ import { copy } from 'svelte-copy'; import { expandAll, expandAllScope, ulExpanded } from '$lib/store'; - import { getDescription, getScope, hashExistDeep, getDefault, getEnum } from './functions'; + import { + getDescription, + getScope, + hashExistDeep, + getDefault, + getEnum, + getFormat, + getMinimum, + getMaximum, + getMinItems, + getMaxItems + } from './functions'; + import EnumDisplay from './EnumDisplay.svelte'; import type { Schema } from '$lib/structure'; + import { onMount } from 'svelte'; + export let hash: string; export let source: string; export let key: string; @@ -13,12 +27,239 @@ export let parent: string; export let expanded: boolean; export let borderColor: string; + export let compact: boolean = false; + export let onResourcePage: boolean = false; + export let forceExpandAll: boolean = false; + $: desc = getDescription(folder); + $: compactRowPadding = compact ? 'px-1 py-0.5' : 'px-2 py-2'; + + // Portal action for tooltip (mount tooltip nodes to document.body) + function portal(node: HTMLElement) { + if (typeof document === 'undefined') return { destroy() {} }; + const target = document.body; + target.appendChild(node); + return { + destroy() { + try { + if (node.parentNode) node.parentNode.removeChild(node); + } catch (e) { + /* ignore */ + } + } + }; + } + + let showTooltip = false; + let tooltipStyle = ''; + let tooltipTimer: ReturnType | null = null; + let lastTooltipTarget: HTMLElement | null = null; + let rafId: number | null = null; + + function showTooltipAt(el: HTMLElement) { + try { + // Only compute the rect if the target changed or tooltip is not shown yet + if (lastTooltipTarget !== el || !showTooltip) { + lastTooltipTarget = el; + const rect = el.getBoundingClientRect(); + const scrollX = window.scrollX || window.pageXOffset || 0; + const scrollY = window.scrollY || window.pageYOffset || 0; + // estimate our preferred tooltip width + const estWidth = Math.min(window.innerWidth * 0.5, 420); + const rightSpace = window.innerWidth - rect.right; + const leftSpace = rect.left; + const bottomSpace = window.innerHeight - rect.bottom; + const topSpace = rect.top; + + let left: number; + let top: number; + let transform = ''; + + // Prefer to place tooltip to the right if there's enough room + if (rightSpace > estWidth + 32) { + left = rect.right + 8 + scrollX; + top = rect.top + rect.height / 2 + scrollY; + transform = 'translateY(-50%)'; + } else if (bottomSpace > 120) { + // place centered below element + left = rect.left + rect.width / 2 + scrollX; + top = rect.bottom + 8 + scrollY; + transform = 'translateX(-50%)'; + } else if (topSpace > 120) { + // place centered above element + left = rect.left + rect.width / 2 + scrollX; + top = rect.top - 8 + scrollY; + transform = 'translateX(-50%) translateY(-100%)'; + } else { + // fallback centered below + left = rect.left + rect.width / 2 + scrollX; + top = rect.bottom + 8 + scrollY; + transform = 'translateX(-50%)'; + } + + // Schedule the DOM update on the next animation frame to avoid forcing layout + if (rafId) cancelAnimationFrame(rafId); + rafId = requestAnimationFrame(() => { + tooltipStyle = `position:absolute; left:${left}px; top:${top}px; transform: ${transform}; z-index:2147483650;`; + showTooltip = true; + rafId = null; + }); + } + } catch (e) { + showTooltip = false; + } + } + + function hideTooltipSoon() { + if (tooltipTimer) clearTimeout(tooltipTimer); + tooltipTimer = setTimeout(() => { + showTooltip = false; + tooltipTimer = null; + }, 100); + } + + function parseResourceFromHash(h: string) { + // Remove trailing .spec or .status if present + let hh = String(h || ''); + hh = hh.replace(/\.spec$|\.status$/, ''); + const idx = hh.lastIndexOf('.'); + if (idx === -1) return { resName: hh, resVersion: '' }; + const resName = hh.substring(0, idx); + const resVersion = hh.substring(idx + 1); + return { resName, resVersion }; + } + + // Diff mode props + export let diffMode: boolean = false; + export let diffCompareData: Schema | null = null; + export let diffSide: 'left' | 'right' = 'left'; + export let diffCurrentData: Schema | null = null; + // When true, render the node as a ghost: invisible but keeps layout space + export let ghost: boolean = false; + export let showDiffIndicator: boolean = false; + + // reference exported prop so Svelte treats it as used (it's passed from parent/children) + $: { + // no-op read to avoid "unused export" diagnostics + void diffCurrentData; + } let currentId = `${parent}.${key}`; let timeout: ReturnType; + let copiedPath: string | null = null; let defaultVal: string = ''; + let formatVal: string = ''; + let minVal: number | undefined = undefined; + let maxVal: number | undefined = undefined; + let minItemsVal: number | undefined = undefined; + let maxItemsVal: number | undefined = undefined; $: defaultVal = getDefault(folder); + $: formatVal = getFormat(folder); + $: minVal = getMinimum(folder); + $: maxVal = getMaximum(folder); + $: minItemsVal = getMinItems(folder); + $: maxItemsVal = getMaxItems(folder); + + // Diff helper functions + function normalizeForComparison(schema: Schema): any { + if (!schema) return null; + + // Only compare the essential properties that matter for diffs + const normalized: any = {}; + + if ('type' in schema) normalized.type = schema.type; + if ('description' in schema) normalized.description = schema.description; + if ('default' in schema) normalized.default = schema.default; + if ('enum' in schema) normalized.enum = schema.enum; + if ('format' in schema) normalized.format = schema.format; + if ('minimum' in schema) normalized.minimum = schema.minimum; + if ('maximum' in schema) normalized.maximum = schema.maximum; + if ('minItems' in schema) normalized.minItems = schema.minItems; + if ('maxItems' in schema) normalized.maxItems = schema.maxItems; + if ('required' in schema) normalized.required = schema.required; + + // For objects and arrays, compare structure (including nested structure) + const scope = getScope(schema); + if ('properties' in scope) { + normalized.properties = {}; + for (const [pname, pschema] of Object.entries(scope.properties || {})) { + normalized.properties[pname] = normalizeForComparison(pschema as Schema); + } + } + if ('items' in scope) { + normalized.items = normalizeForComparison(scope.items); + } + + return normalized; + } + + function getNestedDiffStatus(): 'added' | 'removed' | 'modified' | 'unchanged' { + // Check for explicit diff status marker first (used for search highlighting) + if (folder && typeof folder === 'object' && '__diffStatus' in folder) { + const status = (folder as any).__diffStatus; + if (status === 'added' || status === 'removed' || status === 'modified') { + return status; + } + } + + if (!diffMode) return 'unchanged'; + + // Check if this specific field exists in both versions + const existsInCompare = diffCompareData !== null && diffCompareData !== undefined; + const existsHere = folder !== null && folder !== undefined; + + // Field added (exists here but not in compare) + if (existsHere && !existsInCompare) { + return diffSide === 'left' ? 'removed' : 'added'; + } + + // Field removed (doesn't exist here but exists in compare) + if (!existsHere && existsInCompare) { + return 'unchanged'; // Don't highlight on this side + } + + // Both exist - check if they're different by comparing normalized versions + if (existsHere && existsInCompare && diffCompareData) { + // prefer an explicitly-provided current-side value when available (passed from parent), + // otherwise fall back to the local folder. This also ensures the exported + // `diffCurrentData` prop is referenced so it's not treated as unused. + const currentNormalized = normalizeForComparison(diffCurrentData ?? folder); + const compareNormalized = normalizeForComparison(diffCompareData); + + const currentStr = JSON.stringify(currentNormalized); + const compareStr = JSON.stringify(compareNormalized); + + if (currentStr !== compareStr) { + return 'modified'; + } + } + + return 'unchanged'; + } + + $: nestedDiffStatus = getNestedDiffStatus(); + $: showDiffIndicator = (diffMode && nestedDiffStatus !== 'unchanged') || (folder && typeof folder === 'object' && '__diffStatus' in folder); + + // Helper to detect nested changes by comparing normalized representations + function hasNestedChanges(a: Schema | null, b: Schema | null): boolean { + const na = normalizeForComparison(a as Schema); + const nb = normalizeForComparison(b as Schema); + try { + return JSON.stringify(na) !== JSON.stringify(nb); + } catch (e) { + return false; + } + } + + let _initExpanded = false; + // Initialize expanded state once so users can still toggle it later + $: if (!_initExpanded) { + // If in diff mode and this node or any descendant differs, expand by default + if (diffMode && hasNestedChanges(diffCurrentData ?? folder, diffCompareData)) { + expanded = true; + } + _initExpanded = true; + } function handleLocalExpand() { expanded = !expanded; @@ -54,44 +295,220 @@ } -
  • -
    +
  • +
    + {#if showDiffIndicator} + + {/if} + {#if compact && showTooltip} + + {/if} {#if source !== 'uploaded'} - { + // Prefer using the current page path/search when available (resource view) + const pathParts = window.location.pathname.split('/').filter(Boolean); + let resName = ''; + let resVersion = ''; + if (pathParts.length >= 2) { + resName = pathParts[0]; + resVersion = pathParts[1]; + } else { + const lastDot = (hash || '').lastIndexOf('.'); + resName = lastDot !== -1 ? (hash || '').substring(0, lastDot) : hash || ''; + resVersion = lastDot !== -1 ? (hash || '').substring(lastDot + 1) : ''; + } + const urlSearch = new URLSearchParams(window.location.search); + const selectedReleaseParam = urlSearch.get('release'); + // Use explicit URL release param if present; otherwise use `source` only when + // it represents a real release name (avoid fallback `release` string). + const releaseParam = + selectedReleaseParam || (source && source !== 'release' ? source : ''); + const url = `${window.location.origin}/${resName}/${resVersion}${releaseParam ? `?release=${encodeURIComponent(releaseParam)}` : ''}#${currentId}`; + // Determine whether we are already on the resource page for this resource. + // If so, just update the hash to highlight and scroll to this field rather than opening a new page. + const isOnResourcePage = + onResourcePage && + pathParts.length >= 2 && + pathParts[0] === resName && + (!resVersion || pathParts[1] === resVersion); + // Construct the URL using parsed resName/resVersion from `hash` if possible + // Prefer the pathname-resolved resource name/version when on a resource page + let resourcePath = resName || ''; + let verPath = resVersion ? `/${resVersion}` : ''; + if (pathParts.length < 2) { + const { resName: parsedResName, resVersion: parsedResVersion } = parseResourceFromHash( + hash || '' + ); + if (parsedResName) resourcePath = parsedResName; + if (parsedResVersion) verPath = `/${parsedResVersion}`; + } + const base = window.location.origin; + const fullUrl = `${base}/${resourcePath}${verPath}${releaseParam ? `?release=${encodeURIComponent(releaseParam)}` : ''}#${currentId}`; + if (isOnResourcePage) { + // Navigate to the element hash in-place without opening a new page + const newUrl = `${window.location.pathname}${window.location.search}#${currentId}`; + history.pushState(null, '', newUrl); + const el = document.getElementById(currentId); + if (el && typeof el.scrollIntoView === 'function') { + el.scrollIntoView({ behavior: 'smooth', block: 'center' }); + // Optionally focus the element for accessibility + try { + (el as HTMLElement).focus(); + } catch (e) { + /* ignore */ + } + // Add temporary highlight to make the selected field visually distinct AND copy link + try { + el.classList.add('bg-amber-100', 'dark:bg-amber-900/10'); + // set copy indication + copiedPath = currentId; + if (timeout) clearTimeout(timeout); + timeout = setTimeout(() => { + if (copiedPath === currentId) copiedPath = null; + }, 500); + try { + navigator.clipboard.writeText(fullUrl); + } catch (e) { + /* ignore */ + } + setTimeout(() => { + el.classList.remove('bg-amber-100', 'dark:bg-amber-900/10'); + }, 1800); + } catch (e) { + /* ignore */ + } + } + } else { + // Prefetch the resource YAML to warm the HTTP cache and reduce the two-step blank loading, + // but don't block the UI for too long — try fetch and open immediately. + try { + fetch(fullUrl, { mode: 'same-origin', cache: 'reload' }); + } catch (e) { + /* ignore */ + } + window.open(fullUrl, '_blank'); + } + e.preventDefault(); + }} use:copy={{ - text: window.location.origin + window.location.pathname + `#${currentId}`, + text: (() => { + const pathParts = window.location.pathname.split('/').filter(Boolean); + let resName = ''; + let resVersion = ''; + if (pathParts.length >= 2) { + resName = pathParts[0]; + resVersion = pathParts[1]; + } else { + const lastDot = (hash || '').lastIndexOf('.'); + resName = lastDot !== -1 ? (hash || '').substring(0, lastDot) : hash || ''; + resVersion = lastDot !== -1 ? (hash || '').substring(lastDot + 1) : ''; + } + const urlSearch = new URLSearchParams(window.location.search); + const selectedReleaseParam = urlSearch.get('release'); + const releaseParam = + selectedReleaseParam || (source && source !== 'release' ? source : ''); + return ( + window.location.origin + + `/${resName}/${resVersion}${releaseParam ? `?release=${encodeURIComponent(releaseParam)}` : ''}#${currentId}` + ); + })(), onCopy({ event }: any) { const target = event?.target as HTMLElement | null; if (target) { @@ -101,41 +518,188 @@ }, 500); } } - }}>## {/if}
    {#if expanded} -
      -
    • - {getDescription(folder)} -
    • +
        + {#if !compact} +
      • + {getDescription(folder)} +
      • + {/if} + + {#if defaultVal} -
      • - default: {defaultVal} +
      • + default: + {defaultVal} +
      • + {:else if diffMode && diffCompareData && getDefault(diffCompareData)} +
      • +  
      • {/if} {#if getEnum(folder)} -
      • - enum: {getEnum(folder)} +
      • + enum: +
        + +
        +
      • + {:else if diffMode && diffCompareData && getEnum(diffCompareData)} +
      • +  
      • {/if} + {#if formatVal} +
      • + format: + {formatVal} +
      • + {:else if diffMode && diffCompareData && getFormat(diffCompareData)} +
      • +   +
      • + {/if} + {#if minVal !== undefined || maxVal !== undefined} +
      • + constraints: + + {#if minVal !== undefined}min: {minVal}{/if} + {#if minVal !== undefined && maxVal !== undefined}, + {/if} + {#if maxVal !== undefined}max: {maxVal}{/if} + +
      • + {:else if diffMode && diffCompareData && (getMinimum(diffCompareData) !== undefined || getMaximum(diffCompareData) !== undefined)} +
      • +   +
      • + {/if} + {#if minItemsVal !== undefined || maxItemsVal !== undefined} +
      • + array size: + + {#if minItemsVal !== undefined}minItems: {minItemsVal}{/if} + {#if minItemsVal !== undefined && maxItemsVal !== undefined}, + {/if} + {#if maxItemsVal !== undefined}maxItems: {maxItemsVal}{/if} + +
      • + {:else if diffMode && diffCompareData && (getMinItems(diffCompareData) !== undefined || getMaxItems(diffCompareData) !== undefined)} +
      • +   +
      • + {/if} + {#if folder.type === 'object' || folder.type === 'array'} {@const props = propExist()} {#if typeof props === 'object'} - {#each Object.entries(props) as [subkey, subfolder]} - {@const scope = getScope(folder)} - {@const requiredList = 'required' in scope ? scope.required : []} - + {@const thisScope = getScope(folder)} + {@const localCompareScope = + diffMode && diffCompareData ? getScope(diffCompareData) : null} + {@const canonical = + diffMode && diffSide === 'left' && localCompareScope ? localCompareScope : thisScope} + {@const baseKeys = + canonical && 'properties' in canonical + ? Object.keys((canonical as any).properties) + : 'properties' in thisScope + ? Object.keys((thisScope as any).properties) + : []} + {@const otherScope = canonical === thisScope ? localCompareScope : thisScope} + {@const otherKeys = + otherScope && 'properties' in otherScope ? Object.keys(otherScope.properties) : []} + {@const combinedKeys = (() => { + const arr: string[] = [...baseKeys]; + for (const k of otherKeys) if (!arr.includes(k)) arr.push(k); + return arr; + })()} + {#each combinedKeys as subkey} + {@const requiredList = 'required' in thisScope ? thisScope.required : []} + {@const existsHere = + 'properties' in thisScope && subkey in (thisScope.properties || {})} + {@const subfolder = existsHere ? thisScope.properties[subkey] : null} + {@const subCompareData = + diffMode && + localCompareScope && + 'properties' in localCompareScope && + subkey in localCompareScope.properties + ? localCompareScope.properties[subkey] + : null} + {@const subCurrentData = diffMode && existsHere ? subfolder : null} + {#if existsHere} + + {:else} + + + {/if} {/each} {/if} {/if} diff --git a/src/lib/components/YangView.svelte b/src/lib/components/YangView.svelte new file mode 100644 index 0000000..b903706 --- /dev/null +++ b/src/lib/components/YangView.svelte @@ -0,0 +1,790 @@ + + +
          + {#if paths.length === 0} +
        • No fields found for this entry.
        • + {/if} + {#each paths as p} +
        • +
          +
          + + {#if p.t} + {@const typeColor = + typeColors[p.t as unknown as keyof typeof typeColors] || + 'bg-gray-50 text-gray-700 border-gray-200 dark:bg-gray-900/30 dark:text-gray-300 dark:border-gray-800'} + {p.t} + {/if} + +
          + +
          +
          +
        • + {/each} +
        + +{#if showResourceModal} + +
        + + +
        +{/if} + + diff --git a/src/lib/components/functions.ts b/src/lib/components/functions.ts index b4c38c3..b97e316 100644 --- a/src/lib/components/functions.ts +++ b/src/lib/components/functions.ts @@ -1,53 +1,136 @@ -import type { Schema } from "$lib/structure" +import type { Schema } from '$lib/structure'; export function getScope(resource: Schema) { - return resource.type === "array" ? resource.items : resource + return resource.type === 'array' ? resource.items : resource; } export function getDescription(resource: Schema) { - return resource?.description || (resource.type === "array" ? resource.items.type : "") + return resource?.description || (resource.type === 'array' ? resource.items.type : ''); } // Get the default value of a resource field. export function getDefault(resource: Schema) { - // prefer explicit default on the resource, otherwise for arrays check items - const d = (resource && 'default' in resource && resource.default !== undefined) - ? resource.default - : (resource.type === 'array' && resource.items && 'default' in resource.items ? resource.items.default : undefined) + // prefer explicit default on the resource, otherwise for arrays check items + const d = + resource && 'default' in resource && resource.default !== undefined + ? resource.default + : resource.type === 'array' && resource.items && 'default' in resource.items + ? resource.items.default + : undefined; - if (d === undefined) return '' - try { - return typeof d === 'object' ? JSON.stringify(d) : String(d) - } catch (e) { - return String(d) - } + if (d === undefined) return ''; + try { + return typeof d === 'object' ? JSON.stringify(d) : String(d); + } catch (e) { + return String(d); + } } // Helper to safely get enum array from resource or its items function getEnumArray(resource: Schema): string[] | undefined { - if ('enum' in resource && Array.isArray(resource.enum)) { - return resource.enum; - } - if (resource.type === 'array' && resource.items && 'enum' in resource.items && Array.isArray(resource.items.enum)) { - return resource.items.enum; - } - return undefined; + if ('enum' in resource && Array.isArray(resource.enum)) { + return resource.enum; + } + if ( + resource.type === 'array' && + resource.items && + 'enum' in resource.items && + Array.isArray(resource.items.enum) + ) { + return resource.items.enum; + } + return undefined; } // Get the enum values for a resource field as a string like "[a, b, c]" export function getEnum(resource: Schema) { - const e = getEnumArray(resource); - if (!e || e.length === 0) return ''; - try { - return `[${e.join(', ')}]`; - } catch (err) { - return String(e); - } + const e = getEnumArray(resource); + if (!e || e.length === 0) return ''; + try { + return `[${e.join(', ')}]`; + } catch (err) { + return String(e); + } +} + +// Get the format of a resource field (e.g., "int32", "date-time") +export function getFormat(resource: Schema): string { + if ('format' in resource && resource.format) { + return resource.format; + } + if ( + resource.type === 'array' && + resource.items && + 'format' in resource.items && + resource.items.format + ) { + return resource.items.format; + } + return ''; +} + +// Get minimum constraint value +export function getMinimum(resource: Schema): number | undefined { + if ('minimum' in resource && resource.minimum !== undefined) { + return resource.minimum; + } + if ( + resource.type === 'array' && + resource.items && + 'minimum' in resource.items && + resource.items.minimum !== undefined + ) { + return resource.items.minimum; + } + return undefined; +} + +// Get maximum constraint value +export function getMaximum(resource: Schema): number | undefined { + if ('maximum' in resource && resource.maximum !== undefined) { + return resource.maximum; + } + if ( + resource.type === 'array' && + resource.items && + 'maximum' in resource.items && + resource.items.maximum !== undefined + ) { + return resource.items.maximum; + } + return undefined; +} + +// Get minItems constraint value for arrays +export function getMinItems(resource: Schema): number | undefined { + if (resource.type === 'array' && 'minItems' in resource && resource.minItems !== undefined) { + return resource.minItems; + } + return undefined; +} + +// Get maxItems constraint value for arrays +export function getMaxItems(resource: Schema): number | undefined { + if (resource.type === 'array' && 'maxItems' in resource && resource.maxItems !== undefined) { + return resource.maxItems; + } + return undefined; } export function hashExistDeep(hash: string, currentId: string) { - if (hash.indexOf(currentId) !== -1) { - return true - } - return false -} \ No newline at end of file + if (hash.indexOf(currentId) !== -1) { + return true; + } + return false; +} + +// Remove the first label of an eda.nokia.com FQDN: 'ntpclients.timing.eda.nokia.com' -> 'timing.eda.nokia.com' +export function stripResourcePrefixFQDN(fqdn: string) { + if (!fqdn || typeof fqdn !== 'string') return fqdn; + const suffix = '.eda.nokia.com'; + const trimmed = fqdn.trim(); + if (!trimmed.endsWith(suffix)) return trimmed; + const parts = trimmed.split('.'); + if (parts.length < 3) return trimmed; // not enough parts to strip + return parts.slice(1).join('.'); +} diff --git a/src/lib/releases.yaml b/src/lib/releases.yaml new file mode 100644 index 0000000..a9473b6 --- /dev/null +++ b/src/lib/releases.yaml @@ -0,0 +1,19 @@ +# EDA Release Configuration +# This file defines available EDA releases +releases: + - name: '25.12.1' + label: 'EDA 25.12.1' + folder: 'resources/25.12.1' + default: true + - name: '25.8.3' + label: 'EDA 25.8.3' + folder: 'resources/25.8.3' + - name: '25.8.2' + label: 'EDA 25.8.2' + folder: 'resources/25.8.2' + - name: '25.8.1' + label: 'EDA 25.8.1' + folder: 'resources/25.8.1' + - name: '25.4.2' + label: 'EDA 25.4.2' + folder: 'resources/25.4.2' diff --git a/src/lib/resources.yaml b/src/lib/resources.yaml index d976dad..de8ad4a 100644 --- a/src/lib/resources.yaml +++ b/src/lib/resources.yaml @@ -5,21 +5,21 @@ aaa.eda.nokia.com: versions: - name: v1alpha1 deprecated: false - appVersion: v4.0.0 + appVersion: v4.0.1 - name: nodegroups.aaa.eda.nokia.com group: aaa.eda.nokia.com kind: NodeGroup versions: - name: v1alpha1 deprecated: false - appVersion: v4.0.0 + appVersion: v4.0.1 - name: userdeployments.aaa.eda.nokia.com group: aaa.eda.nokia.com kind: UserDeployment versions: - name: v1alpha1 deprecated: false - appVersion: v4.0.0 + appVersion: v4.0.1 aifabrics.eda.nokia.com: - name: backends.aifabrics.eda.nokia.com group: aifabrics.eda.nokia.com @@ -27,7 +27,7 @@ aifabrics.eda.nokia.com: versions: - name: v1alpha1 deprecated: false - appVersion: v4.0.0 + appVersion: v4.0.1 appstore.eda.nokia.com: - name: appinstallers.appstore.eda.nokia.com group: appstore.eda.nokia.com @@ -61,14 +61,14 @@ bootstrap.eda.nokia.com: versions: - name: v1alpha1 deprecated: false - appVersion: v4.0.0 + appVersion: v4.0.1 - name: managementrouters.bootstrap.eda.nokia.com group: bootstrap.eda.nokia.com kind: ManagementRouter versions: - name: v1alpha1 deprecated: false - appVersion: v4.0.0 + appVersion: v4.0.1 certcheck.eda.nokia.com: - name: certificatechecks.certcheck.eda.nokia.com group: certcheck.eda.nokia.com @@ -83,21 +83,21 @@ components.eda.nokia.com: versions: - name: v1 deprecated: false - appVersion: v4.0.0 + appVersion: v4.0.1 - name: clusterdiscoveries.components.eda.nokia.com group: components.eda.nokia.com kind: ClusterDiscovery versions: - name: v1 deprecated: false - appVersion: v4.0.0 + appVersion: v4.0.1 - name: components.components.eda.nokia.com group: components.eda.nokia.com kind: Component versions: - name: v1 deprecated: false - appVersion: v4.0.0 + appVersion: v4.0.1 - name: v1alpha1 deprecated: false - name: controlmodules.components.eda.nokia.com @@ -106,21 +106,21 @@ components.eda.nokia.com: versions: - name: v1 deprecated: false - appVersion: v4.0.0 + appVersion: v4.0.1 - name: cpuoverlays.components.eda.nokia.com group: components.eda.nokia.com kind: CPUOverlay versions: - name: v1 deprecated: false - appVersion: v4.0.0 + appVersion: v4.0.1 - name: discoveries.components.eda.nokia.com group: components.eda.nokia.com kind: Discovery versions: - name: v1 deprecated: false - appVersion: v4.0.0 + appVersion: v4.0.1 - name: v1alpha1 deprecated: false - name: fabricmodules.components.eda.nokia.com @@ -129,49 +129,49 @@ components.eda.nokia.com: versions: - name: v1 deprecated: false - appVersion: v4.0.0 + appVersion: v4.0.1 - name: fans.components.eda.nokia.com group: components.eda.nokia.com kind: Fan versions: - name: v1 deprecated: false - appVersion: v4.0.0 + appVersion: v4.0.1 - name: interfacemodules.components.eda.nokia.com group: components.eda.nokia.com kind: InterfaceModule versions: - name: v1 deprecated: false - appVersion: v4.0.0 + appVersion: v4.0.1 - name: memoryoverlays.components.eda.nokia.com group: components.eda.nokia.com kind: MemoryOverlay versions: - name: v1 deprecated: false - appVersion: v4.0.0 + appVersion: v4.0.1 - name: monitors.components.eda.nokia.com group: components.eda.nokia.com kind: Monitor versions: - name: v1 deprecated: false - appVersion: v4.0.0 + appVersion: v4.0.1 - name: powersupplies.components.eda.nokia.com group: components.eda.nokia.com kind: PowerSupply versions: - name: v1 deprecated: false - appVersion: v4.0.0 + appVersion: v4.0.1 - name: volumeoverlays.components.eda.nokia.com group: components.eda.nokia.com kind: VolumeOverlay versions: - name: v1 deprecated: false - appVersion: v4.0.0 + appVersion: v4.0.1 config.eda.nokia.com: - name: configlets.config.eda.nokia.com group: config.eda.nokia.com @@ -179,7 +179,7 @@ config.eda.nokia.com: versions: - name: v1alpha1 deprecated: false - appVersion: v4.0.0 + appVersion: v4.0.1 connect.eda.nokia.com: - name: connectaudits.connect.eda.nokia.com group: connect.eda.nokia.com @@ -429,14 +429,14 @@ environment.eda.nokia.com: versions: - name: v1alpha1 deprecated: false - appVersion: v4.0.0 + appVersion: v4.0.1 - name: setupenvs.environment.eda.nokia.com group: environment.eda.nokia.com kind: SetupEnv versions: - name: v1alpha1 deprecated: false - appVersion: v4.0.0 + appVersion: v4.0.1 fabrics.eda.nokia.com: - name: fabrics.fabrics.eda.nokia.com group: fabrics.eda.nokia.com @@ -444,21 +444,21 @@ fabrics.eda.nokia.com: versions: - name: v1alpha1 deprecated: false - appVersion: v4.0.0 + appVersion: v4.0.1 - name: islpings.fabrics.eda.nokia.com group: fabrics.eda.nokia.com kind: IslPing versions: - name: v1alpha1 deprecated: false - appVersion: v4.0.0 + appVersion: v4.0.1 - name: isls.fabrics.eda.nokia.com group: fabrics.eda.nokia.com kind: ISL versions: - name: v1alpha1 deprecated: false - appVersion: v4.0.0 + appVersion: v4.0.1 filters.eda.nokia.com: - name: controlplanefilters.filters.eda.nokia.com group: filters.eda.nokia.com @@ -466,35 +466,35 @@ filters.eda.nokia.com: versions: - name: v1alpha1 deprecated: false - appVersion: v4.0.0 + appVersion: v4.0.1 - name: filterdeployments.filters.eda.nokia.com group: filters.eda.nokia.com kind: FilterDeployment versions: - name: v1alpha1 deprecated: false - appVersion: v4.0.0 + appVersion: v4.0.1 - name: filters.filters.eda.nokia.com group: filters.eda.nokia.com kind: Filter versions: - name: v1alpha1 deprecated: false - appVersion: v4.0.0 + appVersion: v4.0.1 - name: mirrorfilterdeployments.filters.eda.nokia.com group: filters.eda.nokia.com kind: MirrorFilterDeployment versions: - name: v1alpha1 deprecated: false - appVersion: v4.0.0 + appVersion: v4.0.1 - name: mirrorfilters.filters.eda.nokia.com group: filters.eda.nokia.com kind: MirrorFilter versions: - name: v1alpha1 deprecated: false - appVersion: v4.0.0 + appVersion: v4.0.1 influxdb.eda.nokia.com: - name: clusterexports.influxdb.eda.nokia.com group: influxdb.eda.nokia.com @@ -531,21 +531,21 @@ interfaces.eda.nokia.com: versions: - name: v1alpha1 deprecated: false - appVersion: v4.0.0 + appVersion: v4.0.1 - name: checkinterfacess.interfaces.eda.nokia.com group: interfaces.eda.nokia.com kind: CheckInterfaces versions: - name: v1alpha1 deprecated: false - appVersion: v4.0.0 + appVersion: v4.0.1 - name: interfaces.interfaces.eda.nokia.com group: interfaces.eda.nokia.com kind: Interface versions: - name: v1alpha1 deprecated: false - appVersion: v4.0.0 + appVersion: v4.0.1 kafka.eda.nokia.com: - name: clusterproducers.kafka.eda.nokia.com group: kafka.eda.nokia.com @@ -641,28 +641,28 @@ oam.eda.nokia.com: versions: - name: v1alpha1 deprecated: false - appVersion: v4.0.0 + appVersion: v4.0.1 - name: pings.oam.eda.nokia.com group: oam.eda.nokia.com kind: Ping versions: - name: v1alpha1 deprecated: false - appVersion: v4.0.0 + appVersion: v4.0.1 - name: techsupports.oam.eda.nokia.com group: oam.eda.nokia.com kind: TechSupport versions: - name: v1alpha1 deprecated: false - appVersion: v4.0.0 + appVersion: v4.0.1 - name: thresholds.oam.eda.nokia.com group: oam.eda.nokia.com kind: Threshold versions: - name: v1alpha1 deprecated: false - appVersion: v4.0.0 + appVersion: v4.0.1 os.eda.nokia.com: - name: deployimages.os.eda.nokia.com group: os.eda.nokia.com @@ -670,7 +670,7 @@ os.eda.nokia.com: versions: - name: v1alpha1 deprecated: false - appVersion: v4.0.0 + appVersion: v4.0.1 otlp.eda.nokia.com: - name: clustermetricexports.otlp.eda.nokia.com group: otlp.eda.nokia.com @@ -737,7 +737,7 @@ protocols.eda.nokia.com: versions: - name: v1 deprecated: false - appVersion: v4.0.0 + appVersion: v4.0.1 - name: v1alpha1 deprecated: true appVersion: v3.0.2+25.4.3 @@ -747,7 +747,7 @@ protocols.eda.nokia.com: versions: - name: v1 deprecated: false - appVersion: v4.0.0 + appVersion: v4.0.1 - name: v1alpha1 deprecated: true appVersion: v3.0.2+25.4.3 @@ -757,7 +757,7 @@ protocols.eda.nokia.com: versions: - name: v1 deprecated: false - appVersion: v4.0.0 + appVersion: v4.0.1 - name: v1alpha1 deprecated: true appVersion: v3.0.2+25.4.3 @@ -767,7 +767,7 @@ protocols.eda.nokia.com: versions: - name: v1 deprecated: false - appVersion: v4.0.0 + appVersion: v4.0.1 - name: v1alpha1 deprecated: true appVersion: v3.0.2+25.4.3 @@ -777,7 +777,7 @@ protocols.eda.nokia.com: versions: - name: v1 deprecated: false - appVersion: v4.0.0 + appVersion: v4.0.1 - name: v1alpha1 deprecated: true - name: defaultaggregateroutes.protocols.eda.nokia.com @@ -786,7 +786,7 @@ protocols.eda.nokia.com: versions: - name: v1 deprecated: false - appVersion: v4.0.0 + appVersion: v4.0.1 - name: v1alpha1 deprecated: true appVersion: v3.0.2+25.4.3 @@ -796,7 +796,7 @@ protocols.eda.nokia.com: versions: - name: v1 deprecated: false - appVersion: v4.0.0 + appVersion: v4.0.1 - name: v1alpha1 deprecated: true appVersion: v3.0.2+25.4.3 @@ -806,7 +806,7 @@ protocols.eda.nokia.com: versions: - name: v1 deprecated: false - appVersion: v4.0.0 + appVersion: v4.0.1 - name: v1alpha1 deprecated: true appVersion: v3.0.2+25.4.3 @@ -816,7 +816,7 @@ protocols.eda.nokia.com: versions: - name: v1 deprecated: false - appVersion: v4.0.0 + appVersion: v4.0.1 - name: v1alpha1 deprecated: true appVersion: v3.0.2+25.4.3 @@ -826,7 +826,7 @@ protocols.eda.nokia.com: versions: - name: v1 deprecated: false - appVersion: v4.0.0 + appVersion: v4.0.1 - name: v1alpha1 deprecated: true appVersion: v3.0.2+25.4.3 @@ -836,7 +836,7 @@ protocols.eda.nokia.com: versions: - name: v1 deprecated: false - appVersion: v4.0.0 + appVersion: v4.0.1 - name: v1alpha1 deprecated: true appVersion: v3.0.2+25.4.3 @@ -846,7 +846,7 @@ protocols.eda.nokia.com: versions: - name: v1 deprecated: false - appVersion: v4.0.0 + appVersion: v4.0.1 - name: v1alpha1 deprecated: true appVersion: v3.0.2+25.4.3 @@ -856,7 +856,7 @@ protocols.eda.nokia.com: versions: - name: v1 deprecated: false - appVersion: v4.0.0 + appVersion: v4.0.1 - name: v1alpha1 deprecated: true appVersion: v3.0.2+25.4.3 @@ -866,7 +866,7 @@ protocols.eda.nokia.com: versions: - name: v1 deprecated: false - appVersion: v4.0.0 + appVersion: v4.0.1 - name: v1alpha1 deprecated: true appVersion: v3.0.2+25.4.3 @@ -876,7 +876,7 @@ protocols.eda.nokia.com: versions: - name: v1 deprecated: false - appVersion: v4.0.0 + appVersion: v4.0.1 - name: v1alpha1 deprecated: true appVersion: v3.0.2+25.4.3 @@ -887,7 +887,7 @@ qos.eda.nokia.com: versions: - name: v1 deprecated: false - appVersion: v4.0.0 + appVersion: v4.0.1 - name: v1alpha1 deprecated: true appVersion: v3.0.2+25.4.3 @@ -897,7 +897,7 @@ qos.eda.nokia.com: versions: - name: v1 deprecated: false - appVersion: v4.0.0 + appVersion: v4.0.1 - name: v1alpha1 deprecated: true appVersion: v3.0.2+25.4.3 @@ -907,7 +907,7 @@ qos.eda.nokia.com: versions: - name: v1 deprecated: false - appVersion: v4.0.0 + appVersion: v4.0.1 - name: v1alpha1 deprecated: true appVersion: v3.0.2+25.4.3 @@ -917,7 +917,7 @@ qos.eda.nokia.com: versions: - name: v1 deprecated: false - appVersion: v4.0.0 + appVersion: v4.0.1 - name: v1alpha1 deprecated: true appVersion: v3.0.2+25.4.3 @@ -927,7 +927,7 @@ qos.eda.nokia.com: versions: - name: v1 deprecated: false - appVersion: v4.0.0 + appVersion: v4.0.1 - name: v1alpha1 deprecated: true appVersion: v3.0.2+25.4.3 @@ -937,7 +937,7 @@ qos.eda.nokia.com: versions: - name: v1 deprecated: false - appVersion: v4.0.0 + appVersion: v4.0.1 - name: v1alpha1 deprecated: true appVersion: v3.0.2+25.4.3 @@ -977,42 +977,42 @@ routing.eda.nokia.com: versions: - name: v1alpha1 deprecated: false - appVersion: v4.0.0 + appVersion: v4.0.1 - name: defaultinterfaces.routing.eda.nokia.com group: routing.eda.nokia.com kind: DefaultInterface versions: - name: v1alpha1 deprecated: false - appVersion: v4.0.0 + appVersion: v4.0.1 - name: defaultrouters.routing.eda.nokia.com group: routing.eda.nokia.com kind: DefaultRouter versions: - name: v1alpha1 deprecated: false - appVersion: v4.0.0 + appVersion: v4.0.1 - name: drains.routing.eda.nokia.com group: routing.eda.nokia.com kind: Drain versions: - name: v1alpha1 deprecated: false - appVersion: v4.0.0 + appVersion: v4.0.1 - name: routelookups.routing.eda.nokia.com group: routing.eda.nokia.com kind: RouteLookup versions: - name: v1alpha1 deprecated: false - appVersion: v4.0.0 + appVersion: v4.0.1 - name: systeminterfaces.routing.eda.nokia.com group: routing.eda.nokia.com kind: SystemInterface versions: - name: v1alpha1 deprecated: false - appVersion: v4.0.0 + appVersion: v4.0.1 routingpolicies.eda.nokia.com: - name: aspathsetdeployments.routingpolicies.eda.nokia.com group: routingpolicies.eda.nokia.com @@ -1020,56 +1020,56 @@ routingpolicies.eda.nokia.com: versions: - name: v1alpha1 deprecated: false - appVersion: v4.0.0 + appVersion: v4.0.1 - name: aspathsets.routingpolicies.eda.nokia.com group: routingpolicies.eda.nokia.com kind: ASPathSet versions: - name: v1alpha1 deprecated: false - appVersion: v4.0.0 + appVersion: v4.0.1 - name: communitysetdeployments.routingpolicies.eda.nokia.com group: routingpolicies.eda.nokia.com kind: CommunitySetDeployment versions: - name: v1alpha1 deprecated: false - appVersion: v4.0.0 + appVersion: v4.0.1 - name: communitysets.routingpolicies.eda.nokia.com group: routingpolicies.eda.nokia.com kind: CommunitySet versions: - name: v1alpha1 deprecated: false - appVersion: v4.0.0 + appVersion: v4.0.1 - name: policydeployments.routingpolicies.eda.nokia.com group: routingpolicies.eda.nokia.com kind: PolicyDeployment versions: - name: v1alpha1 deprecated: false - appVersion: v4.0.0 + appVersion: v4.0.1 - name: policys.routingpolicies.eda.nokia.com group: routingpolicies.eda.nokia.com kind: Policy versions: - name: v1alpha1 deprecated: false - appVersion: v4.0.0 + appVersion: v4.0.1 - name: prefixsetdeployments.routingpolicies.eda.nokia.com group: routingpolicies.eda.nokia.com kind: PrefixSetDeployment versions: - name: v1alpha1 deprecated: false - appVersion: v4.0.0 + appVersion: v4.0.1 - name: prefixsets.routingpolicies.eda.nokia.com group: routingpolicies.eda.nokia.com kind: PrefixSet versions: - name: v1alpha1 deprecated: false - appVersion: v4.0.0 + appVersion: v4.0.1 security.eda.nokia.com: - name: keychaindeployments.security.eda.nokia.com group: security.eda.nokia.com @@ -1077,14 +1077,14 @@ security.eda.nokia.com: versions: - name: v1alpha1 deprecated: false - appVersion: v4.0.0 + appVersion: v4.0.1 - name: keychains.security.eda.nokia.com group: security.eda.nokia.com kind: Keychain versions: - name: v1alpha1 deprecated: false - appVersion: v4.0.0 + appVersion: v4.0.1 services.eda.nokia.com: - name: bridgedomaindeployments.services.eda.nokia.com group: services.eda.nokia.com @@ -1092,7 +1092,7 @@ services.eda.nokia.com: versions: - name: v1 deprecated: false - appVersion: v4.0.0 + appVersion: v4.0.1 - name: v1alpha1 deprecated: true appVersion: v3.0.2+25.4.3 @@ -1102,7 +1102,7 @@ services.eda.nokia.com: versions: - name: v1 deprecated: false - appVersion: v4.0.0 + appVersion: v4.0.1 - name: v1alpha1 deprecated: true appVersion: v3.0.2+25.4.3 @@ -1112,7 +1112,7 @@ services.eda.nokia.com: versions: - name: v1 deprecated: false - appVersion: v4.0.0 + appVersion: v4.0.1 - name: v1alpha1 deprecated: true appVersion: v3.0.2+25.4.3 @@ -1122,7 +1122,7 @@ services.eda.nokia.com: versions: - name: v1 deprecated: false - appVersion: v4.0.0 + appVersion: v4.0.1 - name: v1alpha1 deprecated: true appVersion: v3.0.2+25.4.3 @@ -1132,7 +1132,7 @@ services.eda.nokia.com: versions: - name: v1 deprecated: false - appVersion: v4.0.0 + appVersion: v4.0.1 - name: v1alpha1 deprecated: true - name: irbinterfaces.services.eda.nokia.com @@ -1141,7 +1141,7 @@ services.eda.nokia.com: versions: - name: v1 deprecated: false - appVersion: v4.0.0 + appVersion: v4.0.1 - name: v1alpha1 deprecated: true appVersion: v3.0.2+25.4.3 @@ -1151,7 +1151,7 @@ services.eda.nokia.com: versions: - name: v1 deprecated: false - appVersion: v4.0.0 + appVersion: v4.0.1 - name: v1alpha1 deprecated: true appVersion: v3.0.2+25.4.3 @@ -1161,7 +1161,7 @@ services.eda.nokia.com: versions: - name: v1 deprecated: false - appVersion: v4.0.0 + appVersion: v4.0.1 - name: v1alpha1 deprecated: true appVersion: v3.0.2+25.4.3 @@ -1171,7 +1171,7 @@ services.eda.nokia.com: versions: - name: v1 deprecated: false - appVersion: v4.0.0 + appVersion: v4.0.1 - name: v1alpha1 deprecated: true appVersion: v3.0.2+25.4.3 @@ -1181,7 +1181,7 @@ services.eda.nokia.com: versions: - name: v1 deprecated: false - appVersion: v4.0.0 + appVersion: v4.0.1 - name: v1alpha1 deprecated: true appVersion: v3.0.2+25.4.3 @@ -1191,7 +1191,7 @@ services.eda.nokia.com: versions: - name: v1 deprecated: false - appVersion: v4.0.0 + appVersion: v4.0.1 - name: v1alpha1 deprecated: true appVersion: v3.0.2+25.4.3 @@ -1201,7 +1201,7 @@ services.eda.nokia.com: versions: - name: v1 deprecated: false - appVersion: v4.0.0 + appVersion: v4.0.1 - name: v1alpha1 deprecated: true appVersion: v3.0.2+25.4.3 @@ -1212,7 +1212,7 @@ siteinfo.eda.nokia.com: versions: - name: v1alpha1 deprecated: false - appVersion: v4.0.0 + appVersion: v4.0.1 snow.eda.nokia.com: - name: clusterincidents.snow.eda.nokia.com group: snow.eda.nokia.com @@ -1249,7 +1249,7 @@ system.eda.nokia.com: versions: - name: v1alpha1 deprecated: false - appVersion: v4.0.0 + appVersion: v4.0.1 test.eda.nokia.com: - name: simlinks.test.eda.nokia.com group: test.eda.nokia.com @@ -1270,7 +1270,7 @@ timing.eda.nokia.com: versions: - name: v1alpha1 deprecated: false - appVersion: v4.0.0 + appVersion: v4.0.1 topologies.eda.nokia.com: - name: cpuutiloverlays.topologies.eda.nokia.com group: topologies.eda.nokia.com @@ -1285,7 +1285,7 @@ topologies.eda.nokia.com: versions: - name: v1alpha1 deprecated: false - appVersion: v4.0.0 + appVersion: v4.0.1 - name: diskoverlays.topologies.eda.nokia.com group: topologies.eda.nokia.com kind: DiskOverlay @@ -1299,7 +1299,7 @@ topologies.eda.nokia.com: versions: - name: v1alpha1 deprecated: false - appVersion: v4.0.0 + appVersion: v4.0.1 - name: memoryoverlays.topologies.eda.nokia.com group: topologies.eda.nokia.com kind: MemoryOverlay @@ -1313,25 +1313,25 @@ topologies.eda.nokia.com: versions: - name: v1alpha1 deprecated: false - appVersion: v4.0.0 + appVersion: v4.0.1 - name: topologies.topologies.eda.nokia.com group: topologies.eda.nokia.com kind: Topology versions: - name: v1alpha1 deprecated: false - appVersion: v4.0.0 + appVersion: v4.0.1 - name: topologygroupings.topologies.eda.nokia.com group: topologies.eda.nokia.com kind: TopologyGrouping versions: - name: v1alpha1 deprecated: false - appVersion: v4.0.0 + appVersion: v4.0.1 - name: trafficrateoverlays.topologies.eda.nokia.com group: topologies.eda.nokia.com kind: TrafficRateOverlay versions: - name: v1alpha1 deprecated: false - appVersion: v4.0.0 + appVersion: v4.0.1 diff --git a/src/lib/store.ts b/src/lib/store.ts index 8637d4b..27311e6 100644 --- a/src/lib/store.ts +++ b/src/lib/store.ts @@ -1,5 +1,34 @@ -import { writable } from 'svelte/store' +import { writable } from 'svelte/store'; -export const expandAll = writable(false) -export const expandAllScope = writable("local") // supported value (local/global) -export const ulExpanded = writable([]) +export const expandAll = writable(false); +export const expandAllScope = writable('local'); // supported value (local/global) +export const ulExpanded = writable([]); + +// Sidebar open state for desktop (persist across sessions) +function createSidebarStore() { + const key = 'sidebarOpen'; + const initial = + typeof localStorage !== 'undefined' && localStorage.getItem(key) !== null + ? localStorage.getItem(key) === 'true' + : true; + + const { subscribe, set, update } = writable(initial); + + subscribe((v) => { + try { + if (typeof localStorage !== 'undefined') localStorage.setItem(key, v ? 'true' : 'false'); + } catch (e) { + // ignore + } + }); + + return { + subscribe, + open: () => set(true), + close: () => set(false), + toggle: () => update((v) => !v), + set + }; +} + +export const sidebarOpen = createSidebarStore(); diff --git a/src/lib/structure.ts b/src/lib/structure.ts index 20e8e8f..df5a42f 100644 --- a/src/lib/structure.ts +++ b/src/lib/structure.ts @@ -1,68 +1,83 @@ export interface CrdVersions { - name: string; - deprecated: boolean; - appVersion: string; + name: string; + deprecated: boolean; + appVersion: string; + edaRelease?: string; // EDA release version (e.g., "24.10", "24.11") } export interface CrdResource { - name: string; - group: string; - kind: string; - versions: CrdVersions[]; + name: string; + group: string; + kind: string; + versions: CrdVersions[]; + edaRelease?: string; // EDA release this resource belongs to } export interface CrdVersionsMap { - [group: string]: CrdResource[]; + [group: string]: CrdResource[]; } -type JSONType = "string" | "integer" | "number" | "boolean" | "object" | "array"; +type JSONType = 'string' | 'integer' | 'number' | 'boolean' | 'object' | 'array'; export interface BaseSchema { - description?: string; - default?: unknown; - format?: string; - enum?: string[]; - minimum?: number; - maximum?: number; - type: JSONType; + description?: string; + default?: unknown; + format?: string; + enum?: string[]; + minimum?: number; + maximum?: number; + type: JSONType; } export interface ObjectSchema extends BaseSchema { - type: "object"; - properties: { - [key: string]: Schema; - }; - required?: string[]; + type: 'object'; + properties: { + [key: string]: Schema; + }; + required?: string[]; } export interface ArraySchema extends BaseSchema { - type: "array"; - items: Schema; + type: 'array'; + items: Schema; + minItems?: number; + maxItems?: number; } export interface PrimitiveSchema extends BaseSchema { - type: Exclude; + type: Exclude; } export type Schema = ObjectSchema | ArraySchema | PrimitiveSchema; -export interface OpenAPISchema { - name: string; - deprecated: boolean; - schema: { - openAPIV3Schema: { - properties: { - spec: Schema; - status: Schema - } - } - } +export interface OpenAPISchema { + name: string; + deprecated: boolean; + schema: { + openAPIV3Schema: { + properties: { + spec: Schema; + status: Schema; + }; + }; + }; } export interface VersionSchema { - [key: string]: { - spec: Schema; - status: Schema; - deprecated: boolean; - } -} \ No newline at end of file + [key: string]: { + spec: Schema; + status: Schema; + deprecated: boolean; + }; +} + +export interface EdaRelease { + name: string; // "latest", "24.11", "24.10" + label: string; // "Latest", "EDA 24.11", "EDA 24.10" + folder: string; // "resources", "resources-24.11", "resources-24.10" + default?: boolean; // Is this the default release? +} + +export interface ReleasesConfig { + releases: EdaRelease[]; +} diff --git a/src/routes/+error.svelte b/src/routes/+error.svelte index 08af5cd..bf652d6 100644 --- a/src/routes/+error.svelte +++ b/src/routes/+error.svelte @@ -8,7 +8,7 @@
        Logo
        -

        Resource Browser

        +

        Resource Browser

        Error {$page.status}

        diff --git a/src/routes/+layout.svelte b/src/routes/+layout.svelte index b93e9ba..504f2ce 100644 --- a/src/routes/+layout.svelte +++ b/src/routes/+layout.svelte @@ -1,7 +1,198 @@ -{@render children()} +{#if AnimatedBackground} + +{/if} + + + + +{#if $isDetailPage} +
        + +
        + {@render children()} +
        +
        +{:else} +
        + {@render children()} +
        +{/if} diff --git a/src/routes/+page.svelte b/src/routes/+page.svelte index 70f4fa5..ac102f2 100644 --- a/src/routes/+page.svelte +++ b/src/routes/+page.svelte @@ -1,96 +1,993 @@ - EDA Resource Browser + EDA Resource Browser{selectedResource + ? ` | ${resourceInfo?.kind || selectedResource}` + : ''} -
        -
        -
        -
        -
        - Logo -
        -

        Nokia EDA

        -

        Resource Browser

        -
        -
        -
        -

        - View Nokia EDA Custom Resource Definitions - (CRD) for all applications from Nokia catalog. -

        -

        - The resource definitions allow users to easily discover the specification they need to - provide to the platform in order to manage resources provided by Nokia applications. -

        -

        The status fields for each resource determine the available status fields for that resource.

        -
        - -
        +
        +
        + {#if selectedResource} + + {/if} + {#if selectedResource}
        -
        - +
        + +
        + +
        -
        -
        + {/if} + {#if mobileMenuOpen && selectedResource}{/if} + +
        + + {#if !selectedResource && !showBrowseMode} + +
        + + + {#if mobileReleasesOpen} +
        + + +
        + {/if} + + +
        + +
        + +
        + +
        +
        + +
        + {#each groupedReleases as group} +
        +

        {group.label}

        +
        + {#each group.releases.slice(0, 3) as release} + + {/each} + {#if group.releases.length > 3} +
        + + {#if group.showMore} +
        + {#each group.releases.slice(3) as r} + + {/each} +
        + {/if} +
        + {/if} +
        +
        + {/each} +
        + + +
        +
        +
        + EDA +
        +

        + Nokia EDA +

        +

        + Resource Browser +

        +
        +
        + +
        +

        + Nokia EDA makes extensive use of structured data models. Each application has a CRD model that defines its configuration and state. +

        +

        + A central role that is given to CRDs in Nokia EDA demands a convenient interface to browse, search through and process these data models. To answer these demands this portal provides: +

        +
        +
        + + +
        + + + + + +
        +
        +
        +
        +
        +
        + {:else if loading} +
        +
        + + + + +

        Loading resource...

        +
        +
        + {:else if resourceData} +
        +
        +
        +
        +
        +
        +

        + {formatResourceName(resourceInfo?.name || '')} +

        +

        + {formatGroupName(resourceInfo?.name || '')} +

        +
        +
        + + +
        +
        +
        + +
        + {#if viewMode === 'schema'} + + {:else} +
        +
        + + +
        +
        + +
        + {#if validationResult === 'valid'} +
        +
        + + + +
        +

        + Valid Configuration +

        +

        + Your YAML matches the schema requirements. +

        +
        +
        +
        + {/if} + {#if validationResult === 'invalid' && validationErrors.length > 0} +
        +
        + + + +
        +

        + Validation Errors ({validationErrors.length}) +

        +
          + {#each validationErrors as error} +
        • + {error.instancePath || '/'} + {error.message} +
        • + {/each} +
        +
        +
        +
        + {/if} +
        + {/if} +
        +
        +
        +
        + {/if}
        -
        -
        + +
        +
        diff --git a/src/routes/[name]/+page.ts b/src/routes/[name]/+page.ts index 5e4b974..f42cfc1 100644 --- a/src/routes/[name]/+page.ts +++ b/src/routes/[name]/+page.ts @@ -1,22 +1,60 @@ -import { error, redirect } from '@sveltejs/kit' +import { error, redirect } from '@sveltejs/kit'; -import type { CrdVersionsMap } from '$lib/structure' +import type { PageLoad } from './$types'; +import type { CrdVersionsMap, ReleasesConfig } from '$lib/structure'; -import yaml from 'js-yaml' -import res from '$lib/resources.yaml?raw' +import yaml from 'js-yaml'; +import res from '$lib/resources.yaml?raw'; +import releases from '$lib/releases.yaml?raw'; -const crdResources = yaml.load(res) -const resources = crdResources as CrdVersionsMap +const crdResources = yaml.load(res); +const resources = crdResources as CrdVersionsMap; +const releaseConfig = yaml.load(releases) as ReleasesConfig; -export async function load({ params }) { - const name = params.name - const rest = name.substring(name.indexOf(".") + 1) +export const load: PageLoad = async ({ params, url, fetch }) => { + const name = params.name; + const rest = name.substring(name.indexOf('.') + 1); - const crdMeta = resources[rest].filter(x => x.name === name) - if(crdMeta.length !== 1) { - throw error(404, "Invalid resource name") - } + // Check if a specific release is requested via query parameter + const requestedRelease = url.searchParams.get('release'); + let selectedRelease = releaseConfig.releases.find((r) => r.default) ?? releaseConfig.releases[0]; - const version = crdMeta[0].versions[0].name - throw redirect(307, `/${name}/${version}`); -} \ No newline at end of file + if (requestedRelease) { + const foundRelease = releaseConfig.releases.find((r) => r.name === requestedRelease); + if (foundRelease) { + selectedRelease = foundRelease; + } + } + + const releaseFolder = selectedRelease?.folder ?? 'resources/25.8.2'; + + // Load release-specific manifest + let releaseManifest: any[] = []; + try { + const manifestResp = await fetch(`/${releaseFolder}/manifest.json`); + if (manifestResp.ok) { + releaseManifest = await manifestResp.json(); + } + } catch (e) { + console.warn(`Could not load manifest for ${releaseFolder}`); + } + + // First try to get metadata from resources.yaml + let crdMeta = resources[rest]?.filter((x) => x.name === name) || []; + + // If not found in resources.yaml, try the release manifest (for "states" resources) + if (crdMeta.length === 0 && releaseManifest.length > 0) { + const manifestEntry = releaseManifest.find((x) => x.name === name); + if (manifestEntry) { + crdMeta = [manifestEntry]; + } + } + + if (crdMeta.length !== 1) { + throw error(404, 'Invalid resource name'); + } + + const version = crdMeta[0].versions[0].name; + const releaseParam = requestedRelease ? `?release=${requestedRelease}` : ''; + throw redirect(307, `/${name}/${version}${releaseParam}`); +}; diff --git a/src/routes/[name]/[version]/+page.svelte b/src/routes/[name]/[version]/+page.svelte index 6325380..1f25068 100644 --- a/src/routes/[name]/[version]/+page.svelte +++ b/src/routes/[name]/[version]/+page.svelte @@ -1,21 +1,176 @@ EDA Resource Browser | {name} {versionOnFocus} -
        - -
        -
        - -
        - -
        - -
        -
        -
        +{#key `${name}-${versionOnFocus}`} + + +
        +
        +
        +
        + +
        + +
        + + +
        + + + +
        + + + {#if viewMode === 'schema'} +
        + +
        +
        +
        +
        + + + +
        +
        +

        Specification

        +

        Required configuration

        +
        +
        +
        +
        + +
        +
        + + +
        +
        +
        +
        + + + +
        +
        +

        Status

        +

        Runtime status fields

        +
        +
        +
        +
        + +
        +
        +
        + {/if} + + + {#if viewMode === 'compare'} +
        +
        +
        +
        +
        + + + +
        +
        +

        Schema Comparison

        +

        + Compare with other versions +

        +
        +
        + +
        +
        + +
        + +
        + + + +
        +
        +
        +
        + +
        + +
        + + + +
        +
        +
        +
        +
        +
        +
        + {#if !compareVersion} +
        + + + +

        + No Version Selected +

        +

        + Select a version to compare with {versionOnFocus}. +

        +
        + {:else if isComparing} +
        +
        +
        + {:else if comparisonResult} +
        + +
        +
        +
        + {comparisonResult.baseRelease} + {versionOnFocus} +
        + + + +
        + {comparisonResult.compareRelease} + {compareVersion} +
        +
        +
        + + +
        +

        + + + + Specification +

        +
        +
        +

        + {versionOnFocus} +

        +
        + {#if DiffRender} + + {:else} +
        + Loading comparison UI… +
        + {/if} +
        +
        +
        +

        + {compareVersion} +

        +
        + {#if DiffRender} + + {:else} +
        + Loading comparison UI… +
        + {/if} +
        +
        +
        +
        + + +
        +

        + + + + Status +

        +
        +
        +

        + {versionOnFocus} +

        +
        + {#if DiffRender} + + {:else} +
        + Loading comparison UI… +
        + {/if} +
        +
        +
        +

        + {compareVersion} +

        +
        + {#if DiffRender} + + {:else} +
        + Loading comparison UI… +
        + {/if} +
        +
        +
        +
        +
        + {/if} +
        +
        + {/if} +
        +
        +
        + +
        +
        +
        +{/key} diff --git a/src/routes/[name]/[version]/+page.ts b/src/routes/[name]/[version]/+page.ts index dc6b490..0197422 100644 --- a/src/routes/[name]/[version]/+page.ts +++ b/src/routes/[name]/[version]/+page.ts @@ -1,44 +1,150 @@ -import { error } from '@sveltejs/kit' - -import type { CrdVersionsMap, OpenAPISchema } from '$lib/structure' - -import yaml from 'js-yaml' -import res from '$lib/resources.yaml?raw' - -const crdResources = yaml.load(res) -const resources = crdResources as CrdVersionsMap - -export async function load({ fetch, params }) { - const name = params.name - const versionOnFocus = params.version - const rest = name.substring(name.indexOf(".") + 1) - - const crdMeta = resources[rest].filter(x => x.name === name) - if(crdMeta.length !== 1) { - throw error(404, "Invalid resource name") - } - - const crdMetaVersion = crdMeta[0].versions.filter(x => x.name === versionOnFocus) - if(crdMetaVersion.length == 0) { - throw error(404, "Invalid version for the resource name") - } - - try { - const resp = await fetch(`/resources/${name}/${versionOnFocus}.yaml`) - const crdText = await resp.text() - const crd = yaml.load(crdText) as OpenAPISchema - - const group = crdMeta[0].group - const kind = crdMeta[0].kind - const deprecated = crdMetaVersion[0].deprecated - const appVersion = ('appVersion' in crdMetaVersion[0] ? crdMetaVersion[0].appVersion : "") - const validVersions = crdMeta[0].versions.map(x => x.name) - - const spec = crd.schema.openAPIV3Schema.properties.spec - const status = crd.schema.openAPIV3Schema.properties.status - - return { name, versionOnFocus, kind, group, deprecated, appVersion, validVersions, spec, status } - } catch(e) { - throw error(404, "Error fetching resource" + e) - } -} \ No newline at end of file +import { error } from '@sveltejs/kit'; + +import type { PageLoad } from './$types'; +import type { CrdVersionsMap, OpenAPISchema, ReleasesConfig } from '$lib/structure'; + +import yaml from 'js-yaml'; +import res from '$lib/resources.yaml?raw'; +import releases from '$lib/releases.yaml?raw'; + +const crdResources = yaml.load(res); +const resources = crdResources as CrdVersionsMap; +const releaseConfig = yaml.load(releases) as ReleasesConfig; +const allReleases = releaseConfig.releases; + +export const load: PageLoad = async ({ fetch, params, url }) => { + // Check if a specific release is requested via query parameter + const requestedRelease = url.searchParams.get('release'); + let selectedRelease = releaseConfig.releases.find((r) => r.default) ?? releaseConfig.releases[0]; + + if (requestedRelease) { + const foundRelease = releaseConfig.releases.find((r) => r.name === requestedRelease); + if (foundRelease) { + selectedRelease = foundRelease; + } + } + + const releaseFolder = selectedRelease?.folder ?? 'resources/25.8.2'; + const releaseLabel = selectedRelease?.label ?? selectedRelease?.name ?? ''; + const name = params.name; + const versionOnFocus = params.version; + const rest = name.substring(name.indexOf('.') + 1); + + // Load release-specific manifest + let releaseManifest: any[] = []; + try { + const manifestResp = await fetch(`/${releaseFolder}/manifest.json`); + if (manifestResp.ok) { + releaseManifest = await manifestResp.json(); + } + } catch (e) { + console.warn(`Could not load manifest for ${releaseFolder}, using fallback`); + } + + // Prefer release manifest entries when available; fallback to static resources.yaml otherwise + let crdMeta: any[] = []; + if (releaseManifest.length > 0) { + const manifestEntry = releaseManifest.find((x) => x.name === name); + if (manifestEntry) { + crdMeta = [manifestEntry]; + } + } + + if (crdMeta.length === 0) { + // Try to find resource in static resources.yaml as a fallback + crdMeta = resources[rest]?.filter((x) => x.name === name) || []; + } + + if (crdMeta.length !== 1) { + throw error(404, 'Invalid resource name'); + } + + const crdMetaVersion = crdMeta[0].versions.filter((x: any) => x.name === versionOnFocus); + if (crdMetaVersion.length == 0) { + throw error(404, 'Invalid version for the resource name'); + } + + try { + let resp = await fetch(`/${releaseFolder}/${name}/${versionOnFocus}.yaml`); + + if (!resp.ok) { + resp = await fetch(`/resources/${name}/${versionOnFocus}.yaml`); + } + + if (!resp.ok) { + throw error(404, 'Error fetching resource'); + } + + const crdText = await resp.text(); + const crd = yaml.load(crdText) as OpenAPISchema; + + const group = crdMeta[0].group; + const kind = crdMeta[0].kind; + const deprecated = crdMetaVersion[0].deprecated; + const appVersion = 'appVersion' in crdMetaVersion[0] ? crdMetaVersion[0].appVersion : ''; + + // Get valid versions for this resource from the manifest (release-specific) + // Fall back to crdMeta if manifest doesn't have it + const manifestResource = releaseManifest.find((r: any) => r.name === name); + const validVersions = + manifestResource?.versions?.map((v: any) => v.name) || + crdMeta[0].versions.map((x: any) => x.name); + + const spec = crd.schema.openAPIV3Schema.properties.spec; + const status = crd.schema.openAPIV3Schema.properties.status; + // Determine earliest release in which this specific version is marked deprecated. + // For LCP optimization: avoid fetching manifest.json across all releases during SSR + // (which can add significant latency) — instead, derive `deprecatedSince` from the + // current releaseManifest or fallback data, and compute a full deprecation history + // lazily on the client if needed. + let deprecatedSince: string | null = null; + // Use the releaseManifest (selected release) if it marks the version deprecated. + // If the selected release marks it deprecated, compute the earliest release + // in allReleases where the version was first marked deprecated by iterating + // releases in chronological order (old -> new). + const manifestEntry = releaseManifest.find((r: any) => r.name === name); + const manifestVersion = manifestEntry?.versions?.find((v: any) => v.name === versionOnFocus); + if (manifestVersion && manifestVersion.deprecated) { + // Iterate the releases from oldest to newest so we find the FIRST release + // where the `deprecated` flag becomes true for this version. + const sortedReleases = (allReleases || []).slice(0).reverse(); + for (const r of sortedReleases) { + try { + const resp = await fetch(`/${r.folder}/manifest.json`); + if (!resp.ok) continue; + const manifest = await resp.json(); + const entry = manifest.find((x: any) => x.name === name); + if (!entry || !entry.versions) continue; + const v = entry.versions.find((vv: any) => vv.name === versionOnFocus); + if (v && v.deprecated) { + deprecatedSince = r.label || r.name || null; + break; + } + } catch (e) { + // ignore fetch errors for a given release and continue + continue; + } + } + // Fallback: if we couldn't find an earlier release (rare), use the selected release label + if (!deprecatedSince) deprecatedSince = selectedRelease.label || selectedRelease.name || null; + } + return { + name, + versionOnFocus, + kind, + group, + deprecated, + appVersion, + validVersions, + spec, + status, + releaseLabel, + releaseFolder, + allReleases, + releaseManifest, + deprecatedSince + }; + } catch (e) { + throw error(404, 'Error fetching resource' + e); + } +}; diff --git a/src/routes/comparison/+page.svelte b/src/routes/comparison/+page.svelte new file mode 100644 index 0000000..5436cd8 --- /dev/null +++ b/src/routes/comparison/+page.svelte @@ -0,0 +1,1695 @@ + + + + EDA Resource Browser | Release Comparison + + + + + + +
        +
        +
        +
        +
        +
        +
        +
        + +
        + + + + +
        + +
        +
        +

        Compare Releases

        +

        + Select two release versions to analyze changes in Custom Resource Definitions. +

        +
        + +
        +
        + Source +
        +
        +
        + + +
        +
        + + +
        +
        +
        + + +
        +
        + Target +
        +
        +
        + + +
        +
        + + +
        +
        +
        +
        + +
        + +
        + {#if bulkDiffGenerating} +
        +
        +
        + {/if} +
        + + {#if bulkDiffReport} + +
        +
        + {#each [{ status: 'added', color: 'green', icon: 'M12 6v6m0 0v6m0-6h6m-6 0H6', label: 'Added' }, { status: 'removed', color: 'red', icon: 'M20 12H4', label: 'Removed' }, { status: 'modified', color: 'yellow', icon: 'M11 5H6a2 2 0 00-2 2v11a2 2 0 002 2h11a2 2 0 002-2v-5m-1.414-9.414a2 2 0 112.828 2.828L11.828 15H9v-2.828l8.586-8.586z', label: 'Modified' }, { status: 'unchanged', color: 'gray', icon: 'M9 12l2 2 4-4m6 2a9 9 0 11-18 0 9 9 0 0118 0z', label: 'Unchanged' }] as item} + + {/each} +
        + + +
        +
        +
        +
        + + + +
        +
        +

        + Comparison Report +

        +
        + {bulkDiffReport.sourceRelease} {bulkDiffReport.sourceVersion} + + {bulkDiffReport.targetRelease} {bulkDiffReport.targetVersion} +
        +
        +
        +
        + + + +
        +
        +
        + + +
        +
        +
        +
        + +
        + + {#if bulkDiffSearch} + + {/if} +
        +
        +
        + {filteredBulkDiffCrds.length} matches +
        +
        +
        +
        + +
        +
        +

        + Results +

        +
        + +
        +
        + + {#if filteredBulkDiffCrds.length > 0} + +
        + {#each filteredBulkDiffCrds as crd} +
        +
        +
        +
        + {@html highlightMatches( + stripResourcePrefixFQDN(crd.name), + debouncedBulkDiffSearch, + bulkDiffSearchRegex + )} +
        +
        {crd.kind}
        +
        +
        + + {#if crd.status === 'added'} + + {:else if crd.status === 'removed'} + + {:else if crd.status === 'modified'} +
        + + +
        + {:else} + + {/if} + {crd.status} +
        + +
        +
        + {#if expandedCrdNames.includes(crd.name)} +
        + {#if crd.details && crd.details.length > 0} +
        +
        + +
        +
        SPEC
        + {#key debouncedBulkDiffSearch} + {#each crd.details.filter((d: any) => String(d) + .toLowerCase() + .includes('spec.')) as d} + {#if d.startsWith('+')} +
        + + {@html highlightMatches( + d.replace(/^\+\s*[^:]+:\s*/, ''), + debouncedBulkDiffSearch, + bulkDiffSearchRegex + )} +
        + {:else} +
        + + {d} +
        + {/if} + {/each} + {/key} +
        + +
        +
        + STATUS +
        + {#key debouncedBulkDiffSearch} + {#each crd.details.filter((d: any) => String(d) + .toLowerCase() + .includes('status.')) as d} + {#if d.startsWith('+')} +
        + + {@html highlightMatches( + d.replace(/^\+\s*[^:]+:\s*/, ''), + debouncedBulkDiffSearch, + bulkDiffSearchRegex + )} +
        + {:else if d.startsWith('-')} +
        + + {@html highlightMatches( + d.replace(/^\-\s*[^:]+:\s*/, ''), + debouncedBulkDiffSearch, + bulkDiffSearchRegex + )} +
        + {:else if d.startsWith('~')} +
        + + {@html highlightMatches( + d.replace(/^~\s*[^:]+:\s*/, ''), + debouncedBulkDiffSearch, + bulkDiffSearchRegex + )} +
        + {:else} +
        + + {d} +
        + {/if} + {/each} + {/key} +
        +
        +
        + {:else} +
        + No details. +
        + {/if} +
        + {/if} +
        + {/each} +
        + + + + {:else} +
        +
        +
        + + + +
        +
        +

        + No Results Found +

        +

        + No CRDs match the selected filters. Try adjusting your filter criteria. +

        +
        +
        +
        + {/if} + + +
        +
        + {/if} +
        +
        +
        +
        +
        + +
        +
        + +
        +
        diff --git a/src/routes/spec-search-auto/+page.svelte b/src/routes/spec-search-auto/+page.svelte new file mode 100644 index 0000000..7ec3002 --- /dev/null +++ b/src/routes/spec-search-auto/+page.svelte @@ -0,0 +1,1317 @@ + + + + EDA Resource Browser | Resource Search + + +
        +
        + + +
        + + + + + + + {#if groupedResults.length > 0} +
        + {groupedResults.length} resource{groupedResults.length !== 1 ? 's' : ''} found + {#if results.length > MAX_RESULTS} + (showing first {MAX_RESULTS}) + {/if} +
        + {/if} +
        + + +
        +
        +
        + + + +
        + { + if (e.key === 'Enter') { + e.preventDefault(); + if (debounceTimer) { + clearTimeout(debounceTimer); + debounceTimer = null; + } + performSearch(); + } + }} + placeholder="Search property paths..." + class="w-full rounded-lg border border-gray-300 bg-white py-2 pl-9 pr-9 text-sm text-gray-900 shadow-sm transition-all placeholder:text-gray-400 hover:border-cyan-400 focus:border-cyan-500 focus:outline-none focus:ring-2 focus:ring-cyan-500/20 dark:border-gray-600 dark:bg-gray-800 dark:text-white dark:placeholder:text-gray-500 dark:hover:border-gray-500 dark:focus:border-cyan-400" + /> + {#if query} + + {/if} +
        +
        + + + {#if loading} +
        +
        +
        + Searching... +
        +
        + {/if} + + + {#if loading} + +
        + {#each [1, 2, 3] as _} +
        +
        +
        +
        +
        +
        +
        +
        +
        +
        +
        +
        +
        +
        +
        + {/each} +
        + {:else if displayedResults.length > 0} + +
        + {#each groupedResults as g} + + {/each} +
        + + + + {:else} +
        +
        +
        +
        + + + +
        +
        +

        No Results Found

        +

        + {#if !release || !releaseName} + Please select a release to begin searching. + {:else if !query} + Start typing to search across CRD schemas. + {:else} + No matches found for your query. Try different search terms. + {/if} +

        +
        + {#if query} + + {/if} +
        +
        +
        + {/if} + + +
        + +
        +
        +
        + + +{#if isModalOpen && modalData} + + +
        { isModalOpen = false; modalData = null; modalExpandAll = false; }} + style="animation: fadeIn 0.2s ease-out;" + > + +
        { if (e.key === 'Escape') { isModalOpen = false; modalData = null; modalExpandAll = false; } }} + role="dialog" + aria-modal="true" + tabindex="-1" + style="animation: slideUp 0.3s ease-out;" + > + +
        +
        +
        + + + +
        +
        +

        {modalData.kind}

        +

        {stripResourcePrefixFQDN(String(modalData.name))}

        +
        +
        +
        + {#if version} + + {version} + + {/if} + + +
        +
        + + +
        +
        + {#if modalData.fullSpec} +
        +
        +
        +
        + + + +
        +
        +

        Spec Schema

        +

        Resource specification and configuration

        +
        +
        +
        +
        + {#key modalExpandAll} + + {/key} +
        +
        + {/if} + {#if modalData.fullStatus} +
        +
        +
        +
        + + + +
        +
        +

        Status Schema

        +

        Observed state and runtime information

        +
        +
        +
        +
        + {#key modalExpandAll} + + {/key} +
        +
        + {/if} +
        +
        +
        +
        +{/if} + + diff --git a/src/routes/spec-search/+page.svelte b/src/routes/spec-search/+page.svelte new file mode 100644 index 0000000..3e8b77f --- /dev/null +++ b/src/routes/spec-search/+page.svelte @@ -0,0 +1,1317 @@ + + + + EDA Resource Browser | Resource Search + + +
        +
        + + +
        + + + + + + + {#if groupedResults.length > 0} +
        + {groupedResults.length} resource{groupedResults.length !== 1 ? 's' : ''} found + {#if results.length > MAX_RESULTS} + (showing first {MAX_RESULTS}) + {/if} +
        + {/if} +
        + + +
        +
        +
        + + + +
        + { + if (e.key === 'Enter') { + e.preventDefault(); + if (debounceTimer) { + clearTimeout(debounceTimer); + debounceTimer = null; + } + performSearch(); + } + }} + placeholder="Search property paths..." + class="w-full rounded-lg border border-gray-300 bg-white py-2 pl-9 pr-9 text-sm text-gray-900 shadow-sm transition-all placeholder:text-gray-400 hover:border-cyan-400 focus:border-cyan-500 focus:outline-none focus:ring-2 focus:ring-cyan-500/20 dark:border-gray-600 dark:bg-gray-800 dark:text-white dark:placeholder:text-gray-500 dark:hover:border-gray-500 dark:focus:border-cyan-400" + /> + {#if query} + + {/if} +
        +
        + + + {#if loading} +
        +
        +
        + Searching... +
        +
        + {/if} + + + {#if loading} + +
        + {#each [1, 2, 3] as _} +
        +
        +
        +
        +
        +
        +
        +
        +
        +
        +
        +
        +
        +
        +
        + {/each} +
        + {:else if displayedResults.length > 0} + +
        + {#each groupedResults as g} + + {/each} +
        + + + + {:else} +
        +
        +
        +
        + + + +
        +
        +

        No Results Found

        +

        + {#if !release || !releaseName} + Please select a release to begin searching. + {:else if !query} + Start typing to search across CRD schemas. + {:else} + No matches found for your query. Try different search terms. + {/if} +

        +
        + {#if query} + + {/if} +
        +
        +
        + {/if} + + +
        + +
        +
        +
        + + +{#if isModalOpen && modalData} + + +
        { isModalOpen = false; modalData = null; modalExpandAll = false; }} + style="animation: fadeIn 0.2s ease-out;" + > + +
        { if (e.key === 'Escape') { isModalOpen = false; modalData = null; modalExpandAll = false; } }} + role="dialog" + aria-modal="true" + tabindex="-1" + style="animation: slideUp 0.3s ease-out;" + > + +
        +
        +
        + + + +
        +
        +

        {modalData.kind}

        +

        {stripResourcePrefixFQDN(String(modalData.name))}

        +
        +
        +
        + {#if version} + + {version} + + {/if} + + +
        +
        + + +
        +
        + {#if modalData.fullSpec} +
        +
        +
        +
        + + + +
        +
        +

        Spec Schema

        +

        Resource specification and configuration

        +
        +
        +
        +
        + {#key modalExpandAll} + + {/key} +
        +
        + {/if} + {#if modalData.fullStatus} +
        +
        +
        +
        + + + +
        +
        +

        Status Schema

        +

        Observed state and runtime information

        +
        +
        +
        +
        + {#key modalExpandAll} + + {/key} +
        +
        + {/if} +
        +
        +
        +
        +{/if} + + diff --git a/src/routes/uploads/+page.svelte b/src/routes/uploads/+page.svelte index 52fb9ee..301f54c 100644 --- a/src/routes/uploads/+page.svelte +++ b/src/routes/uploads/+page.svelte @@ -1,8 +1,7 @@ + + + EDA Resource Browser | YAML Validation + + + + +
        +
        + +
        + + + {#if release} +
        + + + + {release.label} +
        + {/if} +
        + + +
        + +
        +
        +
        +
        + + + +
        +
        +

        YAML Input

        +

        Paste your CRD configurations (separate multiple with ---)

        +
        +
        +
        + +
        +
        + +
        +

        Nokia EDA CRD Validation

        +
          +
        • + + + + apiVersion must match selected release version +
        • +
        • + + + + kind must exist in the selected release +
        • +
        • + + + + metadata.name must be valid DNS subdomain +
        • +
        • + + + + spec validated against CRD schema (including required fields) +
        • +
        • + + + + status optional, generates warnings if invalid +
        • +
        • + + + + Each CRD may have different required fields in spec +
        • +
        +
        + + +
        + +
        + + +
        + + + {#if yamlInput} + + {/if} +
        +
        +
        +
        + + +
        +
        +
        +
        + + + +
        +
        +

        Validation Results

        +

        Errors, warnings, and validation status

        +
        +
        +
        + +
        + {#if validationErrors.length > 0} + {#if validationResult === 'valid'} +
        +
        + + + +
        +

        + {validationErrors[0].message} +

        + {#if validationErrors.length > 1} +
        +

        Warnings:

        + {#each validationErrors.slice(1) as error} +
        + + + +

        + {error.message} +

        +
        + {/each} +
        + {/if} +
        +
        +
        + {:else} +
        +
        + + + +
        +

        + Validation Failed ({validationErrors.length} error{validationErrors.length > 1 ? 's' : ''}) +

        +
          + {#each validationErrors as error} +
        • + + + +
          +

          + {error.message} +

          + {#if (error as any).instancePath || (error as any).dataPath} +

          + Path: {(error as any).instancePath || (error as any).dataPath} +

          + {/if} +
          +
        • + {/each} +
        +
        +
        +
        + {/if} + {:else} +
        + + + +

        + {#if !release} + Select a release and paste YAML to validate + {:else if !yamlInput} + Paste your YAML CRD configuration to validate + {:else} + Click "Validate YAML" to check your configuration + {/if} +

        +
        + {/if} +
        +
        +
        + + +
        + +
        +
        +
        diff --git a/static/fonts/NokiaPureHeadline_Bd.woff2 b/static/fonts/NokiaPureHeadline_Bd.woff2 new file mode 100644 index 0000000..3648cb5 Binary files /dev/null and b/static/fonts/NokiaPureHeadline_Bd.woff2 differ diff --git a/static/fonts/NokiaPureHeadline_Lt.woff2 b/static/fonts/NokiaPureHeadline_Lt.woff2 new file mode 100644 index 0000000..c13213a Binary files /dev/null and b/static/fonts/NokiaPureHeadline_Lt.woff2 differ diff --git a/static/fonts/NokiaPureHeadline_Rg.woff2 b/static/fonts/NokiaPureHeadline_Rg.woff2 new file mode 100644 index 0000000..ff111a9 Binary files /dev/null and b/static/fonts/NokiaPureHeadline_Rg.woff2 differ diff --git a/static/fonts/NokiaPureHeadline_ULt.woff2 b/static/fonts/NokiaPureHeadline_ULt.woff2 new file mode 100644 index 0000000..bfd543a Binary files /dev/null and b/static/fonts/NokiaPureHeadline_ULt.woff2 differ diff --git a/static/fonts/NokiaPureHeadline_XBd..woff2 b/static/fonts/NokiaPureHeadline_XBd..woff2 new file mode 100644 index 0000000..09cb9ab Binary files /dev/null and b/static/fonts/NokiaPureHeadline_XBd..woff2 differ diff --git a/static/fonts/NokiaPureText_Bd.woff2 b/static/fonts/NokiaPureText_Bd.woff2 new file mode 100644 index 0000000..92e87a3 Binary files /dev/null and b/static/fonts/NokiaPureText_Bd.woff2 differ diff --git a/static/fonts/NokiaPureText_Lt.woff2 b/static/fonts/NokiaPureText_Lt.woff2 new file mode 100644 index 0000000..da16a74 Binary files /dev/null and b/static/fonts/NokiaPureText_Lt.woff2 differ diff --git a/static/fonts/NokiaPureText_Md.woff2 b/static/fonts/NokiaPureText_Md.woff2 new file mode 100644 index 0000000..9dafe07 Binary files /dev/null and b/static/fonts/NokiaPureText_Md.woff2 differ diff --git a/static/fonts/NokiaPureText_Rg.woff2 b/static/fonts/NokiaPureText_Rg.woff2 new file mode 100644 index 0000000..02f7b5d Binary files /dev/null and b/static/fonts/NokiaPureText_Rg.woff2 differ diff --git a/static/generate-manifests.sh b/static/generate-manifests.sh new file mode 100755 index 0000000..a38792a --- /dev/null +++ b/static/generate-manifests.sh @@ -0,0 +1,123 @@ +#!/bin/bash +# Generate manifest.json files for each release folder +# This script scans each release folder and creates a manifest of available CRDs + +SCRIPT_DIR="$(cd "$(dirname "${BASH_SOURCE[0]}")" && pwd)" +RESOURCES_DIR="$SCRIPT_DIR/resources" + +echo "Generating manifests for EDA releases..." + +# Use Python to generate manifests +generate_all_manifests() { + python3 << 'PYTHON_SCRIPT' +import os +import json +import yaml +from pathlib import Path + +# Load the master resources.yaml for metadata +resources_yaml_path = Path("../src/lib/resources.yaml") +with open(resources_yaml_path, 'r') as f: + resources_metadata = yaml.safe_load(f) + +# Build a lookup dict for CRD metadata +crd_lookup = {} +for group, crds in resources_metadata.items(): + for crd in crds: + crd_lookup[crd['name']] = crd + +resources_dir = Path("resources") + +for release_dir in sorted(resources_dir.iterdir()): + if not release_dir.is_dir(): + continue + + release_name = release_dir.name + print(f"Processing release: {release_name}") + + manifest = [] + count = 0 + + for crd_dir in sorted(release_dir.iterdir()): + if not crd_dir.is_dir(): + continue + + crd_name = crd_dir.name + + # Get metadata from resources.yaml if available + crd_meta = crd_lookup.get(crd_name, {}) + group = crd_meta.get('group', ".".join(crd_name.split(".")[1:])) + kind = crd_meta.get('kind', '') + + # List all versions that actually exist in this release + versions = [] + yaml_files = sorted(crd_dir.glob("*.yaml")) + + for yaml_file in yaml_files: + version_name = yaml_file.stem + version_obj = {"name": version_name} + + # Prefer per-release YAML flag for "deprecated" if present + try: + with open(yaml_file, 'r') as yf: + parsed = yaml.safe_load(yf) + if isinstance(parsed, dict) and parsed.get('deprecated', False): + version_obj['deprecated'] = True + except Exception: + # If YAML parsing fails, we'll fall back to the global metadata below + pass + + # Fall back to appVersion from resources.yaml metadata if not present in YAML + if 'appVersion' not in version_obj and crd_meta and 'versions' in crd_meta: + for meta_version in crd_meta['versions']: + if meta_version.get('name') == version_name: + if 'appVersion' in meta_version: + version_obj['appVersion'] = meta_version['appVersion'] + break + + versions.append(version_obj) + count += 1 + + crd_obj = { + "name": crd_name, + "group": group, + "kind": kind, + "versions": versions + } + manifest.append(crd_obj) + + # Write manifest + manifest_path = release_dir / "manifest.json" + with open(manifest_path, 'w') as f: + json.dump(manifest, f, indent=2) + + print(f" ✓ Generated {manifest_path} ({count} version files, {len(manifest)} CRDs)") + +print("\n✓ All manifests generated successfully!") +PYTHON_SCRIPT +} + +# Main execution +if [ ! -d "$RESOURCES_DIR" ]; then + echo "Error: Resources directory not found: $RESOURCES_DIR" + exit 1 +fi + +# Check if python3 and pyyaml are available +if ! command -v python3 &> /dev/null; then + echo "Error: python3 is required but not installed" + exit 1 +fi + +if ! python3 -c "import yaml" 2>/dev/null; then + echo "Error: PyYAML is required. Install with: pip3 install pyyaml" + exit 1 +fi + +# Generate all manifests +cd "$SCRIPT_DIR" +generate_all_manifests + +echo "" +echo "Manifest files created:" +find "$RESOURCES_DIR" -name "manifest.json" -type f diff --git a/static/get-crds-for-release.sh b/static/get-crds-for-release.sh new file mode 100755 index 0000000..801135a --- /dev/null +++ b/static/get-crds-for-release.sh @@ -0,0 +1,99 @@ +#!/bin/bash + +# Usage: ./get-crds-for-release.sh +# Example: ./get-crds-for-release.sh 25.4.2 + +RELEASE="${1:-25.4.2}" +SCRIPT_DIR="$(realpath "$(dirname "${BASH_SOURCE[0]}")")" + +# Output directory for this specific release +output_dir="${SCRIPT_DIR}/resources/${RELEASE}" + +# Source directory where the resources.yaml metadata file is located +src_lib_dir="${SCRIPT_DIR}/../src/lib" + +echo "Extracting CRDs for release: ${RELEASE}" +echo "Output directory: ${output_dir}" +echo "" +echo "⚠️ IMPORTANT: Make sure kubectl is connected to the ${RELEASE} cluster!" +echo "" +read -p "Press Enter to continue or Ctrl+C to cancel..." + +# Cleanup existing release directory +if [ -d "$output_dir" ]; then + echo "Cleaning up existing '$output_dir/' directory..." + rm -rf "$output_dir" +fi + +mkdir -p "$output_dir" + +uv --project ${SCRIPT_DIR} sync --all-groups + +# YAML dictionary for CRD versions + group + kind +crd_meta_file="$src_lib_dir/resources.yaml" + +# Create temp directory for metadata files +temp_dir=$(mktemp -d) +trap "rm -rf $temp_dir" EXIT + +# Get installed manifests +manifests_file=$(mktemp) +trap "rm -f $manifests_file" EXIT +kubectl get -n eda-system manifests -o yaml > "$manifests_file" 2>/dev/null || echo "Warning: Could not fetch manifests from eda-system namespace" + +# Function to process a single CRD +process_crd() { + local crd_name="$1" + local output_dir="$2" + local temp_dir="$3" + local manifests="$(cat $4 2>/dev/null || echo '')" + + echo "Processing $crd_name" + + crd_dir="$output_dir/$crd_name" + mkdir -p "$crd_dir" + + # get full CRD in yaml + crd_yaml=$(kubectl get crd "$crd_name" -o yaml) + + # metadata + group=$(echo "$crd_yaml" | yq eval '.spec.group') + kind=$(echo "$crd_yaml" | yq eval '.spec.names.kind') + versions=$(echo "$crd_yaml" | yq eval '.spec.versions[].name' | xargs) + + # per-version loop + for version in $versions; do + # extract only this version block + echo "$crd_yaml" \ + | yq eval ".spec.versions[] | select(.name == \"$version\")" \ + | yq eval -P > "$crd_dir/$version.yaml" + done +} + +# Get all CRD names and process them concurrently +crd_names=() +while IFS= read -r crd_name; do + # populate list with EDA CRDs + if [[ "$crd_name" == *".eda.nokia.com"* ]]; then + crd_names+=("$crd_name") + else + echo "Skipping non-EDA CRD: $crd_name" + fi +done < <(kubectl get crds -o custom-columns=NAME:.metadata.name --no-headers) + +echo "" +echo "Found ${#crd_names[@]} EDA CRDs to extract" +echo "" + +# parallel CRD processing +export -f process_crd +printf "%s\n" "${crd_names[@]}" \ + | xargs -P64 -I{} bash -c 'process_crd "$1" "$2" "$3" "$4"' _ {} "$output_dir" "$temp_dir" "$manifests_file" + +echo "" +echo "✅ CRDs saved in $output_dir" +echo "" +echo "Next steps:" +echo "1. Run: cd $SCRIPT_DIR && ./generate-manifests.sh" +echo "2. This will regenerate manifest.json for release ${RELEASE}" + diff --git a/static/images/background-1024.webp b/static/images/background-1024.webp new file mode 100644 index 0000000..391a538 Binary files /dev/null and b/static/images/background-1024.webp differ diff --git a/static/images/background-1280.webp b/static/images/background-1280.webp new file mode 100644 index 0000000..4d87311 Binary files /dev/null and b/static/images/background-1280.webp differ diff --git a/static/images/background-1600.webp b/static/images/background-1600.webp new file mode 100644 index 0000000..6de8449 Binary files /dev/null and b/static/images/background-1600.webp differ diff --git a/static/images/background-1920.webp b/static/images/background-1920.webp new file mode 100644 index 0000000..7ff1f55 Binary files /dev/null and b/static/images/background-1920.webp differ diff --git a/static/images/background-360.webp b/static/images/background-360.webp new file mode 100644 index 0000000..b42b06f Binary files /dev/null and b/static/images/background-360.webp differ diff --git a/static/images/background-480.webp b/static/images/background-480.webp new file mode 100644 index 0000000..2414d06 Binary files /dev/null and b/static/images/background-480.webp differ diff --git a/static/images/background-640.webp b/static/images/background-640.webp new file mode 100644 index 0000000..d9404f6 Binary files /dev/null and b/static/images/background-640.webp differ diff --git a/static/images/background-768.webp b/static/images/background-768.webp new file mode 100644 index 0000000..74458ec Binary files /dev/null and b/static/images/background-768.webp differ diff --git a/static/images/background-crd.webp b/static/images/background-crd.webp new file mode 100644 index 0000000..5d64218 Binary files /dev/null and b/static/images/background-crd.webp differ diff --git a/static/images/background-light-1024.webp b/static/images/background-light-1024.webp new file mode 100644 index 0000000..e970305 Binary files /dev/null and b/static/images/background-light-1024.webp differ diff --git a/static/images/background-light-1280.webp b/static/images/background-light-1280.webp new file mode 100644 index 0000000..5e465b2 Binary files /dev/null and b/static/images/background-light-1280.webp differ diff --git a/static/images/background-light-1600.webp b/static/images/background-light-1600.webp new file mode 100644 index 0000000..c3a0803 Binary files /dev/null and b/static/images/background-light-1600.webp differ diff --git a/static/images/background-light-1920.webp b/static/images/background-light-1920.webp new file mode 100644 index 0000000..36ff967 Binary files /dev/null and b/static/images/background-light-1920.webp differ diff --git a/static/images/background-light-2.svg b/static/images/background-light-2.svg new file mode 100644 index 0000000..54d9da1 --- /dev/null +++ b/static/images/background-light-2.svg @@ -0,0 +1,9 @@ + + + + + + + + + diff --git a/static/images/background-light-360.webp b/static/images/background-light-360.webp new file mode 100644 index 0000000..a2cb622 Binary files /dev/null and b/static/images/background-light-360.webp differ diff --git a/static/images/background-light-480.webp b/static/images/background-light-480.webp new file mode 100644 index 0000000..17d9d1d Binary files /dev/null and b/static/images/background-light-480.webp differ diff --git a/static/images/background-light-640.webp b/static/images/background-light-640.webp new file mode 100644 index 0000000..554ede9 Binary files /dev/null and b/static/images/background-light-640.webp differ diff --git a/static/images/background-light.svg b/static/images/background-light.svg new file mode 100644 index 0000000..370ad5c --- /dev/null +++ b/static/images/background-light.svg @@ -0,0 +1,9 @@ + + + + + + + + + diff --git a/static/images/background-small.webp b/static/images/background-small.webp new file mode 100644 index 0000000..f37d8e4 Binary files /dev/null and b/static/images/background-small.webp differ diff --git a/static/images/bird-logo.svg b/static/images/bird-logo.svg new file mode 100644 index 0000000..c809fb2 --- /dev/null +++ b/static/images/bird-logo.svg @@ -0,0 +1,3 @@ + + + diff --git a/static/merge-crds.py b/static/merge-crds.py deleted file mode 100644 index 396775a..0000000 --- a/static/merge-crds.py +++ /dev/null @@ -1,56 +0,0 @@ -#!/usr/bin/env python3 -import sys - -from ruamel.yaml import YAML - -yaml = YAML() -yaml.indent(mapping=2, sequence=4, offset=2) - - -def merge_versions(old_versions, new_versions): - version_map = {v["name"]: v for v in old_versions} - for v in new_versions: - name = v["name"] - if name in version_map: - version_map[name].update(v) - else: - version_map[name] = v - return sorted(version_map.values(), key=lambda x: x["name"]) - - -def merge_crds(old_crds, new_crds): - crd_map = {crd["name"]: crd for crd in old_crds} - for crd in new_crds: - name = crd["name"] - if name in crd_map: - # Merge top-level fields except 'versions' - crd_map[name].update({k: v for k, v in crd.items() if k != "versions"}) - # Merge versions list - crd_map[name]["versions"] = merge_versions( - crd_map[name].get("versions", []), crd.get("versions", []) - ) - else: - crd_map[name] = crd - return sorted(crd_map.values(), key=lambda x: x["name"]) - - -def merge_yaml_files(filenames): - merged = {} - for filename in filenames: - with open(filename) as f: - data = yaml.load(f) or {} - for group, crds in data.items(): - if group in merged: - merged[group] = merge_crds(merged[group], crds) - else: - merged[group] = crds - return merged - - -if __name__ == "__main__": - if len(sys.argv) < 2: - print(f"Usage: {sys.argv[0]} file1.yaml [file2.yaml ...]") - sys.exit(1) - - merged_data = merge_yaml_files(sys.argv[1:]) - yaml.dump(merged_data, sys.stdout) diff --git a/static/resources/aggregateroutes.protocols.eda.nokia.com/v1.yaml b/static/resources/25.12.1/aggregateroutes.protocols.eda.nokia.com/v1.yaml similarity index 100% rename from static/resources/aggregateroutes.protocols.eda.nokia.com/v1.yaml rename to static/resources/25.12.1/aggregateroutes.protocols.eda.nokia.com/v1.yaml diff --git a/static/resources/aggregateroutes.protocols.eda.nokia.com/v1alpha1.yaml b/static/resources/25.12.1/aggregateroutes.protocols.eda.nokia.com/v1alpha1.yaml similarity index 100% rename from static/resources/aggregateroutes.protocols.eda.nokia.com/v1alpha1.yaml rename to static/resources/25.12.1/aggregateroutes.protocols.eda.nokia.com/v1alpha1.yaml diff --git a/static/resources/25.12.1/alarmdefinitions.core.eda.nokia.com/v1.yaml b/static/resources/25.12.1/alarmdefinitions.core.eda.nokia.com/v1.yaml new file mode 100644 index 0000000..95866ae --- /dev/null +++ b/static/resources/25.12.1/alarmdefinitions.core.eda.nokia.com/v1.yaml @@ -0,0 +1,74 @@ +name: v1 +schema: + openAPIV3Schema: + description: Alarm is the Schema for the alarms API + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + description: AlarmDefinitionSpec defines the desired state of Alarm + properties: + clusterSpecific: + default: false + description: Specifies if the alarm is within the EDA cluster, such as a pod issue + type: boolean + description: + description: Description of the alarm + minLength: 1 + type: string + group: + description: |- + The group of the resouce the alarm is associated with, for example core.eda.nokia.com + If unset, the alarm may be associated to multiple resource definitions + minLength: 1 + type: string + kind: + description: |- + The kind of the resource the alarm is associated with, for example TopoNode + If unset, the alarm may be associated to multiple resource definitions + minLength: 1 + type: string + severity: + description: Default alarm severity. If unset, severity is variable. + enum: + - warning + - minor + - major + - critical + type: string + sourceGroup: + description: The group of the resource that raises the alarm, for example core.eda.nokia.com + minLength: 1 + type: string + type: + description: Type of the alarm, for example InterfaceDown + minLength: 1 + type: string + required: + - description + - sourceGroup + - type + type: object + status: + description: AlarmDefinitionStatus defines the observed state of Alarm + type: object + type: object +served: true +storage: true +subresources: + status: {} diff --git a/static/resources/25.12.1/alarms.core.eda.nokia.com/v1.yaml b/static/resources/25.12.1/alarms.core.eda.nokia.com/v1.yaml new file mode 100644 index 0000000..eeae498 --- /dev/null +++ b/static/resources/25.12.1/alarms.core.eda.nokia.com/v1.yaml @@ -0,0 +1,118 @@ +name: v1 +schema: + openAPIV3Schema: + description: Alarm is the Schema for the alarms API + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + description: AlarmSpec defines the desired state of Alarm + properties: + additionalText: + description: AdditionalText adds extra context related to alarm + type: string + clusterSpecific: + description: Specifies if the alarm is within cluster, such as pod issue, or external issue, such as with BGP session on node + type: boolean + description: + description: Description of the alarm + minLength: 1 + type: string + group: + description: The group of the resouce the alarm is associated with, for example core.eda.nokia.com + minLength: 1 + type: string + jsPath: + description: Provide a JSON path to the resource or object that the alarm is associated with, for example .node{.name=='leaf-1-1'}.srl{.version=='24.7.1'}.interface{.name=='ethernet-1-11' + items: + type: string + type: array + kind: + description: The kind of the resource the alarm is associated with, for example TopoNode + minLength: 1 + type: string + name: + description: Name of the alarm, this is typically the alarm Kind followed by a unique identifier such as InterfaceDown-leaf-1-1-ethernet-1-11 + minLength: 1 + type: string + parentAlarm: + description: ParentAlarm is the name of the parent alarm, if any, for example LinecardDown-leaf-1-1-Linecard1 + items: + type: string + type: array + probableCause: + description: ProbableCause is the probable cause of the alarm + type: string + remedialAction: + description: RemedialAction is the proposed remedial action for the alarm + type: string + resource: + description: The name of the resouce the alarm is associated with, for example leaf-1-1 + minLength: 1 + type: string + severity: + description: Severity for this alarm + enum: + - warning + - minor + - major + - critical + type: string + sourceGroup: + description: The group of the resource that raise the alarm, for example core.eda.nokia.com + minLength: 1 + type: string + sourceKind: + description: The kind of the resource that raised the alarm, for example InterfaceState + minLength: 1 + type: string + sourceResource: + description: The resource that raised the alarm, for example + minLength: 1 + type: string + targetsAffected: + items: + properties: + name: + type: string + type: object + type: array + type: + description: Type of the alarm, for example InterfaceDown + minLength: 1 + type: string + required: + - description + - group + - kind + - name + - resource + - severity + - sourceGroup + - sourceKind + - sourceResource + - type + type: object + status: + description: AlarmStatus defines the observed state of Alarm + type: object + type: object +served: true +storage: true +subresources: + status: {} diff --git a/static/resources/allocations.netbox.eda.nokia.com/v1alpha1.yaml b/static/resources/25.12.1/allocations.netbox.eda.nokia.com/v1alpha1.yaml similarity index 100% rename from static/resources/allocations.netbox.eda.nokia.com/v1alpha1.yaml rename to static/resources/25.12.1/allocations.netbox.eda.nokia.com/v1alpha1.yaml diff --git a/static/resources/25.12.1/appinstallers.appstore.eda.nokia.com/v1.yaml b/static/resources/25.12.1/appinstallers.appstore.eda.nokia.com/v1.yaml new file mode 100644 index 0000000..59467c3 --- /dev/null +++ b/static/resources/25.12.1/appinstallers.appstore.eda.nokia.com/v1.yaml @@ -0,0 +1,123 @@ +additionalPrinterColumns: + - jsonPath: .spec.operation + name: Operation + type: string + - jsonPath: .status.result + name: Result + type: string + - jsonPath: .spec.dryRun + name: DryRun + type: string +name: v1 +schema: + openAPIV3Schema: + description: AppInstaller + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + properties: + apps: + description: Apps are the input apps to the installer. + items: + properties: + appId: + description: AppID of the app, which is the unique identifier of an app. It should be equal to the group of the app. + type: string + appSettings: + description: |- + AppSettings defines a list of variables and their value. Only variables that are customized need to be mentioned. + If AppSettings are not again mentioned on upgrade, values will remain as is. + type: object + x-kubernetes-preserve-unknown-fields: true + catalog: + description: |- + Catalog of the app to be installed. + This is where app manifest is retrieved from, along with some other metadata. + type: string + version: + description: Version of the App that is to be installed. + properties: + type: + default: semver + description: |- + The version type of the App. Currently supported: semver, commit. + Default is semver. + enum: + - semver + - commit + type: string + value: + description: |- + The version of the App. + If the VersionType is set to semver, + then the semantic version of the git tag in the form of "apps//" is used. + If the VersionType is set to commit, + then the commit reference (e.g. git hash) is expected. + type: string + required: + - value + type: object + required: + - appId + - catalog + - version + type: object + type: array + autoProcessRequirements: + description: |- + AutoProcessRequirements tells the installer what it can do w.r.t. the requirements of an app. + Currently only 'strict' is supported. + items: + type: string + type: array + dryRun: + default: false + description: |- + DryRun indicates whether to run the installer without actually applying the manifest to the system. + The results will be put in a transaction result. + type: boolean + operation: + description: |- + Operation is the installing operation. + Currently supported are 'install', 'delete'. + enum: + - install + - delete + type: string + required: + - apps + - operation + type: object + status: + properties: + error: + type: string + id: + description: ID is the workflow ID that can be used to get more information on. + type: integer + result: + type: string + required: + - result + type: object + type: object +served: true +storage: true +subresources: + status: {} diff --git a/static/resources/25.12.1/applyallocations.netbox.eda.nokia.com/v1alpha1.yaml b/static/resources/25.12.1/applyallocations.netbox.eda.nokia.com/v1alpha1.yaml new file mode 100644 index 0000000..67f9495 --- /dev/null +++ b/static/resources/25.12.1/applyallocations.netbox.eda.nokia.com/v1alpha1.yaml @@ -0,0 +1,41 @@ +name: v1alpha1 +schema: + openAPIV3Schema: + description: ApplyAllocation is the Schema for the applyallocations API + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + description: spec defines the desired state of ApplyAllocation + properties: + allocation: + description: Allocation reference + type: string + required: + - allocation + type: object + status: + description: status defines the observed state of ApplyAllocation + type: object + required: + - spec + type: object +served: true +storage: true +subresources: + status: {} diff --git a/static/resources/artifacts.artifacts.eda.nokia.com/v1.yaml b/static/resources/25.12.1/artifacts.artifacts.eda.nokia.com/v1.yaml similarity index 100% rename from static/resources/artifacts.artifacts.eda.nokia.com/v1.yaml rename to static/resources/25.12.1/artifacts.artifacts.eda.nokia.com/v1.yaml diff --git a/static/resources/aspathsetdeployments.routingpolicies.eda.nokia.com/v1alpha1.yaml b/static/resources/25.12.1/aspathsetdeployments.routingpolicies.eda.nokia.com/v1alpha1.yaml similarity index 100% rename from static/resources/aspathsetdeployments.routingpolicies.eda.nokia.com/v1alpha1.yaml rename to static/resources/25.12.1/aspathsetdeployments.routingpolicies.eda.nokia.com/v1alpha1.yaml diff --git a/static/resources/aspathsets.routingpolicies.eda.nokia.com/v1alpha1.yaml b/static/resources/25.12.1/aspathsets.routingpolicies.eda.nokia.com/v1alpha1.yaml similarity index 100% rename from static/resources/aspathsets.routingpolicies.eda.nokia.com/v1alpha1.yaml rename to static/resources/25.12.1/aspathsets.routingpolicies.eda.nokia.com/v1alpha1.yaml diff --git a/static/resources/attachmentlookups.routing.eda.nokia.com/v1alpha1.yaml b/static/resources/25.12.1/attachmentlookups.routing.eda.nokia.com/v1alpha1.yaml similarity index 100% rename from static/resources/attachmentlookups.routing.eda.nokia.com/v1alpha1.yaml rename to static/resources/25.12.1/attachmentlookups.routing.eda.nokia.com/v1alpha1.yaml diff --git a/static/resources/25.12.1/backends.aifabrics.eda.nokia.com/v1alpha1.yaml b/static/resources/25.12.1/backends.aifabrics.eda.nokia.com/v1alpha1.yaml new file mode 100644 index 0000000..39612b1 --- /dev/null +++ b/static/resources/25.12.1/backends.aifabrics.eda.nokia.com/v1alpha1.yaml @@ -0,0 +1,228 @@ +additionalPrinterColumns: + - jsonPath: .status.lastChange + name: Last Change + type: date + - jsonPath: .status.operationalState + name: Operational State + type: string +name: v1alpha1 +schema: + openAPIV3Schema: + description: Backend is the Schema for the backends API + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + description: BackendSpec defines the desired state of Backend + properties: + asnPool: + description: Reference to an IndexAllocationPool pool to use for Autonomous System Number allocations. Used when eBGP is configured as an underlay protocol. + type: string + gpuIsolationGroups: + description: GPU Isolation Groups are used to isolate GPU traffic over the network, GPUs in different GPU isolation groups will not be able to communicate with each other. If all GPUs across all stripes need to be able to communicate with each other, create a single GPUIsolationGroup selecting all GPU facing interfaces. + items: + properties: + interfaceSelector: + items: + type: string + type: array + name: + description: Name of the IsolationGroup. + type: string + required: + - interfaceSelector + - name + type: object + type: array + ipMTU: + default: 4136 + description: IP MTU for this fabric. Default is 4136 bytes. + maximum: 9000 + minimum: 1500 + type: integer + rocev2QoS: + description: Set of properties to configure the RoCEv2 QoS. + properties: + ecnMaxDropProbabilityPercent: + default: 100 + description: If the queue depth is between min and max threshold then this the probability with which packets are dropped or marked. + type: integer + ecnSlopeMaxThresholdPercent: + default: 80 + description: The maximum threshold parameter for a RED-managed queue in percent. When the average queue length exceeds the max value, all packets are dropped (or marked if ECN is enabled). Mutually exclusive with min-threshold and max-threshold. + type: integer + ecnSlopeMinThresholdPercent: + default: 5 + description: The minimum threshold parameter for a RED-managed queue in percent. When the average queue length is less than min, all packets are admitted to the queue. Mutually exclusive with min-threshold and max-threshold. + type: integer + pfcDeadlockDetectionTimer: + default: 750 + description: Number of milliseconds during which outgoing interface is receiving pfc-pause-frames before triggering recovery-timer. + type: integer + pfcDeadlockRecoveryTimer: + default: 750 + description: Number of milliseconds during which the pfc-pause-frames will be ignored. + type: integer + queueMaximumBurstSize: + default: 1024000 + description: Maximum amount of shared buffer memory available to the queue in bytes. + format: int32 + maximum: 4294967295 + minimum: 0 + type: integer + required: + - ecnMaxDropProbabilityPercent + - ecnSlopeMaxThresholdPercent + - ecnSlopeMinThresholdPercent + - pfcDeadlockDetectionTimer + - pfcDeadlockRecoveryTimer + - queueMaximumBurstSize + type: object + stripeConnector: + description: StripeConnector is the spine layer interconnecting multiple stripes. + properties: + asnPool: + description: Reference to an IndexAllocationPool pool to use for Autonomous System Number allocations. + type: string + linkSelector: + description: Selects TopoLinks to include in this AI Fabric, the selected TopoLinks will be used to create ISLs between the stripe connector devices and the leaf devices. + items: + type: string + type: array + name: + description: The name of the Stripe Connector. + type: string + nodeSelector: + description: Node selector to select the nodes to be used for this stripe connector. + items: + type: string + type: array + systemPoolIPV4: + description: Reference to an IPAllocationPool used to dynamically allocate an IPv4 address to system/lo0 interfaces for the stripe connector devices. If not specified, the system will use the default IPAllocationPool. + type: string + required: + - linkSelector + - name + - nodeSelector + type: object + stripes: + description: A list of stripes, stripes contain a set of nodes (rails). + items: + properties: + asnPool: + description: Optional reference to an IndexAllocationPool pool to use for Autonomous System Number allocations. If left blank, ASN allocation will be done from the ASNAllocationRange. + type: string + gpuVlan: + description: The VLAN used on interfaces facing the GPU servers. + type: integer + name: + description: The name of the Stripe. + type: string + nodeSelector: + description: Node selector to select the nodes to be used for this stripe. + items: + type: string + type: array + stripeID: + description: Unique ID for a stripe + type: integer + systemPoolIPV4: + description: Optional reference to an IPAllocationPool used to dynamically allocate an IPv4 address to system/lo0 interfaces. If left blank, system IP allocation will be done from the SystemIPV4Subnet. + type: string + required: + - gpuVlan + - name + - nodeSelector + - stripeID + type: object + type: array + systemPoolIPV4: + description: Reference to an IPAllocationPool used to dynamically allocate an IPv4 address to system/lo0 interfaces. If specified under the Leaf/Spine/Superspine/Borderleaf those will take precedence. + type: string + required: + - gpuIsolationGroups + - rocev2QoS + - stripes + type: object + status: + description: BackendStatus defines the observed state of Backend + properties: + health: + description: Indicates the health score of the Fabric. The health score of the Fabric is determined by the aggregate health score of the resources emitted by the Fabric such as ISL, DefaultRouteReflectors etc. + type: integer + healthScoreReason: + description: Indicates the reason for the health score. + type: string + lastChange: + description: The time when the state of the resource last changed. + type: string + operationalState: + description: 'Operational state of the Fabric. The operational state of the fabric is determined by monitoring the operational state of the following resources (if applicable): DefaultRouters, ISLs.' + type: string + stripeConnector: + description: Stripe connector in the Backend. + properties: + name: + description: The name of the Stripe Connector. + type: string + stripeConnectorNodes: + description: List of stripe connector nodes in the Stripe. + items: + properties: + node: + description: Name of the TopoNode. + type: string + operatingSystem: + description: Operating system running on the node. + type: string + operatingSystemVersion: + description: Operating system version running on the node. + type: string + type: object + type: array + type: object + stripes: + description: List of stripes in the Backend. + items: + properties: + leafNodes: + description: List of leaf nodes in the Stripe. + items: + properties: + node: + description: Name of the TopoNode. + type: string + operatingSystem: + description: Operating system running on the node. + type: string + operatingSystemVersion: + description: Operating system version running on the node. + type: string + type: object + type: array + name: + description: The name of the Stripe. + type: string + type: object + type: array + type: object + type: object +served: true +storage: true +subresources: + status: {} diff --git a/static/resources/backendstates.aifabrics.eda.nokia.com/v1alpha1.yaml b/static/resources/25.12.1/backendstates.aifabrics.eda.nokia.com/v1alpha1.yaml similarity index 100% rename from static/resources/backendstates.aifabrics.eda.nokia.com/v1alpha1.yaml rename to static/resources/25.12.1/backendstates.aifabrics.eda.nokia.com/v1alpha1.yaml diff --git a/static/resources/banners.siteinfo.eda.nokia.com/v1alpha1.yaml b/static/resources/25.12.1/banners.siteinfo.eda.nokia.com/v1alpha1.yaml similarity index 100% rename from static/resources/banners.siteinfo.eda.nokia.com/v1alpha1.yaml rename to static/resources/25.12.1/banners.siteinfo.eda.nokia.com/v1alpha1.yaml diff --git a/static/resources/bannerstates.siteinfo.eda.nokia.com/v1alpha1.yaml b/static/resources/25.12.1/bannerstates.siteinfo.eda.nokia.com/v1alpha1.yaml similarity index 100% rename from static/resources/bannerstates.siteinfo.eda.nokia.com/v1alpha1.yaml rename to static/resources/25.12.1/bannerstates.siteinfo.eda.nokia.com/v1alpha1.yaml diff --git a/static/resources/bgpgroupdeployments.protocols.eda.nokia.com/v1.yaml b/static/resources/25.12.1/bgpgroupdeployments.protocols.eda.nokia.com/v1.yaml similarity index 100% rename from static/resources/bgpgroupdeployments.protocols.eda.nokia.com/v1.yaml rename to static/resources/25.12.1/bgpgroupdeployments.protocols.eda.nokia.com/v1.yaml diff --git a/static/resources/bgpgroupdeployments.protocols.eda.nokia.com/v1alpha1.yaml b/static/resources/25.12.1/bgpgroupdeployments.protocols.eda.nokia.com/v1alpha1.yaml similarity index 100% rename from static/resources/bgpgroupdeployments.protocols.eda.nokia.com/v1alpha1.yaml rename to static/resources/25.12.1/bgpgroupdeployments.protocols.eda.nokia.com/v1alpha1.yaml diff --git a/static/resources/25.12.1/bgpgroups.protocols.eda.nokia.com/v1.yaml b/static/resources/25.12.1/bgpgroups.protocols.eda.nokia.com/v1.yaml new file mode 100644 index 0000000..7e73399 --- /dev/null +++ b/static/resources/25.12.1/bgpgroups.protocols.eda.nokia.com/v1.yaml @@ -0,0 +1,317 @@ +additionalPrinterColumns: + - jsonPath: .status.lastChange + name: Last Change + type: date + - jsonPath: .status.operationalState + name: Operational State + type: string +name: v1 +schema: + openAPIV3Schema: + description: BGPGroup is the Schema for the bgpgroups API + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + description: The BGPGroup enables centralized management of BGP peer configurations. This resource allows setting a description, common BGP settings, and peer-specific configurations, simplifying the consistent application of policies across multiple peers. It also includes transport settings, such as local TCP address configuration, passive mode, and TCP MSS. + properties: + asPathOptions: + description: AS Path Options + properties: + allowOwnAS: + default: 0 + description: The maximum number of times the global AS number or a local AS number of the BGP instance can appear in any received AS_PATH before it is considered a loop and considered invalid. + maximum: 255 + minimum: 0 + type: integer + removePrivateAS: + description: Options for removing private AS numbers (2-byte and 4-byte) from the advertised AS path towards all peers. + properties: + ignorePeerAS: + default: false + description: If set to true then do not delete or replace a private AS number that is the same as the peer AS number. + type: boolean + leadingOnly: + default: false + description: If set to true then only delete or replace private AS numbers that appear before the first occurrence of a non-private ASN in the sequence of most recent ASNs in the AS path. + type: boolean + removePrivateASMode: + default: DISABLED + description: The method by which private AS numbers are removed from the advertised AS_PATH attribute. + enum: + - DISABLED + - REPLACE + - DELETE + type: string + required: + - ignorePeerAS + - leadingOnly + - removePrivateASMode + type: object + required: + - allowOwnAS + type: object + bfd: + description: Enable or disable Bi-forward Forwarding Detection (BFD) with fast failover. + type: boolean + client: + description: When set to true, all configured and dynamic BGP peers are considered RR clients. + type: boolean + clusterID: + description: Enables route reflect client and sets the cluster ID. + type: string + configuredName: + description: Configures the group name on the device. + type: string + description: + description: Sets the description on the BGP group. + type: string + exportPolicy: + description: Reference to a Policy CR that will be used to filter routes advertised to peers. + items: + type: string + type: array + grStaleRouteTime: + description: Enables Graceful Restart on the peer and sets the stale route time. + maximum: 3600 + minimum: 1 + type: integer + importPolicy: + description: Reference to a Policy CR that will be used to filter routes received from peers. + items: + type: string + type: array + ipv4Unicast: + description: Parameters relating to the IPv4 unicast AFI/SAFI. + properties: + advertiseIPV6NextHops: + description: Enables advertisement of IPv4 Unicast routes with IPv6 next-hops to peers. + type: boolean + enabled: + description: Enables the IPv4 unicast AFISAFI. + type: boolean + prefixLimit: + properties: + prefixLimitAccepted: + properties: + logOnly: + description: Defines the action to take when the maximum number of prefixes is exceeded. Session is reset if set to false, otherwise only a warning is logged. + type: boolean + maxReceivedRoutes: + description: Maximum number of prefixes allowed to be received from the neighbor, counting only accepted routes. + format: int32 + maximum: 4294967295 + minimum: 1 + type: integer + warningThreshold: + description: A percentage of the maximum number of prefixes that can be accepted before a warning is logged. + maximum: 100 + minimum: 1 + type: integer + type: object + prefixLimitReceived: + properties: + logOnly: + description: Defines the action to take when the maximum number of prefixes is exceeded. Session is reset if set to false, otherwise only a warning is logged. + type: boolean + maxReceivedRoutes: + description: Maximum number of prefixes allowed to be received from the neighbor, counting all routes (accepted and rejected by import policies). + format: int32 + maximum: 4294967295 + minimum: 1 + type: integer + warningThreshold: + description: A percentage of the maximum number of prefixes that can be received before a warning is logged. + maximum: 100 + minimum: 1 + type: integer + type: object + type: object + receiveIPV6NextHops: + description: Enables the advertisement of the RFC 5549 capability to receive IPv4 routes with IPv6 next-hops. + type: boolean + type: object + ipv6Unicast: + description: Parameters relating to the IPv6 unicast AFI/SAFI. + properties: + enabled: + description: Enables the IPv6 unicast AFISAFI + type: boolean + prefixLimit: + properties: + prefixLimitAccepted: + properties: + logOnly: + description: Defines the action to take when the maximum number of prefixes is exceeded. Session is reset if set to false, otherwise only a warning is logged. + type: boolean + maxReceivedRoutes: + description: Maximum number of prefixes allowed to be received from the neighbor, counting only accepted routes. + format: int32 + maximum: 4294967295 + minimum: 1 + type: integer + warningThreshold: + description: A percentage of the maximum number of prefixes that can be accepted before a warning is logged. + maximum: 100 + minimum: 1 + type: integer + type: object + prefixLimitReceived: + properties: + logOnly: + description: Defines the action to take when the maximum number of prefixes is exceeded. Session is reset if set to false, otherwise only a warning is logged. + type: boolean + maxReceivedRoutes: + description: Maximum number of prefixes allowed to be received from the neighbor, counting all routes (accepted and rejected by import policies). + format: int32 + maximum: 4294967295 + minimum: 1 + type: integer + warningThreshold: + description: A percentage of the maximum number of prefixes that can be received before a warning is logged. + maximum: 100 + minimum: 1 + type: integer + type: object + type: object + type: object + keychain: + description: Reference to a Keychain resource that will be used for authentication with the BGP peer. + type: string + localAS: + description: The local autonomous system number advertised to peers. + properties: + autonomousSystem: + description: Local Autonomous System number. + maximum: 4294967295 + minimum: 1 + type: integer + prependGlobalAS: + description: When set to true, the global ASN value is prepended to the AS path in outbound routes towards each BGP peer. + type: boolean + prependLocalAS: + description: When set to true, the local AS value is prepended to the AS path of inbound routes from each EBGP peer. + type: boolean + required: + - autonomousSystem + type: object + localPreference: + description: Local Preference attribute added to received routes from the BGP peers, also sets local preference for generated routes. + maximum: 4294967295 + minimum: 0 + type: integer + multiHopMaxHop: + description: Enable multihop for eBGP peers and sets the maximum number of hops allowed. + maximum: 255 + minimum: 1 + type: integer + nextHopSelf: + description: When set to true, the next-hop in all IPv4-unicast, IPv6-unicast and EVPN BGP routes advertised to the peer is set to the local-address. + type: boolean + peerAS: + description: The autonomous system number expected from peers. + properties: + autonomousSystem: + description: Local Autonomous System number. + maximum: 4294967295 + minimum: 1 + type: integer + required: + - autonomousSystem + type: object + sendCommunityLarge: + description: When false, all large (12 byte) BGP communities from all outbound routes advertised to the peer are stripped. + type: boolean + sendCommunityStandard: + description: When false, all standard (4 byte) communities from all outbound routes advertised to the peer are stripped. + type: boolean + sendDefaultRoute: + description: Options for controlling the generation of default routes towards BGP peers. + properties: + addressFamily: + description: Enables the sending of a synthetically generated default IPv4 or IPV6 route to each peer. + items: + enum: + - IPV4-UNICAST + - IPV6-UNICAST + type: string + type: array + exportPolicy: + description: Reference to a Policy that should be applied to the advertised default routes, in order to set their attributes to non-default values. + type: string + required: + - addressFamily + type: object + timers: + description: Timer configurations + properties: + connectRetry: + description: The time interval in seconds between successive attempts to establish a session with a peer. + maximum: 65535 + minimum: 1 + type: integer + holdTime: + description: The hold-time interval in seconds that the router proposes to the peer in its OPEN message. + maximum: 65535 + minimum: 0 + type: integer + keepAlive: + description: The interval in seconds between successive keepalive messages sent to the peer. + maximum: 21845 + minimum: 0 + type: integer + minimumAdvertisementInterval: + description: The value assigned to the MinRouteAdvertisementIntervalTimer of RFC 4271, for both EBGP and IBGP sessions. + maximum: 255 + minimum: 1 + type: integer + type: object + type: object + status: + description: BGPGroupStatus defines the observed state of BGPGroup + properties: + health: + description: Indicates the health score of the BGP group. + type: integer + healthScoreReason: + description: Indicates the reason for the health score. + type: string + lastChange: + description: The time when the state of the resource last changed. + type: string + numPeers: + description: Number of configured BGP peers within the BGP Group. + format: int32 + type: integer + numPeersOperDown: + description: Number of configured BGP peers which have an Operational State of down within the BGP Group. + format: int32 + type: integer + numPeersUnknown: + description: Number of configured BGP peers within the BGP Group which cannot be reached by npp. + format: int32 + type: integer + operationalState: + description: Operational state of the BGP group. + type: string + type: object + type: object +served: true +storage: true +subresources: + status: {} diff --git a/static/resources/bgpgroups.protocols.eda.nokia.com/v1alpha1.yaml b/static/resources/25.12.1/bgpgroups.protocols.eda.nokia.com/v1alpha1.yaml similarity index 100% rename from static/resources/bgpgroups.protocols.eda.nokia.com/v1alpha1.yaml rename to static/resources/25.12.1/bgpgroups.protocols.eda.nokia.com/v1alpha1.yaml diff --git a/static/resources/providers.notifiers.eda.nokia.com/v1.yaml b/static/resources/25.12.1/bgpgroupstates.protocols.eda.nokia.com/v1.yaml similarity index 64% rename from static/resources/providers.notifiers.eda.nokia.com/v1.yaml rename to static/resources/25.12.1/bgpgroupstates.protocols.eda.nokia.com/v1.yaml index 8d15878..eeb0363 100644 --- a/static/resources/providers.notifiers.eda.nokia.com/v1.yaml +++ b/static/resources/25.12.1/bgpgroupstates.protocols.eda.nokia.com/v1.yaml @@ -1,7 +1,7 @@ name: v1 schema: openAPIV3Schema: - description: Provider is the Schema for the providers API + description: BGPGroupState is the Schema for the bgpgroupstates API properties: apiVersion: description: |- @@ -21,25 +21,22 @@ schema: metadata: type: object spec: - description: ProviderSpec defines the desired state of Provider + description: BGPGroupStateSpec defines the desired state of BGPGroupState properties: - description: - description: A simple user provided description of this Provider + configuredName: + description: Configured group name on the device type: string - enabled: - default: true - description: Enable or disable this Provider + defaultBGPGroup: + description: Denotes if the group is a DefaultBGPGroup or BGPGroup type: boolean - uri: - description: |- - A URI to send notifications to. For example 'slack://token-a/token-b/token-c', - or 'discord://discord.com/api/webhooks/channel/token'. + group: type: string required: - - uri + - defaultBGPGroup + - group type: object status: - description: ProviderStatus defines the observed state of Provider + description: BGPGroupStateStatus defines the observed state of BGPGroupState type: object type: object served: true diff --git a/static/resources/bgpgroupstates.protocols.eda.nokia.com/v1alpha1.yaml b/static/resources/25.12.1/bgpgroupstates.protocols.eda.nokia.com/v1alpha1.yaml similarity index 100% rename from static/resources/bgpgroupstates.protocols.eda.nokia.com/v1alpha1.yaml rename to static/resources/25.12.1/bgpgroupstates.protocols.eda.nokia.com/v1alpha1.yaml diff --git a/static/resources/bgppeers.protocols.eda.nokia.com/v1.yaml b/static/resources/25.12.1/bgppeers.protocols.eda.nokia.com/v1.yaml similarity index 100% rename from static/resources/bgppeers.protocols.eda.nokia.com/v1.yaml rename to static/resources/25.12.1/bgppeers.protocols.eda.nokia.com/v1.yaml diff --git a/static/resources/bgppeers.protocols.eda.nokia.com/v1alpha1.yaml b/static/resources/25.12.1/bgppeers.protocols.eda.nokia.com/v1alpha1.yaml similarity index 100% rename from static/resources/bgppeers.protocols.eda.nokia.com/v1alpha1.yaml rename to static/resources/25.12.1/bgppeers.protocols.eda.nokia.com/v1alpha1.yaml diff --git a/static/resources/bgppeerstates.protocols.eda.nokia.com/v1.yaml b/static/resources/25.12.1/bgppeerstates.protocols.eda.nokia.com/v1.yaml similarity index 100% rename from static/resources/bgppeerstates.protocols.eda.nokia.com/v1.yaml rename to static/resources/25.12.1/bgppeerstates.protocols.eda.nokia.com/v1.yaml diff --git a/static/resources/bgppeerstates.protocols.eda.nokia.com/v1alpha1.yaml b/static/resources/25.12.1/bgppeerstates.protocols.eda.nokia.com/v1alpha1.yaml similarity index 100% rename from static/resources/bgppeerstates.protocols.eda.nokia.com/v1alpha1.yaml rename to static/resources/25.12.1/bgppeerstates.protocols.eda.nokia.com/v1alpha1.yaml diff --git a/static/resources/25.12.1/breakouts.interfaces.eda.nokia.com/v1alpha1.yaml b/static/resources/25.12.1/breakouts.interfaces.eda.nokia.com/v1alpha1.yaml new file mode 100644 index 0000000..ab4b3b4 --- /dev/null +++ b/static/resources/25.12.1/breakouts.interfaces.eda.nokia.com/v1alpha1.yaml @@ -0,0 +1,69 @@ +name: v1alpha1 +schema: + openAPIV3Schema: + description: Breakout is the Schema for the breakouts API + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + description: Breakout allows for the configuration of interface breakouts on specified Nodes. This resource specifies the Nodes, parent Interfaces, the number of breakout channels, and the speed of each channel. + properties: + channels: + description: The number of breakout channels to create. + maximum: 8 + minimum: 1 + type: integer + interface: + description: A list of normalized parent interface/port. + items: + type: string + type: array + node: + description: Reference to a list of TopoNodes where the parent interfaces are to be broken out. + items: + type: string + type: array + nodeSelector: + description: Label selector to select nodes on which to configure the breakout interfaces. Either Nodes or NodeSelector must have at least one value set. + items: + type: string + type: array + speed: + description: The speed of each breakout channel. + enum: + - 800G + - 400G + - 200G + - 100G + - 50G + - 40G + - 25G + - 10G + type: string + required: + - channels + - speed + type: object + status: + description: BreakoutStatus defines the observed state of Breakout + type: object + type: object +served: true +storage: true +subresources: + status: {} diff --git a/static/resources/bridgedomaindeployments.services.eda.nokia.com/v1.yaml b/static/resources/25.12.1/bridgedomaindeployments.services.eda.nokia.com/v1.yaml similarity index 100% rename from static/resources/bridgedomaindeployments.services.eda.nokia.com/v1.yaml rename to static/resources/25.12.1/bridgedomaindeployments.services.eda.nokia.com/v1.yaml diff --git a/static/resources/bridgedomaindeployments.services.eda.nokia.com/v1alpha1.yaml b/static/resources/25.12.1/bridgedomaindeployments.services.eda.nokia.com/v1alpha1.yaml similarity index 100% rename from static/resources/bridgedomaindeployments.services.eda.nokia.com/v1alpha1.yaml rename to static/resources/25.12.1/bridgedomaindeployments.services.eda.nokia.com/v1alpha1.yaml diff --git a/static/resources/25.12.1/bridgedomains.services.eda.nokia.com/v1.yaml b/static/resources/25.12.1/bridgedomains.services.eda.nokia.com/v1.yaml new file mode 100644 index 0000000..0bb7b56 --- /dev/null +++ b/static/resources/25.12.1/bridgedomains.services.eda.nokia.com/v1.yaml @@ -0,0 +1,254 @@ +additionalPrinterColumns: + - jsonPath: .status.vni + name: VNI + type: string + - jsonPath: .status.evi + name: EVI + type: string + - jsonPath: .status.importTarget + name: Import Target + type: string + - jsonPath: .status.exportTarget + name: Export Target + type: string + - jsonPath: .status.numSubInterfacesOperDown + name: OperDown SubIf + type: string + - jsonPath: .status.numSubInterfaces + name: Total SubIf + type: string + - jsonPath: .status.operationalState + name: OperationalState + type: string + - jsonPath: .status.lastChange + name: LastChange + type: string +name: v1 +schema: + openAPIV3Schema: + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + description: The BridgeDomain enables the configuration and management of Layer 2 virtual networks. It includes settings for VNI, EVI, route targets for import and export, and tunnel index allocation. Additionally, the specification allows for advanced features such as MAC address table limits, aging, Proxy ARP and detection of MAC and IP duplication. + properties: + configuredName: + description: The name of the BridgeDomain to configure on the device. + type: string + description: + description: The description of the BridgeDomain. + type: string + evi: + description: EVI to use for this BridgeDomain, can be optionally left blank to have it automatically allocated using the EVI Pool. + maximum: 65535 + minimum: 1 + type: integer + eviPool: + default: evi-pool + description: Reference to an EVI pool to use for allocations if EVI is left blank. + type: string + exportTarget: + description: Export route target in 'target:N:N' format, if not specified, the default value taken as "target:1:". + pattern: ^target.*$ + type: string + importTarget: + description: Import route target in 'target:N:N' format, if not specified, the default value taken as "target:1:". + pattern: ^target.*$ + type: string + l2proxyARPND: + description: Enables / Disabled Proxy ARP / Proxy ND. + properties: + dynamicLearning: + properties: + ageTime: + description: Aging timer value for the proxy entries in seconds. If not set, this indicates that the entries are never flushed. + maximum: 86400 + minimum: 60 + type: integer + enabled: + default: false + description: Enables or disables Dynamic Learning. + type: boolean + sendRefresh: + description: The interval determines the frequency at which the system generates three ARP Requests or Neighbor Solicitations with the intent to refresh the proxy entry. The refresh is sent within the age-time window. + maximum: 86400 + minimum: 120 + type: integer + type: object + ipDuplication: + properties: + enabled: + default: false + description: Enables or disables IP Duplication. + type: boolean + holdDownTime: + default: 9 + description: Time to wait in minutes from the moment an IP is declared duplicate to the time the IP is removed from the proxy ARP/ND table. + maximum: 60 + minimum: 2 + type: integer + monitoringWindow: + default: 3 + description: Monitoring window for detecting duplication on a given IP address in the proxy ARP/ND table. + maximum: 15 + minimum: 1 + type: integer + numMoves: + default: 5 + description: Number of moves in the proxy ARP/ND table that an IP is allowed within the monitoring-window. + maximum: 10 + minimum: 3 + type: integer + type: object + proxyARP: + default: false + description: Enables proxy ARP. + type: boolean + proxyND: + default: false + description: Enables proxy ND. + type: boolean + tableSize: + default: 250 + description: Maximum number of entries allowed in the proxy table of the bridge domain. + maximum: 8192 + minimum: 1 + type: integer + type: object + macAging: + default: 300 + description: Configurable aging time for dynamically learned mac addresses. + format: int32 + maximum: 86400 + minimum: 60 + type: integer + macDuplicationDetection: + description: Enable or disable MAC duplication detection and resolution mechanisms. + properties: + action: + default: StopLearning + description: Action to take on the subinterface upon detecting at least one mac addresses as duplicate on the subinterface. + enum: + - Blackhole + - OperDown + - StopLearning + type: string + enabled: + default: false + description: Enables or disables Mac Duplication Detection. + type: boolean + holdDownTime: + default: 9 + description: Time to wait in minutes from the moment a mac is declared duplicate to the mac is flushed from the bridge table. + maximum: 60 + minimum: 2 + type: integer + monitoringWindow: + default: 3 + description: Monitoring window in minutes for detecting duplication on a given mac address. + maximum: 15 + minimum: 1 + type: integer + numMoves: + default: 5 + description: Number of moves a mac is allowed within the monitoring-window, before it is declared duplicate. + minimum: 3 + type: integer + type: object + macLearning: + default: true + description: Enable MAC learning for this BridgeDomain. + type: boolean + macLimit: + description: Sets the maximum number of MAC entries accepted in the bridge table. + format: int32 + minimum: 1 + type: integer + tunnelIndexPool: + default: tunnel-index-pool + description: Reference to a tunnel index pool to use for allocations. + type: string + type: + default: EVPNVXLAN + description: Select the type of BridgeDomain. Simple doesn't include any overlay control plane or dataplane properties (EVPN/VXLAN). EVPNVXLAN includes the properties needed to provision this BridgeDomain over an IP Fabric. + enum: + - SIMPLE + - EVPNVXLAN + type: string + vni: + description: VNI to use for this BridgeDomain, can be optionally left blank to have it allocated using the VNI Pool. + maximum: 16777215 + minimum: 1 + type: integer + vniPool: + default: vni-pool + description: Reference to a VNI pool to use for allocations if VNI is left blank. + type: string + type: object + status: + description: BridgeDomainStatus defines the observed state of BridgeDomain + properties: + evi: + description: EVI in use for this bridge domain. + type: integer + exportTarget: + description: Export route target for this bridge domain. + type: string + health: + description: Indicates the health score of the VNET. + type: integer + healthScoreReason: + description: Indicates the reason for the health score. + type: string + importTarget: + description: Import route target for this bridge domain. + type: string + lastChange: + description: The time when the state of the resource last changed. + type: string + nodes: + description: Nodes which have the BridgeDomain configured (min 1 sub-interface). + items: + type: string + type: array + numNodes: + description: Number of nodes which have the BridgeDomain configured (min 1 sub-interface). + type: integer + numSubInterfaces: + description: Number of sub-interfaces attached to the BridgeDomain. + format: int32 + type: integer + numSubInterfacesOperDown: + description: Number of oper-down sub-interfaces attached to the BridgeDomain. + format: int32 + type: integer + operationalState: + description: Operational state of the VNET. + type: string + tunnelIndex: + description: Vxlan tunnel index in use. + type: integer + vni: + description: VNI in use for this bridge domain. + type: integer + type: object + type: object +served: true +storage: true +subresources: + status: {} diff --git a/static/resources/bridgedomains.services.eda.nokia.com/v1alpha1.yaml b/static/resources/25.12.1/bridgedomains.services.eda.nokia.com/v1alpha1.yaml similarity index 100% rename from static/resources/bridgedomains.services.eda.nokia.com/v1alpha1.yaml rename to static/resources/25.12.1/bridgedomains.services.eda.nokia.com/v1alpha1.yaml diff --git a/static/resources/25.12.1/bridgedomainstates.services.eda.nokia.com/v1.yaml b/static/resources/25.12.1/bridgedomainstates.services.eda.nokia.com/v1.yaml new file mode 100644 index 0000000..4bc950c --- /dev/null +++ b/static/resources/25.12.1/bridgedomainstates.services.eda.nokia.com/v1.yaml @@ -0,0 +1,58 @@ +name: v1 +schema: + openAPIV3Schema: + description: BridgeDomainState is the Schema for the bridgedomainstates API + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + description: BridgeDomainStateSpec defines the desired state of BridgeDomainState + properties: + configuredName: + description: The name of the BridgeDomain to configure on the device. + type: string + evi: + description: EVI in use for this BridgeDomain + maximum: 65535 + minimum: 1 + type: integer + exportTarget: + description: Export route target for this BridgeDomain, in the format 'target:N:N' + pattern: ^target.*$ + type: string + importTarget: + description: Import route target for this BridgeDomain, in the format 'target:N:N' + pattern: ^target.*$ + type: string + tunnelIndex: + description: Vxlan tunnel index in use + type: integer + vni: + description: VNI in use for this BridgeDomain + maximum: 16777215 + minimum: 1 + type: integer + type: object + status: + description: BridgeDomainStateStatus defines the observed state of BridgeDomainState + type: object + type: object +served: true +storage: true +subresources: + status: {} diff --git a/static/resources/bridgedomainstates.services.eda.nokia.com/v1alpha1.yaml b/static/resources/25.12.1/bridgedomainstates.services.eda.nokia.com/v1alpha1.yaml similarity index 100% rename from static/resources/bridgedomainstates.services.eda.nokia.com/v1alpha1.yaml rename to static/resources/25.12.1/bridgedomainstates.services.eda.nokia.com/v1alpha1.yaml diff --git a/static/resources/25.12.1/bridgeinterfaces.services.eda.nokia.com/v1.yaml b/static/resources/25.12.1/bridgeinterfaces.services.eda.nokia.com/v1.yaml new file mode 100644 index 0000000..6ddff2a --- /dev/null +++ b/static/resources/25.12.1/bridgeinterfaces.services.eda.nokia.com/v1.yaml @@ -0,0 +1,198 @@ +additionalPrinterColumns: + - jsonPath: .status.operationalState + name: OperationalState + type: string + - jsonPath: .status.lastChange + name: LastChange + type: string +name: v1 +schema: + openAPIV3Schema: + description: BridgeInterface is the Schema for the bridgeinterfaces API + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + description: The BridgeInterface enables the attachment of network interfaces to a Bridge Domain. It includes settings for VLAN ID allocation, interface attachment, and actions on ingress and egress traffic. The specification supports integration with other network resources, such as Bridge Domains and Interfaces, and provides advanced features like MAC Duplication Detection with configurable actions. + properties: + bridgeDomain: + description: Reference to a BridgeDomain in which to attach the BridgeInterface. + type: string + description: + description: The description of the BridgeInterface. + type: string + egress: + description: Manages actions on traffic at Egress. + properties: + filters: + description: List of Filter references to use at egress. + items: + type: string + type: array + qosPolicy: + description: List of QoS Egress policy references to use at egress. + items: + type: string + type: array + type: object + ingress: + description: Manages actions on traffic at Ingress. + properties: + filters: + description: List of Filter references to use at ingress. + items: + type: string + type: array + qosPolicy: + description: List of QoS Ingress policy references to use at ingress. + items: + type: string + type: array + type: object + interface: + description: Reference to an Interface resource to attach this BridgeInterface. + type: string + l2MTU: + description: L2 MTU specifies the maximum sized Ethernet frame that can be transmitted on the subinterface. If a frame exceeds this size it is discarded. If the l2-mtu of the subinterface exceeds the port-mtu of the associated interface, the subinterface will remain operationally down. + maximum: 9500 + minimum: 1450 + type: integer + macDuplicationDetectionAction: + description: Override for Mac Duplication Detection action if enabled in the associated BridgeDomain. + enum: + - Blackhole + - OperDown + - StopLearning + - UseBridgeDomainAction + type: string + splitHorizonGroup: + description: Split Horizon Group to be used for this BridgeInterface. The subinterface within this BridgeInterface will be a member of this Split Horizon Group. + type: string + uplink: + description: The Uplink between your access breakout switch and your leaf switch. + properties: + egress: + description: Manages actions on traffic at Egress of the Local endpoint of the Uplink. + properties: + filters: + description: List of Filter references to use at egress. + items: + type: string + type: array + qosPolicy: + description: List of QoS Egress policy references to use at egress. + items: + type: string + type: array + type: object + ingress: + description: Manages actions on traffic at Ingress of the Local endpoint of the Uplink. + properties: + filters: + description: List of Filter references to use at ingress. + items: + type: string + type: array + qosPolicy: + description: List of QoS Ingress policy references to use at ingress. + items: + type: string + type: array + type: object + uplinkSelector: + description: Selects TopoLinks which connect a leaf switch to a breakout switch. This is the uplink between your access breakout switch and your leaf switch. There can only be a single TopoLink between the access breakout switch and the leaf switch, if more than one TopoLink is present between two devices the transaction will fail. + items: + type: string + type: array + uplinkVLANID: + default: pool + description: The VLAN ID to be utilized to isolate traffic from the VLAN on the access breakout switch to the leaf switch on the selected uplink TopoLink. + type: string + uplinkVLANPool: + description: A VLAN from this pool will be utilized to isolate traffic from the VLAN on the access breakout switch to the leaf switch on the selected uplink TopoLink. + type: string + type: object + vlanID: + description: Single value between 1-4094 support, ranges supported in the format x-y,x-y, or the special keyword null, any, untagged or pool for auto allocation. + type: string + required: + - bridgeDomain + - interface + - vlanID + type: object + status: + properties: + health: + description: Indicates the health score of the BridgeInterface. + type: integer + healthScoreReason: + description: Indicates the reason for the health score. + type: string + lastChange: + description: The time when the state of the resource last changed. + type: string + operationalState: + description: Operational state of the BridgeInterface. + type: string + subInterfaces: + description: Sub-interfaces status within the BridgeInterface. + items: + properties: + enabled: + description: The administrative status of the SubInterface. + type: boolean + interface: + description: Normalized interface name. + type: string + interfaceResource: + description: Eda interface resource. + type: string + lastChange: + description: Indicates when this SubInterface last changed state. + type: string + node: + description: Reference to Node object. + type: string + nodeInterface: + description: Node specific interface name. + type: string + operatingSystem: + description: Operating System of the Node. + type: string + operationalState: + description: Indicates the current operational state of the SubInterface. + type: string + subInterfaceIndex: + description: Index allocated to the subinterface on the associated interface for the given VLAN. + type: integer + vlanID: + description: vlan assigned to this subinterface. + type: string + required: + - interface + - interfaceResource + - node + - nodeInterface + type: object + type: array + type: object + type: object +served: true +storage: true +subresources: + status: {} diff --git a/static/resources/25.12.1/bridgeinterfaces.services.eda.nokia.com/v1alpha1.yaml b/static/resources/25.12.1/bridgeinterfaces.services.eda.nokia.com/v1alpha1.yaml new file mode 100644 index 0000000..74d2956 --- /dev/null +++ b/static/resources/25.12.1/bridgeinterfaces.services.eda.nokia.com/v1alpha1.yaml @@ -0,0 +1,200 @@ +additionalPrinterColumns: + - jsonPath: .status.operationalState + name: OperationalState + type: string + - jsonPath: .status.lastChange + name: LastChange + type: string +deprecated: true +deprecationWarning: This version is deprecated and will no longer be supported in the next version. +name: v1alpha1 +schema: + openAPIV3Schema: + description: BridgeInterface is the Schema for the bridgeinterfaces API + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + description: The BridgeInterface enables the attachment of network interfaces to a Bridge Domain. It includes settings for VLAN ID allocation, interface attachment, and actions on ingress and egress traffic. The specification supports integration with other network resources, such as Bridge Domains and Interfaces, and provides advanced features like MAC Duplication Detection with configurable actions. + properties: + bridgeDomain: + description: Reference to a BridgeDomain in which to attach the BridgeInterface. + type: string + description: + description: The description of the BridgeInterface. + type: string + egress: + description: Manages actions on traffic at Egress. + properties: + filters: + description: List of Filter references to use at egress. + items: + type: string + type: array + qosPolicy: + description: List of QoS Egress policy references to use at egress. + items: + type: string + type: array + type: object + ingress: + description: Manages actions on traffic at Ingress. + properties: + filters: + description: List of Filter references to use at ingress. + items: + type: string + type: array + qosPolicy: + description: List of QoS Ingress policy references to use at ingress. + items: + type: string + type: array + type: object + interface: + description: Reference to an Interface resource to attach this BridgeInterface. + type: string + l2MTU: + description: L2 MTU specifies the maximum sized Ethernet frame that can be transmitted on the subinterface. If a frame exceeds this size it is discarded. If the l2-mtu of the subinterface exceeds the port-mtu of the associated interface, the subinterface will remain operationally down. + maximum: 9500 + minimum: 1450 + type: integer + macDuplicationDetectionAction: + description: Override for Mac Duplication Detection action if enabled in the associated BridgeDomain. + enum: + - Blackhole + - OperDown + - StopLearning + - UseBridgeDomainAction + type: string + splitHorizonGroup: + description: Split Horizon Group to be used for this BridgeInterface. The subinterface within this BridgeInterface will be a member of this Split Horizon Group. + type: string + uplink: + description: The Uplink between your access breakout switch and your leaf switch. + properties: + egress: + description: Manages actions on traffic at Egress of the Local endpoint of the Uplink. + properties: + filters: + description: List of Filter references to use at egress. + items: + type: string + type: array + qosPolicy: + description: List of QoS Egress policy references to use at egress. + items: + type: string + type: array + type: object + ingress: + description: Manages actions on traffic at Ingress of the Local endpoint of the Uplink. + properties: + filters: + description: List of Filter references to use at ingress. + items: + type: string + type: array + qosPolicy: + description: List of QoS Ingress policy references to use at ingress. + items: + type: string + type: array + type: object + uplinkSelector: + description: Selects TopoLinks which connect a leaf switch to a breakout switch. This is the uplink between your access breakout switch and your leaf switch. There can only be a single TopoLink between the access breakout switch and the leaf switch, if more than one TopoLink is present between two devices the transaction will fail. + items: + type: string + type: array + uplinkVLANID: + default: pool + description: The VLAN ID to be utilized to isolate traffic from the VLAN on the access breakout switch to the leaf switch on the selected uplink TopoLink. + type: string + uplinkVLANPool: + description: A VLAN from this pool will be utilized to isolate traffic from the VLAN on the access breakout switch to the leaf switch on the selected uplink TopoLink. + type: string + type: object + vlanID: + description: Single value between 1-4094 support, ranges supported in the format x-y,x-y, or the special keyword null, any, untagged or pool for auto allocation. + type: string + required: + - bridgeDomain + - interface + - vlanID + type: object + status: + properties: + health: + description: Indicates the health score of the BridgeInterface. + type: integer + healthScoreReason: + description: Indicates the reason for the health score. + type: string + lastChange: + description: The time when the state of the resource last changed. + type: string + operationalState: + description: Operational state of the BridgeInterface. + type: string + subInterfaces: + description: Sub-interfaces status within the BridgeInterface. + items: + properties: + enabled: + description: The administrative status of the SubInterface. + type: boolean + interface: + description: Normalized interface name. + type: string + interfaceResource: + description: Eda interface resource. + type: string + lastChange: + description: Indicates when this SubInterface last changed state. + type: string + node: + description: Reference to Node object. + type: string + nodeInterface: + description: Node specific interface name. + type: string + operatingSystem: + description: Operating System of the Node. + type: string + operationalState: + description: Indicates the current operational state of the SubInterface. + type: string + subInterfaceIndex: + description: Index allocated to the subinterface on the associated interface for the given VLAN. + type: integer + vlanID: + description: vlan assigned to this subinterface. + type: string + required: + - interface + - interfaceResource + - node + - nodeInterface + type: object + type: array + type: object + type: object +served: true +storage: false +subresources: + status: {} diff --git a/static/resources/25.12.1/bridgeinterfacestates.services.eda.nokia.com/v1.yaml b/static/resources/25.12.1/bridgeinterfacestates.services.eda.nokia.com/v1.yaml new file mode 100644 index 0000000..8b2fc94 --- /dev/null +++ b/static/resources/25.12.1/bridgeinterfacestates.services.eda.nokia.com/v1.yaml @@ -0,0 +1,76 @@ +name: v1 +schema: + openAPIV3Schema: + description: BridgeInterfaceState is the Schema for the bridgeinterfacestates API + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + description: BridgeInterfaceStateSpec defines the desired state of BridgeInterfaceState + properties: + bridgeDomain: + description: Node BridgeDomain name + type: string + bridgeDomainConfiguredName: + type: string + subInterfaces: + items: + properties: + interface: + description: Normalized interface name + type: string + interfaceResource: + description: Eda interface resource + type: string + node: + description: Reference to Node object + type: string + nodeInterface: + description: Node specific interface name + type: string + nodeSubInterface: + description: Node specific subinterface name + type: string + operatingSystem: + description: Operating System of the Node + type: string + subInterfaceIndex: + description: Index allocated to the subinterface on the associated interface for the given VLAN + type: integer + vlanID: + description: vlan assigned to this subinterface + type: string + required: + - interface + - interfaceResource + - node + - nodeInterface + type: object + type: array + required: + - bridgeDomain + - bridgeDomainConfiguredName + - subInterfaces + type: object + status: + type: object + type: object +served: true +storage: true +subresources: + status: {} diff --git a/static/resources/bridgeinterfacestates.services.eda.nokia.com/v1alpha1.yaml b/static/resources/25.12.1/bridgeinterfacestates.services.eda.nokia.com/v1alpha1.yaml similarity index 100% rename from static/resources/bridgeinterfacestates.services.eda.nokia.com/v1alpha1.yaml rename to static/resources/25.12.1/bridgeinterfacestates.services.eda.nokia.com/v1alpha1.yaml diff --git a/static/resources/catalogs.appstore.eda.nokia.com/v1.yaml b/static/resources/25.12.1/catalogs.appstore.eda.nokia.com/v1.yaml similarity index 100% rename from static/resources/catalogs.appstore.eda.nokia.com/v1.yaml rename to static/resources/25.12.1/catalogs.appstore.eda.nokia.com/v1.yaml diff --git a/static/resources/certificatechecks.certcheck.eda.nokia.com/v1alpha1.yaml b/static/resources/25.12.1/certificatechecks.certcheck.eda.nokia.com/v1alpha1.yaml similarity index 100% rename from static/resources/certificatechecks.certcheck.eda.nokia.com/v1alpha1.yaml rename to static/resources/25.12.1/certificatechecks.certcheck.eda.nokia.com/v1alpha1.yaml diff --git a/static/resources/chassis.components.eda.nokia.com/v1.yaml b/static/resources/25.12.1/chassis.components.eda.nokia.com/v1.yaml similarity index 100% rename from static/resources/chassis.components.eda.nokia.com/v1.yaml rename to static/resources/25.12.1/chassis.components.eda.nokia.com/v1.yaml diff --git a/static/resources/25.12.1/checkdefaultbgppeerss.protocols.eda.nokia.com/v1.yaml b/static/resources/25.12.1/checkdefaultbgppeerss.protocols.eda.nokia.com/v1.yaml new file mode 100644 index 0000000..ac11e0f --- /dev/null +++ b/static/resources/25.12.1/checkdefaultbgppeerss.protocols.eda.nokia.com/v1.yaml @@ -0,0 +1,55 @@ +additionalPrinterColumns: + - jsonPath: .status.result + name: Result + type: string + - jsonPath: .metadata.creationTimestamp + name: Age + type: date +name: v1 +schema: + openAPIV3Schema: + description: CheckDefaultBgpPeers is the Schema for the checkdefaultbgppeerss API + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + description: CheckDefaultBgpPeersSpec defines the desired state of CheckDefaultBgpPeers + properties: + nodeSelector: + items: + type: string + type: array + nodes: + items: + type: string + type: array + waitFor: + type: integer + type: object + status: + description: CheckDefaultBgpPeersStatus defines the observed state of CheckDefaultBgpPeers + properties: + result: + description: Aggregate result of the Flow + type: string + type: object + type: object +served: true +storage: true +subresources: + status: {} diff --git a/static/resources/checkdefaultbgppeerss.protocols.eda.nokia.com/v1alpha1.yaml b/static/resources/25.12.1/checkdefaultbgppeerss.protocols.eda.nokia.com/v1alpha1.yaml similarity index 100% rename from static/resources/checkdefaultbgppeerss.protocols.eda.nokia.com/v1alpha1.yaml rename to static/resources/25.12.1/checkdefaultbgppeerss.protocols.eda.nokia.com/v1alpha1.yaml diff --git a/static/resources/25.12.1/checkinterfacess.interfaces.eda.nokia.com/v1alpha1.yaml b/static/resources/25.12.1/checkinterfacess.interfaces.eda.nokia.com/v1alpha1.yaml new file mode 100644 index 0000000..dd8371c --- /dev/null +++ b/static/resources/25.12.1/checkinterfacess.interfaces.eda.nokia.com/v1alpha1.yaml @@ -0,0 +1,58 @@ +additionalPrinterColumns: + - jsonPath: .status.result + name: Result + type: string + - jsonPath: .metadata.creationTimestamp + name: Age + type: date +name: v1alpha1 +schema: + openAPIV3Schema: + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + description: CheckInterfacesSpec defines the desired state of CheckInterfaces + properties: + interfaceSelector: + items: + type: string + type: array + nodeSelector: + items: + type: string + type: array + nodes: + items: + type: string + type: array + waitFor: + type: integer + type: object + status: + description: CheckInterfacesStatus defines the observed state of CheckInterfaces + properties: + result: + description: Aggregate result of the Flow + type: string + type: object + type: object +served: true +storage: true +subresources: + status: {} diff --git a/static/resources/25.12.1/cliplugins.environment.eda.nokia.com/v1alpha1.yaml b/static/resources/25.12.1/cliplugins.environment.eda.nokia.com/v1alpha1.yaml new file mode 100644 index 0000000..a7a7a68 --- /dev/null +++ b/static/resources/25.12.1/cliplugins.environment.eda.nokia.com/v1alpha1.yaml @@ -0,0 +1,53 @@ +additionalPrinterColumns: + - jsonPath: .status.result + name: Result + type: string + - jsonPath: .metadata.creationTimestamp + name: Age + type: date +name: v1alpha1 +schema: + openAPIV3Schema: + description: CliPlugin is the Schema for the cliplugins API + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + description: This workflow is used to push a CLI plugin to a node. + properties: + content: + description: Content of the plugin to push. + type: string + fileName: + description: |- + Name of the plugin to push. For SR Linux this should include the .py extension, without leading slashes. + e.g. "myplugin.py". + type: string + type: object + status: + description: CliPluginStatus defines the observed state of CliPlugin + properties: + result: + description: Aggregate result of the Flow + type: string + type: object + type: object +served: true +storage: true +subresources: + status: {} diff --git a/static/resources/clusterdiscoveries.components.eda.nokia.com/v1.yaml b/static/resources/25.12.1/clusterdiscoveries.components.eda.nokia.com/v1.yaml similarity index 100% rename from static/resources/clusterdiscoveries.components.eda.nokia.com/v1.yaml rename to static/resources/25.12.1/clusterdiscoveries.components.eda.nokia.com/v1.yaml diff --git a/static/resources/clusterincidents.snow.eda.nokia.com/v1alpha1.yaml b/static/resources/25.12.1/clusterincidents.snow.eda.nokia.com/v1alpha1.yaml similarity index 100% rename from static/resources/clusterincidents.snow.eda.nokia.com/v1alpha1.yaml rename to static/resources/25.12.1/clusterincidents.snow.eda.nokia.com/v1alpha1.yaml diff --git a/static/resources/clusterinstances.snow.eda.nokia.com/v1alpha1.yaml b/static/resources/25.12.1/clusterinstances.snow.eda.nokia.com/v1alpha1.yaml similarity index 100% rename from static/resources/clusterinstances.snow.eda.nokia.com/v1alpha1.yaml rename to static/resources/25.12.1/clusterinstances.snow.eda.nokia.com/v1alpha1.yaml diff --git a/static/resources/clusterproducers.kafka.eda.nokia.com/v1alpha1.yaml b/static/resources/25.12.1/clusterproducers.kafka.eda.nokia.com/v1alpha1.yaml similarity index 100% rename from static/resources/clusterproducers.kafka.eda.nokia.com/v1alpha1.yaml rename to static/resources/25.12.1/clusterproducers.kafka.eda.nokia.com/v1alpha1.yaml diff --git a/static/resources/clusterroles.core.eda.nokia.com/v1.yaml b/static/resources/25.12.1/clusterroles.core.eda.nokia.com/v1.yaml similarity index 100% rename from static/resources/clusterroles.core.eda.nokia.com/v1.yaml rename to static/resources/25.12.1/clusterroles.core.eda.nokia.com/v1.yaml diff --git a/static/resources/communitysetdeployments.routingpolicies.eda.nokia.com/v1alpha1.yaml b/static/resources/25.12.1/communitysetdeployments.routingpolicies.eda.nokia.com/v1alpha1.yaml similarity index 100% rename from static/resources/communitysetdeployments.routingpolicies.eda.nokia.com/v1alpha1.yaml rename to static/resources/25.12.1/communitysetdeployments.routingpolicies.eda.nokia.com/v1alpha1.yaml diff --git a/static/resources/25.12.1/communitysets.routingpolicies.eda.nokia.com/v1alpha1.yaml b/static/resources/25.12.1/communitysets.routingpolicies.eda.nokia.com/v1alpha1.yaml new file mode 100644 index 0000000..d212351 --- /dev/null +++ b/static/resources/25.12.1/communitysets.routingpolicies.eda.nokia.com/v1alpha1.yaml @@ -0,0 +1,52 @@ +name: v1alpha1 +schema: + openAPIV3Schema: + description: CommunitySet is the Schema for the communitysets API + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + description: CommunitySetSpec defines the desired state of CommunitySet + properties: + configuredName: + description: The name of the commmunityset to configure on the device. + type: string + expressionMatch: + description: Options that determine the matching criteria that applies to the list of community members. + type: string + matchSetOptions: + description: The matching criteria that applies to the Members list. + enum: + - All + - Any + - Invert + type: string + members: + description: A standard BGP community value, regular expression or well-known name or else a large BGP community value or regular expression. + items: + type: string + type: array + type: object + status: + description: CommunitySetStatus defines the observed state of CommunitySet + type: object + type: object +served: true +storage: true +subresources: + status: {} diff --git a/static/resources/25.12.1/components.components.eda.nokia.com/v1.yaml b/static/resources/25.12.1/components.components.eda.nokia.com/v1.yaml new file mode 100644 index 0000000..c923b66 --- /dev/null +++ b/static/resources/25.12.1/components.components.eda.nokia.com/v1.yaml @@ -0,0 +1,110 @@ +additionalPrinterColumns: + - jsonPath: .status.enabled + name: Enabled + type: boolean + - jsonPath: .status.operationalState + name: Operational State + type: string + - jsonPath: .status.type + name: Type + type: string + - jsonPath: .status.lastChange + name: Last Change + type: date + - jsonPath: .status.serialNumber + name: Serial Number + type: string + - jsonPath: .status.partNumber + name: Part Number + type: string + - jsonPath: .metadata.creationTimestamp + name: Age + type: date +name: v1 +schema: + openAPIV3Schema: + description: Component is the Schema for the components API + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + description: ComponentSpec defines the desired state of Component + properties: + node: + description: |- + TopologyNode this Component resides on. + Indicates the operation in which to apply the configuration + type: string + slot: + description: Slot this Component resides in, unset for Components that do not have a slot or ID. + type: string + type: + description: Type of Component. + enum: + - Fan + - FanTray + - PowerSupply + - PowerModule + - PowerShelf + - InterfaceModule + - ControlModule + - FabricModule + - Chassis + - Transceiver + type: string + required: + - node + - type + type: object + status: + description: ComponentStatus defines the observed state of Component + properties: + enabled: + description: The administrative status of this Component. + type: boolean + lastChange: + description: The date and time this Component last changed operational state + type: string + manufacturedDate: + description: The date this Component was manufactured + type: string + operationalState: + description: Indicates the current operational state of this Component. + enum: + - Up + - Down + - Rebooting + - Unknown + - Starting + - Empty + type: string + partNumber: + description: The discovered part number of this Component + type: string + serialNumber: + description: The discovered serial number of this Component + type: string + type: + description: Component type, as provided by the node. + type: string + type: object + type: object +served: true +storage: true +subresources: + status: {} diff --git a/static/resources/components.components.eda.nokia.com/v1alpha1.yaml b/static/resources/25.12.1/components.components.eda.nokia.com/v1alpha1.yaml similarity index 100% rename from static/resources/components.components.eda.nokia.com/v1alpha1.yaml rename to static/resources/25.12.1/components.components.eda.nokia.com/v1alpha1.yaml diff --git a/static/resources/configlets.config.eda.nokia.com/v1alpha1.yaml b/static/resources/25.12.1/configlets.config.eda.nokia.com/v1alpha1.yaml similarity index 100% rename from static/resources/configlets.config.eda.nokia.com/v1alpha1.yaml rename to static/resources/25.12.1/configlets.config.eda.nokia.com/v1alpha1.yaml diff --git a/static/resources/configletstates.config.eda.nokia.com/v1alpha1.yaml b/static/resources/25.12.1/configletstates.config.eda.nokia.com/v1alpha1.yaml similarity index 100% rename from static/resources/configletstates.config.eda.nokia.com/v1alpha1.yaml rename to static/resources/25.12.1/configletstates.config.eda.nokia.com/v1alpha1.yaml diff --git a/static/resources/controlmodules.components.eda.nokia.com/v1.yaml b/static/resources/25.12.1/controlmodules.components.eda.nokia.com/v1.yaml similarity index 100% rename from static/resources/controlmodules.components.eda.nokia.com/v1.yaml rename to static/resources/25.12.1/controlmodules.components.eda.nokia.com/v1.yaml diff --git a/static/resources/25.12.1/controlplanefilters.filters.eda.nokia.com/v1alpha1.yaml b/static/resources/25.12.1/controlplanefilters.filters.eda.nokia.com/v1alpha1.yaml new file mode 100644 index 0000000..dc21b36 --- /dev/null +++ b/static/resources/25.12.1/controlplanefilters.filters.eda.nokia.com/v1alpha1.yaml @@ -0,0 +1,661 @@ +name: v1alpha1 +schema: + openAPIV3Schema: + description: ControlPlaneFilter is the Schema for the controlplanefilters API + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + description: ControlPlaneFilter allows for specifying a list of Nodes or Node selectors where the filter should be applied and managing filter entries in order. + properties: + entries: + description: Specifies the list of filter entries, in order. + items: + properties: + description: + description: Description of the FilterEntry. + type: string + ipEntry: + properties: + action: + description: An action to take, either 'Accept','Drop', or 'RateLimit'. + enum: + - Drop + - Accept + - RateLimit + type: string + destinationPortName: + description: Destination port to match by name. + enum: + - ACAP + - AFP-TCP + - ARNS + - ASF-RMCP + - ASHARE + - ATALK-RM + - AURP + - AUTH + - BFD + - BFD-ECHO + - BFTP + - BGMP + - BGP + - BOOTPC + - BOOTPS + - CCSO-NS + - CHARGEN + - CISCO-TDP + - CITADEL + - CLEARCASE + - COMMERCE + - COURIER + - DAYTIME + - DHCP-FAILOVER + - DHCPV6-CLIENT + - DHCPV6-SERVER + - DICOM + - DISCARD + - DNSIX + - DOMAIN + - DSP + - ECHO + - EPP + - ESRO + - EXEC + - FINGER + - FTP + - FTP-DATA + - FTPS + - FTPS-DATA + - GODI + - GOPHER + - GTP-C + - GTP-PRIME + - GTP-U + - HA-CLUSTER + - HOSTNAME + - HP-ALARM-MGR + - HTTP + - HTTP-ALT + - HTTP-MGMT + - HTTP-RPC + - HTTPS + - IEEE-MMS-SSL + - IMAP + - IMAP3 + - IMAPS + - IPP + - IPSEC + - IPX + - IRC + - IRIS-BEEP + - ISAKMP + - ISAKMP-NAT + - ISCSI + - ISO-TSAP + - KERBEROS + - KERBEROS-ADM + - KLOGIN + - KPASSWD + - KSHELL + - L2TP + - LDAP + - LDAPS + - LDP + - LMP + - LOGIN + - LPD + - LSP-PING + - MAC-SERVER-ADM + - MATIP-A + - MATIP-B + - MICRO-BFD + - MICROSOFT-DS + - MOBILE-IP + - MONITOR + - MPP + - MS-EXCHANGE + - MSDP + - MSP + - MSSQL-M + - MSSQL-S + - MULTIHOP-BFD + - NAS + - NCP + - NETBIOS-DATA + - NETBIOS-NS + - NETBIOS-SS + - NETNEWS + - NETRJS-1 + - NETRJS-2 + - NETRJS-3 + - NETRJS-4 + - NETWALL + - NEW-RWHO + - NFS + - NNTP + - NNTPS + - NTP + - ODMR + - OLSR + - OPENVPN + - PIM-AUTO-RP + - PKIX-TIMESTAMP + - POP2 + - POP3 + - POP3S + - PPTP + - PRINT-SRV + - PTP-EVENT + - PTP-GENERAL + - QMTP + - QOTD + - RADIUS + - RADIUS-ACCT + - REMOTE-MAIL + - REMOTEFS + - REMOTECMD + - RIP + - RJE + - RLP + - RLZDB + - RMC + - RMONITOR + - RPC2PORTMAP + - RSYNC + - RTELNET + - RTSP + - SGMP + - SILC + - SMUX + - SNA-GW + - SNMP + - SNMP-TRAP + - SNPP + - SMTP + - SQL-SVCS + - SQL + - SSH + - SUBMISSION + - SUNRPC + - SVCLOC + - SYSLOG + - SYSTAT + - TACACS + - TALK + - TCPMUX + - TCPNETHASPSRV + - TFTP + - TIME + - TIMED + - UPS + - XDMCP + - XNS-CH + - XNS-MAIL + - XNS-TIME + - Z3950 + type: string + destinationPortNumber: + description: Destination port to match by numerical value. + maximum: 65535 + minimum: 0 + type: integer + destinationPortOperator: + description: Operator to use when matching destinationPort, either Equals, GreaterOrEquals, or LessOrEquals. + enum: + - Equals + - GreaterOrEquals + - LessOrEquals + type: string + destinationPortRange: + description: Range of destination ports to match, in the format n-m, e.g. 100-200, The start and end of the range must be port numbers. + type: string + destinationPrefix: + description: Destination prefix to match. + type: string + dscp: + description: Match DSCP values. + items: + maximum: 63 + minimum: 0 + type: integer + maxItems: 64 + minItems: 0 + type: array + firstFragment: + description: Match the first fragment only. + type: boolean + fragment: + description: Match any fragment. + type: boolean + icmpCode: + description: Match a specific ICMP code, as a number between 0-255, e.g. 0. + items: + type: integer + maxItems: 255 + minItems: 0 + type: array + icmpTypeName: + description: Match a specific ICMP type by name, e.g. dest-unreachable. + enum: + - DestUnreachable + - Echo + - EchoReply + - EchoRequest + - McastRtrAdv + - McastRtrSolicit + - McastRtrTerm + - MldDone + - MldQuery + - MldReport + - MldV2 + - NeighborAdvertise + - NeighborSolicit + - NodeInfoQuery + - NodeInfoResponse + - PacketTooBig + - ParamProblem + - Redirect + - RouterAdvertise + - RouterRenumber + - RouterSolicit + - SourceQuench + - TimeExceeded + - Timestamp + - TimestampReply + type: string + icmpTypeNumber: + description: Match a specific ICMP type by number. + maximum: 255 + minimum: 0 + type: integer + log: + description: Log the matches for this entry. + type: boolean + protocolName: + description: Match a specific IP protocol name (specified in the type field of the IP header). + enum: + - AH + - EGP + - EIGRP + - ESP + - GGP + - GRE + - ICMP + - ICMP6 + - IDRP + - IGMP + - IGP + - IPV4 + - IPV6 + - IPV6-DEST-OPTS + - IPV6-HOP + - L2TP + - MPLS-IN-IP + - NO-NEXT-HDR + - OSPF + - PIM + - ROHC + - RSVP + - SCTP + - ST + - TCP + - UDP + - VRRP + type: string + protocolNumber: + description: Match a specific IP protocol number (specified in the type field of the IP header). + maximum: 255 + minimum: 0 + type: integer + rateLimit: + description: Rate limit to apply when the action is 'RateLimit'. + properties: + burstSize: + description: The maximum burst size in bytes. + format: int32 + type: integer + entrySpecificPolicer: + default: false + description: 'Controls policer instantiation: false for shared instance, true for per-entry instances' + type: boolean + peakRate: + description: The peak rate in kilobytes per second. + format: int32 + type: integer + scope: + default: Global + description: Determines how the policer is applied across subinterfaces. Global applies the policer across all subinterfaces, while Subinterface applies it individually to each subinterface. + enum: + - Global + - Subinterface + type: string + type: object + sourcePortName: + description: Source port to match by name. + enum: + - ACAP + - AFP-TCP + - ARNS + - ASF-RMCP + - ASHARE + - ATALK-RM + - AURP + - AUTH + - BFD + - BFD-ECHO + - BFTP + - BGMP + - BGP + - BOOTPC + - BOOTPS + - CCSO-NS + - CHARGEN + - CISCO-TDP + - CITADEL + - CLEARCASE + - COMMERCE + - COURIER + - DAYTIME + - DHCP-FAILOVER + - DHCPV6-CLIENT + - DHCPV6-SERVER + - DICOM + - DISCARD + - DNSIX + - DOMAIN + - DSP + - ECHO + - EPP + - ESRO + - EXEC + - FINGER + - FTP + - FTP-DATA + - FTPS + - FTPS-DATA + - GODI + - GOPHER + - GTP-C + - GTP-PRIME + - GTP-U + - HA-CLUSTER + - HOSTNAME + - HP-ALARM-MGR + - HTTP + - HTTP-ALT + - HTTP-MGMT + - HTTP-RPC + - HTTPS + - IEEE-MMS-SSL + - IMAP + - IMAP3 + - IMAPS + - IPP + - IPSEC + - IPX + - IRC + - IRIS-BEEP + - ISAKMP + - ISAKMP-NAT + - ISCSI + - ISO-TSAP + - KERBEROS + - KERBEROS-ADM + - KLOGIN + - KPASSWD + - KSHELL + - L2TP + - LDAP + - LDAPS + - LDP + - LMP + - LOGIN + - LPD + - LSP-PING + - MAC-SERVER-ADM + - MATIP-A + - MATIP-B + - MICRO-BFD + - MICROSOFT-DS + - MOBILE-IP + - MONITOR + - MPP + - MS-EXCHANGE + - MSDP + - MSP + - MSSQL-M + - MSSQL-S + - MULTIHOP-BFD + - NAS + - NCP + - NETBIOS-DATA + - NETBIOS-NS + - NETBIOS-SS + - NETNEWS + - NETRJS-1 + - NETRJS-2 + - NETRJS-3 + - NETRJS-4 + - NETWALL + - NEW-RWHO + - NFS + - NNTP + - NNTPS + - NTP + - ODMR + - OLSR + - OPENVPN + - PIM-AUTO-RP + - PKIX-TIMESTAMP + - POP2 + - POP3 + - POP3S + - PPTP + - PRINT-SRV + - PTP-EVENT + - PTP-GENERAL + - QMTP + - QOTD + - RADIUS + - RADIUS-ACCT + - REMOTE-MAIL + - REMOTEFS + - REMOTECMD + - RIP + - RJE + - RLP + - RLZDB + - RMC + - RMONITOR + - RPC2PORTMAP + - RSYNC + - RTELNET + - RTSP + - SGMP + - SILC + - SMUX + - SNA-GW + - SNMP + - SNMP-TRAP + - SNPP + - SMTP + - SQL-SVCS + - SQL + - SSH + - SUBMISSION + - SUNRPC + - SVCLOC + - SYSLOG + - SYSTAT + - TACACS + - TALK + - TCPMUX + - TCPNETHASPSRV + - TFTP + - TIME + - TIMED + - UPS + - XDMCP + - XNS-CH + - XNS-MAIL + - XNS-TIME + - Z3950 + type: string + sourcePortNumber: + description: Source port to match by numerical value. + maximum: 65535 + minimum: 0 + type: integer + sourcePortOperator: + description: Operator to use when matching sourcePort, either Equals, GreaterOrEquals, or LessOrEquals. + enum: + - Equals + - GreaterOrEquals + - LessOrEquals + type: string + sourcePortRange: + description: Range of source ports to match, in the format n-m, e.g. 100-200. The start and end of the range must be port numbers. + type: string + sourcePrefix: + description: Source prefix to match. + type: string + tcpFlags: + description: Match TCP flags, usable with !, &, | and the flags RST, SYN, and ACK. + type: string + type: object + macEntry: + properties: + action: + description: An action to take, either 'Accept','Drop', or 'RateLimit'. + enum: + - Drop + - Accept + - RateLimit + type: string + destinationMAC: + description: Match an Ethernet frame if its destination MAC address logically anded with the mask equals this MAC address. + type: string + destinationMACMask: + description: Match an Ethernet frame if its destination MAC address logically anded with the mask equals the configured MAC address. + type: string + ethertype: + description: An Ethernet frame matches this condition if its ethertype value (after 802.1Q VLAN tags) matches the specified value. + enum: + - ARP + - AUTHENTICATION8021X + - ETHOAM + - FCOE + - FCOEINITIALIZATION + - FLOWCONTROL + - IPV4 + - IPV6 + - LACP + - LLDP + - MACSEC + - MPLSMULTICAST + - MPLSUNICAST + - PBB + - PPPOEDISCOVERY + - PPPOESESSION + - PTP + - ROCE + type: string + log: + description: Log the matches for this entry. + type: boolean + outerVLANIDOperator: + description: Operator to use when matching OuterVlanIdValue, either Equals, GreaterOrEquals, or LessOrEquals. + enum: + - Equals + - GreaterOrEquals + - LessOrEquals + type: string + outerVLANIDRange: + description: Range of Outer vlan IDs to match, in the format n-m, e.g. 100-200 + type: string + outerVLANIDValue: + description: Ethernet frame matching criteria based on the outermost VLAN ID found before the subinterface-defining VLAN tag (if any) is removed. A value of 'none' will match only untagged frames. + type: string + rateLimit: + description: Rate limit to apply when the action is 'RateLimit'. + properties: + burstSize: + description: The maximum burst size in bytes. + format: int32 + type: integer + entrySpecificPolicer: + default: false + description: 'Controls policer instantiation: false for shared instance, true for per-entry instances' + type: boolean + peakRate: + description: The peak rate in kilobytes per second. + format: int32 + type: integer + scope: + default: Global + description: Determines how the policer is applied across subinterfaces. Global applies the policer across all subinterfaces, while Subinterface applies it individually to each subinterface. + enum: + - Global + - Subinterface + type: string + type: object + sourceMAC: + description: Match an Ethernet frame if its source MAC address logically anded with the mask equals this MAC address. + type: string + sourceMACMask: + description: Match an Ethernet frame if its source MAC address logically anded with the mask equals the configured MAC address. + type: string + type: object + type: + default: Auto + description: Type of the entry which can be IPV4, IPV6, MAC or Auto. + enum: + - IPV4 + - IPV6 + - MAC + - Auto + type: string + required: + - type + type: object + type: array + nodeSelector: + description: Label selector used to select Toponodes on which to deploy the CPM filter. + items: + type: string + type: array + nodes: + description: Reference to a list of TopoNodes on which to deploy the CPM filter. + items: + type: string + type: array + statisticsPerEntry: + description: Enable or disable per-entry counters. + type: boolean + required: + - entries + type: object + status: + description: ControlPlaneFilterStatus defines the observed state of ControlPlaneFilter + type: object + type: object +served: true +storage: true +subresources: + status: {} diff --git a/static/resources/cpuoverlays.components.eda.nokia.com/v1.yaml b/static/resources/25.12.1/cpuoverlays.components.eda.nokia.com/v1.yaml similarity index 100% rename from static/resources/cpuoverlays.components.eda.nokia.com/v1.yaml rename to static/resources/25.12.1/cpuoverlays.components.eda.nokia.com/v1.yaml diff --git a/static/resources/25.12.1/creategithubissues.github.eda.nokia.com/v1alpha1.yaml b/static/resources/25.12.1/creategithubissues.github.eda.nokia.com/v1alpha1.yaml new file mode 100644 index 0000000..2c102c2 --- /dev/null +++ b/static/resources/25.12.1/creategithubissues.github.eda.nokia.com/v1alpha1.yaml @@ -0,0 +1,127 @@ +name: v1alpha1 +schema: + openAPIV3Schema: + description: CreateGithubIssue is the Schema for the creategithubissues API + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + description: spec defines the desired state of CreateGithubIssue + properties: + instance: + description: Github instance name. + type: string + issue: + properties: + assignees: + items: + type: string + type: array + body: + type: string + labels: + items: + type: string + type: array + milestone: + type: string + title: + type: string + type: object + repo: + type: string + type: object + status: + description: status defines the observed state of CreateGithubIssue + properties: + conditions: + description: |- + conditions represent the current state of the CreateGithubIssue resource. + Each condition has a unique type and reflects the status of a specific aspect of the resource. + + Standard condition types include: + - "Available": the resource is fully functional + - "Progressing": the resource is being created or updated + - "Degraded": the resource failed to reach or maintain its desired state + + The status of each condition is one of True, False, or Unknown. + items: + description: Condition contains details for one aspect of the current state of this API Resource. + properties: + lastTransitionTime: + description: |- + lastTransitionTime is the last time the condition transitioned from one status to another. + This should be when the underlying condition changed. If that is not known, then using the time when the API field changed is acceptable. + format: date-time + type: string + message: + description: |- + message is a human readable message indicating details about the transition. + This may be an empty string. + maxLength: 32768 + type: string + observedGeneration: + description: |- + observedGeneration represents the .metadata.generation that the condition was set based upon. + For instance, if .metadata.generation is currently 12, but the .status.conditions[x].observedGeneration is 9, the condition is out of date + with respect to the current state of the instance. + format: int64 + minimum: 0 + type: integer + reason: + description: |- + reason contains a programmatic identifier indicating the reason for the condition's last transition. + Producers of specific condition types may define expected values and meanings for this field, + and whether the values are considered a guaranteed API. + The value should be a CamelCase string. + This field may not be empty. + maxLength: 1024 + minLength: 1 + pattern: ^[A-Za-z]([A-Za-z0-9_,:]*[A-Za-z0-9_])?$ + type: string + status: + description: status of the condition, one of True, False, Unknown. + enum: + - "True" + - "False" + - Unknown + type: string + type: + description: type of condition in CamelCase or in foo.example.com/CamelCase. + maxLength: 316 + pattern: ^([a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*/)?(([A-Za-z0-9][-A-Za-z0-9_.]*)?[A-Za-z0-9])$ + type: string + required: + - lastTransitionTime + - message + - reason + - status + - type + type: object + type: array + x-kubernetes-list-map-keys: + - type + x-kubernetes-list-type: map + type: object + required: + - spec + type: object +served: true +storage: true +subresources: + status: {} diff --git a/static/resources/25.12.1/creategitlabissues.gitlab.eda.nokia.com/v1alpha1.yaml b/static/resources/25.12.1/creategitlabissues.gitlab.eda.nokia.com/v1alpha1.yaml new file mode 100644 index 0000000..c2b2cd1 --- /dev/null +++ b/static/resources/25.12.1/creategitlabissues.gitlab.eda.nokia.com/v1alpha1.yaml @@ -0,0 +1,65 @@ +name: v1alpha1 +schema: + openAPIV3Schema: + description: CreateGitlabIssue is the Schema for the creategitlabissues API + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + description: spec defines the desired state of CreateGitlabIssue + properties: + instance: + description: Gitlab instance name. + type: string + issue: + description: Issue template to create. + properties: + assignees: + description: Assignees of the issue. + items: + type: string + type: array + body: + description: Body of the issue. + type: string + labels: + description: Labels of the issue. + items: + type: string + type: array + milestone: + description: Milestone of the issue. + type: string + title: + description: Title of the issue. + type: string + type: object + repo: + description: Repository name. + type: string + type: object + status: + description: status defines the observed state of CreateGitlabIssue + type: object + required: + - spec + type: object +served: true +storage: true +subresources: + status: {} diff --git a/static/resources/defaultaggregateroutes.protocols.eda.nokia.com/v1.yaml b/static/resources/25.12.1/defaultaggregateroutes.protocols.eda.nokia.com/v1.yaml similarity index 100% rename from static/resources/defaultaggregateroutes.protocols.eda.nokia.com/v1.yaml rename to static/resources/25.12.1/defaultaggregateroutes.protocols.eda.nokia.com/v1.yaml diff --git a/static/resources/defaultaggregateroutes.protocols.eda.nokia.com/v1alpha1.yaml b/static/resources/25.12.1/defaultaggregateroutes.protocols.eda.nokia.com/v1alpha1.yaml similarity index 100% rename from static/resources/defaultaggregateroutes.protocols.eda.nokia.com/v1alpha1.yaml rename to static/resources/25.12.1/defaultaggregateroutes.protocols.eda.nokia.com/v1alpha1.yaml diff --git a/static/resources/defaultbgpgroupdeployments.protocols.eda.nokia.com/v1.yaml b/static/resources/25.12.1/defaultbgpgroupdeployments.protocols.eda.nokia.com/v1.yaml similarity index 100% rename from static/resources/defaultbgpgroupdeployments.protocols.eda.nokia.com/v1.yaml rename to static/resources/25.12.1/defaultbgpgroupdeployments.protocols.eda.nokia.com/v1.yaml diff --git a/static/resources/defaultbgpgroupdeployments.protocols.eda.nokia.com/v1alpha1.yaml b/static/resources/25.12.1/defaultbgpgroupdeployments.protocols.eda.nokia.com/v1alpha1.yaml similarity index 100% rename from static/resources/defaultbgpgroupdeployments.protocols.eda.nokia.com/v1alpha1.yaml rename to static/resources/25.12.1/defaultbgpgroupdeployments.protocols.eda.nokia.com/v1alpha1.yaml diff --git a/static/resources/25.12.1/defaultbgpgroups.protocols.eda.nokia.com/v1.yaml b/static/resources/25.12.1/defaultbgpgroups.protocols.eda.nokia.com/v1.yaml new file mode 100644 index 0000000..14adddc --- /dev/null +++ b/static/resources/25.12.1/defaultbgpgroups.protocols.eda.nokia.com/v1.yaml @@ -0,0 +1,374 @@ +additionalPrinterColumns: + - jsonPath: .status.lastChange + name: Last Change + type: date + - jsonPath: .status.operationalState + name: Operational State + type: string +name: v1 +schema: + openAPIV3Schema: + description: DefaultBGPGroup is the Schema for the defaultbgpgroups API + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + description: The DefaultBGPGroup enables centralized management of BGP peer configurations within a DefaultRouter. This resource allows setting a description, common BGP settings, and peer-specific configurations, simplifying the consistent application of policies across multiple peers. It also includes transport settings, such as local TCP address configuration, passive mode, and TCP MSS. type DefaultBGPGroupSpec struct { + properties: + asPathOptions: + description: AS Path Options + properties: + allowOwnAS: + default: 0 + description: The maximum number of times the global AS number or a local AS number of the BGP instance can appear in any received AS_PATH before it is considered a loop and considered invalid. + maximum: 255 + minimum: 0 + type: integer + removePrivateAS: + description: Options for removing private AS numbers (2-byte and 4-byte) from the advertised AS path towards all peers. + properties: + ignorePeerAS: + default: false + description: If set to true then do not delete or replace a private AS number that is the same as the peer AS number. + type: boolean + leadingOnly: + default: false + description: If set to true then only delete or replace private AS numbers that appear before the first occurrence of a non-private ASN in the sequence of most recent ASNs in the AS path. + type: boolean + removePrivateASMode: + default: DISABLED + description: The method by which private AS numbers are removed from the advertised AS_PATH attribute. + enum: + - DISABLED + - REPLACE + - DELETE + type: string + required: + - ignorePeerAS + - leadingOnly + - removePrivateASMode + type: object + required: + - allowOwnAS + type: object + bfd: + description: Enable or disable Bi-forward Forwarding Detection (BFD) with fast failover. + type: boolean + client: + description: When set to true, all configured and dynamic BGP peers are considered RR clients. + type: boolean + clusterID: + description: Enables route reflect client and sets the cluster ID. + type: string + configuredName: + description: Configures the group name on the device. + type: string + description: + description: Sets the description on the BGP group. + type: string + exportPolicy: + description: Reference to a Policy CR that will be used to filter routes advertised to peers. + items: + type: string + type: array + grStaleRouteTime: + description: Enables Graceful Restart on the peer and sets the stale route time. + maximum: 3600 + minimum: 1 + type: integer + importPolicy: + description: Reference to a Policy CR that will be used to filter routes received from peers. + items: + type: string + type: array + ipv4Unicast: + description: Parameters relating to the IPv4 unicast AFI/SAFI. + properties: + advertiseIPV6NextHops: + description: Enables advertisement of IPv4 Unicast routes with IPv6 next-hops to peers. + type: boolean + enabled: + description: Enables the IPv4 unicast AFISAFI. + type: boolean + prefixLimit: + properties: + prefixLimitAccepted: + properties: + logOnly: + description: Defines the action to take when the maximum number of prefixes is exceeded. Session is reset if set to false, otherwise only a warning is logged. + type: boolean + maxReceivedRoutes: + description: Maximum number of prefixes allowed to be received from the neighbor, counting only accepted routes. + format: int32 + maximum: 4294967295 + minimum: 1 + type: integer + warningThreshold: + description: A percentage of the maximum number of prefixes that can be accepted before a warning is logged. + maximum: 100 + minimum: 1 + type: integer + type: object + prefixLimitReceived: + properties: + logOnly: + description: Defines the action to take when the maximum number of prefixes is exceeded. Session is reset if set to false, otherwise only a warning is logged. + type: boolean + maxReceivedRoutes: + description: Maximum number of prefixes allowed to be received from the neighbor, counting all routes (accepted and rejected by import policies). + format: int32 + maximum: 4294967295 + minimum: 1 + type: integer + warningThreshold: + description: A percentage of the maximum number of prefixes that can be received before a warning is logged. + maximum: 100 + minimum: 1 + type: integer + type: object + type: object + receiveIPV6NextHops: + description: Enables the advertisement of the RFC 5549 capability to receive IPv4 routes with IPv6 next-hops. + type: boolean + type: object + ipv6Unicast: + description: Parameters relating to the IPv6 unicast AFI/SAFI. + properties: + enabled: + description: Enables the IPv6 unicast AFISAFI + type: boolean + prefixLimit: + properties: + prefixLimitAccepted: + properties: + logOnly: + description: Defines the action to take when the maximum number of prefixes is exceeded. Session is reset if set to false, otherwise only a warning is logged. + type: boolean + maxReceivedRoutes: + description: Maximum number of prefixes allowed to be received from the neighbor, counting only accepted routes. + format: int32 + maximum: 4294967295 + minimum: 1 + type: integer + warningThreshold: + description: A percentage of the maximum number of prefixes that can be accepted before a warning is logged. + maximum: 100 + minimum: 1 + type: integer + type: object + prefixLimitReceived: + properties: + logOnly: + description: Defines the action to take when the maximum number of prefixes is exceeded. Session is reset if set to false, otherwise only a warning is logged. + type: boolean + maxReceivedRoutes: + description: Maximum number of prefixes allowed to be received from the neighbor, counting all routes (accepted and rejected by import policies). + format: int32 + maximum: 4294967295 + minimum: 1 + type: integer + warningThreshold: + description: A percentage of the maximum number of prefixes that can be received before a warning is logged. + maximum: 100 + minimum: 1 + type: integer + type: object + type: object + type: object + keychain: + description: Reference to a Keychain resource that will be used for authentication with the BGP peer. + type: string + l2VPNEVPN: + description: Parameters relating to the EVPN AFI/SAFI. + properties: + advertiseIPV6NextHops: + description: Enables advertisement of EVPN routes with IPv6 next-hops to peers. + type: boolean + enabled: + description: Enables the L2VPN EVPN AFISAFI. + type: boolean + prefixLimit: + properties: + prefixLimitAccepted: + properties: + logOnly: + description: Defines the action to take when the maximum number of prefixes is exceeded. Session is reset if set to false, otherwise only a warning is logged. + type: boolean + maxReceivedRoutes: + description: Maximum number of prefixes allowed to be received from the neighbor, counting only accepted routes. + format: int32 + maximum: 4294967295 + minimum: 1 + type: integer + warningThreshold: + description: A percentage of the maximum number of prefixes that can be accepted before a warning is logged. + maximum: 100 + minimum: 1 + type: integer + type: object + prefixLimitReceived: + properties: + logOnly: + description: Defines the action to take when the maximum number of prefixes is exceeded. Session is reset if set to false, otherwise only a warning is logged. + type: boolean + maxReceivedRoutes: + description: Maximum number of prefixes allowed to be received from the neighbor, counting all routes (accepted and rejected by import policies). + format: int32 + maximum: 4294967295 + minimum: 1 + type: integer + warningThreshold: + description: A percentage of the maximum number of prefixes that can be received before a warning is logged. + maximum: 100 + minimum: 1 + type: integer + type: object + type: object + type: object + localAS: + description: The local autonomous system number advertised to peers. + properties: + autonomousSystem: + description: Local Autonomous System number. + maximum: 4294967295 + minimum: 1 + type: integer + prependGlobalAS: + description: When set to true, the global ASN value is prepended to the AS path in outbound routes towards each BGP peer. + type: boolean + prependLocalAS: + description: When set to true, the local AS value is prepended to the AS path of inbound routes from each EBGP peer. + type: boolean + required: + - autonomousSystem + type: object + localPreference: + description: Local Preference attribute added to received routes from the BGP peers, also sets local preference for generated routes. + maximum: 4294967295 + minimum: 0 + type: integer + multiHopMaxHop: + description: Enable multihop for eBGP peers and sets the maximum number of hops allowed. + maximum: 255 + minimum: 1 + type: integer + nextHopSelf: + description: When set to true, the next-hop in all IPv4-unicast, IPv6-unicast and EVPN BGP routes advertised to the peer is set to the local-address. + type: boolean + peerAS: + description: The autonomous system number expected from peers. + properties: + autonomousSystem: + description: Local Autonomous System number. + maximum: 4294967295 + minimum: 1 + type: integer + required: + - autonomousSystem + type: object + rtc: + description: Parameters relating to the RTC SAFI. + properties: + advertiseDefaultRoute: + description: Enables advertisement of a Default RTC Route to the BGP peers to receive all VPN routes. + type: boolean + enabled: + description: Enables the Route Target Constraints SAFI. + type: boolean + type: object + sendCommunityLarge: + description: When false, all large (12 byte) BGP communities from all outbound routes advertised to the peer are stripped. + type: boolean + sendCommunityStandard: + description: When false, all standard (4 byte) communities from all outbound routes advertised to the peer are stripped. + type: boolean + sendDefaultRoute: + description: Options for controlling the generation of default routes towards BGP peers. + properties: + addressFamily: + description: Enables the sending of a synthetically generated default IPv4 or IPV6 route to each peer. + items: + enum: + - IPV4-UNICAST + - IPV6-UNICAST + type: string + type: array + exportPolicy: + description: Reference to a Policy that should be applied to the advertised default routes, in order to set their attributes to non-default values. + type: string + required: + - addressFamily + type: object + timers: + description: Timer configurations + properties: + connectRetry: + description: The time interval in seconds between successive attempts to establish a session with a peer. + maximum: 65535 + minimum: 1 + type: integer + holdTime: + description: The hold-time interval in seconds that the router proposes to the peer in its OPEN message. + maximum: 65535 + minimum: 0 + type: integer + keepAlive: + description: The interval in seconds between successive keepalive messages sent to the peer. + maximum: 21845 + minimum: 0 + type: integer + minimumAdvertisementInterval: + description: The value assigned to the MinRouteAdvertisementIntervalTimer of RFC 4271, for both EBGP and IBGP sessions. + maximum: 255 + minimum: 1 + type: integer + type: object + type: object + status: + description: DefaultBGPGroupStatus defines the observed state of DefaultBGPGroup. + properties: + health: + description: Indicates the health score of the BGP group. + type: integer + healthScoreReason: + description: Indicates the reason for the health score. + type: string + lastChange: + description: The time when the state of the resource last changed. + type: string + numPeers: + description: Number of configured BGP peers within the BGP Group. + format: int32 + type: integer + numPeersOperDown: + description: Number of configured BGP peers which have an Operational State of down within the BGP Group. + format: int32 + type: integer + numPeersUnknown: + description: Number of configured BGP peers within the BGP Group which cannot be reached by npp. + format: int32 + type: integer + operationalState: + description: Operational state of the BGP group. + type: string + type: object + type: object +served: true +storage: true +subresources: + status: {} diff --git a/static/resources/defaultbgpgroups.protocols.eda.nokia.com/v1alpha1.yaml b/static/resources/25.12.1/defaultbgpgroups.protocols.eda.nokia.com/v1alpha1.yaml similarity index 100% rename from static/resources/defaultbgpgroups.protocols.eda.nokia.com/v1alpha1.yaml rename to static/resources/25.12.1/defaultbgpgroups.protocols.eda.nokia.com/v1alpha1.yaml diff --git a/static/resources/25.12.1/defaultbgppeers.protocols.eda.nokia.com/v1.yaml b/static/resources/25.12.1/defaultbgppeers.protocols.eda.nokia.com/v1.yaml new file mode 100644 index 0000000..eb25ff2 --- /dev/null +++ b/static/resources/25.12.1/defaultbgppeers.protocols.eda.nokia.com/v1.yaml @@ -0,0 +1,429 @@ +additionalPrinterColumns: + - jsonPath: .status.sessionState + name: Session State + type: string + - jsonPath: .status.lastChange + name: Last Change + type: date + - jsonPath: .status.enabled + name: Enabled + type: boolean + - jsonPath: .status.operationalState + name: Operational State + type: string + - jsonPath: .status.peerAS + name: PeerAS + type: integer +name: v1 +schema: + openAPIV3Schema: + description: DefaultBGPPeer is the Schema for the defaultbgppeers API + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + description: DefaultBGPPeer enables the configuration of BGP sessions within a DefaultRouter. It allows specifying a description, a DefaultInterface reference, and the peer IP address. The resource also supports dynamic neighbors, common BGP settings, and peer-specific configurations. + properties: + asPathOptions: + description: AS Path Options + properties: + allowOwnAS: + default: 0 + description: The maximum number of times the global AS number or a local AS number of the BGP instance can appear in any received AS_PATH before it is considered a loop and considered invalid. + maximum: 255 + minimum: 0 + type: integer + removePrivateAS: + description: Options for removing private AS numbers (2-byte and 4-byte) from the advertised AS path towards all peers. + properties: + ignorePeerAS: + default: false + description: If set to true then do not delete or replace a private AS number that is the same as the peer AS number. + type: boolean + leadingOnly: + default: false + description: If set to true then only delete or replace private AS numbers that appear before the first occurrence of a non-private ASN in the sequence of most recent ASNs in the AS path. + type: boolean + removePrivateASMode: + default: DISABLED + description: The method by which private AS numbers are removed from the advertised AS_PATH attribute. + enum: + - DISABLED + - REPLACE + - DELETE + type: string + required: + - ignorePeerAS + - leadingOnly + - removePrivateASMode + type: object + required: + - allowOwnAS + type: object + bfd: + description: Enable or disable Bi-forward Forwarding Detection (BFD) with fast failover. + type: boolean + client: + description: When set to true, all configured and dynamic BGP peers are considered RR clients. + type: boolean + clusterID: + description: Enables route reflect client and sets the cluster ID. + type: string + description: + description: Sets the description on the BGP peer. + type: string + dynamicNeighbor: + default: false + description: When set to true the DefaultInterface is added to the dynamic-neighbor list for dynamic peering. + type: boolean + dynamicNeighborAllowedPeerAS: + description: The autonomous system numbers allowed from peers if dynamic peering is enabled. + items: + type: integer + type: array + exportPolicy: + description: Reference to a Policy CR that will be used to filter routes advertised to peers. + items: + type: string + type: array + grStaleRouteTime: + description: Enables Graceful Restart on the peer and sets the stale route time. + maximum: 3600 + minimum: 1 + type: integer + group: + description: Reference to a DefaultBGPGroup. + type: string + importPolicy: + description: Reference to a Policy CR that will be used to filter routes received from peers. + items: + type: string + type: array + interface: + description: Reference to either a DefaultInterface or SystemInterface whose IP will be used as a source IP for the BGP session. + type: string + interfaceKind: + description: Reference to a the Kind of interface whose IP will be used as a source IP for the BGP session. + enum: + - DEFAULTINTERFACE + - SYSTEMINTERFACE + type: string + ipv4Unicast: + description: Parameters relating to the IPv4 unicast AFI/SAFI. + properties: + advertiseIPV6NextHops: + description: Enables advertisement of IPv4 Unicast routes with IPv6 next-hops to peers. + type: boolean + enabled: + description: Enables the IPv4 unicast AFISAFI. + type: boolean + prefixLimit: + properties: + prefixLimitAccepted: + properties: + logOnly: + description: Defines the action to take when the maximum number of prefixes is exceeded. Session is reset if set to false, otherwise only a warning is logged. + type: boolean + maxReceivedRoutes: + description: Maximum number of prefixes allowed to be received from the neighbor, counting only accepted routes. + format: int32 + maximum: 4294967295 + minimum: 1 + type: integer + warningThreshold: + description: A percentage of the maximum number of prefixes that can be accepted before a warning is logged. + maximum: 100 + minimum: 1 + type: integer + type: object + prefixLimitReceived: + properties: + logOnly: + description: Defines the action to take when the maximum number of prefixes is exceeded. Session is reset if set to false, otherwise only a warning is logged. + type: boolean + maxReceivedRoutes: + description: Maximum number of prefixes allowed to be received from the neighbor, counting all routes (accepted and rejected by import policies). + format: int32 + maximum: 4294967295 + minimum: 1 + type: integer + warningThreshold: + description: A percentage of the maximum number of prefixes that can be received before a warning is logged. + maximum: 100 + minimum: 1 + type: integer + type: object + type: object + receiveIPV6NextHops: + description: Enables the advertisement of the RFC 5549 capability to receive IPv4 routes with IPv6 next-hops. + type: boolean + type: object + ipv6Unicast: + description: Parameters relating to the IPv6 unicast AFI/SAFI. + properties: + enabled: + description: Enables the IPv6 unicast AFISAFI + type: boolean + prefixLimit: + properties: + prefixLimitAccepted: + properties: + logOnly: + description: Defines the action to take when the maximum number of prefixes is exceeded. Session is reset if set to false, otherwise only a warning is logged. + type: boolean + maxReceivedRoutes: + description: Maximum number of prefixes allowed to be received from the neighbor, counting only accepted routes. + format: int32 + maximum: 4294967295 + minimum: 1 + type: integer + warningThreshold: + description: A percentage of the maximum number of prefixes that can be accepted before a warning is logged. + maximum: 100 + minimum: 1 + type: integer + type: object + prefixLimitReceived: + properties: + logOnly: + description: Defines the action to take when the maximum number of prefixes is exceeded. Session is reset if set to false, otherwise only a warning is logged. + type: boolean + maxReceivedRoutes: + description: Maximum number of prefixes allowed to be received from the neighbor, counting all routes (accepted and rejected by import policies). + format: int32 + maximum: 4294967295 + minimum: 1 + type: integer + warningThreshold: + description: A percentage of the maximum number of prefixes that can be received before a warning is logged. + maximum: 100 + minimum: 1 + type: integer + type: object + type: object + type: object + keychain: + description: Reference to a Keychain resource that will be used for authentication with the BGP peer. + type: string + l2VPNEVPN: + description: Parameters relating to the EVPN AFI/SAFI. + properties: + advertiseIPV6NextHops: + description: Enables advertisement of EVPN routes with IPv6 next-hops to peers. + type: boolean + enabled: + description: Enables the L2VPN EVPN AFISAFI. + type: boolean + prefixLimit: + properties: + prefixLimitAccepted: + properties: + logOnly: + description: Defines the action to take when the maximum number of prefixes is exceeded. Session is reset if set to false, otherwise only a warning is logged. + type: boolean + maxReceivedRoutes: + description: Maximum number of prefixes allowed to be received from the neighbor, counting only accepted routes. + format: int32 + maximum: 4294967295 + minimum: 1 + type: integer + warningThreshold: + description: A percentage of the maximum number of prefixes that can be accepted before a warning is logged. + maximum: 100 + minimum: 1 + type: integer + type: object + prefixLimitReceived: + properties: + logOnly: + description: Defines the action to take when the maximum number of prefixes is exceeded. Session is reset if set to false, otherwise only a warning is logged. + type: boolean + maxReceivedRoutes: + description: Maximum number of prefixes allowed to be received from the neighbor, counting all routes (accepted and rejected by import policies). + format: int32 + maximum: 4294967295 + minimum: 1 + type: integer + warningThreshold: + description: A percentage of the maximum number of prefixes that can be received before a warning is logged. + maximum: 100 + minimum: 1 + type: integer + type: object + type: object + type: object + localAS: + description: The local autonomous system number advertised to peers. + properties: + autonomousSystem: + description: Local Autonomous System number. + maximum: 4294967295 + minimum: 1 + type: integer + prependGlobalAS: + description: When set to true, the global ASN value is prepended to the AS path in outbound routes towards each BGP peer. + type: boolean + prependLocalAS: + description: When set to true, the local AS value is prepended to the AS path of inbound routes from each EBGP peer. + type: boolean + required: + - autonomousSystem + type: object + localPreference: + description: Local Preference attribute added to received routes from the BGP peers, also sets local preference for generated routes. + maximum: 4294967295 + minimum: 0 + type: integer + multiHopMaxHop: + description: Enable multihop for eBGP peers and sets the maximum number of hops allowed. + maximum: 255 + minimum: 1 + type: integer + nextHopSelf: + description: When set to true, the next-hop in all IPv4-unicast, IPv6-unicast and EVPN BGP routes advertised to the peer is set to the local-address. + type: boolean + peerAS: + description: The autonomous system number expected from peers. + properties: + autonomousSystem: + description: Local Autonomous System number. + maximum: 4294967295 + minimum: 1 + type: integer + required: + - autonomousSystem + type: object + peerIP: + description: Peer IP to which the peering session will be established. There cannot be both a PeerIp and PeerDefaultInterface property set. + type: string + peerInterface: + description: Reference to a DefaultInterface or SystemInterface resource to which the peering session will be established. There cannot be both a PeerIp and PeerDefaultInterface property set. + type: string + peerInterfaceKind: + description: Reference to a the Kind of interface to which to peer to. + enum: + - DEFAULTINTERFACE + - SYSTEMINTERFACE + type: string + rtc: + description: Parameters relating to the RTC SAFI. + properties: + advertiseDefaultRoute: + description: Enables advertisement of a Default RTC Route to the BGP peers to receive all VPN routes. + type: boolean + enabled: + description: Enables the Route Target Constraints SAFI. + type: boolean + type: object + sendCommunityLarge: + description: When false, all large (12 byte) BGP communities from all outbound routes advertised to the peer are stripped. + type: boolean + sendCommunityStandard: + description: When false, all standard (4 byte) communities from all outbound routes advertised to the peer are stripped. + type: boolean + sendDefaultRoute: + description: Options for controlling the generation of default routes towards BGP peers. + properties: + addressFamily: + description: Enables the sending of a synthetically generated default IPv4 or IPV6 route to each peer. + items: + enum: + - IPV4-UNICAST + - IPV6-UNICAST + type: string + type: array + exportPolicy: + description: Reference to a Policy that should be applied to the advertised default routes, in order to set their attributes to non-default values. + type: string + required: + - addressFamily + type: object + timers: + description: Timer configurations + properties: + connectRetry: + description: The time interval in seconds between successive attempts to establish a session with a peer. + maximum: 65535 + minimum: 1 + type: integer + holdTime: + description: The hold-time interval in seconds that the router proposes to the peer in its OPEN message. + maximum: 65535 + minimum: 0 + type: integer + keepAlive: + description: The interval in seconds between successive keepalive messages sent to the peer. + maximum: 21845 + minimum: 0 + type: integer + minimumAdvertisementInterval: + description: The value assigned to the MinRouteAdvertisementIntervalTimer of RFC 4271, for both EBGP and IBGP sessions. + maximum: 255 + minimum: 1 + type: integer + type: object + required: + - group + - interface + - interfaceKind + type: object + status: + description: DefaultBGPPeerStatus defines the observed state of DefaultBGPPeer + properties: + enabled: + description: Indicated whether the BGP Peer is administratively enabled. + type: boolean + health: + description: Indicates the health score of the BGP peer. + type: integer + healthScoreReason: + description: Indicates the reason for the health score. + type: string + lastChange: + description: The time when the state of the resource last changed. + type: string + lastEvent: + description: Last event of the BGP peer. + type: string + lastState: + description: Last state of the BGP peer. + type: string + negotiatedHoldTime: + description: Hold time negotiated with the BGP peer. + type: integer + negotiatedKeepaliveInterval: + description: Keepalive interval negotiated with the BGP peer. + type: integer + operationalState: + description: Operational state of the BGP peer + type: string + peerAS: + description: Peer AS of the BGP peer. + type: integer + sessionState: + description: The state of the BGP session. + type: string + underMaintenance: + description: Indicates if the BGP peer is under maintenance. + type: boolean + type: object + type: object +served: true +storage: true +subresources: + status: {} diff --git a/static/resources/defaultbgppeers.protocols.eda.nokia.com/v1alpha1.yaml b/static/resources/25.12.1/defaultbgppeers.protocols.eda.nokia.com/v1alpha1.yaml similarity index 100% rename from static/resources/defaultbgppeers.protocols.eda.nokia.com/v1alpha1.yaml rename to static/resources/25.12.1/defaultbgppeers.protocols.eda.nokia.com/v1alpha1.yaml diff --git a/static/resources/25.12.1/defaultinterfaces.routing.eda.nokia.com/v1alpha1.yaml b/static/resources/25.12.1/defaultinterfaces.routing.eda.nokia.com/v1alpha1.yaml new file mode 100644 index 0000000..92be7cc --- /dev/null +++ b/static/resources/25.12.1/defaultinterfaces.routing.eda.nokia.com/v1alpha1.yaml @@ -0,0 +1,155 @@ +additionalPrinterColumns: + - jsonPath: .status.lastChange + name: Last Change + type: date + - jsonPath: .status.operationalState + name: Operational State + type: string +name: v1alpha1 +schema: + openAPIV3Schema: + description: DefaultInterface is the Schema for the defaultinterfaces API + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + description: DefaultInterface enables the configuration of default interfaces, including Interface references, DefaultRouter, VLAN IDs, IP MTU settings, and options for IPv4 and IPv6 addresses. It also supports unnumbered interfaces and BFD (Bidirectional Forwarding Detection) configuration. + properties: + bfd: + description: Enable or disable BFD on this DefaultInterface. + properties: + desiredMinTransmitInt: + default: 1000000 + description: The minimum interval in microseconds between transmission of BFD control packets[default=1000000]. + maximum: 100000000 + minimum: 10000 + type: integer + detectionMultiplier: + default: 3 + description: The number of packets that must be missed to declare this session as down. [default=3] + maximum: 20 + minimum: 3 + type: integer + enabled: + default: false + description: Enable Biforward Detection[default=false]. + type: boolean + minEchoReceiveInterval: + default: 1000000 + description: The minimum interval between echo packets the local node can receive in microseconds + maximum: 100000000 + minimum: 0 + type: integer + requiredMinReceive: + default: 1000000 + description: The minimum interval in microseconds between received BFD control packets that this system should support.[default=1000000]. + maximum: 100000000 + minimum: 10000 + type: integer + ttl: + description: Sets custom IP TTL or Hop Limit for multi-hop BFD sessions packets. Not applicable to single-hop BFD sessions. + maximum: 255 + minimum: 2 + type: integer + required: + - desiredMinTransmitInt + - detectionMultiplier + - enabled + - minEchoReceiveInterval + - requiredMinReceive + type: object + defaultRouter: + description: Reference to a DefaultRouter. + type: string + description: + description: The description of the DefaultInterface. + type: string + interface: + description: Reference to an Interface to use for attachment. + type: string + ipMTU: + description: Set the IP MTU for the DefaultInterface. + maximum: 9486 + minimum: 1280 + type: integer + ipv4Addresses: + description: List of IPv4 addresses in ip/mask form, e.g., 192.168.0.1/24. + items: + properties: + ipPrefix: + description: Address and mask to use + type: string + primary: + description: Indicates which address to use as primary for broadcast + type: boolean + required: + - ipPrefix + type: object + type: array + ipv6Addresses: + description: List of IPv6 addresses in ip/mask form, e.g., fc00::1/120. + items: + properties: + ipPrefix: + description: Address and mask to use + type: string + primary: + description: Indicates which address to use as primary for broadcast + type: boolean + required: + - ipPrefix + type: object + type: array + subinterfaceIndex: + description: Subinterface index to use with this DefaultInterface. Ignored for platforms that do not support subinterface index + type: integer + unnumbered: + description: Enables the use of unnumbered interfaces on the ISL. For IPv6, no IP address are configured on the sub-interface and only the link local address will be used. If any allocation pool is specified for IPv6 that will take precedence and IPs will be assigned to the interfaces. When using eBGP for an underlay protocol, the DefaultInterfaces which are a part of the ISL will be added to the BGP dynamic neighbor list. + enum: + - IPV6 + type: string + vlanID: + description: VLAN to use with this DefaultInterface. + maximum: 4094 + minimum: 1 + type: integer + required: + - defaultRouter + - interface + type: object + status: + description: DefaultInterfaceStatus defines the observed state of DefaultInterface + properties: + health: + description: Indicates the health score of the DefaultInterface. + type: integer + healthScoreReason: + description: Indicates the reason for the health score. + type: string + lastChange: + description: Indicates when this Interface last changed state. + type: string + operationalState: + description: Indicates the current operational state of the DefaultInterface. + type: string + type: object + type: object +served: true +storage: true +subresources: + status: {} diff --git a/static/resources/defaultinterfacestates.routing.eda.nokia.com/v1alpha1.yaml b/static/resources/25.12.1/defaultinterfacestates.routing.eda.nokia.com/v1alpha1.yaml similarity index 100% rename from static/resources/defaultinterfacestates.routing.eda.nokia.com/v1alpha1.yaml rename to static/resources/25.12.1/defaultinterfacestates.routing.eda.nokia.com/v1alpha1.yaml diff --git a/static/resources/25.12.1/defaultmtus.siteinfo.eda.nokia.com/v1alpha1.yaml b/static/resources/25.12.1/defaultmtus.siteinfo.eda.nokia.com/v1alpha1.yaml new file mode 100644 index 0000000..f4b39d8 --- /dev/null +++ b/static/resources/25.12.1/defaultmtus.siteinfo.eda.nokia.com/v1alpha1.yaml @@ -0,0 +1,59 @@ +name: v1alpha1 +schema: + openAPIV3Schema: + description: DefaultMTU is the Schema for the defaultmtus API + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + description: DefaultMTUSpec defines the desired state of DefaultMTU + properties: + interfaceMTU: + description: Configures the Default MTU value for Ethernet interfaces. Includes Ethernet headers but excludes 4-byte FCS trailer. + maximum: 11000 + minimum: 1500 + type: integer + layer2SubifMTU: + description: Configures the Default MTU value for Layer 2 (bridged) interfaces. Includes Ethernet headers but excludes 4-byte FCS trailer. + maximum: 11000 + minimum: 1500 + type: integer + layer3MTU: + description: Configures the Default IP MTU value for Layer 3 interfaces. Includes IP headers but excludes Ethernet headers. + maximum: 11000 + minimum: 1280 + type: integer + nodeSelector: + description: Label selector to select nodes on which to configure the defaults. + items: + type: string + type: array + nodes: + description: List of nodes on which to configure the defaults. + items: + type: string + type: array + type: object + status: + description: DefaultMTUStatus defines the observed state of DefaultMTU + type: object + type: object +served: true +storage: true +subresources: + status: {} diff --git a/static/resources/25.12.1/defaultospfareadeployments.protocols.eda.nokia.com/v1.yaml b/static/resources/25.12.1/defaultospfareadeployments.protocols.eda.nokia.com/v1.yaml new file mode 100644 index 0000000..8875008 --- /dev/null +++ b/static/resources/25.12.1/defaultospfareadeployments.protocols.eda.nokia.com/v1.yaml @@ -0,0 +1,51 @@ +name: v1 +schema: + openAPIV3Schema: + description: DefaultOSPFAreaDeployment is the Schema for the defaultospfareadeployments API + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + description: DefaultOSPFAreaDeploymentSpec defines the desired state of DefaultOSPFAreaDeployment + properties: + defaultOSPFArea: + description: Reference to a DefaultOSPFArea. + type: string + defaultOSPFInstance: + description: Reference to a DefaultOSPFINSTANCE + type: string + defaultRouter: + description: Reference to a default Router + type: string + node: + description: Reference to a Node on which to push the DefaultOSPFArea. + type: string + required: + - defaultOSPFArea + - defaultOSPFInstance + - defaultRouter + - node + type: object + status: + description: DefaultOSPFAreaDeploymentStatus defines the observed state of DefaultOSPFAreaDeployment + type: object + type: object +served: true +storage: true +subresources: + status: {} diff --git a/static/resources/25.12.1/defaultospfareas.protocols.eda.nokia.com/v1.yaml b/static/resources/25.12.1/defaultospfareas.protocols.eda.nokia.com/v1.yaml new file mode 100644 index 0000000..d4844cd --- /dev/null +++ b/static/resources/25.12.1/defaultospfareas.protocols.eda.nokia.com/v1.yaml @@ -0,0 +1,66 @@ +name: v1 +schema: + openAPIV3Schema: + description: DefaultOSPFArea is the Schema for the defaultospfareas API + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + description: DefaultOSPFAreaSpec defines the desired state of DefaultOSPFArea + properties: + areaId: + default: 0.0.0.0 + description: Area ID. 32-bit in the dotted-quad notation (e.g., "0.0.0.0"). + format: ipv4 + pattern: ^((([0-9]|[1-9][0-9]|1[0-9]{2}|2[0-4][0-9]|25[0-5])\.){3}([0-9]|[1-9][0-9]|1[0-9]{2}|2[0-4][0-9]|25[0-5]))$ + type: string + areaType: + default: Normal + description: Area type. Normal is assumed if not specified. + enum: + - Normal + - Stub + - NSSA + type: string + required: + - areaId + type: object + status: + description: DefaultOSPFAreaStatus defines the observed state of DefaultOSPFArea + properties: + health: + description: Indicates the health score of the OSPF area. + type: integer + healthScoreReason: + description: Indicates the reason for the health score. + type: string + lastChange: + description: The time when the state of the resource last changed. + type: string + numActiveInterfaces: + description: The number of active interfaces in the OSPF area. + type: integer + numNeighbors: + description: The number of discovered neighbors in the OSPF area. + type: integer + type: object + type: object +served: true +storage: true +subresources: + status: {} diff --git a/static/resources/25.12.1/defaultospfinstancedeployments.protocols.eda.nokia.com/v1.yaml b/static/resources/25.12.1/defaultospfinstancedeployments.protocols.eda.nokia.com/v1.yaml new file mode 100644 index 0000000..93ed102 --- /dev/null +++ b/static/resources/25.12.1/defaultospfinstancedeployments.protocols.eda.nokia.com/v1.yaml @@ -0,0 +1,47 @@ +name: v1 +schema: + openAPIV3Schema: + description: DefaultOSPFInstanceDeployment is the Schema for the defaultospfinstancedeployments API + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + description: DefaultOSPFInstanceDeploymentSpec defines the desired state of DefaultOSPFInstanceDeployment + properties: + defaultOSPFInstance: + description: Reference to a DefaultOSPFInstance. + type: string + defaultRouter: + description: Reference to a default Router + type: string + node: + description: Reference to a Node on which to push the DefaultOSPFInstance. + type: string + required: + - defaultOSPFInstance + - defaultRouter + - node + type: object + status: + description: DefaultOSPFInstanceDeploymentStatus defines the observed state of DefaultOSPFInstanceDeployment + type: object + type: object +served: true +storage: true +subresources: + status: {} diff --git a/static/resources/25.12.1/defaultospfinstances.protocols.eda.nokia.com/v1.yaml b/static/resources/25.12.1/defaultospfinstances.protocols.eda.nokia.com/v1.yaml new file mode 100644 index 0000000..eb37c34 --- /dev/null +++ b/static/resources/25.12.1/defaultospfinstances.protocols.eda.nokia.com/v1.yaml @@ -0,0 +1,140 @@ +additionalPrinterColumns: + - jsonPath: .status.lastChange + name: Last Change + type: date + - jsonPath: .status.operationalState + name: Operational State + type: string +name: v1 +schema: + openAPIV3Schema: + description: DefaultOSPFInstance is the Schema for the defaultospfinstances API + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + description: DefaultOSPFInstanceSpec defines the desired state of DefaultOSPFInstance + properties: + addressFamily: + description: Selects an address family for OSPFv3. It is mandatory to specify at least one address family when OSPFv3 is selected. + enum: + - IPV4-UNICAST + - IPV6-UNICAST + type: string + enabled: + default: false + description: Enables OSPF instance. + type: boolean + maxECMP: + description: The maximum number of ECMP paths (next-hops). + maximum: 256 + minimum: 1 + type: integer + maxMetric: + description: Configuration related to OSPF Max Metric / Overload. + properties: + onBoot: + description: Set Max Metric on boot for the fixed period of time (in seconds). + minimum: 10 + type: integer + overload: + description: Enable Max Link Metric on all interfaces. + type: boolean + type: object + refBwGbps: + description: Reference bandwidth (in Gbps) for automatic metric calculation. + maximum: 3200 + minimum: 1 + type: integer + timers: + description: Configures OSPF timers. + properties: + lsaTimers: + properties: + accumulateMs: + description: Delay (in milliseconds) to gather LSAs before advertising to neighbors + minimum: 0 + type: integer + arrivalMs: + description: Minimum interval (in milliseconds) to accept an identical LSA. + minimum: 0 + type: integer + genHoldIntervalMs: + description: Hold interval (in milliseconds) for subsequent LSA regeneration. + minimum: 0 + type: integer + genInitialDelayMs: + description: Initial delay (in milliseconds) to generate the first instance of LSAs. + minimum: 0 + type: integer + genMaxDelayMs: + description: Maximum interval (in milliseconds) between two consecutive regenerations (of the same LSA). + minimum: 0 + type: integer + type: object + spfTimers: + properties: + holdIntervalMs: + description: Hold interval for subsequent SPF calculations. + minimum: 1 + type: integer + incrementalSPFDelayMs: + description: Delay (in milliseconds) before an incremental SPF calculation starts. + minimum: 0 + type: integer + initialDelayMs: + description: Initial SPF calculation delay (in milliseconds). + minimum: 0 + type: integer + maxDelayMs: + description: Maximum interval (in milliseconds) between two consecutive SPF calculations. + minimum: 1 + type: integer + type: object + type: object + version: + description: OSPF version to use. OSPFv2 is supported over IPv4-enabled interfaces, OSPFv3 over IPv6-enabled interfaces. + enum: + - v2 + - v3 + type: string + required: + - enabled + - version + type: object + status: + description: DefaultOSPFInstanceStatus defines the observed state of DefaultOSPFInstance + properties: + health: + description: Indicates the health score of the OSPF Instance. + type: integer + healthScoreReason: + description: Indicates the reason for the health score. + type: string + lastChange: + description: The time when the state of the resource last changed. + type: string + operationalState: + description: Operational state of the OSPF Instance. + type: string + type: object + type: object +served: true +storage: true +subresources: + status: {} diff --git a/static/resources/25.12.1/defaultospfinterfaces.protocols.eda.nokia.com/v1.yaml b/static/resources/25.12.1/defaultospfinterfaces.protocols.eda.nokia.com/v1.yaml new file mode 100644 index 0000000..b1a1243 --- /dev/null +++ b/static/resources/25.12.1/defaultospfinterfaces.protocols.eda.nokia.com/v1.yaml @@ -0,0 +1,138 @@ +additionalPrinterColumns: + - jsonPath: .status.lastChange + name: Last Change + type: date + - jsonPath: .status.operationalState + name: Operational State + type: string +name: v1 +schema: + openAPIV3Schema: + description: DefaultOSPFInterface is the Schema for the defaultospfinterfaces API + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + description: DefaultOSPFInterfaceSpec defines the desired state of DefaultOSPFInterface + properties: + deadIntervalSec: + description: Dead Interval in seconds. + maximum: 65535 + minimum: 3 + type: integer + defaultOSPFArea: + description: Reference to a DefaultOSPFArea. + type: string + defaultOSPFInstance: + description: Reference to a Default OSPF Instance on which the Default OSPF area is configured. + type: string + helloIntervalSec: + description: Hello Interval in seconds. + maximum: 65535 + minimum: 1 + type: integer + interface: + description: Reference to either a DefaultInterface or SystemInterface. + type: string + interfaceKind: + default: DEFAULTINTERFACE + description: Reference to the Kind of interface to enable OSPF on. + enum: + - DEFAULTINTERFACE + - SYSTEMINTERFACE + type: string + metric: + description: Interface metric. + minimum: 0 + type: integer + mtu: + description: OSPF interface MTU + maximum: 10240 + minimum: 512 + type: integer + ospfBFD: + description: Configure BFD on the OSPF interface. + properties: + enabled: + default: false + description: Enables BFD on the OSPF interface. + type: boolean + strictMode: + description: Enables BFD Strict Mode on the OSPF interface. + type: boolean + strictModeHoldDownSec: + description: Enables Hold Down Timer for BFD Strict Mode, in seconds. + maximum: 3600 + minimum: 512 + type: integer + required: + - enabled + type: object + passive: + description: Configure the OSPF interface as passive. + type: boolean + type: + default: PointToPoint + description: OSPF interface type. + enum: + - PointToPoint + - Broadcast + type: string + required: + - defaultOSPFArea + - defaultOSPFInstance + - interface + - interfaceKind + - type + type: object + status: + description: DefaultOSPFInterfaceStatus defines the observed state of DefaultOSPFInterface + properties: + health: + description: Indicates the health score of the OSPF interface. + type: integer + healthScoreReason: + description: Indicates the reason for the health score. + type: string + lastChange: + description: The time when the state of the resource last changed. + type: string + neighbors: + description: Neighbor status within the OSPF interface. + items: + properties: + adjacencyState: + description: Adjacency state of the OSPF neighbor. + type: string + neighborId: + description: Router ID of the OSPF neighbor. + type: string + type: object + type: array + numNeighbors: + description: The number of discovered neighbors. + type: integer + operationalState: + description: Operational state of the OSPF interface. + type: string + type: object + type: object +served: true +storage: true +subresources: + status: {} diff --git a/static/resources/25.12.1/defaultroutereflectorclients.protocols.eda.nokia.com/v1.yaml b/static/resources/25.12.1/defaultroutereflectorclients.protocols.eda.nokia.com/v1.yaml new file mode 100644 index 0000000..81af3b5 --- /dev/null +++ b/static/resources/25.12.1/defaultroutereflectorclients.protocols.eda.nokia.com/v1.yaml @@ -0,0 +1,380 @@ +additionalPrinterColumns: + - jsonPath: .status.lastChange + name: Last Change + type: date + - jsonPath: .status.operationalState + name: OperationalState + type: string + - jsonPath: .status.numRouteReflectorClientBGPPeers + name: NumRouteReflectorClientBGPPeers + type: string + - jsonPath: .status.numRouteReflectorClientBGPPeersOperDown + name: NumRouteReflectorClientBGPPeersOperDown + type: string +name: v1 +schema: + openAPIV3Schema: + description: DefaultRouteReflectorClient is the Schema for the defaultroutereflectorclients API + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + description: DefaultRouteReflectorClient enables the configuration of iBGP sessions from a client to RouteReflectors. It includes settings for the DefaultInterface, BGP group, client selectors, and a list of Route Reflector IPs. Additionally, it allows for the configuration of L2VPN EVPN settings and applies common BGP configuration settings to manage routing efficiently within the network. + properties: + asPathOptions: + description: AS Path Options + properties: + allowOwnAS: + default: 0 + description: The maximum number of times the global AS number or a local AS number of the BGP instance can appear in any received AS_PATH before it is considered a loop and considered invalid. + maximum: 255 + minimum: 0 + type: integer + removePrivateAS: + description: Options for removing private AS numbers (2-byte and 4-byte) from the advertised AS path towards all peers. + properties: + ignorePeerAS: + default: false + description: If set to true then do not delete or replace a private AS number that is the same as the peer AS number. + type: boolean + leadingOnly: + default: false + description: If set to true then only delete or replace private AS numbers that appear before the first occurrence of a non-private ASN in the sequence of most recent ASNs in the AS path. + type: boolean + removePrivateASMode: + default: DISABLED + description: The method by which private AS numbers are removed from the advertised AS_PATH attribute. + enum: + - DISABLED + - REPLACE + - DELETE + type: string + required: + - ignorePeerAS + - leadingOnly + - removePrivateASMode + type: object + required: + - allowOwnAS + type: object + bfd: + description: Enable or disable Bi-forward Forwarding Detection (BFD) with fast failover. + type: boolean + defaultBgpClientGroup: + description: Reference to Default Bgp Group. + type: string + exportPolicy: + description: Reference to a Policy CR that will be used to filter routes advertised to peers. + items: + type: string + type: array + grStaleRouteTime: + description: Enables Graceful Restart on the peer and sets the stale route time. + maximum: 3600 + minimum: 1 + type: integer + importPolicy: + description: Reference to a Policy CR that will be used to filter routes received from peers. + items: + type: string + type: array + interface: + description: Reference to either a DefaultInterface or SystemInterface from which the session to the RR will be done from. + type: string + interfaceKind: + description: Reference to a the Kind of interface from which the session to the RR will be done from. + enum: + - DEFAULTINTERFACE + - SYSTEMINTERFACE + type: string + ipv4Unicast: + description: Parameters relating to the IPv4 unicast AFI/SAFI. + properties: + advertiseIPV6NextHops: + description: Enables advertisement of IPv4 Unicast routes with IPv6 next-hops to peers. + type: boolean + enabled: + description: Enables the IPv4 unicast AFISAFI. + type: boolean + prefixLimit: + properties: + prefixLimitAccepted: + properties: + logOnly: + description: Defines the action to take when the maximum number of prefixes is exceeded. Session is reset if set to false, otherwise only a warning is logged. + type: boolean + maxReceivedRoutes: + description: Maximum number of prefixes allowed to be received from the neighbor, counting only accepted routes. + format: int32 + maximum: 4294967295 + minimum: 1 + type: integer + warningThreshold: + description: A percentage of the maximum number of prefixes that can be accepted before a warning is logged. + maximum: 100 + minimum: 1 + type: integer + type: object + prefixLimitReceived: + properties: + logOnly: + description: Defines the action to take when the maximum number of prefixes is exceeded. Session is reset if set to false, otherwise only a warning is logged. + type: boolean + maxReceivedRoutes: + description: Maximum number of prefixes allowed to be received from the neighbor, counting all routes (accepted and rejected by import policies). + format: int32 + maximum: 4294967295 + minimum: 1 + type: integer + warningThreshold: + description: A percentage of the maximum number of prefixes that can be received before a warning is logged. + maximum: 100 + minimum: 1 + type: integer + type: object + type: object + receiveIPV6NextHops: + description: Enables the advertisement of the RFC 5549 capability to receive IPv4 routes with IPv6 next-hops. + type: boolean + type: object + ipv6Unicast: + description: Parameters relating to the IPv6 unicast AFI/SAFI. + properties: + enabled: + description: Enables the IPv6 unicast AFISAFI + type: boolean + prefixLimit: + properties: + prefixLimitAccepted: + properties: + logOnly: + description: Defines the action to take when the maximum number of prefixes is exceeded. Session is reset if set to false, otherwise only a warning is logged. + type: boolean + maxReceivedRoutes: + description: Maximum number of prefixes allowed to be received from the neighbor, counting only accepted routes. + format: int32 + maximum: 4294967295 + minimum: 1 + type: integer + warningThreshold: + description: A percentage of the maximum number of prefixes that can be accepted before a warning is logged. + maximum: 100 + minimum: 1 + type: integer + type: object + prefixLimitReceived: + properties: + logOnly: + description: Defines the action to take when the maximum number of prefixes is exceeded. Session is reset if set to false, otherwise only a warning is logged. + type: boolean + maxReceivedRoutes: + description: Maximum number of prefixes allowed to be received from the neighbor, counting all routes (accepted and rejected by import policies). + format: int32 + maximum: 4294967295 + minimum: 1 + type: integer + warningThreshold: + description: A percentage of the maximum number of prefixes that can be received before a warning is logged. + maximum: 100 + minimum: 1 + type: integer + type: object + type: object + type: object + keychain: + description: Reference to a Keychain resource that will be used for authentication with the BGP peer. + type: string + l2VPNEVPN: + description: Parameters relating to the EVPN AFI/SAFI. + properties: + advertiseIPV6NextHops: + description: Enables advertisement of EVPN routes with IPv6 next-hops to peers. + type: boolean + enabled: + description: Enables the L2VPN EVPN AFISAFI. + type: boolean + prefixLimit: + properties: + prefixLimitAccepted: + properties: + logOnly: + description: Defines the action to take when the maximum number of prefixes is exceeded. Session is reset if set to false, otherwise only a warning is logged. + type: boolean + maxReceivedRoutes: + description: Maximum number of prefixes allowed to be received from the neighbor, counting only accepted routes. + format: int32 + maximum: 4294967295 + minimum: 1 + type: integer + warningThreshold: + description: A percentage of the maximum number of prefixes that can be accepted before a warning is logged. + maximum: 100 + minimum: 1 + type: integer + type: object + prefixLimitReceived: + properties: + logOnly: + description: Defines the action to take when the maximum number of prefixes is exceeded. Session is reset if set to false, otherwise only a warning is logged. + type: boolean + maxReceivedRoutes: + description: Maximum number of prefixes allowed to be received from the neighbor, counting all routes (accepted and rejected by import policies). + format: int32 + maximum: 4294967295 + minimum: 1 + type: integer + warningThreshold: + description: A percentage of the maximum number of prefixes that can be received before a warning is logged. + maximum: 100 + minimum: 1 + type: integer + type: object + type: object + type: object + localAS: + description: The local autonomous system number advertised to peers. + properties: + autonomousSystem: + description: Local Autonomous System number. + maximum: 4294967295 + minimum: 1 + type: integer + prependGlobalAS: + description: When set to true, the global ASN value is prepended to the AS path in outbound routes towards each BGP peer. + type: boolean + prependLocalAS: + description: When set to true, the local AS value is prepended to the AS path of inbound routes from each EBGP peer. + type: boolean + required: + - autonomousSystem + type: object + peerAS: + description: The autonomous system number expected from peers. + properties: + autonomousSystem: + description: Local Autonomous System number. + maximum: 4294967295 + minimum: 1 + type: integer + required: + - autonomousSystem + type: object + routeReflectorIPs: + description: List of the peering IPs on the RRs to which peering session is established. + items: + type: string + type: array + routeReflectorSelector: + description: Label selector used to select the RouteReflectors to which the iBGP sessions are established. + items: + type: string + type: array + rtc: + description: Parameters relating to the RTC SAFI. + properties: + advertiseDefaultRoute: + description: Enables advertisement of a Default RTC Route to the BGP peers to receive all VPN routes. + type: boolean + enabled: + description: Enables the Route Target Constraints SAFI. + type: boolean + type: object + sendCommunityLarge: + description: When false, all large (12 byte) BGP communities from all outbound routes advertised to the peer are stripped. + type: boolean + sendCommunityStandard: + description: When false, all standard (4 byte) communities from all outbound routes advertised to the peer are stripped. + type: boolean + sendDefaultRoute: + description: Options for controlling the generation of default routes towards BGP peers. + properties: + addressFamily: + description: Enables the sending of a synthetically generated default IPv4 or IPV6 route to each peer. + items: + enum: + - IPV4-UNICAST + - IPV6-UNICAST + type: string + type: array + exportPolicy: + description: Reference to a Policy that should be applied to the advertised default routes, in order to set their attributes to non-default values. + type: string + required: + - addressFamily + type: object + timers: + description: Timer configurations + properties: + connectRetry: + description: The time interval in seconds between successive attempts to establish a session with a peer. + maximum: 65535 + minimum: 1 + type: integer + holdTime: + description: The hold-time interval in seconds that the router proposes to the peer in its OPEN message. + maximum: 65535 + minimum: 0 + type: integer + keepAlive: + description: The interval in seconds between successive keepalive messages sent to the peer. + maximum: 21845 + minimum: 0 + type: integer + minimumAdvertisementInterval: + description: The value assigned to the MinRouteAdvertisementIntervalTimer of RFC 4271, for both EBGP and IBGP sessions. + maximum: 255 + minimum: 1 + type: integer + type: object + required: + - defaultBgpClientGroup + - interface + - interfaceKind + type: object + status: + description: DefaultRouteReflectorClientStatus defines the observed state of DefaultRouteReflectorClient + properties: + health: + description: Indicates the health score of the DefaultRouteReflectorClient. + type: integer + healthScoreReason: + description: Indicates the reason for the health score. + type: string + lastChange: + description: The time when the state of the resource last changed. + type: string + numRouteReflectorClientBGPPeers: + description: Total number of configured route reflector peers on the route reflector client. + type: integer + numRouteReflectorClientBGPPeersOperDown: + description: Total number of configured route reflector peers on the route reflector client that are operationally down. + type: integer + operDownRouteReflectorClientPeers: + description: List of route reflector BGPPeers which are operationally down. + items: + type: string + type: array + operationalState: + description: Operational state of the DefaultRouteReflectorClient. + type: string + type: object + type: object +served: true +storage: true +subresources: + status: {} diff --git a/static/resources/defaultroutereflectorclients.protocols.eda.nokia.com/v1alpha1.yaml b/static/resources/25.12.1/defaultroutereflectorclients.protocols.eda.nokia.com/v1alpha1.yaml similarity index 100% rename from static/resources/defaultroutereflectorclients.protocols.eda.nokia.com/v1alpha1.yaml rename to static/resources/25.12.1/defaultroutereflectorclients.protocols.eda.nokia.com/v1alpha1.yaml diff --git a/static/resources/25.12.1/defaultroutereflectors.protocols.eda.nokia.com/v1.yaml b/static/resources/25.12.1/defaultroutereflectors.protocols.eda.nokia.com/v1.yaml new file mode 100644 index 0000000..0cc1549 --- /dev/null +++ b/static/resources/25.12.1/defaultroutereflectors.protocols.eda.nokia.com/v1.yaml @@ -0,0 +1,384 @@ +additionalPrinterColumns: + - jsonPath: .status.lastChange + name: Last Change + type: date + - jsonPath: .status.operationalState + name: Operational State + type: string + - jsonPath: .status.numRouteReflectorBGPPeers + name: NumRouteReflectorBGPPeers + type: string + - jsonPath: .status.numRouteReflectorBGPPeersOperDown + name: NumRouteReflectorBGPPeersOperDown + type: string +name: v1 +schema: + openAPIV3Schema: + description: DefaultRouteReflector is the Schema for the defaultroutereflectors API + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + description: DefaultRouteReflector enables the configuration of iBGP sessions to RouteReflectorClients. It includes settings for the DefaultInterface, BGP group, client selectors, and the Cluster ID. Additionally, it allows for the configuration of L2VPN EVPN settings and applies common BGP configuration settings to manage routing efficiently within the network. + properties: + asPathOptions: + description: AS Path Options + properties: + allowOwnAS: + default: 0 + description: The maximum number of times the global AS number or a local AS number of the BGP instance can appear in any received AS_PATH before it is considered a loop and considered invalid. + maximum: 255 + minimum: 0 + type: integer + removePrivateAS: + description: Options for removing private AS numbers (2-byte and 4-byte) from the advertised AS path towards all peers. + properties: + ignorePeerAS: + default: false + description: If set to true then do not delete or replace a private AS number that is the same as the peer AS number. + type: boolean + leadingOnly: + default: false + description: If set to true then only delete or replace private AS numbers that appear before the first occurrence of a non-private ASN in the sequence of most recent ASNs in the AS path. + type: boolean + removePrivateASMode: + default: DISABLED + description: The method by which private AS numbers are removed from the advertised AS_PATH attribute. + enum: + - DISABLED + - REPLACE + - DELETE + type: string + required: + - ignorePeerAS + - leadingOnly + - removePrivateASMode + type: object + required: + - allowOwnAS + type: object + bfd: + description: Enable or disable Bi-forward Forwarding Detection (BFD) with fast failover. + type: boolean + clientIPs: + description: List of RR client IPs to which the iBGP sessions are established. + items: + type: string + type: array + clientSelector: + description: Label selector used to select the RouteReflectorClients to which the iBGP sessions are established. + items: + type: string + type: array + clusterID: + description: Sets the cluster ID for route reflectors. + type: string + defaultBGPRRGroup: + description: Reference to a DefaultBGPGroup. + type: string + exportPolicy: + description: Reference to a Policy CR that will be used to filter routes advertised to peers. + items: + type: string + type: array + grStaleRouteTime: + description: Enables Graceful Restart on the peer and sets the stale route time. + maximum: 3600 + minimum: 1 + type: integer + importPolicy: + description: Reference to a Policy CR that will be used to filter routes received from peers. + items: + type: string + type: array + interface: + description: Reference to either a DefaultInterface or SystemInterface from which the session to the client will be done from. + type: string + interfaceKind: + description: Reference to a the Kind of interface from which the session to the client will be done from. + enum: + - DEFAULTINTERFACE + - SYSTEMINTERFACE + type: string + ipv4Unicast: + description: Parameters relating to the IPv4 unicast AFI/SAFI. + properties: + advertiseIPV6NextHops: + description: Enables advertisement of IPv4 Unicast routes with IPv6 next-hops to peers. + type: boolean + enabled: + description: Enables the IPv4 unicast AFISAFI. + type: boolean + prefixLimit: + properties: + prefixLimitAccepted: + properties: + logOnly: + description: Defines the action to take when the maximum number of prefixes is exceeded. Session is reset if set to false, otherwise only a warning is logged. + type: boolean + maxReceivedRoutes: + description: Maximum number of prefixes allowed to be received from the neighbor, counting only accepted routes. + format: int32 + maximum: 4294967295 + minimum: 1 + type: integer + warningThreshold: + description: A percentage of the maximum number of prefixes that can be accepted before a warning is logged. + maximum: 100 + minimum: 1 + type: integer + type: object + prefixLimitReceived: + properties: + logOnly: + description: Defines the action to take when the maximum number of prefixes is exceeded. Session is reset if set to false, otherwise only a warning is logged. + type: boolean + maxReceivedRoutes: + description: Maximum number of prefixes allowed to be received from the neighbor, counting all routes (accepted and rejected by import policies). + format: int32 + maximum: 4294967295 + minimum: 1 + type: integer + warningThreshold: + description: A percentage of the maximum number of prefixes that can be received before a warning is logged. + maximum: 100 + minimum: 1 + type: integer + type: object + type: object + receiveIPV6NextHops: + description: Enables the advertisement of the RFC 5549 capability to receive IPv4 routes with IPv6 next-hops. + type: boolean + type: object + ipv6Unicast: + description: Parameters relating to the IPv6 unicast AFI/SAFI. + properties: + enabled: + description: Enables the IPv6 unicast AFISAFI + type: boolean + prefixLimit: + properties: + prefixLimitAccepted: + properties: + logOnly: + description: Defines the action to take when the maximum number of prefixes is exceeded. Session is reset if set to false, otherwise only a warning is logged. + type: boolean + maxReceivedRoutes: + description: Maximum number of prefixes allowed to be received from the neighbor, counting only accepted routes. + format: int32 + maximum: 4294967295 + minimum: 1 + type: integer + warningThreshold: + description: A percentage of the maximum number of prefixes that can be accepted before a warning is logged. + maximum: 100 + minimum: 1 + type: integer + type: object + prefixLimitReceived: + properties: + logOnly: + description: Defines the action to take when the maximum number of prefixes is exceeded. Session is reset if set to false, otherwise only a warning is logged. + type: boolean + maxReceivedRoutes: + description: Maximum number of prefixes allowed to be received from the neighbor, counting all routes (accepted and rejected by import policies). + format: int32 + maximum: 4294967295 + minimum: 1 + type: integer + warningThreshold: + description: A percentage of the maximum number of prefixes that can be received before a warning is logged. + maximum: 100 + minimum: 1 + type: integer + type: object + type: object + type: object + keychain: + description: Reference to a Keychain resource that will be used for authentication with the BGP peer. + type: string + l2VPNEVPN: + description: Parameters relating to the EVPN AFI/SAFI. + properties: + advertiseIPV6NextHops: + description: Enables advertisement of EVPN routes with IPv6 next-hops to peers. + type: boolean + enabled: + description: Enables the L2VPN EVPN AFISAFI. + type: boolean + prefixLimit: + properties: + prefixLimitAccepted: + properties: + logOnly: + description: Defines the action to take when the maximum number of prefixes is exceeded. Session is reset if set to false, otherwise only a warning is logged. + type: boolean + maxReceivedRoutes: + description: Maximum number of prefixes allowed to be received from the neighbor, counting only accepted routes. + format: int32 + maximum: 4294967295 + minimum: 1 + type: integer + warningThreshold: + description: A percentage of the maximum number of prefixes that can be accepted before a warning is logged. + maximum: 100 + minimum: 1 + type: integer + type: object + prefixLimitReceived: + properties: + logOnly: + description: Defines the action to take when the maximum number of prefixes is exceeded. Session is reset if set to false, otherwise only a warning is logged. + type: boolean + maxReceivedRoutes: + description: Maximum number of prefixes allowed to be received from the neighbor, counting all routes (accepted and rejected by import policies). + format: int32 + maximum: 4294967295 + minimum: 1 + type: integer + warningThreshold: + description: A percentage of the maximum number of prefixes that can be received before a warning is logged. + maximum: 100 + minimum: 1 + type: integer + type: object + type: object + type: object + localAS: + description: The local autonomous system number advertised to peers. + properties: + autonomousSystem: + description: Local Autonomous System number. + maximum: 4294967295 + minimum: 1 + type: integer + prependGlobalAS: + description: When set to true, the global ASN value is prepended to the AS path in outbound routes towards each BGP peer. + type: boolean + prependLocalAS: + description: When set to true, the local AS value is prepended to the AS path of inbound routes from each EBGP peer. + type: boolean + required: + - autonomousSystem + type: object + peerAS: + description: The autonomous system number expected from peers. + properties: + autonomousSystem: + description: Local Autonomous System number. + maximum: 4294967295 + minimum: 1 + type: integer + required: + - autonomousSystem + type: object + rtc: + description: Parameters relating to the RTC SAFI. + properties: + advertiseDefaultRoute: + description: Enables advertisement of a Default RTC Route to the BGP peers to receive all VPN routes. + type: boolean + enabled: + description: Enables the Route Target Constraints SAFI. + type: boolean + type: object + sendCommunityLarge: + description: When false, all large (12 byte) BGP communities from all outbound routes advertised to the peer are stripped. + type: boolean + sendCommunityStandard: + description: When false, all standard (4 byte) communities from all outbound routes advertised to the peer are stripped. + type: boolean + sendDefaultRoute: + description: Options for controlling the generation of default routes towards BGP peers. + properties: + addressFamily: + description: Enables the sending of a synthetically generated default IPv4 or IPV6 route to each peer. + items: + enum: + - IPV4-UNICAST + - IPV6-UNICAST + type: string + type: array + exportPolicy: + description: Reference to a Policy that should be applied to the advertised default routes, in order to set their attributes to non-default values. + type: string + required: + - addressFamily + type: object + timers: + description: Timer configurations + properties: + connectRetry: + description: The time interval in seconds between successive attempts to establish a session with a peer. + maximum: 65535 + minimum: 1 + type: integer + holdTime: + description: The hold-time interval in seconds that the router proposes to the peer in its OPEN message. + maximum: 65535 + minimum: 0 + type: integer + keepAlive: + description: The interval in seconds between successive keepalive messages sent to the peer. + maximum: 21845 + minimum: 0 + type: integer + minimumAdvertisementInterval: + description: The value assigned to the MinRouteAdvertisementIntervalTimer of RFC 4271, for both EBGP and IBGP sessions. + maximum: 255 + minimum: 1 + type: integer + type: object + required: + - clusterID + - defaultBGPRRGroup + - interface + - interfaceKind + type: object + status: + description: DefaultRouteReflectorStatus defines the observed state of DefaultRouteReflector + properties: + health: + description: Indicates the health score of the Route Reflector. + type: integer + healthScoreReason: + description: Indicates the reason for the health score. + type: string + lastChange: + description: The time when the state of the resource last changed. + type: string + numRouteReflectorBGPPeers: + description: Total number of configured route reflector client peers on the route reflector. + type: integer + numRouteReflectorBGPPeersOperDown: + description: Total number of configured route reflector client peers on the route reflector that are operationally down. + type: integer + operDownRouteReflectorPeers: + description: List of route reflector BGPPeers which are operationally down. + items: + type: string + type: array + operationalState: + description: Operational state of the Route Reflector. + type: string + type: object + type: object +served: true +storage: true +subresources: + status: {} diff --git a/static/resources/defaultroutereflectors.protocols.eda.nokia.com/v1alpha1.yaml b/static/resources/25.12.1/defaultroutereflectors.protocols.eda.nokia.com/v1alpha1.yaml similarity index 100% rename from static/resources/defaultroutereflectors.protocols.eda.nokia.com/v1alpha1.yaml rename to static/resources/25.12.1/defaultroutereflectors.protocols.eda.nokia.com/v1alpha1.yaml diff --git a/static/resources/25.12.1/defaultrouters.routing.eda.nokia.com/v1alpha1.yaml b/static/resources/25.12.1/defaultrouters.routing.eda.nokia.com/v1alpha1.yaml new file mode 100644 index 0000000..1236dd6 --- /dev/null +++ b/static/resources/25.12.1/defaultrouters.routing.eda.nokia.com/v1alpha1.yaml @@ -0,0 +1,233 @@ +additionalPrinterColumns: + - jsonPath: .status.lastChange + name: Last Change + type: date + - jsonPath: .status.operationalState + name: Operational State + type: string +name: v1alpha1 +schema: + openAPIV3Schema: + description: DefaultRouter is the Schema for the defaultrouters API + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + description: DefaultRouter enables the configuration of default routing instances on a specified Node, including options for BGP configuration, import and export policies, and router IDs. + properties: + bgp: + description: BGP configuration. + properties: + autonomousSystem: + description: Autonomous System number for BGP. + maximum: 4294967295 + minimum: 1 + type: integer + ebgpPreference: + default: 170 + description: Preference to be set for eBGP. + maximum: 255 + minimum: 1 + type: integer + enabled: + default: false + description: Enables BGP in the default VRF. + type: boolean + ibgpPreference: + default: 170 + description: Preference to be set for iBGP. + maximum: 255 + minimum: 1 + type: integer + ipv4Unicast: + description: Parameters relating to the IPv4 unicast AFI/SAFI. + properties: + advertiseIPV6NextHops: + description: Enables advertisement of IPv4 Unicast routes with IPv6 next-hops to peers. + type: boolean + enabled: + description: Enables the IPv4 unicast AFISAFI. + type: boolean + multipath: + description: Enable multipath. + properties: + allowMultipleAS: + default: true + description: When set to true, BGP is allowed to build a multipath set using BGP routes with different neighbor AS (most recent AS in the AS_PATH), When set to false, BGP is only allowed to use non-best paths for ECMP if they meet the multipath criteria and they have the same neighbor AS as the best path. + type: boolean + maxAllowedPaths: + description: The maximum number of BGP ECMP next-hops for BGP routes with an NLRI belonging to the address family of this configuration context. + maximum: 256 + minimum: 1 + type: integer + required: + - allowMultipleAS + - maxAllowedPaths + type: object + rapidUpdate: + description: Enables rapid update. + type: boolean + receiveIPV6NextHops: + description: Enables the advertisement of the RFC 5549 capability to receive IPv4 routes with IPv6 next-hops. + type: boolean + type: object + ipv6Unicast: + description: Parameters relating to the IPv6 unicast AFI/SAFI. + properties: + enabled: + description: Enables the IPv6 unicast AFISAFI + type: boolean + multipath: + description: Enable multipath + properties: + allowMultipleAS: + default: true + description: When set to true, BGP is allowed to build a multipath set using BGP routes with different neighbor AS (most recent AS in the AS_PATH), When set to false, BGP is only allowed to use non-best paths for ECMP if they meet the multipath criteria and they have the same neighbor AS as the best path. + type: boolean + maxAllowedPaths: + description: The maximum number of BGP ECMP next-hops for BGP routes with an NLRI belonging to the address family of this configuration context. + maximum: 256 + minimum: 1 + type: integer + required: + - allowMultipleAS + - maxAllowedPaths + type: object + rapidUpdate: + description: Enables rapid update. + type: boolean + type: object + keychain: + description: Keychain to be used for authentication + type: string + l2VPNEVPN: + description: Parameters relating to the EVPN AFI/SAFI. + properties: + advertiseIPV6NextHops: + description: Enables advertisement of EVPN routes with IPv6 next-hops to peers. + type: boolean + enabled: + description: Enables the L2VPN EVPN AFISAFI. + type: boolean + interASVPN: + default: false + description: Enable inter-AS VPN for EVPN. + type: boolean + multipath: + description: Enable multipath + properties: + allowMultipleAS: + default: true + description: When set to true, BGP is allowed to build a multipath set using BGP routes with different neighbor AS (most recent AS in the AS_PATH), When set to false, BGP is only allowed to use non-best paths for ECMP if they meet the multipath criteria and they have the same neighbor AS as the best path. + type: boolean + maxAllowedPaths: + description: The maximum number of BGP ECMP next-hops for BGP routes with an NLRI belonging to the address family of this configuration context. + maximum: 256 + minimum: 1 + type: integer + required: + - allowMultipleAS + - maxAllowedPaths + type: object + rapidUpdate: + description: Enables rapid update. + type: boolean + type: object + minWaitToAdvertise: + default: 0 + description: Minimum wait time before advertising routes post BGP restart. + maximum: 3600 + minimum: 0 + type: integer + rapidWithdrawl: + default: false + description: Enable rapid withdrawal in BGP. + type: boolean + sendCommunityLarge: + description: When false, all large (12 byte) BGP communities from all outbound routes advertised to the peer are stripped. + type: boolean + sendCommunityStandard: + description: When false, all standard (4 byte) communities from all outbound routes advertised to the peer are stripped. + type: boolean + waitForFibInstall: + default: false + description: Wait for FIB installation before advertising routes. + type: boolean + type: object + description: + description: Sets the description on the Default router. + type: string + ecmp: + description: Set the maximum number of ECMP paths for the DefaultRouter. This is supported only by some platforms, and will be ignored for others. + maximum: 256 + minimum: 1 + type: integer + exportPolicy: + description: Reference to a Policy resource to use when evaluating route exports from the DefaultRouter. + items: + type: string + type: array + importPolicy: + description: Reference to a Policy resource to use when evaluating route imports into the DefaultRouter. + items: + type: string + type: array + node: + description: Reference to a TopoNode on which to configure the default routing instance. + type: string + routeLeaking: + description: Route leaking controlled by routing policies in and out of the DefaultRouter. + properties: + exportPolicy: + description: Reference to a Policy resource to use when evaluating route exports from the DefaultRouter. + type: string + importPolicy: + description: Reference to a Policy resource to use when evaluating route imports into the DefaultRouter. + type: string + required: + - exportPolicy + - importPolicy + type: object + routerID: + description: Router ID in dotted quad notation. + type: string + required: + - node + - routerID + type: object + status: + description: DefaultRouterStatus defines the observed state of DefaultRouter + properties: + health: + description: Indicates the health score of the Router. + type: integer + healthScoreReason: + description: Indicates the reason for the health score. + type: string + lastChange: + description: The time when the state of the resource last changed. + type: string + operationalState: + description: Operational state of the Router. + type: string + type: object + type: object +served: true +storage: true +subresources: + status: {} diff --git a/static/resources/defaultrouterstates.routing.eda.nokia.com/v1alpha1.yaml b/static/resources/25.12.1/defaultrouterstates.routing.eda.nokia.com/v1alpha1.yaml similarity index 100% rename from static/resources/defaultrouterstates.routing.eda.nokia.com/v1alpha1.yaml rename to static/resources/25.12.1/defaultrouterstates.routing.eda.nokia.com/v1alpha1.yaml diff --git a/static/resources/25.12.1/defaultstaticroutes.protocols.eda.nokia.com/v1.yaml b/static/resources/25.12.1/defaultstaticroutes.protocols.eda.nokia.com/v1.yaml new file mode 100644 index 0000000..dffae75 --- /dev/null +++ b/static/resources/25.12.1/defaultstaticroutes.protocols.eda.nokia.com/v1.yaml @@ -0,0 +1,123 @@ +name: v1 +schema: + openAPIV3Schema: + description: DefaultStaticRoute is the Schema for the default static routes API + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + description: DefaultStaticRoute enables the configuration of static routes within a DefaultRouter. It allows specifying destination prefixes, route preference, and a nexthop group. This resource facilitates precise control over routing behavior, including options for BFD, route resolution, and blackholing traffic. + properties: + configuredName: + description: The name of the static route to configure on the device. + type: string + defaultRouter: + description: Reference to a DefaultRouter on which to configure the static routes. + type: string + nexthopGroup: + description: Group of nexthops for the list of prefixes. + properties: + bfd: + description: Enables BFD to the next-hops in the group. Local and Remote discriminator parameters have been deprecated at this level. Use Nexthop to set these parameters. + properties: + enabled: + default: false + description: Defines whether BFD should be enabled towards the nexthops. + type: boolean + localAddress: + description: Defines the local address to use when establishing the BFD session with the nexthop. + type: string + type: object + blackhole: + default: false + description: If set to true all traffic destined to the prefixes will be blackholed. If enabled, next-hops are ignored and this takes precedence. + type: boolean + blackholeSendICMP: + description: When enabled, the router will generate ICMP Unreachable messages for packets destined to the blackhole route. + type: boolean + nexthops: + description: Ordered list of nexthops. + items: + properties: + bfd: + description: Enables BFD to the next-hops in the group. This overrides the configuration at the group. + properties: + enabled: + default: false + description: Defines whether BFD should be enabled towards the nexthops. + type: boolean + localAddress: + description: Defines the local address to use when establishing the BFD session with the nexthop. + type: string + localDiscriminator: + description: Defines the local discriminator. + type: integer + remoteDiscriminator: + description: Defines the remote discriminator. + type: integer + type: object + ipPrefix: + description: Address to use. + type: string + resolve: + default: false + description: If set to true the next-hops can be destinations which are resolved in the route table. This overrides the configuration at the group. + type: boolean + required: + - ipPrefix + type: object + type: array + resolve: + default: false + description: If set to true the next-hops can be destinations which are resolved in the route table. + type: boolean + type: object + preference: + description: Defines the route preference. + type: integer + prefixes: + description: List of destination prefixes and mask to use for the static routes. + items: + type: string + type: array + required: + - defaultRouter + - nexthopGroup + - prefixes + type: object + status: + description: DefaultStaticRouteStatus defines the observed state of default static route + properties: + health: + description: Indicates the health score of the static routes. + type: integer + healthScoreReason: + description: Indicates the reason for the health score. + type: string + lastChange: + description: The time when the state of the resource last changed. + type: string + operationalState: + description: Operational state of the static routes. + type: string + type: object + type: object +served: true +storage: true +subresources: + status: {} diff --git a/static/resources/defaultstaticroutes.protocols.eda.nokia.com/v1alpha1.yaml b/static/resources/25.12.1/defaultstaticroutes.protocols.eda.nokia.com/v1alpha1.yaml similarity index 100% rename from static/resources/defaultstaticroutes.protocols.eda.nokia.com/v1alpha1.yaml rename to static/resources/25.12.1/defaultstaticroutes.protocols.eda.nokia.com/v1alpha1.yaml diff --git a/static/resources/25.12.1/deployimages.os.eda.nokia.com/v1alpha1.yaml b/static/resources/25.12.1/deployimages.os.eda.nokia.com/v1alpha1.yaml new file mode 100644 index 0000000..06c3237 --- /dev/null +++ b/static/resources/25.12.1/deployimages.os.eda.nokia.com/v1alpha1.yaml @@ -0,0 +1,242 @@ +additionalPrinterColumns: + - jsonPath: .status.result + name: Result + type: string + - jsonPath: .metadata.creationTimestamp + name: Age + type: date +name: v1alpha1 +schema: + openAPIV3Schema: + description: DeployImage is the Schema for the deployimages API + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + description: |- + Upgrade / downgrade images on targets. + This workflow can be used directly on a target or list of targets, or with selectors to select targets through labels. + It also supports tranches, which are groups of targets that can be upgraded together. + By default a set of checks are run before and after the image change, but this can be controlled via the checks field. + It also supports canaries, which are upgraded before any other targets. + properties: + canaries: + description: |- + List of node selectors to use to match canary nodes. + This matches labels on TopoNode resources, including those TopoNodes in the list of nodes that will be imaged. + Canary nodes are upgraded before any other nodes, and are used to test images before broader roll out. + This is a list of label expressions, e.g. ["eda.nokia.com/role=canary"]. + items: + type: string + type: array + checks: + description: Configure pre and post checks. + properties: + checks: + description: |- + Checks to run before (pre) and after (post) any image changes. + If none are specified, a default set of checks will be run. + items: + enum: + - Interface + - DefaultBGP + - PingISL + - PingSystem + type: string + type: array + force: + description: Ignore result of pre and post checks, do not prompt on failure. + type: boolean + skip: + description: Do not run any checks pre or post image change. + type: boolean + type: object + drains: + description: Configure drains to gracefully drain traffic away from nodes before imaging. + properties: + minimumWaitTimeSeconds: + default: 60 + description: |- + Seconds to wait before rebooting a node after it has been drained. + This is used to allow time for any traffic to drain away from the node before reboot. + type: integer + skip: + description: Do not run any drain operations. Nodes will be rebooted without attempting to gracefully drain them. + type: boolean + type: object + nodeProfile: + description: |- + Destination profile to use for imaging. + This profile contains the image to deploy, and other configuration for the node. + type: string + nodeSelectors: + description: |- + List of node selectors to select nodes to deploy images on. + This matches labels on TopoNode resources, including those TopoNodes in the list of nodes that will be imaged. + If no nodes are specified, and no node selectors are specified, all nodes in the given namespace will be selected. + This is a list of label expressions, e.g. ["eda.nokia.com/role=leaf"]. + items: + type: string + type: array + nodes: + description: List of nodes to deploy images on. + items: + type: string + type: array + prompt: + description: |- + Control when to prompt the user for input. + If any pre or post checks fail, the user will be prompted for input, but this may be used to prompt even if they're successful. + items: + enum: + - AfterPreChecks + - AfterPostChecks + type: string + type: array + reconnectionTimeoutSeconds: + default: 600 + description: Seconds to wait for node to come back online after reboot. + type: integer + tranches: + description: |- + List of tranches to use for imaging. + A tranche is a list of node selectors, and a name. + Tranches are upgraded in order, sequentially. + items: + properties: + name: + description: |- + Name of the tranche. + This is used to identify the tranche in the UI and in logs. + type: string + nodeSelectors: + description: |- + Node Selectors is a list of node selectors to select nodes to deploy images on in this tranche. + This matches labels on TopoNode resources, including those TopoNodes in the list of nodes that will be imaged. + This is a list of label expressions, e.g. ["eda.nokia.com/role=leaf"]. + items: + type: string + type: array + type: object + type: array + required: + - nodeProfile + type: object + status: + description: Status of the imaging operation. + properties: + details: + description: Per-node image deployment details. + items: + properties: + drainedTime: + description: |- + The time when the node was drained. + This is the time when the node was drained before the imaging operation. + format: date-time + type: string + newNodeProfile: + description: The new profile of the node. + type: string + newVersion: + description: The new version of the node. + type: string + node: + description: The name of the node this result is for. + type: string + postCheckSuccessful: + description: |- + Indicates if post checks were successful for this node. + This is true if all post checks passed, false if any post checks failed. + type: boolean + preCheckSuccessful: + description: |- + Indicates if pre checks were successful for this node. + This is true if all pre checks passed, false if any pre checks failed. + type: boolean + previousNodeProfile: + description: |- + The previous profile of the node. + This is the node profile that was running before the imaging operation. + type: string + previousVersion: + description: |- + The previous version of the node. + This is the version of the image that was running before the imaging operation. + type: string + rebootRecoveryTime: + description: |- + The time when the node was recovered after reboot. + This is the time when the node was recovered after the imaging operation. + format: date-time + type: string + rebootTime: + description: |- + The time when the node was rebooted. + This is the time when the node was rebooted during the imaging operation. + format: date-time + type: string + success: + description: |- + Indicates if the imaging operation was successful for this node. + This is true if the imaging operation was successful, false if it failed. + type: boolean + undrainedTime: + description: |- + The time when the node was undrained. + This is the time when the node was undrained after the imaging operation. + format: date-time + type: string + type: object + type: array + firstNodeDrained: + description: The time when the first node was drained. + format: date-time + type: string + firstNodeRebooted: + description: The time when the first node was rebooted. + format: date-time + type: string + lastNodeRebootRecovered: + description: The time when the last node recovered post reboot. + format: date-time + type: string + lastNodeUndrained: + description: The time when the last node was undrained. + format: date-time + type: string + result: + description: |- + Result is the overall result of the image operation. + It can be one of the following values: + - "Success": All images were successfully deployed. + - "Failed": No images were successfully deployed. + - "PartialSuccess": Some images were successfully deployed, but not all. + enum: + - Success + - Failed + - PartialSuccess + type: string + required: + - result + type: object + type: object +served: true +storage: true +subresources: + status: {} diff --git a/static/resources/designers.core.eda.nokia.com/v1.yaml b/static/resources/25.12.1/designers.core.eda.nokia.com/v1.yaml similarity index 100% rename from static/resources/designers.core.eda.nokia.com/v1.yaml rename to static/resources/25.12.1/designers.core.eda.nokia.com/v1.yaml diff --git a/static/resources/deviationactions.core.eda.nokia.com/v1.yaml b/static/resources/25.12.1/deviationactions.core.eda.nokia.com/v1.yaml similarity index 100% rename from static/resources/deviationactions.core.eda.nokia.com/v1.yaml rename to static/resources/25.12.1/deviationactions.core.eda.nokia.com/v1.yaml diff --git a/static/resources/deviationoverlays.topologies.eda.nokia.com/v1alpha1.yaml b/static/resources/25.12.1/deviationoverlays.topologies.eda.nokia.com/v1alpha1.yaml similarity index 100% rename from static/resources/deviationoverlays.topologies.eda.nokia.com/v1alpha1.yaml rename to static/resources/25.12.1/deviationoverlays.topologies.eda.nokia.com/v1alpha1.yaml diff --git a/static/resources/deviations.core.eda.nokia.com/v1.yaml b/static/resources/25.12.1/deviations.core.eda.nokia.com/v1.yaml similarity index 100% rename from static/resources/deviations.core.eda.nokia.com/v1.yaml rename to static/resources/25.12.1/deviations.core.eda.nokia.com/v1.yaml diff --git a/static/resources/dhcprelays.services.eda.nokia.com/v1.yaml b/static/resources/25.12.1/dhcprelays.services.eda.nokia.com/v1.yaml similarity index 100% rename from static/resources/dhcprelays.services.eda.nokia.com/v1.yaml rename to static/resources/25.12.1/dhcprelays.services.eda.nokia.com/v1.yaml diff --git a/static/resources/dhcprelays.services.eda.nokia.com/v1alpha1.yaml b/static/resources/25.12.1/dhcprelays.services.eda.nokia.com/v1alpha1.yaml similarity index 100% rename from static/resources/dhcprelays.services.eda.nokia.com/v1alpha1.yaml rename to static/resources/25.12.1/dhcprelays.services.eda.nokia.com/v1alpha1.yaml diff --git a/static/resources/discoveries.components.eda.nokia.com/v1.yaml b/static/resources/25.12.1/discoveries.components.eda.nokia.com/v1.yaml similarity index 100% rename from static/resources/discoveries.components.eda.nokia.com/v1.yaml rename to static/resources/25.12.1/discoveries.components.eda.nokia.com/v1.yaml diff --git a/static/resources/discoveries.components.eda.nokia.com/v1alpha1.yaml b/static/resources/25.12.1/discoveries.components.eda.nokia.com/v1alpha1.yaml similarity index 100% rename from static/resources/discoveries.components.eda.nokia.com/v1alpha1.yaml rename to static/resources/25.12.1/discoveries.components.eda.nokia.com/v1alpha1.yaml diff --git a/static/resources/discoveryaggregatestates.components.eda.nokia.com/v1.yaml b/static/resources/25.12.1/discoveryaggregatestates.components.eda.nokia.com/v1.yaml similarity index 100% rename from static/resources/discoveryaggregatestates.components.eda.nokia.com/v1.yaml rename to static/resources/25.12.1/discoveryaggregatestates.components.eda.nokia.com/v1.yaml diff --git a/static/resources/discoveryaggregatestates.components.eda.nokia.com/v1alpha1.yaml b/static/resources/25.12.1/discoveryaggregatestates.components.eda.nokia.com/v1alpha1.yaml similarity index 100% rename from static/resources/discoveryaggregatestates.components.eda.nokia.com/v1alpha1.yaml rename to static/resources/25.12.1/discoveryaggregatestates.components.eda.nokia.com/v1alpha1.yaml diff --git a/static/resources/discoverystates.components.eda.nokia.com/v1.yaml b/static/resources/25.12.1/discoverystates.components.eda.nokia.com/v1.yaml similarity index 100% rename from static/resources/discoverystates.components.eda.nokia.com/v1.yaml rename to static/resources/25.12.1/discoverystates.components.eda.nokia.com/v1.yaml diff --git a/static/resources/discoverystates.components.eda.nokia.com/v1alpha1.yaml b/static/resources/25.12.1/discoverystates.components.eda.nokia.com/v1alpha1.yaml similarity index 100% rename from static/resources/discoverystates.components.eda.nokia.com/v1alpha1.yaml rename to static/resources/25.12.1/discoverystates.components.eda.nokia.com/v1alpha1.yaml diff --git a/static/resources/drains.routing.eda.nokia.com/v1alpha1.yaml b/static/resources/25.12.1/drains.routing.eda.nokia.com/v1alpha1.yaml similarity index 100% rename from static/resources/drains.routing.eda.nokia.com/v1alpha1.yaml rename to static/resources/25.12.1/drains.routing.eda.nokia.com/v1alpha1.yaml diff --git a/static/resources/drainstates.routing.eda.nokia.com/v1alpha1.yaml b/static/resources/25.12.1/drainstates.routing.eda.nokia.com/v1alpha1.yaml similarity index 100% rename from static/resources/drainstates.routing.eda.nokia.com/v1alpha1.yaml rename to static/resources/25.12.1/drainstates.routing.eda.nokia.com/v1alpha1.yaml diff --git a/static/resources/edgeinterfaces.core.eda.nokia.com/v1.yaml b/static/resources/25.12.1/edgeinterfaces.core.eda.nokia.com/v1.yaml similarity index 100% rename from static/resources/edgeinterfaces.core.eda.nokia.com/v1.yaml rename to static/resources/25.12.1/edgeinterfaces.core.eda.nokia.com/v1.yaml diff --git a/static/resources/25.12.1/edgepings.services.eda.nokia.com/v1.yaml b/static/resources/25.12.1/edgepings.services.eda.nokia.com/v1.yaml new file mode 100644 index 0000000..48693b4 --- /dev/null +++ b/static/resources/25.12.1/edgepings.services.eda.nokia.com/v1.yaml @@ -0,0 +1,61 @@ +additionalPrinterColumns: + - jsonPath: .status.result + name: Result + type: string + - jsonPath: .metadata.creationTimestamp + name: Age + type: date +name: v1 +schema: + openAPIV3Schema: + description: EdgePing is the Schema for the edgepings API + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + description: EdgePingSpec defines the desired state of EdgePing + properties: + destination: + type: string + interfaceResource: + type: string + pingType: + enum: + - gateway + - edgemesh + - edge + type: string + virtualNetwork: + type: string + vlanID: + type: integer + required: + - pingType + type: object + status: + description: EdgePingStatus defines the observed state of EdgePing + properties: + result: + description: Aggregate result of the Flow + type: string + type: object + type: object +served: true +storage: true +subresources: + status: {} diff --git a/static/resources/edgepings.services.eda.nokia.com/v1alpha1.yaml b/static/resources/25.12.1/edgepings.services.eda.nokia.com/v1alpha1.yaml similarity index 100% rename from static/resources/edgepings.services.eda.nokia.com/v1alpha1.yaml rename to static/resources/25.12.1/edgepings.services.eda.nokia.com/v1alpha1.yaml diff --git a/static/resources/25.12.1/egresspolicys.qos.eda.nokia.com/v1.yaml b/static/resources/25.12.1/egresspolicys.qos.eda.nokia.com/v1.yaml new file mode 100644 index 0000000..4fa7c0b --- /dev/null +++ b/static/resources/25.12.1/egresspolicys.qos.eda.nokia.com/v1.yaml @@ -0,0 +1,262 @@ +name: v1 +schema: + openAPIV3Schema: + description: EgressPolicy is the Schema for the egresspolicys API + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + description: EgressPolicySpec defines the desired state of EgressPolicy + properties: + dot1pRewritePolicy: + description: Dot1pRewritePolicy enables the configuration of rewrite policies for Dot1p values. It includes mappings of forwarding classes to Dot1p values, with options for drop probability-specific overrides within each forwarding class. + properties: + dot1pMap: + description: Map of forwarding classes to PCP values + items: + properties: + dropProbability: + description: Drop probability specific overrides within the forwarding class + items: + properties: + level: + description: A drop probability level within the forwarding class for which a different remarking is desired + enum: + - High + - Medium + - Low + type: string + pcpValue: + description: The PCP value to be used for packets associated with the forwarding class and the specific drop probability. This overrides the general PCP value. + maximum: 7 + minimum: 0 + type: integer + type: object + type: array + forwardingClasses: + description: The forwarding class matched to apply the rewrite policy + items: + type: string + type: array + pcpValue: + description: The PCP value to be used for all packets associated with the forwarding class, except those with a drop-probability-specific or profile-specific override + maximum: 7 + minimum: 0 + type: integer + required: + - forwardingClasses + type: object + type: array + required: + - dot1pMap + type: object + dscpRewritePolicy: + description: DSCPRewritePolicy enables the configuration of rewrite policies for Differentiated Services Code Point (DSCP) values. It includes mappings of forwarding classes to DSCP values, with options for drop probability-specific overrides within each forwarding class. If a DSCPRewritePolicy is not specified, the DSCP value of the packet is unchanged. If a DSCP policy is specific and ECN is enabled on any of the queues, the DSCP policy will be applied to all ECN capable packets. + properties: + dscpMap: + description: Map of forwarding classes to DSCP values. + items: + properties: + dropProbability: + description: A drop probability within the forwarding class for which a different remarking is desired. + items: + properties: + dscp: + description: The DSCP value to be used for packets associated with the forwarding class and the specific drop probability. This overrides the general DSCP value. + maximum: 63 + minimum: 0 + type: integer + level: + description: A drop probability level within the forwarding class for which a different remarking is desired. + enum: + - High + - Medium + - Low + type: string + type: object + type: array + dscp: + description: The DSCP value to be used for all packets associated with the forwarding class, except those with a drop-probability-specific or profile-specific override. + maximum: 63 + minimum: 0 + type: integer + forwardingClasses: + description: The forwarding class matched to apply the rewrite policy. + items: + type: string + type: array + required: + - forwardingClasses + type: object + type: array + required: + - dscpMap + type: object + forwardingClassToQueueMapping: + description: Forwarding class to queue mapping policy. + items: + properties: + forwardingClasses: + description: The forwarding classes to which the mapping applies, these are references to ForwardingClass resources. + items: + type: string + minItems: 1 + type: array + queue: + description: The queue to which the forwarding classes are mapped, this is a reference to a Queue resource. + type: string + queueGroup: + description: The queue-group name for queue to forwarding class mapping. + type: string + required: + - forwardingClasses + - queue + type: object + type: array + pfcDeadlockAvoidance: + description: Parameters related to avoid a deadlock related to pfc on outgoing interface. + properties: + deadlockAvoidance: + description: Parameters related to avoid a deadlock related to pfc on outgoing interface + type: boolean + deadlockDetectionTimer: + description: Number of milliseconds during which outgoing interface is receiving pfc-pause-frames before triggering recovery-timer. + type: integer + deadlockRecoveryTimer: + description: Number of milliseconds during which the pfc-pause-frames will be ignored. + type: integer + required: + - deadlockAvoidance + - deadlockDetectionTimer + - deadlockRecoveryTimer + type: object + queueManagement: + description: Queue management policy for egress queues. + items: + properties: + queues: + description: List of queues. + items: + properties: + committedBurstSize: + description: Committed Burst Size. + format: int32 + type: integer + maximumBurstSize: + description: Maximum amount of shared buffer memory available to the queue in bytes. + format: int32 + maximum: 4294967295 + minimum: 0 + type: integer + pfcPauseFramePriority: + description: The pfc-priority received in pfc-pause-frame. + type: integer + queue: + description: Reference to a Queue resource. + type: string + schedulerPeakRatePercent: + description: The peak rate percent used by the scheduler for the queue. + maximum: 100 + minimum: 1 + type: integer + schedulerPriorityLevel: + description: The priority level at this Port Scheduler Policy. + maximum: 8 + minimum: 1 + type: integer + schedulerWeight: + description: The weight factor used for the WRR scheduler. If any of the queues have a configured weight the set of queues will use a WRR scheduler and thus all queues must have a weight configured. If no weights are set then the queues are scheduled in strict priority from lowest to higher queue ID. + maximum: 255 + minimum: 0 + type: integer + required: + - maximumBurstSize + - queue + type: object + type: array + slopePolicyWeight: + default: 0 + description: 'The average queue size is calculated using both the previous average and the current queue size: average = (previous average)(1 - 2^(-n)) + (current size)(2^(-n)), where n is a user-configurable weight factor. A higher n gives more importance to the previous average, smoothing peaks and lows in the queue. Lower n makes the average closer to the current queue size. If this leaf is absent, the default value is used.' + maximum: 15 + minimum: 0 + type: integer + wredSlopPolicies: + description: Slope policy to apply to the set of queues. + items: + properties: + drop: + default: false + description: When set to true, and if the ECN field in the packet indicates that the endpoints are not ECN-capable, and the WRED algorithm determines that the packet should be dropped based on the drop probability, the packet will be dropped + type: boolean + dropProbability: + default: All + enum: + - High + - Medium + - Low + - All + type: string + ecn: + default: false + description: When set to true and the queue length is between the thresholds and the ECN field indicates ECN-capable endpoints, the CE bits are set to 1, and the packet is transmitted based on WRED. If false, such packets are discarded. + type: boolean + maxDropProbabilityPercent: + description: If the queue depth is between min and max threshold then this the probability with which packets are dropped or marked. + type: integer + maxThreshold: + description: The maximum threshold parameter for a RED-managed queue in bytes. When the average queue length exceeds the max value, all packets are dropped (or marked if ECN is enabled). Mutually exclusive with min-threshold-percent and max-threshold-percent. + format: int64 + type: integer + maxThresholdPercent: + description: The maximum threshold parameter for a RED-managed queue in percent. When the average queue length exceeds the max value, all packets are dropped (or marked if ECN is enabled). Mutually exclusive with min-threshold and max-threshold. + type: integer + minThreshold: + description: The minimum threshold parameter for a RED-managed queue in bytes. When the average queue length is less than min, all packets are admitted to the queue. Mututally exclusive with min-threshold-percent and max-threshold-percent. + format: int64 + type: integer + minThresholdPercent: + description: The minimum threshold parameter for a RED-managed queue in percent. When the average queue length is less than min, all packets are admitted to the queue. Mutually exclusive with min-threshold and max-threshold. + type: integer + trafficType: + default: All + description: The traffic type to which the WRED slope applies. + enum: + - Tcp + - NonTcp + - All + type: string + required: + - drop + - dropProbability + - ecn + - trafficType + type: object + type: array + required: + - queues + type: object + type: array + type: object + status: + description: EgressPolicyStatus defines the observed state of EgressPolicy + type: object + type: object +served: true +storage: true +subresources: + status: {} diff --git a/static/resources/25.12.1/egresspolicys.qos.eda.nokia.com/v1alpha1.yaml b/static/resources/25.12.1/egresspolicys.qos.eda.nokia.com/v1alpha1.yaml new file mode 100644 index 0000000..6304500 --- /dev/null +++ b/static/resources/25.12.1/egresspolicys.qos.eda.nokia.com/v1alpha1.yaml @@ -0,0 +1,264 @@ +deprecated: true +deprecationWarning: This version is deprecated and will no longer be supported in the next version. +name: v1alpha1 +schema: + openAPIV3Schema: + description: EgressPolicy is the Schema for the egresspolicys API + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + description: EgressPolicySpec defines the desired state of EgressPolicy + properties: + dot1pRewritePolicy: + description: Dot1pRewritePolicy enables the configuration of rewrite policies for Dot1p values. It includes mappings of forwarding classes to Dot1p values, with options for drop probability-specific overrides within each forwarding class. + properties: + dot1pMap: + description: Map of forwarding classes to PCP values + items: + properties: + dropProbability: + description: Drop probability specific overrides within the forwarding class + items: + properties: + level: + description: A drop probability level within the forwarding class for which a different remarking is desired + enum: + - High + - Medium + - Low + type: string + pcpValue: + description: The PCP value to be used for packets associated with the forwarding class and the specific drop probability. This overrides the general PCP value. + maximum: 7 + minimum: 0 + type: integer + type: object + type: array + forwardingClasses: + description: The forwarding class matched to apply the rewrite policy + items: + type: string + type: array + pcpValue: + description: The PCP value to be used for all packets associated with the forwarding class, except those with a drop-probability-specific or profile-specific override + maximum: 7 + minimum: 0 + type: integer + required: + - forwardingClasses + type: object + type: array + required: + - dot1pMap + type: object + dscpRewritePolicy: + description: DSCPRewritePolicy enables the configuration of rewrite policies for Differentiated Services Code Point (DSCP) values. It includes mappings of forwarding classes to DSCP values, with options for drop probability-specific overrides within each forwarding class. If a DSCPRewritePolicy is not specified, the DSCP value of the packet is unchanged. If a DSCP policy is specific and ECN is enabled on any of the queues, the DSCP policy will be applied to all ECN capable packets. + properties: + dscpMap: + description: Map of forwarding classes to DSCP values. + items: + properties: + dropProbability: + description: A drop probability within the forwarding class for which a different remarking is desired. + items: + properties: + dscp: + description: The DSCP value to be used for packets associated with the forwarding class and the specific drop probability. This overrides the general DSCP value. + maximum: 63 + minimum: 0 + type: integer + level: + description: A drop probability level within the forwarding class for which a different remarking is desired. + enum: + - High + - Medium + - Low + type: string + type: object + type: array + dscp: + description: The DSCP value to be used for all packets associated with the forwarding class, except those with a drop-probability-specific or profile-specific override. + maximum: 63 + minimum: 0 + type: integer + forwardingClasses: + description: The forwarding class matched to apply the rewrite policy. + items: + type: string + type: array + required: + - forwardingClasses + type: object + type: array + required: + - dscpMap + type: object + forwardingClassToQueueMapping: + description: Forwarding class to queue mapping policy. + items: + properties: + forwardingClasses: + description: The forwarding classes to which the mapping applies, these are references to ForwardingClass resources. + items: + type: string + minItems: 1 + type: array + queue: + description: The queue to which the forwarding classes are mapped, this is a reference to a Queue resource. + type: string + queueGroup: + description: The queue-group name for queue to forwarding class mapping. + type: string + required: + - forwardingClasses + - queue + type: object + type: array + pfcDeadlockAvoidance: + description: Parameters related to avoid a deadlock related to pfc on outgoing interface. + properties: + deadlockAvoidance: + description: Parameters related to avoid a deadlock related to pfc on outgoing interface + type: boolean + deadlockDetectionTimer: + description: Number of milliseconds during which outgoing interface is receiving pfc-pause-frames before triggering recovery-timer. + type: integer + deadlockRecoveryTimer: + description: Number of milliseconds during which the pfc-pause-frames will be ignored. + type: integer + required: + - deadlockAvoidance + - deadlockDetectionTimer + - deadlockRecoveryTimer + type: object + queueManagement: + description: Queue management policy for egress queues. + items: + properties: + queues: + description: List of queues. + items: + properties: + committedBurstSize: + description: Committed Burst Size. + format: int32 + type: integer + maximumBurstSize: + description: Maximum amount of shared buffer memory available to the queue in bytes. + format: int32 + maximum: 4294967295 + minimum: 0 + type: integer + pfcPauseFramePriority: + description: The pfc-priority received in pfc-pause-frame. + type: integer + queue: + description: Reference to a Queue resource. + type: string + schedulerPeakRatePercent: + description: The peak rate percent used by the scheduler for the queue. + maximum: 100 + minimum: 1 + type: integer + schedulerPriorityLevel: + description: The priority level at this Port Scheduler Policy. + maximum: 8 + minimum: 1 + type: integer + schedulerWeight: + description: The weight factor used for the WRR scheduler. If any of the queues have a configured weight the set of queues will use a WRR scheduler and thus all queues must have a weight configured. If no weights are set then the queues are scheduled in strict priority from lowest to higher queue ID. + maximum: 255 + minimum: 0 + type: integer + required: + - maximumBurstSize + - queue + type: object + type: array + slopePolicyWeight: + default: 0 + description: 'The average queue size is calculated using both the previous average and the current queue size: average = (previous average)(1 - 2^(-n)) + (current size)(2^(-n)), where n is a user-configurable weight factor. A higher n gives more importance to the previous average, smoothing peaks and lows in the queue. Lower n makes the average closer to the current queue size. If this leaf is absent, the default value is used.' + maximum: 15 + minimum: 0 + type: integer + wredSlopPolicies: + description: Slope policy to apply to the set of queues. + items: + properties: + drop: + default: false + description: When set to true, and if the ECN field in the packet indicates that the endpoints are not ECN-capable, and the WRED algorithm determines that the packet should be dropped based on the drop probability, the packet will be dropped + type: boolean + dropProbability: + default: All + enum: + - High + - Medium + - Low + - All + type: string + ecn: + default: false + description: When set to true and the queue length is between the thresholds and the ECN field indicates ECN-capable endpoints, the CE bits are set to 1, and the packet is transmitted based on WRED. If false, such packets are discarded. + type: boolean + maxDropProbabilityPercent: + description: If the queue depth is between min and max threshold then this the probability with which packets are dropped or marked. + type: integer + maxThreshold: + description: The maximum threshold parameter for a RED-managed queue in bytes. When the average queue length exceeds the max value, all packets are dropped (or marked if ECN is enabled). Mutually exclusive with min-threshold-percent and max-threshold-percent. + format: int64 + type: integer + maxThresholdPercent: + description: The maximum threshold parameter for a RED-managed queue in percent. When the average queue length exceeds the max value, all packets are dropped (or marked if ECN is enabled). Mutually exclusive with min-threshold and max-threshold. + type: integer + minThreshold: + description: The minimum threshold parameter for a RED-managed queue in bytes. When the average queue length is less than min, all packets are admitted to the queue. Mututally exclusive with min-threshold-percent and max-threshold-percent. + format: int64 + type: integer + minThresholdPercent: + description: The minimum threshold parameter for a RED-managed queue in percent. When the average queue length is less than min, all packets are admitted to the queue. Mutually exclusive with min-threshold and max-threshold. + type: integer + trafficType: + default: All + description: The traffic type to which the WRED slope applies. + enum: + - Tcp + - NonTcp + - All + type: string + required: + - drop + - dropProbability + - ecn + - trafficType + type: object + type: array + required: + - queues + type: object + type: array + type: object + status: + description: EgressPolicyStatus defines the observed state of EgressPolicy + type: object + type: object +served: true +storage: false +subresources: + status: {} diff --git a/static/resources/25.12.1/engineconfigs.core.eda.nokia.com/v1.yaml b/static/resources/25.12.1/engineconfigs.core.eda.nokia.com/v1.yaml new file mode 100644 index 0000000..d97935f --- /dev/null +++ b/static/resources/25.12.1/engineconfigs.core.eda.nokia.com/v1.yaml @@ -0,0 +1,953 @@ +name: v1 +schema: + openAPIV3Schema: + description: EngineConfig is the Schema for the engineconfigs API + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + description: EngineConfigSpec defines the desired state of EngineConfig + properties: + aiEngine: + description: Settings related to AI Engine. + properties: + image: + description: The full URI to the image + type: string + image-credential: + description: The credential to use when interacting with the image + type: string + replicas: + description: The number of replicas to launch + format: int32 + type: integer + resources: + description: Resource limits and requests for deployments + properties: + limits: + properties: + cpu: + type: string + memory: + type: string + type: object + requests: + properties: + cpu: + type: string + memory: + type: string + type: object + type: object + type: object + allocationPools: + description: Settings related to allocation pools + properties: + alarms: + description: Define alarm thresholds for allocation pool instance utilization + properties: + criticalThreshold: + default: 95 + description: |- + Set the threshold for which a critical alarm will be generated for allocation pool instance utilization, as a percentage. + Using a value of 0 will disable the generation of major threshold alarms. + maximum: 100 + minimum: 0 + type: integer + majorThreshold: + default: 90 + description: |- + Set the threshold for which a major alarm will be generated for allocation pool instance utilization, as a percentage. + Using a value of 0 will disable the generation of major threshold alarms. + maximum: 100 + minimum: 0 + type: integer + minorThreshold: + default: 80 + description: |- + Set the threshold for which a minor alarm will be generated for allocation pool instance utilization, as a percentage. + Using a value of 0 will disable the generation of minor threshold alarms. + maximum: 100 + minimum: 0 + type: integer + type: object + type: object + api: + description: Settings related to APIServer. + properties: + enableLoadBalancerNodePorts: + description: For the service enable the creation of nodePort + type: boolean + image: + description: The full URI to the image + type: string + image-credential: + description: The credential to use when interacting with the image + type: string + replicas: + description: The number of replicas to launch + format: int32 + type: integer + resources: + description: Resource limits and requests for deployments + properties: + limits: + properties: + cpu: + type: string + memory: + type: string + type: object + requests: + properties: + cpu: + type: string + memory: + type: string + type: object + type: object + serviceType: + default: LoadBalancer + description: Describes the type of k8s service + enum: + - ClusterIP + - NodePort + - LoadBalancer + type: string + type: object + appStore: + description: Settings related to AppStore. + properties: + image: + description: The full URI to the image + type: string + image-credential: + description: The credential to use when interacting with the image + type: string + resources: + description: Resource limits and requests for deployments + properties: + limits: + properties: + cpu: + type: string + memory: + type: string + type: object + requests: + properties: + cpu: + type: string + memory: + type: string + type: object + type: object + type: object + appStoreFlow: + description: Settings related to AppStore installer workflow. + properties: + image: + description: The full URI to the image + type: string + image-credential: + description: The credential to use when interacting with the image + type: string + resources: + description: Resource limits and requests for deployments + properties: + limits: + properties: + cpu: + type: string + memory: + type: string + type: object + requests: + properties: + cpu: + type: string + memory: + type: string + type: object + type: object + type: object + artifactServer: + description: Settings related to ArtifactServer. + properties: + image: + description: The full URI to the image + type: string + image-credential: + description: The credential to use when interacting with the image + type: string + resources: + description: Resource limits and requests for deployments + properties: + limits: + properties: + cpu: + type: string + memory: + type: string + type: object + requests: + properties: + cpu: + type: string + memory: + type: string + type: object + type: object + type: object + bootstrapServer: + description: Settings related to BootstrapServer. + properties: + image: + description: The full URI to the image + type: string + image-credential: + description: The credential to use when interacting with the image + type: string + resources: + description: Resource limits and requests for deployments + properties: + limits: + properties: + cpu: + type: string + memory: + type: string + type: object + requests: + properties: + cpu: + type: string + memory: + type: string + type: object + type: object + type: object + certChecker: + description: Settings related to CertChecker. + properties: + image: + description: The full URI to the image + type: string + image-credential: + description: The credential to use when interacting with the image + type: string + resources: + description: Resource limits and requests for deployments + properties: + limits: + properties: + cpu: + type: string + memory: + type: string + type: object + requests: + properties: + cpu: + type: string + memory: + type: string + type: object + type: object + type: object + certificate-git-repo: + description: Settings related to the certificate backup + properties: + remote-path: + description: The full URI to the git repository + type: string + type: object + checkpoint-git-repo: + description: Settings related to the checkpoint or backup git repository. + properties: + remote-path: + description: The full URI to the git repository + type: string + type: object + cluster: + description: Settings related to how the cluster is exposed to external entities, and how the cluster members communicate with each other. + properties: + external: + description: Configure how this cluster is presented to external entities. This is used to configure the external IP address and port that will be used to access the cluster, where values are likely configured on a loadbalancer fronting the cluster. + properties: + domainName: + description: The external domain name of the cluster + type: string + httpPort: + description: HTTP port used to reach this cluster externally + format: int32 + type: integer + httpsPort: + description: HTTPS port used to reach this cluster externally + format: int32 + type: integer + ipv4Address: + description: The external IPv4 address of the cluster + type: string + ipv6Address: + description: The external IPv6 address of the cluster + type: string + relaxDomainNameEnforcement: + default: false + description: Relax enforcement of client origins from configured cluster.external.domainName + type: boolean + type: object + internal: + description: Configure how this cluster is presented at the k8s edge. This is used to configure the eda-api service. + properties: + httpPort: + description: HTTP port used by api service + format: int32 + type: integer + httpsPort: + description: HTTPS port used by api service + format: int32 + type: integer + type: object + redundancy: + description: Configure the redundancy of the cluster. This is used to configure how the cluster members communicate with each other, and how they authenticate each other. + properties: + active: + description: Sets the active cluster from the members list + type: string + credential: + description: The credential used by this cluster to authenticate to each other cluster member. + type: string + members: + description: The list of members in the cluster. + items: + properties: + address: + description: The address of the cluster member, this address is used for synchronization and must be reachable. + type: string + name: + description: The name of the cluster member, this value should match the name of the EngineConfig resource loaded in each member. + type: string + port: + description: The port of the cluster member. + type: integer + required: + - address + - name + type: object + minItems: 1 + type: array + required: + - active + - members + type: object + type: object + customSettings: + description: |- + Directives to override internal application settings + This should be set only at direction of support + items: + properties: + applicationName: + description: Name of application + type: string + settings: + description: List of options to override + items: + properties: + name: + description: Setting Name + type: string + value: + description: Value + type: string + type: object + type: array + type: object + type: array + cx: + description: Settings related to CX. + properties: + image: + description: The full URI to the image + type: string + image-credential: + description: The credential to use when interacting with the image + type: string + resources: + description: Resource limits and requests for deployments + properties: + limits: + properties: + cpu: + type: string + memory: + type: string + type: object + requests: + properties: + cpu: + type: string + memory: + type: string + type: object + type: object + type: object + cxCluster: + description: Settings related to remote CX Cluster. + properties: + address: + description: The address of the remote cx cluster, this address is used to create device sims on remote cluster and must be reachable. + type: string + isCxAgent: + description: Run cx as a agent to reconcile sims on remote cx cluster. + type: boolean + port: + description: The port of the remote cx cluster. + type: integer + required: + - isCxAgent + type: object + flowEngine: + description: Settings related to WorkflowEngine. + properties: + image: + description: The full URI to the image + type: string + image-credential: + description: The credential to use when interacting with the image + type: string + resources: + description: Resource limits and requests for deployments + properties: + limits: + properties: + cpu: + type: string + memory: + type: string + type: object + requests: + properties: + cpu: + type: string + memory: + type: string + type: object + type: object + type: object + git: + description: Settings related to git servers, used for storing and recovering the state of the cluster. + properties: + servers: + description: Define the set of git servers to use when interacting with git repositories. Each server will receive the full set of changes, and any can be used to recover a cluster. + items: + properties: + credential: + description: The credential to use when authenticating with the git server + type: string + name: + description: The name of the git server + type: string + uri: + description: The URI of the git server + type: string + required: + - credential + - uri + type: object + type: array + type: object + identity: + description: Settings related to Identity and Access management server. + properties: + image: + description: The full URI to the image + type: string + image-credential: + description: The credential to use when interacting with the image + type: string + replicas: + description: The number of replicas to launch + format: int32 + type: integer + resources: + description: Resource limits and requests for deployments + properties: + limits: + properties: + cpu: + type: string + memory: + type: string + type: object + requests: + properties: + cpu: + type: string + memory: + type: string + type: object + type: object + type: object + identity-git-repo: + description: Settings related to user identities + properties: + remote-path: + description: The full URI to the git repository + type: string + type: object + identitydb: + description: Settings related to Identity DB server. + properties: + image: + description: The full URI to the image + type: string + image-credential: + description: The credential to use when interacting with the image + type: string + replicas: + description: The number of replicas to launch + format: int32 + type: integer + resources: + description: Resource limits and requests for deployments + properties: + limits: + properties: + cpu: + type: string + memory: + type: string + type: object + requests: + properties: + cpu: + type: string + memory: + type: string + type: object + type: object + type: object + internalCertDuration: + default: 720h + description: Duration of the internal certs + type: string + kubernetes: + description: Settings related to interactions with Kubernetes. + properties: + exports: + description: |- + List of GVKs to export to kubernetes. By default, any CR created by a script will not be exported to kubernetes + unless listed in the exports list. + items: + properties: + gvk: + description: The group + version + kind to apply the specified policy to + properties: + group: + description: The group of the resource to import/export + type: string + kind: + description: The kind of the resource to import/export + type: string + version: + description: The version of the resource to import/export + type: string + required: + - kind + - version + type: object + policy: + description: The policy to apply to the GVK + enum: + - all + type: string + required: + - gvk + - policy + type: object + type: array + imports: + description: List of GVKs to import from kubernetes. By default, any CR used by a script will already have its spec imported. + items: + properties: + gvk: + description: The group + version + kind to apply the specified policy to + properties: + group: + description: The group of the resource to import/export + type: string + kind: + description: The kind of the resource to import/export + type: string + version: + description: The version of the resource to import/export + type: string + required: + - kind + - version + type: object + policy: + description: The policy to apply to the GVK + enum: + - all + - spec + type: string + required: + - gvk + - policy + type: object + type: array + mode: + description: |- + Sets the default mode for interacting with resources in Kubernetes. + This controls the set of resources that CE will publish to Kubernetes, and the set of resources that CE will treat as inputs. + This setting can be overridden on a per-resource basis using the imports and exports lists, or by an application within their Manifest. + enum: + - None + type: string + type: object + llm: + description: Settings related to the large language model used for natural language processing. + properties: + apiKey: + description: Set the API key to use when interacting with the LLM API + type: string + model: + default: gpt-4-1106-preview + description: Set the model for natural language processing + type: string + type: object + metricsServer: + description: Settings related to MetricsServer. + properties: + image: + description: The full URI to the image + type: string + image-credential: + description: The credential to use when interacting with the image + type: string + resources: + description: Resource limits and requests for deployments + properties: + limits: + properties: + cpu: + type: string + memory: + type: string + type: object + requests: + properties: + cpu: + type: string + memory: + type: string + type: object + type: object + type: object + npp: + description: Settings related to NPP. + properties: + image: + description: The full URI to the image + type: string + image-credential: + description: The credential to use when interacting with the image + type: string + resources: + description: Resource limits and requests for deployments + properties: + limits: + properties: + cpu: + type: string + memory: + type: string + type: object + requests: + properties: + cpu: + type: string + memory: + type: string + type: object + type: object + type: object + nppNodeLabelSelector: + description: |- + Which nodes to run NPP for - if empty, all nodes are run, e.g. "role in (leaf-group1)" will run NPP only for + toponodes with the label "role=leaf-group1". This also controls which nodes are simulated. + items: + type: string + type: array + playground: + description: |- + Indicates if the current cluster is running in playground mode. If true, TargetNodes are generated by CX. + Additionally a branch is created at startup to support changes in the playground, which can later be merged. + type: string + python: + description: Settings related to Python interpreters. + properties: + heap-size: + description: The maximum heap size for each Python interpreter + type: integer + local-script-dir: + description: |- + Override path to use for the Python interpreter to read scripts from. + LocalScriptDir is deprecated. + type: string + num-interpreters: + description: The number of interpreters to run in parallel + type: integer + script-timeout: + description: How long to allow scripts to run before timing out + type: integer + stdout-capture-limit: + description: The maximum number of lines to capture from STDOUT + type: integer + type: object + scripts-git-repo: + description: Settings related to the apps git repository. + properties: + remote-path: + description: The full URI to the git repository + type: string + type: object + simulate: + default: true + description: |- + Simulate using CX - if true CX is reponsible for generating the TargetNode CRs (this flag is only relevant for + !playground. In the playground case, simulate is always true) + type: boolean + simulateNodeLabelSelector: + description: |- + Which nodes to simulate - if empty, all nodes are simulated, e.g. "role in (leaf-group1)" will simulate only + toponodes with the label "role=leaf-group1" + items: + type: string + type: array + singleStackServices: + description: Run services in single-stack mode instead of PreferredDualStack. + type: boolean + stateAggregator: + description: Settings related to StateAggregator. + properties: + image: + description: The full URI to the image + type: string + image-credential: + description: The credential to use when interacting with the image + type: string + replicas: + description: The number of replicas to launch + format: int32 + type: integer + resources: + description: Resource limits and requests for deployments + properties: + limits: + properties: + cpu: + type: string + memory: + type: string + type: object + requests: + properties: + cpu: + type: string + memory: + type: string + type: object + type: object + type: object + stateController: + description: Settings related to StateController. + properties: + image: + description: The full URI to the image + type: string + image-credential: + description: The credential to use when interacting with the image + type: string + resources: + description: Resource limits and requests for deployments + properties: + limits: + properties: + cpu: + type: string + memory: + type: string + type: object + requests: + properties: + cpu: + type: string + memory: + type: string + type: object + type: object + type: object + stateEngine: + description: Settings related to StateEngine. + properties: + image: + description: The full URI to the image + type: string + image-credential: + description: The credential to use when interacting with the image + type: string + replicas: + description: The number of replicas to launch + format: int32 + type: integer + resources: + description: Resource limits and requests for deployments + properties: + limits: + properties: + cpu: + type: string + memory: + type: string + type: object + requests: + properties: + cpu: + type: string + memory: + type: string + type: object + type: object + type: object + testMan: + description: Settings related to TestMan. + properties: + image: + description: The full URI to the image + type: string + image-credential: + description: The credential to use when interacting with the image + type: string + resources: + description: Resource limits and requests for deployments + properties: + limits: + properties: + cpu: + type: string + memory: + type: string + type: object + requests: + properties: + cpu: + type: string + memory: + type: string + type: object + type: object + type: object + user-settings-git-repo: + description: Settings related to the user settings git repository. + properties: + remote-path: + description: The full URI to the git repository + type: string + type: object + required: + - simulate + type: object + status: + description: EngineConfigStatus defines the observed state of EngineConfig + properties: + activityState: + description: Indicates the activity state of this cluster - either active, standby or unknown. + type: string + cluster: + description: status related to how the cluster is exposed to external entities. + properties: + redundancy: + properties: + members: + description: The list of members in the cluster. + items: + properties: + activityState: + description: The activity state of the cluster member. + type: string + name: + description: The name of the cluster member. + type: string + reachable: + description: Whether this cluster member is reachable. + type: boolean + synchronized: + description: Whether this cluster member is in sync with the active cluster. + type: boolean + required: + - name + - reachable + - synchronized + type: object + type: array + type: object + type: object + git: + description: status related to git servers. + properties: + servers: + description: The status of git servers. + items: + properties: + name: + description: The name of the git server + type: string + status: + description: The status of the git server + type: string + required: + - name + type: object + type: array + type: object + licenses: + description: Status related to licenses. + properties: + activeLicense: + description: Reference to the License currently providing the "base" feature. + type: string + expirationDate: + description: Date and time the currently active license will expire. + type: string + licensedState: + description: Licensed state, indicating the presence of a license providing the "base" feature. + type: string + type: object + run-status: + description: Indicates the current run status of the cluster. + type: string + type: object + type: object +served: true +storage: true +subresources: + status: {} diff --git a/static/resources/exports.prom.eda.nokia.com/v1alpha1.yaml b/static/resources/25.12.1/exports.prom.eda.nokia.com/v1alpha1.yaml similarity index 100% rename from static/resources/exports.prom.eda.nokia.com/v1alpha1.yaml rename to static/resources/25.12.1/exports.prom.eda.nokia.com/v1alpha1.yaml diff --git a/static/resources/fabricmodules.components.eda.nokia.com/v1.yaml b/static/resources/25.12.1/fabricmodules.components.eda.nokia.com/v1.yaml similarity index 100% rename from static/resources/fabricmodules.components.eda.nokia.com/v1.yaml rename to static/resources/25.12.1/fabricmodules.components.eda.nokia.com/v1.yaml diff --git a/static/resources/25.12.1/fabrics.fabrics.eda.nokia.com/v1alpha1.yaml b/static/resources/25.12.1/fabrics.fabrics.eda.nokia.com/v1alpha1.yaml new file mode 100644 index 0000000..f2e9e99 --- /dev/null +++ b/static/resources/25.12.1/fabrics.fabrics.eda.nokia.com/v1alpha1.yaml @@ -0,0 +1,530 @@ +additionalPrinterColumns: + - jsonPath: .status.lastChange + name: Last Change + type: date + - jsonPath: .status.operationalState + name: Operational State + type: string +name: v1alpha1 +schema: + openAPIV3Schema: + description: Fabric is the Schema for the fabrics API + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + description: The Fabric defines the desired state of a Fabric resource, enabling the automation and management of data center network fabrics. It includes configurations for IP address allocation pools, network topology roles (Leafs, Spines, SuperSpines, BorderLeafs), inter-switch links, and network protocols (underlay and overlay). The specification allows for detailed control over routing strategies, including ASN allocations for BGP-based protocols, and supports advanced features like BFD. + properties: + borderLeafs: + properties: + asnPool: + description: Reference to an IndexAllocationPool pool to use for Autonomous System Number allocations. Used when eBGP is configured as an underlay protocol. This reference will take precedence over the spec.underlayProtocol.asnPool. + type: string + borderLeafNodeSelector: + description: Label selector used to select Toponodes to configure as Borderleaf nodes. + items: + type: string + type: array + routeLeaking: + description: Route leaking controlled by routing policies in and out of the DefaultRouters on each node. If specified under the Leafs, Spines, SuperSpines, or BorderLeafs those will take precedence. + properties: + exportPolicy: + description: Reference to a Policy resource to use when evaluating route exports from the DefaultRouter. + type: string + importPolicy: + description: Reference to a Policy resource to use when evaluating route imports into the DefaultRouter. + type: string + required: + - exportPolicy + - importPolicy + type: object + systemPoolIPV4: + description: Reference to an IPAllocationPool used to dynamically allocate an IPv4 address to system/lo0 interfaces. This reference will take precedence over the spec.systemPoolIPV4. Both IPv4 and IPv6 pools can be configured simultaneously for dual-stack system/lo0 interfaces. + type: string + systemPoolIPV6: + description: Reference to an IPAllocationPool used to dynamically allocate an IPv6 address to system/lo0 interfaces. This reference will take precedence over the spec.systemPoolIPV6. Both IPv4 and IPv6 pools can be configured simultaneously for dual-stack system/lo0 interfaces. + type: string + type: object + fabricSelector: + description: Selects Fabric resources when connecting multiple Fabrics together. Only one Fabric needs the selector, typically the upper layer (e.g., Superspine) selecting the lower layer (e.g., a pod fabric of leafs and spines). This helps build complete Fabrics in smaller instances of the Fabric resource. This instance selecting other fabrics must also select the InterSwitchLinks connecting itself to the selected Fabrics. + items: + type: string + type: array + interSwitchLinks: + properties: + ipMTU: + description: Sets the IP MTU for the DefaultInterface. + maximum: 9486 + minimum: 1280 + type: integer + linkSelector: + description: Selects TopoLinks to include in this Fabric, creating an ISL resource if both Nodes in the TopoLink are part of this Fabric or a selected Fabric. + items: + type: string + type: array + poolIPV4: + description: Reference to an IPAllocationPool used to dynamically allocate an IPv4 address to DefaultInterfaces which are members of the ISLs. Both IPv4 and IPv6 pools can be configured simultaneously for dual-stack DefaultInterfaces. + type: string + poolIPV6: + description: Reference to an IPAllocationPool used to dynamically allocate an IPv6 address to DefaultInterfaces which are members of the ISLs. Both IPv4 and IPv6 pools can be configured simultaneously for dual-stack DefaultInterfaces. + type: string + qos: + properties: + egressPolicy: + type: string + ingressPolicy: + type: string + type: object + unnumbered: + description: Enables unnumbered interfaces on the ISL; for IPv6, only link-local addresses are used unless a PoolIPV6 is also specified. DefaultInterfaces in the ISL are added to the DefaultBGPPeer dynamic neighbor list when using an eBGP underlay. + enum: + - IPV6 + type: string + vlanID: + description: Configures the provided VLAN on the DefaultInterfaces which are members of the ISLs. + maximum: 4094 + minimum: 1 + type: integer + type: object + leafs: + properties: + asnPool: + description: Reference to an IndexAllocationPool pool to use for Autonomous System Number allocations. Used when eBGP is configured as an underlay protocol. This reference will take precedence over the spec.underlayProtocol.asnPool. + type: string + leafNodeSelector: + description: Label selector used to select Toponodes to configure as Leaf nodes. + items: + type: string + type: array + routeLeaking: + description: Route leaking controlled by routing policies in and out of the DefaultRouters on each node. If specified under the Leafs, Spines, SuperSpines, or BorderLeafs those will take precedence. + properties: + exportPolicy: + description: Reference to a Policy resource to use when evaluating route exports from the DefaultRouter. + type: string + importPolicy: + description: Reference to a Policy resource to use when evaluating route imports into the DefaultRouter. + type: string + required: + - exportPolicy + - importPolicy + type: object + systemPoolIPV4: + description: Reference to an IPAllocationPool used to dynamically allocate an IPv4 address to system/lo0 interfaces. This reference will take precedence over the spec.systemPoolIPV4. Both IPv4 and IPv6 pools can be configured simultaneously for dual-stack system/lo0 interfaces. + type: string + systemPoolIPV6: + description: Reference to an IPAllocationPool used to dynamically allocate an IPv6 address to system/lo0 interfaces. This reference will take precedence over the spec.systemPoolIPV6. Both IPv4 and IPv6 pools can be configured simultaneously for dual-stack system/lo0 interfaces. + type: string + type: object + overlayProtocol: + description: Set the overlay protocol used + properties: + bfd: + description: Enable BFD on overlay protocol + properties: + desiredMinTransmitInt: + default: 1000000 + description: The minimum interval in microseconds between transmission of BFD control packets. + maximum: 100000000 + minimum: 10000 + type: integer + detectionMultiplier: + default: 3 + description: The number of packets that must be missed to declare this session as down. + maximum: 20 + minimum: 3 + type: integer + enabled: + default: false + description: Enable Biforward Detection. + type: boolean + minEchoReceiveInterval: + default: 1000000 + description: The minimum interval between echo packets the local node can receive in microseconds. + maximum: 100000000 + minimum: 0 + type: integer + requiredMinReceive: + default: 1000000 + description: The minimum interval in microseconds between received BFD control packets that this system should support. + maximum: 100000000 + minimum: 10000 + type: integer + ttl: + description: Sets custom IP TTL or Hop Limit for multi-hop BFD sessions packets. Not applicable to single-hop BFD sessions. + maximum: 255 + minimum: 2 + type: integer + type: object + bgp: + description: Overlay specific BGP properties. + properties: + autonomousSystem: + description: Autonomous System used for iBGP peering session, when protocol is set to IBGP providing an autonomousSystem is required. + format: int32 + type: integer + clusterID: + description: Sets the cluster ID used by DefaultRouteReflectors, when protocol is set to IBGP providing a clusterID is required. + type: string + exportPolicy: + description: Reference to a Policy, when left empty or not specified the Fabric will automatically generate a policy for the specified protocols. + items: + type: string + type: array + importPolicy: + description: Reference to a Policy, when left empty or not specified the Fabric will automatically generate a policy for the specified protocols. + items: + type: string + type: array + keychain: + description: Keychain to be used for authentication when overlay protocol is IBGP, ignored otherwise + type: string + rrClientNodeSelector: + description: Label selector used to select Toponodes to configure as DefaultRouteReflectorClients, these are typically Leaf or Borderleaf nodes. Used on conjunction with rrNodeSelector in order to configure the DefaultBGPPeers for both the DefaultRouteReflectors and DefaultRouteReflectorClients. + items: + type: string + type: array + rrIPAddresses: + description: List of route reflector IP addresses not provisioned by this instance of a Fabric resource. Used with rrClientNodeSelector to configure the DefaultBGPPeers on the selected nodes to peer the list of external route reflector IPs. + items: + type: string + type: array + rrNodeSelector: + description: Label selector used to select Toponodes to configure as DefaultRouteReflectors, these are typically Spine, Superspine or Borderleaf nodes. Used on conjunction with rrClientNodeSelector in order to configure the DefaultBGPPeers for both the DefaultRouteReflectors and DefaultRouteReflectorClients. + items: + type: string + type: array + timers: + description: Timer configurations + properties: + connectRetry: + description: The time interval in seconds between successive attempts to establish a session with a peer. + maximum: 65535 + minimum: 1 + type: integer + holdTime: + description: The hold-time interval in seconds that the router proposes to the peer in its OPEN message. + maximum: 65535 + minimum: 0 + type: integer + keepAlive: + description: The interval in seconds between successive keepalive messages sent to the peer. + maximum: 21845 + minimum: 0 + type: integer + minimumAdvertisementInterval: + description: The value assigned to the MinRouteAdvertisementIntervalTimer of RFC 4271, for both EBGP and IBGP sessions. + maximum: 255 + minimum: 1 + type: integer + type: object + type: object + protocol: + description: List of routing protocols to used to advertise EVPN routes for overlay services. When EBGP is used, the BGP properties configured under the spec.underlayProtocol will be used. + enum: + - IBGP + - EBGP + type: string + required: + - protocol + type: object + routeLeaking: + description: Route leaking controlled by routing policies in and out of the DefaultRouters on each node. If specified under the Leafs, Spines, SuperSpines, or BorderLeafs those will take precedence. + properties: + exportPolicy: + description: Reference to a Policy resource to use when evaluating route exports from the DefaultRouter. + type: string + importPolicy: + description: Reference to a Policy resource to use when evaluating route imports into the DefaultRouter. + type: string + required: + - exportPolicy + - importPolicy + type: object + spines: + properties: + asnPool: + description: Reference to an IndexAllocationPool pool to use for Autonomous System Number allocations. Used when eBGP is configured as an underlay protocol. This reference will take precedence over the spec.underlayProtocol.asnPool. + type: string + routeLeaking: + description: Route leaking controlled by routing policies in and out of the DefaultRouters on each node. If specified under the Leafs, Spines, SuperSpines, or BorderLeafs those will take precedence. + properties: + exportPolicy: + description: Reference to a Policy resource to use when evaluating route exports from the DefaultRouter. + type: string + importPolicy: + description: Reference to a Policy resource to use when evaluating route imports into the DefaultRouter. + type: string + required: + - exportPolicy + - importPolicy + type: object + spineNodeSelector: + description: Label selector used to select Toponodes to configure as Spine nodes. + items: + type: string + type: array + systemPoolIPV4: + description: Reference to an IPAllocationPool used to dynamically allocate an IPv4 address to system/lo0 interfaces. This reference will take precedence over the spec.systemPoolIPV4. Both IPv4 and IPv6 pools can be configured simultaneously for dual-stack system/lo0 interfaces. + type: string + systemPoolIPV6: + description: Reference to an IPAllocationPool used to dynamically allocate an IPv6 address to system/lo0 interfaces. This reference will take precedence over the spec.systemPoolIPV6. Both IPv4 and IPv6 pools can be configured simultaneously for dual-stack system/lo0 interfaces. + type: string + type: object + superSpines: + properties: + asnPool: + description: Reference to an IndexAllocationPool pool to use for Autonomous System Number allocations. Used when eBGP is configured as an underlay protocol. This reference will take precedence over the spec.underlayProtocol.asnPool. + type: string + routeLeaking: + description: Route leaking controlled by routing policies in and out of the DefaultRouters on each node. If specified under the Leafs, Spines, SuperSpines, or BorderLeafs those will take precedence. + properties: + exportPolicy: + description: Reference to a Policy resource to use when evaluating route exports from the DefaultRouter. + type: string + importPolicy: + description: Reference to a Policy resource to use when evaluating route imports into the DefaultRouter. + type: string + required: + - exportPolicy + - importPolicy + type: object + superSpineNodeSelector: + description: Label selector used to select Toponodes to configure as Superspine nodes. + items: + type: string + type: array + systemPoolIPV4: + description: Reference to an IPAllocationPool used to dynamically allocate an IPv4 address to system/lo0 interfaces. This reference will take precedence over the spec.systemPoolIPV4. Both IPv4 and IPv6 pools can be configured simultaneously for dual-stack system/lo0 interfaces. + type: string + systemPoolIPV6: + description: Reference to an IPAllocationPool used to dynamically allocate an IPv6 address to system/lo0 interfaces. This reference will take precedence over the spec.systemPoolIPV6. Both IPv4 and IPv6 pools can be configured simultaneously for dual-stack system/lo0 interfaces. + type: string + type: object + systemPoolIPV4: + description: Reference to an IPAllocationPool used to dynamically allocate an IPv4 address to system/lo0 interfaces. If specified under the Leaf/Spine/Superspine/Borderleaf those will take precedence. Both IPv4 and IPv6 pools can be configured simultaneously for dual-stack system/lo0 interfaces. + type: string + systemPoolIPV6: + description: Reference to an IPAllocationPool used to dynamically allocate an IPv6 address to system/lo0 interfaces. If specified under the Leaf/Spine/Superspine/Borderleaf those will take precedence. Both IPv4 and IPv6 pools can be configured simultaneously for dual-stack system/lo0 interfaces. + type: string + underlayProtocol: + description: Set the underlay protocol used + properties: + bfd: + description: Enable BFD on underlay protocol + properties: + desiredMinTransmitInt: + default: 1000000 + description: The minimum interval in microseconds between transmission of BFD control packets. + maximum: 100000000 + minimum: 10000 + type: integer + detectionMultiplier: + default: 3 + description: The number of packets that must be missed to declare this session as down. + maximum: 20 + minimum: 3 + type: integer + enabled: + default: false + description: Enable Biforward Detection. + type: boolean + minEchoReceiveInterval: + default: 1000000 + description: The minimum interval between echo packets the local node can receive in microseconds. + maximum: 100000000 + minimum: 0 + type: integer + requiredMinReceive: + default: 1000000 + description: The minimum interval in microseconds between received BFD control packets that this system should support. + maximum: 100000000 + minimum: 10000 + type: integer + ttl: + description: Sets custom IP TTL or Hop Limit for multi-hop BFD sessions packets. Not applicable to single-hop BFD sessions. + maximum: 255 + minimum: 2 + type: integer + type: object + bgp: + description: Underlay specific BGP properties. + properties: + asnPool: + description: Reference to an IndexAllocationPool pool to use for Autonomous System Number allocations. Used when eBGP is configured as an underlay protocol. If specified under the Leaf/Spine/Superspine/Borderleaf those will take precedence. + type: string + exportPolicy: + description: Reference to a Policy, when left empty or not specified the Fabric will automatically generate a policy for the specified protocols. + items: + type: string + type: array + importPolicy: + description: Reference to a Policy, when left empty or not specified the Fabric will automatically generate a policy for the specified protocols. + items: + type: string + type: array + keychain: + description: Keychain to be used for authentication + type: string + timers: + description: Timer configurations + properties: + connectRetry: + description: The time interval in seconds between successive attempts to establish a session with a peer. + maximum: 65535 + minimum: 1 + type: integer + holdTime: + description: The hold-time interval in seconds that the router proposes to the peer in its OPEN message. + maximum: 65535 + minimum: 0 + type: integer + keepAlive: + description: The interval in seconds between successive keepalive messages sent to the peer. + maximum: 21845 + minimum: 0 + type: integer + minimumAdvertisementInterval: + description: The value assigned to the MinRouteAdvertisementIntervalTimer of RFC 4271, for both EBGP and IBGP sessions. + maximum: 255 + minimum: 1 + type: integer + type: object + type: object + ospf: + description: OSPF underlay properties. + properties: + addressFamily: + description: Selects enabled address families for OSPFv3. If not specified, both address families will be enabled by default when OSPFv3 underlay is configured. + items: + enum: + - IPV4-UNICAST + - IPV6-UNICAST + type: string + type: array + type: object + protocol: + description: List of routing protocols to used between peers of an ISL. Multiple protocols may be listed, if so multiple protocols will be used. + items: + enum: + - EBGP + - OSPFv2 + - OSPFv3 + type: string + type: array + required: + - protocol + type: object + type: object + status: + description: FabricStatus defines the observed state of Fabric + properties: + borderLeafNodes: + description: List of border leaf nodes in the Fabric. + items: + properties: + node: + description: Name of the TopoNode. + type: string + operatingSystem: + description: Operating system running on the node. + type: string + operatingSystemVersion: + description: Operating system version running on the node. + type: string + underlayAutonomousSystem: + description: Underlay Autonomous System used for eBGP peering session, when protocol is set to eBGP this is required. + format: int32 + type: integer + type: object + type: array + health: + description: Indicates the health score of the Fabric. The health score of the Fabric is determined by the aggregate health score of the resources emitted by the Fabric such as ISL, DefaultRouteReflectors etc. + type: integer + healthScoreReason: + description: Indicates the reason for the health score. + type: string + lastChange: + description: The time when the state of the resource last changed. + type: string + leafNodes: + description: List of leaf nodes in the Fabric. + items: + properties: + node: + description: Name of the TopoNode. + type: string + operatingSystem: + description: Operating system running on the node. + type: string + operatingSystemVersion: + description: Operating system version running on the node. + type: string + underlayAutonomousSystem: + description: Underlay Autonomous System used for eBGP peering session, when protocol is set to eBGP this is required. + format: int32 + type: integer + type: object + type: array + operationalState: + description: 'Operational state of the Fabric. The operational state of the fabric is determined by monitoring the operational state of the following resources (if applicable): DefaultRouters, ISLs.' + type: string + spineNodes: + description: List of spine nodes in the Fabric. + items: + properties: + node: + description: Name of the TopoNode. + type: string + operatingSystem: + description: Operating system running on the node. + type: string + operatingSystemVersion: + description: Operating system version running on the node. + type: string + underlayAutonomousSystem: + description: Underlay Autonomous System used for eBGP peering session, when protocol is set to eBGP this is required. + format: int32 + type: integer + type: object + type: array + superSpineNodes: + description: List of super spine nodes in the Fabric. + items: + properties: + node: + description: Name of the TopoNode. + type: string + operatingSystem: + description: Operating system running on the node. + type: string + operatingSystemVersion: + description: Operating system version running on the node. + type: string + underlayAutonomousSystem: + description: Underlay Autonomous System used for eBGP peering session, when protocol is set to eBGP this is required. + format: int32 + type: integer + type: object + type: array + type: object + type: object +served: true +storage: true +subresources: + status: {} diff --git a/static/resources/fabricstates.fabrics.eda.nokia.com/v1alpha1.yaml b/static/resources/25.12.1/fabricstates.fabrics.eda.nokia.com/v1alpha1.yaml similarity index 100% rename from static/resources/fabricstates.fabrics.eda.nokia.com/v1alpha1.yaml rename to static/resources/25.12.1/fabricstates.fabrics.eda.nokia.com/v1alpha1.yaml diff --git a/static/resources/fans.components.eda.nokia.com/v1.yaml b/static/resources/25.12.1/fans.components.eda.nokia.com/v1.yaml similarity index 100% rename from static/resources/fans.components.eda.nokia.com/v1.yaml rename to static/resources/25.12.1/fans.components.eda.nokia.com/v1.yaml diff --git a/static/resources/filterdeployments.filters.eda.nokia.com/v1alpha1.yaml b/static/resources/25.12.1/filterdeployments.filters.eda.nokia.com/v1alpha1.yaml similarity index 100% rename from static/resources/filterdeployments.filters.eda.nokia.com/v1alpha1.yaml rename to static/resources/25.12.1/filterdeployments.filters.eda.nokia.com/v1alpha1.yaml diff --git a/static/resources/25.12.1/filters.filters.eda.nokia.com/v1alpha1.yaml b/static/resources/25.12.1/filters.filters.eda.nokia.com/v1alpha1.yaml new file mode 100644 index 0000000..e0d29dc --- /dev/null +++ b/static/resources/25.12.1/filters.filters.eda.nokia.com/v1alpha1.yaml @@ -0,0 +1,651 @@ +name: v1alpha1 +schema: + openAPIV3Schema: + description: Filter is the Schema for the filters API + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + description: Filter allows for the creation and management of ordered filtering rules based on IP or MAC criteria. The resource supports various conditions and actions, enabling fine-grained control over network traffic by specifying rules for source and destination addresses, ports, and protocols. + properties: + entries: + description: Specifies the list of filter entries, in order. + items: + properties: + description: + description: Description of the FilterEntry. + type: string + ipEntry: + properties: + action: + description: An action to take, either 'Accept','Drop', or 'RateLimit'. + enum: + - Drop + - Accept + - RateLimit + type: string + destinationPortName: + description: Destination port to match by name. + enum: + - ACAP + - AFP-TCP + - ARNS + - ASF-RMCP + - ASHARE + - ATALK-RM + - AURP + - AUTH + - BFD + - BFD-ECHO + - BFTP + - BGMP + - BGP + - BOOTPC + - BOOTPS + - CCSO-NS + - CHARGEN + - CISCO-TDP + - CITADEL + - CLEARCASE + - COMMERCE + - COURIER + - DAYTIME + - DHCP-FAILOVER + - DHCPV6-CLIENT + - DHCPV6-SERVER + - DICOM + - DISCARD + - DNSIX + - DOMAIN + - DSP + - ECHO + - EPP + - ESRO + - EXEC + - FINGER + - FTP + - FTP-DATA + - FTPS + - FTPS-DATA + - GODI + - GOPHER + - GTP-C + - GTP-PRIME + - GTP-U + - HA-CLUSTER + - HOSTNAME + - HP-ALARM-MGR + - HTTP + - HTTP-ALT + - HTTP-MGMT + - HTTP-RPC + - HTTPS + - IEEE-MMS-SSL + - IMAP + - IMAP3 + - IMAPS + - IPP + - IPSEC + - IPX + - IRC + - IRIS-BEEP + - ISAKMP + - ISAKMP-NAT + - ISCSI + - ISO-TSAP + - KERBEROS + - KERBEROS-ADM + - KLOGIN + - KPASSWD + - KSHELL + - L2TP + - LDAP + - LDAPS + - LDP + - LMP + - LOGIN + - LPD + - LSP-PING + - MAC-SERVER-ADM + - MATIP-A + - MATIP-B + - MICRO-BFD + - MICROSOFT-DS + - MOBILE-IP + - MONITOR + - MPP + - MS-EXCHANGE + - MSDP + - MSP + - MSSQL-M + - MSSQL-S + - MULTIHOP-BFD + - NAS + - NCP + - NETBIOS-DATA + - NETBIOS-NS + - NETBIOS-SS + - NETNEWS + - NETRJS-1 + - NETRJS-2 + - NETRJS-3 + - NETRJS-4 + - NETWALL + - NEW-RWHO + - NFS + - NNTP + - NNTPS + - NTP + - ODMR + - OLSR + - OPENVPN + - PIM-AUTO-RP + - PKIX-TIMESTAMP + - POP2 + - POP3 + - POP3S + - PPTP + - PRINT-SRV + - PTP-EVENT + - PTP-GENERAL + - QMTP + - QOTD + - RADIUS + - RADIUS-ACCT + - REMOTE-MAIL + - REMOTEFS + - REMOTECMD + - RIP + - RJE + - RLP + - RLZDB + - RMC + - RMONITOR + - RPC2PORTMAP + - RSYNC + - RTELNET + - RTSP + - SGMP + - SILC + - SMUX + - SNA-GW + - SNMP + - SNMP-TRAP + - SNPP + - SMTP + - SQL-SVCS + - SQL + - SSH + - SUBMISSION + - SUNRPC + - SVCLOC + - SYSLOG + - SYSTAT + - TACACS + - TALK + - TCPMUX + - TCPNETHASPSRV + - TFTP + - TIME + - TIMED + - UPS + - XDMCP + - XNS-CH + - XNS-MAIL + - XNS-TIME + - Z3950 + type: string + destinationPortNumber: + description: Destination port to match by numerical value. + maximum: 65535 + minimum: 0 + type: integer + destinationPortOperator: + description: Operator to use when matching destinationPort, either Equals, GreaterOrEquals, or LessOrEquals. + enum: + - Equals + - GreaterOrEquals + - LessOrEquals + type: string + destinationPortRange: + description: Range of destination ports to match, in the format n-m, e.g. 100-200, The start and end of the range must be port numbers. + type: string + destinationPrefix: + description: Destination prefix to match. + type: string + dscp: + description: Match DSCP values. + items: + maximum: 63 + minimum: 0 + type: integer + maxItems: 64 + minItems: 0 + type: array + firstFragment: + description: Match the first fragment only. + type: boolean + fragment: + description: Match any fragment. + type: boolean + icmpCode: + description: Match a specific ICMP code, as a number between 0-255, e.g. 0. + items: + type: integer + maxItems: 255 + minItems: 0 + type: array + icmpTypeName: + description: Match a specific ICMP type by name, e.g. dest-unreachable. + enum: + - DestUnreachable + - Echo + - EchoReply + - EchoRequest + - McastRtrAdv + - McastRtrSolicit + - McastRtrTerm + - MldDone + - MldQuery + - MldReport + - MldV2 + - NeighborAdvertise + - NeighborSolicit + - NodeInfoQuery + - NodeInfoResponse + - PacketTooBig + - ParamProblem + - Redirect + - RouterAdvertise + - RouterRenumber + - RouterSolicit + - SourceQuench + - TimeExceeded + - Timestamp + - TimestampReply + type: string + icmpTypeNumber: + description: Match a specific ICMP type by number. + maximum: 255 + minimum: 0 + type: integer + log: + description: Log the matches for this entry. + type: boolean + protocolName: + description: Match a specific IP protocol name (specified in the type field of the IP header). + enum: + - AH + - EGP + - EIGRP + - ESP + - GGP + - GRE + - ICMP + - ICMP6 + - IDRP + - IGMP + - IGP + - IPV4 + - IPV6 + - IPV6-DEST-OPTS + - IPV6-HOP + - L2TP + - MPLS-IN-IP + - NO-NEXT-HDR + - OSPF + - PIM + - ROHC + - RSVP + - SCTP + - ST + - TCP + - UDP + - VRRP + type: string + protocolNumber: + description: Match a specific IP protocol number (specified in the type field of the IP header). + maximum: 255 + minimum: 0 + type: integer + rateLimit: + description: Rate limit to apply when the action is 'RateLimit'. + properties: + burstSize: + description: The maximum burst size in bytes. + format: int32 + type: integer + entrySpecificPolicer: + default: false + description: 'Controls policer instantiation: false for shared instance, true for per-entry instances' + type: boolean + peakRate: + description: The peak rate in kilobytes per second. + format: int32 + type: integer + scope: + default: Global + description: Determines how the policer is applied across subinterfaces. Global applies the policer across all subinterfaces, while Subinterface applies it individually to each subinterface. + enum: + - Global + - Subinterface + type: string + type: object + sourcePortName: + description: Source port to match by name. + enum: + - ACAP + - AFP-TCP + - ARNS + - ASF-RMCP + - ASHARE + - ATALK-RM + - AURP + - AUTH + - BFD + - BFD-ECHO + - BFTP + - BGMP + - BGP + - BOOTPC + - BOOTPS + - CCSO-NS + - CHARGEN + - CISCO-TDP + - CITADEL + - CLEARCASE + - COMMERCE + - COURIER + - DAYTIME + - DHCP-FAILOVER + - DHCPV6-CLIENT + - DHCPV6-SERVER + - DICOM + - DISCARD + - DNSIX + - DOMAIN + - DSP + - ECHO + - EPP + - ESRO + - EXEC + - FINGER + - FTP + - FTP-DATA + - FTPS + - FTPS-DATA + - GODI + - GOPHER + - GTP-C + - GTP-PRIME + - GTP-U + - HA-CLUSTER + - HOSTNAME + - HP-ALARM-MGR + - HTTP + - HTTP-ALT + - HTTP-MGMT + - HTTP-RPC + - HTTPS + - IEEE-MMS-SSL + - IMAP + - IMAP3 + - IMAPS + - IPP + - IPSEC + - IPX + - IRC + - IRIS-BEEP + - ISAKMP + - ISAKMP-NAT + - ISCSI + - ISO-TSAP + - KERBEROS + - KERBEROS-ADM + - KLOGIN + - KPASSWD + - KSHELL + - L2TP + - LDAP + - LDAPS + - LDP + - LMP + - LOGIN + - LPD + - LSP-PING + - MAC-SERVER-ADM + - MATIP-A + - MATIP-B + - MICRO-BFD + - MICROSOFT-DS + - MOBILE-IP + - MONITOR + - MPP + - MS-EXCHANGE + - MSDP + - MSP + - MSSQL-M + - MSSQL-S + - MULTIHOP-BFD + - NAS + - NCP + - NETBIOS-DATA + - NETBIOS-NS + - NETBIOS-SS + - NETNEWS + - NETRJS-1 + - NETRJS-2 + - NETRJS-3 + - NETRJS-4 + - NETWALL + - NEW-RWHO + - NFS + - NNTP + - NNTPS + - NTP + - ODMR + - OLSR + - OPENVPN + - PIM-AUTO-RP + - PKIX-TIMESTAMP + - POP2 + - POP3 + - POP3S + - PPTP + - PRINT-SRV + - PTP-EVENT + - PTP-GENERAL + - QMTP + - QOTD + - RADIUS + - RADIUS-ACCT + - REMOTE-MAIL + - REMOTEFS + - REMOTECMD + - RIP + - RJE + - RLP + - RLZDB + - RMC + - RMONITOR + - RPC2PORTMAP + - RSYNC + - RTELNET + - RTSP + - SGMP + - SILC + - SMUX + - SNA-GW + - SNMP + - SNMP-TRAP + - SNPP + - SMTP + - SQL-SVCS + - SQL + - SSH + - SUBMISSION + - SUNRPC + - SVCLOC + - SYSLOG + - SYSTAT + - TACACS + - TALK + - TCPMUX + - TCPNETHASPSRV + - TFTP + - TIME + - TIMED + - UPS + - XDMCP + - XNS-CH + - XNS-MAIL + - XNS-TIME + - Z3950 + type: string + sourcePortNumber: + description: Source port to match by numerical value. + maximum: 65535 + minimum: 0 + type: integer + sourcePortOperator: + description: Operator to use when matching sourcePort, either Equals, GreaterOrEquals, or LessOrEquals. + enum: + - Equals + - GreaterOrEquals + - LessOrEquals + type: string + sourcePortRange: + description: Range of source ports to match, in the format n-m, e.g. 100-200. The start and end of the range must be port numbers. + type: string + sourcePrefix: + description: Source prefix to match. + type: string + tcpFlags: + description: Match TCP flags, usable with !, &, | and the flags RST, SYN, and ACK. + type: string + type: object + macEntry: + properties: + action: + description: An action to take, either 'Accept','Drop', or 'RateLimit'. + enum: + - Drop + - Accept + - RateLimit + type: string + destinationMAC: + description: Match an Ethernet frame if its destination MAC address logically anded with the mask equals this MAC address. + type: string + destinationMACMask: + description: Match an Ethernet frame if its destination MAC address logically anded with the mask equals the configured MAC address. + type: string + ethertype: + description: An Ethernet frame matches this condition if its ethertype value (after 802.1Q VLAN tags) matches the specified value. + enum: + - ARP + - AUTHENTICATION8021X + - ETHOAM + - FCOE + - FCOEINITIALIZATION + - FLOWCONTROL + - IPV4 + - IPV6 + - LACP + - LLDP + - MACSEC + - MPLSMULTICAST + - MPLSUNICAST + - PBB + - PPPOEDISCOVERY + - PPPOESESSION + - PTP + - ROCE + type: string + log: + description: Log the matches for this entry. + type: boolean + outerVLANIDOperator: + description: Operator to use when matching OuterVlanIdValue, either Equals, GreaterOrEquals, or LessOrEquals. + enum: + - Equals + - GreaterOrEquals + - LessOrEquals + type: string + outerVLANIDRange: + description: Range of Outer vlan IDs to match, in the format n-m, e.g. 100-200 + type: string + outerVLANIDValue: + description: Ethernet frame matching criteria based on the outermost VLAN ID found before the subinterface-defining VLAN tag (if any) is removed. A value of 'none' will match only untagged frames. + type: string + rateLimit: + description: Rate limit to apply when the action is 'RateLimit'. + properties: + burstSize: + description: The maximum burst size in bytes. + format: int32 + type: integer + entrySpecificPolicer: + default: false + description: 'Controls policer instantiation: false for shared instance, true for per-entry instances' + type: boolean + peakRate: + description: The peak rate in kilobytes per second. + format: int32 + type: integer + scope: + default: Global + description: Determines how the policer is applied across subinterfaces. Global applies the policer across all subinterfaces, while Subinterface applies it individually to each subinterface. + enum: + - Global + - Subinterface + type: string + type: object + sourceMAC: + description: Match an Ethernet frame if its source MAC address logically anded with the mask equals this MAC address. + type: string + sourceMACMask: + description: Match an Ethernet frame if its source MAC address logically anded with the mask equals the configured MAC address. + type: string + type: object + type: + default: Auto + description: Type of the entry which can be IPV4, IPV6, MAC or Auto. + enum: + - IPV4 + - IPV6 + - MAC + - Auto + type: string + required: + - type + type: object + type: array + statisticsPerEntry: + description: Enable or disable per-entry counters. + type: boolean + required: + - entries + type: object + status: + description: FilterStatus defines the observed state of Filter + type: object + type: object +served: true +storage: true +subresources: + status: {} diff --git a/static/resources/forwardingclasss.qos.eda.nokia.com/v1.yaml b/static/resources/25.12.1/forwardingclasss.qos.eda.nokia.com/v1.yaml similarity index 100% rename from static/resources/forwardingclasss.qos.eda.nokia.com/v1.yaml rename to static/resources/25.12.1/forwardingclasss.qos.eda.nokia.com/v1.yaml diff --git a/static/resources/forwardingclasss.qos.eda.nokia.com/v1alpha1.yaml b/static/resources/25.12.1/forwardingclasss.qos.eda.nokia.com/v1alpha1.yaml similarity index 100% rename from static/resources/forwardingclasss.qos.eda.nokia.com/v1alpha1.yaml rename to static/resources/25.12.1/forwardingclasss.qos.eda.nokia.com/v1alpha1.yaml diff --git a/static/resources/25.12.1/githubactions.github.eda.nokia.com/v1alpha1.yaml b/static/resources/25.12.1/githubactions.github.eda.nokia.com/v1alpha1.yaml new file mode 100644 index 0000000..689b444 --- /dev/null +++ b/static/resources/25.12.1/githubactions.github.eda.nokia.com/v1alpha1.yaml @@ -0,0 +1,172 @@ +name: v1alpha1 +schema: + openAPIV3Schema: + description: GitHubAction is the Schema for the githubactions API + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + description: spec defines the desired state of GitHubAction + properties: + instance: + description: Github instance name. + type: string + parameters: + description: Parameters to pass to the workflow. + items: + properties: + name: + description: Parameter name + type: string + value: + description: Parameter value + properties: + dynamicValue: + properties: + field: + type: string + path: + type: string + where: + type: string + type: object + staticValue: + type: string + type: object + type: object + type: array + ref: + description: Reference is the branch, tag or commit hash to run the workflow. + type: string + repo: + description: Repository to run the workflow. + type: string + trigger: + description: Trigger conditions to run the workflow + properties: + alarm: + properties: + exclude: + description: Excluded alarm types that don't trigger the workflow + items: + type: string + type: array + include: + description: Included alarm types that trigger the workflow + items: + type: string + type: array + type: object + query: + properties: + fields: + description: List of fields to watch + items: + type: string + type: array + path: + description: Path to the EDB table to watch + type: string + where: + description: Where clause to filter the results + type: string + type: object + type: object + workflow: + description: Workflow to run + type: string + type: object + status: + description: status defines the observed state of GitHubAction + properties: + conditions: + description: |- + conditions represent the current state of the GitHubAction resource. + Each condition has a unique type and reflects the status of a specific aspect of the resource. + + Standard condition types include: + - "Available": the resource is fully functional + - "Progressing": the resource is being created or updated + - "Degraded": the resource failed to reach or maintain its desired state + + The status of each condition is one of True, False, or Unknown. + items: + description: Condition contains details for one aspect of the current state of this API Resource. + properties: + lastTransitionTime: + description: |- + lastTransitionTime is the last time the condition transitioned from one status to another. + This should be when the underlying condition changed. If that is not known, then using the time when the API field changed is acceptable. + format: date-time + type: string + message: + description: |- + message is a human readable message indicating details about the transition. + This may be an empty string. + maxLength: 32768 + type: string + observedGeneration: + description: |- + observedGeneration represents the .metadata.generation that the condition was set based upon. + For instance, if .metadata.generation is currently 12, but the .status.conditions[x].observedGeneration is 9, the condition is out of date + with respect to the current state of the instance. + format: int64 + minimum: 0 + type: integer + reason: + description: |- + reason contains a programmatic identifier indicating the reason for the condition's last transition. + Producers of specific condition types may define expected values and meanings for this field, + and whether the values are considered a guaranteed API. + The value should be a CamelCase string. + This field may not be empty. + maxLength: 1024 + minLength: 1 + pattern: ^[A-Za-z]([A-Za-z0-9_,:]*[A-Za-z0-9_])?$ + type: string + status: + description: status of the condition, one of True, False, Unknown. + enum: + - "True" + - "False" + - Unknown + type: string + type: + description: type of condition in CamelCase or in foo.example.com/CamelCase. + maxLength: 316 + pattern: ^([a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*/)?(([A-Za-z0-9][-A-Za-z0-9_.]*)?[A-Za-z0-9])$ + type: string + required: + - lastTransitionTime + - message + - reason + - status + - type + type: object + type: array + x-kubernetes-list-map-keys: + - type + x-kubernetes-list-type: map + type: object + required: + - spec + type: object +served: true +storage: true +subresources: + status: {} diff --git a/static/resources/25.12.1/githubinstances.github.eda.nokia.com/v1alpha1.yaml b/static/resources/25.12.1/githubinstances.github.eda.nokia.com/v1alpha1.yaml new file mode 100644 index 0000000..b35de9c --- /dev/null +++ b/static/resources/25.12.1/githubinstances.github.eda.nokia.com/v1alpha1.yaml @@ -0,0 +1,118 @@ +name: v1alpha1 +schema: + openAPIV3Schema: + description: GitHubInstance is the Schema for the githubinstances API + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + description: spec defines the desired state of GitHubInstance + properties: + apiBaseURL: + description: Base URL for the Github API. + type: string + authSecretRef: + description: Reference to the secret containing the Github token. + properties: + key: + description: Key of the secret + type: string + name: + description: Name of the secret + type: string + type: object + type: object + status: + description: status defines the observed state of GitHubInstance + properties: + conditions: + description: |- + conditions represent the current state of the GitHubInstance resource. + Each condition has a unique type and reflects the status of a specific aspect of the resource. + + Standard condition types include: + - "Available": the resource is fully functional + - "Progressing": the resource is being created or updated + - "Degraded": the resource failed to reach or maintain its desired state + + The status of each condition is one of True, False, or Unknown. + items: + description: Condition contains details for one aspect of the current state of this API Resource. + properties: + lastTransitionTime: + description: |- + lastTransitionTime is the last time the condition transitioned from one status to another. + This should be when the underlying condition changed. If that is not known, then using the time when the API field changed is acceptable. + format: date-time + type: string + message: + description: |- + message is a human readable message indicating details about the transition. + This may be an empty string. + maxLength: 32768 + type: string + observedGeneration: + description: |- + observedGeneration represents the .metadata.generation that the condition was set based upon. + For instance, if .metadata.generation is currently 12, but the .status.conditions[x].observedGeneration is 9, the condition is out of date + with respect to the current state of the instance. + format: int64 + minimum: 0 + type: integer + reason: + description: |- + reason contains a programmatic identifier indicating the reason for the condition's last transition. + Producers of specific condition types may define expected values and meanings for this field, + and whether the values are considered a guaranteed API. + The value should be a CamelCase string. + This field may not be empty. + maxLength: 1024 + minLength: 1 + pattern: ^[A-Za-z]([A-Za-z0-9_,:]*[A-Za-z0-9_])?$ + type: string + status: + description: status of the condition, one of True, False, Unknown. + enum: + - "True" + - "False" + - Unknown + type: string + type: + description: type of condition in CamelCase or in foo.example.com/CamelCase. + maxLength: 316 + pattern: ^([a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*/)?(([A-Za-z0-9][-A-Za-z0-9_.]*)?[A-Za-z0-9])$ + type: string + required: + - lastTransitionTime + - message + - reason + - status + - type + type: object + type: array + x-kubernetes-list-map-keys: + - type + x-kubernetes-list-type: map + type: object + required: + - spec + type: object +served: true +storage: true +subresources: + status: {} diff --git a/static/resources/25.12.1/githubissues.github.eda.nokia.com/v1alpha1.yaml b/static/resources/25.12.1/githubissues.github.eda.nokia.com/v1alpha1.yaml new file mode 100644 index 0000000..7deff0e --- /dev/null +++ b/static/resources/25.12.1/githubissues.github.eda.nokia.com/v1alpha1.yaml @@ -0,0 +1,159 @@ +name: v1alpha1 +schema: + openAPIV3Schema: + description: GitHubIssue is the Schema for the githubissues API + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + description: spec defines the desired state of GitHubIssue + properties: + closeOnResolve: + type: boolean + instance: + description: Github instance name. + type: string + issue: + properties: + assignees: + items: + type: string + type: array + body: + type: string + labels: + items: + type: string + type: array + milestone: + type: string + title: + type: string + type: object + repo: + type: string + trigger: + properties: + alarm: + properties: + exclude: + description: Excluded alarm types that don't trigger the workflow + items: + type: string + type: array + include: + description: Included alarm types that trigger the workflow + items: + type: string + type: array + type: object + query: + properties: + fields: + description: List of fields to watch + items: + type: string + type: array + path: + description: Path to the EDB table to watch + type: string + where: + description: Where clause to filter the results + type: string + type: object + type: object + type: object + status: + description: status defines the observed state of GitHubIssue + properties: + conditions: + description: |- + conditions represent the current state of the GitHubIssue resource. + Each condition has a unique type and reflects the status of a specific aspect of the resource. + + Standard condition types include: + - "Available": the resource is fully functional + - "Progressing": the resource is being created or updated + - "Degraded": the resource failed to reach or maintain its desired state + + The status of each condition is one of True, False, or Unknown. + items: + description: Condition contains details for one aspect of the current state of this API Resource. + properties: + lastTransitionTime: + description: |- + lastTransitionTime is the last time the condition transitioned from one status to another. + This should be when the underlying condition changed. If that is not known, then using the time when the API field changed is acceptable. + format: date-time + type: string + message: + description: |- + message is a human readable message indicating details about the transition. + This may be an empty string. + maxLength: 32768 + type: string + observedGeneration: + description: |- + observedGeneration represents the .metadata.generation that the condition was set based upon. + For instance, if .metadata.generation is currently 12, but the .status.conditions[x].observedGeneration is 9, the condition is out of date + with respect to the current state of the instance. + format: int64 + minimum: 0 + type: integer + reason: + description: |- + reason contains a programmatic identifier indicating the reason for the condition's last transition. + Producers of specific condition types may define expected values and meanings for this field, + and whether the values are considered a guaranteed API. + The value should be a CamelCase string. + This field may not be empty. + maxLength: 1024 + minLength: 1 + pattern: ^[A-Za-z]([A-Za-z0-9_,:]*[A-Za-z0-9_])?$ + type: string + status: + description: status of the condition, one of True, False, Unknown. + enum: + - "True" + - "False" + - Unknown + type: string + type: + description: type of condition in CamelCase or in foo.example.com/CamelCase. + maxLength: 316 + pattern: ^([a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*/)?(([A-Za-z0-9][-A-Za-z0-9_.]*)?[A-Za-z0-9])$ + type: string + required: + - lastTransitionTime + - message + - reason + - status + - type + type: object + type: array + x-kubernetes-list-map-keys: + - type + x-kubernetes-list-type: map + type: object + required: + - spec + type: object +served: true +storage: true +subresources: + status: {} diff --git a/static/resources/25.12.1/gitlabinstances.gitlab.eda.nokia.com/v1alpha1.yaml b/static/resources/25.12.1/gitlabinstances.gitlab.eda.nokia.com/v1alpha1.yaml new file mode 100644 index 0000000..f05b822 --- /dev/null +++ b/static/resources/25.12.1/gitlabinstances.gitlab.eda.nokia.com/v1alpha1.yaml @@ -0,0 +1,49 @@ +name: v1alpha1 +schema: + openAPIV3Schema: + description: GitlabInstance is the Schema for the gitlabinstances API + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + description: spec defines the desired state of GitlabInstance + properties: + apiBaseURL: + description: Base URL for the Gitlab API. + type: string + authSecretRef: + description: Reference to the secret containing the Gitlab token. + properties: + key: + description: Key of the secret + type: string + name: + description: Name of the secret + type: string + type: object + type: object + status: + description: status defines the observed state of GitlabInstance + type: object + required: + - spec + type: object +served: true +storage: true +subresources: + status: {} diff --git a/static/resources/25.12.1/gitlabissues.gitlab.eda.nokia.com/v1alpha1.yaml b/static/resources/25.12.1/gitlabissues.gitlab.eda.nokia.com/v1alpha1.yaml new file mode 100644 index 0000000..bc884c0 --- /dev/null +++ b/static/resources/25.12.1/gitlabissues.gitlab.eda.nokia.com/v1alpha1.yaml @@ -0,0 +1,96 @@ +name: v1alpha1 +schema: + openAPIV3Schema: + description: GitlabIssue is the Schema for the gitlabissues API + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + description: spec defines the desired state of GitlabIssue + properties: + closeOnResolve: + description: Close the issue when resolved. + type: boolean + instance: + description: Gitlab instance name. + type: string + issue: + properties: + assignees: + description: Assignees of the issue. + items: + type: string + type: array + body: + description: Body of the issue. + type: string + labels: + description: Labels of the issue. + items: + type: string + type: array + milestone: + description: Milestone of the issue. + type: string + title: + description: Title of the issue. + type: string + type: object + repo: + type: string + trigger: + properties: + alarm: + properties: + exclude: + description: Excluded alarm types that don't trigger the workflow + items: + type: string + type: array + include: + description: Included alarm types that trigger the workflow + items: + type: string + type: array + type: object + query: + properties: + fields: + description: List of fields to watch + items: + type: string + type: array + path: + description: Path to the EDB table to watch + type: string + where: + description: Where clause to filter the results + type: string + type: object + type: object + type: object + status: + description: status defines the observed state of GitlabIssue + type: object + required: + - spec + type: object +served: true +storage: true +subresources: + status: {} diff --git a/static/resources/25.12.1/gitlabpipelines.gitlab.eda.nokia.com/v1alpha1.yaml b/static/resources/25.12.1/gitlabpipelines.gitlab.eda.nokia.com/v1alpha1.yaml new file mode 100644 index 0000000..f062972 --- /dev/null +++ b/static/resources/25.12.1/gitlabpipelines.gitlab.eda.nokia.com/v1alpha1.yaml @@ -0,0 +1,103 @@ +name: v1alpha1 +schema: + openAPIV3Schema: + description: GitlabPipeline is the Schema for the gitlabpipelines API + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + description: spec defines the desired state of GitlabPipeline + properties: + instance: + description: Gitlab instance name. + type: string + parameters: + description: Parameters to pass to the workflow. + items: + properties: + name: + description: Parameter name + type: string + value: + description: Parameter value + properties: + dynamicValue: + properties: + field: + type: string + path: + type: string + where: + type: string + type: object + staticValue: + type: string + type: object + type: object + type: array + pipeline: + description: Pipeline to run. + type: string + ref: + description: Reference is the branch, tag or commit hash to run the workflow. + type: string + repo: + description: Repository to run the workflow. + type: string + trigger: + description: Trigger conditions to run the pipeline. + properties: + alarm: + properties: + exclude: + description: Excluded alarm types that don't trigger the workflow + items: + type: string + type: array + include: + description: Included alarm types that trigger the workflow + items: + type: string + type: array + type: object + query: + properties: + fields: + description: List of fields to watch + items: + type: string + type: array + path: + description: Path to the EDB table to watch + type: string + where: + description: Where clause to filter the results + type: string + type: object + type: object + type: object + status: + description: status defines the observed state of GitlabPipeline + type: object + required: + - spec + type: object +served: true +storage: true +subresources: + status: {} diff --git a/static/resources/globalconfigs.core.eda.nokia.com/v1.yaml b/static/resources/25.12.1/globalconfigs.core.eda.nokia.com/v1.yaml similarity index 100% rename from static/resources/globalconfigs.core.eda.nokia.com/v1.yaml rename to static/resources/25.12.1/globalconfigs.core.eda.nokia.com/v1.yaml diff --git a/static/resources/httpproxies.core.eda.nokia.com/v1.yaml b/static/resources/25.12.1/httpproxies.core.eda.nokia.com/v1.yaml similarity index 100% rename from static/resources/httpproxies.core.eda.nokia.com/v1.yaml rename to static/resources/25.12.1/httpproxies.core.eda.nokia.com/v1.yaml diff --git a/static/resources/incidents.snow.eda.nokia.com/v1alpha1.yaml b/static/resources/25.12.1/incidents.snow.eda.nokia.com/v1alpha1.yaml similarity index 100% rename from static/resources/incidents.snow.eda.nokia.com/v1alpha1.yaml rename to static/resources/25.12.1/incidents.snow.eda.nokia.com/v1alpha1.yaml diff --git a/static/resources/25.12.1/indexallocationpools.core.eda.nokia.com/v1.yaml b/static/resources/25.12.1/indexallocationpools.core.eda.nokia.com/v1.yaml new file mode 100644 index 0000000..31eda30 --- /dev/null +++ b/static/resources/25.12.1/indexallocationpools.core.eda.nokia.com/v1.yaml @@ -0,0 +1,105 @@ +name: v1 +schema: + openAPIV3Schema: + description: IndexAllocationPool is the Schema for the indexallocationpools API + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + description: |- + IndexAllocationPool is a generic allocation pool supporting allocation of indexes from a set of segments. + It supports allocating things like VLANs, subinterface indexes, autonomous system numbers, or any other integer-based index. + properties: + publishAllocations: + description: If true, allocations in segments will be published to EDB, available to query via EQL and trigger state applications off of. + type: boolean + segments: + description: List of segments containing indexes to allocate. + items: + properties: + allocations: + description: List of reservations to exclude from allocations from this segment. + items: + properties: + name: + description: Name of this allocation. + type: string + poolInstance: + description: Pool instance, if empty applies to all instances. + type: string + value: + description: Index to reserve. + format: int32 + maximum: 4294967295 + minimum: 0 + type: integer + required: + - name + - value + type: object + type: array + reservations: + description: Range of reservations to exclude from allocations from this segment. + items: + properties: + end: + description: Value to reserve to. + format: int32 + maximum: 4294967295 + minimum: 0 + type: integer + start: + description: Value to start reserving. + format: int32 + maximum: 4294967295 + minimum: 0 + type: integer + required: + - end + - start + type: object + type: array + size: + description: Number of elements in the segment. + format: int32 + maximum: 4294967295 + minimum: 0 + type: integer + start: + description: Starting value of the segment. + format: int32 + maximum: 4294967295 + minimum: 0 + type: integer + required: + - size + - start + type: object + minItems: 1 + type: array + required: + - segments + type: object + status: + description: IndexAllocationPoolStatus defines the observed state of IndexAllocationPool + type: object + type: object +served: true +storage: true +subresources: + status: {} diff --git a/static/resources/25.12.1/ingresspolicys.qos.eda.nokia.com/v1.yaml b/static/resources/25.12.1/ingresspolicys.qos.eda.nokia.com/v1.yaml new file mode 100644 index 0000000..5d9f4b9 --- /dev/null +++ b/static/resources/25.12.1/ingresspolicys.qos.eda.nokia.com/v1.yaml @@ -0,0 +1,794 @@ +name: v1 +schema: + openAPIV3Schema: + description: IngressPolicy is the Schema for the ingresspolicys API + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + description: IngressPolicySpec defines the desired state of IngressPolicy + properties: + classifier: + description: Classifier manages the configuration of traffic classification policies in a network. It includes various entry types like IPv4, IPv6, Dot1p, and DSCP policies. Each entry specifies how traffic should be classified and what actions should be taken on the matched packets. + properties: + entries: + description: |- + Specifies the list of filter entries, in order. + A classifier containing multiple entry types may result in multiple classifiers being created on the target node. + IPV4 and IPV6 entries will create multifield classifier policies. + items: + properties: + dot1pPolicyEntry: + description: A Dot1p policy entry - only a single Dot1p entry is allowed per classifier resource. + properties: + directToPFCQueue: + description: In addition to creating a Dot1p PCP value to Forwarding Class mapping, this will map the PCP values directly to the PFC queue specified in the Forwarding Class to Queue mapping. + type: boolean + dropProbabilityLevel: + default: Low + description: Assign matching packets to the specified drop probability level. + enum: + - High + - Medium + - Low + type: string + forwardingClass: + description: Reference to a ForwardingClass resource to which the value is mapped. + type: string + pcpValues: + description: List of PCP values or ranges used to match packets to classify into Forwarding Classes. + items: + properties: + rangeEnd: + description: Optional end of PCP range (inclusive) which would start from the Value to the RangeEnd. + maximum: 7 + minimum: 0 + type: integer + value: + description: Single PCP value or start of range. + maximum: 7 + minimum: 0 + type: integer + required: + - value + type: object + minItems: 1 + type: array + required: + - pcpValues + type: object + dscpPolicyEntry: + description: A DSCP policy entry - only a single DSCP entry is allowed per classifier resource. + properties: + dropProbabilityLevel: + default: Low + description: Assign matching packets to the specified drop probability level. + enum: + - High + - Medium + - Low + type: string + dscpValues: + description: List of DSCP values or ranges used to match packets to classify into Forwarding Classes. + items: + properties: + rangeEnd: + description: Optional end of DSCP range (inclusive) which would start from the Value to the RangeEnd. + maximum: 63 + minimum: 0 + type: integer + value: + description: Single DSCP value or start of range. + maximum: 63 + minimum: 0 + type: integer + required: + - value + type: object + minItems: 1 + type: array + forwardingClass: + description: Reference to a ForwardingClass resource to which the value is mapped. + type: string + required: + - dscpValues + type: object + ipEntry: + description: An IPv4 or IPv6 multifield classifier entry. + properties: + action: + description: An action to take on the matched packets. + properties: + dropProbabilityLevel: + default: Low + description: Assign matching packets to the specified drop probability level. + enum: + - High + - Medium + - Low + type: string + dscpRewriteValue: + description: Rewrite actions associated with packets that match the classifier entry. + maximum: 63 + minimum: 0 + type: integer + forwardingClass: + description: Reference to a ForwardingClass resource to which the value is mapped. + type: string + type: object + destinationPortName: + description: Destination port to match by name. + enum: + - ACAP + - AFP-TCP + - ARNS + - ASF-RMCP + - ASHARE + - ATALK-RM + - AURP + - AUTH + - BFD + - BFD-ECHO + - BFTP + - BGMP + - BGP + - BOOTPC + - BOOTPS + - CCSO-NS + - CHARGEN + - CISCO-TDP + - CITADEL + - CLEARCASE + - COMMERCE + - COURIER + - DAYTIME + - DHCP-FAILOVER + - DHCPV6-CLIENT + - DHCPV6-SERVER + - DICOM + - DISCARD + - DNSIX + - DOMAIN + - DSP + - ECHO + - EPP + - ESRO + - EXEC + - FINGER + - FTP + - FTP-DATA + - FTPS + - FTPS-DATA + - GODI + - GOPHER + - GTP-C + - GTP-PRIME + - GTP-U + - HA-CLUSTER + - HOSTNAME + - HP-ALARM-MGR + - HTTP + - HTTP-ALT + - HTTP-MGMT + - HTTP-RPC + - HTTPS + - IEEE-MMS-SSL + - IMAP + - IMAP3 + - IMAPS + - IPP + - IPSEC + - IPX + - IRC + - IRIS-BEEP + - ISAKMP + - ISAKMP-NAT + - ISCSI + - ISO-TSAP + - KERBEROS + - KERBEROS-ADM + - KLOGIN + - KPASSWD + - KSHELL + - L2TP + - LDAP + - LDAPS + - LDP + - LMP + - LOGIN + - LPD + - LSP-PING + - MAC-SERVER-ADM + - MATIP-A + - MATIP-B + - MICRO-BFD + - MICROSOFT-DS + - MOBILE-IP + - MONITOR + - MPP + - MS-EXCHANGE + - MSDP + - MSP + - MSSQL-M + - MSSQL-S + - MULTIHOP-BFD + - NAS + - NCP + - NETBIOS-DATA + - NETBIOS-NS + - NETBIOS-SS + - NETNEWS + - NETRJS-1 + - NETRJS-2 + - NETRJS-3 + - NETRJS-4 + - NETWALL + - NEW-RWHO + - NFS + - NNTP + - NNTPS + - NTP + - ODMR + - OLSR + - OPENVPN + - PIM-AUTO-RP + - PKIX-TIMESTAMP + - POP2 + - POP3 + - POP3S + - PPTP + - PRINT-SRV + - PTP-EVENT + - PTP-GENERAL + - QMTP + - QOTD + - RADIUS + - RADIUS-ACCT + - REMOTE-MAIL + - REMOTEFS + - REMOTECMD + - RIP + - RJE + - RLP + - RLZDB + - RMC + - RMONITOR + - RPC2PORTMAP + - RSYNC + - RTELNET + - RTSP + - SGMP + - SILC + - SMUX + - SNA-GW + - SNMP + - SNMP-TRAP + - SNPP + - SMTP + - SQL-SVCS + - SQL + - SSH + - SUBMISSION + - SUNRPC + - SVCLOC + - SYSLOG + - SYSTAT + - TACACS + - TALK + - TCPMUX + - TCPNETHASPSRV + - TFTP + - TIME + - TIMED + - UPS + - XDMCP + - XNS-CH + - XNS-MAIL + - XNS-TIME + - Z3950 + type: string + destinationPortNumber: + description: Destination port to match by numerical value. + maximum: 65535 + minimum: 0 + type: integer + destinationPortOperator: + description: Operator to use when matching destinationPort, either Equals, GreaterOrEquals, or LessOrEquals. + enum: + - Equals + - GreaterOrEquals + - LessOrEquals + type: string + destinationPortRange: + description: Range of destination ports to match, in the format n-m, e.g. 100-200, The start and end of the range must be port numbers. + type: string + destinationPrefix: + description: Destination prefix to match. + type: string + dscp: + description: Match DSCP values. + items: + maximum: 63 + minimum: 0 + type: integer + maxItems: 64 + minItems: 0 + type: array + firstFragment: + description: Match the first fragment only. + type: boolean + fragment: + description: Match any fragment. + type: boolean + icmpCode: + description: Match a specific ICMP code, as a number between 0-255, e.g. 0. + items: + type: integer + maxItems: 255 + minItems: 0 + type: array + icmpTypeName: + description: Match a specific ICMP type by name, e.g. dest-unreachable. + enum: + - DestUnreachable + - Echo + - EchoReply + - EchoRequest + - McastRtrAdv + - McastRtrSolicit + - McastRtrTerm + - MldDone + - MldQuery + - MldReport + - MldV2 + - NeighborAdvertise + - NeighborSolicit + - NodeInfoQuery + - NodeInfoResponse + - PacketTooBig + - ParamProblem + - Redirect + - RouterAdvertise + - RouterRenumber + - RouterSolicit + - SourceQuench + - TimeExceeded + - Timestamp + - TimestampReply + type: string + icmpTypeNumber: + description: Match a specific ICMP type by number. + maximum: 255 + minimum: 0 + type: integer + protocolName: + description: Match a specific IP protocol name (specified in the type field of the IP header). + enum: + - AH + - EGP + - EIGRP + - ESP + - GGP + - GRE + - ICMP + - ICMP6 + - IDRP + - IGMP + - IGP + - IPV4 + - IPV6 + - IPV6-DEST-OPTS + - IPV6-HOP + - L2TP + - MPLS-IN-IP + - NO-NEXT-HDR + - OSPF + - PIM + - ROHC + - RSVP + - SCTP + - ST + - TCP + - UDP + - VRRP + type: string + protocolNumber: + description: Match a specific IP protocol number (specified in the type field of the IP header). + maximum: 255 + minimum: 0 + type: integer + sourcePortName: + description: Source port to match by name. + enum: + - ACAP + - AFP-TCP + - ARNS + - ASF-RMCP + - ASHARE + - ATALK-RM + - AURP + - AUTH + - BFD + - BFD-ECHO + - BFTP + - BGMP + - BGP + - BOOTPC + - BOOTPS + - CCSO-NS + - CHARGEN + - CISCO-TDP + - CITADEL + - CLEARCASE + - COMMERCE + - COURIER + - DAYTIME + - DHCP-FAILOVER + - DHCPV6-CLIENT + - DHCPV6-SERVER + - DICOM + - DISCARD + - DNSIX + - DOMAIN + - DSP + - ECHO + - EPP + - ESRO + - EXEC + - FINGER + - FTP + - FTP-DATA + - FTPS + - FTPS-DATA + - GODI + - GOPHER + - GTP-C + - GTP-PRIME + - GTP-U + - HA-CLUSTER + - HOSTNAME + - HP-ALARM-MGR + - HTTP + - HTTP-ALT + - HTTP-MGMT + - HTTP-RPC + - HTTPS + - IEEE-MMS-SSL + - IMAP + - IMAP3 + - IMAPS + - IPP + - IPSEC + - IPX + - IRC + - IRIS-BEEP + - ISAKMP + - ISAKMP-NAT + - ISCSI + - ISO-TSAP + - KERBEROS + - KERBEROS-ADM + - KLOGIN + - KPASSWD + - KSHELL + - L2TP + - LDAP + - LDAPS + - LDP + - LMP + - LOGIN + - LPD + - LSP-PING + - MAC-SERVER-ADM + - MATIP-A + - MATIP-B + - MICRO-BFD + - MICROSOFT-DS + - MOBILE-IP + - MONITOR + - MPP + - MS-EXCHANGE + - MSDP + - MSP + - MSSQL-M + - MSSQL-S + - MULTIHOP-BFD + - NAS + - NCP + - NETBIOS-DATA + - NETBIOS-NS + - NETBIOS-SS + - NETNEWS + - NETRJS-1 + - NETRJS-2 + - NETRJS-3 + - NETRJS-4 + - NETWALL + - NEW-RWHO + - NFS + - NNTP + - NNTPS + - NTP + - ODMR + - OLSR + - OPENVPN + - PIM-AUTO-RP + - PKIX-TIMESTAMP + - POP2 + - POP3 + - POP3S + - PPTP + - PRINT-SRV + - PTP-EVENT + - PTP-GENERAL + - QMTP + - QOTD + - RADIUS + - RADIUS-ACCT + - REMOTE-MAIL + - REMOTEFS + - REMOTECMD + - RIP + - RJE + - RLP + - RLZDB + - RMC + - RMONITOR + - RPC2PORTMAP + - RSYNC + - RTELNET + - RTSP + - SGMP + - SILC + - SMUX + - SNA-GW + - SNMP + - SNMP-TRAP + - SNPP + - SMTP + - SQL-SVCS + - SQL + - SSH + - SUBMISSION + - SUNRPC + - SVCLOC + - SYSLOG + - SYSTAT + - TACACS + - TALK + - TCPMUX + - TCPNETHASPSRV + - TFTP + - TIME + - TIMED + - UPS + - XDMCP + - XNS-CH + - XNS-MAIL + - XNS-TIME + - Z3950 + type: string + sourcePortNumber: + description: Source port to match by numerical value. + maximum: 65535 + minimum: 0 + type: integer + sourcePortOperator: + description: Operator to use when matching sourcePort, either Equals, GreaterOrEquals, or LessOrEquals. + enum: + - Equals + - GreaterOrEquals + - LessOrEquals + type: string + sourcePortRange: + description: Range of source ports to match, in the format n-m, e.g. 100-200. The start and end of the range must be port numbers. + type: string + sourcePrefix: + description: Source prefix to match. + type: string + tcpFlags: + description: Match TCP flags, usable with !, &, | and the flags RST, SYN, and ACK. + type: string + required: + - action + type: object + type: + default: AUTO + description: Type of the entry which can be IPV4, IPV6, Dot1pPolicy, DSCPPolicy, or Auto. + enum: + - IPV4 + - IPV6 + - DOT1P + - DSCP + - AUTO + type: string + required: + - type + type: object + type: array + required: + - entries + type: object + forwardingClassToQueueMapping: + description: Forwarding class to queue mapping policy. + items: + properties: + forwardingClasses: + description: The forwarding classes to which the mapping applies, these are references to ForwardingClass resources. + items: + type: string + minItems: 1 + type: array + queue: + description: The queue to which the forwarding classes are mapped, this is a reference to a Queue resource. + type: string + required: + - forwardingClasses + - queue + type: object + type: array + policers: + description: Ordered list of policers where the first policer is evaluated first before proceeding to the next. + items: + properties: + committedBurstSize: + description: Maximum CIR bucket depth in bytes. + format: int32 + maximum: 4294967295 + minimum: 0 + type: integer + committedRate: + description: The committed information rate (CIR) of the policer, defined in kilobits (1024 bits) per second. + format: int32 + type: integer + committedRatePercent: + description: The committed information rate (CIR) of the policer, defined as a percentage of the Interface speed on which it is applied. + maximum: 100 + minimum: 0 + type: integer + exceedAction: + description: Applies a drop-probability to packets that the policer has determined are exceeding (yellow). + properties: + dropProbabilityLevel: + default: Medium + enum: + - High + - Medium + - Low + type: string + type: object + forwardingClasses: + description: The list of forwarding classes with traffic to be sent to the policer. Unless specified all traffic is matched for this policer. + items: + properties: + forwardingClasses: + description: The forwarding class of the packets on which to apply the Policer. To match all traffic set this to 'ALL'. + items: + type: string + type: array + forwardingTypes: + default: + - All + items: + enum: + - Broadcast + - Unicast + - Multicast + - UnknownMulticast + - UnknownUnicast + - All + type: string + type: array + required: + - forwardingTypes + type: object + type: array + maximumBurstSize: + description: Maximum PIR bucket depth in bytes. + format: int32 + maximum: 4294967295 + minimum: 0 + type: integer + minInterfaceSpeed: + description: Minimum interface speed (kbps) to calculate PeakRate and CommittedRate for devices where configuration is not supported in percentage. + format: int32 + type: integer + peakRate: + description: The peak information rate (PIR) of the policer, defined in kilobits (1024 bits) per second. + format: int32 + type: integer + peakRatePercent: + description: The peak information rate (PIR) of the policer, defined as a percentage of the Interface speed on which it is applied. + maximum: 100 + minimum: 0 + type: integer + violateAction: + description: Applies a drop-probability to packets that the policer has determined are exceeding (red). + properties: + dropProbabilityLevel: + default: High + enum: + - High + - Medium + - Low + - All + type: string + type: object + type: object + type: array + queueManagement: + description: Queue management policy for egress queues. + items: + properties: + pfcReservedBufferPercent: + description: 'Percentage of the linecard buffer reserved for accomodating incoming traffic while upstream node reacts to generated PFC-pause frames. Note: this percentage must be common across all EgressPolicies and QueuesSets used on the same linecard.' + maximum: 100 + minimum: 0 + type: integer + queues: + description: List of queues. + items: + properties: + committedBurstSize: + description: Committed Burst Size. + format: int32 + type: integer + maximumBurstSize: + description: Maximum amount of shared buffer memory available to the queue in bytes. + format: int32 + maximum: 4294967295 + minimum: 0 + type: integer + pfcOffThreshold: + description: PFC off threshold. + maximum: 100 + minimum: 0 + type: integer + pfcOnThreshold: + description: PFC on threshold. + maximum: 100 + minimum: 0 + type: integer + pfcPauseFramePriority: + description: PFC priorities indicated in generated pfc-pause-frame if congestion occurs in a given pfc-queue. + type: integer + pfcReservedShareBufferPercent: + description: Maximum level the pfc-queue can take from pfc-reserved buffer configured per given forwarding-complex. + maximum: 100 + minimum: 0 + type: integer + queue: + description: Reference to a Queue resource. + type: string + required: + - queue + type: object + type: array + required: + - queues + type: object + type: array + type: object + status: + description: IngressPolicyStatus defines the observed state of IngressPolicy + type: object + type: object +served: true +storage: true +subresources: + status: {} diff --git a/static/resources/ingresspolicys.qos.eda.nokia.com/v1alpha1.yaml b/static/resources/25.12.1/ingresspolicys.qos.eda.nokia.com/v1alpha1.yaml similarity index 100% rename from static/resources/ingresspolicys.qos.eda.nokia.com/v1alpha1.yaml rename to static/resources/25.12.1/ingresspolicys.qos.eda.nokia.com/v1alpha1.yaml diff --git a/static/resources/inits.bootstrap.eda.nokia.com/v1alpha1.yaml b/static/resources/25.12.1/inits.bootstrap.eda.nokia.com/v1alpha1.yaml similarity index 100% rename from static/resources/inits.bootstrap.eda.nokia.com/v1alpha1.yaml rename to static/resources/25.12.1/inits.bootstrap.eda.nokia.com/v1alpha1.yaml diff --git a/static/resources/instances.netbox.eda.nokia.com/v1alpha1.yaml b/static/resources/25.12.1/instances.netbox.eda.nokia.com/v1alpha1.yaml similarity index 93% rename from static/resources/instances.netbox.eda.nokia.com/v1alpha1.yaml rename to static/resources/25.12.1/instances.netbox.eda.nokia.com/v1alpha1.yaml index 647f444..019d68a 100644 --- a/static/resources/instances.netbox.eda.nokia.com/v1alpha1.yaml +++ b/static/resources/25.12.1/instances.netbox.eda.nokia.com/v1alpha1.yaml @@ -42,10 +42,14 @@ schema: default: 1m description: Interval between NetBox instance status checks. type: string + disableWebhook: + default: false + description: If true, the instance will not reconcile the related allocations based on received NetBox webhooks. + type: boolean signatureKey: description: |- Reference to a Kubernetes secret containing NetBox - webhook signature secret. + webhook signature secret. Required if webhook is enabled. Secret must define the key `signatureKey`. type: string sync: diff --git a/static/resources/instances.snow.eda.nokia.com/v1alpha1.yaml b/static/resources/25.12.1/instances.snow.eda.nokia.com/v1alpha1.yaml similarity index 100% rename from static/resources/instances.snow.eda.nokia.com/v1alpha1.yaml rename to static/resources/25.12.1/instances.snow.eda.nokia.com/v1alpha1.yaml diff --git a/static/resources/interfacemodules.components.eda.nokia.com/v1.yaml b/static/resources/25.12.1/interfacemodules.components.eda.nokia.com/v1.yaml similarity index 100% rename from static/resources/interfacemodules.components.eda.nokia.com/v1.yaml rename to static/resources/25.12.1/interfacemodules.components.eda.nokia.com/v1.yaml diff --git a/static/resources/25.12.1/interfaces.interfaces.eda.nokia.com/v1alpha1.yaml b/static/resources/25.12.1/interfaces.interfaces.eda.nokia.com/v1alpha1.yaml new file mode 100644 index 0000000..c8b5081 --- /dev/null +++ b/static/resources/25.12.1/interfaces.interfaces.eda.nokia.com/v1alpha1.yaml @@ -0,0 +1,419 @@ +additionalPrinterColumns: + - jsonPath: .status.enabled + name: Enabled + type: boolean + - jsonPath: .status.operationalState + name: Operational State + type: string + - jsonPath: .status.speed + name: Speed + type: string + - jsonPath: .status.lastChange + name: Last Change + type: date + - jsonPath: .metadata.creationTimestamp + name: Age + type: date +name: v1alpha1 +schema: + openAPIV3Schema: + description: Interface is the Schema for the interfaces API + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + description: Interface allows for the configuration of various interface properties such as enabling/disabling the interface, setting descriptions, specifying interface types (e.g., LAG, interface, loopback), configuring VLAN encapsulation, and setting Ethernet or LAG-specific options. + properties: + ddm: + description: Enables reporting of DDM events. + type: boolean + description: + description: Description of the interface. + type: string + enabled: + default: true + description: Enable or disable the interface. + type: boolean + encapType: + default: "null" + description: Enable or disable VLAN tagging on this interface. [default="null"] + enum: + - "null" + - dot1q + type: string + ethernet: + description: Ethernet configuration options. + properties: + crcMonitor: + description: Configuration of CRC monitoring on the interface. + properties: + enabled: + description: Enables CRC monitoring on the interface. + type: boolean + signalDegrade: + description: |- + Signal degrade threshold configuration. + eda:ui:title="Signal Degrade" + properties: + exponent: + description: Threshold exponent for the signal degrade condition. + maximum: 9 + minimum: 1 + type: integer + multiplier: + description: Threshold multiplier for the signal degrade condition. + maximum: 9 + minimum: 1 + type: integer + required: + - exponent + - multiplier + type: object + signalFailure: + description: |- + Signal failure threshold configuration. + eda:ui:title="Signal Failure" + properties: + exponent: + description: Threshold exponent for the signal failure condition. + maximum: 9 + minimum: 1 + type: integer + multiplier: + description: Threshold multiplier for the signal failure condition. + maximum: 9 + minimum: 1 + type: integer + required: + - exponent + - multiplier + type: object + windowSizeSec: + description: Sliding window size over which CRC errors are measured, in number of seconds. + minimum: 1 + type: integer + type: object + fec: + description: Sets the Forward Error Correction (FEC) on the members of the interface. + enum: + - disabled + - rs528 + - rs544 + - baser + - rs108 + type: string + holdDownTimer: + description: The hold-time down behavior is triggered with events that try to bring the ethernet interface down and can change quickly. It is not triggered with an admin-state disable event or interface disable due to other internal reasons. Units in milliseconds. + format: int32 + maximum: 86400000 + minimum: 100 + type: integer + holdUpTimer: + description: The hold-time up behavior is triggered with any event that tries to bring up the ethernet interface. While the hold-time up is running, the transceiver laser will be enabled, however the higher layers will not be notified that the interface is operationally up until the timer expires. Units in milliseconds. + format: int32 + maximum: 86400000 + minimum: 100 + type: integer + loopbackMode: + description: Enable dataplane loopback on the interface. + enum: + - none + - facility + - terminal + type: string + reloadDelayTimer: + description: After the system boots, the reload-delay timer in seconds keeps an interface shut down with the laser off for a configured amount of time until connectivity with the rest of network is established. + maximum: 86400 + minimum: 1 + type: integer + speed: + description: The speed of this interface, in human-readable format - e.g. 25G, 100G. + enum: + - 100G + - 10G + - 1G + - 25G + - 40G + - 50G + - 400G + type: string + standbySignaling: + description: Indicates the standby-signaling used in the interface. + enum: + - lacp + - power-off + type: string + stormControl: + description: Enables storm control. + properties: + broadcastRate: + description: Sets the maximum rate allowed for ingress broadcast frames on the interface. + format: int32 + maximum: 100000000 + minimum: 0 + type: integer + enabled: + description: Enables storm control. + type: boolean + multicastRate: + description: Sets the maximum rate allowed for ingress multicast frames on the interface. + format: int32 + maximum: 100000000 + minimum: 0 + type: integer + units: + description: Set the units to be used for measurement. + enum: + - kbps + - percentage + type: string + unknownUnicastRate: + description: Sets the maximum rate allowed for ingress unknown unicast frames on the interface. + maximum: 100000000 + minimum: 0 + type: integer + type: object + transparentL2CPProtocols: + description: 'A list of L2CP protocols to tunnel. Options: LLDP, LACP, xSTP, Dot1x, PTP, All.' + items: + enum: + - LLDP + - LACP + - xSTP + - Dot1x + - PTP + - All + type: string + type: array + type: object + lag: + description: LAG configuration options. + properties: + lacp: + properties: + adminKey: + description: Configure the LACP admin-key to be advertised by the local system. + maximum: 65535 + minimum: 1 + type: integer + interval: + default: fast + description: Set the period between LACP messages, uses the lacp-period-type enumeration. [default="fast"] + enum: + - fast + - slow + type: string + lacpFallback: + description: LACP fallback allows one or more designated links of an LACP controlled LAG to go into forwarding mode if LACP is not yet operational after a configured timeout period. [default=disabled] + properties: + mode: + default: static + description: Specifies lacp-fallback mode if enabled. + enum: + - static + type: string + timeout: + default: 60 + description: Specifies the LACP-fallback timeout interval in seconds. [default=60] + maximum: 3600 + minimum: 4 + type: integer + type: object + mode: + default: active + description: Active is to initiate the transmission of LACP PDUs. Passive is to wait for peer to initiate the transmission of LACP PDUs.[default="active"] + enum: + - active + - passive + type: string + systemIdMac: + description: The MAC address portion of the Node's System ID. This is combined with the system priority to construct the 8-octet system-id. + type: string + systemPriority: + default: 32768 + description: System priority used by the Node on this LAG interface. Lower value is higher priority for determining which Node is the controlling system.[default=32768] + maximum: 65535 + minimum: 0 + type: integer + type: object + minLinks: + default: 1 + description: The min-link threshold specifies the minimum number of member links that must be active in order for the LAG to be operationally up. If the number of active links falls below this threshold, the entire LAG is brought operationally down.[default=1] + maximum: 64 + minimum: 1 + type: integer + multihoming: + properties: + esi: + default: auto + description: 10 byte Ethernet Segment Identifier, if not set a type 0 ESI is generated. [default=auto] + type: string + mode: + default: all-active + description: |- + "all-active": All interfaces are active. + "single-active": In a single active MH LAG, the active and standby function is handled at the sub-interface layer within a network-instance. That is, the physical interfaces within the same LAG all remain operationally up, however each sub-interface associated with a network-instance has its operational state up or down based on whether it is selected to be the active or standby sub-interface. + "port-active": When port active MH LAG is enabled, the active and standby function is handled at the interface level. + enum: + - all-active + - single-active + - port-active + type: string + preferredActiveNode: + description: To be used in single-active or port-active modes. This references the Node object and when set, the DF algorithm is configured to type preference and the selected Node is set with a higher preference value. All other Nodes have a lower value configured. + type: string + reloadDelayTimer: + default: 100 + description: After the system boots, the reload-delay timer in seconds keeps an interface shut down with the laser off for a configured amount of time until connectivity with the rest of network is established. [default=100] + maximum: 86400 + minimum: 1 + type: integer + revertive: + default: false + description: To be used in single-active or port-active modes. When true, if there is a switch of active interface in the LAG and the original interface comes back up, the LAG will switch back to using the original interface as active. [default=false] + type: boolean + type: object + type: + default: lacp + description: This type defines whether whether it is a static or LACP LAG. [default=lacp] + enum: + - lacp + - static + type: string + type: object + lldp: + default: true + description: Enable or disable LLDP on the members of the interface. + type: boolean + members: + description: List of members on which to apply properties, for single interface this would be a list of 1. + items: + properties: + aggregateId: + description: |- + When using a LAG, the aggregateId can be specified per set of interfaces on a node. + LAG interface with which this interface is associated. + type: string + description: + description: Description of the member, inherited from the interface if not provided. + type: string + enabled: + default: true + description: Enable or disable this member. + type: boolean + interface: + description: 'Reference to an interface in the normalized format. Ex: SRL ethernet-1/1 would be ethernet-1-1. SROS port 2/1/1 would be ethernet-2-1.' + type: string + lacpPortPriority: + default: 32768 + description: Configure the port priority for LACP. This value is used to determine which port should be activated with LACP fallback mode. Lower values are more preferred.[default=32768] + maximum: 65535 + minimum: 0 + type: integer + node: + description: Node name. + type: string + required: + - interface + - node + type: object + type: array + mtu: + description: MTU to apply on the interface(s). + maximum: 9500 + minimum: 1450 + type: integer + type: + default: interface + description: Type defines whether the interface is a Lag or Interface. + enum: + - lag + - interface + - loopback + type: string + required: + - members + type: object + status: + properties: + enabled: + description: The administrative status of the Interface. + type: boolean + lag: + properties: + adminKey: + type: integer + systemIdMac: + type: string + type: object + lastChange: + description: Indicates when this Interface last changed state. + type: string + members: + description: List of members in this Interface. + items: + properties: + enabled: + description: The administrative status of this member. + type: boolean + interface: + description: The name of the interface in normalized format. + type: string + lastChange: + description: Indicates when this member last changed state. + type: string + neighbors: + description: List of discovered neighbors on this member. + items: + properties: + interface: + description: The name of a neighbor interface of this member in node specific format. + type: string + node: + description: The name of a neighbor node of this member in node specific format. + type: string + type: object + type: array + node: + description: The node on which the interface is configured. + type: string + nodeInterface: + description: Node specific interface name, for example "ethernet-1/1", "1/1/c1/1". + type: string + operationalState: + description: Indicates the current operational state of this member. + type: string + speed: + description: Indicates the operational speed of the member. + type: string + required: + - nodeInterface + type: object + type: array + operationalState: + description: Indicates the current operational state of the Interface. + type: string + speed: + description: Indicates the operational speed of the Interface in aggregate. + type: string + type: object + type: object +served: true +storage: true +subresources: + status: {} diff --git a/static/resources/25.12.1/interfacestates.interfaces.eda.nokia.com/v1alpha1.yaml b/static/resources/25.12.1/interfacestates.interfaces.eda.nokia.com/v1alpha1.yaml new file mode 100644 index 0000000..de7f4ca --- /dev/null +++ b/static/resources/25.12.1/interfacestates.interfaces.eda.nokia.com/v1alpha1.yaml @@ -0,0 +1,86 @@ +name: v1alpha1 +schema: + openAPIV3Schema: + description: InterfaceState is the Schema for the interfaces API + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + properties: + enabled: + description: Enable or disabinterface. + type: boolean + lag: + properties: + adminKey: + type: integer + systemIdMac: + type: string + type: object + members: + description: List of members on which to monitor state for + items: + properties: + aggregateId: + description: LAG interface with which this interface is associated + type: string + enabled: + description: Enable or disable this member. + type: boolean + interface: + description: Normalized interface name + type: string + node: + description: Reference to the TopoNode on which this member resides + type: string + nodeInterface: + description: Node specific interface name, for example "ethernet-1/1", "1/1/c1/1" + type: string + operatingSystem: + description: The operating system of the TopoNode on which this member resides + type: string + version: + description: The version of the TopoNode on which this interface resides + type: string + required: + - interface + - node + - nodeInterface + - operatingSystem + - version + type: object + type: array + role: + default: edge + description: Role of this interface. This is used to calculate severity of alarms. [default="edge"] + enum: + - isl + - edge + - loopback + type: string + required: + - members + type: object + status: + description: InterfaceStateStatus defines the observed state of Interface + type: object + type: object +served: true +storage: true +subresources: + status: {} diff --git a/static/resources/25.12.1/ipallocationpools.core.eda.nokia.com/v1.yaml b/static/resources/25.12.1/ipallocationpools.core.eda.nokia.com/v1.yaml new file mode 100644 index 0000000..2262ba6 --- /dev/null +++ b/static/resources/25.12.1/ipallocationpools.core.eda.nokia.com/v1.yaml @@ -0,0 +1,93 @@ +name: v1 +schema: + openAPIV3Schema: + description: IPAllocationPool is the Schema for the ipallocationpools API + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + description: |- + IPAllocationPool is a generic IP allocation pool supporting allocation of IPv4 and/or IPv6 addresses from a set of segments. + It is different from IPInSubnetAllocationPool in that it returns a single unzoned IP address, i.e. an IP address without a subnet. For example a 10.1.1.0/24 segment could return 10.1.1.1. + Consult application documentation to know which pool type to use for a given use case. + properties: + publishAllocations: + description: If true, allocations in segments will be published to EDB, available to query via EQL and trigger state applications off of. + type: boolean + segments: + description: List of segments containing IPv4 or IPv6 addresses to allocate. + items: + properties: + allocateBroadcastAddress: + description: Permit the allocation of the broadcast address. + type: boolean + allocateNetworkAddress: + description: Permit the allocation of the network address. + type: boolean + allocations: + description: List of reservations to exclude from allocations from this segment. + items: + properties: + name: + description: Name of this allocation. + type: string + poolInstance: + description: Pool instance, if empty applies to all instances. + type: string + value: + description: Allocation to reserve. + type: string + required: + - name + - value + type: object + type: array + reservations: + description: List of ranges to exclude from allocations from this segment. + items: + properties: + end: + description: Value to reserve to. + type: string + start: + description: Value to start reserving. + type: string + required: + - end + - start + type: object + type: array + subnet: + description: IPv4 or IPv6 subnet, e.g. 10.1.1.0/24. + type: string + required: + - subnet + type: object + minItems: 1 + type: array + required: + - segments + type: object + status: + description: IPAllocationPoolStatus defines the observed state of IPAllocationPool + type: object + type: object +served: true +storage: true +subresources: + status: {} diff --git a/static/resources/25.12.1/ipinsubnetallocationpools.core.eda.nokia.com/v1.yaml b/static/resources/25.12.1/ipinsubnetallocationpools.core.eda.nokia.com/v1.yaml new file mode 100644 index 0000000..67d4892 --- /dev/null +++ b/static/resources/25.12.1/ipinsubnetallocationpools.core.eda.nokia.com/v1.yaml @@ -0,0 +1,93 @@ +name: v1 +schema: + openAPIV3Schema: + description: IPInSubnetAllocationPool is the Schema for the ipinsubnetallocationpools API + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + description: |- + IPInSubnetAllocationPool is a generic IP allocation pool supporting allocation of IPv4 and/or IPv6 addresses from a set of segments. + It is different from IPAllocationPool in that it returns a single zoned IP address, i.e. an IP address with a subnet. For example a 10.1.1.0/24 segment could return 10.1.1.1/24. + Consult application documentation to know which pool type to use for a given use case. + properties: + publishAllocations: + description: If true, allocations in segments will be published to EDB, available to query via EQL and trigger state applications off of. + type: boolean + segments: + description: List of segments containing IPv4 or IPv6 addresses to allocate. + items: + properties: + allocateBroadcastAddress: + description: Permit the allocation of the broadcast address. + type: boolean + allocateNetworkAddress: + description: Permit the allocation of the network address. + type: boolean + allocations: + description: List of reservations to exclude from allocations from this segment. + items: + properties: + name: + description: Name of this allocation. + type: string + poolInstance: + description: Pool instance, if empty applies to all instances. + type: string + value: + description: Allocation to reserve. + type: string + required: + - name + - value + type: object + type: array + reservations: + description: List of ranges to exclude from allocations from this segment. + items: + properties: + end: + description: Value to reserve to. + type: string + start: + description: Value to start reserving. + type: string + required: + - end + - start + type: object + type: array + subnet: + description: IPv4 or IPv6 subnet, e.g. 10.1.1.0/24. + type: string + required: + - subnet + type: object + minItems: 1 + type: array + required: + - segments + type: object + status: + description: IPInSubnetAllocationPoolStatus defines the observed state of IPInSubnetAllocationPool + type: object + type: object +served: true +storage: true +subresources: + status: {} diff --git a/static/resources/25.12.1/irbinterfaces.services.eda.nokia.com/v1.yaml b/static/resources/25.12.1/irbinterfaces.services.eda.nokia.com/v1.yaml new file mode 100644 index 0000000..b7521f4 --- /dev/null +++ b/static/resources/25.12.1/irbinterfaces.services.eda.nokia.com/v1.yaml @@ -0,0 +1,448 @@ +additionalPrinterColumns: + - jsonPath: .spec.ipMTU + name: MTU + type: string + - jsonPath: .status.operationalState + name: OperationalState + type: string + - jsonPath: .status.lastChange + name: LastChange + type: string +name: v1 +schema: + openAPIV3Schema: + description: IRBInterface is the Schema for the irbinterfaces API + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + description: The IRBInterface enables the configuration and management of Layer 3 interfaces associated with a BridgeDomain. This resource allows for the specification of various parameters, including IP MTU, learning of unsolicited ARPs, IPv4 and IPv6 addresses, and unnumbered interface settings. It also supports advanced features such as BFD configuration, Virtual IP discovery, and ARP/ND-related settings like Proxy ARP/ND and EVPN route advertisement. + properties: + anycastGatewayMAC: + description: The gateway MAC to use on the anycast address, if left empty the node will automatically assign one. + type: string + arpTimeout: + default: 14400 + description: Duration of time that dynamic ARP entries remain in the ARP cache before they expire. + format: int32 + type: integer + bfd: + description: Enable BFD on the IRBInterface. + properties: + desiredMinTransmitInt: + default: 1000000 + description: The minimum interval in microseconds between transmission of BFD control packets. + maximum: 100000000 + minimum: 10000 + type: integer + detectionMultiplier: + default: 3 + description: The number of packets that must be missed to declare this session as down. + maximum: 20 + minimum: 3 + type: integer + enabled: + default: false + description: Enables Biforward Detection. + type: boolean + minEchoReceiveInterval: + default: 0 + description: The minimum interval between echo packets the local node can receive. + maximum: 100000000 + minimum: 0 + type: integer + requiredMinReceive: + default: 1000000 + description: The minimum interval in microseconds between received BFD control packets that this system should support. + maximum: 100000000 + minimum: 10000 + type: integer + ttl: + description: Sets custom IP TTL or Hop Limit for multi-hop BFD sessions packets. Not applicable to single-hop BFD sessions. + maximum: 255 + minimum: 2 + type: integer + required: + - enabled + type: object + bridgeDomain: + description: Reference to a BridgeDomain. + type: string + description: + description: The description of the IRBInterface. + type: string + egress: + description: Manages actions on traffic at Egress. + properties: + filters: + description: List of Filter references to use at egress. + items: + type: string + type: array + qosPolicy: + description: List of QoS Egress policy references to use at egress. + items: + type: string + type: array + type: object + evpnRouteAdvertisementType: + description: Controls the type of ARP/ND entries to advertise. + properties: + arpDynamic: + default: false + description: Advertise dynamic ARP entries. + type: boolean + arpStatic: + default: false + description: Advertise static ARP entries. + type: boolean + ndDynamic: + default: false + description: Advertise dynamic ND entries. + type: boolean + ndStatic: + default: false + description: Advertise static ND entries. + type: boolean + rfc9135SymmetricMode: + description: Use RFC9135-based symmetric mode for ARP/ND host route advertisements. + type: boolean + type: object + hostRoutePopulate: + description: Configures host route population based on ARP entries. + properties: + dynamic: + default: true + description: Create host routes out of dynamic ARP entries. + type: boolean + evpn: + default: false + description: Create host routes out of EVPN learned ARP entries. + type: boolean + static: + default: true + description: Create host routes out of static ARP entries. + type: boolean + type: object + ingress: + description: Manages actions on traffic at Ingress. + properties: + filters: + description: List of Filter references to use at ingress. + items: + type: string + type: array + qosPolicy: + description: List of QoS Ingress policy references to use at ingress. + items: + type: string + type: array + type: object + ipAddresses: + items: + properties: + ipv4Address: + description: IPv4 address in IP/mask form, e.g., 192.168.0.1/24. + properties: + ipPrefix: + description: Address and mask to use + type: string + primary: + description: Indicates which address to use as primary for broadcast + type: boolean + required: + - ipPrefix + type: object + ipv6Address: + description: IPv6 address in IP/mask form, e.g., fc00::1/120. + properties: + ipPrefix: + description: Address and mask to use + type: string + primary: + description: Indicates which address to use as primary for broadcast + type: boolean + required: + - ipPrefix + type: object + node: + description: Reference to a TopoNode resource, if not specified the IP address will be assigned to all nodes on which the IRB is deployed. If specified the IP address will be assigned to the specified node. + type: string + type: object + type: array + ipMTU: + default: 1500 + description: IP MTU for the IRBInterface [default=1500]. + maximum: 9486 + minimum: 1280 + type: integer + ipv4Parameters: + description: Manages IPv4-specific additional parameters that are not applicable to IPv6. + properties: + directedBroadcast: + description: Allow receiving and forwarding of directed broadcast packets. Enabled when set to true. + type: boolean + type: object + ipv6RouterAdvertisement: + description: Manages IPV6 Router Advertisement parameters. + properties: + currentHopLimit: + default: 64 + description: The current hop limit to advertise in the router advertisement messages. + format: int32 + maximum: 255 + minimum: 0 + type: integer + enabled: + default: false + description: Enable or disable IPv6 router advertisements. + type: boolean + ipMTU: + description: The IP MTU to advertise in the router advertisement messages. + format: int32 + maximum: 9486 + minimum: 1280 + type: integer + managedConfigurationFlag: + default: false + description: Enable DHCPv6 for address configuration (M-bit). + type: boolean + maxAdvertisementInterval: + default: 600 + description: Maximum time between router advertisements (in seconds). + format: int32 + maximum: 1800 + minimum: 4 + type: integer + minAdvertisementInterval: + default: 200 + description: Minimum time between router advertisements (in seconds). + format: int32 + maximum: 1350 + minimum: 3 + type: integer + otherConfigurationFlag: + default: false + description: Enable DHCPv6 for other configuration (O-bit). + type: boolean + prefixes: + description: IPv6 prefixes to advertise in router advertisements. + items: + description: IPv6Prefix defines the configuration for an IPv6 prefix advertisement. + properties: + autonomousFlag: + default: true + description: When this is set in the prefix information option hosts can use the prefix for stateless address autoconfiguration (SLAAC). + type: boolean + onLinkFlag: + default: true + description: When this is set in the prefix information option hosts can use the prefix for on-link determination. + type: boolean + preferredLifetime: + default: 604800 + description: The length of time in seconds (relative to the time the packet is sent) that addresses generated from the prefix via stateless address autoconfiguration remain preferred. + format: int32 + maximum: 4294967295 + minimum: 0 + type: integer + prefix: + description: An IPv6 global unicast address prefix. + type: string + validLifetime: + default: 2592000 + description: The length of time in seconds (relative to the time the packet is sent) that the prefix is valid for the purpose of on-link determination. + format: int32 + maximum: 4294967295 + minimum: 0 + type: integer + required: + - prefix + type: object + type: array + reachableTime: + default: 0 + description: Time in milliseconds for Neighbor Unreachability Detection. + format: int32 + maximum: 3600000 + minimum: 0 + type: integer + retransmitTime: + default: 0 + description: Time in milliseconds between retransmitted NS messages. + format: int32 + maximum: 1800000 + minimum: 0 + type: integer + routerLifetime: + default: 1800 + description: Router lifetime in seconds for default gateway. + format: int32 + maximum: 9000 + minimum: 0 + type: integer + required: + - currentHopLimit + - enabled + - managedConfigurationFlag + - maxAdvertisementInterval + - minAdvertisementInterval + - otherConfigurationFlag + - retransmitTime + - routerLifetime + type: object + l3ProxyARPND: + description: L3 Proxy ARP and ND configuration. + properties: + proxyARP: + default: false + description: Select whether Proxy ARP should be enabled. + type: boolean + proxyND: + default: false + description: Select whether Proxy ND should be enabled. + type: boolean + type: object + learnUnsolicited: + default: NONE + description: Enable or disable learning of unsolicited ARPs. + enum: + - BOTH + - GLOBAL + - LINK-LOCAL + - NONE + type: string + router: + description: Reference to a Router. + type: string + unnumbered: + description: Enables the use of unnumbered interfaces on the IRBInterface. If IPv6 is specified, no IP address are configured on the sub-interface and only the link local address will be used. If any IP addresses are specified for either IPv4 or IPv6 that will take precedence and IPs will be assigned to the interfaces.(Deprecated, Use IPv6RouterAdvertisement) + enum: + - IPV6 + type: string + virtualIPDiscovery: + description: Configuration for Virtual IP discovery on the interface. + items: + properties: + address: + description: Virtual IP Address. + type: string + allowedMAC: + description: List of allowed MAC addresses for a discovered virtual IP address. + items: + type: string + type: array + bridgeInterfaceToProbe: + description: List of BridgeInterfaces on the associated MAC-VRF to which the ARP probes are sent. If left blank, the probes are sent on all BridgeInterfaces associated with the BridgeDomain. + items: + type: string + type: array + probeInterval: + default: 0 + description: ARP probe interval in seconds. + maximum: 86400 + minimum: 0 + type: integer + vlanToProbe: + description: List of VLANs on the associated BridgeDomain to which the ARP probes are sent. If left blank, the probes are sent on all VLANs associated with the BridgeDomain. + items: + type: string + type: array + required: + - address + type: object + type: array + required: + - bridgeDomain + - router + type: object + status: + description: IRBInterfaceStatus defines the observed state of IRBInterface + properties: + health: + description: Indicates the health score of the VNET. + type: integer + healthScoreReason: + description: Explains the reason for the health score. + type: string + interfaces: + description: Details of the interfaces associated with the IRB. + items: + properties: + enabled: + description: Administrative status of the SubInterface. + type: boolean + ipv4Addresses: + description: List of IPv4 addresses + items: + properties: + ipPrefix: + description: Address and mask to use + type: string + primary: + description: Indicates which address to use as primary for broadcast + type: boolean + required: + - ipPrefix + type: object + type: array + ipv6Addresses: + description: List of IPv6 addresses + items: + properties: + ipPrefix: + description: Address and mask to use + type: string + primary: + description: Indicates which address to use as primary for broadcast + type: boolean + required: + - ipPrefix + type: object + type: array + lastChange: + description: Timestamp of when this SubInterface last changed state. + type: string + node: + description: Reference to Node object. + type: string + nodeInterface: + description: Node specific interface name. + type: string + operatingSystem: + description: Operating System of the Node. + type: string + operationalState: + description: Current operational state of the SubInterface. + type: string + required: + - node + - nodeInterface + type: object + type: array + lastChange: + description: Timestamp of the last state change. + type: string + operationalState: + description: Operational state of the VNET. + type: string + type: object + type: object +served: true +storage: true +subresources: + status: {} diff --git a/static/resources/25.12.1/irbinterfaces.services.eda.nokia.com/v1alpha1.yaml b/static/resources/25.12.1/irbinterfaces.services.eda.nokia.com/v1alpha1.yaml new file mode 100644 index 0000000..a50dc25 --- /dev/null +++ b/static/resources/25.12.1/irbinterfaces.services.eda.nokia.com/v1alpha1.yaml @@ -0,0 +1,445 @@ +additionalPrinterColumns: + - jsonPath: .spec.ipMTU + name: MTU + type: string + - jsonPath: .status.operationalState + name: OperationalState + type: string + - jsonPath: .status.lastChange + name: LastChange + type: string +deprecated: true +deprecationWarning: This version is deprecated and will no longer be supported in the next version. +name: v1alpha1 +schema: + openAPIV3Schema: + description: IRBInterface is the Schema for the irbinterfaces API + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + description: The IRBInterface enables the configuration and management of Layer 3 interfaces associated with a BridgeDomain. This resource allows for the specification of various parameters, including IP MTU, learning of unsolicited ARPs, IPv4 and IPv6 addresses, and unnumbered interface settings. It also supports advanced features such as BFD configuration, Virtual IP discovery, and ARP/ND-related settings like Proxy ARP/ND and EVPN route advertisement. + properties: + anycastGatewayMAC: + description: The gateway MAC to use on the anycast address, if left empty the node will automatically assign one. + type: string + arpTimeout: + default: 14400 + description: Duration of time that dynamic ARP entries remain in the ARP cache before they expire. + format: int32 + type: integer + bfd: + description: Enable BFD on the IRBInterface. + properties: + desiredMinTransmitInt: + default: 1000000 + description: The minimum interval in microseconds between transmission of BFD control packets. + maximum: 100000000 + minimum: 10000 + type: integer + detectionMultiplier: + default: 3 + description: The number of packets that must be missed to declare this session as down. + maximum: 20 + minimum: 3 + type: integer + enabled: + default: false + description: Enables Biforward Detection. + type: boolean + minEchoReceiveInterval: + default: 0 + description: The minimum interval between echo packets the local node can receive. + maximum: 100000000 + minimum: 0 + type: integer + requiredMinReceive: + default: 1000000 + description: The minimum interval in microseconds between received BFD control packets that this system should support. + maximum: 100000000 + minimum: 10000 + type: integer + ttl: + description: Sets custom IP TTL or Hop Limit for multi-hop BFD sessions packets. Not applicable to single-hop BFD sessions. + maximum: 255 + minimum: 2 + type: integer + required: + - enabled + type: object + bridgeDomain: + description: Reference to a BridgeDomain. + type: string + description: + description: The description of the IRBInterface. + type: string + egress: + description: Manages actions on traffic at Egress. + properties: + filters: + description: List of Filter references to use at egress. + items: + type: string + type: array + qosPolicy: + description: List of QoS Egress policy references to use at egress. + items: + type: string + type: array + type: object + evpnRouteAdvertisementType: + description: Controls the type of ARP/ND entries to advertise. + properties: + arpDynamic: + default: false + description: Advertise dynamic ARP entries. + type: boolean + arpStatic: + default: false + description: Advertise static ARP entries. + type: boolean + ndDynamic: + default: false + description: Advertise dynamic ND entries. + type: boolean + ndStatic: + default: false + description: Advertise static ND entries. + type: boolean + type: object + hostRoutePopulate: + description: Configures host route population based on ARP entries. + properties: + dynamic: + default: true + description: Create host routes out of dynamic ARP entries. + type: boolean + evpn: + default: false + description: Create host routes out of EVPN learned ARP entries. + type: boolean + static: + default: true + description: Create host routes out of static ARP entries. + type: boolean + type: object + ingress: + description: Manages actions on traffic at Ingress. + properties: + filters: + description: List of Filter references to use at ingress. + items: + type: string + type: array + qosPolicy: + description: List of QoS Ingress policy references to use at ingress. + items: + type: string + type: array + type: object + ipAddresses: + items: + properties: + ipv4Address: + description: IPv4 address in IP/mask form, e.g., 192.168.0.1/24. + properties: + ipPrefix: + description: Address and mask to use + type: string + primary: + description: Indicates which address to use as primary for broadcast + type: boolean + required: + - ipPrefix + type: object + ipv6Address: + description: IPv6 address in IP/mask form, e.g., fc00::1/120. + properties: + ipPrefix: + description: Address and mask to use + type: string + primary: + description: Indicates which address to use as primary for broadcast + type: boolean + required: + - ipPrefix + type: object + node: + description: Reference to a TopoNode resource, if not specified the IP address will be assigned to all nodes on which the IRB is deployed. If specified the IP address will be assigned to the specified node. + type: string + type: object + type: array + ipMTU: + default: 1500 + description: IP MTU for the IRBInterface [default=1500]. + maximum: 9486 + minimum: 1280 + type: integer + ipv4Parameters: + properties: + directedBroadcast: + description: Allow receiving and forwarding of directed broadcast packets. Enabled when set to true. + type: boolean + type: object + ipv6RouterAdvertisement: + properties: + currentHopLimit: + default: 64 + description: The current hop limit to advertise in the router advertisement messages. + format: int32 + maximum: 255 + minimum: 0 + type: integer + enabled: + default: false + description: Enable or disable IPv6 router advertisements. + type: boolean + ipMTU: + description: The IP MTU to advertise in the router advertisement messages. + format: int32 + maximum: 9486 + minimum: 1280 + type: integer + managedConfigurationFlag: + default: false + description: Enable DHCPv6 for address configuration (M-bit). + type: boolean + maxAdvertisementInterval: + default: 600 + description: Maximum time between router advertisements (in seconds). + format: int32 + maximum: 1800 + minimum: 4 + type: integer + minAdvertisementInterval: + default: 200 + description: Minimum time between router advertisements (in seconds). + format: int32 + maximum: 1350 + minimum: 3 + type: integer + otherConfigurationFlag: + default: false + description: Enable DHCPv6 for other configuration (O-bit). + type: boolean + prefixes: + description: IPv6 prefixes to advertise in router advertisements. + items: + description: IPv6Prefix defines the configuration for an IPv6 prefix advertisement. + properties: + autonomousFlag: + default: true + description: When this is set in the prefix information option hosts can use the prefix for stateless address autoconfiguration (SLAAC). + type: boolean + onLinkFlag: + default: true + description: When this is set in the prefix information option hosts can use the prefix for on-link determination. + type: boolean + preferredLifetime: + default: 604800 + description: The length of time in seconds (relative to the time the packet is sent) that addresses generated from the prefix via stateless address autoconfiguration remain preferred. + format: int32 + maximum: 4294967295 + minimum: 0 + type: integer + prefix: + description: An IPv6 global unicast address prefix. + type: string + validLifetime: + default: 2592000 + description: The length of time in seconds (relative to the time the packet is sent) that the prefix is valid for the purpose of on-link determination. + format: int32 + maximum: 4294967295 + minimum: 0 + type: integer + required: + - prefix + type: object + type: array + reachableTime: + default: 0 + description: Time in milliseconds for Neighbor Unreachability Detection. + format: int32 + maximum: 3600000 + minimum: 0 + type: integer + retransmitTime: + default: 0 + description: Time in milliseconds between retransmitted NS messages. + format: int32 + maximum: 1800000 + minimum: 0 + type: integer + routerLifetime: + default: 1800 + description: Router lifetime in seconds for default gateway. + format: int32 + maximum: 9000 + minimum: 0 + type: integer + required: + - currentHopLimit + - enabled + - managedConfigurationFlag + - maxAdvertisementInterval + - minAdvertisementInterval + - otherConfigurationFlag + - retransmitTime + - routerLifetime + type: object + l3ProxyARPND: + description: L3 Proxy ARP and ND configuration. + properties: + proxyARP: + default: false + description: Select whether Proxy ARP should be enabled. + type: boolean + proxyND: + default: false + description: Select whether Proxy ND should be enabled. + type: boolean + type: object + learnUnsolicited: + default: NONE + description: Enable or disable learning of unsolicited ARPs. + enum: + - BOTH + - GLOBAL + - LINK-LOCAL + - NONE + type: string + router: + description: Reference to a Router. + type: string + unnumbered: + description: Enables the use of unnumbered interfaces on the IRBInterface. If IPv6 is specified, no IP address are configured on the sub-interface and only the link local address will be used. If any IP addresses are specified for either IPv4 or IPv6 that will take precedence and IPs will be assigned to the interfaces.(Deprecated, Use IPv6RouterAdvertisement) + enum: + - IPV6 + type: string + virtualIPDiscovery: + description: Configuration for Virtual IP discovery on the interface. + items: + properties: + address: + description: Virtual IP Address. + type: string + allowedMAC: + description: List of allowed MAC addresses for a discovered virtual IP address. + items: + type: string + type: array + bridgeInterfaceToProbe: + description: List of BridgeInterfaces on the associated MAC-VRF to which the ARP probes are sent. If left blank, the probes are sent on all BridgeInterfaces associated with the BridgeDomain. + items: + type: string + type: array + probeInterval: + default: 0 + description: ARP probe interval in seconds. + maximum: 86400 + minimum: 0 + type: integer + vlanToProbe: + description: List of VLANs on the associated BridgeDomain to which the ARP probes are sent. If left blank, the probes are sent on all VLANs associated with the BridgeDomain. + items: + type: string + type: array + required: + - address + type: object + type: array + required: + - bridgeDomain + - router + type: object + status: + description: IRBInterfaceStatus defines the observed state of IRBInterface + properties: + health: + description: Indicates the health score of the VNET. + type: integer + healthScoreReason: + description: Explains the reason for the health score. + type: string + interfaces: + description: Details of the interfaces associated with the IRB. + items: + properties: + enabled: + description: Administrative status of the SubInterface. + type: boolean + ipv4Addresses: + description: List of IPv4 addresses + items: + properties: + ipPrefix: + description: Address and mask to use + type: string + primary: + description: Indicates which address to use as primary for broadcast + type: boolean + required: + - ipPrefix + type: object + type: array + ipv6Addresses: + description: List of IPv6 addresses + items: + properties: + ipPrefix: + description: Address and mask to use + type: string + primary: + description: Indicates which address to use as primary for broadcast + type: boolean + required: + - ipPrefix + type: object + type: array + lastChange: + description: Timestamp of when this SubInterface last changed state. + type: string + node: + description: Reference to Node object. + type: string + nodeInterface: + description: Node specific interface name. + type: string + operatingSystem: + description: Operating System of the Node. + type: string + operationalState: + description: Current operational state of the SubInterface. + type: string + required: + - node + - nodeInterface + type: object + type: array + lastChange: + description: Timestamp of the last state change. + type: string + operationalState: + description: Operational state of the VNET. + type: string + type: object + type: object +served: true +storage: false +subresources: + status: {} diff --git a/static/resources/25.12.1/irbinterfacestates.services.eda.nokia.com/v1.yaml b/static/resources/25.12.1/irbinterfacestates.services.eda.nokia.com/v1.yaml new file mode 100644 index 0000000..a0f029b --- /dev/null +++ b/static/resources/25.12.1/irbinterfacestates.services.eda.nokia.com/v1.yaml @@ -0,0 +1,94 @@ +name: v1 +schema: + openAPIV3Schema: + description: IRBInterfaceState is the Schema for the irbinterfacestates API + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + description: IRBInterfaceStateSpec defines the desired state of IRBInterfaceState + properties: + bridgeDomain: + description: Router the IRBInterface is attached to + type: string + bridgeDomainConfiguredName: + type: string + interfaces: + items: + properties: + ipv4Addresses: + description: List of IPv4 addresses + items: + properties: + ipPrefix: + description: Address and mask to use + type: string + primary: + description: Indicates which address to use as primary for broadcast + type: boolean + required: + - ipPrefix + type: object + type: array + ipv6Addresses: + description: List of IPv6 addresses + items: + properties: + ipPrefix: + description: Address and mask to use + type: string + primary: + description: Indicates which address to use as primary for broadcast + type: boolean + required: + - ipPrefix + type: object + type: array + node: + description: Reference to Node object. + type: string + nodeInterface: + description: Node specific interface name. + type: string + operatingSystem: + description: Operating System of the Node. + type: string + required: + - node + - nodeInterface + type: object + type: array + router: + description: Router the IRBInterface is attached to + type: string + routerConfiguredName: + type: string + required: + - bridgeDomain + - bridgeDomainConfiguredName + - router + - routerConfiguredName + type: object + status: + description: IRBInterfaceStateStatus defines the observed state of IRBInterfaceState + type: object + type: object +served: true +storage: true +subresources: + status: {} diff --git a/static/resources/irbinterfacestates.services.eda.nokia.com/v1alpha1.yaml b/static/resources/25.12.1/irbinterfacestates.services.eda.nokia.com/v1alpha1.yaml similarity index 100% rename from static/resources/irbinterfacestates.services.eda.nokia.com/v1alpha1.yaml rename to static/resources/25.12.1/irbinterfacestates.services.eda.nokia.com/v1alpha1.yaml diff --git a/static/resources/islpings.fabrics.eda.nokia.com/v1alpha1.yaml b/static/resources/25.12.1/islpings.fabrics.eda.nokia.com/v1alpha1.yaml similarity index 100% rename from static/resources/islpings.fabrics.eda.nokia.com/v1alpha1.yaml rename to static/resources/25.12.1/islpings.fabrics.eda.nokia.com/v1alpha1.yaml diff --git a/static/resources/25.12.1/isls.fabrics.eda.nokia.com/v1alpha1.yaml b/static/resources/25.12.1/isls.fabrics.eda.nokia.com/v1alpha1.yaml new file mode 100644 index 0000000..fcd276c --- /dev/null +++ b/static/resources/25.12.1/isls.fabrics.eda.nokia.com/v1alpha1.yaml @@ -0,0 +1,267 @@ +additionalPrinterColumns: + - jsonPath: .status.lastChange + name: Last Change + type: date + - jsonPath: .status.operationalState + name: Operational State + type: string +name: v1alpha1 +schema: + openAPIV3Schema: + description: ISL is the Schema for the isls API + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + description: The ISL enables the configuration and management of direct links between Nodes. This resource allows for specifying IPv4 and IPv6 allocation pools, enabling BFD for fast failure detection, and configuring VLAN IDs for the ISL. It also supports BGP peering between the endpoints, with options for setting autonomous systems, AFI/SAFI configurations, and import/export routing policies. + properties: + bfd: + description: Enable or disable BFD on the ISL. [default=false] + properties: + desiredMinTransmitInt: + default: 1000000 + description: The minimum interval in microseconds between transmission of BFD control packets. + maximum: 100000000 + minimum: 10000 + type: integer + detectionMultiplier: + default: 3 + description: The number of packets that must be missed to declare this session as down. + maximum: 20 + minimum: 3 + type: integer + enabled: + default: false + description: Enable Biforward Detection. + type: boolean + minEchoReceiveInterval: + default: 1000000 + description: The minimum interval between echo packets the local node can receive in microseconds. + maximum: 100000000 + minimum: 0 + type: integer + requiredMinReceive: + default: 1000000 + description: The minimum interval in microseconds between received BFD control packets that this system should support. + maximum: 100000000 + minimum: 10000 + type: integer + ttl: + description: Sets custom IP TTL or Hop Limit for multi-hop BFD sessions packets. Not applicable to single-hop BFD sessions. + maximum: 255 + minimum: 2 + type: integer + type: object + bgp: + properties: + afiSAFI: + description: 'Which AFI and SAFI to advertise on the BGP peering session. Options: ipv4unicast, ipv6unicast, l2vpnevpn' + items: + type: string + type: array + bgpGroup: + description: Reference to a DefaultBgpGroup. + type: string + enabled: + default: false + description: Enable or disable BGP peering between the two endpoints of the ISL. [default=false] + type: boolean + exportPolicy: + description: Reference to a RoutingPolicy to use when evaluating route exports from the DefaultRouter. + items: + type: string + type: array + importPolicy: + description: Reference to a RoutingPolicy to use when evaluating route imports into the DefaultRouter. + items: + type: string + type: array + keychain: + description: Keychain to be used for authentication + type: string + localInterfaceAS: + description: The Autonomous System to configure on the Local Interface. + format: int32 + maximum: 4294967295 + minimum: 0 + type: integer + remoteInterfaceAS: + description: The Autonomous System to configure on the Remote Interface. + format: int32 + maximum: 4294967295 + minimum: 0 + type: integer + required: + - enabled + - localInterfaceAS + - remoteInterfaceAS + type: object + ipMTU: + description: Sets the IP MTU for the local and remote Interfaces + maximum: 9486 + minimum: 1280 + type: integer + localDefaultRouter: + description: Reference to the DefautlRouter associated with the local Interface in which the ISL will be provisioned. + type: string + localInterface: + description: Reference to an Interface. + type: string + ospf: + description: Enable or disable OSPF on the ISL. + properties: + enabled: + description: |- + Enable or disable OSPF between the two endpoints of the ISL. + kubebuilder:validation:Boolean + type: boolean + ospfv2: + description: OSPFv2 Parameters. + properties: + localIPV4Area: + description: Reference to a IPV4 DefaultOSPFArea on the local interface. + type: string + localIPV4Instance: + description: Reference to a IPV4 DefaultOSPFInstance on the local interface. + type: string + remoteIPV4Area: + description: Reference to a IPV4 DefaultOSPFArea on the remote interface. + type: string + remoteIPV4Instance: + description: Reference to a IPV4 DefaultOSPFInstance on the remote interface + type: string + type: object + ospfv3: + description: OSPFv3 Parameters. + properties: + localIPV4Area: + description: Reference to a IPV4 DefaultOSPFArea on the local interface. + type: string + localIPV4Instance: + description: Reference to a IPV4 DefaultOSPFInstance on the local interface + type: string + localIPV6Area: + description: Reference to a IPV6 DefaultOSPFArea on the local interface. + type: string + localIPV6Instance: + description: Reference to a IPV6 DefaultOSPFInstance on the local interface. + type: string + remoteIPV4Area: + description: Reference to a IPV4 DefaultOSPFArea on the remote interface. + type: string + remoteIPV4Instance: + description: Reference to a IPV4 DefaultOSPFInstance on the remote interface + type: string + remoteIPV6Area: + description: Reference to a IPV6 DefaultOSPFArea on the remote interface. + type: string + remoteIPV6Instance: + description: Reference to a IPV6 DefaultOSPFInstance on the remote interface. + type: string + type: object + required: + - enabled + type: object + poolIPV4: + description: Reference to an IPv4 allocation pool to use for ISL subnet allocations. + type: string + poolIPV6: + description: Reference to an IPv6 allocation pool to use for ISL subnet allocations. + type: string + qos: + properties: + egressPolicy: + type: string + ingressPolicy: + type: string + type: object + remoteDefaultRouter: + description: Reference to the DefautlRouter associated with the remote Interface in which the ISL will be provisioned. + type: string + remoteInterface: + description: Reference to an Interface + type: string + unnumbered: + description: Enables the use of unnumbered interfaces on the ISL. For IPv6, no IP address are configured on the sub-interface and only the link local address will be used. If any allocation pool is specified for IPv6 that will take precedence and IPs will be assigned to the interfaces. When using eBGP for an underlay protocol, the DefaultInterfaces which are a part of the ISL will be added to the BGP dynamic neighbor list. + enum: + - IPV6 + type: string + vlanID: + description: Single VLAN tag value between 1-4094. + maximum: 4094 + minimum: 1 + type: integer + required: + - localDefaultRouter + - localInterface + - remoteDefaultRouter + - remoteInterface + type: object + status: + description: ISLStatus defines the observed state of ISL + properties: + health: + description: Indicates the health score of the ISL + type: integer + healthScoreReason: + description: Indicates the reason for the health score + type: string + lastChange: + description: The time when the state of the resource last changed + type: string + localInterface: + description: Local Interface + properties: + IPv4Address: + description: Local Interface IPv4 address + type: string + IPv6Address: + description: Local Interface IPv4 address + type: string + defaultInterface: + description: Reference to the DefaulInterface associated with the local interface + type: string + node: + description: Reference to the TopoNode on which the local interface is configured + type: string + type: object + operationalState: + description: Operational state of the ISL + type: string + remoteInterface: + description: Remote Interface + properties: + IPv4Address: + description: Remote Interface IPv4 address + type: string + IPv6Address: + description: Remote Interface IPv6 address + type: string + defaultInterface: + description: Reference to the DefaulInterface associated with the remote interface + type: string + node: + description: Reference to the TopoNode on which the remote interface is configured + type: string + type: object + type: object + type: object +served: true +storage: true +subresources: + status: {} diff --git a/static/resources/25.12.1/islstates.fabrics.eda.nokia.com/v1alpha1.yaml b/static/resources/25.12.1/islstates.fabrics.eda.nokia.com/v1alpha1.yaml new file mode 100644 index 0000000..ab573a3 --- /dev/null +++ b/static/resources/25.12.1/islstates.fabrics.eda.nokia.com/v1alpha1.yaml @@ -0,0 +1,140 @@ +name: v1alpha1 +schema: + openAPIV3Schema: + description: ISLState is the Schema for the islstates API + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + description: ISLStateSpec defines the desired state of ISLState + properties: + localInterface: + properties: + BGPPeerIPV4: + description: Reference to the IPV4 BGPPeer created for the local peer + type: string + BGPPeerIPV6: + description: Reference to the IPV6 BGPPeer created for the local peer + type: string + IPv4Address: + description: Local Interface IPv4 address + type: string + IPv6Address: + description: Local Interface IPv4 address + type: string + OSPFV2: + description: Reference to the OSPV2 State of the local interface + properties: + OSPFInterfaceIPV4: + description: Reference to the IPV4 OSPF Interface + type: string + type: object + OSPFV3: + description: Reference to the OSPV3 State of the local interface + properties: + OSPFInterfaceIPV4: + description: Reference to the IPV4 OSPF Interface + type: string + OSPFInterfaceIPV6: + description: Reference to the IPV6 OSPF Interface + type: string + type: object + defaultInterface: + description: Reference to the DefaultInterface configured on the local node + type: string + dynamicBGPPeerIPV6: + description: Reference to the dynamic IPV6 BGPPeer created for the local peer + type: string + node: + description: Reference to the TopoNode on which the local interface is configured + type: string + required: + - defaultInterface + type: object + poolIPV4Enabled: + description: Indicates if IPV4 pool is enabled on the isl interface + type: boolean + poolIPV6Enabled: + description: Indicates if IPV6 pool is enabled on the isl interface + type: boolean + protocols: + description: List of configured protocols on the BGP peer + items: + type: string + type: array + remoteInterface: + properties: + BGPPeerIPV4: + description: Reference to the IPV4 BGPPeer created for the remote peer + type: string + BGPPeerIPV6: + description: Reference to the IPV6 BGPPeer created for the remote peer + type: string + IPv4Address: + description: Remote Interface IPv4 address + type: string + IPv6Address: + description: Remote Interface IPv4 address + type: string + OSPFV2: + description: Reference to the OSPV2 State of the remote interface + properties: + OSPFInterfaceIPV4: + description: Reference to the IPV4 OSPF Interface + type: string + type: object + OSPFV3: + description: Reference to the OSPV3 State of the remote interface + properties: + OSPFInterfaceIPV4: + description: Reference to the IPV4 OSPF Interface + type: string + OSPFInterfaceIPV6: + description: Reference to the IPV6 OSPF Interface + type: string + type: object + defaultInterface: + description: Reference to the DefaultInterface configured on the remote node + type: string + dynamicBGPPeerIPV6: + description: Reference to the dynamic IPV6 BGPPeer created for the remote peer + type: string + node: + description: Reference to the TopoNode on which the remote interface is configured + type: string + required: + - defaultInterface + type: object + unnumbered: + description: Indicates the dynamic peering type that is enabled on the isl interface. + type: string + required: + - localInterface + - poolIPV4Enabled + - poolIPV6Enabled + - protocols + - remoteInterface + type: object + status: + description: ISLStateStatus defines the observed state of ISLState + type: object + type: object +served: true +storage: true +subresources: + status: {} diff --git a/static/resources/keychaindeployments.security.eda.nokia.com/v1alpha1.yaml b/static/resources/25.12.1/keychaindeployments.security.eda.nokia.com/v1alpha1.yaml similarity index 100% rename from static/resources/keychaindeployments.security.eda.nokia.com/v1alpha1.yaml rename to static/resources/25.12.1/keychaindeployments.security.eda.nokia.com/v1alpha1.yaml diff --git a/static/resources/keychains.security.eda.nokia.com/v1alpha1.yaml b/static/resources/25.12.1/keychains.security.eda.nokia.com/v1alpha1.yaml similarity index 100% rename from static/resources/keychains.security.eda.nokia.com/v1alpha1.yaml rename to static/resources/25.12.1/keychains.security.eda.nokia.com/v1alpha1.yaml diff --git a/static/resources/licenses.core.eda.nokia.com/v1.yaml b/static/resources/25.12.1/licenses.core.eda.nokia.com/v1.yaml similarity index 100% rename from static/resources/licenses.core.eda.nokia.com/v1.yaml rename to static/resources/25.12.1/licenses.core.eda.nokia.com/v1.yaml diff --git a/static/resources/lldpoverlays.topologies.eda.nokia.com/v1alpha1.yaml b/static/resources/25.12.1/lldpoverlays.topologies.eda.nokia.com/v1alpha1.yaml similarity index 100% rename from static/resources/lldpoverlays.topologies.eda.nokia.com/v1alpha1.yaml rename to static/resources/25.12.1/lldpoverlays.topologies.eda.nokia.com/v1alpha1.yaml diff --git a/static/resources/25.12.1/managementrouters.bootstrap.eda.nokia.com/v1alpha1.yaml b/static/resources/25.12.1/managementrouters.bootstrap.eda.nokia.com/v1alpha1.yaml new file mode 100644 index 0000000..be417df --- /dev/null +++ b/static/resources/25.12.1/managementrouters.bootstrap.eda.nokia.com/v1alpha1.yaml @@ -0,0 +1,56 @@ +name: v1alpha1 +schema: + openAPIV3Schema: + description: ManagementRouter is the Schema for the managementrouters API + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + description: ManagementRouterSpec defines the desired state of ManagementRouter + properties: + nodeSelector: + description: Selects TopoNodes on which to configure the management VRF. When left empty, all TopoNodes are selected. + items: + type: string + type: array + nodes: + description: List of TopoNodes on which to configure the management VRF. When left empty, all TopoNodes are selected. + items: + type: string + type: array + staticRoutes: + description: Optional list of static routes to add to the management network instance as part of the initial configuration. + items: + properties: + nextHop: + description: Static route next hop. + type: string + prefix: + description: Static route prefix. + type: string + type: object + type: array + type: object + status: + description: ManagementRouterStatus defines the observed state of ManagementRouter + type: object + type: object +served: true +storage: true +subresources: + status: {} diff --git a/static/resources/managementrouterstates.bootstrap.eda.nokia.com/v1alpha1.yaml b/static/resources/25.12.1/managementrouterstates.bootstrap.eda.nokia.com/v1alpha1.yaml similarity index 100% rename from static/resources/managementrouterstates.bootstrap.eda.nokia.com/v1alpha1.yaml rename to static/resources/25.12.1/managementrouterstates.bootstrap.eda.nokia.com/v1alpha1.yaml diff --git a/static/resources/25.12.1/manifest.json b/static/resources/25.12.1/manifest.json new file mode 100644 index 0000000..cd188a4 --- /dev/null +++ b/static/resources/25.12.1/manifest.json @@ -0,0 +1,2375 @@ +[ + { + "name": "aggregateroutes.protocols.eda.nokia.com", + "group": "protocols.eda.nokia.com", + "kind": "AggregateRoute", + "versions": [ + { + "name": "v1", + "appVersion": "v4.0.1" + }, + { + "name": "v1alpha1", + "deprecated": true, + "appVersion": "v3.0.2+25.4.3" + } + ] + }, + { + "name": "alarmdefinitions.core.eda.nokia.com", + "group": "core.eda.nokia.com", + "kind": "", + "versions": [ + { + "name": "v1" + } + ] + }, + { + "name": "alarms.core.eda.nokia.com", + "group": "core.eda.nokia.com", + "kind": "Alarm", + "versions": [ + { + "name": "v1" + } + ] + }, + { + "name": "allocations.netbox.eda.nokia.com", + "group": "netbox.eda.nokia.com", + "kind": "Allocation", + "versions": [ + { + "name": "v1alpha1", + "appVersion": "v2.0.0" + } + ] + }, + { + "name": "appinstallers.appstore.eda.nokia.com", + "group": "appstore.eda.nokia.com", + "kind": "AppInstaller", + "versions": [ + { + "name": "v1" + } + ] + }, + { + "name": "applyallocations.netbox.eda.nokia.com", + "group": "netbox.eda.nokia.com", + "kind": "", + "versions": [ + { + "name": "v1alpha1" + } + ] + }, + { + "name": "artifacts.artifacts.eda.nokia.com", + "group": "artifacts.eda.nokia.com", + "kind": "Artifact", + "versions": [ + { + "name": "v1" + } + ] + }, + { + "name": "aspathsetdeployments.routingpolicies.eda.nokia.com", + "group": "routingpolicies.eda.nokia.com", + "kind": "ASPathSetDeployment", + "versions": [ + { + "name": "v1alpha1", + "appVersion": "v4.0.1" + } + ] + }, + { + "name": "aspathsets.routingpolicies.eda.nokia.com", + "group": "routingpolicies.eda.nokia.com", + "kind": "ASPathSet", + "versions": [ + { + "name": "v1alpha1", + "appVersion": "v4.0.1" + } + ] + }, + { + "name": "attachmentlookups.routing.eda.nokia.com", + "group": "routing.eda.nokia.com", + "kind": "AttachmentLookup", + "versions": [ + { + "name": "v1alpha1", + "appVersion": "v4.0.1" + } + ] + }, + { + "name": "backends.aifabrics.eda.nokia.com", + "group": "aifabrics.eda.nokia.com", + "kind": "Backend", + "versions": [ + { + "name": "v1alpha1", + "appVersion": "v4.0.1" + } + ] + }, + { + "name": "backendstates.aifabrics.eda.nokia.com", + "group": "aifabrics.eda.nokia.com", + "kind": "", + "versions": [ + { + "name": "v1alpha1" + } + ] + }, + { + "name": "banners.siteinfo.eda.nokia.com", + "group": "siteinfo.eda.nokia.com", + "kind": "Banner", + "versions": [ + { + "name": "v1alpha1", + "appVersion": "v4.0.1" + } + ] + }, + { + "name": "bannerstates.siteinfo.eda.nokia.com", + "group": "siteinfo.eda.nokia.com", + "kind": "", + "versions": [ + { + "name": "v1alpha1" + } + ] + }, + { + "name": "bgpgroupdeployments.protocols.eda.nokia.com", + "group": "protocols.eda.nokia.com", + "kind": "BGPGroupDeployment", + "versions": [ + { + "name": "v1", + "appVersion": "v4.0.1" + }, + { + "name": "v1alpha1", + "deprecated": true, + "appVersion": "v3.0.2+25.4.3" + } + ] + }, + { + "name": "bgpgroups.protocols.eda.nokia.com", + "group": "protocols.eda.nokia.com", + "kind": "BGPGroup", + "versions": [ + { + "name": "v1", + "appVersion": "v4.0.1" + }, + { + "name": "v1alpha1", + "deprecated": true, + "appVersion": "v3.0.2+25.4.3" + } + ] + }, + { + "name": "bgpgroupstates.protocols.eda.nokia.com", + "group": "protocols.eda.nokia.com", + "kind": "", + "versions": [ + { + "name": "v1" + }, + { + "name": "v1alpha1", + "deprecated": true + } + ] + }, + { + "name": "bgppeers.protocols.eda.nokia.com", + "group": "protocols.eda.nokia.com", + "kind": "BGPPeer", + "versions": [ + { + "name": "v1", + "appVersion": "v4.0.1" + }, + { + "name": "v1alpha1", + "deprecated": true, + "appVersion": "v3.0.2+25.4.3" + } + ] + }, + { + "name": "bgppeerstates.protocols.eda.nokia.com", + "group": "protocols.eda.nokia.com", + "kind": "", + "versions": [ + { + "name": "v1" + }, + { + "name": "v1alpha1", + "deprecated": true + } + ] + }, + { + "name": "breakouts.interfaces.eda.nokia.com", + "group": "interfaces.eda.nokia.com", + "kind": "Breakout", + "versions": [ + { + "name": "v1alpha1", + "appVersion": "v4.0.1" + } + ] + }, + { + "name": "bridgedomaindeployments.services.eda.nokia.com", + "group": "services.eda.nokia.com", + "kind": "BridgeDomainDeployment", + "versions": [ + { + "name": "v1", + "appVersion": "v4.0.1" + }, + { + "name": "v1alpha1", + "deprecated": true, + "appVersion": "v3.0.2+25.4.3" + } + ] + }, + { + "name": "bridgedomains.services.eda.nokia.com", + "group": "services.eda.nokia.com", + "kind": "BridgeDomain", + "versions": [ + { + "name": "v1", + "appVersion": "v4.0.1" + }, + { + "name": "v1alpha1", + "deprecated": true, + "appVersion": "v3.0.2+25.4.3" + } + ] + }, + { + "name": "bridgedomainstates.services.eda.nokia.com", + "group": "services.eda.nokia.com", + "kind": "", + "versions": [ + { + "name": "v1" + }, + { + "name": "v1alpha1", + "deprecated": true + } + ] + }, + { + "name": "bridgeinterfaces.services.eda.nokia.com", + "group": "services.eda.nokia.com", + "kind": "BridgeInterface", + "versions": [ + { + "name": "v1", + "appVersion": "v4.0.1" + }, + { + "name": "v1alpha1", + "deprecated": true, + "appVersion": "v3.0.2+25.4.3" + } + ] + }, + { + "name": "bridgeinterfacestates.services.eda.nokia.com", + "group": "services.eda.nokia.com", + "kind": "", + "versions": [ + { + "name": "v1" + }, + { + "name": "v1alpha1", + "deprecated": true + } + ] + }, + { + "name": "catalogs.appstore.eda.nokia.com", + "group": "appstore.eda.nokia.com", + "kind": "Catalog", + "versions": [ + { + "name": "v1" + } + ] + }, + { + "name": "certificatechecks.certcheck.eda.nokia.com", + "group": "certcheck.eda.nokia.com", + "kind": "CertificateCheck", + "versions": [ + { + "name": "v1alpha1" + } + ] + }, + { + "name": "chassis.components.eda.nokia.com", + "group": "components.eda.nokia.com", + "kind": "Chassis", + "versions": [ + { + "name": "v1", + "appVersion": "v4.0.1" + } + ] + }, + { + "name": "checkdefaultbgppeerss.protocols.eda.nokia.com", + "group": "protocols.eda.nokia.com", + "kind": "CheckDefaultBgpPeers", + "versions": [ + { + "name": "v1", + "appVersion": "v4.0.1" + }, + { + "name": "v1alpha1", + "deprecated": true + } + ] + }, + { + "name": "checkinterfacess.interfaces.eda.nokia.com", + "group": "interfaces.eda.nokia.com", + "kind": "CheckInterfaces", + "versions": [ + { + "name": "v1alpha1", + "appVersion": "v4.0.1" + } + ] + }, + { + "name": "cliplugins.environment.eda.nokia.com", + "group": "environment.eda.nokia.com", + "kind": "CliPlugin", + "versions": [ + { + "name": "v1alpha1", + "appVersion": "v4.0.1" + } + ] + }, + { + "name": "clusterdiscoveries.components.eda.nokia.com", + "group": "components.eda.nokia.com", + "kind": "ClusterDiscovery", + "versions": [ + { + "name": "v1", + "appVersion": "v4.0.1" + } + ] + }, + { + "name": "clusterincidents.snow.eda.nokia.com", + "group": "snow.eda.nokia.com", + "kind": "ClusterIncident", + "versions": [ + { + "name": "v1alpha1", + "appVersion": "v3.0.0" + } + ] + }, + { + "name": "clusterinstances.snow.eda.nokia.com", + "group": "snow.eda.nokia.com", + "kind": "ClusterInstance", + "versions": [ + { + "name": "v1alpha1", + "appVersion": "v3.0.0" + } + ] + }, + { + "name": "clusterproducers.kafka.eda.nokia.com", + "group": "kafka.eda.nokia.com", + "kind": "ClusterProducer", + "versions": [ + { + "name": "v1alpha1", + "appVersion": "v4.0.0" + } + ] + }, + { + "name": "clusterroles.core.eda.nokia.com", + "group": "core.eda.nokia.com", + "kind": "ClusterRole", + "versions": [ + { + "name": "v1" + } + ] + }, + { + "name": "communitysetdeployments.routingpolicies.eda.nokia.com", + "group": "routingpolicies.eda.nokia.com", + "kind": "CommunitySetDeployment", + "versions": [ + { + "name": "v1alpha1", + "appVersion": "v4.0.1" + } + ] + }, + { + "name": "communitysets.routingpolicies.eda.nokia.com", + "group": "routingpolicies.eda.nokia.com", + "kind": "CommunitySet", + "versions": [ + { + "name": "v1alpha1", + "appVersion": "v4.0.1" + } + ] + }, + { + "name": "components.components.eda.nokia.com", + "group": "components.eda.nokia.com", + "kind": "Component", + "versions": [ + { + "name": "v1", + "appVersion": "v4.0.1" + }, + { + "name": "v1alpha1" + } + ] + }, + { + "name": "configlets.config.eda.nokia.com", + "group": "config.eda.nokia.com", + "kind": "Configlet", + "versions": [ + { + "name": "v1alpha1", + "appVersion": "v4.0.1" + } + ] + }, + { + "name": "configletstates.config.eda.nokia.com", + "group": "config.eda.nokia.com", + "kind": "", + "versions": [ + { + "name": "v1alpha1" + } + ] + }, + { + "name": "controlmodules.components.eda.nokia.com", + "group": "components.eda.nokia.com", + "kind": "ControlModule", + "versions": [ + { + "name": "v1", + "appVersion": "v4.0.1" + } + ] + }, + { + "name": "controlplanefilters.filters.eda.nokia.com", + "group": "filters.eda.nokia.com", + "kind": "ControlPlaneFilter", + "versions": [ + { + "name": "v1alpha1", + "appVersion": "v4.0.1" + } + ] + }, + { + "name": "cpuoverlays.components.eda.nokia.com", + "group": "components.eda.nokia.com", + "kind": "CPUOverlay", + "versions": [ + { + "name": "v1", + "appVersion": "v4.0.1" + } + ] + }, + { + "name": "creategithubissues.github.eda.nokia.com", + "group": "github.eda.nokia.com", + "kind": "", + "versions": [ + { + "name": "v1alpha1" + } + ] + }, + { + "name": "creategitlabissues.gitlab.eda.nokia.com", + "group": "gitlab.eda.nokia.com", + "kind": "", + "versions": [ + { + "name": "v1alpha1" + } + ] + }, + { + "name": "defaultaggregateroutes.protocols.eda.nokia.com", + "group": "protocols.eda.nokia.com", + "kind": "DefaultAggregateRoute", + "versions": [ + { + "name": "v1", + "appVersion": "v4.0.1" + }, + { + "name": "v1alpha1", + "deprecated": true, + "appVersion": "v3.0.2+25.4.3" + } + ] + }, + { + "name": "defaultbgpgroupdeployments.protocols.eda.nokia.com", + "group": "protocols.eda.nokia.com", + "kind": "DefaultBGPGroupDeployment", + "versions": [ + { + "name": "v1", + "appVersion": "v4.0.1" + }, + { + "name": "v1alpha1", + "deprecated": true, + "appVersion": "v3.0.2+25.4.3" + } + ] + }, + { + "name": "defaultbgpgroups.protocols.eda.nokia.com", + "group": "protocols.eda.nokia.com", + "kind": "DefaultBGPGroup", + "versions": [ + { + "name": "v1", + "appVersion": "v4.0.1" + }, + { + "name": "v1alpha1", + "deprecated": true, + "appVersion": "v3.0.2+25.4.3" + } + ] + }, + { + "name": "defaultbgppeers.protocols.eda.nokia.com", + "group": "protocols.eda.nokia.com", + "kind": "DefaultBGPPeer", + "versions": [ + { + "name": "v1", + "appVersion": "v4.0.1" + }, + { + "name": "v1alpha1", + "deprecated": true, + "appVersion": "v3.0.2+25.4.3" + } + ] + }, + { + "name": "defaultinterfaces.routing.eda.nokia.com", + "group": "routing.eda.nokia.com", + "kind": "DefaultInterface", + "versions": [ + { + "name": "v1alpha1", + "appVersion": "v4.0.1" + } + ] + }, + { + "name": "defaultinterfacestates.routing.eda.nokia.com", + "group": "routing.eda.nokia.com", + "kind": "", + "versions": [ + { + "name": "v1alpha1" + } + ] + }, + { + "name": "defaultmtus.siteinfo.eda.nokia.com", + "group": "siteinfo.eda.nokia.com", + "kind": "", + "versions": [ + { + "name": "v1alpha1" + } + ] + }, + { + "name": "defaultospfareadeployments.protocols.eda.nokia.com", + "group": "protocols.eda.nokia.com", + "kind": "", + "versions": [ + { + "name": "v1" + } + ] + }, + { + "name": "defaultospfareas.protocols.eda.nokia.com", + "group": "protocols.eda.nokia.com", + "kind": "", + "versions": [ + { + "name": "v1" + } + ] + }, + { + "name": "defaultospfinstancedeployments.protocols.eda.nokia.com", + "group": "protocols.eda.nokia.com", + "kind": "", + "versions": [ + { + "name": "v1" + } + ] + }, + { + "name": "defaultospfinstances.protocols.eda.nokia.com", + "group": "protocols.eda.nokia.com", + "kind": "", + "versions": [ + { + "name": "v1" + } + ] + }, + { + "name": "defaultospfinterfaces.protocols.eda.nokia.com", + "group": "protocols.eda.nokia.com", + "kind": "", + "versions": [ + { + "name": "v1" + } + ] + }, + { + "name": "defaultroutereflectorclients.protocols.eda.nokia.com", + "group": "protocols.eda.nokia.com", + "kind": "DefaultRouteReflectorClient", + "versions": [ + { + "name": "v1", + "appVersion": "v4.0.1" + }, + { + "name": "v1alpha1", + "deprecated": true, + "appVersion": "v3.0.2+25.4.3" + } + ] + }, + { + "name": "defaultroutereflectors.protocols.eda.nokia.com", + "group": "protocols.eda.nokia.com", + "kind": "DefaultRouteReflector", + "versions": [ + { + "name": "v1", + "appVersion": "v4.0.1" + }, + { + "name": "v1alpha1", + "deprecated": true, + "appVersion": "v3.0.2+25.4.3" + } + ] + }, + { + "name": "defaultrouters.routing.eda.nokia.com", + "group": "routing.eda.nokia.com", + "kind": "DefaultRouter", + "versions": [ + { + "name": "v1alpha1", + "appVersion": "v4.0.1" + } + ] + }, + { + "name": "defaultrouterstates.routing.eda.nokia.com", + "group": "routing.eda.nokia.com", + "kind": "", + "versions": [ + { + "name": "v1alpha1" + } + ] + }, + { + "name": "defaultstaticroutes.protocols.eda.nokia.com", + "group": "protocols.eda.nokia.com", + "kind": "DefaultStaticRoute", + "versions": [ + { + "name": "v1", + "appVersion": "v4.0.1" + }, + { + "name": "v1alpha1", + "deprecated": true, + "appVersion": "v3.0.2+25.4.3" + } + ] + }, + { + "name": "deployimages.os.eda.nokia.com", + "group": "os.eda.nokia.com", + "kind": "DeployImage", + "versions": [ + { + "name": "v1alpha1", + "appVersion": "v4.0.1" + } + ] + }, + { + "name": "designers.core.eda.nokia.com", + "group": "core.eda.nokia.com", + "kind": "Designer", + "versions": [ + { + "name": "v1" + } + ] + }, + { + "name": "deviationactions.core.eda.nokia.com", + "group": "core.eda.nokia.com", + "kind": "DeviationAction", + "versions": [ + { + "name": "v1" + } + ] + }, + { + "name": "deviationoverlays.topologies.eda.nokia.com", + "group": "topologies.eda.nokia.com", + "kind": "DeviationOverlay", + "versions": [ + { + "name": "v1alpha1", + "appVersion": "v4.0.1" + } + ] + }, + { + "name": "deviations.core.eda.nokia.com", + "group": "core.eda.nokia.com", + "kind": "Deviation", + "versions": [ + { + "name": "v1" + } + ] + }, + { + "name": "dhcprelays.services.eda.nokia.com", + "group": "services.eda.nokia.com", + "kind": "DHCPRelay", + "versions": [ + { + "name": "v1", + "appVersion": "v4.0.1" + }, + { + "name": "v1alpha1", + "deprecated": true, + "appVersion": "v3.0.2+25.4.3" + } + ] + }, + { + "name": "discoveries.components.eda.nokia.com", + "group": "components.eda.nokia.com", + "kind": "Discovery", + "versions": [ + { + "name": "v1", + "appVersion": "v4.0.1" + }, + { + "name": "v1alpha1" + } + ] + }, + { + "name": "discoveryaggregatestates.components.eda.nokia.com", + "group": "components.eda.nokia.com", + "kind": "", + "versions": [ + { + "name": "v1" + }, + { + "name": "v1alpha1" + } + ] + }, + { + "name": "discoverystates.components.eda.nokia.com", + "group": "components.eda.nokia.com", + "kind": "", + "versions": [ + { + "name": "v1" + }, + { + "name": "v1alpha1" + } + ] + }, + { + "name": "drains.routing.eda.nokia.com", + "group": "routing.eda.nokia.com", + "kind": "Drain", + "versions": [ + { + "name": "v1alpha1", + "appVersion": "v4.0.1" + } + ] + }, + { + "name": "drainstates.routing.eda.nokia.com", + "group": "routing.eda.nokia.com", + "kind": "", + "versions": [ + { + "name": "v1alpha1" + } + ] + }, + { + "name": "edgeinterfaces.core.eda.nokia.com", + "group": "core.eda.nokia.com", + "kind": "EdgeInterface", + "versions": [ + { + "name": "v1" + } + ] + }, + { + "name": "edgepings.services.eda.nokia.com", + "group": "services.eda.nokia.com", + "kind": "EdgePing", + "versions": [ + { + "name": "v1", + "appVersion": "v4.0.1" + }, + { + "name": "v1alpha1", + "deprecated": true + } + ] + }, + { + "name": "egresspolicys.qos.eda.nokia.com", + "group": "qos.eda.nokia.com", + "kind": "EgressPolicy", + "versions": [ + { + "name": "v1", + "appVersion": "v4.0.1" + }, + { + "name": "v1alpha1", + "deprecated": true, + "appVersion": "v3.0.2+25.4.3" + } + ] + }, + { + "name": "engineconfigs.core.eda.nokia.com", + "group": "core.eda.nokia.com", + "kind": "EngineConfig", + "versions": [ + { + "name": "v1" + } + ] + }, + { + "name": "exports.prom.eda.nokia.com", + "group": "prom.eda.nokia.com", + "kind": "Export", + "versions": [ + { + "name": "v1alpha1", + "appVersion": "v4.0.0" + } + ] + }, + { + "name": "fabricmodules.components.eda.nokia.com", + "group": "components.eda.nokia.com", + "kind": "FabricModule", + "versions": [ + { + "name": "v1", + "appVersion": "v4.0.1" + } + ] + }, + { + "name": "fabrics.fabrics.eda.nokia.com", + "group": "fabrics.eda.nokia.com", + "kind": "Fabric", + "versions": [ + { + "name": "v1alpha1", + "appVersion": "v4.0.1" + } + ] + }, + { + "name": "fabricstates.fabrics.eda.nokia.com", + "group": "fabrics.eda.nokia.com", + "kind": "", + "versions": [ + { + "name": "v1alpha1" + } + ] + }, + { + "name": "fans.components.eda.nokia.com", + "group": "components.eda.nokia.com", + "kind": "Fan", + "versions": [ + { + "name": "v1", + "appVersion": "v4.0.1" + } + ] + }, + { + "name": "filterdeployments.filters.eda.nokia.com", + "group": "filters.eda.nokia.com", + "kind": "FilterDeployment", + "versions": [ + { + "name": "v1alpha1", + "appVersion": "v4.0.1" + } + ] + }, + { + "name": "filters.filters.eda.nokia.com", + "group": "filters.eda.nokia.com", + "kind": "Filter", + "versions": [ + { + "name": "v1alpha1", + "appVersion": "v4.0.1" + } + ] + }, + { + "name": "forwardingclasss.qos.eda.nokia.com", + "group": "qos.eda.nokia.com", + "kind": "ForwardingClass", + "versions": [ + { + "name": "v1", + "appVersion": "v4.0.1" + }, + { + "name": "v1alpha1", + "deprecated": true, + "appVersion": "v3.0.2+25.4.3" + } + ] + }, + { + "name": "githubactions.github.eda.nokia.com", + "group": "github.eda.nokia.com", + "kind": "", + "versions": [ + { + "name": "v1alpha1" + } + ] + }, + { + "name": "githubinstances.github.eda.nokia.com", + "group": "github.eda.nokia.com", + "kind": "", + "versions": [ + { + "name": "v1alpha1" + } + ] + }, + { + "name": "githubissues.github.eda.nokia.com", + "group": "github.eda.nokia.com", + "kind": "", + "versions": [ + { + "name": "v1alpha1" + } + ] + }, + { + "name": "gitlabinstances.gitlab.eda.nokia.com", + "group": "gitlab.eda.nokia.com", + "kind": "", + "versions": [ + { + "name": "v1alpha1" + } + ] + }, + { + "name": "gitlabissues.gitlab.eda.nokia.com", + "group": "gitlab.eda.nokia.com", + "kind": "", + "versions": [ + { + "name": "v1alpha1" + } + ] + }, + { + "name": "gitlabpipelines.gitlab.eda.nokia.com", + "group": "gitlab.eda.nokia.com", + "kind": "", + "versions": [ + { + "name": "v1alpha1" + } + ] + }, + { + "name": "globalconfigs.core.eda.nokia.com", + "group": "core.eda.nokia.com", + "kind": "GlobalConfig", + "versions": [ + { + "name": "v1" + } + ] + }, + { + "name": "httpproxies.core.eda.nokia.com", + "group": "core.eda.nokia.com", + "kind": "HttpProxy", + "versions": [ + { + "name": "v1" + } + ] + }, + { + "name": "incidents.snow.eda.nokia.com", + "group": "snow.eda.nokia.com", + "kind": "Incident", + "versions": [ + { + "name": "v1alpha1", + "appVersion": "v3.0.0" + } + ] + }, + { + "name": "indexallocationpools.core.eda.nokia.com", + "group": "core.eda.nokia.com", + "kind": "IndexAllocationPool", + "versions": [ + { + "name": "v1" + } + ] + }, + { + "name": "ingresspolicys.qos.eda.nokia.com", + "group": "qos.eda.nokia.com", + "kind": "IngressPolicy", + "versions": [ + { + "name": "v1", + "appVersion": "v4.0.1" + }, + { + "name": "v1alpha1", + "deprecated": true, + "appVersion": "v3.0.2+25.4.3" + } + ] + }, + { + "name": "inits.bootstrap.eda.nokia.com", + "group": "bootstrap.eda.nokia.com", + "kind": "Init", + "versions": [ + { + "name": "v1alpha1", + "appVersion": "v4.0.1" + } + ] + }, + { + "name": "instances.netbox.eda.nokia.com", + "group": "netbox.eda.nokia.com", + "kind": "Instance", + "versions": [ + { + "name": "v1alpha1", + "appVersion": "v2.0.0" + } + ] + }, + { + "name": "instances.snow.eda.nokia.com", + "group": "snow.eda.nokia.com", + "kind": "Instance", + "versions": [ + { + "name": "v1alpha1", + "appVersion": "v3.0.0" + } + ] + }, + { + "name": "interfacemodules.components.eda.nokia.com", + "group": "components.eda.nokia.com", + "kind": "InterfaceModule", + "versions": [ + { + "name": "v1", + "appVersion": "v4.0.1" + } + ] + }, + { + "name": "interfaces.interfaces.eda.nokia.com", + "group": "interfaces.eda.nokia.com", + "kind": "Interface", + "versions": [ + { + "name": "v1alpha1", + "appVersion": "v4.0.1" + } + ] + }, + { + "name": "interfacestates.interfaces.eda.nokia.com", + "group": "interfaces.eda.nokia.com", + "kind": "", + "versions": [ + { + "name": "v1alpha1" + } + ] + }, + { + "name": "ipallocationpools.core.eda.nokia.com", + "group": "core.eda.nokia.com", + "kind": "IPAllocationPool", + "versions": [ + { + "name": "v1" + } + ] + }, + { + "name": "ipinsubnetallocationpools.core.eda.nokia.com", + "group": "core.eda.nokia.com", + "kind": "IPInSubnetAllocationPool", + "versions": [ + { + "name": "v1" + } + ] + }, + { + "name": "irbinterfaces.services.eda.nokia.com", + "group": "services.eda.nokia.com", + "kind": "IRBInterface", + "versions": [ + { + "name": "v1", + "appVersion": "v4.0.1" + }, + { + "name": "v1alpha1", + "deprecated": true, + "appVersion": "v3.0.2+25.4.3" + } + ] + }, + { + "name": "irbinterfacestates.services.eda.nokia.com", + "group": "services.eda.nokia.com", + "kind": "", + "versions": [ + { + "name": "v1" + }, + { + "name": "v1alpha1", + "deprecated": true + } + ] + }, + { + "name": "islpings.fabrics.eda.nokia.com", + "group": "fabrics.eda.nokia.com", + "kind": "IslPing", + "versions": [ + { + "name": "v1alpha1", + "appVersion": "v4.0.1" + } + ] + }, + { + "name": "isls.fabrics.eda.nokia.com", + "group": "fabrics.eda.nokia.com", + "kind": "ISL", + "versions": [ + { + "name": "v1alpha1", + "appVersion": "v4.0.1" + } + ] + }, + { + "name": "islstates.fabrics.eda.nokia.com", + "group": "fabrics.eda.nokia.com", + "kind": "", + "versions": [ + { + "name": "v1alpha1" + } + ] + }, + { + "name": "keychaindeployments.security.eda.nokia.com", + "group": "security.eda.nokia.com", + "kind": "KeychainDeployment", + "versions": [ + { + "name": "v1alpha1", + "appVersion": "v4.0.1" + } + ] + }, + { + "name": "keychains.security.eda.nokia.com", + "group": "security.eda.nokia.com", + "kind": "Keychain", + "versions": [ + { + "name": "v1alpha1", + "appVersion": "v4.0.1" + } + ] + }, + { + "name": "licenses.core.eda.nokia.com", + "group": "core.eda.nokia.com", + "kind": "License", + "versions": [ + { + "name": "v1" + } + ] + }, + { + "name": "lldpoverlays.topologies.eda.nokia.com", + "group": "topologies.eda.nokia.com", + "kind": "LldpOverlay", + "versions": [ + { + "name": "v1alpha1", + "appVersion": "v4.0.1" + } + ] + }, + { + "name": "managementrouters.bootstrap.eda.nokia.com", + "group": "bootstrap.eda.nokia.com", + "kind": "ManagementRouter", + "versions": [ + { + "name": "v1alpha1", + "appVersion": "v4.0.1" + } + ] + }, + { + "name": "managementrouterstates.bootstrap.eda.nokia.com", + "group": "bootstrap.eda.nokia.com", + "kind": "", + "versions": [ + { + "name": "v1alpha1" + } + ] + }, + { + "name": "manifests.core.eda.nokia.com", + "group": "core.eda.nokia.com", + "kind": "Manifest", + "versions": [ + { + "name": "v1" + } + ] + }, + { + "name": "memoryoverlays.components.eda.nokia.com", + "group": "components.eda.nokia.com", + "kind": "MemoryOverlay", + "versions": [ + { + "name": "v1", + "appVersion": "v4.0.1" + } + ] + }, + { + "name": "mirrorfilterdeployments.filters.eda.nokia.com", + "group": "filters.eda.nokia.com", + "kind": "MirrorFilterDeployment", + "versions": [ + { + "name": "v1alpha1", + "appVersion": "v4.0.1" + } + ] + }, + { + "name": "mirrorfilters.filters.eda.nokia.com", + "group": "filters.eda.nokia.com", + "kind": "MirrorFilter", + "versions": [ + { + "name": "v1alpha1", + "appVersion": "v4.0.1" + } + ] + }, + { + "name": "mirrors.oam.eda.nokia.com", + "group": "oam.eda.nokia.com", + "kind": "Mirror", + "versions": [ + { + "name": "v1alpha1", + "appVersion": "v4.0.1" + } + ] + }, + { + "name": "mirrorstates.oam.eda.nokia.com", + "group": "oam.eda.nokia.com", + "kind": "", + "versions": [ + { + "name": "v1alpha1" + } + ] + }, + { + "name": "monitoraggregatestates.components.eda.nokia.com", + "group": "components.eda.nokia.com", + "kind": "", + "versions": [ + { + "name": "v1" + } + ] + }, + { + "name": "monitors.components.eda.nokia.com", + "group": "components.eda.nokia.com", + "kind": "Monitor", + "versions": [ + { + "name": "v1", + "appVersion": "v4.0.1" + } + ] + }, + { + "name": "monitorstates.components.eda.nokia.com", + "group": "components.eda.nokia.com", + "kind": "", + "versions": [ + { + "name": "v1" + } + ] + }, + { + "name": "namespaces.core.eda.nokia.com", + "group": "core.eda.nokia.com", + "kind": "Namespace", + "versions": [ + { + "name": "v1" + } + ] + }, + { + "name": "networktopologies.topologies.eda.nokia.com", + "group": "topologies.eda.nokia.com", + "kind": "", + "versions": [ + { + "name": "v1alpha1" + } + ] + }, + { + "name": "nodeconfigs.core.eda.nokia.com", + "group": "core.eda.nokia.com", + "kind": "NodeConfig", + "versions": [ + { + "name": "v1" + } + ] + }, + { + "name": "nodegroupdeployments.aaa.eda.nokia.com", + "group": "aaa.eda.nokia.com", + "kind": "NodeGroupDeployment", + "versions": [ + { + "name": "v1alpha1", + "appVersion": "v4.0.1" + } + ] + }, + { + "name": "nodegroups.aaa.eda.nokia.com", + "group": "aaa.eda.nokia.com", + "kind": "NodeGroup", + "versions": [ + { + "name": "v1alpha1", + "appVersion": "v4.0.1" + } + ] + }, + { + "name": "nodeprofiles.core.eda.nokia.com", + "group": "core.eda.nokia.com", + "kind": "NodeProfile", + "versions": [ + { + "name": "v1" + } + ] + }, + { + "name": "nodesecurityprofiles.core.eda.nokia.com", + "group": "core.eda.nokia.com", + "kind": "NodeSecurityProfile", + "versions": [ + { + "name": "v1" + } + ] + }, + { + "name": "nodeusers.core.eda.nokia.com", + "group": "core.eda.nokia.com", + "kind": "NodeUser", + "versions": [ + { + "name": "v1" + } + ] + }, + { + "name": "nodeuserstates.aaa.eda.nokia.com", + "group": "aaa.eda.nokia.com", + "kind": "", + "versions": [ + { + "name": "v1alpha1" + } + ] + }, + { + "name": "ntpclients.timing.eda.nokia.com", + "group": "timing.eda.nokia.com", + "kind": "NTPClient", + "versions": [ + { + "name": "v1alpha1", + "appVersion": "v4.0.1" + } + ] + }, + { + "name": "ntpclientstates.timing.eda.nokia.com", + "group": "timing.eda.nokia.com", + "kind": "", + "versions": [ + { + "name": "v1alpha1" + } + ] + }, + { + "name": "ospfareadeployments.protocols.eda.nokia.com", + "group": "protocols.eda.nokia.com", + "kind": "", + "versions": [ + { + "name": "v1" + } + ] + }, + { + "name": "ospfareas.protocols.eda.nokia.com", + "group": "protocols.eda.nokia.com", + "kind": "", + "versions": [ + { + "name": "v1" + } + ] + }, + { + "name": "ospfareastates.protocols.eda.nokia.com", + "group": "protocols.eda.nokia.com", + "kind": "", + "versions": [ + { + "name": "v1" + } + ] + }, + { + "name": "ospfinstancedeployments.protocols.eda.nokia.com", + "group": "protocols.eda.nokia.com", + "kind": "", + "versions": [ + { + "name": "v1" + } + ] + }, + { + "name": "ospfinstances.protocols.eda.nokia.com", + "group": "protocols.eda.nokia.com", + "kind": "", + "versions": [ + { + "name": "v1" + } + ] + }, + { + "name": "ospfinstancestates.protocols.eda.nokia.com", + "group": "protocols.eda.nokia.com", + "kind": "", + "versions": [ + { + "name": "v1" + } + ] + }, + { + "name": "ospfinterfaces.protocols.eda.nokia.com", + "group": "protocols.eda.nokia.com", + "kind": "", + "versions": [ + { + "name": "v1" + } + ] + }, + { + "name": "ospfinterfacestates.protocols.eda.nokia.com", + "group": "protocols.eda.nokia.com", + "kind": "", + "versions": [ + { + "name": "v1" + } + ] + }, + { + "name": "pings.oam.eda.nokia.com", + "group": "oam.eda.nokia.com", + "kind": "Ping", + "versions": [ + { + "name": "v1alpha1", + "appVersion": "v4.0.1" + } + ] + }, + { + "name": "policyattachments.qos.eda.nokia.com", + "group": "qos.eda.nokia.com", + "kind": "PolicyAttachment", + "versions": [ + { + "name": "v1", + "appVersion": "v4.0.1" + }, + { + "name": "v1alpha1", + "deprecated": true, + "appVersion": "v3.0.2+25.4.3" + } + ] + }, + { + "name": "policydeployments.qos.eda.nokia.com", + "group": "qos.eda.nokia.com", + "kind": "PolicyDeployment", + "versions": [ + { + "name": "v1", + "appVersion": "v4.0.1" + }, + { + "name": "v1alpha1", + "deprecated": true, + "appVersion": "v3.0.2+25.4.3" + } + ] + }, + { + "name": "policydeployments.routingpolicies.eda.nokia.com", + "group": "routingpolicies.eda.nokia.com", + "kind": "PolicyDeployment", + "versions": [ + { + "name": "v1alpha1", + "appVersion": "v4.0.1" + } + ] + }, + { + "name": "policys.routingpolicies.eda.nokia.com", + "group": "routingpolicies.eda.nokia.com", + "kind": "Policy", + "versions": [ + { + "name": "v1alpha1", + "appVersion": "v4.0.1" + } + ] + }, + { + "name": "powersupplies.components.eda.nokia.com", + "group": "components.eda.nokia.com", + "kind": "PowerSupply", + "versions": [ + { + "name": "v1", + "appVersion": "v4.0.1" + } + ] + }, + { + "name": "prefixsetdeployments.routingpolicies.eda.nokia.com", + "group": "routingpolicies.eda.nokia.com", + "kind": "PrefixSetDeployment", + "versions": [ + { + "name": "v1alpha1", + "appVersion": "v4.0.1" + } + ] + }, + { + "name": "prefixsets.routingpolicies.eda.nokia.com", + "group": "routingpolicies.eda.nokia.com", + "kind": "PrefixSet", + "versions": [ + { + "name": "v1alpha1", + "appVersion": "v4.0.1" + } + ] + }, + { + "name": "producers.kafka.eda.nokia.com", + "group": "kafka.eda.nokia.com", + "kind": "Producer", + "versions": [ + { + "name": "v1alpha1", + "appVersion": "v4.0.0" + } + ] + }, + { + "name": "queues.qos.eda.nokia.com", + "group": "qos.eda.nokia.com", + "kind": "Queue", + "versions": [ + { + "name": "v1", + "appVersion": "v4.0.1" + }, + { + "name": "v1alpha1", + "deprecated": true, + "appVersion": "v3.0.2+25.4.3" + } + ] + }, + { + "name": "registries.appstore.eda.nokia.com", + "group": "appstore.eda.nokia.com", + "kind": "Registry", + "versions": [ + { + "name": "v1" + } + ] + }, + { + "name": "roles.core.eda.nokia.com", + "group": "core.eda.nokia.com", + "kind": "Role", + "versions": [ + { + "name": "v1" + } + ] + }, + { + "name": "routedinterfaces.services.eda.nokia.com", + "group": "services.eda.nokia.com", + "kind": "RoutedInterface", + "versions": [ + { + "name": "v1", + "appVersion": "v4.0.1" + }, + { + "name": "v1alpha1", + "deprecated": true, + "appVersion": "v3.0.2+25.4.3" + } + ] + }, + { + "name": "routedinterfacestates.services.eda.nokia.com", + "group": "services.eda.nokia.com", + "kind": "", + "versions": [ + { + "name": "v1" + }, + { + "name": "v1alpha1", + "deprecated": true + } + ] + }, + { + "name": "routelookups.routing.eda.nokia.com", + "group": "routing.eda.nokia.com", + "kind": "RouteLookup", + "versions": [ + { + "name": "v1alpha1", + "appVersion": "v4.0.1" + } + ] + }, + { + "name": "routerdeployments.services.eda.nokia.com", + "group": "services.eda.nokia.com", + "kind": "RouterDeployment", + "versions": [ + { + "name": "v1", + "appVersion": "v4.0.1" + }, + { + "name": "v1alpha1", + "deprecated": true, + "appVersion": "v3.0.2+25.4.3" + } + ] + }, + { + "name": "routereflectorclients.protocols.eda.nokia.com", + "group": "protocols.eda.nokia.com", + "kind": "RouteReflectorClient", + "versions": [ + { + "name": "v1", + "appVersion": "v4.0.1" + }, + { + "name": "v1alpha1", + "deprecated": true, + "appVersion": "v3.0.2+25.4.3" + } + ] + }, + { + "name": "routereflectorclientstates.protocols.eda.nokia.com", + "group": "protocols.eda.nokia.com", + "kind": "", + "versions": [ + { + "name": "v1" + }, + { + "name": "v1alpha1", + "deprecated": true + } + ] + }, + { + "name": "routereflectors.protocols.eda.nokia.com", + "group": "protocols.eda.nokia.com", + "kind": "RouteReflector", + "versions": [ + { + "name": "v1", + "appVersion": "v4.0.1" + }, + { + "name": "v1alpha1", + "deprecated": true, + "appVersion": "v3.0.2+25.4.3" + } + ] + }, + { + "name": "routereflectorstates.protocols.eda.nokia.com", + "group": "protocols.eda.nokia.com", + "kind": "", + "versions": [ + { + "name": "v1" + }, + { + "name": "v1alpha1", + "deprecated": true + } + ] + }, + { + "name": "routers.services.eda.nokia.com", + "group": "services.eda.nokia.com", + "kind": "Router", + "versions": [ + { + "name": "v1", + "appVersion": "v4.0.1" + }, + { + "name": "v1alpha1", + "deprecated": true, + "appVersion": "v3.0.2+25.4.3" + } + ] + }, + { + "name": "routerstates.services.eda.nokia.com", + "group": "services.eda.nokia.com", + "kind": "", + "versions": [ + { + "name": "v1" + }, + { + "name": "v1alpha1", + "deprecated": true + } + ] + }, + { + "name": "routetraces.routing.eda.nokia.com", + "group": "routing.eda.nokia.com", + "kind": "", + "versions": [ + { + "name": "v1alpha1" + } + ] + }, + { + "name": "rungithubworkflows.github.eda.nokia.com", + "group": "github.eda.nokia.com", + "kind": "", + "versions": [ + { + "name": "v1alpha1" + } + ] + }, + { + "name": "rungitlabpipelines.gitlab.eda.nokia.com", + "group": "gitlab.eda.nokia.com", + "kind": "", + "versions": [ + { + "name": "v1alpha1" + } + ] + }, + { + "name": "setupenvs.environment.eda.nokia.com", + "group": "environment.eda.nokia.com", + "kind": "SetupEnv", + "versions": [ + { + "name": "v1alpha1", + "appVersion": "v4.0.1" + } + ] + }, + { + "name": "simlinks.core.eda.nokia.com", + "group": "core.eda.nokia.com", + "kind": "SimLink", + "versions": [ + { + "name": "v1" + } + ] + }, + { + "name": "simnodes.core.eda.nokia.com", + "group": "core.eda.nokia.com", + "kind": "SimNode", + "versions": [ + { + "name": "v1" + } + ] + }, + { + "name": "stateconfigs.services.eda.nokia.com", + "group": "services.eda.nokia.com", + "kind": "StateConfig", + "versions": [ + { + "name": "v1", + "appVersion": "v4.0.1" + }, + { + "name": "v1alpha1", + "deprecated": true, + "appVersion": "v3.0.2+25.4.3" + } + ] + }, + { + "name": "staticroutes.protocols.eda.nokia.com", + "group": "protocols.eda.nokia.com", + "kind": "StaticRoute", + "versions": [ + { + "name": "v1", + "appVersion": "v4.0.1" + }, + { + "name": "v1alpha1", + "deprecated": true, + "appVersion": "v3.0.2+25.4.3" + } + ] + }, + { + "name": "subnetallocationpools.core.eda.nokia.com", + "group": "core.eda.nokia.com", + "kind": "SubnetAllocationPool", + "versions": [ + { + "name": "v1" + } + ] + }, + { + "name": "systeminterfaces.routing.eda.nokia.com", + "group": "routing.eda.nokia.com", + "kind": "SystemInterface", + "versions": [ + { + "name": "v1alpha1", + "appVersion": "v4.0.1" + } + ] + }, + { + "name": "systeminterfacestates.routing.eda.nokia.com", + "group": "routing.eda.nokia.com", + "kind": "", + "versions": [ + { + "name": "v1alpha1" + } + ] + }, + { + "name": "systemloadbalancers.siteinfo.eda.nokia.com", + "group": "siteinfo.eda.nokia.com", + "kind": "", + "versions": [ + { + "name": "v1alpha1" + } + ] + }, + { + "name": "systemloadbalancerstates.siteinfo.eda.nokia.com", + "group": "siteinfo.eda.nokia.com", + "kind": "", + "versions": [ + { + "name": "v1alpha1" + } + ] + }, + { + "name": "tagsetdeployments.routingpolicies.eda.nokia.com", + "group": "routingpolicies.eda.nokia.com", + "kind": "", + "versions": [ + { + "name": "v1alpha1" + } + ] + }, + { + "name": "tagsets.routingpolicies.eda.nokia.com", + "group": "routingpolicies.eda.nokia.com", + "kind": "", + "versions": [ + { + "name": "v1alpha1" + } + ] + }, + { + "name": "targetnodes.core.eda.nokia.com", + "group": "core.eda.nokia.com", + "kind": "TargetNode", + "versions": [ + { + "name": "v1" + } + ] + }, + { + "name": "techsupports.oam.eda.nokia.com", + "group": "oam.eda.nokia.com", + "kind": "TechSupport", + "versions": [ + { + "name": "v1alpha1", + "appVersion": "v4.0.1" + } + ] + }, + { + "name": "thresholds.oam.eda.nokia.com", + "group": "oam.eda.nokia.com", + "kind": "Threshold", + "versions": [ + { + "name": "v1alpha1", + "appVersion": "v4.0.1" + } + ] + }, + { + "name": "thresholds.platformmetrics.eda.nokia.com", + "group": "platformmetrics.eda.nokia.com", + "kind": "Threshold", + "versions": [ + { + "name": "v1" + } + ] + }, + { + "name": "topobreakouts.core.eda.nokia.com", + "group": "core.eda.nokia.com", + "kind": "TopoBreakout", + "versions": [ + { + "name": "v1" + } + ] + }, + { + "name": "topolinkmonitors.topologies.eda.nokia.com", + "group": "topologies.eda.nokia.com", + "kind": "TopoLinkMonitor", + "versions": [ + { + "name": "v1alpha1", + "appVersion": "v4.0.1" + } + ] + }, + { + "name": "topolinks.core.eda.nokia.com", + "group": "core.eda.nokia.com", + "kind": "TopoLink", + "versions": [ + { + "name": "v1" + } + ] + }, + { + "name": "topolinkstates.topologies.eda.nokia.com", + "group": "topologies.eda.nokia.com", + "kind": "", + "versions": [ + { + "name": "v1alpha1" + } + ] + }, + { + "name": "topologies.topologies.eda.nokia.com", + "group": "topologies.eda.nokia.com", + "kind": "Topology", + "versions": [ + { + "name": "v1alpha1", + "appVersion": "v4.0.1" + } + ] + }, + { + "name": "topologygroupings.topologies.eda.nokia.com", + "group": "topologies.eda.nokia.com", + "kind": "TopologyGrouping", + "versions": [ + { + "name": "v1alpha1", + "appVersion": "v4.0.1" + } + ] + }, + { + "name": "toponodes.core.eda.nokia.com", + "group": "core.eda.nokia.com", + "kind": "TopoNode", + "versions": [ + { + "name": "v1" + } + ] + }, + { + "name": "trafficrateoverlays.topologies.eda.nokia.com", + "group": "topologies.eda.nokia.com", + "kind": "TrafficRateOverlay", + "versions": [ + { + "name": "v1alpha1", + "appVersion": "v4.0.1" + } + ] + }, + { + "name": "transactionresults.core.eda.nokia.com", + "group": "core.eda.nokia.com", + "kind": "TransactionResult", + "versions": [ + { + "name": "v1" + } + ] + }, + { + "name": "transactions.core.eda.nokia.com", + "group": "core.eda.nokia.com", + "kind": "Transaction", + "versions": [ + { + "name": "v1" + } + ] + }, + { + "name": "udpproxies.core.eda.nokia.com", + "group": "core.eda.nokia.com", + "kind": "UdpProxy", + "versions": [ + { + "name": "v1" + } + ] + }, + { + "name": "userdeployments.aaa.eda.nokia.com", + "group": "aaa.eda.nokia.com", + "kind": "UserDeployment", + "versions": [ + { + "name": "v1alpha1", + "appVersion": "v4.0.1" + } + ] + }, + { + "name": "virtualnetworks.services.eda.nokia.com", + "group": "services.eda.nokia.com", + "kind": "VirtualNetwork", + "versions": [ + { + "name": "v1", + "appVersion": "v4.0.1" + }, + { + "name": "v1alpha1", + "deprecated": true, + "appVersion": "v3.0.2+25.4.3" + } + ] + }, + { + "name": "virtualnetworkstates.services.eda.nokia.com", + "group": "services.eda.nokia.com", + "kind": "", + "versions": [ + { + "name": "v1" + }, + { + "name": "v1alpha1", + "deprecated": true + } + ] + }, + { + "name": "vlans.services.eda.nokia.com", + "group": "services.eda.nokia.com", + "kind": "VLAN", + "versions": [ + { + "name": "v1", + "appVersion": "v4.0.1" + }, + { + "name": "v1alpha1", + "deprecated": true, + "appVersion": "v3.0.2+25.4.3" + } + ] + }, + { + "name": "vlanstates.services.eda.nokia.com", + "group": "services.eda.nokia.com", + "kind": "", + "versions": [ + { + "name": "v1" + }, + { + "name": "v1alpha1", + "deprecated": true + } + ] + }, + { + "name": "volumeoverlays.components.eda.nokia.com", + "group": "components.eda.nokia.com", + "kind": "VolumeOverlay", + "versions": [ + { + "name": "v1", + "appVersion": "v4.0.1" + } + ] + }, + { + "name": "waitforinputs.core.eda.nokia.com", + "group": "core.eda.nokia.com", + "kind": "WaitForInput", + "versions": [ + { + "name": "v1" + } + ] + }, + { + "name": "workflowdefinitions.core.eda.nokia.com", + "group": "core.eda.nokia.com", + "kind": "WorkflowDefinition", + "versions": [ + { + "name": "v1" + } + ] + }, + { + "name": "workflows.core.eda.nokia.com", + "group": "core.eda.nokia.com", + "kind": "Workflow", + "versions": [ + { + "name": "v1" + } + ] + } +] \ No newline at end of file diff --git a/static/resources/25.12.1/manifests.core.eda.nokia.com/v1.yaml b/static/resources/25.12.1/manifests.core.eda.nokia.com/v1.yaml new file mode 100644 index 0000000..87992ee --- /dev/null +++ b/static/resources/25.12.1/manifests.core.eda.nokia.com/v1.yaml @@ -0,0 +1,504 @@ +name: v1 +schema: + openAPIV3Schema: + description: Manifest is the Schema for the manifests API + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + description: ManifestSpec defines the desired state of Manifest + properties: + appInfo: + description: Additional information relating the application described by this Manifest + properties: + categories: + description: Categories of the application described by this Manifest, used by UI + items: + type: string + type: array + changelog: + description: Relative path to the changelog for the application + type: string + documentation: + description: Relative path to any documentation + type: string + license: + description: Relative path to a LICENSE file + type: string + ociSpecVersion: + description: OCI Spec version of the built app image, populated by the edabuilder cli + type: string + readme: + description: Relative path to the README for the application described by this Manifest + type: string + screenshots: + description: Relative path to any screenshots to present in the App Store + items: + type: string + type: array + settings: + description: |- + Relative path to the OpenApi spec describing the settings that can be set on this application. + This file should be generated using edabuilder. + type: string + source: + description: Relative path to the source repository for the application described by this Manfest + type: string + srcURI: + description: Source URI that points to the source code of the application + type: string + support: + description: Relative path to the support file for the application + type: string + type: object + author: + description: Author of the application described by this Manifest + type: string + components: + description: A list of components provided in this Manifest + items: + properties: + bootstrapResource: + description: |- + Bootstrap resource provided in this component. + This may be a path to a resource, or a path to a directory containing resources. + On new namespace creation, bootstrap resources are loaded into the new namespace by default, "bootstrapping" the namespace. + properties: + path: + description: Relative path in the local application repository + type: string + required: + - path + type: object + cr: + description: Definition of a CR provided in this component + properties: + path: + description: Relative path in the local application repository + type: string + required: + - path + type: object + crd: + description: Definition of a CRD provided in this component + properties: + ai: + description: Settings related to exposure of this resource to EDA's AI. + properties: + matchTags: + description: |- + Tags are used to create indirect relationships, which are in turn matched by LLM agents to include this resource in their capability. + All resources exposed to EDA's AI are available to the top-level AI, but are not automatically exposed to children AI agents. + You may assign tags to AI-exposed resources, and then use those tags when creating an AI agent to automatically include this resource in the agents capability. + items: + type: string + type: array + type: object + api: + description: Settings related to how this CRD is exposed in the API + properties: + expose: + default: readWrite + description: |- + Indicates if this Kind will be made available through the EDA API, and what REST functions will be supported + 'readWrite' maps to PUT, POST, PATCH, and DELETE. + 'read' maps to GET, LIST, HEAD. + 'none' results in the Kind not being made available in the API. + enum: + - none + - read + - readWrite + type: string + type: object + conversionScript: + description: Relative path to the conversion script for this CRD + type: string + kubernetes: + description: Define how resources for this CRD will be imported/exported to/from Kubernetes + properties: + exportPolicy: + enum: + - all + type: string + importPolicy: + description: Defines whether resources of this type will be exported to Kubernetes + enum: + - all + - spec + type: string + type: object + names: + description: |- + Names is the CRD Kind names, as specified by its CRD.spec.names field. + Automatically filled in by the edabuilder. + properties: + kind: + description: Kind is the serialized kind of the resource. It is normally CamelCase and singular. + type: string + listKind: + description: ListKind is the serialized kind of the list for this resource. Defaults to List. + type: string + plural: + description: |- + Plural is the plural name of the resource to serve. It must match the name of the CustomResourceDefinition-registration + too: plural.group and it must be all lowercase. + type: string + singular: + description: Singular is the singular name of the resource. It must be all lowercase Defaults to lowercased + type: string + required: + - kind + - listKind + - plural + - singular + type: object + namespaced: + default: true + description: If set, resources of this CRD are namespace scoped + type: boolean + path: + description: Relative path in the local application repository + type: string + resourceType: + description: |- + The type of the resource that this CRD defines. Transactional resources are processed via ConfigEngine, + Kubernetes resources are not exposed in the EDA API, and are not processed via ConfigEngine. + Use Transactional for intent-based resources, or any resources you wish EDA to persist/restore. + Use Kubernetes for resources that are managed by Kubernetes, that you do not want EDA to process in transactions or persist/restore. + enum: + - Transactional + - Kubernetes + type: string + schema: + description: Relative path to the schema to use with this CRD + type: string + ui: + description: If set, this CRD will be exposed in the UI + properties: + category: + description: Category in which to present this resource, these groups exist in the UI navigation menu + type: string + name: + description: Name to use within the category to present this resource + type: string + panel: + description: |- + Panel in which to present this resource. + 'main' renders resource under main panel. + 'system_administration' renders resource under system administration panel. + enum: + - main + - system_administration + type: string + required: + - name + type: object + workflow: + description: If set, resources of this CRD are is in workflows + type: boolean + required: + - path + type: object + dbSchema: + description: Definition of schema for EDB, referencing a table and providing JSONSchema + properties: + schema: + description: Relative path to the JSONSchema that defines the schema of the table + type: string + table: + description: Provide the name of the table in the EDB to which this schema applies, e.g. ".db.example.table" + type: string + required: + - schema + - table + type: object + panel: + description: Definition of a UI panel provided in this component + properties: + name: + description: Name of this panel + type: string + path: + description: Relative path in the local application repository + type: string + required: + - name + - path + type: object + script: + description: Definition of a script provided in this component + properties: + path: + description: Relative path in the local application repository + type: string + trigger: + description: The trigger used to start execution of provided script resource + properties: + kind: + description: Kind used to trigger the execution of provided script resource, e.g. Interface + type: string + required: + - kind + type: object + type: + description: The type of script + enum: + - config + - state + type: string + required: + - path + - trigger + type: object + view: + description: Definition of a UI view provided in this component + properties: + path: + description: Relative path in the local application repository + type: string + ui: + description: Settings related to how this view is presented in the UI + properties: + category: + description: Category in which to present this resource, these groups exist in the UI navigation menu + type: string + name: + description: Name to use within the category to present this resource + type: string + panel: + description: |- + Panel in which to present this resource. + 'main' renders resource under main panel. + 'system_administration' renders resource under system administration panel. + enum: + - main + - system_administration + type: string + required: + - name + type: object + required: + - path + - ui + type: object + workflow: + description: Definition of workflow provided in this component + properties: + definition: + description: Relative path to the WorkflowDefinition resource that defines this workflow + type: string + image: + description: Provide the container image to execute for this workflow + type: string + required: + - definition + - image + type: object + type: object + type: array + dependencies: + description: A list of other artifacts, images, or files this Manifest depends on + items: + properties: + artifact: + description: Definition of an artifact to be loaded in artifact server + properties: + destination: + description: Destination in the artifact server to host this artifact. This corresponds to the filePath field of an Artifact. + type: string + path: + description: Relative path in the local application repository + type: string + required: + - path + type: object + container: + description: Definition of a container image provided in this application + properties: + image: + description: OCI image to use as a source for artifacts provided in this Manifest + type: string + name: + description: Name of the container dependency + type: string + pullSecret: + description: Pull secret reference that will be populated by the app store + type: string + required: + - image + - name + type: object + file: + description: Definition of an artifact provided in this component + properties: + path: + description: Relative path in the local application repository + type: string + required: + - path + type: object + type: object + type: array + description: + description: Summary description of the application described by this Manifest + type: string + gitPathPrefix: + description: A path prefix to apply when resolving any relative paths within this Manifest in the EDA application repository + type: string + gitReference: + description: Reference to a git hash or tag within the EDA application repository at which to load resources from components in this Manifest + example: v27.3.1 or 69cd4d76c467f6f27e43f3f6284356d8941df8fb + type: string + group: + description: The Group components and their respective Kinds reside in + type: string + image: + description: OCI image to use as a source for artifacts provided in this Manifest + type: string + requirements: + description: Other applications this application depends on/interacts with + items: + properties: + appId: + description: |- + The app ID of an application that this Manifest depends on. + Note: not in use currently: use AppName and Vendor. + type: string + appName: + description: |- + The name of an application that this Manifest depends on. + Deprecated: use appId instead. + type: string + kubernetes: + description: |- + Required Kinds to be imported/exported to/from Kubernetes from this application. + This can be used by apps with Kubernetes controllers in them, that depends on other apps with CRDs. + properties: + exports: + description: List of Kinds to ensure are exported to Kubernetes. + items: + properties: + gvk: + description: The group + version + kind to apply the specified policy to + properties: + group: + description: The group of the resource to import/export + type: string + kind: + description: The kind of the resource to import/export + type: string + version: + description: The version of the resource to import/export + type: string + required: + - kind + - version + type: object + policy: + description: The policy to apply to the GVK + enum: + - all + type: string + required: + - gvk + - policy + type: object + type: array + imports: + description: List of Kinds to ensure are imported from Kubernetes. + items: + properties: + gvk: + description: The group + version + kind to apply the specified policy to + properties: + group: + description: The group of the resource to import/export + type: string + kind: + description: The kind of the resource to import/export + type: string + version: + description: The version of the resource to import/export + type: string + required: + - kind + - version + type: object + policy: + description: The policy to apply to the GVK + enum: + - all + - spec + type: string + required: + - gvk + - policy + type: object + type: array + type: object + state: + default: Present + description: The state of the dependency, either Present or Absent. + enum: + - Present + - Absent + type: string + vendor: + description: |- + The vendor of an application that this Manifest depends on. + Deprecated: use appId instead. + type: string + version: + description: |- + The version of the application this Manifest depends on or requires to be absent. + Supported values are semantic versions, basic comparisons, wildcards, e.g. v1.0.1, <=v1.0.1, >=v1.0.1, '*' (any version), v2.0.* + type: string + required: + - version + type: object + type: array + supportedCoreVersions: + description: Supported core versions, i.e. the versions of the EDA core that this Manifest is compatible with + items: + type: string + type: array + supportedEndpoints: + description: Endpoints supported by the application described by this Manifest + items: + type: string + type: array + title: + description: Friendly name to use when displaying this Manifest, e.g. Interface + type: string + version: + description: The Version components and their respective Kinds reside in + type: string + required: + - group + - supportedCoreVersions + - title + - version + type: object + status: + description: ManifestStatus defines the observed state of Manifest + type: object + type: object +served: true +storage: true +subresources: + status: {} diff --git a/static/resources/memoryoverlays.components.eda.nokia.com/v1.yaml b/static/resources/25.12.1/memoryoverlays.components.eda.nokia.com/v1.yaml similarity index 100% rename from static/resources/memoryoverlays.components.eda.nokia.com/v1.yaml rename to static/resources/25.12.1/memoryoverlays.components.eda.nokia.com/v1.yaml diff --git a/static/resources/mirrorfilterdeployments.filters.eda.nokia.com/v1alpha1.yaml b/static/resources/25.12.1/mirrorfilterdeployments.filters.eda.nokia.com/v1alpha1.yaml similarity index 100% rename from static/resources/mirrorfilterdeployments.filters.eda.nokia.com/v1alpha1.yaml rename to static/resources/25.12.1/mirrorfilterdeployments.filters.eda.nokia.com/v1alpha1.yaml diff --git a/static/resources/25.12.1/mirrorfilters.filters.eda.nokia.com/v1alpha1.yaml b/static/resources/25.12.1/mirrorfilters.filters.eda.nokia.com/v1alpha1.yaml new file mode 100644 index 0000000..db60971 --- /dev/null +++ b/static/resources/25.12.1/mirrorfilters.filters.eda.nokia.com/v1alpha1.yaml @@ -0,0 +1,567 @@ +name: v1alpha1 +schema: + openAPIV3Schema: + description: MirrorFilter is the Schema for the mirrorfilters API + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + description: MirrorFilter specifies a list of filtering rules for mirroring network traffic. The resource allows for the creation of ordered filter entries based on IP criteria, providing flexibility in traffic mirroring configurations. + properties: + entries: + description: Specifies the list of filter entries, in order. + items: + properties: + description: + description: Description of the FilterEntry. + type: string + ipEntry: + properties: + action: + description: An action to take, either 'Accept','Drop', or 'RateLimit'. + enum: + - Drop + - Accept + - RateLimit + type: string + destinationPortName: + description: Destination port to match by name. + enum: + - ACAP + - AFP-TCP + - ARNS + - ASF-RMCP + - ASHARE + - ATALK-RM + - AURP + - AUTH + - BFD + - BFD-ECHO + - BFTP + - BGMP + - BGP + - BOOTPC + - BOOTPS + - CCSO-NS + - CHARGEN + - CISCO-TDP + - CITADEL + - CLEARCASE + - COMMERCE + - COURIER + - DAYTIME + - DHCP-FAILOVER + - DHCPV6-CLIENT + - DHCPV6-SERVER + - DICOM + - DISCARD + - DNSIX + - DOMAIN + - DSP + - ECHO + - EPP + - ESRO + - EXEC + - FINGER + - FTP + - FTP-DATA + - FTPS + - FTPS-DATA + - GODI + - GOPHER + - GTP-C + - GTP-PRIME + - GTP-U + - HA-CLUSTER + - HOSTNAME + - HP-ALARM-MGR + - HTTP + - HTTP-ALT + - HTTP-MGMT + - HTTP-RPC + - HTTPS + - IEEE-MMS-SSL + - IMAP + - IMAP3 + - IMAPS + - IPP + - IPSEC + - IPX + - IRC + - IRIS-BEEP + - ISAKMP + - ISAKMP-NAT + - ISCSI + - ISO-TSAP + - KERBEROS + - KERBEROS-ADM + - KLOGIN + - KPASSWD + - KSHELL + - L2TP + - LDAP + - LDAPS + - LDP + - LMP + - LOGIN + - LPD + - LSP-PING + - MAC-SERVER-ADM + - MATIP-A + - MATIP-B + - MICRO-BFD + - MICROSOFT-DS + - MOBILE-IP + - MONITOR + - MPP + - MS-EXCHANGE + - MSDP + - MSP + - MSSQL-M + - MSSQL-S + - MULTIHOP-BFD + - NAS + - NCP + - NETBIOS-DATA + - NETBIOS-NS + - NETBIOS-SS + - NETNEWS + - NETRJS-1 + - NETRJS-2 + - NETRJS-3 + - NETRJS-4 + - NETWALL + - NEW-RWHO + - NFS + - NNTP + - NNTPS + - NTP + - ODMR + - OLSR + - OPENVPN + - PIM-AUTO-RP + - PKIX-TIMESTAMP + - POP2 + - POP3 + - POP3S + - PPTP + - PRINT-SRV + - PTP-EVENT + - PTP-GENERAL + - QMTP + - QOTD + - RADIUS + - RADIUS-ACCT + - REMOTE-MAIL + - REMOTEFS + - REMOTECMD + - RIP + - RJE + - RLP + - RLZDB + - RMC + - RMONITOR + - RPC2PORTMAP + - RSYNC + - RTELNET + - RTSP + - SGMP + - SILC + - SMUX + - SNA-GW + - SNMP + - SNMP-TRAP + - SNPP + - SMTP + - SQL-SVCS + - SQL + - SSH + - SUBMISSION + - SUNRPC + - SVCLOC + - SYSLOG + - SYSTAT + - TACACS + - TALK + - TCPMUX + - TCPNETHASPSRV + - TFTP + - TIME + - TIMED + - UPS + - XDMCP + - XNS-CH + - XNS-MAIL + - XNS-TIME + - Z3950 + type: string + destinationPortNumber: + description: Destination port to match by numerical value. + maximum: 65535 + minimum: 0 + type: integer + destinationPortOperator: + description: Operator to use when matching destinationPort, either Equals, GreaterOrEquals, or LessOrEquals. + enum: + - Equals + - GreaterOrEquals + - LessOrEquals + type: string + destinationPortRange: + description: Range of destination ports to match, in the format n-m, e.g. 100-200, The start and end of the range must be port numbers. + type: string + destinationPrefix: + description: Destination prefix to match. + type: string + dscp: + description: Match DSCP values. + items: + maximum: 63 + minimum: 0 + type: integer + maxItems: 64 + minItems: 0 + type: array + firstFragment: + description: Match the first fragment only. + type: boolean + fragment: + description: Match any fragment. + type: boolean + icmpCode: + description: Match a specific ICMP code, as a number between 0-255, e.g. 0. + items: + type: integer + maxItems: 255 + minItems: 0 + type: array + icmpTypeName: + description: Match a specific ICMP type by name, e.g. dest-unreachable. + enum: + - DestUnreachable + - Echo + - EchoReply + - EchoRequest + - McastRtrAdv + - McastRtrSolicit + - McastRtrTerm + - MldDone + - MldQuery + - MldReport + - MldV2 + - NeighborAdvertise + - NeighborSolicit + - NodeInfoQuery + - NodeInfoResponse + - PacketTooBig + - ParamProblem + - Redirect + - RouterAdvertise + - RouterRenumber + - RouterSolicit + - SourceQuench + - TimeExceeded + - Timestamp + - TimestampReply + type: string + icmpTypeNumber: + description: Match a specific ICMP type by number. + maximum: 255 + minimum: 0 + type: integer + log: + description: Log the matches for this entry. + type: boolean + protocolName: + description: Match a specific IP protocol name (specified in the type field of the IP header). + enum: + - AH + - EGP + - EIGRP + - ESP + - GGP + - GRE + - ICMP + - ICMP6 + - IDRP + - IGMP + - IGP + - IPV4 + - IPV6 + - IPV6-DEST-OPTS + - IPV6-HOP + - L2TP + - MPLS-IN-IP + - NO-NEXT-HDR + - OSPF + - PIM + - ROHC + - RSVP + - SCTP + - ST + - TCP + - UDP + - VRRP + type: string + protocolNumber: + description: Match a specific IP protocol number (specified in the type field of the IP header). + maximum: 255 + minimum: 0 + type: integer + rateLimit: + description: Rate limit to apply when the action is 'RateLimit'. + properties: + burstSize: + description: The maximum burst size in bytes. + format: int32 + type: integer + entrySpecificPolicer: + default: false + description: 'Controls policer instantiation: false for shared instance, true for per-entry instances' + type: boolean + peakRate: + description: The peak rate in kilobytes per second. + format: int32 + type: integer + scope: + default: Global + description: Determines how the policer is applied across subinterfaces. Global applies the policer across all subinterfaces, while Subinterface applies it individually to each subinterface. + enum: + - Global + - Subinterface + type: string + type: object + sourcePortName: + description: Source port to match by name. + enum: + - ACAP + - AFP-TCP + - ARNS + - ASF-RMCP + - ASHARE + - ATALK-RM + - AURP + - AUTH + - BFD + - BFD-ECHO + - BFTP + - BGMP + - BGP + - BOOTPC + - BOOTPS + - CCSO-NS + - CHARGEN + - CISCO-TDP + - CITADEL + - CLEARCASE + - COMMERCE + - COURIER + - DAYTIME + - DHCP-FAILOVER + - DHCPV6-CLIENT + - DHCPV6-SERVER + - DICOM + - DISCARD + - DNSIX + - DOMAIN + - DSP + - ECHO + - EPP + - ESRO + - EXEC + - FINGER + - FTP + - FTP-DATA + - FTPS + - FTPS-DATA + - GODI + - GOPHER + - GTP-C + - GTP-PRIME + - GTP-U + - HA-CLUSTER + - HOSTNAME + - HP-ALARM-MGR + - HTTP + - HTTP-ALT + - HTTP-MGMT + - HTTP-RPC + - HTTPS + - IEEE-MMS-SSL + - IMAP + - IMAP3 + - IMAPS + - IPP + - IPSEC + - IPX + - IRC + - IRIS-BEEP + - ISAKMP + - ISAKMP-NAT + - ISCSI + - ISO-TSAP + - KERBEROS + - KERBEROS-ADM + - KLOGIN + - KPASSWD + - KSHELL + - L2TP + - LDAP + - LDAPS + - LDP + - LMP + - LOGIN + - LPD + - LSP-PING + - MAC-SERVER-ADM + - MATIP-A + - MATIP-B + - MICRO-BFD + - MICROSOFT-DS + - MOBILE-IP + - MONITOR + - MPP + - MS-EXCHANGE + - MSDP + - MSP + - MSSQL-M + - MSSQL-S + - MULTIHOP-BFD + - NAS + - NCP + - NETBIOS-DATA + - NETBIOS-NS + - NETBIOS-SS + - NETNEWS + - NETRJS-1 + - NETRJS-2 + - NETRJS-3 + - NETRJS-4 + - NETWALL + - NEW-RWHO + - NFS + - NNTP + - NNTPS + - NTP + - ODMR + - OLSR + - OPENVPN + - PIM-AUTO-RP + - PKIX-TIMESTAMP + - POP2 + - POP3 + - POP3S + - PPTP + - PRINT-SRV + - PTP-EVENT + - PTP-GENERAL + - QMTP + - QOTD + - RADIUS + - RADIUS-ACCT + - REMOTE-MAIL + - REMOTEFS + - REMOTECMD + - RIP + - RJE + - RLP + - RLZDB + - RMC + - RMONITOR + - RPC2PORTMAP + - RSYNC + - RTELNET + - RTSP + - SGMP + - SILC + - SMUX + - SNA-GW + - SNMP + - SNMP-TRAP + - SNPP + - SMTP + - SQL-SVCS + - SQL + - SSH + - SUBMISSION + - SUNRPC + - SVCLOC + - SYSLOG + - SYSTAT + - TACACS + - TALK + - TCPMUX + - TCPNETHASPSRV + - TFTP + - TIME + - TIMED + - UPS + - XDMCP + - XNS-CH + - XNS-MAIL + - XNS-TIME + - Z3950 + type: string + sourcePortNumber: + description: Source port to match by numerical value. + maximum: 65535 + minimum: 0 + type: integer + sourcePortOperator: + description: Operator to use when matching sourcePort, either Equals, GreaterOrEquals, or LessOrEquals. + enum: + - Equals + - GreaterOrEquals + - LessOrEquals + type: string + sourcePortRange: + description: Range of source ports to match, in the format n-m, e.g. 100-200. The start and end of the range must be port numbers. + type: string + sourcePrefix: + description: Source prefix to match. + type: string + tcpFlags: + description: Match TCP flags, usable with !, &, | and the flags RST, SYN, and ACK. + type: string + type: object + type: + default: Auto + description: Type of the entry which can be IPV4, IPV6 or Auto. + enum: + - IPV4 + - IPV6 + - Auto + type: string + required: + - type + type: object + type: array + statisticsPerEntry: + description: Enable or disable per-entry counters. + type: boolean + required: + - entries + type: object + status: + description: MirrorFilterStatus defines the observed state of MirrorFilter + type: object + type: object +served: true +storage: true +subresources: + status: {} diff --git a/static/resources/25.12.1/mirrors.oam.eda.nokia.com/v1alpha1.yaml b/static/resources/25.12.1/mirrors.oam.eda.nokia.com/v1alpha1.yaml new file mode 100644 index 0000000..09b769f --- /dev/null +++ b/static/resources/25.12.1/mirrors.oam.eda.nokia.com/v1alpha1.yaml @@ -0,0 +1,768 @@ +additionalPrinterColumns: + - jsonPath: .status.lastChange + name: Last Change + type: date + - jsonPath: .status.operationalState + name: Operational State + type: string +name: v1alpha1 +schema: + openAPIV3Schema: + description: Mirror is the Schema for the mirrors API + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + description: Mirror allows for the configuration of mirroring sources, including interfaces, subinterfaces, and filters, as well as the destination for the mirrored traffic, which can be either local or remote. + properties: + localDestination: + description: Local destination for the mirror, there can only be either a remote destination or local destination provisioned for a Mirror. + properties: + interface: + description: Reference to an Interface resource to send the mirrored traffic to. This must be on the same Node as the source. + type: string + vlanID: + description: Single value between 0-4094 support, or the special keyword untagged. + type: string + type: object + remoteDestination: + description: Remote destination for the mirror, there can only be either a remote destination or local destination provisioned for a Mirror. + properties: + defaultRouter: + description: Specifies the DefaultRouter to reach the remote destination of the mirror, a Router and DefaultRouter reference cannot be set at the same time. + type: string + destinationIP: + description: Remote destination IP address. When a remote destination is used for the mirror, the destinationIP is mandatory. + type: string + encapsulation: + enum: + - L2OGRE + - L3OGRE + type: string + router: + description: Specifies the Router to reach the remote destination of the mirror, a Router and DefaultRouter reference cannot be set at the same time. + type: string + sourceIP: + description: Source IP to use when sending a mirror to a remote destination. When a remote destination us used for the mirror, the sourceIP is mandatory. + type: string + type: object + sources: + description: Mirror sources. + properties: + direction: + description: The direction of the traffic being mirrored. + enum: + - Ingress + - Egress + - IngressEgress + type: string + filters: + items: + properties: + filter: + description: Emittes an MirrorFilter and uses the filter as a source for the Mirror. + properties: + entries: + description: Specifies the list of filter entries, in order. + items: + properties: + description: + description: Description of the FilterEntry. + type: string + ipEntry: + properties: + action: + description: An action to take, either 'Accept','Drop', or 'RateLimit'. + enum: + - Drop + - Accept + - RateLimit + type: string + destinationPortName: + description: Destination port to match by name. + enum: + - ACAP + - AFP-TCP + - ARNS + - ASF-RMCP + - ASHARE + - ATALK-RM + - AURP + - AUTH + - BFD + - BFD-ECHO + - BFTP + - BGMP + - BGP + - BOOTPC + - BOOTPS + - CCSO-NS + - CHARGEN + - CISCO-TDP + - CITADEL + - CLEARCASE + - COMMERCE + - COURIER + - DAYTIME + - DHCP-FAILOVER + - DHCPV6-CLIENT + - DHCPV6-SERVER + - DICOM + - DISCARD + - DNSIX + - DOMAIN + - DSP + - ECHO + - EPP + - ESRO + - EXEC + - FINGER + - FTP + - FTP-DATA + - FTPS + - FTPS-DATA + - GODI + - GOPHER + - GTP-C + - GTP-PRIME + - GTP-U + - HA-CLUSTER + - HOSTNAME + - HP-ALARM-MGR + - HTTP + - HTTP-ALT + - HTTP-MGMT + - HTTP-RPC + - HTTPS + - IEEE-MMS-SSL + - IMAP + - IMAP3 + - IMAPS + - IPP + - IPSEC + - IPX + - IRC + - IRIS-BEEP + - ISAKMP + - ISAKMP-NAT + - ISCSI + - ISO-TSAP + - KERBEROS + - KERBEROS-ADM + - KLOGIN + - KPASSWD + - KSHELL + - L2TP + - LDAP + - LDAPS + - LDP + - LMP + - LOGIN + - LPD + - LSP-PING + - MAC-SERVER-ADM + - MATIP-A + - MATIP-B + - MICRO-BFD + - MICROSOFT-DS + - MOBILE-IP + - MONITOR + - MPP + - MS-EXCHANGE + - MSDP + - MSP + - MSSQL-M + - MSSQL-S + - MULTIHOP-BFD + - NAS + - NCP + - NETBIOS-DATA + - NETBIOS-NS + - NETBIOS-SS + - NETNEWS + - NETRJS-1 + - NETRJS-2 + - NETRJS-3 + - NETRJS-4 + - NETWALL + - NEW-RWHO + - NFS + - NNTP + - NNTPS + - NTP + - ODMR + - OLSR + - OPENVPN + - PIM-AUTO-RP + - PKIX-TIMESTAMP + - POP2 + - POP3 + - POP3S + - PPTP + - PRINT-SRV + - PTP-EVENT + - PTP-GENERAL + - QMTP + - QOTD + - RADIUS + - RADIUS-ACCT + - REMOTE-MAIL + - REMOTEFS + - REMOTECMD + - RIP + - RJE + - RLP + - RLZDB + - RMC + - RMONITOR + - RPC2PORTMAP + - RSYNC + - RTELNET + - RTSP + - SGMP + - SILC + - SMUX + - SNA-GW + - SNMP + - SNMP-TRAP + - SNPP + - SMTP + - SQL-SVCS + - SQL + - SSH + - SUBMISSION + - SUNRPC + - SVCLOC + - SYSLOG + - SYSTAT + - TACACS + - TALK + - TCPMUX + - TCPNETHASPSRV + - TFTP + - TIME + - TIMED + - UPS + - XDMCP + - XNS-CH + - XNS-MAIL + - XNS-TIME + - Z3950 + type: string + destinationPortNumber: + description: Destination port to match by numerical value. + maximum: 65535 + minimum: 0 + type: integer + destinationPortOperator: + description: Operator to use when matching destinationPort, either Equals, GreaterOrEquals, or LessOrEquals. + enum: + - Equals + - GreaterOrEquals + - LessOrEquals + type: string + destinationPortRange: + description: Range of destination ports to match, in the format n-m, e.g. 100-200, The start and end of the range must be port numbers. + type: string + destinationPrefix: + description: Destination prefix to match. + type: string + dscp: + description: Match DSCP values. + items: + maximum: 63 + minimum: 0 + type: integer + maxItems: 64 + minItems: 0 + type: array + firstFragment: + description: Match the first fragment only. + type: boolean + fragment: + description: Match any fragment. + type: boolean + icmpCode: + description: Match a specific ICMP code, as a number between 0-255, e.g. 0. + items: + type: integer + maxItems: 255 + minItems: 0 + type: array + icmpTypeName: + description: Match a specific ICMP type by name, e.g. dest-unreachable. + enum: + - DestUnreachable + - Echo + - EchoReply + - EchoRequest + - McastRtrAdv + - McastRtrSolicit + - McastRtrTerm + - MldDone + - MldQuery + - MldReport + - MldV2 + - NeighborAdvertise + - NeighborSolicit + - NodeInfoQuery + - NodeInfoResponse + - PacketTooBig + - ParamProblem + - Redirect + - RouterAdvertise + - RouterRenumber + - RouterSolicit + - SourceQuench + - TimeExceeded + - Timestamp + - TimestampReply + type: string + icmpTypeNumber: + description: Match a specific ICMP type by number. + maximum: 255 + minimum: 0 + type: integer + log: + description: Log the matches for this entry. + type: boolean + protocolName: + description: Match a specific IP protocol name (specified in the type field of the IP header). + enum: + - AH + - EGP + - EIGRP + - ESP + - GGP + - GRE + - ICMP + - ICMP6 + - IDRP + - IGMP + - IGP + - IPV4 + - IPV6 + - IPV6-DEST-OPTS + - IPV6-HOP + - L2TP + - MPLS-IN-IP + - NO-NEXT-HDR + - OSPF + - PIM + - ROHC + - RSVP + - SCTP + - ST + - TCP + - UDP + - VRRP + type: string + protocolNumber: + description: Match a specific IP protocol number (specified in the type field of the IP header). + maximum: 255 + minimum: 0 + type: integer + rateLimit: + description: Rate limit to apply when the action is 'RateLimit'. + properties: + burstSize: + description: The maximum burst size in bytes. + format: int32 + type: integer + entrySpecificPolicer: + default: false + description: 'Controls policer instantiation: false for shared instance, true for per-entry instances' + type: boolean + peakRate: + description: The peak rate in kilobytes per second. + format: int32 + type: integer + scope: + default: Global + description: Determines how the policer is applied across subinterfaces. Global applies the policer across all subinterfaces, while Subinterface applies it individually to each subinterface. + enum: + - Global + - Subinterface + type: string + type: object + sourcePortName: + description: Source port to match by name. + enum: + - ACAP + - AFP-TCP + - ARNS + - ASF-RMCP + - ASHARE + - ATALK-RM + - AURP + - AUTH + - BFD + - BFD-ECHO + - BFTP + - BGMP + - BGP + - BOOTPC + - BOOTPS + - CCSO-NS + - CHARGEN + - CISCO-TDP + - CITADEL + - CLEARCASE + - COMMERCE + - COURIER + - DAYTIME + - DHCP-FAILOVER + - DHCPV6-CLIENT + - DHCPV6-SERVER + - DICOM + - DISCARD + - DNSIX + - DOMAIN + - DSP + - ECHO + - EPP + - ESRO + - EXEC + - FINGER + - FTP + - FTP-DATA + - FTPS + - FTPS-DATA + - GODI + - GOPHER + - GTP-C + - GTP-PRIME + - GTP-U + - HA-CLUSTER + - HOSTNAME + - HP-ALARM-MGR + - HTTP + - HTTP-ALT + - HTTP-MGMT + - HTTP-RPC + - HTTPS + - IEEE-MMS-SSL + - IMAP + - IMAP3 + - IMAPS + - IPP + - IPSEC + - IPX + - IRC + - IRIS-BEEP + - ISAKMP + - ISAKMP-NAT + - ISCSI + - ISO-TSAP + - KERBEROS + - KERBEROS-ADM + - KLOGIN + - KPASSWD + - KSHELL + - L2TP + - LDAP + - LDAPS + - LDP + - LMP + - LOGIN + - LPD + - LSP-PING + - MAC-SERVER-ADM + - MATIP-A + - MATIP-B + - MICRO-BFD + - MICROSOFT-DS + - MOBILE-IP + - MONITOR + - MPP + - MS-EXCHANGE + - MSDP + - MSP + - MSSQL-M + - MSSQL-S + - MULTIHOP-BFD + - NAS + - NCP + - NETBIOS-DATA + - NETBIOS-NS + - NETBIOS-SS + - NETNEWS + - NETRJS-1 + - NETRJS-2 + - NETRJS-3 + - NETRJS-4 + - NETWALL + - NEW-RWHO + - NFS + - NNTP + - NNTPS + - NTP + - ODMR + - OLSR + - OPENVPN + - PIM-AUTO-RP + - PKIX-TIMESTAMP + - POP2 + - POP3 + - POP3S + - PPTP + - PRINT-SRV + - PTP-EVENT + - PTP-GENERAL + - QMTP + - QOTD + - RADIUS + - RADIUS-ACCT + - REMOTE-MAIL + - REMOTEFS + - REMOTECMD + - RIP + - RJE + - RLP + - RLZDB + - RMC + - RMONITOR + - RPC2PORTMAP + - RSYNC + - RTELNET + - RTSP + - SGMP + - SILC + - SMUX + - SNA-GW + - SNMP + - SNMP-TRAP + - SNPP + - SMTP + - SQL-SVCS + - SQL + - SSH + - SUBMISSION + - SUNRPC + - SVCLOC + - SYSLOG + - SYSTAT + - TACACS + - TALK + - TCPMUX + - TCPNETHASPSRV + - TFTP + - TIME + - TIMED + - UPS + - XDMCP + - XNS-CH + - XNS-MAIL + - XNS-TIME + - Z3950 + type: string + sourcePortNumber: + description: Source port to match by numerical value. + maximum: 65535 + minimum: 0 + type: integer + sourcePortOperator: + description: Operator to use when matching sourcePort, either Equals, GreaterOrEquals, or LessOrEquals. + enum: + - Equals + - GreaterOrEquals + - LessOrEquals + type: string + sourcePortRange: + description: Range of source ports to match, in the format n-m, e.g. 100-200. The start and end of the range must be port numbers. + type: string + sourcePrefix: + description: Source prefix to match. + type: string + tcpFlags: + description: Match TCP flags, usable with !, &, | and the flags RST, SYN, and ACK. + type: string + type: object + type: + default: Auto + description: Type of the entry which can be IPV4, IPV6 or Auto. + enum: + - IPV4 + - IPV6 + - Auto + type: string + required: + - type + type: object + type: array + statisticsPerEntry: + description: Enable or disable per-entry counters. + type: boolean + required: + - entries + type: object + subinterfaces: + description: Subinterfaces on which to deploy the IPFilter to use as a source for the Mirror. + properties: + bridgeInterfaces: + description: List of BridgeInterfaces, all traffic from all BridgeInterfaces in the list will be used as sources to be mirrored. A combination of VLANs, BridgeInterfaces and subinterfaces can be configured as sources together. + items: + type: string + type: array + subinterfaces: + description: List of Interfaces and subinterface indices + items: + properties: + index: + description: Index of the sub-interface. This is ignored on a node running SROS. + type: integer + interfaceName: + description: Reference to an Interface resource, the combination of the Interface and the specified subinterface index will build the subinterface to be used as a source of traffic to be mirrored. A combination of VLANs, BridgeInterfaces and subinterfaces can be configured as sources together. + type: string + vlan: + description: Reference to the VLAN resource under which the sub-interface is configured. This is mandatory when the sub-interface is on a node running SROS and ignored for all other node operating systems. + type: string + required: + - interfaceName + type: object + type: array + vlans: + description: List of VLAN resources, all subinterfaces attached to the VLAN will be used as sources to be mirrored. A combination of VLANs, BridgeInterfaces and subinterfaces can be configured as sources together. + items: + type: string + type: array + type: object + type: object + type: array + interfaces: + description: Reference to an Interface resource to be mirrored. Traffic from the entire Interface will be mirrored for any selected Interfaces. + properties: + interfaceSelector: + description: Select Interfaces using a label selector to be mirrored. Traffic from the entire Interface will be mirrored for any selected Interfaces. If both a label selector is used and a list of Interfaces is provided, a combination of all selected and provided interfaces will be mirrored. + items: + type: string + type: array + interfaces: + description: List of Interfaces to be mirrored. Traffic from the entire Interface will be mirrored for any selected Interfaces. If both a label selector is used and a list of Interfaces is provided, a combination of all selected and provided interfaces will be mirrored. + items: + type: string + type: array + type: object + subinterfaces: + properties: + bridgeInterfaces: + description: List of BridgeInterfaces, all traffic from all BridgeInterfaces in the list will be used as sources to be mirrored. A combination of VLANs, BridgeInterfaces and subinterfaces can be configured as sources together. + items: + type: string + type: array + subinterfaces: + description: List of Interfaces and subinterface indices + items: + properties: + index: + description: Index of the sub-interface. This is ignored on a node running SROS. + type: integer + interfaceName: + description: Reference to an Interface resource, the combination of the Interface and the specified subinterface index will build the subinterface to be used as a source of traffic to be mirrored. A combination of VLANs, BridgeInterfaces and subinterfaces can be configured as sources together. + type: string + vlan: + description: Reference to the VLAN resource under which the sub-interface is configured. This is mandatory when the sub-interface is on a node running SROS and ignored for all other node operating systems. + type: string + required: + - interfaceName + type: object + type: array + vlans: + description: List of VLAN resources, all subinterfaces attached to the VLAN will be used as sources to be mirrored. A combination of VLANs, BridgeInterfaces and subinterfaces can be configured as sources together. + items: + type: string + type: array + type: object + required: + - direction + type: object + required: + - sources + type: object + status: + description: MirrorStatus defines the observed state of Mirror + properties: + lastChange: + description: Indicates when this SubInterface last changed state. + type: string + mirrorID: + description: Mirror Identifier used as the name of the mirror. + type: string + numActiveInterfaces: + description: Total number of active Interfaces used as sources of the mirror. + type: integer + numActiveSubinterfaces: + description: Total number of active subinterfaces used as sources of the mirror. + type: integer + numActiveV4FilterSubinterfaces: + description: Total number of active subinterfaces used as sources of the mirror derived from IPV4Filter associations. + type: integer + numActiveV6FilterSubinterfaces: + description: Total number of active subinterfaces used as sources of the mirror derived from IPV6Filter associations. + type: integer + numActiveVLANSubinterfaces: + description: Total number of active subinterfaces used as sources of the mirror derived from VLAN resource references. + type: integer + numberActiveBridgeInterfaces: + description: Total number of active subinterfaces used as sources of the mirror derived from BridgeInterface resource references. + type: integer + operationalState: + description: Indicates the current operational state of the Mirror instance. + type: string + subinterfaces: + description: List of members in this Interface. + items: + properties: + configuredSource: + description: Indicates what is driving the particular subinterface to be selected as a mirror source. + enum: + - VLAN + - BridgeInterface + - Subinterface + - Interface + - FilterV4 + - FilterV6 + type: string + interface: + description: Node specific interface name. + type: string + node: + description: Reference to Node object. + type: string + operatingSystem: + description: Operating System of the Node. + type: string + subinterfaceIndex: + description: Index allocated to the subinterface which is being mirrored. If an interface is used as a source, this will not be set. + type: integer + vlanID: + description: vlan assigned to this subinterface. + type: string + required: + - configuredSource + - interface + - node + - operatingSystem + type: object + type: array + type: object + type: object +served: true +storage: true +subresources: + status: {} diff --git a/static/resources/mirrorstates.oam.eda.nokia.com/v1alpha1.yaml b/static/resources/25.12.1/mirrorstates.oam.eda.nokia.com/v1alpha1.yaml similarity index 100% rename from static/resources/mirrorstates.oam.eda.nokia.com/v1alpha1.yaml rename to static/resources/25.12.1/mirrorstates.oam.eda.nokia.com/v1alpha1.yaml diff --git a/static/resources/monitoraggregatestates.components.eda.nokia.com/v1.yaml b/static/resources/25.12.1/monitoraggregatestates.components.eda.nokia.com/v1.yaml similarity index 100% rename from static/resources/monitoraggregatestates.components.eda.nokia.com/v1.yaml rename to static/resources/25.12.1/monitoraggregatestates.components.eda.nokia.com/v1.yaml diff --git a/static/resources/monitors.components.eda.nokia.com/v1.yaml b/static/resources/25.12.1/monitors.components.eda.nokia.com/v1.yaml similarity index 100% rename from static/resources/monitors.components.eda.nokia.com/v1.yaml rename to static/resources/25.12.1/monitors.components.eda.nokia.com/v1.yaml diff --git a/static/resources/monitorstates.components.eda.nokia.com/v1.yaml b/static/resources/25.12.1/monitorstates.components.eda.nokia.com/v1.yaml similarity index 100% rename from static/resources/monitorstates.components.eda.nokia.com/v1.yaml rename to static/resources/25.12.1/monitorstates.components.eda.nokia.com/v1.yaml diff --git a/static/resources/25.12.1/namespaces.core.eda.nokia.com/v1.yaml b/static/resources/25.12.1/namespaces.core.eda.nokia.com/v1.yaml new file mode 100644 index 0000000..4dd152c --- /dev/null +++ b/static/resources/25.12.1/namespaces.core.eda.nokia.com/v1.yaml @@ -0,0 +1,46 @@ +name: v1 +schema: + openAPIV3Schema: + description: Namespace is the Schema for the namespaces API + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + description: |- + A Namespace is a logical partition within the cluster that provides a mechanism for isolating resources. + Namespaces allow for resource segmentation, enabling multiple teams or applications to share the same cluster without conflict. + properties: + bootstrap: + description: Bootstrap configuration for the namespace - if empty no bootstrapping is performed and namespace will be empty. + properties: + fromNamespace: + description: The namespace from which to bootstrap resources. If empty, bootstrap resources are taken from the installed applications' specifications. + type: string + type: object + description: + description: An optional description of the use of the namespace. + type: string + type: object + status: + description: NamespaceStatus defines the observed state of Namespace + type: object + type: object +served: true +storage: true +subresources: + status: {} diff --git a/static/resources/25.12.1/networktopologies.topologies.eda.nokia.com/v1alpha1.yaml b/static/resources/25.12.1/networktopologies.topologies.eda.nokia.com/v1alpha1.yaml new file mode 100644 index 0000000..008655f --- /dev/null +++ b/static/resources/25.12.1/networktopologies.topologies.eda.nokia.com/v1alpha1.yaml @@ -0,0 +1,717 @@ +name: v1alpha1 +schema: + openAPIV3Schema: + description: NetworkTopology is the Schema for the topology API + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + properties: + breakoutTemplates: + description: Define the breakout parameters that are meant to be inherited by the breakouts referencing the template. These parameters can be overridden at the breakout level. + items: + properties: + annotations: + additionalProperties: + type: string + description: Annotations to assign to the Breakout. + type: object + x-kubernetes-preserve-unknown-fields: true + channels: + description: The number of breakout channels to create + maximum: 8 + minimum: 1 + type: integer + labels: + additionalProperties: + type: string + description: Labels to assign to the Breakout + type: object + x-kubernetes-preserve-unknown-fields: true + name: + description: The name of the BreakoutTemplate. + type: string + speed: + description: The speed of each breakout channel + enum: + - 800G + - 400G + - 200G + - 100G + - 50G + - 40G + - 25G + - 10G + type: string + required: + - name + type: object + type: array + breakouts: + description: Define the set of breakouts to be created/replaced/deleted. A breakout can reference a breakout template to inherit its parameters. + items: + properties: + annotations: + additionalProperties: + type: string + description: Annotations to assign to the Breakouts. + type: object + x-kubernetes-preserve-unknown-fields: true + channels: + description: The number of breakout channels to create + maximum: 8 + minimum: 1 + type: integer + interface: + description: A list of normalized parent interface/port + items: + type: string + type: array + labels: + additionalProperties: + type: string + description: Labels to assign to the TopoBreakout + type: object + x-kubernetes-preserve-unknown-fields: true + name: + description: The name of the TopoBreakout + type: string + node: + description: Reference to a list of TopoNodes where the parent interfaces are to be broken out + items: + type: string + type: array + speed: + description: The speed of each breakout channel + enum: + - 800G + - 400G + - 200G + - 100G + - 50G + - 40G + - 25G + - 10G + type: string + template: + description: Reference to a template to use for this TopoBreakout. + type: string + required: + - interface + - name + - node + type: object + type: array + checks: + description: Configure dry run mode and prompts for topology operations. + properties: + dryRun: + default: false + description: Enabling the Dry Run will run the transaction with the calculated changes to the topology resources in the dry run mode and pause the workflow awaiting users confirmation. + type: boolean + prompt: + description: |- + Prompts can be configured to request user confirmation before creating, replacing, or deleting topology resources, regardless if Dry Run is enabled or not. + This can be configured per operation type (BeforeCreate, BeforeReplace, BeforeDelete). + items: + enum: + - BeforeCreate + - BeforeDelete + - BeforeReplace + type: string + type: array + type: object + linkTemplates: + description: Define the link parameters that are meant to be inherited by the topology links referencing the template. These parameters can be overridden at the link level. + items: + properties: + annotations: + additionalProperties: + type: string + description: Annotations to assign to the TopoLink. + type: object + x-kubernetes-preserve-unknown-fields: true + encapType: + default: "null" + description: Enable or disable VLAN tagging on Interfaces created by the TopoLink. + enum: + - "null" + - dot1q + type: string + labels: + additionalProperties: + type: string + description: Labels to assign to the TopoLink. + type: object + x-kubernetes-preserve-unknown-fields: true + name: + description: The name of the TopoLinkTemplate. + type: string + speed: + description: Speed of the link. + enum: + - 800G + - 400G + - 200G + - 100G + - 50G + - 40G + - 25G + - 10G + - 2.5G + - 1G + - 100M + type: string + type: + description: |- + Specify the type of link. + If type is set to edge, topology information for the remote device can be set; when doing so the Remote Node can be set as the hostname of the remote device and Remote Interface as the remote interface name in the device specific format, e.g. eth0. + enum: + - edge + - interSwitch + - loopback + type: string + required: + - name + type: object + type: array + links: + description: Define the set of topology links to be created/replaced/deleted. A link can reference a link template to inherit its parameters. + items: + properties: + annotations: + additionalProperties: + type: string + description: Annotations to assign to the TopoLink. + type: object + x-kubernetes-preserve-unknown-fields: true + encapType: + description: Enable or disable VLAN tagging on Interfaces created by the TopoLink + enum: + - "null" + - dot1q + type: string + endpoints: + description: Define the set of physical links making up this TopoLink. + items: + properties: + local: + description: Local, or "A" endpoint of the link. + properties: + interface: + description: Normalized name of the interface/port, e.g. ethernet-1-1. + type: string + interfaceResource: + description: Reference to a Interface. + type: string + node: + description: Reference to a TopoNode. + type: string + required: + - node + type: object + remote: + description: Remote, or "B" endpoint of the link. + properties: + interface: + description: Normalized name of the interface/port, e.g. ethernet-1-1. + type: string + interfaceResource: + description: Reference to a Interface. + type: string + node: + description: Reference to a TopoNode. + type: string + required: + - node + type: object + sim: + description: Sim endpoint of the link. + properties: + simNode: + description: The SimNode to which the interface will be mapped. This is the name of the SimNode as it is defined in the SimTopology. + type: string + simNodeInterface: + description: |- + The name of the interface to present to the SimNode to which the interface will be mapped. If not provided the interface name will be generated starting with "eth1", "eth2", ... . + This is the interface name as it will appear in the SimNode. + type: string + type: object + speed: + description: Speed of the link. + enum: + - 800G + - 400G + - 200G + - 100G + - 50G + - 40G + - 25G + - 10G + - 2.5G + - 1G + - 100M + type: string + type: + description: |- + Specify the type of link. + If type is set to edge, topology information for the remote device can be set; when doing so the Remote Node can be set as the hostname of the remote device and Remote Interface as the remote interface name in the device specific format, e.g. eth0. + enum: + - edge + - interSwitch + - loopback + type: string + required: + - local + type: object + minItems: 1 + type: array + labels: + additionalProperties: + type: string + description: Labels to assign to the TopoLink + type: object + x-kubernetes-preserve-unknown-fields: true + name: + description: The name of the TopoLink + type: string + template: + description: Reference to a template to use for this TopoLink. + type: string + required: + - endpoints + - name + type: object + type: array + nodeTemplates: + description: Define the node parameters that are meant to be inherited by the topology nodes referencing the template. These parameters can be overridden at the node level. + items: + properties: + annotations: + additionalProperties: + type: string + description: Annotations to assign to the TopoNode. + type: object + x-kubernetes-preserve-unknown-fields: true + component: + description: |- + List of components within the TopoNode. + Used to define the type and location of linecards, fabrics (SFM), media adapter cards (MDA) and control cards (CPM). + items: + properties: + kind: + description: The kind of Component, e.g. lineCard. + enum: + - controlCard + - lineCard + - fabric + - mda + - connector + - xiom + - powerShelf + - powerModule + type: string + slot: + description: |- + The slot this Component resides in, unset for Components that do not have a slot or ID. + e.g. 1 would denote the linecard slot 1, 1/1 would denote linecard slot 1 mda slot 1. + type: string + type: + description: Denotes the type of hardware being provisioned, e.g. xcm-x20. + type: string + required: + - kind + - type + type: object + type: array + labels: + additionalProperties: + type: string + description: Labels to assign to the TopoNode. + type: object + x-kubernetes-preserve-unknown-fields: true + license: + description: Reference to a ConfigMap containing a license for the TopoNode. Overrides the license set in the referenced NodeProfile, if present. + type: string + name: + description: The name of the TopoNodeTemplate. + type: string + nodeProfile: + description: Reference to a NodeProfile to use with this TopoNode. + type: string + platform: + description: Platform type of this TopoNode, e.g. 7220 IXR-D3L. + type: string + required: + - name + type: object + type: array + nodes: + description: Define the set of topology nodes to be created/replaced/deleted. A node can reference a node template to inherit its parameters. + items: + properties: + annotations: + additionalProperties: + type: string + description: Annotations to assign to the TopoNode. + type: object + x-kubernetes-preserve-unknown-fields: true + component: + description: |- + List of components within the TopoNode. + Used to define the type and location of linecards, fabrics (SFM), media adapter cards (MDA) and control cards (CPM). + items: + properties: + kind: + description: The kind of Component, e.g. lineCard. + enum: + - controlCard + - lineCard + - fabric + - mda + - connector + - xiom + - powerShelf + - powerModule + type: string + slot: + description: |- + The slot this Component resides in, unset for Components that do not have a slot or ID. + e.g. 1 would denote the linecard slot 1, 1/1 would denote linecard slot 1 mda slot 1. + type: string + type: + description: Denotes the type of hardware being provisioned, e.g. xcm-x20. + type: string + required: + - kind + - type + type: object + type: array + labels: + additionalProperties: + type: string + description: Labels to assign to the TopoNode + type: object + x-kubernetes-preserve-unknown-fields: true + license: + description: Reference to a ConfigMap containing a license for the TopoNode. Overrides the license set in the referenced NodeProfile, if present. + type: string + macAddress: + description: |- + MAC address to associate with this TopoNode. + Typically the chassis MAC address, optionally sent by a node in DHCP requests. + Not required when a TopoNode is not being bootstrapped by EDA, or is simulated through CX. + type: string + name: + description: The name of the TopoNode + type: string + nodeProfile: + description: Reference to a NodeProfile to use with this TopoNode. + type: string + npp: + description: Options relating to NPP interactions with the node. + properties: + mode: + default: normal + description: |- + The mode in which this TopoNode is functioning. + "normal" (the default) + indicates that NPP is expecting an endpoint to exist, and will accept and confirm changes only if the endpoint + accepts them. + "maintenance" + indicates that no changes will be accepted for the TopoNode, irrespective if the endpoint is up and reachable. + The exception is if an upgrade is occuring, in which case changes will be accepted. + "null" + indicates that changes will be accepted from CRs and no NPP will be spun up. NPP validation will not occur. + This may be useful in playground mode to avoid spinning up of 1000s of NPPs. + "emulate" + indicates that changes will be accepted at the NPP level, without pushing them to a endpoint. NPP validation + still occurs. If no IP address is present, we also run in emulate mode. + "monitor" + indicates that state will be collectd but config will not be pushed to a endpoint. NPP validation still occurs. + enum: + - normal + - maintenance + - "null" + - emulate + - monitor + type: string + type: object + onBoarded: + default: false + description: |- + Indicates if this TopoNode has been bootstrapped or is reachable via configured credentials. Set by BootstrapServer when it completes onboarding functions for a given TopoNode. + Most applications ignore TopoNodes that have not been onboarded yet. + type: boolean + operatingSystem: + description: Operating system running on this TopoNode, e.g. srl. + enum: + - srl + - sros + - eos + - sonic + - ios-xr + - nxos + - linux + type: string + platform: + description: Platform type of this TopoNode, e.g. 7220 IXR-D3L. + type: string + productionAddress: + description: |- + Production address of this TopoNode - this is the address the real, production instance of this TopoNode uses. + If left blank, an address will be allocated from the management IP pool specified in the referenced NodeProfile. + If this TopoNode is not bootstrapped by EDA this field must be provided. + properties: + ipv4: + description: The IPv4 production address + type: string + ipv6: + description: The IPv6 production address + type: string + type: object + serialNumber: + description: |- + Serial number of this TopoNode, optionally sent by a node in DHCP requests. + Not required when a TopoNode is not being bootstrapped by EDA, or is simulated through CX. + type: string + systemInterface: + description: 'Deprecated: Name of the Interface resource representing the primary loopback on the TopoNode, this field will be removed in the future version.' + type: string + template: + description: Reference to a template to use for this TopoNode. + type: string + version: + description: Sets the software version of this TopoNode, e.g. 24.7.1 (for srl), or 24.7.r1 (for sros). + type: string + required: + - name + type: object + type: array + operation: + default: create + description: |- + Operation to be performed on the Topology. + Create - creates the topology resources based on the provided specifications. + Replace - replaces the resources matched by name with the provided specifications. + ReplaceAll - first removes all existing topology resources and then creates new ones based on the provided specifications. + Delete - deletes the resources matched by name. + DeleteAll - deletes all topology resources found in the namespace. + One of create, replace, replaceAll, delete, deleteAll. + enum: + - create + - replace + - replaceAll + - delete + - deleteAll + type: string + remoteLocation: + description: http(s) location of the topology input in YAML format to deploy. Providing the remote location will discard any topology resources provided in the spec of the workflow. + type: string + simulation: + description: Specify simulation topology configuration. + properties: + simNodeTemplates: + description: Define the simulation node (sim node) parameters that are meant to be inherited by the simulation nodes referencing the template. These parameters can be overridden at the sim node level. + items: + properties: + image: + description: The image to use for this SimNode. This is the full path to the image as it would be provided to the container runtime. + type: string + imagePullSecret: + description: Reference to a Secret to use when pulling the image for this simNode. + type: string + name: + description: The name of the template. + type: string + type: + description: Type defines what is type of this SimNode. + enum: + - Linux + - TestMan + - SrlTest + type: string + required: + - name + type: object + type: array + simNodes: + description: Define the sim node to be created/replaced/deleted. A sim node can reference a sim node template to inherit its parameters. + items: + properties: + image: + description: The image to use for this SimNode. This is the full path to the image as it would be provided to the container runtime. + type: string + imagePullSecret: + description: Reference to a Secret to use when pulling the image for this simNode + type: string + name: + description: The name of the SimNode. This is the name that will be used to reference the SimNode in the SimTopology. + type: string + template: + description: Reference to a template to use for this SimNode. + type: string + type: + description: Type defines what is type of this SimNode + enum: + - Linux + - TestMan + - SrlTest + type: string + required: + - name + type: object + minItems: 0 + type: array + topology: + description: Define the simulation topology to be created/replaced/deleted by providing the list of nodes/interfaces and their corresponding sim nodes/sim node interfaces. + items: + properties: + interface: + description: |- + Normalized name of an interface/port. This is the normalized name of the interface in the TopoNode, for example 'ethernet-1-1'. + The value of "*" indicates all interfaces on the TopoNode/s. + type: string + node: + description: The TopoNode on which interfaces will be mapped to a SimNode. You may use the value "*" to indicate all TopoNodes. + type: string + simNode: + description: The SimNode to which the interface will be mapped. This is the name of the SimNode as it is defined in the SimTopology. + type: string + simNodeInterface: + description: |- + The name of the interface to present to the SimNode to which the interface will be mapped. If not provided the interface name will be generated starting with "eth1", "eth2",... + This is the interface name as it will appear in the SimNode. + type: string + required: + - interface + - node + - simNode + type: object + minItems: 0 + type: array + type: object + type: object + status: + description: NetworkTopologyStatus defines the observed state of NetworkTopology + properties: + message: + description: Human-readable message providing additional context about the operation result + type: string + processed: + description: Detailed breakdown of resources processed during the operation + properties: + breakouts: + description: Summary of breakout operations + properties: + created: + description: Number of resources created + type: integer + deleted: + description: Number of resources deleted + type: integer + updated: + description: Number of resources updated + type: integer + type: object + interfaces: + description: Summary of interface operations + properties: + created: + description: Number of resources created + type: integer + deleted: + description: Number of resources deleted + type: integer + updated: + description: Number of resources updated + type: integer + type: object + links: + description: Summary of link operations + properties: + created: + description: Number of resources created + type: integer + deleted: + description: Number of resources deleted + type: integer + updated: + description: Number of resources updated + type: integer + type: object + nodes: + description: Summary of node operations + properties: + created: + description: Number of resources created + type: integer + deleted: + description: Number of resources deleted + type: integer + updated: + description: Number of resources updated + type: integer + type: object + simLinks: + description: Summary of simulation link operations + properties: + created: + description: Number of resources created + type: integer + deleted: + description: Number of resources deleted + type: integer + updated: + description: Number of resources updated + type: integer + type: object + simNodes: + description: Summary of simulation node operations + properties: + created: + description: Number of resources created + type: integer + deleted: + description: Number of resources deleted + type: integer + updated: + description: Number of resources updated + type: integer + type: object + totalDuration: + description: Total duration of the topology operation + type: string + totalResources: + description: Total number of resources processed across all types + type: integer + type: object + result: + description: Overall result of the topology operation + enum: + - Success + - Failed + type: string + required: + - result + type: object + type: object +served: true +storage: true +subresources: + status: {} diff --git a/static/resources/nodeconfigs.core.eda.nokia.com/v1.yaml b/static/resources/25.12.1/nodeconfigs.core.eda.nokia.com/v1.yaml similarity index 100% rename from static/resources/nodeconfigs.core.eda.nokia.com/v1.yaml rename to static/resources/25.12.1/nodeconfigs.core.eda.nokia.com/v1.yaml diff --git a/static/resources/nodegroupdeployments.aaa.eda.nokia.com/v1alpha1.yaml b/static/resources/25.12.1/nodegroupdeployments.aaa.eda.nokia.com/v1alpha1.yaml similarity index 100% rename from static/resources/nodegroupdeployments.aaa.eda.nokia.com/v1alpha1.yaml rename to static/resources/25.12.1/nodegroupdeployments.aaa.eda.nokia.com/v1alpha1.yaml diff --git a/static/resources/nodegroups.aaa.eda.nokia.com/v1alpha1.yaml b/static/resources/25.12.1/nodegroups.aaa.eda.nokia.com/v1alpha1.yaml similarity index 100% rename from static/resources/nodegroups.aaa.eda.nokia.com/v1alpha1.yaml rename to static/resources/25.12.1/nodegroups.aaa.eda.nokia.com/v1alpha1.yaml diff --git a/static/resources/nodeprofiles.core.eda.nokia.com/v1.yaml b/static/resources/25.12.1/nodeprofiles.core.eda.nokia.com/v1.yaml similarity index 100% rename from static/resources/nodeprofiles.core.eda.nokia.com/v1.yaml rename to static/resources/25.12.1/nodeprofiles.core.eda.nokia.com/v1.yaml diff --git a/static/resources/nodesecurityprofiles.core.eda.nokia.com/v1.yaml b/static/resources/25.12.1/nodesecurityprofiles.core.eda.nokia.com/v1.yaml similarity index 100% rename from static/resources/nodesecurityprofiles.core.eda.nokia.com/v1.yaml rename to static/resources/25.12.1/nodesecurityprofiles.core.eda.nokia.com/v1.yaml diff --git a/static/resources/nodeusers.core.eda.nokia.com/v1.yaml b/static/resources/25.12.1/nodeusers.core.eda.nokia.com/v1.yaml similarity index 100% rename from static/resources/nodeusers.core.eda.nokia.com/v1.yaml rename to static/resources/25.12.1/nodeusers.core.eda.nokia.com/v1.yaml diff --git a/static/resources/nodeuserstates.aaa.eda.nokia.com/v1alpha1.yaml b/static/resources/25.12.1/nodeuserstates.aaa.eda.nokia.com/v1alpha1.yaml similarity index 100% rename from static/resources/nodeuserstates.aaa.eda.nokia.com/v1alpha1.yaml rename to static/resources/25.12.1/nodeuserstates.aaa.eda.nokia.com/v1alpha1.yaml diff --git a/static/resources/ntpclients.timing.eda.nokia.com/v1alpha1.yaml b/static/resources/25.12.1/ntpclients.timing.eda.nokia.com/v1alpha1.yaml similarity index 100% rename from static/resources/ntpclients.timing.eda.nokia.com/v1alpha1.yaml rename to static/resources/25.12.1/ntpclients.timing.eda.nokia.com/v1alpha1.yaml diff --git a/static/resources/ntpclientstates.timing.eda.nokia.com/v1alpha1.yaml b/static/resources/25.12.1/ntpclientstates.timing.eda.nokia.com/v1alpha1.yaml similarity index 100% rename from static/resources/ntpclientstates.timing.eda.nokia.com/v1alpha1.yaml rename to static/resources/25.12.1/ntpclientstates.timing.eda.nokia.com/v1alpha1.yaml diff --git a/static/resources/25.12.1/ospfareadeployments.protocols.eda.nokia.com/v1.yaml b/static/resources/25.12.1/ospfareadeployments.protocols.eda.nokia.com/v1.yaml new file mode 100644 index 0000000..f92834a --- /dev/null +++ b/static/resources/25.12.1/ospfareadeployments.protocols.eda.nokia.com/v1.yaml @@ -0,0 +1,51 @@ +name: v1 +schema: + openAPIV3Schema: + description: OSPFAreaDeployment is the Schema for the ospfareadeployments API + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + description: OSPFAreaDeploymentSpec defines the desired state of OSPFAreaDeployment + properties: + node: + description: Reference to a Node on which to push the OSPFArea. + type: string + ospfArea: + description: Reference to an OSPFArea. + type: string + ospfInstance: + description: Reference to an OSPFInstance. + type: string + router: + description: Reference to a Router + type: string + required: + - node + - ospfArea + - ospfInstance + - router + type: object + status: + description: OSPFAreaDeploymentStatus defines the observed state of OSPFAreaDeployment + type: object + type: object +served: true +storage: true +subresources: + status: {} diff --git a/static/resources/25.12.1/ospfareas.protocols.eda.nokia.com/v1.yaml b/static/resources/25.12.1/ospfareas.protocols.eda.nokia.com/v1.yaml new file mode 100644 index 0000000..56ce147 --- /dev/null +++ b/static/resources/25.12.1/ospfareas.protocols.eda.nokia.com/v1.yaml @@ -0,0 +1,66 @@ +name: v1 +schema: + openAPIV3Schema: + description: OSPFArea is the Schema for the ospfareas API + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + description: OSPFAreaSpec defines the desired state of OSPFArea + properties: + areaId: + default: 0.0.0.0 + description: Area ID. 32-bit in the dotted-quad notation (e.g., "0.0.0.0"). + format: ipv4 + pattern: ^((([0-9]|[1-9][0-9]|1[0-9]{2}|2[0-4][0-9]|25[0-5])\.){3}([0-9]|[1-9][0-9]|1[0-9]{2}|2[0-4][0-9]|25[0-5]))$ + type: string + areaType: + default: Normal + description: Area type. Normal is assumed if not specified. + enum: + - Normal + - Stub + - NSSA + type: string + required: + - areaId + type: object + status: + description: OSPFAreaStatus defines the observed state of OSPFArea + properties: + health: + description: Indicates the health score of the OSPF area. + type: integer + healthScoreReason: + description: Indicates the reason for the health score. + type: string + lastChange: + description: The time when the state of the resource last changed. + type: string + numActiveInterfaces: + description: The number of active interfaces in the OSPF area. + type: integer + numNeighbors: + description: The number of discovered neighbors in the OSPF area. + type: integer + type: object + type: object +served: true +storage: true +subresources: + status: {} diff --git a/static/resources/connectpluginactionables.connect.eda.nokia.com/v1.yaml b/static/resources/25.12.1/ospfareastates.protocols.eda.nokia.com/v1.yaml similarity index 62% rename from static/resources/connectpluginactionables.connect.eda.nokia.com/v1.yaml rename to static/resources/25.12.1/ospfareastates.protocols.eda.nokia.com/v1.yaml index d23ebb1..1245c22 100644 --- a/static/resources/connectpluginactionables.connect.eda.nokia.com/v1.yaml +++ b/static/resources/25.12.1/ospfareastates.protocols.eda.nokia.com/v1.yaml @@ -1,7 +1,7 @@ name: v1 schema: openAPIV3Schema: - description: ConnectPluginActionable is the Schema for the connectpluginactionables API. + description: OSPFAreaState is the Schema for the ospfareastates API properties: apiVersion: description: |- @@ -21,21 +21,20 @@ schema: metadata: type: object spec: - description: ConnectPluginActionableSpec defines the desired state of ConnectPluginActionable. + description: OSPFAreaStateSpec defines the desired state of OSPFAreaState properties: - attributes: - additionalProperties: - type: string - description: Attributes is a map of attributes associated with the Verb for this Actionable. - type: object - verb: - description: Verb is the keyword for the operation that should be executed by the Plugin. + areaId: + description: Ospf area configured on the node type: string + defaultOSPFArea: + description: Denotes if the group is a DefaultOSPFArea or OSPFArea + type: boolean required: - - verb + - areaId + - defaultOSPFArea type: object status: - description: ConnectPluginActionableStatus defines the observed state of ConnectPluginActionable. + description: OSPFAreaStateStatus defines the observed state of OSPFAreaState type: object type: object served: true diff --git a/static/resources/25.12.1/ospfinstancedeployments.protocols.eda.nokia.com/v1.yaml b/static/resources/25.12.1/ospfinstancedeployments.protocols.eda.nokia.com/v1.yaml new file mode 100644 index 0000000..7c671a3 --- /dev/null +++ b/static/resources/25.12.1/ospfinstancedeployments.protocols.eda.nokia.com/v1.yaml @@ -0,0 +1,47 @@ +name: v1 +schema: + openAPIV3Schema: + description: OSPFInstanceDeployment is the Schema for the ospfinstancedeployments API + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + description: OSPFInstanceDeploymentSpec defines the desired state of OSPFInstanceDeployment + properties: + node: + description: Reference to a Node on which to push the OSPFInstance. + type: string + ospfInstance: + description: Reference to an OSPFInstance. + type: string + router: + description: Reference to a Router + type: string + required: + - node + - ospfInstance + - router + type: object + status: + description: OSPFInstanceDeploymentStatus defines the observed state of OSPFInstanceDeployment + type: object + type: object +served: true +storage: true +subresources: + status: {} diff --git a/static/resources/25.12.1/ospfinstances.protocols.eda.nokia.com/v1.yaml b/static/resources/25.12.1/ospfinstances.protocols.eda.nokia.com/v1.yaml new file mode 100644 index 0000000..65ea1e7 --- /dev/null +++ b/static/resources/25.12.1/ospfinstances.protocols.eda.nokia.com/v1.yaml @@ -0,0 +1,140 @@ +additionalPrinterColumns: + - jsonPath: .status.lastChange + name: Last Change + type: date + - jsonPath: .status.operationalState + name: Operational State + type: string +name: v1 +schema: + openAPIV3Schema: + description: OSPFInstance is the Schema for the ospfinstances API + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + description: OSPFInstanceSpec defines the desired state of OSPFInstance + properties: + addressFamily: + description: Selects an address family for OSPFv3. It is mandatory to specify at least one address family when OSPFv3 is selected. + enum: + - IPV4-UNICAST + - IPV6-UNICAST + type: string + enabled: + default: false + description: Enables OSPF instance. + type: boolean + maxECMP: + description: The maximum number of ECMP paths (next-hops). + maximum: 256 + minimum: 1 + type: integer + maxMetric: + description: Configuration related to OSPF Max Metric / Overload. + properties: + onBoot: + description: Set Max Metric on boot for the fixed period of time (in seconds). + minimum: 10 + type: integer + overload: + description: Enable Max Link Metric on all interfaces. + type: boolean + type: object + refBwGbps: + description: Reference bandwidth (in Gbps) for automatic metric calculation. + maximum: 3200 + minimum: 1 + type: integer + timers: + description: Configures OSPF timers. + properties: + lsaTimers: + properties: + accumulateMs: + description: Delay (in milliseconds) to gather LSAs before advertising to neighbors + minimum: 0 + type: integer + arrivalMs: + description: Minimum interval (in milliseconds) to accept an identical LSA. + minimum: 0 + type: integer + genHoldIntervalMs: + description: Hold interval (in milliseconds) for subsequent LSA regeneration. + minimum: 0 + type: integer + genInitialDelayMs: + description: Initial delay (in milliseconds) to generate the first instance of LSAs. + minimum: 0 + type: integer + genMaxDelayMs: + description: Maximum interval (in milliseconds) between two consecutive regenerations (of the same LSA). + minimum: 0 + type: integer + type: object + spfTimers: + properties: + holdIntervalMs: + description: Hold interval for subsequent SPF calculations. + minimum: 1 + type: integer + incrementalSPFDelayMs: + description: Delay (in milliseconds) before an incremental SPF calculation starts. + minimum: 0 + type: integer + initialDelayMs: + description: Initial SPF calculation delay (in milliseconds). + minimum: 0 + type: integer + maxDelayMs: + description: Maximum interval (in milliseconds) between two consecutive SPF calculations. + minimum: 1 + type: integer + type: object + type: object + version: + description: OSPF version to use. OSPFv2 is supported over IPv4-enabled interfaces, OSPFv3 over IPv6-enabled interfaces. + enum: + - v2 + - v3 + type: string + required: + - enabled + - version + type: object + status: + description: OSPFInstanceStatus defines the observed state of OSPFInstance + properties: + health: + description: Indicates the health score of the OSPF Instance. + type: integer + healthScoreReason: + description: Indicates the reason for the health score. + type: string + lastChange: + description: The time when the state of the resource last changed. + type: string + operationalState: + description: Operational state of the OSPF Instance. + type: string + type: object + type: object +served: true +storage: true +subresources: + status: {} diff --git a/static/resources/clusterproviders.notifiers.eda.nokia.com/v1.yaml b/static/resources/25.12.1/ospfinstancestates.protocols.eda.nokia.com/v1.yaml similarity index 62% rename from static/resources/clusterproviders.notifiers.eda.nokia.com/v1.yaml rename to static/resources/25.12.1/ospfinstancestates.protocols.eda.nokia.com/v1.yaml index 83739b6..abb9b3c 100644 --- a/static/resources/clusterproviders.notifiers.eda.nokia.com/v1.yaml +++ b/static/resources/25.12.1/ospfinstancestates.protocols.eda.nokia.com/v1.yaml @@ -1,7 +1,7 @@ name: v1 schema: openAPIV3Schema: - description: ClusterProvider is the Schema for the clusterproviders API + description: OSPFInstanceState is the Schema for the ospfinstancestates API properties: apiVersion: description: |- @@ -21,25 +21,26 @@ schema: metadata: type: object spec: - description: ClusterProviderSpec defines the desired state of ClusterProvider + description: OSPFInstanceStateSpec defines the desired state of OSPFInstanceState properties: - description: - description: A simple user provided description of this Provider + addressFamily: + description: Address family for OSPFv3 type: string + defaultOSPFInstance: + description: Denotes if the group is a DefaultOSPFInstance or OSPFInstance + type: boolean enabled: - default: true - description: Enable or disable this Provider + description: Indicates whether the OSPF Insance is administratively enabled type: boolean - uri: - description: |- - A URI to send notifications to. For example 'slack://token-a/token-b/token-c', - or 'discord://discord.com/api/webhooks/channel/token'. + version: + description: OSPF version used type: string required: - - uri + - defaultOSPFInstance + - enabled type: object status: - description: ClusterProviderStatus defines the observed state of ClusterProvider + description: OSPFInstanceStateStatus defines the observed state of OSPFInstanceState type: object type: object served: true diff --git a/static/resources/25.12.1/ospfinterfaces.protocols.eda.nokia.com/v1.yaml b/static/resources/25.12.1/ospfinterfaces.protocols.eda.nokia.com/v1.yaml new file mode 100644 index 0000000..a8e0525 --- /dev/null +++ b/static/resources/25.12.1/ospfinterfaces.protocols.eda.nokia.com/v1.yaml @@ -0,0 +1,137 @@ +additionalPrinterColumns: + - jsonPath: .status.lastChange + name: Last Change + type: date + - jsonPath: .status.operationalState + name: Operational State + type: string +name: v1 +schema: + openAPIV3Schema: + description: OSPFInterface is the Schema for the ospfinterfaces API + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + description: OSPFInterfaceSpec defines the desired state of OSPFInterface + properties: + deadIntervalSec: + description: Dead Interval in seconds. + maximum: 65535 + minimum: 3 + type: integer + helloIntervalSec: + description: Hello Interval in seconds. + maximum: 65535 + minimum: 1 + type: integer + interface: + description: Reference to a RoutedInterface. + type: string + interfaceKind: + default: ROUTEDINTERFACE + description: Reference to the Kind of interface to enable OSPF on. + enum: + - ROUTEDINTERFACE + type: string + metric: + description: Interface metric. + minimum: 0 + type: integer + mtu: + description: OSPF interface MTU + maximum: 10240 + minimum: 512 + type: integer + ospfArea: + description: Reference to a OSPFArea. + type: string + ospfBFD: + description: Configure BFD on the OSPF interface. + properties: + enabled: + default: false + description: Enables BFD on the OSPF interface. + type: boolean + strictMode: + description: Enables BFD Strict Mode on the OSPF interface. + type: boolean + strictModeHoldDownSec: + description: Enables Hold Down Timer for BFD Strict Mode, in seconds. + maximum: 3600 + minimum: 512 + type: integer + required: + - enabled + type: object + ospfInstance: + description: Reference to a OSPF Instance on which the OSPF area is configured. + type: string + passive: + description: Configure the OSPF interface as passive. + type: boolean + type: + default: PointToPoint + description: OSPF interface type. + enum: + - PointToPoint + - Broadcast + type: string + required: + - interface + - interfaceKind + - ospfArea + - ospfInstance + - type + type: object + status: + description: OSPFInterfaceStatus defines the observed state of OSPFInterface + properties: + health: + description: Indicates the health score of the OSPF interface. + type: integer + healthScoreReason: + description: Indicates the reason for the health score. + type: string + lastChange: + description: The time when the state of the resource last changed. + type: string + neighbors: + description: Neighbor status within the OSPF interface. + items: + properties: + adjacencyState: + description: Adjacency state of the OSPF neighbor. + type: string + neighborId: + description: Router ID of the OSPF neighbor. + type: string + type: object + type: array + numNeighbors: + description: The number of discovered neighbors. + type: integer + operationalState: + description: Operational state of the OSPF interface. + type: string + type: object + type: object +served: true +storage: true +subresources: + status: {} diff --git a/static/resources/25.12.1/ospfinterfacestates.protocols.eda.nokia.com/v1.yaml b/static/resources/25.12.1/ospfinterfacestates.protocols.eda.nokia.com/v1.yaml new file mode 100644 index 0000000..157e4c9 --- /dev/null +++ b/static/resources/25.12.1/ospfinterfacestates.protocols.eda.nokia.com/v1.yaml @@ -0,0 +1,85 @@ +name: v1 +schema: + openAPIV3Schema: + description: OSPFInterfaceState is the Schema for the ospfinterfacestates API + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + description: OSPFInterfaceStateSpec defines the desired state of OSPFInterfaceState + properties: + addressFamily: + description: Address family for OSPFv3 + type: string + area: + description: Reference to an ospf area + type: string + areaId: + description: AreaId that is configured on the node + type: string + defaultOSPFInterface: + description: Denotes if the interface is a DefaultOSPFInterface or OSPFInterface + type: boolean + instance: + description: Reference to an ospf instance + type: string + instanceEnabled: + description: Indicates whether the OSPF Insance is administratively enabled + type: boolean + interface: + description: Reference to an ospf interface + type: string + networkInstanceName: + description: The name of the network-instance + type: string + node: + description: The Node on which the OSPF Interface configuration resides + type: string + nodeInterface: + description: Node specific interface name, for example "ethernet-1/1", "1/1/c1/1" + type: string + nodeInterfaceName: + description: Configured interface name, for example "routed-interface" + type: string + operatingSystem: + description: Operating System of the Node + type: string + passive: + description: Reference to an ospf interface as passive. + type: boolean + router: + description: Router to which the OSPF Instance is attached + type: string + version: + description: OSPF version used + type: string + required: + - area + - areaId + - defaultOSPFInterface + - instance + - instanceEnabled + type: object + status: + description: OSPFInterfaceStateStatus defines the observed state of OSPFInterfaceState + type: object + type: object +served: true +storage: true +subresources: + status: {} diff --git a/static/resources/pings.oam.eda.nokia.com/v1alpha1.yaml b/static/resources/25.12.1/pings.oam.eda.nokia.com/v1alpha1.yaml similarity index 100% rename from static/resources/pings.oam.eda.nokia.com/v1alpha1.yaml rename to static/resources/25.12.1/pings.oam.eda.nokia.com/v1alpha1.yaml diff --git a/static/resources/policyattachments.qos.eda.nokia.com/v1.yaml b/static/resources/25.12.1/policyattachments.qos.eda.nokia.com/v1.yaml similarity index 100% rename from static/resources/policyattachments.qos.eda.nokia.com/v1.yaml rename to static/resources/25.12.1/policyattachments.qos.eda.nokia.com/v1.yaml diff --git a/static/resources/policyattachments.qos.eda.nokia.com/v1alpha1.yaml b/static/resources/25.12.1/policyattachments.qos.eda.nokia.com/v1alpha1.yaml similarity index 100% rename from static/resources/policyattachments.qos.eda.nokia.com/v1alpha1.yaml rename to static/resources/25.12.1/policyattachments.qos.eda.nokia.com/v1alpha1.yaml diff --git a/static/resources/policydeployments.qos.eda.nokia.com/v1.yaml b/static/resources/25.12.1/policydeployments.qos.eda.nokia.com/v1.yaml similarity index 100% rename from static/resources/policydeployments.qos.eda.nokia.com/v1.yaml rename to static/resources/25.12.1/policydeployments.qos.eda.nokia.com/v1.yaml diff --git a/static/resources/policydeployments.qos.eda.nokia.com/v1alpha1.yaml b/static/resources/25.12.1/policydeployments.qos.eda.nokia.com/v1alpha1.yaml similarity index 100% rename from static/resources/policydeployments.qos.eda.nokia.com/v1alpha1.yaml rename to static/resources/25.12.1/policydeployments.qos.eda.nokia.com/v1alpha1.yaml diff --git a/static/resources/policydeployments.routingpolicies.eda.nokia.com/v1alpha1.yaml b/static/resources/25.12.1/policydeployments.routingpolicies.eda.nokia.com/v1alpha1.yaml similarity index 100% rename from static/resources/policydeployments.routingpolicies.eda.nokia.com/v1alpha1.yaml rename to static/resources/25.12.1/policydeployments.routingpolicies.eda.nokia.com/v1alpha1.yaml diff --git a/static/resources/25.12.1/policys.routingpolicies.eda.nokia.com/v1alpha1.yaml b/static/resources/25.12.1/policys.routingpolicies.eda.nokia.com/v1alpha1.yaml new file mode 100644 index 0000000..3683d61 --- /dev/null +++ b/static/resources/25.12.1/policys.routingpolicies.eda.nokia.com/v1alpha1.yaml @@ -0,0 +1,307 @@ +name: v1alpha1 +schema: + openAPIV3Schema: + description: Policy is the Schema for the policys API + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + description: Policy defines a set of rules and actions to manage network traffic or routing behavior, with statements that include matching conditions and actions, such as accepting or rejecting routes, or modifying route attributes like BGP parameters. + properties: + configuredName: + description: The name of the policy to configure on the device. + type: string + defaultAction: + description: The default action to apply if no other actions are defined. + properties: + bgp: + description: Actions related to the BGP protocol. + properties: + asPathPrepend: + description: AS number to prepend to the AS Path attributes. + format: int32 + maximum: 4294967295 + minimum: 1 + type: integer + asPathRemove: + description: Clear the AS path to make it empty. + type: boolean + asPathReplace: + description: Replace the existing AS path with a new AS_SEQUENCE containing the listed AS numbers. + items: + format: int32 + type: integer + type: array + communitySet: + description: Modify BGP communities associated with the route using hybrid Community Sets. + properties: + add: + description: List of community sets to add to the route. + items: + type: string + maxItems: 1 + type: array + remove: + description: List of community sets to remove from the route. + items: + type: string + maxItems: 1 + type: array + replace: + description: List of community sets to replace the existing communities with. Cannot be combined with Add or Remove. + items: + type: string + maxItems: 1 + type: array + type: object + localPreference: + description: Set a new LOCAL_PREF value for matching BGP routes. + format: int32 + maximum: 4294967295 + minimum: 0 + type: integer + med: + description: Set a new MED value. + properties: + numericalValue: + description: Fixed numerical value to set or add/subtract. + maximum: 4294967295 + minimum: 0 + type: integer + operation: + description: The operation to perform on the MED value. + enum: + - Set + - Add + - Subtract + type: string + valueType: + description: Use a fixed value or an IGP metric to adjust the MED. + enum: + - Fixed + - IGP + type: string + type: object + setOrigin: + description: Set a new ORIGIN attribute for matching BGP routes. + enum: + - egp + - igp + - incomplete + type: string + type: object + policyResult: + description: Final disposition for the route. + enum: + - accept + - reject + - NextPolicy + - NextStatement + type: string + tags: + description: Manipulate internal route tags associated with the route. + properties: + tagSet: + description: Add tags to the route from the referenced Tag Set. + type: string + type: object + type: object + statement: + description: List of policy statements. + items: + properties: + action: + description: Actions for routes that match the policy statement. + properties: + bgp: + description: Actions related to the BGP protocol. + properties: + asPathPrepend: + description: AS number to prepend to the AS Path attributes. + format: int32 + maximum: 4294967295 + minimum: 1 + type: integer + asPathRemove: + description: Clear the AS path to make it empty. + type: boolean + asPathReplace: + description: Replace the existing AS path with a new AS_SEQUENCE containing the listed AS numbers. + items: + format: int32 + type: integer + type: array + communitySet: + description: Modify BGP communities associated with the route using hybrid Community Sets. + properties: + add: + description: List of community sets to add to the route. + items: + type: string + maxItems: 1 + type: array + remove: + description: List of community sets to remove from the route. + items: + type: string + maxItems: 1 + type: array + replace: + description: List of community sets to replace the existing communities with. Cannot be combined with Add or Remove. + items: + type: string + maxItems: 1 + type: array + type: object + localPreference: + description: Set a new LOCAL_PREF value for matching BGP routes. + format: int32 + maximum: 4294967295 + minimum: 0 + type: integer + med: + description: Set a new MED value. + properties: + numericalValue: + description: Fixed numerical value to set or add/subtract. + maximum: 4294967295 + minimum: 0 + type: integer + operation: + description: The operation to perform on the MED value. + enum: + - Set + - Add + - Subtract + type: string + valueType: + description: Use a fixed value or an IGP metric to adjust the MED. + enum: + - Fixed + - IGP + type: string + type: object + setOrigin: + description: Set a new ORIGIN attribute for matching BGP routes. + enum: + - egp + - igp + - incomplete + type: string + type: object + policyResult: + description: Final disposition for the route. + enum: + - accept + - reject + - NextPolicy + - NextStatement + type: string + tags: + description: Manipulate internal route tags associated with the route. + properties: + tagSet: + description: Add tags to the route from the referenced Tag Set. + type: string + type: object + type: object + match: + description: Match conditions of the policy statement. + properties: + bgp: + description: Configuration for BGP-specific policy match criteria. + properties: + asPathMatch: + description: AS Path match criteria. + properties: + asPathExpression: + description: A singular regular expression string to match against AS_PATH objects. Mutually exclusive with the ASPathSet reference. + type: string + asPathSet: + description: Reference to an ASPathSet resource. Mutually exclusive with the ASPathExpression. + type: string + matchSetOptions: + description: The matching criteria that applies to the members in the referenced set. + enum: + - Any + - All + - Invert + type: string + type: object + communitySet: + description: Match conditions for BGP communities. + type: string + evpnRouteType: + description: Match conditions for EVPN route types. + items: + type: integer + type: array + type: object + family: + description: Address families that the route belongs to. + items: + type: string + type: array + prefixSet: + description: Reference to a PrefixSet resource. + type: string + protocol: + description: The route protocol type to match. + enum: + - AGGREGATE + - ARP_ND + - BGP + - BGP_EVPN + - BGP_EVPN_IFF + - BGP_EVPN_IFL_HOST + - DHCP + - GRIBI + - HOST + - ISIS + - LOCAL + - LINUX + - NDK1 + - NDK2 + - OSPFV2 + - OSPFV3 + - STATIC + type: string + tags: + description: Match based on the internal route tags associated with the route. + properties: + tagSet: + description: Reference to a TagSet resource. + type: string + type: object + type: object + name: + description: Name of the policy statement. + type: string + required: + - name + type: object + type: array + type: object + status: + description: PolicyStatus defines the observed state of Policy. + type: object + type: object +served: true +storage: true +subresources: + status: {} diff --git a/static/resources/powersupplies.components.eda.nokia.com/v1.yaml b/static/resources/25.12.1/powersupplies.components.eda.nokia.com/v1.yaml similarity index 100% rename from static/resources/powersupplies.components.eda.nokia.com/v1.yaml rename to static/resources/25.12.1/powersupplies.components.eda.nokia.com/v1.yaml diff --git a/static/resources/prefixsetdeployments.routingpolicies.eda.nokia.com/v1alpha1.yaml b/static/resources/25.12.1/prefixsetdeployments.routingpolicies.eda.nokia.com/v1alpha1.yaml similarity index 100% rename from static/resources/prefixsetdeployments.routingpolicies.eda.nokia.com/v1alpha1.yaml rename to static/resources/25.12.1/prefixsetdeployments.routingpolicies.eda.nokia.com/v1alpha1.yaml diff --git a/static/resources/25.12.1/prefixsets.routingpolicies.eda.nokia.com/v1alpha1.yaml b/static/resources/25.12.1/prefixsets.routingpolicies.eda.nokia.com/v1alpha1.yaml new file mode 100644 index 0000000..7af9016 --- /dev/null +++ b/static/resources/25.12.1/prefixsets.routingpolicies.eda.nokia.com/v1alpha1.yaml @@ -0,0 +1,63 @@ +name: v1alpha1 +schema: + openAPIV3Schema: + description: PrefixSet is the Schema for the prefixsets API + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + description: PrefixSet defines a collection of IP prefixes, which may include specific CIDR blocks or a range of prefixes. This set is typically used for matching routes or implementing routing policies. + properties: + configuredName: + description: The name of the prefixset to configure on the device. + type: string + prefix: + description: List of IPv4 or IPv6 prefixes in CIDR notation. + items: + properties: + endRange: + description: The end range when using a range to match prefixes. + maximum: 128 + minimum: 0 + type: integer + exact: + description: Indicates if it is an exact match. Ignores the StartRange and EndRange if this param is set. + type: boolean + prefix: + description: The IPv4 or IPv6 prefix in CIDR notation with mask. + type: string + startRange: + description: If specifying a range, this is the start of the range. + maximum: 128 + minimum: 0 + type: integer + required: + - prefix + type: object + type: array + required: + - prefix + type: object + status: + description: PrefixSetStatus defines the observed state of PrefixSet. + type: object + type: object +served: true +storage: true +subresources: + status: {} diff --git a/static/resources/producers.kafka.eda.nokia.com/v1alpha1.yaml b/static/resources/25.12.1/producers.kafka.eda.nokia.com/v1alpha1.yaml similarity index 100% rename from static/resources/producers.kafka.eda.nokia.com/v1alpha1.yaml rename to static/resources/25.12.1/producers.kafka.eda.nokia.com/v1alpha1.yaml diff --git a/static/resources/queues.qos.eda.nokia.com/v1.yaml b/static/resources/25.12.1/queues.qos.eda.nokia.com/v1.yaml similarity index 100% rename from static/resources/queues.qos.eda.nokia.com/v1.yaml rename to static/resources/25.12.1/queues.qos.eda.nokia.com/v1.yaml diff --git a/static/resources/queues.qos.eda.nokia.com/v1alpha1.yaml b/static/resources/25.12.1/queues.qos.eda.nokia.com/v1alpha1.yaml similarity index 100% rename from static/resources/queues.qos.eda.nokia.com/v1alpha1.yaml rename to static/resources/25.12.1/queues.qos.eda.nokia.com/v1alpha1.yaml diff --git a/static/resources/25.12.1/registries.appstore.eda.nokia.com/v1.yaml b/static/resources/25.12.1/registries.appstore.eda.nokia.com/v1.yaml new file mode 100644 index 0000000..549a8ee --- /dev/null +++ b/static/resources/25.12.1/registries.appstore.eda.nokia.com/v1.yaml @@ -0,0 +1,79 @@ +additionalPrinterColumns: + - jsonPath: .spec.remoteURL + name: RemoteURL + type: string + - jsonPath: .spec.mirror + name: Mirror + type: string + - jsonPath: .status.reachable + name: Reachable + type: string +name: v1 +schema: + openAPIV3Schema: + description: Registry is the Schema for the Registry API + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + description: RegistrySpec defines the desired state of a Registry + properties: + authSecretRef: + description: |- + AuthSecretRef is the authentication secret reference, used for authentication. + Must be in the same namespace as the registry. + type: string + mirror: + description: |- + Mirror registry of the original remote registry. + App store will use the mirror instead of the original registry that is referenced by a registry. + type: string + remoteURL: + description: |- + RemoteURL is the remote URL of the registry. Supported URI schemes: 'https://' and 'http://'. + Default is HTTPS if no scheme is given. + type: string + skipTLSVerify: + default: false + description: Skip TLS Verification on connection + type: boolean + title: + description: Title is an UI-friendly name for the registry. + maxLength: 50 + type: string + required: + - remoteURL + type: object + status: + description: RegistryStatus defines the observed state of Registry + properties: + error: + description: Error denotes the last error that was encountered by the controller. + type: string + reachable: + default: false + description: Reachable indicates if the registry is reachable. + type: boolean + required: + - error + type: object + type: object +served: true +storage: true +subresources: + status: {} diff --git a/static/resources/roles.core.eda.nokia.com/v1.yaml b/static/resources/25.12.1/roles.core.eda.nokia.com/v1.yaml similarity index 100% rename from static/resources/roles.core.eda.nokia.com/v1.yaml rename to static/resources/25.12.1/roles.core.eda.nokia.com/v1.yaml diff --git a/static/resources/25.12.1/routedinterfaces.services.eda.nokia.com/v1.yaml b/static/resources/25.12.1/routedinterfaces.services.eda.nokia.com/v1.yaml new file mode 100644 index 0000000..67b8ad3 --- /dev/null +++ b/static/resources/25.12.1/routedinterfaces.services.eda.nokia.com/v1.yaml @@ -0,0 +1,409 @@ +additionalPrinterColumns: + - jsonPath: .spec.ipMtu + name: MTU + type: string + - jsonPath: .status.operationalState + name: OperationalState + type: string + - jsonPath: .status.lastChange + name: LastChange + type: string + - jsonPath: .metadata.creationTimestamp + name: Age + type: date +name: v1 +schema: + openAPIV3Schema: + description: RoutedInterface is the Schema for the routedinterfaces API + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + description: The RoutedInterface enables the configuration and management of Layer 3 interfaces for routing traffic between different networks. This resource allows for specifying an underlying Interface and Router, configuring VLAN IDs, and setting the IP MTU. It also supports the learning of unsolicited ARPs, defining both IPv4 and IPv6 addresses, and enabling unnumbered interfaces. Advanced features such as BFD configuration, Proxy ARP/ND, and ARP timeout settings are included to ensure robust and efficient routing. + properties: + arpTimeout: + default: 14400 + description: Duration of time that dynamic ARP entries remain in the ARP cache before they expire. + format: int32 + type: integer + bfd: + description: Enables BFD on the RoutedInterface. + properties: + desiredMinTransmitInt: + default: 1000000 + description: The minimum interval in microseconds between transmission of BFD control packets. + maximum: 100000000 + minimum: 10000 + type: integer + detectionMultiplier: + default: 3 + description: The number of packets that must be missed to declare this session as down. + maximum: 20 + minimum: 3 + type: integer + enabled: + default: false + description: Enables Biforward Detection. + type: boolean + minEchoReceiveInterval: + default: 0 + description: The minimum interval between echo packets the local node can receive. + maximum: 100000000 + minimum: 0 + type: integer + requiredMinReceive: + default: 1000000 + description: The minimum interval in microseconds between received BFD control packets that this system should support. + maximum: 100000000 + minimum: 10000 + type: integer + ttl: + description: Sets custom IP TTL or Hop Limit for multi-hop BFD sessions packets. Not applicable to single-hop BFD sessions. + maximum: 255 + minimum: 2 + type: integer + required: + - enabled + type: object + description: + description: The description of the RoutedInterface. + type: string + egress: + description: Manages actions on traffic at Egress. + properties: + filters: + description: List of Filter references to use at egress. + items: + type: string + type: array + qosPolicy: + description: List of QoS Egress policy references to use at egress. + items: + type: string + type: array + type: object + hostRoutePopulate: + description: Configures host route population based on ARP/ND entries. + properties: + dynamic: + description: Create host routes out of dynamic ARP/ND entries. + properties: + datapathProgramming: + description: Enable datapath programming for host routes. + type: boolean + populate: + default: false + description: Enable population of host routes based on ARP/ND entries. + type: boolean + required: + - populate + type: object + evpn: + description: Create host routes out of EVPN learned ARP/ND entries. + properties: + datapathProgramming: + description: Enable datapath programming for host routes. + type: boolean + populate: + default: false + description: Enable population of host routes based on ARP/ND entries. + type: boolean + required: + - populate + type: object + static: + description: Create host routes out of static ARP/ND entries. + properties: + datapathProgramming: + description: Enable datapath programming for host routes. + type: boolean + populate: + default: false + description: Enable population of host routes based on ARP/ND entries. + type: boolean + required: + - populate + type: object + type: object + ingress: + description: Manages actions on traffic at Ingress. + properties: + filters: + description: List of Filter references to use at ingress. + items: + type: string + type: array + qosPolicy: + description: List of QoS Ingress policy references to use at ingress. + items: + type: string + type: array + type: object + interface: + description: Reference to an Interface to use for attachment. + type: string + ipMTU: + default: 1500 + description: IP MTU for the RoutedInterface. + maximum: 9486 + minimum: 1280 + type: integer + ipv4Addresses: + description: List of IPv4 addresses in IP/mask form, e.g., 192.168.0.1/24. + items: + properties: + ipPrefix: + description: Address and mask to use + type: string + primary: + description: Indicates which address to use as primary for broadcast + type: boolean + required: + - ipPrefix + type: object + type: array + ipv4Parameters: + properties: + directedBroadcast: + description: Allow receiving and forwarding of directed broadcast packets. Enabled when set to true. + type: boolean + type: object + ipv6Addresses: + description: List of IPv6 addresses in IP/mask form, e.g., fc00::1/120. + items: + properties: + ipPrefix: + description: Address and mask to use + type: string + primary: + description: Indicates which address to use as primary for broadcast + type: boolean + required: + - ipPrefix + type: object + type: array + ipv6RouterAdvertisement: + description: Manages IPV6 Router Advertisement parameters. + properties: + currentHopLimit: + default: 64 + description: The current hop limit to advertise in the router advertisement messages. + format: int32 + maximum: 255 + minimum: 0 + type: integer + enabled: + default: false + description: Enable or disable IPv6 router advertisements. + type: boolean + ipMTU: + description: The IP MTU to advertise in the router advertisement messages. + format: int32 + maximum: 9486 + minimum: 1280 + type: integer + managedConfigurationFlag: + default: false + description: Enable DHCPv6 for address configuration (M-bit). + type: boolean + maxAdvertisementInterval: + default: 600 + description: Maximum time between router advertisements (in seconds). + format: int32 + maximum: 1800 + minimum: 4 + type: integer + minAdvertisementInterval: + default: 200 + description: Minimum time between router advertisements (in seconds). + format: int32 + maximum: 1350 + minimum: 3 + type: integer + otherConfigurationFlag: + default: false + description: Enable DHCPv6 for other configuration (O-bit). + type: boolean + prefixes: + description: IPv6 prefixes to advertise in router advertisements. + items: + description: IPv6Prefix defines the configuration for an IPv6 prefix advertisement. + properties: + autonomousFlag: + default: true + description: When this is set in the prefix information option hosts can use the prefix for stateless address autoconfiguration (SLAAC). + type: boolean + onLinkFlag: + default: true + description: When this is set in the prefix information option hosts can use the prefix for on-link determination. + type: boolean + preferredLifetime: + default: 604800 + description: The length of time in seconds (relative to the time the packet is sent) that addresses generated from the prefix via stateless address autoconfiguration remain preferred. + format: int32 + maximum: 4294967295 + minimum: 0 + type: integer + prefix: + description: An IPv6 global unicast address prefix. + type: string + validLifetime: + default: 2592000 + description: The length of time in seconds (relative to the time the packet is sent) that the prefix is valid for the purpose of on-link determination. + format: int32 + maximum: 4294967295 + minimum: 0 + type: integer + required: + - prefix + type: object + type: array + reachableTime: + default: 0 + description: Time in milliseconds for Neighbor Unreachability Detection. + format: int32 + maximum: 3600000 + minimum: 0 + type: integer + retransmitTime: + default: 0 + description: Time in milliseconds between retransmitted NS messages. + format: int32 + maximum: 1800000 + minimum: 0 + type: integer + routerLifetime: + default: 1800 + description: Router lifetime in seconds for default gateway. + format: int32 + maximum: 9000 + minimum: 0 + type: integer + required: + - currentHopLimit + - enabled + - managedConfigurationFlag + - maxAdvertisementInterval + - minAdvertisementInterval + - otherConfigurationFlag + - retransmitTime + - routerLifetime + type: object + l3ProxyARPND: + description: L3 Proxy ARP and ND configuration. + properties: + proxyARP: + default: false + description: Select whether Proxy ARP should be enabled. + type: boolean + proxyND: + default: false + description: Select whether Proxy ND should be enabled. + type: boolean + type: object + learnUnsolicited: + default: NONE + description: Enable or disable learning of unsolicited ARPs. + enum: + - BOTH + - GLOBAL + - LINK-LOCAL + - NONE + type: string + router: + description: Reference to a Router. + type: string + unnumbered: + description: Enables the use of unnumbered interfaces on the IRBInterface. If IPv6 is specified, no IP address are configured on the sub-interface and only the link local address will be used. If any IP addresses are specified for either IPv4 or IPv6 that will take precedence and IPs will be assigned to the interfaces. (Deprecated, Use IPv6RouterAdvertisement) + enum: + - IPV6 + type: string + vlanID: + default: pool + description: Single value between 1-4094 support, ranges supported in the format x-y,x-y, or the special keyword null, any, untagged or pool for auto allocation. + type: string + vlanPool: + default: vlan-pool + description: Reference to a VLAN pool to use for allocations. + type: string + required: + - interface + - router + type: object + status: + description: RoutedInterfaceStatus defines the observed state of RoutedInterface + properties: + health: + description: Indicates the health score of the RoutedInterface. + type: integer + healthScoreReason: + description: Indicates the reason for the health score. + type: string + interfaces: + description: Sub-interface status within the RoutedInterface. + items: + properties: + enabled: + description: The administrative status of the SubInterface. + type: boolean + interface: + description: Normalized interface name. + type: string + interfaceResource: + description: Eda interface resource. + type: string + lastChange: + description: Indicates when this SubInterface last changed state. + type: string + node: + description: Reference to Node object. + type: string + nodeInterface: + description: Node specific interface name. + type: string + operatingSystem: + description: Operating System of the Node. + type: string + operationalState: + description: Indicates the current operational state of the SubInterface. + type: string + subInterfaceIndex: + description: Index allocated to the subinterface on the associated interface for the given VLAN. + type: integer + vlanID: + description: vlan assigned to this subinterface. + type: string + required: + - interface + - interfaceResource + - node + - nodeInterface + type: object + type: array + lastChange: + description: The time when the state of the resource last changed. + type: string + operationalState: + description: Operational state of the RoutedInterface. + type: string + type: object + type: object +served: true +storage: true +subresources: + status: {} diff --git a/static/resources/25.12.1/routedinterfaces.services.eda.nokia.com/v1alpha1.yaml b/static/resources/25.12.1/routedinterfaces.services.eda.nokia.com/v1alpha1.yaml new file mode 100644 index 0000000..bd35901 --- /dev/null +++ b/static/resources/25.12.1/routedinterfaces.services.eda.nokia.com/v1alpha1.yaml @@ -0,0 +1,368 @@ +additionalPrinterColumns: + - jsonPath: .spec.ipMtu + name: MTU + type: string + - jsonPath: .status.operationalState + name: OperationalState + type: string + - jsonPath: .status.lastChange + name: LastChange + type: string + - jsonPath: .metadata.creationTimestamp + name: Age + type: date +deprecated: true +deprecationWarning: This version is deprecated and will no longer be supported in the next version. +name: v1alpha1 +schema: + openAPIV3Schema: + description: RoutedInterface is the Schema for the routedinterfaces API + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + description: The RoutedInterface enables the configuration and management of Layer 3 interfaces for routing traffic between different networks. This resource allows for specifying an underlying Interface and Router, configuring VLAN IDs, and setting the IP MTU. It also supports the learning of unsolicited ARPs, defining both IPv4 and IPv6 addresses, and enabling unnumbered interfaces. Advanced features such as BFD configuration, Proxy ARP/ND, and ARP timeout settings are included to ensure robust and efficient routing. + properties: + arpTimeout: + default: 14400 + description: Duration of time that dynamic ARP entries remain in the ARP cache before they expire. + format: int32 + type: integer + bfd: + description: Enables BFD on the RoutedInterface. + properties: + desiredMinTransmitInt: + default: 1000000 + description: The minimum interval in microseconds between transmission of BFD control packets. + maximum: 100000000 + minimum: 10000 + type: integer + detectionMultiplier: + default: 3 + description: The number of packets that must be missed to declare this session as down. + maximum: 20 + minimum: 3 + type: integer + enabled: + default: false + description: Enables Biforward Detection. + type: boolean + minEchoReceiveInterval: + default: 0 + description: The minimum interval between echo packets the local node can receive. + maximum: 100000000 + minimum: 0 + type: integer + requiredMinReceive: + default: 1000000 + description: The minimum interval in microseconds between received BFD control packets that this system should support. + maximum: 100000000 + minimum: 10000 + type: integer + ttl: + description: Sets custom IP TTL or Hop Limit for multi-hop BFD sessions packets. Not applicable to single-hop BFD sessions. + maximum: 255 + minimum: 2 + type: integer + required: + - enabled + type: object + description: + description: The description of the RoutedInterface. + type: string + egress: + description: Manages actions on traffic at Egress. + properties: + filters: + description: List of Filter references to use at egress. + items: + type: string + type: array + qosPolicy: + description: List of QoS Egress policy references to use at egress. + items: + type: string + type: array + type: object + ingress: + description: Manages actions on traffic at Ingress. + properties: + filters: + description: List of Filter references to use at ingress. + items: + type: string + type: array + qosPolicy: + description: List of QoS Ingress policy references to use at ingress. + items: + type: string + type: array + type: object + interface: + description: Reference to an Interface to use for attachment. + type: string + ipMTU: + default: 1500 + description: IP MTU for the RoutedInterface. + maximum: 9486 + minimum: 1280 + type: integer + ipv4Addresses: + description: List of IPv4 addresses in IP/mask form, e.g., 192.168.0.1/24. + items: + properties: + ipPrefix: + description: Address and mask to use + type: string + primary: + description: Indicates which address to use as primary for broadcast + type: boolean + required: + - ipPrefix + type: object + type: array + ipv4Parameters: + description: Manages IPv4-specific additional parameters that are not applicable to IPv6. + properties: + directedBroadcast: + description: Allow receiving and forwarding of directed broadcast packets. Enabled when set to true. + type: boolean + type: object + ipv6Addresses: + description: List of IPv6 addresses in IP/mask form, e.g., fc00::1/120. + items: + properties: + ipPrefix: + description: Address and mask to use + type: string + primary: + description: Indicates which address to use as primary for broadcast + type: boolean + required: + - ipPrefix + type: object + type: array + ipv6RouterAdvertisement: + properties: + currentHopLimit: + default: 64 + description: The current hop limit to advertise in the router advertisement messages. + format: int32 + maximum: 255 + minimum: 0 + type: integer + enabled: + default: false + description: Enable or disable IPv6 router advertisements. + type: boolean + ipMTU: + description: The IP MTU to advertise in the router advertisement messages. + format: int32 + maximum: 9486 + minimum: 1280 + type: integer + managedConfigurationFlag: + default: false + description: Enable DHCPv6 for address configuration (M-bit). + type: boolean + maxAdvertisementInterval: + default: 600 + description: Maximum time between router advertisements (in seconds). + format: int32 + maximum: 1800 + minimum: 4 + type: integer + minAdvertisementInterval: + default: 200 + description: Minimum time between router advertisements (in seconds). + format: int32 + maximum: 1350 + minimum: 3 + type: integer + otherConfigurationFlag: + default: false + description: Enable DHCPv6 for other configuration (O-bit). + type: boolean + prefixes: + description: IPv6 prefixes to advertise in router advertisements. + items: + description: IPv6Prefix defines the configuration for an IPv6 prefix advertisement. + properties: + autonomousFlag: + default: true + description: When this is set in the prefix information option hosts can use the prefix for stateless address autoconfiguration (SLAAC). + type: boolean + onLinkFlag: + default: true + description: When this is set in the prefix information option hosts can use the prefix for on-link determination. + type: boolean + preferredLifetime: + default: 604800 + description: The length of time in seconds (relative to the time the packet is sent) that addresses generated from the prefix via stateless address autoconfiguration remain preferred. + format: int32 + maximum: 4294967295 + minimum: 0 + type: integer + prefix: + description: An IPv6 global unicast address prefix. + type: string + validLifetime: + default: 2592000 + description: The length of time in seconds (relative to the time the packet is sent) that the prefix is valid for the purpose of on-link determination. + format: int32 + maximum: 4294967295 + minimum: 0 + type: integer + required: + - prefix + type: object + type: array + reachableTime: + default: 0 + description: Time in milliseconds for Neighbor Unreachability Detection. + format: int32 + maximum: 3600000 + minimum: 0 + type: integer + retransmitTime: + default: 0 + description: Time in milliseconds between retransmitted NS messages. + format: int32 + maximum: 1800000 + minimum: 0 + type: integer + routerLifetime: + default: 1800 + description: Router lifetime in seconds for default gateway. + format: int32 + maximum: 9000 + minimum: 0 + type: integer + required: + - currentHopLimit + - enabled + - managedConfigurationFlag + - maxAdvertisementInterval + - minAdvertisementInterval + - otherConfigurationFlag + - retransmitTime + - routerLifetime + type: object + l3ProxyARPND: + description: L3 Proxy ARP and ND configuration. + properties: + proxyARP: + default: false + description: Select whether Proxy ARP should be enabled. + type: boolean + proxyND: + default: false + description: Select whether Proxy ND should be enabled. + type: boolean + type: object + learnUnsolicited: + default: NONE + description: Enable or disable learning of unsolicited ARPs. + enum: + - BOTH + - GLOBAL + - LINK-LOCAL + - NONE + type: string + router: + description: Reference to a Router. + type: string + unnumbered: + description: Enables the use of unnumbered interfaces on the IRBInterface. If IPv6 is specified, no IP address are configured on the sub-interface and only the link local address will be used. If any IP addresses are specified for either IPv4 or IPv6 that will take precedence and IPs will be assigned to the interfaces. (Deprecated, Use IPv6RouterAdvertisement) + enum: + - IPV6 + type: string + vlanID: + default: pool + description: Single value between 1-4094 support, ranges supported in the format x-y,x-y, or the special keyword null, any, untagged or pool for auto allocation. + type: string + vlanPool: + default: vlan-pool + description: Reference to a VLAN pool to use for allocations. + type: string + required: + - interface + - router + type: object + status: + description: RoutedInterfaceStatus defines the observed state of RoutedInterface + properties: + health: + description: Indicates the health score of the RoutedInterface. + type: integer + healthScoreReason: + description: Indicates the reason for the health score. + type: string + interfaces: + description: Sub-interface status within the RoutedInterface. + items: + properties: + enabled: + description: The administrative status of the SubInterface. + type: boolean + interface: + description: Normalized interface name. + type: string + interfaceResource: + description: Eda interface resource. + type: string + lastChange: + description: Indicates when this SubInterface last changed state. + type: string + node: + description: Reference to Node object. + type: string + nodeInterface: + description: Node specific interface name. + type: string + operatingSystem: + description: Operating System of the Node. + type: string + operationalState: + description: Indicates the current operational state of the SubInterface. + type: string + subInterfaceIndex: + description: Index allocated to the subinterface on the associated interface for the given VLAN. + type: integer + vlanID: + description: vlan assigned to this subinterface. + type: string + required: + - interface + - interfaceResource + - node + - nodeInterface + type: object + type: array + lastChange: + description: The time when the state of the resource last changed. + type: string + operationalState: + description: Operational state of the RoutedInterface. + type: string + type: object + type: object +served: true +storage: false +subresources: + status: {} diff --git a/static/resources/25.12.1/routedinterfacestates.services.eda.nokia.com/v1.yaml b/static/resources/25.12.1/routedinterfacestates.services.eda.nokia.com/v1.yaml new file mode 100644 index 0000000..f049fd1 --- /dev/null +++ b/static/resources/25.12.1/routedinterfacestates.services.eda.nokia.com/v1.yaml @@ -0,0 +1,105 @@ +name: v1 +schema: + openAPIV3Schema: + description: RoutedInterfaceState is the Schema for the routedinterfacestates API + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + description: RoutedInterfaceStateSpec defines the desired state of RoutedInterfaceState + properties: + interfaces: + items: + properties: + interface: + description: Normalized interface name + type: string + interfaceResource: + description: Eda interface resource + type: string + node: + description: Reference to Node object + type: string + nodeInterface: + description: Node specific interface name + type: string + nodeSubInterface: + description: Node specific subinterface name + type: string + operatingSystem: + description: Operating System of the Node + type: string + subInterfaceIndex: + description: Index allocated to the subinterface on the associated interface for the given VLAN + type: integer + vlanID: + description: vlan assigned to this subinterface + type: string + required: + - interface + - interfaceResource + - node + - nodeInterface + type: object + type: array + ipv4Addresses: + description: List of IPv4 addresses + items: + properties: + ipPrefix: + description: Address and mask to use + type: string + primary: + description: Indicates which address to use as primary for broadcast + type: boolean + required: + - ipPrefix + type: object + type: array + ipv6Addresses: + description: List of IPv6 addresses + items: + properties: + ipPrefix: + description: Address and mask to use + type: string + primary: + description: Indicates which address to use as primary for broadcast + type: boolean + required: + - ipPrefix + type: object + type: array + router: + description: Router the RoutedInterface is attached to + type: string + routerConfiguredName: + type: string + required: + - interfaces + - router + - routerConfiguredName + type: object + status: + description: RoutedInterfaceStateStatus defines the observed state of RoutedInterfaceState + type: object + type: object +served: true +storage: true +subresources: + status: {} diff --git a/static/resources/routedinterfacestates.services.eda.nokia.com/v1alpha1.yaml b/static/resources/25.12.1/routedinterfacestates.services.eda.nokia.com/v1alpha1.yaml similarity index 100% rename from static/resources/routedinterfacestates.services.eda.nokia.com/v1alpha1.yaml rename to static/resources/25.12.1/routedinterfacestates.services.eda.nokia.com/v1alpha1.yaml diff --git a/static/resources/25.12.1/routelookups.routing.eda.nokia.com/v1alpha1.yaml b/static/resources/25.12.1/routelookups.routing.eda.nokia.com/v1alpha1.yaml new file mode 100644 index 0000000..99b743b --- /dev/null +++ b/static/resources/25.12.1/routelookups.routing.eda.nokia.com/v1alpha1.yaml @@ -0,0 +1,137 @@ +name: v1alpha1 +schema: + openAPIV3Schema: + description: RouteLookup is the Schema for the routelookups API + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + description: |- + This workflow is used to look up routes on a set of nodes. + It takes an address, and an optional list of nodes (or node selectors - a list of label expressions) to perform the lookup on, + and returns the matching route, and the set of egress interfaces that would be used to reach it. + properties: + address: + description: |- + Address to perform a lookup for. + This is a standard IPv4 or IPv6 address, excluding mask or prefix length, e.g. 12.0.0.1. + type: string + networkInstance: + description: |- + Network Instance is the locally named network instance to use for the lookup. + Can be omitted if the default network instance is to be used. + type: string + nodeSelectors: + description: |- + Node Selectors is a list of node label selectors to execute lookups on. + This is a list of label expressions, e.g. ["eda.nokia.com/role=leaf", "eda.nokia.com/region=us-west"]. + items: + type: string + type: array + nodes: + description: Nodes is a list of node names to execute lookups on. + items: + type: string + type: array + resolve: + default: true + description: Resolve indicates whether indirect next hops should be resolved. + type: boolean + required: + - address + - resolve + type: object + status: + description: RouteLookupStatus defines the observed state of RouteLookup + properties: + found: + type: boolean + nodesWithRoute: + type: integer + results: + items: + properties: + error: + type: string + found: + type: boolean + networkInstance: + type: string + nextHopGroupId: + format: int64 + type: integer + nextHops: + items: + properties: + indirect: + properties: + ipPrefix: + type: string + nextHopGroupId: + format: int64 + type: integer + resolved: + type: boolean + type: + type: string + type: object + interfaces: + items: + properties: + localAddress: + description: Local IP address of the egress interface + type: string + name: + description: Name of the egress interface. + type: string + peerNode: + description: The node this interface is connected to. + type: string + required: + - name + type: object + type: array + ipAddress: + type: string + nextHopId: + format: int64 + type: integer + type: + type: string + type: object + type: array + node: + type: string + rawOutput: + type: string + route: + type: string + required: + - found + type: object + type: array + totalNodes: + type: integer + required: + - found + type: object + type: object +served: true +storage: true +subresources: + status: {} diff --git a/static/resources/routerdeployments.services.eda.nokia.com/v1.yaml b/static/resources/25.12.1/routerdeployments.services.eda.nokia.com/v1.yaml similarity index 100% rename from static/resources/routerdeployments.services.eda.nokia.com/v1.yaml rename to static/resources/25.12.1/routerdeployments.services.eda.nokia.com/v1.yaml diff --git a/static/resources/routerdeployments.services.eda.nokia.com/v1alpha1.yaml b/static/resources/25.12.1/routerdeployments.services.eda.nokia.com/v1alpha1.yaml similarity index 100% rename from static/resources/routerdeployments.services.eda.nokia.com/v1alpha1.yaml rename to static/resources/25.12.1/routerdeployments.services.eda.nokia.com/v1alpha1.yaml diff --git a/static/resources/routereflectorclients.protocols.eda.nokia.com/v1.yaml b/static/resources/25.12.1/routereflectorclients.protocols.eda.nokia.com/v1.yaml similarity index 100% rename from static/resources/routereflectorclients.protocols.eda.nokia.com/v1.yaml rename to static/resources/25.12.1/routereflectorclients.protocols.eda.nokia.com/v1.yaml diff --git a/static/resources/routereflectorclients.protocols.eda.nokia.com/v1alpha1.yaml b/static/resources/25.12.1/routereflectorclients.protocols.eda.nokia.com/v1alpha1.yaml similarity index 100% rename from static/resources/routereflectorclients.protocols.eda.nokia.com/v1alpha1.yaml rename to static/resources/25.12.1/routereflectorclients.protocols.eda.nokia.com/v1alpha1.yaml diff --git a/static/resources/routereflectorclientstates.protocols.eda.nokia.com/v1.yaml b/static/resources/25.12.1/routereflectorclientstates.protocols.eda.nokia.com/v1.yaml similarity index 100% rename from static/resources/routereflectorclientstates.protocols.eda.nokia.com/v1.yaml rename to static/resources/25.12.1/routereflectorclientstates.protocols.eda.nokia.com/v1.yaml diff --git a/static/resources/routereflectorclientstates.protocols.eda.nokia.com/v1alpha1.yaml b/static/resources/25.12.1/routereflectorclientstates.protocols.eda.nokia.com/v1alpha1.yaml similarity index 100% rename from static/resources/routereflectorclientstates.protocols.eda.nokia.com/v1alpha1.yaml rename to static/resources/25.12.1/routereflectorclientstates.protocols.eda.nokia.com/v1alpha1.yaml diff --git a/static/resources/routereflectors.protocols.eda.nokia.com/v1.yaml b/static/resources/25.12.1/routereflectors.protocols.eda.nokia.com/v1.yaml similarity index 100% rename from static/resources/routereflectors.protocols.eda.nokia.com/v1.yaml rename to static/resources/25.12.1/routereflectors.protocols.eda.nokia.com/v1.yaml diff --git a/static/resources/routereflectors.protocols.eda.nokia.com/v1alpha1.yaml b/static/resources/25.12.1/routereflectors.protocols.eda.nokia.com/v1alpha1.yaml similarity index 100% rename from static/resources/routereflectors.protocols.eda.nokia.com/v1alpha1.yaml rename to static/resources/25.12.1/routereflectors.protocols.eda.nokia.com/v1alpha1.yaml diff --git a/static/resources/routereflectorstates.protocols.eda.nokia.com/v1.yaml b/static/resources/25.12.1/routereflectorstates.protocols.eda.nokia.com/v1.yaml similarity index 100% rename from static/resources/routereflectorstates.protocols.eda.nokia.com/v1.yaml rename to static/resources/25.12.1/routereflectorstates.protocols.eda.nokia.com/v1.yaml diff --git a/static/resources/routereflectorstates.protocols.eda.nokia.com/v1alpha1.yaml b/static/resources/25.12.1/routereflectorstates.protocols.eda.nokia.com/v1alpha1.yaml similarity index 100% rename from static/resources/routereflectorstates.protocols.eda.nokia.com/v1alpha1.yaml rename to static/resources/25.12.1/routereflectorstates.protocols.eda.nokia.com/v1alpha1.yaml diff --git a/static/resources/25.12.1/routers.services.eda.nokia.com/v1.yaml b/static/resources/25.12.1/routers.services.eda.nokia.com/v1.yaml new file mode 100644 index 0000000..a920225 --- /dev/null +++ b/static/resources/25.12.1/routers.services.eda.nokia.com/v1.yaml @@ -0,0 +1,352 @@ +additionalPrinterColumns: + - jsonPath: .status.vni + name: VNI + type: string + - jsonPath: .status.evi + name: EVI + type: string + - jsonPath: .status.importTarget + name: Import Target + type: string + - jsonPath: .status.exportTarget + name: Export Target + type: string + - jsonPath: .status.operationalState + name: OperationalState + type: string + - jsonPath: .status.lastChange + name: LastChange + type: string +name: v1 +schema: + openAPIV3Schema: + description: Router is the Schema for the routers API + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + description: The Router enables the configuration and management of routing functions within a network. This resource allows for setting a unique Router ID, configuring VNIs and EVIs with options for automatic allocation, and defining import and export route targets. It also includes advanced configuration options such as BGP settings, including autonomous system numbers, AFI/SAFI options, and route advertisement preferences. Node selectors can be used to constrain the deployment of the router to specific nodes within the network. + properties: + bgp: + description: BGP configuration. + properties: + autonomousSystem: + description: Autonomous System number for BGP. + maximum: 4294967295 + minimum: 1 + type: integer + ebgpPreference: + default: 170 + description: Preference to be set for eBGP [default=170]. + maximum: 255 + minimum: 1 + type: integer + enabled: + default: false + description: Enable or disable BGP. + type: boolean + exportPolicy: + description: Reference to a Policy CR that will be used to filter routes advertised to peers. + items: + type: string + type: array + ibgpPreference: + default: 170 + description: Preference to be set for iBGP [default=170]. + maximum: 255 + minimum: 1 + type: integer + importPolicy: + description: Reference to a Policy CR that will be used to filter routes received from peers. + items: + type: string + type: array + ipAliasNexthops: + description: IP aliasing configuration. + items: + properties: + esi: + default: auto + description: 10 byte Ethernet Segment Identifier, if not set a type 0 ESI is generated. + type: string + nextHop: + description: The nexthop IP address to track for the IP alias. + type: string + preferredActiveNode: + description: When not set the ES is used in an all active mode. This references the TopoNode object and when set, the DF algorithm is configured to type preference and the selected Node is set with a higher preference value. All other Nodes have a lower value configured. + type: string + required: + - nextHop + type: object + type: array + ipv4Unicast: + description: Parameters relating to the IPv4 unicast AFI/SAFI. + properties: + advertiseIPV6NextHops: + description: Enables advertisement of IPv4 Unicast routes with IPv6 next-hops to peers. + type: boolean + enabled: + default: false + description: Enables the IPv4 unicast AFISAFI. + type: boolean + multipath: + description: Enable multipath. + properties: + allowMultipleAS: + default: true + description: When set to true, BGP is allowed to build a multipath set using BGP routes with different neighbor AS (most recent AS in the AS_PATH), When set to false, BGP is only allowed to use non-best paths for ECMP if they meet the multipath criteria and they have the same neighbor AS as the best path. + type: boolean + maxAllowedPaths: + description: The maximum number of BGP ECMP next-hops for BGP routes with an NLRI belonging to the address family of this configuration context. + maximum: 256 + minimum: 1 + type: integer + required: + - allowMultipleAS + - maxAllowedPaths + type: object + receiveIPV6NextHops: + description: Enables the advertisement of the RFC 5549 capability to receive IPv4 routes with IPv6 next-hops. + type: boolean + required: + - enabled + type: object + ipv6Unicast: + description: Parameters relating to the IPv6 unicast AFI/SAFI. + properties: + enabled: + default: false + description: Enables the IPv6 unicast AFISAFI + type: boolean + multipath: + description: Enable multipath + properties: + allowMultipleAS: + default: true + description: When set to true, BGP is allowed to build a multipath set using BGP routes with different neighbor AS (most recent AS in the AS_PATH), When set to false, BGP is only allowed to use non-best paths for ECMP if they meet the multipath criteria and they have the same neighbor AS as the best path. + type: boolean + maxAllowedPaths: + description: The maximum number of BGP ECMP next-hops for BGP routes with an NLRI belonging to the address family of this configuration context. + maximum: 256 + minimum: 1 + type: integer + required: + - allowMultipleAS + - maxAllowedPaths + type: object + required: + - enabled + type: object + keychain: + description: Keychain to be used for authentication + type: string + minWaitToAdvertise: + default: 0 + description: Minimum wait time before advertising routes post BGP restart. + maximum: 3600 + minimum: 0 + type: integer + rapidWithdrawl: + default: true + description: Enable rapid withdrawal in BGP. + type: boolean + waitForFIBInstall: + default: false + description: Wait for FIB installation before advertising routes. + type: boolean + type: object + configuredName: + description: The name of the Router to configure on the device. + type: string + description: + description: The description of the Router. + type: string + ecmp: + description: Set the maximum number of ECMP paths for the Router. This is supported only by some platforms, and will be ignored for others. + maximum: 256 + minimum: 1 + type: integer + evi: + description: EVI for the Router; leave blank for auto-allocation from EVI pool. + maximum: 65535 + minimum: 1 + type: integer + eviPool: + default: evi-pool + description: Reference to EVI pool for auto-allocation. + type: string + exportTarget: + description: Export route target in 'target:N:N' format, if not specified, the default value taken as "target:1:". + pattern: ^target.*$ + type: string + importTarget: + description: Import route target in 'target:N:N' format, if not specified, the default value taken as "target:1:". + pattern: ^target.*$ + type: string + ipLoadBalancing: + description: Resilient Hashing configuration. + properties: + prefix: + description: IPv4 or IPv6 prefix. Active routes in the FIB that exactly match this prefix or that are longer matches of this prefix are provided with resilient-hash programming. + items: + properties: + hashBucketsPerPath: + default: 1 + description: The number of times each next-hop is repeated in the fill pattern if there are max-paths ECMP next-hops. + maximum: 32 + minimum: 1 + type: integer + maxECMP: + default: 1 + description: The maximum number of ECMP next-hops per route associated with the resilient-hash prefix. + maximum: 64 + minimum: 1 + type: integer + prefix: + description: IPv4 or IPv6 prefix. Active routes in the FIB that exactly match this prefix or that are longer matches of this prefix are provided with resilient-hash programming. + type: string + required: + - hashBucketsPerPath + - maxECMP + - prefix + type: object + type: array + type: object + nodeSelector: + description: Node selectors for deployment constraints. If Nodes are selected, the Router will only be deployed on the Nodes selected, if left blank it will be deployed on all Nodes for which there are IRB or RoutedInterfaces referencing this Router. + items: + type: string + type: array + routeLeaking: + description: Route leaking controlled by routing policies in and out of the DefaultRouter. + properties: + exportPolicy: + description: Reference to a Policy resource to use when evaluating route exports from the DefaultRouter. + type: string + importPolicy: + description: Reference to a Policy resource to use when evaluating route imports into the DefaultRouter. + type: string + type: object + routerID: + description: Router ID. + type: string + tunnelIndexPool: + default: tunnel-index-pool + description: Reference to tunnel index allocation pool. + type: string + type: + default: EVPNVXLAN + description: Select the type of Router. Simple doesn't include any overlay control plane or dataplane properties (EVPN/VXLAN). EVPNVXLAN includes the properties needed to provision this Router over an IP Fabric. + enum: + - SIMPLE + - EVPNVXLAN + type: string + vni: + description: VNI for the Router; leave blank for auto-allocation from VNI pool. + maximum: 16777215 + minimum: 1 + type: integer + vniPool: + default: vni-pool + description: Reference to VNI pool for auto-allocation. + type: string + type: object + status: + description: RouterStatus defines the observed state of Router + properties: + bgpPeers: + description: List of BGPPeers attached to the router. + items: + type: string + type: array + evi: + description: EVI in use for this Router. + type: integer + exportTarget: + description: Export route target for this Router. + type: string + health: + description: Indicates the health score of the Router. + type: integer + healthScoreReason: + description: Explains the reason for the health score. + type: string + importTarget: + description: Import route target for this Router. + type: string + irbInterfaces: + description: List of IRBInterfaces attached to the router. + items: + type: string + type: array + lastChange: + description: Timestamp of the last state change. + type: string + nodes: + description: List of nodes on which the Router is deployed. + items: + type: string + type: array + numNodes: + description: Number of nodes on which the Router is configured. + type: integer + operationalState: + description: Operational state of the Router. + type: string + ospfInstances: + description: List of OSPFInstances configured on the router. + items: + properties: + areas: + items: + properties: + id: + type: string + interfaces: + items: + type: string + type: array + required: + - id + type: object + type: array + name: + type: string + version: + type: string + required: + - name + type: object + type: array + routedInterfaces: + description: List of RoutedInterfaces attached to the router. + items: + type: string + type: array + tunnelIndex: + description: Vxlan tunnel index in use. + type: integer + vni: + description: VNI in use for this Router. + type: integer + type: object + type: object +served: true +storage: true +subresources: + status: {} diff --git a/static/resources/25.12.1/routers.services.eda.nokia.com/v1alpha1.yaml b/static/resources/25.12.1/routers.services.eda.nokia.com/v1alpha1.yaml new file mode 100644 index 0000000..2076130 --- /dev/null +++ b/static/resources/25.12.1/routers.services.eda.nokia.com/v1alpha1.yaml @@ -0,0 +1,311 @@ +additionalPrinterColumns: + - jsonPath: .status.vni + name: VNI + type: string + - jsonPath: .status.evi + name: EVI + type: string + - jsonPath: .status.importTarget + name: Import Target + type: string + - jsonPath: .status.exportTarget + name: Export Target + type: string + - jsonPath: .status.operationalState + name: OperationalState + type: string + - jsonPath: .status.lastChange + name: LastChange + type: string +deprecated: true +deprecationWarning: This version is deprecated and will no longer be supported in the next version. +name: v1alpha1 +schema: + openAPIV3Schema: + description: Router is the Schema for the routers API + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + description: The Router enables the configuration and management of routing functions within a network. This resource allows for setting a unique Router ID, configuring VNIs and EVIs with options for automatic allocation, and defining import and export route targets. It also includes advanced configuration options such as BGP settings, including autonomous system numbers, AFI/SAFI options, and route advertisement preferences. Node selectors can be used to constrain the deployment of the router to specific nodes within the network. + properties: + bgp: + description: BGP configuration. + properties: + autonomousSystem: + description: Autonomous System number for BGP. + maximum: 4294967295 + minimum: 1 + type: integer + ebgpPreference: + default: 170 + description: Preference to be set for eBGP [default=170]. + maximum: 255 + minimum: 1 + type: integer + enabled: + default: false + description: Enable or disable BGP. + type: boolean + ibgpPreference: + default: 170 + description: Preference to be set for iBGP [default=170]. + maximum: 255 + minimum: 1 + type: integer + ipAliasNexthops: + description: IP aliasing configuration. + items: + properties: + esi: + default: auto + description: 10 byte Ethernet Segment Identifier, if not set a type 0 ESI is generated. + type: string + nextHop: + description: The nexthop IP address to track for the IP alias. + type: string + preferredActiveNode: + description: When not set the ES is used in an all active mode. This references the TopoNode object and when set, the DF algorithm is configured to type preference and the selected Node is set with a higher preference value. All other Nodes have a lower value configured. + type: string + required: + - nextHop + type: object + type: array + ipv4Unicast: + description: Parameters relating to the IPv4 unicast AFI/SAFI. + properties: + advertiseIPV6NextHops: + description: Enables advertisement of IPv4 Unicast routes with IPv6 next-hops to peers. + type: boolean + enabled: + default: false + description: Enables the IPv4 unicast AFISAFI. + type: boolean + multipath: + description: Enable multipath. + properties: + allowMultipleAS: + default: true + description: When set to true, BGP is allowed to build a multipath set using BGP routes with different neighbor AS (most recent AS in the AS_PATH), When set to false, BGP is only allowed to use non-best paths for ECMP if they meet the multipath criteria and they have the same neighbor AS as the best path. + type: boolean + maxAllowedPaths: + description: The maximum number of BGP ECMP next-hops for BGP routes with an NLRI belonging to the address family of this configuration context. + maximum: 256 + minimum: 1 + type: integer + required: + - allowMultipleAS + - maxAllowedPaths + type: object + receiveIPV6NextHops: + description: Enables the advertisement of the RFC 5549 capability to receive IPv4 routes with IPv6 next-hops. + type: boolean + required: + - enabled + type: object + ipv6Unicast: + description: Parameters relating to the IPv6 unicast AFI/SAFI. + properties: + enabled: + default: false + description: Enables the IPv6 unicast AFISAFI + type: boolean + multipath: + description: Enable multipath + properties: + allowMultipleAS: + default: true + description: When set to true, BGP is allowed to build a multipath set using BGP routes with different neighbor AS (most recent AS in the AS_PATH), When set to false, BGP is only allowed to use non-best paths for ECMP if they meet the multipath criteria and they have the same neighbor AS as the best path. + type: boolean + maxAllowedPaths: + description: The maximum number of BGP ECMP next-hops for BGP routes with an NLRI belonging to the address family of this configuration context. + maximum: 256 + minimum: 1 + type: integer + required: + - allowMultipleAS + - maxAllowedPaths + type: object + required: + - enabled + type: object + keychain: + description: Keychain to be used for authentication + type: string + minWaitToAdvertise: + default: 0 + description: Minimum wait time before advertising routes post BGP restart. + maximum: 3600 + minimum: 0 + type: integer + rapidWithdrawl: + default: true + description: Enable rapid withdrawal in BGP. + type: boolean + waitForFIBInstall: + default: false + description: Wait for FIB installation before advertising routes. + type: boolean + type: object + description: + description: The description of the Router. + type: string + evi: + description: EVI for the Router; leave blank for auto-allocation from EVI pool. + maximum: 65535 + minimum: 1 + type: integer + eviPool: + default: evi-pool + description: Reference to EVI pool for auto-allocation. + type: string + exportTarget: + description: Export route target in 'target:N:N' format, if not specified, the default value taken as "target:1:". + pattern: ^target.*$ + type: string + importTarget: + description: Import route target in 'target:N:N' format, if not specified, the default value taken as "target:1:". + pattern: ^target.*$ + type: string + ipLoadBalancing: + description: IPv4 or IPv6 prefix. Active routes in the FIB that exactly match this prefix or that are longer matches of this prefix are provided with resilient-hash programming. + properties: + prefix: + description: IPv4 or IPv6 prefix. Active routes in the FIB that exactly match this prefix or that are longer matches of this prefix are provided with resilient-hash programming. + items: + properties: + hashBucketsPerPath: + default: 1 + description: The number of times each next-hop is repeated in the fill pattern if there are max-paths ECMP next-hops. + maximum: 32 + minimum: 1 + type: integer + maxECMP: + default: 1 + description: The maximum number of ECMP next-hops per route associated with the resilient-hash prefix. + maximum: 64 + minimum: 1 + type: integer + prefix: + description: IPv4 or IPv6 prefix. Active routes in the FIB that exactly match this prefix or that are longer matches of this prefix are provided with resilient-hash programming. + type: string + required: + - hashBucketsPerPath + - maxECMP + - prefix + type: object + type: array + type: object + nodeSelector: + description: Node selectors for deployment constraints. If Nodes are selected, the Router will only be deployed on the Nodes selected, if left blank it will be deployed on all Nodes for which there are IRB or RoutedInterfaces referencing this Router. + items: + type: string + type: array + routeLeaking: + description: Route leaking controlled by routing policies in and out of the DefaultRouter. + properties: + exportPolicy: + description: Reference to a Policy resource to use when evaluating route exports from the DefaultRouter. + type: string + importPolicy: + description: Reference to a Policy resource to use when evaluating route imports into the DefaultRouter. + type: string + type: object + routerID: + description: Router ID. + type: string + tunnelIndexPool: + default: tunnel-index-pool + description: Reference to tunnel index allocation pool. + type: string + type: + default: EVPNVXLAN + description: Select the type of Router. Simple doesn't include any overlay control plane or dataplane properties (EVPN/VXLAN). EVPNVXLAN includes the properties needed to provision this Router over an IP Fabric. + enum: + - SIMPLE + - EVPNVXLAN + type: string + vni: + description: VNI for the Router; leave blank for auto-allocation from VNI pool. + maximum: 16777215 + minimum: 1 + type: integer + vniPool: + default: vni-pool + description: Reference to VNI pool for auto-allocation. + type: string + type: object + status: + description: RouterStatus defines the observed state of Router + properties: + bgpPeers: + description: List of BGPPeers attached to the router. + items: + type: string + type: array + evi: + description: EVI in use for this Router. + type: integer + exportTarget: + description: Export route target for this Router. + type: string + health: + description: Indicates the health score of the Router. + type: integer + healthScoreReason: + description: Explains the reason for the health score. + type: string + importTarget: + description: Import route target for this Router. + type: string + irbInterfaces: + description: List of IRBInterfaces attached to the router. + items: + type: string + type: array + lastChange: + description: Timestamp of the last state change. + type: string + nodes: + description: List of nodes on which the Router is deployed. + items: + type: string + type: array + numNodes: + description: Number of nodes on which the Router is configured. + type: integer + operationalState: + description: Operational state of the Router. + type: string + routedInterfaces: + description: List of RoutedInterfaces attached to the router. + items: + type: string + type: array + tunnelIndex: + description: Vxlan tunnel index in use. + type: integer + vni: + description: VNI in use for this Router. + type: integer + type: object + type: object +served: true +storage: false +subresources: + status: {} diff --git a/static/resources/25.12.1/routerstates.services.eda.nokia.com/v1.yaml b/static/resources/25.12.1/routerstates.services.eda.nokia.com/v1.yaml new file mode 100644 index 0000000..74d2849 --- /dev/null +++ b/static/resources/25.12.1/routerstates.services.eda.nokia.com/v1.yaml @@ -0,0 +1,58 @@ +name: v1 +schema: + openAPIV3Schema: + description: RouterState is the Schema for the routerstates API + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + description: RouterStateSpec defines the desired state of RouterState + properties: + configuredName: + description: The name of the Router to configure on the device. + type: string + evi: + description: EVI in use for this Router + maximum: 65535 + minimum: 1 + type: integer + exportTarget: + description: Export route target for this Router, in the format 'target:N:N' + pattern: ^target.*$ + type: string + importTarget: + description: Import route target for this Router, in the format 'target:N:N' + pattern: ^target.*$ + type: string + tunnelIndex: + description: Vxlan tunnel index in use + type: integer + vni: + description: VNI in use for this Router + maximum: 16777215 + minimum: 1 + type: integer + type: object + status: + description: RouterStateStatus defines the observed state of RouterState + type: object + type: object +served: true +storage: true +subresources: + status: {} diff --git a/static/resources/routerstates.services.eda.nokia.com/v1alpha1.yaml b/static/resources/25.12.1/routerstates.services.eda.nokia.com/v1alpha1.yaml similarity index 100% rename from static/resources/routerstates.services.eda.nokia.com/v1alpha1.yaml rename to static/resources/25.12.1/routerstates.services.eda.nokia.com/v1alpha1.yaml diff --git a/static/resources/25.12.1/routetraces.routing.eda.nokia.com/v1alpha1.yaml b/static/resources/25.12.1/routetraces.routing.eda.nokia.com/v1alpha1.yaml new file mode 100644 index 0000000..052e585 --- /dev/null +++ b/static/resources/25.12.1/routetraces.routing.eda.nokia.com/v1alpha1.yaml @@ -0,0 +1,101 @@ +name: v1alpha1 +schema: + openAPIV3Schema: + description: RouteTrace is the Schema for the routetraces API + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + description: RouteTraceSpec defines the desired state of RouteTrace + properties: + address: + description: This is a standard IPv4 or IPv6 address, excluding mask or prefix length, e.g. 12.0.0.1. + type: string + networkInstance: + description: |- + Network Instance is the locally named network instance to use for the lookup. + Can be omitted if the default network instance is to be used. + type: string + node: + description: Node is the name of the node to execute lookups on. + type: string + required: + - address + - node + type: object + status: + description: RouteTraceStatus defines the observed state of RouteTrace + properties: + links: + items: + properties: + fromNode: + properties: + destination: + description: Extract indicate the from node owns the address. + type: boolean + direct: + description: Direct indicates that the host is directly connected to the node. + type: boolean + error: + description: If the trace is not successful, this field will contain an error message on the 'to' node. + type: string + interface: + description: Interface is the name of the interface on the node that the trace is either entering or exiting. + type: string + localAddress: + description: LocalAddress is the local address of the endpoint (e.g. the nexthop address on the 'to' node). + type: string + node: + description: Node is the name of the node where the endpoint is located. + type: string + type: object + toNode: + properties: + destination: + description: Extract indicate the from node owns the address. + type: boolean + direct: + description: Direct indicates that the host is directly connected to the node. + type: boolean + error: + description: If the trace is not successful, this field will contain an error message on the 'to' node. + type: string + interface: + description: Interface is the name of the interface on the node that the trace is either entering or exiting. + type: string + localAddress: + description: LocalAddress is the local address of the endpoint (e.g. the nexthop address on the 'to' node). + type: string + node: + description: Node is the name of the node where the endpoint is located. + type: string + type: object + required: + - fromNode + - toNode + type: object + type: array + required: + - links + type: object + type: object +served: true +storage: true +subresources: + status: {} diff --git a/static/resources/25.12.1/rungithubworkflows.github.eda.nokia.com/v1alpha1.yaml b/static/resources/25.12.1/rungithubworkflows.github.eda.nokia.com/v1alpha1.yaml new file mode 100644 index 0000000..e86bec8 --- /dev/null +++ b/static/resources/25.12.1/rungithubworkflows.github.eda.nokia.com/v1alpha1.yaml @@ -0,0 +1,141 @@ +name: v1alpha1 +schema: + openAPIV3Schema: + description: RunGithubWorkflow is the Schema for the rungithubworkflows API + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + description: spec defines the desired state of RunGithubWorkflow + properties: + instance: + description: Github instance name. + type: string + parameters: + description: Parameters to pass to the workflow. + items: + properties: + name: + description: Parameter name + type: string + value: + description: Parameter value + properties: + dynamicValue: + properties: + field: + type: string + path: + type: string + where: + type: string + type: object + staticValue: + type: string + type: object + type: object + type: array + ref: + description: Reference is the branch, tag or commit hash to run the workflow. + type: string + repo: + description: Repository to run the workflow. + type: string + workflow: + description: Workflow to run + type: string + type: object + status: + description: status defines the observed state of RunGithubWorkflow + properties: + conditions: + description: |- + conditions represent the current state of the RunGithubWorkflow resource. + Each condition has a unique type and reflects the status of a specific aspect of the resource. + + Standard condition types include: + - "Available": the resource is fully functional + - "Progressing": the resource is being created or updated + - "Degraded": the resource failed to reach or maintain its desired state + + The status of each condition is one of True, False, or Unknown. + items: + description: Condition contains details for one aspect of the current state of this API Resource. + properties: + lastTransitionTime: + description: |- + lastTransitionTime is the last time the condition transitioned from one status to another. + This should be when the underlying condition changed. If that is not known, then using the time when the API field changed is acceptable. + format: date-time + type: string + message: + description: |- + message is a human readable message indicating details about the transition. + This may be an empty string. + maxLength: 32768 + type: string + observedGeneration: + description: |- + observedGeneration represents the .metadata.generation that the condition was set based upon. + For instance, if .metadata.generation is currently 12, but the .status.conditions[x].observedGeneration is 9, the condition is out of date + with respect to the current state of the instance. + format: int64 + minimum: 0 + type: integer + reason: + description: |- + reason contains a programmatic identifier indicating the reason for the condition's last transition. + Producers of specific condition types may define expected values and meanings for this field, + and whether the values are considered a guaranteed API. + The value should be a CamelCase string. + This field may not be empty. + maxLength: 1024 + minLength: 1 + pattern: ^[A-Za-z]([A-Za-z0-9_,:]*[A-Za-z0-9_])?$ + type: string + status: + description: status of the condition, one of True, False, Unknown. + enum: + - "True" + - "False" + - Unknown + type: string + type: + description: type of condition in CamelCase or in foo.example.com/CamelCase. + maxLength: 316 + pattern: ^([a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*/)?(([A-Za-z0-9][-A-Za-z0-9_.]*)?[A-Za-z0-9])$ + type: string + required: + - lastTransitionTime + - message + - reason + - status + - type + type: object + type: array + x-kubernetes-list-map-keys: + - type + x-kubernetes-list-type: map + type: object + required: + - spec + type: object +served: true +storage: true +subresources: + status: {} diff --git a/static/resources/connectpluginheartbeats.connect.eda.nokia.com/v1.yaml b/static/resources/25.12.1/rungitlabpipelines.gitlab.eda.nokia.com/v1alpha1.yaml similarity index 50% rename from static/resources/connectpluginheartbeats.connect.eda.nokia.com/v1.yaml rename to static/resources/25.12.1/rungitlabpipelines.gitlab.eda.nokia.com/v1alpha1.yaml index e53040c..ba9622c 100644 --- a/static/resources/connectpluginheartbeats.connect.eda.nokia.com/v1.yaml +++ b/static/resources/25.12.1/rungitlabpipelines.gitlab.eda.nokia.com/v1alpha1.yaml @@ -1,7 +1,7 @@ -name: v1 +name: v1alpha1 schema: openAPIV3Schema: - description: ConnectPluginHeartbeat is the Schema for the connectpluginheartbeats API. + description: RunGitlabPipeline is the Schema for the rungitlabpipelines API properties: apiVersion: description: |- @@ -21,43 +21,50 @@ schema: metadata: type: object spec: - description: ConnectPluginHeartbeatSpec defines the desired state of ConnectPluginHeartbeat. + description: spec defines the desired state of RunGitlabPipeline properties: - lastHeartbeat: - description: LastHeartbeat tracks when the last heartbeat was received for the plugin referenced by PluginID - format: date-time + instance: + description: Gitlab instance name. type: string - required: - - lastHeartbeat - type: object - status: - description: ConnectPluginHeartbeatStatus defines the observed state of ConnectPluginHeartbeat. - properties: - pendingActionables: - description: PendingActionables is a list of actionables that still need to be processed by the plugin. + parameters: + description: Parameters to pass to the workflow. items: properties: name: + description: Parameter name type: string - pluginUuid: - type: string - spec: - description: ConnectPluginActionableSpec defines the desired state of ConnectPluginActionable. + value: + description: Parameter value properties: - attributes: - additionalProperties: - type: string - description: Attributes is a map of attributes associated with the Verb for this Actionable. + dynamicValue: + properties: + field: + type: string + path: + type: string + where: + type: string type: object - verb: - description: Verb is the keyword for the operation that should be executed by the Plugin. + staticValue: type: string - required: - - verb type: object type: object type: array + pipeline: + description: Pipeline to run. + type: string + ref: + description: Reference is the branch, tag or commit hash to run the workflow. + type: string + repo: + description: Repository to run the workflow. + type: string + type: object + status: + description: status defines the observed state of RunGitlabPipeline type: object + required: + - spec type: object served: true storage: true diff --git a/static/resources/25.12.1/setupenvs.environment.eda.nokia.com/v1alpha1.yaml b/static/resources/25.12.1/setupenvs.environment.eda.nokia.com/v1alpha1.yaml new file mode 100644 index 0000000..04035d5 --- /dev/null +++ b/static/resources/25.12.1/setupenvs.environment.eda.nokia.com/v1alpha1.yaml @@ -0,0 +1,50 @@ +additionalPrinterColumns: + - jsonPath: .status.result + name: Result + type: string + - jsonPath: .metadata.creationTimestamp + name: Age + type: date +name: v1alpha1 +schema: + openAPIV3Schema: + description: SetupEnv is the Schema for the setupenvs API + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + description: |- + This workflow is used to set up the global environment on a node. + For SR Linux this results in an overwrite of the /etc/opt/srlinux/env file. + properties: + env: + description: Content of the environment file to push. + type: string + type: object + status: + description: SetupEnvStatus defines the observed state of SetupEnv + properties: + result: + description: Aggregate result of the Flow + type: string + type: object + type: object +served: true +storage: true +subresources: + status: {} diff --git a/static/resources/simlinks.core.eda.nokia.com/v1.yaml b/static/resources/25.12.1/simlinks.core.eda.nokia.com/v1.yaml similarity index 100% rename from static/resources/simlinks.core.eda.nokia.com/v1.yaml rename to static/resources/25.12.1/simlinks.core.eda.nokia.com/v1.yaml diff --git a/static/resources/25.12.1/simnodes.core.eda.nokia.com/v1.yaml b/static/resources/25.12.1/simnodes.core.eda.nokia.com/v1.yaml new file mode 100644 index 0000000..6aaa887 --- /dev/null +++ b/static/resources/25.12.1/simnodes.core.eda.nokia.com/v1.yaml @@ -0,0 +1,124 @@ +name: v1 +schema: + openAPIV3Schema: + description: SimNode is the Schema for the simnodes API + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + description: SimNodeSpec defines the desired state of SimTopoNode + properties: + component: + description: A list of components within a node. Used to define the type and location of linecards, fabrics (sfm), media adapter cards (mda) and control cards. + items: + properties: + kind: + description: The kind of Component, e.g. lineCard. + enum: + - controlCard + - lineCard + - fabric + - mda + - connector + - xiom + - powerShelf + - powerModule + type: string + slot: + description: |- + The slot this Component resides in, unset for Components that do not have a slot or ID. + e.g. 1 would denote the linecard slot 1, 1/1 would denote linecard slot 1 mda slot 1. + type: string + type: + description: Denotes the type of hardware being provisioned, e.g. xcm-x20. + type: string + required: + - kind + - type + type: object + type: array + containerImage: + description: Reference URL to the container image for the associated operatingSystem and version + type: string + dhcp: + properties: + preferredAddressFamily: + description: Preferred IP address family + enum: + - IPv4 + - IPv6 + type: string + type: object + imagePullSecret: + description: Secret used to authenticate to the container registry where the container image is hosted + type: string + license: + description: Reference to a URL path hosting the license for the TopoNode. + type: string + operatingSystem: + description: Operational operating system running on this TopoNode, e.g. srl, sros, nxos, eos + type: string + platform: + description: Operational platform type of this TopoNode, e.g. 7220 IXR-D3L + type: string + platformPath: + description: JSPath to use for retrieving the version string from nodes matching this NodeProfile + type: string + port: + default: 57400 + description: The port used to establish a connection to the TargetNode + maximum: 65535 + minimum: 1 + type: integer + productionAddress: + description: Sets production address for the node + properties: + ipv4: + description: The IPv4 production address + type: string + ipv6: + description: The IPv6 production address + type: string + type: object + serialNumberPath: + description: JSPath to use for retrieving the serial number string from nodes matching this NodeProfile + type: string + version: + description: Operational software version of this TopoNode, e.g. 24.7.1 (for srl), or 24.7.r1 (for sros) + type: string + versionMatch: + description: |- + Match the node-retrieved version string to TopoNode version + The value should be a regular expression matching the version string that would appear on the node + type: string + versionPath: + description: JSPath to use for retrieving the version string from nodes matching this NodeProfile + type: string + type: object + status: + description: SimNodeStatus defines the observed state of SimNode + properties: + ipAddress: + description: IP address of the simnode, this is the address the simulated instance of this SimNode uses. + type: string + type: object + type: object +served: true +storage: true +subresources: + status: {} diff --git a/static/resources/stateconfigs.services.eda.nokia.com/v1.yaml b/static/resources/25.12.1/stateconfigs.services.eda.nokia.com/v1.yaml similarity index 100% rename from static/resources/stateconfigs.services.eda.nokia.com/v1.yaml rename to static/resources/25.12.1/stateconfigs.services.eda.nokia.com/v1.yaml diff --git a/static/resources/stateconfigs.services.eda.nokia.com/v1alpha1.yaml b/static/resources/25.12.1/stateconfigs.services.eda.nokia.com/v1alpha1.yaml similarity index 100% rename from static/resources/stateconfigs.services.eda.nokia.com/v1alpha1.yaml rename to static/resources/25.12.1/stateconfigs.services.eda.nokia.com/v1alpha1.yaml diff --git a/static/resources/25.12.1/staticroutes.protocols.eda.nokia.com/v1.yaml b/static/resources/25.12.1/staticroutes.protocols.eda.nokia.com/v1.yaml new file mode 100644 index 0000000..427e86e --- /dev/null +++ b/static/resources/25.12.1/staticroutes.protocols.eda.nokia.com/v1.yaml @@ -0,0 +1,133 @@ +name: v1 +schema: + openAPIV3Schema: + description: StaticRoute is the Schema for the static routes API + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + description: StaticRoute allows for the specification of destination prefixes, route preferences, and the associated Router. It also supports configuring nexthop groups and specifying the nodes where the static routes should be provisioned. + properties: + configuredName: + description: The name of the static route to configure on the device. + type: string + nexthopGroup: + description: Group of nexthops for the list of prefixes. + properties: + bfd: + description: Enables BFD to the next-hops in the group. Local and Remote discriminator parameters have been deprecated at this level. Use Nexthop to set these parameters. + properties: + enabled: + default: false + description: Defines whether BFD should be enabled towards the nexthops. + type: boolean + localAddress: + description: Defines the local address to use when establishing the BFD session with the nexthop. + type: string + type: object + blackhole: + default: false + description: If set to true all traffic destined to the prefixes will be blackholed. If enabled, next-hops are ignored and this takes precedence. + type: boolean + blackholeSendICMP: + description: When enabled, the router will generate ICMP Unreachable messages for packets destined to the blackhole route. + type: boolean + nexthops: + description: Ordered list of nexthops. + items: + properties: + bfd: + description: Enables BFD to the next-hops in the group. This overrides the configuration at the group. + properties: + enabled: + default: false + description: Defines whether BFD should be enabled towards the nexthops. + type: boolean + localAddress: + description: Defines the local address to use when establishing the BFD session with the nexthop. + type: string + localDiscriminator: + description: Defines the local discriminator. + type: integer + remoteDiscriminator: + description: Defines the remote discriminator. + type: integer + type: object + ipPrefix: + description: Address to use. + type: string + resolve: + default: false + description: If set to true the next-hops can be destinations which are resolved in the route table. This overrides the configuration at the group. + type: boolean + required: + - ipPrefix + type: object + type: array + resolve: + default: false + description: If set to true the next-hops can be destinations which are resolved in the route table. + type: boolean + type: object + nodes: + description: List of nodes on which to configure the static routes. An AND operation is executed against the nodes in this list and the nodes on which the Router is configured to determine the Nodes on which to configure the static routes. + items: + type: string + type: array + preference: + description: Defines the route preference. + type: integer + prefixes: + description: List of destination prefixes and mask to use for the static routes. + items: + type: string + type: array + router: + description: Reference to a Router on which to configure the static routes. If no Nodes are provided then the static routes will be provisioned on all Nodes on which the Router is provisioned. + type: string + required: + - nexthopGroup + - prefixes + - router + type: object + status: + description: StaticRouteStatus defines the observed state of Static Route + properties: + health: + description: Indicates the health score of the static routes. + type: integer + healthScoreReason: + description: Indicates the reason for the health score. + type: string + lastChange: + description: The time when the state of the resource last changed. + type: string + nodes: + description: List of Nodes on which the static routes are configured. + items: + type: string + type: array + operationalState: + description: Operational state of the static routes. + type: string + type: object + type: object +served: true +storage: true +subresources: + status: {} diff --git a/static/resources/staticroutes.protocols.eda.nokia.com/v1alpha1.yaml b/static/resources/25.12.1/staticroutes.protocols.eda.nokia.com/v1alpha1.yaml similarity index 100% rename from static/resources/staticroutes.protocols.eda.nokia.com/v1alpha1.yaml rename to static/resources/25.12.1/staticroutes.protocols.eda.nokia.com/v1alpha1.yaml diff --git a/static/resources/25.12.1/subnetallocationpools.core.eda.nokia.com/v1.yaml b/static/resources/25.12.1/subnetallocationpools.core.eda.nokia.com/v1.yaml new file mode 100644 index 0000000..674a846 --- /dev/null +++ b/static/resources/25.12.1/subnetallocationpools.core.eda.nokia.com/v1.yaml @@ -0,0 +1,95 @@ +name: v1 +schema: + openAPIV3Schema: + description: SubnetAllocationPool is the Schema for the subnetallocationpools API + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + description: |- + SubnetAllocationPool is a generic subnet allocation pool supporting allocation of IPv4 and/or IPv6 child subnets from a list of parent subnet segments. + It allocates a subnet of the configured length from the provided parent subnet. + For example a pool could return 10.1.0.8/29 when a segment is defined as subnet 10.1.0.0/16 with subnet length 29. + Consult application documentation to know which pool type to use for a given use case. + properties: + publishAllocations: + description: If true, allocations in segments will be published to EDB, available to query via EQL and trigger state applications off of. + type: boolean + segments: + description: List of segments containing subnets to allocate. + items: + properties: + allocations: + description: List of reservations to exclude from allocations from this segment. + items: + properties: + name: + description: Name of this allocation. + type: string + poolInstance: + description: Pool instance, if empty applies to all instances. + type: string + value: + description: Allocation to reserve. + type: string + required: + - name + - value + type: object + type: array + reservations: + description: List of ranges to exclude from allocations from this segment. + items: + properties: + end: + description: Value to reserve to. + type: string + start: + description: Value to start reserving. + type: string + required: + - end + - start + type: object + type: array + subnet: + description: IPv4 or IPv6 subnet to allocate subnets from, e.g. 10.1.0.0/16. + type: string + subnetLength: + description: The size of the subnets to be allocated from within the parent subnet, e.g. 29 (which could allocate 10.1.0.8/29, for example). + format: int32 + maximum: 4294967295 + minimum: 0 + type: integer + required: + - subnet + - subnetLength + type: object + minItems: 1 + type: array + required: + - segments + type: object + status: + description: SubnetAllocationPoolStatus defines the observed state of SubnetAllocationPool + type: object + type: object +served: true +storage: true +subresources: + status: {} diff --git a/static/resources/25.12.1/systeminterfaces.routing.eda.nokia.com/v1alpha1.yaml b/static/resources/25.12.1/systeminterfaces.routing.eda.nokia.com/v1alpha1.yaml new file mode 100644 index 0000000..2a0a547 --- /dev/null +++ b/static/resources/25.12.1/systeminterfaces.routing.eda.nokia.com/v1alpha1.yaml @@ -0,0 +1,117 @@ +additionalPrinterColumns: + - jsonPath: .status.lastChange + name: Last Change + type: date + - jsonPath: .status.operationalState + name: Operational State + type: string + - jsonPath: .spec.ipv4Address + name: IPv4 Address + type: string + - jsonPath: .spec.ipv6Address + name: IPv6 Address + type: string +name: v1alpha1 +schema: + openAPIV3Schema: + description: SystemInterface is the Schema for the systeminterfaces API + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + description: SystemInterfaceSpec defines the desired state of SystemInterface + properties: + bfd: + description: Enable or disable BFD on this SystemInterface. + properties: + desiredMinTransmitInt: + default: 1000000 + description: The minimum interval in microseconds between transmission of BFD control packets[default=1000000]. + maximum: 100000000 + minimum: 10000 + type: integer + detectionMultiplier: + default: 3 + description: The number of packets that must be missed to declare this session as down. [default=3] + maximum: 20 + minimum: 3 + type: integer + enabled: + default: false + description: Enable Biforward Detection[default=false]. + type: boolean + minEchoReceiveInterval: + default: 1000000 + description: The minimum interval between echo packets the local node can receive in microseconds + maximum: 100000000 + minimum: 0 + type: integer + requiredMinReceive: + default: 1000000 + description: The minimum interval in microseconds between received BFD control packets that this system should support.[default=1000000]. + maximum: 100000000 + minimum: 10000 + type: integer + ttl: + description: Sets custom IP TTL or Hop Limit for multi-hop BFD sessions packets. Not applicable to single-hop BFD sessions. + maximum: 255 + minimum: 2 + type: integer + required: + - desiredMinTransmitInt + - detectionMultiplier + - enabled + - minEchoReceiveInterval + - requiredMinReceive + type: object + defaultRouter: + description: Reference to a DefaultRouter. + type: string + description: + description: The description of the SystemInterface. + type: string + ipv4Address: + description: IPv4 address in ip/mask form, e.g., 192.168.0.1/32. + type: string + ipv6Address: + description: IPv6 address in ip/mask form, e.g., fc00::1/128. + type: string + required: + - defaultRouter + type: object + status: + description: SystemInterfaceStatus defines the observed state of SystemInterface + properties: + health: + description: Indicates the health score of the SystemInterface. + type: integer + healthScoreReason: + description: Indicates the reason for the health score. + type: string + lastChange: + description: Indicates when this Interface last changed state. + type: string + operationalState: + description: Indicates the current operational state of the SystemInterface. + type: string + type: object + type: object +served: true +storage: true +subresources: + status: {} diff --git a/static/resources/systeminterfacestates.routing.eda.nokia.com/v1alpha1.yaml b/static/resources/25.12.1/systeminterfacestates.routing.eda.nokia.com/v1alpha1.yaml similarity index 100% rename from static/resources/systeminterfacestates.routing.eda.nokia.com/v1alpha1.yaml rename to static/resources/25.12.1/systeminterfacestates.routing.eda.nokia.com/v1alpha1.yaml diff --git a/static/resources/25.12.1/systemloadbalancers.siteinfo.eda.nokia.com/v1alpha1.yaml b/static/resources/25.12.1/systemloadbalancers.siteinfo.eda.nokia.com/v1alpha1.yaml new file mode 100644 index 0000000..12085b2 --- /dev/null +++ b/static/resources/25.12.1/systemloadbalancers.siteinfo.eda.nokia.com/v1alpha1.yaml @@ -0,0 +1,168 @@ +name: v1alpha1 +schema: + openAPIV3Schema: + description: SystemLoadBalancer is the Schema for the systemloadbalancers API + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + description: SystemLoadBalancerSpec defines the desired state of SystemLoadBalancer + properties: + nodeSelector: + description: Label selector to select nodes on which to configure the parameters. + items: + type: string + type: array + nodes: + description: List of nodes on which to configure the parameteers. + items: + type: string + type: array + srlinux: + description: SR Linux Load Balancer configuration. + properties: + dynamicLoadBalancing: + description: Dynamic Load Balancer configuration. + properties: + flowsetSize: + description: The number of flowset entries reserved for each aggregate ECMP group. + enum: + - 256 + - 512 + - 1024 + - 2048 + - 4096 + - 8192 + - 16384 + - 32768 + type: integer + inactivityTimerUs: + description: The flow inactivity timer in microseconds. + type: integer + mode: + description: The dynamic load balancing mode. + enum: + - Dynamic + - Fixed + - PerPacket + type: string + samplingIntervalUs: + description: The sampling interval of interface state, in microseconds. + type: integer + weighting: + description: Weighting factors for dynamic load balancing. + properties: + ingressTrafficManagerUtilization: + description: Weight assigned to ingress Traffic Manager utilization. + maximum: 100 + minimum: 0 + type: integer + portUtilization: + description: Weight assigned to port utilization. + maximum: 100 + minimum: 0 + type: integer + queueUtilization: + description: Weight assigned to queue utilization. + maximum: 100 + minimum: 0 + type: integer + type: object + type: object + hashOptions: + description: Hashing options. + properties: + destinationIP: + description: Include destination IP address in hash calculation. + type: boolean + destinationPort: + description: Include destination port in hash calculation. + type: boolean + flowLabel: + description: Include IPV6 Flow Label in hash calculation. + type: boolean + labelStack: + description: Include MPLS Label Stack in hash calculation. + type: boolean + protocol: + description: Include IP protocol in hash calculation. + type: boolean + sourceIP: + description: Include source IP address in hash calculation. + type: boolean + sourcePort: + description: Include source port in hash calculation. + type: boolean + vlanID: + description: Include VLAN ID in hash calculation. + type: boolean + type: object + type: object + sros: + description: SROS Load Balancer configuration. + properties: + hashOptions: + description: Hashing options. + properties: + enhancedELER: + description: Enables Enhanced eLER Load Balancing. + type: boolean + enhancedMulticast: + description: Enables Enhanced Multicast Load Balancing. + type: boolean + layer4: + description: Enables Layer 4 Load Balancing. + type: boolean + lsrMode: + description: Defines load balancing more for LSR role. + enum: + - lbl-only + - lbl-ip + - ip-only + - eth-encap-ip + - lbl-ip-l4-teid + - lbl-eth-ip-l4-teid + - lbl-ip-or-teid + type: string + serviceID: + description: Enables VLL Service ID Load Balancing. + type: boolean + systemIP: + description: Enables use of the System IP address as a hashing input. + type: boolean + type: object + type: object + type: object + status: + description: SystemLoadBalancerStatus defines the observed state of SystemLoadBalancer + properties: + srlinuxNodes: + description: List of nodes this CR has been applied to + items: + type: string + type: array + srosNodes: + items: + type: string + type: array + type: object + type: object +served: true +storage: true +subresources: + status: {} diff --git a/static/resources/25.12.1/systemloadbalancerstates.siteinfo.eda.nokia.com/v1alpha1.yaml b/static/resources/25.12.1/systemloadbalancerstates.siteinfo.eda.nokia.com/v1alpha1.yaml new file mode 100644 index 0000000..6413b5b --- /dev/null +++ b/static/resources/25.12.1/systemloadbalancerstates.siteinfo.eda.nokia.com/v1alpha1.yaml @@ -0,0 +1,49 @@ +name: v1alpha1 +schema: + openAPIV3Schema: + description: SystemLoadBalancerState is the Schema for the system load balancer states API + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + description: SystemLoadBalancerStateSpec defines the desired state of SystemLoadBalancertState + properties: + nodes: + description: List of Nodes on which was configured the SystemLoadBalancer + items: + properties: + node: + description: Reference to Node object + type: string + operatingSystem: + description: Operating System of the Node + type: string + required: + - node + - operatingSystem + type: object + type: array + type: object + status: + description: SystemLoadBalancerStateStatus defines the observed state of SystemLoadBalancerState + type: object + type: object +served: true +storage: true +subresources: + status: {} diff --git a/static/resources/25.12.1/tagsetdeployments.routingpolicies.eda.nokia.com/v1alpha1.yaml b/static/resources/25.12.1/tagsetdeployments.routingpolicies.eda.nokia.com/v1alpha1.yaml new file mode 100644 index 0000000..62789ca --- /dev/null +++ b/static/resources/25.12.1/tagsetdeployments.routingpolicies.eda.nokia.com/v1alpha1.yaml @@ -0,0 +1,42 @@ +name: v1alpha1 +schema: + openAPIV3Schema: + description: TagSetDeployment is the Schema for the tagsetdeployments API + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + description: TagSetDeploymentSpec defines the desired state of TagSetDeployment + properties: + node: + description: Specifies a Node to deploy this Set on + type: string + tagSet: + description: Specifies a TagSet to deploy to the specified Node + type: string + required: + - node + type: object + status: + description: TagSetDeploymentStatus defines the observed state of TagSetDeployment + type: object + type: object +served: true +storage: true +subresources: + status: {} diff --git a/static/resources/25.12.1/tagsets.routingpolicies.eda.nokia.com/v1alpha1.yaml b/static/resources/25.12.1/tagsets.routingpolicies.eda.nokia.com/v1alpha1.yaml new file mode 100644 index 0000000..8df1759 --- /dev/null +++ b/static/resources/25.12.1/tagsets.routingpolicies.eda.nokia.com/v1alpha1.yaml @@ -0,0 +1,50 @@ +name: v1alpha1 +schema: + openAPIV3Schema: + description: TagSet is the Schema for the tagsets API + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + description: TagSetSpec defines a set of Internal Route Tags that can be applied to routes for policy decisions. + properties: + tags: + description: List of route tags. Currently limited to one tag per set. + items: + properties: + tag: + description: The route tag value. + maximum: 4294967295 + minimum: 1 + type: integer + required: + - tag + type: object + maxItems: 1 + type: array + required: + - tags + type: object + status: + description: TagSetStatus defines the observed state of TagSet + type: object + type: object +served: true +storage: true +subresources: + status: {} diff --git a/static/resources/targetnodes.core.eda.nokia.com/v1.yaml b/static/resources/25.12.1/targetnodes.core.eda.nokia.com/v1.yaml similarity index 100% rename from static/resources/targetnodes.core.eda.nokia.com/v1.yaml rename to static/resources/25.12.1/targetnodes.core.eda.nokia.com/v1.yaml diff --git a/static/resources/25.12.1/techsupports.oam.eda.nokia.com/v1alpha1.yaml b/static/resources/25.12.1/techsupports.oam.eda.nokia.com/v1alpha1.yaml new file mode 100644 index 0000000..b656ffd --- /dev/null +++ b/static/resources/25.12.1/techsupports.oam.eda.nokia.com/v1alpha1.yaml @@ -0,0 +1,66 @@ +additionalPrinterColumns: + - jsonPath: .status.result + name: Result + type: string + - jsonPath: .metadata.creationTimestamp + name: Age + type: date +name: v1alpha1 +schema: + openAPIV3Schema: + description: TechSupport is the Schema for the techsupports API + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + description: Generate technical support packages for a node or set of nodes - should only do this if explicitly requested by the user. + properties: + nodeSelectors: + description: |- + List of node selectors to select nodes generate technical support packages for. + This matches labels on TopoNode resources. + If no nodes are specified, and no node selectors are specified, all nodes in the given namespace will be selected. + This is a list of label expressions, e.g. ["eda.nokia.com/role=leaf"]. + items: + type: string + type: array + nodes: + description: List of nodes to generate and collect technical support packages for. + items: + type: string + type: array + type: object + status: + description: Result of the technical support package generation. + properties: + failedNodes: + description: |- + List of nodes failed to produce tech-support, it is populated in case of PartialSuccess + Items in the list should be the names of the nodes, where tech-support failed + items: + type: string + type: array + result: + description: Result + type: string + type: object + type: object +served: true +storage: true +subresources: + status: {} diff --git a/static/resources/25.12.1/thresholds.oam.eda.nokia.com/v1alpha1.yaml b/static/resources/25.12.1/thresholds.oam.eda.nokia.com/v1alpha1.yaml new file mode 100644 index 0000000..139af02 --- /dev/null +++ b/static/resources/25.12.1/thresholds.oam.eda.nokia.com/v1alpha1.yaml @@ -0,0 +1,131 @@ +name: v1alpha1 +schema: + openAPIV3Schema: + description: Threshold is the Schema for the thresholds API + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + description: |- + A Threshold allows you to monitor a field in EDB and trigger severity-correct alarms based on the value of that field. + By using EDB as a source you are able to trigger thresholds on any published field from a TopoNode, or any other EDB source. + properties: + alarm: + description: Alarm details for this threshold. + properties: + description: + description: The description of the alarm. + type: string + probableCause: + description: The probable cause of the alarm. + type: string + remedialAction: + description: The remedial action for the alarm. + type: string + type: object + enabled: + default: true + description: Enable or disable this threshold. + type: boolean + field: + description: |- + Field to monitor for this threshold, for example `utilization`. Only a single field may be monitored per threshold. This field must be present in the table specified by the path. + The field specified should be an integer field that can be compared to the specified thresholds. Nested fields are supported, for example `utilization.value` would monitor the value field inside of the nested object with key `utilization`. + type: string + generateOverlay: + default: false + description: |- + Enable or disable generation of a topology overlay for this threshold. + This functionality is only supported for paths in the .namespace.node table. + type: boolean + name: + description: The name of this threshold. This name will be used to generate the alarm name, so should follow CamelCase conventions, e.g. VolumeUtilization. + type: string + path: + description: |- + Path to monitor for this threshold. This should be the full EDB path (without keys) to the table containing the field you wish to trigger a threshold on. + For example, to monitor the utilization field of the component volume table, you would use `.namespace.node.normal.components_eda_nokia_com.v1.controlmodule.volume`, and set field to `utilization`. + type: string + resource: + description: |- + Manually assign a resource to associate with this threshold. This overrides the destination resource in alarms raised as a result of threshold breaches. + By default a resource will be raised against the threshold resource itself. + properties: + group: + description: The group of the resource raise alarms against, should any thresholds be breached. + type: string + kind: + description: The kind of resource to raise alarms against, should any thresholds be breached. + type: string + name: + description: The name of the resource to raise alarms against, should any thresholds be breached. + type: string + required: + - group + - kind + - name + type: object + thresholds: + description: Severities and their associated values. + properties: + criticalThreshold: + description: |- + The minimum average utilization over the last 1 minute to trigger a critical alarm. + This value must be greater than the majorThreshold. + type: integer + delta: + default: 5 + description: |- + The delta value for clearing a threshold. + For example, with a critical threshold of 90, direction of Rising and a delta of 5, the critical alarm will clear when the utilization drops below 85. + type: integer + direction: + default: Rising + description: 'Direction of the threshold: "Rising" or "Falling".' + enum: + - Rising + - Falling + type: string + majorThreshold: + description: |- + The minimum average utilization over the last 1 minute to trigger a major alarm. + This value must be greater than the minorThreshold. + type: integer + minorThreshold: + description: The minimum average utilization over the last 1 minute to trigger a minor alarm. + type: integer + warningThreshold: + description: The minimum average utilization over the last 1 minute to trigger a warning alarm. + type: integer + required: + - direction + type: object + required: + - field + - name + - path + - thresholds + type: object + status: + description: ThresholdStatus defines the observed state of Threshold + type: object + type: object +served: true +storage: true +subresources: + status: {} diff --git a/static/resources/thresholds.platformmetrics.eda.nokia.com/v1.yaml b/static/resources/25.12.1/thresholds.platformmetrics.eda.nokia.com/v1.yaml similarity index 100% rename from static/resources/thresholds.platformmetrics.eda.nokia.com/v1.yaml rename to static/resources/25.12.1/thresholds.platformmetrics.eda.nokia.com/v1.yaml diff --git a/static/resources/topobreakouts.core.eda.nokia.com/v1.yaml b/static/resources/25.12.1/topobreakouts.core.eda.nokia.com/v1.yaml similarity index 100% rename from static/resources/topobreakouts.core.eda.nokia.com/v1.yaml rename to static/resources/25.12.1/topobreakouts.core.eda.nokia.com/v1.yaml diff --git a/static/resources/topolinkmonitors.topologies.eda.nokia.com/v1alpha1.yaml b/static/resources/25.12.1/topolinkmonitors.topologies.eda.nokia.com/v1alpha1.yaml similarity index 100% rename from static/resources/topolinkmonitors.topologies.eda.nokia.com/v1alpha1.yaml rename to static/resources/25.12.1/topolinkmonitors.topologies.eda.nokia.com/v1alpha1.yaml diff --git a/static/resources/topolinks.core.eda.nokia.com/v1.yaml b/static/resources/25.12.1/topolinks.core.eda.nokia.com/v1.yaml similarity index 100% rename from static/resources/topolinks.core.eda.nokia.com/v1.yaml rename to static/resources/25.12.1/topolinks.core.eda.nokia.com/v1.yaml diff --git a/static/resources/topolinkstates.topologies.eda.nokia.com/v1alpha1.yaml b/static/resources/25.12.1/topolinkstates.topologies.eda.nokia.com/v1alpha1.yaml similarity index 100% rename from static/resources/topolinkstates.topologies.eda.nokia.com/v1alpha1.yaml rename to static/resources/25.12.1/topolinkstates.topologies.eda.nokia.com/v1alpha1.yaml diff --git a/static/resources/topologies.topologies.eda.nokia.com/v1alpha1.yaml b/static/resources/25.12.1/topologies.topologies.eda.nokia.com/v1alpha1.yaml similarity index 100% rename from static/resources/topologies.topologies.eda.nokia.com/v1alpha1.yaml rename to static/resources/25.12.1/topologies.topologies.eda.nokia.com/v1alpha1.yaml diff --git a/static/resources/topologygroupings.topologies.eda.nokia.com/v1alpha1.yaml b/static/resources/25.12.1/topologygroupings.topologies.eda.nokia.com/v1alpha1.yaml similarity index 100% rename from static/resources/topologygroupings.topologies.eda.nokia.com/v1alpha1.yaml rename to static/resources/25.12.1/topologygroupings.topologies.eda.nokia.com/v1alpha1.yaml diff --git a/static/resources/25.12.1/toponodes.core.eda.nokia.com/v1.yaml b/static/resources/25.12.1/toponodes.core.eda.nokia.com/v1.yaml new file mode 100644 index 0000000..5aedd49 --- /dev/null +++ b/static/resources/25.12.1/toponodes.core.eda.nokia.com/v1.yaml @@ -0,0 +1,225 @@ +additionalPrinterColumns: + - jsonPath: .spec.platform + name: Platform + type: string + - jsonPath: .spec.version + name: Version + type: string + - jsonPath: .spec.operatingSystem + name: OS + type: string + - jsonPath: .spec.onBoarded + name: OnBoarded + type: boolean + - jsonPath: .spec.npp.mode + name: Mode + type: string + - jsonPath: .status.npp-state + name: NPP + type: string + - jsonPath: .status.node-state + name: Node + type: string + - jsonPath: .metadata.creationTimestamp + name: Age + type: date +name: v1 +schema: + openAPIV3Schema: + description: TopoNode is the Schema for the toponodes API + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + description: A managed network element is represented via a TopoNode resource, describing characteristics of a specific element in the topology. + properties: + component: + description: |- + List of components within the TopoNode. + Used to define the type and location of linecards, fabrics (SFM), media adapter cards (MDA) and control cards (CPM). + items: + properties: + kind: + description: The kind of Component, e.g. lineCard. + enum: + - controlCard + - lineCard + - fabric + - mda + - connector + - xiom + - powerShelf + - powerModule + type: string + slot: + description: |- + The slot this Component resides in, unset for Components that do not have a slot or ID. + e.g. 1 would denote the linecard slot 1, 1/1 would denote linecard slot 1 mda slot 1. + type: string + type: + description: Denotes the type of hardware being provisioned, e.g. xcm-x20. + type: string + required: + - kind + - type + type: object + type: array + license: + description: Reference to a ConfigMap containing a license for the TopoNode. Overrides the license set in the referenced NodeProfile, if present. + type: string + macAddress: + description: |- + MAC address to associate with this TopoNode. + Typically the chassis MAC address, optionally sent by a node in DHCP requests. + Not required when a TopoNode is not being bootstrapped by EDA, or is simulated through CX. + type: string + nodeProfile: + description: Reference to a NodeProfile to use with this TopoNode. + type: string + npp: + description: Options relating to NPP interactions with the node. + properties: + mode: + default: normal + description: |- + The mode in which this TopoNode is functioning. + "normal" (the default) + indicates that NPP is expecting an endpoint to exist, and will accept and confirm changes only if the endpoint + accepts them. + "maintenance" + indicates that no changes will be accepted for the TopoNode, irrespective if the endpoint is up and reachable. + The exception is if an upgrade is occuring, in which case changes will be accepted. + "null" + indicates that changes will be accepted from CRs and no NPP will be spun up. NPP validation will not occur. + This may be useful in playground mode to avoid spinning up of 1000s of NPPs. + "emulate" + indicates that changes will be accepted at the NPP level, without pushing them to a endpoint. NPP validation + still occurs. If no IP address is present, we also run in emulate mode. + "monitor" + indicates that state will be collectd but config will not be pushed to a endpoint. NPP validation still occurs. + enum: + - normal + - maintenance + - "null" + - emulate + - monitor + type: string + type: object + onBoarded: + default: false + description: |- + Indicates if this TopoNode has been bootstrapped or is reachable via configured credentials. Set by BootstrapServer when it completes onboarding functions for a given TopoNode. + Most applications ignore TopoNodes that have not been onboarded yet. + type: boolean + operatingSystem: + default: srl + description: Operating system running on this TopoNode, e.g. srl. + enum: + - srl + - sros + - eos + - sonic + - ios-xr + - nxos + - linux + type: string + platform: + description: Platform type of this TopoNode, e.g. 7220 IXR-D3L. + type: string + productionAddress: + description: |- + Production address of this TopoNode - this is the address the real, production instance of this TopoNode uses. + If left blank, an address will be allocated from the management IP pool specified in the referenced NodeProfile. + If this TopoNode is not bootstrapped by EDA this field must be provided. + properties: + ipv4: + description: The IPv4 production address + type: string + ipv6: + description: The IPv6 production address + type: string + type: object + serialNumber: + description: |- + Serial number of this TopoNode, optionally sent by a node in DHCP requests. + Not required when a TopoNode is not being bootstrapped by EDA, or is simulated through CX. + type: string + systemInterface: + description: 'Deprecated: Name of the Interface resource representing the primary loopback on the TopoNode, this field will be removed in the future version.' + type: string + version: + description: Sets the software version of this TopoNode, e.g. 24.7.1 (for srl), or 24.7.r1 (for sros). + type: string + required: + - nodeProfile + - operatingSystem + - platform + - version + type: object + status: + description: TopoNodeStatus defines the observed state of TopoNode + properties: + node-details: + description: Address and port used to connected to the node. + type: string + node-state: + description: |- + The current state of the connection between NPP and the node. + "TryingToConnect" + NPP is attempting to connect and establish connectivity to the node + "WaitingForInitialCfg" + NPP is connected to the node but waiting for intial config to push + "Committing" + NPP is in progress of commiting + "RetryingCommit" + NPP lost sync to node and is re-pushing current config + "Synced" + NPP is in fully synced state + "Standby" + NPP is running in standby mode. This state is only used on standby clusters with georedundancy. + "NoIpAddress" + NPP is running but there is no IP address for node. This only happen in sim setups when + CX has not created the simulated node, or the simulated pod failed to launch due to image error. + type: string + npp-details: + description: NPP address and port for this TopoNode. + type: string + npp-pod: + description: NPP pod name + type: string + npp-state: + description: The current state of the connection between ConfigEngine and NPP. + type: string + operatingSystem: + description: Operational operating system running on this TopoNode, e.g. srl, sros. + type: string + platform: + description: Operational platform type of this TopoNode, e.g. 7220 IXR-D3L. + type: string + simulate: + description: Simulate using CX - if true CX is reponsible for generating the TargetNode resource. + type: boolean + version: + description: Operational software version of this TopoNode, e.g. 24.7.1 (for srl), or 24.7.r1 (for sros). + type: string + type: object + type: object +served: true +storage: true +subresources: + status: {} diff --git a/static/resources/trafficrateoverlays.topologies.eda.nokia.com/v1alpha1.yaml b/static/resources/25.12.1/trafficrateoverlays.topologies.eda.nokia.com/v1alpha1.yaml similarity index 100% rename from static/resources/trafficrateoverlays.topologies.eda.nokia.com/v1alpha1.yaml rename to static/resources/25.12.1/trafficrateoverlays.topologies.eda.nokia.com/v1alpha1.yaml diff --git a/static/resources/transactionresults.core.eda.nokia.com/v1.yaml b/static/resources/25.12.1/transactionresults.core.eda.nokia.com/v1.yaml similarity index 100% rename from static/resources/transactionresults.core.eda.nokia.com/v1.yaml rename to static/resources/25.12.1/transactionresults.core.eda.nokia.com/v1.yaml diff --git a/static/resources/transactions.core.eda.nokia.com/v1.yaml b/static/resources/25.12.1/transactions.core.eda.nokia.com/v1.yaml similarity index 100% rename from static/resources/transactions.core.eda.nokia.com/v1.yaml rename to static/resources/25.12.1/transactions.core.eda.nokia.com/v1.yaml diff --git a/static/resources/udpproxies.core.eda.nokia.com/v1.yaml b/static/resources/25.12.1/udpproxies.core.eda.nokia.com/v1.yaml similarity index 100% rename from static/resources/udpproxies.core.eda.nokia.com/v1.yaml rename to static/resources/25.12.1/udpproxies.core.eda.nokia.com/v1.yaml diff --git a/static/resources/userdeployments.aaa.eda.nokia.com/v1alpha1.yaml b/static/resources/25.12.1/userdeployments.aaa.eda.nokia.com/v1alpha1.yaml similarity index 100% rename from static/resources/userdeployments.aaa.eda.nokia.com/v1alpha1.yaml rename to static/resources/25.12.1/userdeployments.aaa.eda.nokia.com/v1alpha1.yaml diff --git a/static/resources/25.12.1/virtualnetworks.services.eda.nokia.com/v1.yaml b/static/resources/25.12.1/virtualnetworks.services.eda.nokia.com/v1.yaml new file mode 100644 index 0000000..772e6cb --- /dev/null +++ b/static/resources/25.12.1/virtualnetworks.services.eda.nokia.com/v1.yaml @@ -0,0 +1,2687 @@ +additionalPrinterColumns: + - jsonPath: .status.operationalState + name: OperationalState + type: string + - jsonPath: .status.lastChange + name: LastChange + type: string +name: v1 +schema: + openAPIV3Schema: + description: VirtualNetwork is the Schema for the virtualnetworks API + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + description: VirtualNetworkSpec defines the desired state of VirtualNetwork + properties: + bridgeDomains: + description: List of Subnets. [emits=BridgeDomain] + items: + properties: + name: + description: The name of the BridgeDomain. + maxLength: 253 + minLength: 1 + pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$ + type: string + spec: + description: Specification of the BridgeDomain + properties: + configuredName: + description: The name of the BridgeDomain to configure on the device. + type: string + description: + description: The description of the BridgeDomain. + type: string + evi: + description: EVI to use for this BridgeDomain, can be optionally left blank to have it automatically allocated using the EVI Pool. + maximum: 65535 + minimum: 1 + type: integer + eviPool: + default: evi-pool + description: Reference to an EVI pool to use for allocations if EVI is left blank. + type: string + exportTarget: + description: Export route target in 'target:N:N' format, if not specified, the default value taken as "target:1:". + pattern: ^target.*$ + type: string + importTarget: + description: Import route target in 'target:N:N' format, if not specified, the default value taken as "target:1:". + pattern: ^target.*$ + type: string + l2proxyARPND: + description: Enables / Disabled Proxy ARP / Proxy ND. + properties: + dynamicLearning: + properties: + ageTime: + description: Aging timer value for the proxy entries in seconds. If not set, this indicates that the entries are never flushed. + maximum: 86400 + minimum: 60 + type: integer + enabled: + default: false + description: Enables or disables Dynamic Learning. + type: boolean + sendRefresh: + description: The interval determines the frequency at which the system generates three ARP Requests or Neighbor Solicitations with the intent to refresh the proxy entry. The refresh is sent within the age-time window. + maximum: 86400 + minimum: 120 + type: integer + type: object + ipDuplication: + properties: + enabled: + default: false + description: Enables or disables IP Duplication. + type: boolean + holdDownTime: + default: 9 + description: Time to wait in minutes from the moment an IP is declared duplicate to the time the IP is removed from the proxy ARP/ND table. + maximum: 60 + minimum: 2 + type: integer + monitoringWindow: + default: 3 + description: Monitoring window for detecting duplication on a given IP address in the proxy ARP/ND table. + maximum: 15 + minimum: 1 + type: integer + numMoves: + default: 5 + description: Number of moves in the proxy ARP/ND table that an IP is allowed within the monitoring-window. + maximum: 10 + minimum: 3 + type: integer + type: object + proxyARP: + default: false + description: Enables proxy ARP. + type: boolean + proxyND: + default: false + description: Enables proxy ND. + type: boolean + tableSize: + default: 250 + description: Maximum number of entries allowed in the proxy table of the bridge domain. + maximum: 8192 + minimum: 1 + type: integer + type: object + macAging: + default: 300 + description: Configurable aging time for dynamically learned mac addresses. + format: int32 + maximum: 86400 + minimum: 60 + type: integer + macDuplicationDetection: + description: Enable or disable MAC duplication detection and resolution mechanisms. + properties: + action: + default: StopLearning + description: Action to take on the subinterface upon detecting at least one mac addresses as duplicate on the subinterface. + enum: + - Blackhole + - OperDown + - StopLearning + type: string + enabled: + default: false + description: Enables or disables Mac Duplication Detection. + type: boolean + holdDownTime: + default: 9 + description: Time to wait in minutes from the moment a mac is declared duplicate to the mac is flushed from the bridge table. + maximum: 60 + minimum: 2 + type: integer + monitoringWindow: + default: 3 + description: Monitoring window in minutes for detecting duplication on a given mac address. + maximum: 15 + minimum: 1 + type: integer + numMoves: + default: 5 + description: Number of moves a mac is allowed within the monitoring-window, before it is declared duplicate. + minimum: 3 + type: integer + type: object + macLearning: + default: true + description: Enable MAC learning for this BridgeDomain. + type: boolean + macLimit: + description: Sets the maximum number of MAC entries accepted in the bridge table. + format: int32 + minimum: 1 + type: integer + tunnelIndexPool: + default: tunnel-index-pool + description: Reference to a tunnel index pool to use for allocations. + type: string + type: + default: EVPNVXLAN + description: Select the type of BridgeDomain. Simple doesn't include any overlay control plane or dataplane properties (EVPN/VXLAN). EVPNVXLAN includes the properties needed to provision this BridgeDomain over an IP Fabric. + enum: + - SIMPLE + - EVPNVXLAN + type: string + vni: + description: VNI to use for this BridgeDomain, can be optionally left blank to have it allocated using the VNI Pool. + maximum: 16777215 + minimum: 1 + type: integer + vniPool: + default: vni-pool + description: Reference to a VNI pool to use for allocations if VNI is left blank. + type: string + type: object + required: + - name + - spec + type: object + type: array + bridgeInterfaces: + description: List of BridgeInterfaces. [emits=BridgeInterface] + items: + properties: + name: + description: The name of the BridgeInterface. + maxLength: 253 + minLength: 1 + pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$ + type: string + spec: + description: Specification of the BridgeInterface + properties: + bridgeDomain: + description: Reference to a BridgeDomain in which to attach the BridgeInterface. + type: string + description: + description: The description of the BridgeInterface. + type: string + egress: + description: Manages actions on traffic at Egress. + properties: + filters: + description: List of Filter references to use at egress. + items: + type: string + type: array + qosPolicy: + description: List of QoS Egress policy references to use at egress. + items: + type: string + type: array + type: object + ingress: + description: Manages actions on traffic at Ingress. + properties: + filters: + description: List of Filter references to use at ingress. + items: + type: string + type: array + qosPolicy: + description: List of QoS Ingress policy references to use at ingress. + items: + type: string + type: array + type: object + interface: + description: Reference to an Interface resource to attach this BridgeInterface. + type: string + l2MTU: + description: L2 MTU specifies the maximum sized Ethernet frame that can be transmitted on the subinterface. If a frame exceeds this size it is discarded. If the l2-mtu of the subinterface exceeds the port-mtu of the associated interface, the subinterface will remain operationally down. + maximum: 9500 + minimum: 1450 + type: integer + macDuplicationDetectionAction: + description: Override for Mac Duplication Detection action if enabled in the associated BridgeDomain. + enum: + - Blackhole + - OperDown + - StopLearning + - UseBridgeDomainAction + type: string + splitHorizonGroup: + description: Split Horizon Group to be used for this BridgeInterface. The subinterface within this BridgeInterface will be a member of this Split Horizon Group. + type: string + uplink: + description: The Uplink between your access breakout switch and your leaf switch. + properties: + egress: + description: Manages actions on traffic at Egress of the Local endpoint of the Uplink. + properties: + filters: + description: List of Filter references to use at egress. + items: + type: string + type: array + qosPolicy: + description: List of QoS Egress policy references to use at egress. + items: + type: string + type: array + type: object + ingress: + description: Manages actions on traffic at Ingress of the Local endpoint of the Uplink. + properties: + filters: + description: List of Filter references to use at ingress. + items: + type: string + type: array + qosPolicy: + description: List of QoS Ingress policy references to use at ingress. + items: + type: string + type: array + type: object + uplinkSelector: + description: Selects TopoLinks which connect a leaf switch to a breakout switch. This is the uplink between your access breakout switch and your leaf switch. There can only be a single TopoLink between the access breakout switch and the leaf switch, if more than one TopoLink is present between two devices the transaction will fail. + items: + type: string + type: array + uplinkVLANID: + default: pool + description: The VLAN ID to be utilized to isolate traffic from the VLAN on the access breakout switch to the leaf switch on the selected uplink TopoLink. + type: string + uplinkVLANPool: + description: A VLAN from this pool will be utilized to isolate traffic from the VLAN on the access breakout switch to the leaf switch on the selected uplink TopoLink. + type: string + type: object + vlanID: + description: Single value between 1-4094 support, ranges supported in the format x-y,x-y, or the special keyword null, any, untagged or pool for auto allocation. + type: string + required: + - bridgeDomain + - interface + - vlanID + type: object + required: + - name + - spec + type: object + type: array + irbInterfaces: + description: List of IRBInterfaces. [emits=IRBInterface] + items: + properties: + name: + description: The name of the IrbInterface. + maxLength: 253 + minLength: 1 + pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$ + type: string + spec: + description: Specification of the IrbInterface + properties: + anycastGatewayMAC: + description: The gateway MAC to use on the anycast address, if left empty the node will automatically assign one. + type: string + arpTimeout: + default: 14400 + description: Duration of time that dynamic ARP entries remain in the ARP cache before they expire. + format: int32 + type: integer + bfd: + description: Enable BFD on the IRBInterface. + properties: + desiredMinTransmitInt: + default: 1000000 + description: The minimum interval in microseconds between transmission of BFD control packets. + maximum: 100000000 + minimum: 10000 + type: integer + detectionMultiplier: + default: 3 + description: The number of packets that must be missed to declare this session as down. + maximum: 20 + minimum: 3 + type: integer + enabled: + default: false + description: Enables Biforward Detection. + type: boolean + minEchoReceiveInterval: + default: 0 + description: The minimum interval between echo packets the local node can receive. + maximum: 100000000 + minimum: 0 + type: integer + requiredMinReceive: + default: 1000000 + description: The minimum interval in microseconds between received BFD control packets that this system should support. + maximum: 100000000 + minimum: 10000 + type: integer + ttl: + description: Sets custom IP TTL or Hop Limit for multi-hop BFD sessions packets. Not applicable to single-hop BFD sessions. + maximum: 255 + minimum: 2 + type: integer + required: + - enabled + type: object + bridgeDomain: + description: Reference to a BridgeDomain. + type: string + description: + description: The description of the IRBInterface. + type: string + egress: + description: Manages actions on traffic at Egress. + properties: + filters: + description: List of Filter references to use at egress. + items: + type: string + type: array + qosPolicy: + description: List of QoS Egress policy references to use at egress. + items: + type: string + type: array + type: object + evpnRouteAdvertisementType: + description: Controls the type of ARP/ND entries to advertise. + properties: + arpDynamic: + default: false + description: Advertise dynamic ARP entries. + type: boolean + arpStatic: + default: false + description: Advertise static ARP entries. + type: boolean + ndDynamic: + default: false + description: Advertise dynamic ND entries. + type: boolean + ndStatic: + default: false + description: Advertise static ND entries. + type: boolean + rfc9135SymmetricMode: + description: Use RFC9135-based symmetric mode for ARP/ND host route advertisements. + type: boolean + type: object + hostRoutePopulate: + description: Configures host route population based on ARP entries. + properties: + dynamic: + default: true + description: Create host routes out of dynamic ARP entries. + type: boolean + evpn: + default: false + description: Create host routes out of EVPN learned ARP entries. + type: boolean + static: + default: true + description: Create host routes out of static ARP entries. + type: boolean + type: object + ingress: + description: Manages actions on traffic at Ingress. + properties: + filters: + description: List of Filter references to use at ingress. + items: + type: string + type: array + qosPolicy: + description: List of QoS Ingress policy references to use at ingress. + items: + type: string + type: array + type: object + ipAddresses: + items: + properties: + ipv4Address: + description: IPv4 address in IP/mask form, e.g., 192.168.0.1/24. + properties: + ipPrefix: + description: Address and mask to use + type: string + primary: + description: Indicates which address to use as primary for broadcast + type: boolean + required: + - ipPrefix + type: object + ipv6Address: + description: IPv6 address in IP/mask form, e.g., fc00::1/120. + properties: + ipPrefix: + description: Address and mask to use + type: string + primary: + description: Indicates which address to use as primary for broadcast + type: boolean + required: + - ipPrefix + type: object + node: + description: Reference to a TopoNode resource, if not specified the IP address will be assigned to all nodes on which the IRB is deployed. If specified the IP address will be assigned to the specified node. + type: string + type: object + type: array + ipMTU: + default: 1500 + description: IP MTU for the IRBInterface [default=1500]. + maximum: 9486 + minimum: 1280 + type: integer + ipv4Parameters: + description: Manages IPv4-specific additional parameters that are not applicable to IPv6. + properties: + directedBroadcast: + description: Allow receiving and forwarding of directed broadcast packets. Enabled when set to true. + type: boolean + type: object + ipv6RouterAdvertisement: + description: Manages IPV6 Router Advertisement parameters. + properties: + currentHopLimit: + default: 64 + description: The current hop limit to advertise in the router advertisement messages. + format: int32 + maximum: 255 + minimum: 0 + type: integer + enabled: + default: false + description: Enable or disable IPv6 router advertisements. + type: boolean + ipMTU: + description: The IP MTU to advertise in the router advertisement messages. + format: int32 + maximum: 9486 + minimum: 1280 + type: integer + managedConfigurationFlag: + default: false + description: Enable DHCPv6 for address configuration (M-bit). + type: boolean + maxAdvertisementInterval: + default: 600 + description: Maximum time between router advertisements (in seconds). + format: int32 + maximum: 1800 + minimum: 4 + type: integer + minAdvertisementInterval: + default: 200 + description: Minimum time between router advertisements (in seconds). + format: int32 + maximum: 1350 + minimum: 3 + type: integer + otherConfigurationFlag: + default: false + description: Enable DHCPv6 for other configuration (O-bit). + type: boolean + prefixes: + description: IPv6 prefixes to advertise in router advertisements. + items: + description: IPv6Prefix defines the configuration for an IPv6 prefix advertisement. + properties: + autonomousFlag: + default: true + description: When this is set in the prefix information option hosts can use the prefix for stateless address autoconfiguration (SLAAC). + type: boolean + onLinkFlag: + default: true + description: When this is set in the prefix information option hosts can use the prefix for on-link determination. + type: boolean + preferredLifetime: + default: 604800 + description: The length of time in seconds (relative to the time the packet is sent) that addresses generated from the prefix via stateless address autoconfiguration remain preferred. + format: int32 + maximum: 4294967295 + minimum: 0 + type: integer + prefix: + description: An IPv6 global unicast address prefix. + type: string + validLifetime: + default: 2592000 + description: The length of time in seconds (relative to the time the packet is sent) that the prefix is valid for the purpose of on-link determination. + format: int32 + maximum: 4294967295 + minimum: 0 + type: integer + required: + - prefix + type: object + type: array + reachableTime: + default: 0 + description: Time in milliseconds for Neighbor Unreachability Detection. + format: int32 + maximum: 3600000 + minimum: 0 + type: integer + retransmitTime: + default: 0 + description: Time in milliseconds between retransmitted NS messages. + format: int32 + maximum: 1800000 + minimum: 0 + type: integer + routerLifetime: + default: 1800 + description: Router lifetime in seconds for default gateway. + format: int32 + maximum: 9000 + minimum: 0 + type: integer + required: + - currentHopLimit + - enabled + - managedConfigurationFlag + - maxAdvertisementInterval + - minAdvertisementInterval + - otherConfigurationFlag + - retransmitTime + - routerLifetime + type: object + l3ProxyARPND: + description: L3 Proxy ARP and ND configuration. + properties: + proxyARP: + default: false + description: Select whether Proxy ARP should be enabled. + type: boolean + proxyND: + default: false + description: Select whether Proxy ND should be enabled. + type: boolean + type: object + learnUnsolicited: + default: NONE + description: Enable or disable learning of unsolicited ARPs. + enum: + - BOTH + - GLOBAL + - LINK-LOCAL + - NONE + type: string + router: + description: Reference to a Router. + type: string + unnumbered: + description: Enables the use of unnumbered interfaces on the IRBInterface. If IPv6 is specified, no IP address are configured on the sub-interface and only the link local address will be used. If any IP addresses are specified for either IPv4 or IPv6 that will take precedence and IPs will be assigned to the interfaces.(Deprecated, Use IPv6RouterAdvertisement) + enum: + - IPV6 + type: string + virtualIPDiscovery: + description: Configuration for Virtual IP discovery on the interface. + items: + properties: + address: + description: Virtual IP Address. + type: string + allowedMAC: + description: List of allowed MAC addresses for a discovered virtual IP address. + items: + type: string + type: array + bridgeInterfaceToProbe: + description: List of BridgeInterfaces on the associated MAC-VRF to which the ARP probes are sent. If left blank, the probes are sent on all BridgeInterfaces associated with the BridgeDomain. + items: + type: string + type: array + probeInterval: + default: 0 + description: ARP probe interval in seconds. + maximum: 86400 + minimum: 0 + type: integer + vlanToProbe: + description: List of VLANs on the associated BridgeDomain to which the ARP probes are sent. If left blank, the probes are sent on all VLANs associated with the BridgeDomain. + items: + type: string + type: array + required: + - address + type: object + type: array + required: + - bridgeDomain + - router + type: object + required: + - name + - spec + type: object + type: array + protocols: + description: Protocols to configure. + properties: + bgp: + description: BGP Protocol. + properties: + bgpGroups: + description: List of BgpGroups. [emits=BGPGroup] + items: + properties: + name: + description: The name of the BgpGroup. + maxLength: 253 + minLength: 1 + pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$ + type: string + spec: + description: Specification of the BgpGroup + properties: + asPathOptions: + description: AS Path Options + properties: + allowOwnAS: + default: 0 + description: The maximum number of times the global AS number or a local AS number of the BGP instance can appear in any received AS_PATH before it is considered a loop and considered invalid. + maximum: 255 + minimum: 0 + type: integer + removePrivateAS: + description: Options for removing private AS numbers (2-byte and 4-byte) from the advertised AS path towards all peers. + properties: + ignorePeerAS: + default: false + description: If set to true then do not delete or replace a private AS number that is the same as the peer AS number. + type: boolean + leadingOnly: + default: false + description: If set to true then only delete or replace private AS numbers that appear before the first occurrence of a non-private ASN in the sequence of most recent ASNs in the AS path. + type: boolean + removePrivateASMode: + default: DISABLED + description: The method by which private AS numbers are removed from the advertised AS_PATH attribute. + enum: + - DISABLED + - REPLACE + - DELETE + type: string + required: + - ignorePeerAS + - leadingOnly + - removePrivateASMode + type: object + required: + - allowOwnAS + type: object + bfd: + description: Enable or disable Bi-forward Forwarding Detection (BFD) with fast failover. + type: boolean + client: + description: When set to true, all configured and dynamic BGP peers are considered RR clients. + type: boolean + clusterID: + description: Enables route reflect client and sets the cluster ID. + type: string + configuredName: + description: Configures the group name on the device. + type: string + description: + description: Sets the description on the BGP group. + type: string + exportPolicy: + description: Reference to a Policy CR that will be used to filter routes advertised to peers. + items: + type: string + type: array + grStaleRouteTime: + description: Enables Graceful Restart on the peer and sets the stale route time. + maximum: 3600 + minimum: 1 + type: integer + importPolicy: + description: Reference to a Policy CR that will be used to filter routes received from peers. + items: + type: string + type: array + ipv4Unicast: + description: Parameters relating to the IPv4 unicast AFI/SAFI. + properties: + advertiseIPV6NextHops: + description: Enables advertisement of IPv4 Unicast routes with IPv6 next-hops to peers. + type: boolean + enabled: + description: Enables the IPv4 unicast AFISAFI. + type: boolean + prefixLimit: + properties: + prefixLimitAccepted: + properties: + logOnly: + description: Defines the action to take when the maximum number of prefixes is exceeded. Session is reset if set to false, otherwise only a warning is logged. + type: boolean + maxReceivedRoutes: + description: Maximum number of prefixes allowed to be received from the neighbor, counting only accepted routes. + format: int32 + maximum: 4294967295 + minimum: 1 + type: integer + warningThreshold: + description: A percentage of the maximum number of prefixes that can be accepted before a warning is logged. + maximum: 100 + minimum: 1 + type: integer + type: object + prefixLimitReceived: + properties: + logOnly: + description: Defines the action to take when the maximum number of prefixes is exceeded. Session is reset if set to false, otherwise only a warning is logged. + type: boolean + maxReceivedRoutes: + description: Maximum number of prefixes allowed to be received from the neighbor, counting all routes (accepted and rejected by import policies). + format: int32 + maximum: 4294967295 + minimum: 1 + type: integer + warningThreshold: + description: A percentage of the maximum number of prefixes that can be received before a warning is logged. + maximum: 100 + minimum: 1 + type: integer + type: object + type: object + receiveIPV6NextHops: + description: Enables the advertisement of the RFC 5549 capability to receive IPv4 routes with IPv6 next-hops. + type: boolean + type: object + ipv6Unicast: + description: Parameters relating to the IPv6 unicast AFI/SAFI. + properties: + enabled: + description: Enables the IPv6 unicast AFISAFI + type: boolean + prefixLimit: + properties: + prefixLimitAccepted: + properties: + logOnly: + description: Defines the action to take when the maximum number of prefixes is exceeded. Session is reset if set to false, otherwise only a warning is logged. + type: boolean + maxReceivedRoutes: + description: Maximum number of prefixes allowed to be received from the neighbor, counting only accepted routes. + format: int32 + maximum: 4294967295 + minimum: 1 + type: integer + warningThreshold: + description: A percentage of the maximum number of prefixes that can be accepted before a warning is logged. + maximum: 100 + minimum: 1 + type: integer + type: object + prefixLimitReceived: + properties: + logOnly: + description: Defines the action to take when the maximum number of prefixes is exceeded. Session is reset if set to false, otherwise only a warning is logged. + type: boolean + maxReceivedRoutes: + description: Maximum number of prefixes allowed to be received from the neighbor, counting all routes (accepted and rejected by import policies). + format: int32 + maximum: 4294967295 + minimum: 1 + type: integer + warningThreshold: + description: A percentage of the maximum number of prefixes that can be received before a warning is logged. + maximum: 100 + minimum: 1 + type: integer + type: object + type: object + type: object + keychain: + description: Reference to a Keychain resource that will be used for authentication with the BGP peer. + type: string + localAS: + description: The local autonomous system number advertised to peers. + properties: + autonomousSystem: + description: Local Autonomous System number. + maximum: 4294967295 + minimum: 1 + type: integer + prependGlobalAS: + description: When set to true, the global ASN value is prepended to the AS path in outbound routes towards each BGP peer. + type: boolean + prependLocalAS: + description: When set to true, the local AS value is prepended to the AS path of inbound routes from each EBGP peer. + type: boolean + required: + - autonomousSystem + type: object + localPreference: + description: Local Preference attribute added to received routes from the BGP peers, also sets local preference for generated routes. + maximum: 4294967295 + minimum: 0 + type: integer + multiHopMaxHop: + description: Enable multihop for eBGP peers and sets the maximum number of hops allowed. + maximum: 255 + minimum: 1 + type: integer + nextHopSelf: + description: When set to true, the next-hop in all IPv4-unicast, IPv6-unicast and EVPN BGP routes advertised to the peer is set to the local-address. + type: boolean + peerAS: + description: The autonomous system number expected from peers. + properties: + autonomousSystem: + description: Local Autonomous System number. + maximum: 4294967295 + minimum: 1 + type: integer + required: + - autonomousSystem + type: object + sendCommunityLarge: + description: When false, all large (12 byte) BGP communities from all outbound routes advertised to the peer are stripped. + type: boolean + sendCommunityStandard: + description: When false, all standard (4 byte) communities from all outbound routes advertised to the peer are stripped. + type: boolean + sendDefaultRoute: + description: Options for controlling the generation of default routes towards BGP peers. + properties: + addressFamily: + description: Enables the sending of a synthetically generated default IPv4 or IPV6 route to each peer. + items: + enum: + - IPV4-UNICAST + - IPV6-UNICAST + type: string + type: array + exportPolicy: + description: Reference to a Policy that should be applied to the advertised default routes, in order to set their attributes to non-default values. + type: string + required: + - addressFamily + type: object + timers: + description: Timer configurations + properties: + connectRetry: + description: The time interval in seconds between successive attempts to establish a session with a peer. + maximum: 65535 + minimum: 1 + type: integer + holdTime: + description: The hold-time interval in seconds that the router proposes to the peer in its OPEN message. + maximum: 65535 + minimum: 0 + type: integer + keepAlive: + description: The interval in seconds between successive keepalive messages sent to the peer. + maximum: 21845 + minimum: 0 + type: integer + minimumAdvertisementInterval: + description: The value assigned to the MinRouteAdvertisementIntervalTimer of RFC 4271, for both EBGP and IBGP sessions. + maximum: 255 + minimum: 1 + type: integer + type: object + type: object + required: + - name + - spec + type: object + type: array + bgpPeers: + description: List of BgpPeers [emits=BGPPeer] + items: + properties: + name: + description: The name of the BgpPeer. + maxLength: 253 + minLength: 1 + pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$ + type: string + spec: + description: Specification of the BgpPeer + properties: + asPathOptions: + description: AS Path Options + properties: + allowOwnAS: + default: 0 + description: The maximum number of times the global AS number or a local AS number of the BGP instance can appear in any received AS_PATH before it is considered a loop and considered invalid. + maximum: 255 + minimum: 0 + type: integer + removePrivateAS: + description: Options for removing private AS numbers (2-byte and 4-byte) from the advertised AS path towards all peers. + properties: + ignorePeerAS: + default: false + description: If set to true then do not delete or replace a private AS number that is the same as the peer AS number. + type: boolean + leadingOnly: + default: false + description: If set to true then only delete or replace private AS numbers that appear before the first occurrence of a non-private ASN in the sequence of most recent ASNs in the AS path. + type: boolean + removePrivateASMode: + default: DISABLED + description: The method by which private AS numbers are removed from the advertised AS_PATH attribute. + enum: + - DISABLED + - REPLACE + - DELETE + type: string + required: + - ignorePeerAS + - leadingOnly + - removePrivateASMode + type: object + required: + - allowOwnAS + type: object + bfd: + description: Enable or disable Bi-forward Forwarding Detection (BFD) with fast failover. + type: boolean + client: + description: When set to true, all configured and dynamic BGP peers are considered RR clients. + type: boolean + clusterID: + description: Enables route reflect client and sets the cluster ID. + type: string + description: + description: Sets the description on the BGP peer + type: string + dynamicNeighbor: + default: false + description: When set to true the Interface is added to the dynamic-neighbor list for dynamic peering. + type: boolean + dynamicNeighborAllowedPeerAS: + description: The autonomous system numbers allowed from peers if dynamic peering is enabled. + items: + type: integer + type: array + exportPolicy: + description: Reference to a Policy CR that will be used to filter routes advertised to peers. + items: + type: string + type: array + grStaleRouteTime: + description: Enables Graceful Restart on the peer and sets the stale route time. + maximum: 3600 + minimum: 1 + type: integer + group: + description: Reference to a BGPGroup. When present this BGP peer will be added to the BGP group + type: string + importPolicy: + description: Reference to a Policy CR that will be used to filter routes received from peers. + items: + type: string + type: array + interface: + description: Reference to a RoutedInterface or IrbInterface resource whose IP will be used as a source IP for the BGP session. + type: string + interfaceKind: + description: InterfaceReference type defines whether the provided Reference is a RoutedInterface or IrbInterface. + enum: + - ROUTEDINTERFACE + - IRBINTERFACE + type: string + ipv4Unicast: + description: Parameters relating to the IPv4 unicast AFI/SAFI. + properties: + advertiseIPV6NextHops: + description: Enables advertisement of IPv4 Unicast routes with IPv6 next-hops to peers. + type: boolean + enabled: + description: Enables the IPv4 unicast AFISAFI. + type: boolean + prefixLimit: + properties: + prefixLimitAccepted: + properties: + logOnly: + description: Defines the action to take when the maximum number of prefixes is exceeded. Session is reset if set to false, otherwise only a warning is logged. + type: boolean + maxReceivedRoutes: + description: Maximum number of prefixes allowed to be received from the neighbor, counting only accepted routes. + format: int32 + maximum: 4294967295 + minimum: 1 + type: integer + warningThreshold: + description: A percentage of the maximum number of prefixes that can be accepted before a warning is logged. + maximum: 100 + minimum: 1 + type: integer + type: object + prefixLimitReceived: + properties: + logOnly: + description: Defines the action to take when the maximum number of prefixes is exceeded. Session is reset if set to false, otherwise only a warning is logged. + type: boolean + maxReceivedRoutes: + description: Maximum number of prefixes allowed to be received from the neighbor, counting all routes (accepted and rejected by import policies). + format: int32 + maximum: 4294967295 + minimum: 1 + type: integer + warningThreshold: + description: A percentage of the maximum number of prefixes that can be received before a warning is logged. + maximum: 100 + minimum: 1 + type: integer + type: object + type: object + receiveIPV6NextHops: + description: Enables the advertisement of the RFC 5549 capability to receive IPv4 routes with IPv6 next-hops. + type: boolean + type: object + ipv6Unicast: + description: Parameters relating to the IPv6 unicast AFI/SAFI. + properties: + enabled: + description: Enables the IPv6 unicast AFISAFI + type: boolean + prefixLimit: + properties: + prefixLimitAccepted: + properties: + logOnly: + description: Defines the action to take when the maximum number of prefixes is exceeded. Session is reset if set to false, otherwise only a warning is logged. + type: boolean + maxReceivedRoutes: + description: Maximum number of prefixes allowed to be received from the neighbor, counting only accepted routes. + format: int32 + maximum: 4294967295 + minimum: 1 + type: integer + warningThreshold: + description: A percentage of the maximum number of prefixes that can be accepted before a warning is logged. + maximum: 100 + minimum: 1 + type: integer + type: object + prefixLimitReceived: + properties: + logOnly: + description: Defines the action to take when the maximum number of prefixes is exceeded. Session is reset if set to false, otherwise only a warning is logged. + type: boolean + maxReceivedRoutes: + description: Maximum number of prefixes allowed to be received from the neighbor, counting all routes (accepted and rejected by import policies). + format: int32 + maximum: 4294967295 + minimum: 1 + type: integer + warningThreshold: + description: A percentage of the maximum number of prefixes that can be received before a warning is logged. + maximum: 100 + minimum: 1 + type: integer + type: object + type: object + type: object + keychain: + description: Reference to a Keychain resource that will be used for authentication with the BGP peer. + type: string + localAS: + description: The local autonomous system number advertised to peers. + properties: + autonomousSystem: + description: Local Autonomous System number. + maximum: 4294967295 + minimum: 1 + type: integer + prependGlobalAS: + description: When set to true, the global ASN value is prepended to the AS path in outbound routes towards each BGP peer. + type: boolean + prependLocalAS: + description: When set to true, the local AS value is prepended to the AS path of inbound routes from each EBGP peer. + type: boolean + required: + - autonomousSystem + type: object + localPreference: + description: Local Preference attribute added to received routes from the BGP peers, also sets local preference for generated routes. + maximum: 4294967295 + minimum: 0 + type: integer + multiHopMaxHop: + description: Enable multihop for eBGP peers and sets the maximum number of hops allowed. + maximum: 255 + minimum: 1 + type: integer + nextHopSelf: + description: When set to true, the next-hop in all IPv4-unicast, IPv6-unicast and EVPN BGP routes advertised to the peer is set to the local-address. + type: boolean + node: + description: Node on which to configure the BGP peer. This node must be one of the nodes on which the IRBInterface is configured. When left blank or if the node is not part of the IRBInterface, the peer will not be deployed. Ignored for RoutedInterfaces. + type: string + peerAS: + description: The autonomous system number expected from peers. + properties: + autonomousSystem: + description: Local Autonomous System number. + maximum: 4294967295 + minimum: 1 + type: integer + required: + - autonomousSystem + type: object + peerIP: + description: Peer IP to which the peering session will be established. + type: string + sendCommunityLarge: + description: When false, all large (12 byte) BGP communities from all outbound routes advertised to the peer are stripped. + type: boolean + sendCommunityStandard: + description: When false, all standard (4 byte) communities from all outbound routes advertised to the peer are stripped. + type: boolean + sendDefaultRoute: + description: Options for controlling the generation of default routes towards BGP peers. + properties: + addressFamily: + description: Enables the sending of a synthetically generated default IPv4 or IPV6 route to each peer. + items: + enum: + - IPV4-UNICAST + - IPV6-UNICAST + type: string + type: array + exportPolicy: + description: Reference to a Policy that should be applied to the advertised default routes, in order to set their attributes to non-default values. + type: string + required: + - addressFamily + type: object + timers: + description: Timer configurations + properties: + connectRetry: + description: The time interval in seconds between successive attempts to establish a session with a peer. + maximum: 65535 + minimum: 1 + type: integer + holdTime: + description: The hold-time interval in seconds that the router proposes to the peer in its OPEN message. + maximum: 65535 + minimum: 0 + type: integer + keepAlive: + description: The interval in seconds between successive keepalive messages sent to the peer. + maximum: 21845 + minimum: 0 + type: integer + minimumAdvertisementInterval: + description: The value assigned to the MinRouteAdvertisementIntervalTimer of RFC 4271, for both EBGP and IBGP sessions. + maximum: 255 + minimum: 1 + type: integer + type: object + required: + - group + - interface + - interfaceKind + type: object + required: + - name + - spec + type: object + type: array + type: object + ospf: + description: OSPF Protocol Instanes. + items: + properties: + name: + description: The name of the OSPFInstance. + maxLength: 253 + minLength: 1 + pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$ + type: string + ospfAreas: + description: List of OSPFAreas. [emits=OSPFArea] + items: + properties: + name: + description: The name of the OSPFArea. + maxLength: 253 + minLength: 1 + pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$ + type: string + spec: + description: Specification of the OSPFArea. + properties: + areaId: + default: 0.0.0.0 + description: Area ID. 32-bit in the dotted-quad notation (e.g., "0.0.0.0"). + format: ipv4 + pattern: ^((([0-9]|[1-9][0-9]|1[0-9]{2}|2[0-4][0-9]|25[0-5])\.){3}([0-9]|[1-9][0-9]|1[0-9]{2}|2[0-4][0-9]|25[0-5]))$ + type: string + areaType: + default: Normal + description: Area type. Normal is assumed if not specified. + enum: + - Normal + - Stub + - NSSA + type: string + required: + - areaId + type: object + required: + - name + - spec + type: object + type: array + ospfInterfaces: + description: List of OSPFInterfaces. [emits=OSPFInterface] + items: + properties: + name: + description: The name of the OSPFInterface. + maxLength: 253 + minLength: 1 + pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$ + type: string + spec: + description: Specification of the OSPFInterface. + properties: + deadIntervalSec: + description: Dead Interval in seconds. + maximum: 65535 + minimum: 3 + type: integer + helloIntervalSec: + description: Hello Interval in seconds. + maximum: 65535 + minimum: 1 + type: integer + interface: + description: Reference to a RoutedInterface. + type: string + interfaceKind: + default: ROUTEDINTERFACE + description: Reference to the Kind of interface to enable OSPF on. + enum: + - ROUTEDINTERFACE + type: string + metric: + description: Interface metric. + minimum: 0 + type: integer + mtu: + description: OSPF interface MTU + maximum: 10240 + minimum: 512 + type: integer + ospfArea: + description: Reference to a OSPFArea. + type: string + ospfBFD: + description: Configure BFD on the OSPF interface. + properties: + enabled: + default: false + description: Enables BFD on the OSPF interface. + type: boolean + strictMode: + description: Enables BFD Strict Mode on the OSPF interface. + type: boolean + strictModeHoldDownSec: + description: Enables Hold Down Timer for BFD Strict Mode, in seconds. + maximum: 3600 + minimum: 512 + type: integer + required: + - enabled + type: object + ospfInstance: + description: Reference to a OSPF Instance on which the OSPF area is configured. + type: string + passive: + description: Configure the OSPF interface as passive. + type: boolean + type: + default: PointToPoint + description: OSPF interface type. + enum: + - PointToPoint + - Broadcast + type: string + required: + - interface + - interfaceKind + - ospfArea + - ospfInstance + - type + type: object + required: + - name + - spec + type: object + type: array + spec: + description: Specification of the OSPFInstance. + properties: + addressFamily: + description: Selects an address family for OSPFv3. It is mandatory to specify at least one address family when OSPFv3 is selected. + enum: + - IPV4-UNICAST + - IPV6-UNICAST + type: string + enabled: + default: false + description: Enables OSPF instance. + type: boolean + maxECMP: + description: The maximum number of ECMP paths (next-hops). + maximum: 256 + minimum: 1 + type: integer + maxMetric: + description: Configuration related to OSPF Max Metric / Overload. + properties: + onBoot: + description: Set Max Metric on boot for the fixed period of time (in seconds). + minimum: 10 + type: integer + overload: + description: Enable Max Link Metric on all interfaces. + type: boolean + type: object + refBwGbps: + description: Reference bandwidth (in Gbps) for automatic metric calculation. + maximum: 3200 + minimum: 1 + type: integer + timers: + description: Configures OSPF timers. + properties: + lsaTimers: + properties: + accumulateMs: + description: Delay (in milliseconds) to gather LSAs before advertising to neighbors + minimum: 0 + type: integer + arrivalMs: + description: Minimum interval (in milliseconds) to accept an identical LSA. + minimum: 0 + type: integer + genHoldIntervalMs: + description: Hold interval (in milliseconds) for subsequent LSA regeneration. + minimum: 0 + type: integer + genInitialDelayMs: + description: Initial delay (in milliseconds) to generate the first instance of LSAs. + minimum: 0 + type: integer + genMaxDelayMs: + description: Maximum interval (in milliseconds) between two consecutive regenerations (of the same LSA). + minimum: 0 + type: integer + type: object + spfTimers: + properties: + holdIntervalMs: + description: Hold interval for subsequent SPF calculations. + minimum: 1 + type: integer + incrementalSPFDelayMs: + description: Delay (in milliseconds) before an incremental SPF calculation starts. + minimum: 0 + type: integer + initialDelayMs: + description: Initial SPF calculation delay (in milliseconds). + minimum: 0 + type: integer + maxDelayMs: + description: Maximum interval (in milliseconds) between two consecutive SPF calculations. + minimum: 1 + type: integer + type: object + type: object + version: + description: OSPF version to use. OSPFv2 is supported over IPv4-enabled interfaces, OSPFv3 over IPv6-enabled interfaces. + enum: + - v2 + - v3 + type: string + required: + - enabled + - version + type: object + required: + - name + - spec + type: object + type: array + routingPolicies: + description: Routing Policies. + properties: + policies: + description: List of Policies. [emits=Policy] + items: + properties: + name: + description: Name of the Policy. + maxLength: 253 + minLength: 1 + pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$ + type: string + spec: + description: A policy + properties: + configuredName: + description: The name of the policy to configure on the device. + type: string + defaultAction: + description: The default action to apply if no other actions are defined. + properties: + bgp: + description: Actions related to the BGP protocol. + properties: + asPathPrepend: + description: AS number to prepend to the AS Path attributes. + format: int32 + maximum: 4294967295 + minimum: 1 + type: integer + asPathRemove: + description: Clear the AS path to make it empty. + type: boolean + asPathReplace: + description: Replace the existing AS path with a new AS_SEQUENCE containing the listed AS numbers. + items: + format: int32 + type: integer + type: array + communitySet: + description: Modify BGP communities associated with the route using hybrid Community Sets. + properties: + add: + description: List of community sets to add to the route. + items: + type: string + maxItems: 1 + type: array + remove: + description: List of community sets to remove from the route. + items: + type: string + maxItems: 1 + type: array + replace: + description: List of community sets to replace the existing communities with. Cannot be combined with Add or Remove. + items: + type: string + maxItems: 1 + type: array + type: object + localPreference: + description: Set a new LOCAL_PREF value for matching BGP routes. + format: int32 + maximum: 4294967295 + minimum: 0 + type: integer + med: + description: Set a new MED value. + properties: + numericalValue: + description: Fixed numerical value to set or add/subtract. + maximum: 4294967295 + minimum: 0 + type: integer + operation: + description: The operation to perform on the MED value. + enum: + - Set + - Add + - Subtract + type: string + valueType: + description: Use a fixed value or an IGP metric to adjust the MED. + enum: + - Fixed + - IGP + type: string + type: object + setOrigin: + description: Set a new ORIGIN attribute for matching BGP routes. + enum: + - egp + - igp + - incomplete + type: string + type: object + policyResult: + description: Final disposition for the route. + enum: + - accept + - reject + - NextPolicy + - NextStatement + type: string + tags: + description: Manipulate internal route tags associated with the route. + properties: + tagSet: + description: Add tags to the route from the referenced Tag Set. + type: string + type: object + type: object + statement: + description: List of policy statements. + items: + properties: + action: + description: Actions for routes that match the policy statement. + properties: + bgp: + description: Actions related to the BGP protocol. + properties: + asPathPrepend: + description: AS number to prepend to the AS Path attributes. + format: int32 + maximum: 4294967295 + minimum: 1 + type: integer + asPathRemove: + description: Clear the AS path to make it empty. + type: boolean + asPathReplace: + description: Replace the existing AS path with a new AS_SEQUENCE containing the listed AS numbers. + items: + format: int32 + type: integer + type: array + communitySet: + description: Modify BGP communities associated with the route using hybrid Community Sets. + properties: + add: + description: List of community sets to add to the route. + items: + type: string + maxItems: 1 + type: array + remove: + description: List of community sets to remove from the route. + items: + type: string + maxItems: 1 + type: array + replace: + description: List of community sets to replace the existing communities with. Cannot be combined with Add or Remove. + items: + type: string + maxItems: 1 + type: array + type: object + localPreference: + description: Set a new LOCAL_PREF value for matching BGP routes. + format: int32 + maximum: 4294967295 + minimum: 0 + type: integer + med: + description: Set a new MED value. + properties: + numericalValue: + description: Fixed numerical value to set or add/subtract. + maximum: 4294967295 + minimum: 0 + type: integer + operation: + description: The operation to perform on the MED value. + enum: + - Set + - Add + - Subtract + type: string + valueType: + description: Use a fixed value or an IGP metric to adjust the MED. + enum: + - Fixed + - IGP + type: string + type: object + setOrigin: + description: Set a new ORIGIN attribute for matching BGP routes. + enum: + - egp + - igp + - incomplete + type: string + type: object + policyResult: + description: Final disposition for the route. + enum: + - accept + - reject + - NextPolicy + - NextStatement + type: string + tags: + description: Manipulate internal route tags associated with the route. + properties: + tagSet: + description: Add tags to the route from the referenced Tag Set. + type: string + type: object + type: object + match: + description: Match conditions of the policy statement. + properties: + bgp: + description: Configuration for BGP-specific policy match criteria. + properties: + asPathMatch: + description: AS Path match criteria. + properties: + asPathExpression: + description: A singular regular expression string to match against AS_PATH objects. Mutually exclusive with the ASPathSet reference. + type: string + asPathSet: + description: Reference to an ASPathSet resource. Mutually exclusive with the ASPathExpression. + type: string + matchSetOptions: + description: The matching criteria that applies to the members in the referenced set. + enum: + - Any + - All + - Invert + type: string + type: object + communitySet: + description: Match conditions for BGP communities. + type: string + evpnRouteType: + description: Match conditions for EVPN route types. + items: + type: integer + type: array + type: object + family: + description: Address families that the route belongs to. + items: + type: string + type: array + prefixSet: + description: Reference to a PrefixSet resource. + type: string + protocol: + description: The route protocol type to match. + enum: + - AGGREGATE + - ARP_ND + - BGP + - BGP_EVPN + - BGP_EVPN_IFF + - BGP_EVPN_IFL_HOST + - DHCP + - GRIBI + - HOST + - ISIS + - LOCAL + - LINUX + - NDK1 + - NDK2 + - OSPFV2 + - OSPFV3 + - STATIC + type: string + tags: + description: Match based on the internal route tags associated with the route. + properties: + tagSet: + description: Reference to a TagSet resource. + type: string + type: object + type: object + name: + description: Name of the policy statement. + type: string + required: + - name + type: object + type: array + type: object + required: + - name + type: object + type: array + prefixSets: + description: List of PrefixSet [emits=PrefixSet] + items: + properties: + name: + description: Name of the PrefixSet. + maxLength: 253 + minLength: 1 + pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$ + type: string + spec: + description: A PrefixSets + properties: + configuredName: + description: The name of the prefixset to configure on the device. + type: string + prefix: + description: List of IPv4 or IPv6 prefixes in CIDR notation. + items: + properties: + endRange: + description: The end range when using a range to match prefixes. + maximum: 128 + minimum: 0 + type: integer + exact: + description: Indicates if it is an exact match. Ignores the StartRange and EndRange if this param is set. + type: boolean + prefix: + description: The IPv4 or IPv6 prefix in CIDR notation with mask. + type: string + startRange: + description: If specifying a range, this is the start of the range. + maximum: 128 + minimum: 0 + type: integer + required: + - prefix + type: object + type: array + required: + - prefix + type: object + required: + - name + type: object + type: array + type: object + staticRoutes: + description: List of Static Routes within this VirtualNetwork. [emits=StaticRoute] + items: + properties: + name: + description: Name of the StaticRoute. + maxLength: 253 + minLength: 1 + pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$ + type: string + spec: + description: A StaticRoutes + properties: + configuredName: + description: The name of the static route to configure on the device. + type: string + nexthopGroup: + description: Group of nexthops for the list of prefixes. + properties: + bfd: + description: Enables BFD to the next-hops in the group. Local and Remote discriminator parameters have been deprecated at this level. Use Nexthop to set these parameters. + properties: + enabled: + default: false + description: Defines whether BFD should be enabled towards the nexthops. + type: boolean + localAddress: + description: Defines the local address to use when establishing the BFD session with the nexthop. + type: string + type: object + blackhole: + default: false + description: If set to true all traffic destined to the prefixes will be blackholed. If enabled, next-hops are ignored and this takes precedence. + type: boolean + blackholeSendICMP: + description: When enabled, the router will generate ICMP Unreachable messages for packets destined to the blackhole route. + type: boolean + nexthops: + description: Ordered list of nexthops. + items: + properties: + bfd: + description: Enables BFD to the next-hops in the group. This overrides the configuration at the group. + properties: + enabled: + default: false + description: Defines whether BFD should be enabled towards the nexthops. + type: boolean + localAddress: + description: Defines the local address to use when establishing the BFD session with the nexthop. + type: string + localDiscriminator: + description: Defines the local discriminator. + type: integer + remoteDiscriminator: + description: Defines the remote discriminator. + type: integer + type: object + ipPrefix: + description: Address to use. + type: string + resolve: + default: false + description: If set to true the next-hops can be destinations which are resolved in the route table. This overrides the configuration at the group. + type: boolean + required: + - ipPrefix + type: object + type: array + resolve: + default: false + description: If set to true the next-hops can be destinations which are resolved in the route table. + type: boolean + type: object + nodes: + description: List of nodes on which to configure the static routes. An AND operation is executed against the nodes in this list and the nodes on which the Router is configured to determine the Nodes on which to configure the static routes. + items: + type: string + type: array + preference: + description: Defines the route preference. + type: integer + prefixes: + description: List of destination prefixes and mask to use for the static routes. + items: + type: string + type: array + router: + description: Reference to a Router on which to configure the static routes. If no Nodes are provided then the static routes will be provisioned on all Nodes on which the Router is provisioned. + type: string + required: + - nexthopGroup + - prefixes + - router + type: object + required: + - name + type: object + type: array + type: object + routedInterfaces: + description: List of RoutedInterface. [emits=RoutedInterface] + items: + properties: + name: + description: The name of the RoutedInterface. + maxLength: 253 + minLength: 1 + pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$ + type: string + spec: + description: Specification of the RoutedInterface + properties: + arpTimeout: + default: 14400 + description: Duration of time that dynamic ARP entries remain in the ARP cache before they expire. + format: int32 + type: integer + bfd: + description: Enables BFD on the RoutedInterface. + properties: + desiredMinTransmitInt: + default: 1000000 + description: The minimum interval in microseconds between transmission of BFD control packets. + maximum: 100000000 + minimum: 10000 + type: integer + detectionMultiplier: + default: 3 + description: The number of packets that must be missed to declare this session as down. + maximum: 20 + minimum: 3 + type: integer + enabled: + default: false + description: Enables Biforward Detection. + type: boolean + minEchoReceiveInterval: + default: 0 + description: The minimum interval between echo packets the local node can receive. + maximum: 100000000 + minimum: 0 + type: integer + requiredMinReceive: + default: 1000000 + description: The minimum interval in microseconds between received BFD control packets that this system should support. + maximum: 100000000 + minimum: 10000 + type: integer + ttl: + description: Sets custom IP TTL or Hop Limit for multi-hop BFD sessions packets. Not applicable to single-hop BFD sessions. + maximum: 255 + minimum: 2 + type: integer + required: + - enabled + type: object + description: + description: The description of the RoutedInterface. + type: string + egress: + description: Manages actions on traffic at Egress. + properties: + filters: + description: List of Filter references to use at egress. + items: + type: string + type: array + qosPolicy: + description: List of QoS Egress policy references to use at egress. + items: + type: string + type: array + type: object + hostRoutePopulate: + description: Configures host route population based on ARP/ND entries. + properties: + dynamic: + description: Create host routes out of dynamic ARP/ND entries. + properties: + datapathProgramming: + description: Enable datapath programming for host routes. + type: boolean + populate: + default: false + description: Enable population of host routes based on ARP/ND entries. + type: boolean + required: + - populate + type: object + evpn: + description: Create host routes out of EVPN learned ARP/ND entries. + properties: + datapathProgramming: + description: Enable datapath programming for host routes. + type: boolean + populate: + default: false + description: Enable population of host routes based on ARP/ND entries. + type: boolean + required: + - populate + type: object + static: + description: Create host routes out of static ARP/ND entries. + properties: + datapathProgramming: + description: Enable datapath programming for host routes. + type: boolean + populate: + default: false + description: Enable population of host routes based on ARP/ND entries. + type: boolean + required: + - populate + type: object + type: object + ingress: + description: Manages actions on traffic at Ingress. + properties: + filters: + description: List of Filter references to use at ingress. + items: + type: string + type: array + qosPolicy: + description: List of QoS Ingress policy references to use at ingress. + items: + type: string + type: array + type: object + interface: + description: Reference to an Interface to use for attachment. + type: string + ipMTU: + default: 1500 + description: IP MTU for the RoutedInterface. + maximum: 9486 + minimum: 1280 + type: integer + ipv4Addresses: + description: List of IPv4 addresses in IP/mask form, e.g., 192.168.0.1/24. + items: + properties: + ipPrefix: + description: Address and mask to use + type: string + primary: + description: Indicates which address to use as primary for broadcast + type: boolean + required: + - ipPrefix + type: object + type: array + ipv4Parameters: + properties: + directedBroadcast: + description: Allow receiving and forwarding of directed broadcast packets. Enabled when set to true. + type: boolean + type: object + ipv6Addresses: + description: List of IPv6 addresses in IP/mask form, e.g., fc00::1/120. + items: + properties: + ipPrefix: + description: Address and mask to use + type: string + primary: + description: Indicates which address to use as primary for broadcast + type: boolean + required: + - ipPrefix + type: object + type: array + ipv6RouterAdvertisement: + description: Manages IPV6 Router Advertisement parameters. + properties: + currentHopLimit: + default: 64 + description: The current hop limit to advertise in the router advertisement messages. + format: int32 + maximum: 255 + minimum: 0 + type: integer + enabled: + default: false + description: Enable or disable IPv6 router advertisements. + type: boolean + ipMTU: + description: The IP MTU to advertise in the router advertisement messages. + format: int32 + maximum: 9486 + minimum: 1280 + type: integer + managedConfigurationFlag: + default: false + description: Enable DHCPv6 for address configuration (M-bit). + type: boolean + maxAdvertisementInterval: + default: 600 + description: Maximum time between router advertisements (in seconds). + format: int32 + maximum: 1800 + minimum: 4 + type: integer + minAdvertisementInterval: + default: 200 + description: Minimum time between router advertisements (in seconds). + format: int32 + maximum: 1350 + minimum: 3 + type: integer + otherConfigurationFlag: + default: false + description: Enable DHCPv6 for other configuration (O-bit). + type: boolean + prefixes: + description: IPv6 prefixes to advertise in router advertisements. + items: + description: IPv6Prefix defines the configuration for an IPv6 prefix advertisement. + properties: + autonomousFlag: + default: true + description: When this is set in the prefix information option hosts can use the prefix for stateless address autoconfiguration (SLAAC). + type: boolean + onLinkFlag: + default: true + description: When this is set in the prefix information option hosts can use the prefix for on-link determination. + type: boolean + preferredLifetime: + default: 604800 + description: The length of time in seconds (relative to the time the packet is sent) that addresses generated from the prefix via stateless address autoconfiguration remain preferred. + format: int32 + maximum: 4294967295 + minimum: 0 + type: integer + prefix: + description: An IPv6 global unicast address prefix. + type: string + validLifetime: + default: 2592000 + description: The length of time in seconds (relative to the time the packet is sent) that the prefix is valid for the purpose of on-link determination. + format: int32 + maximum: 4294967295 + minimum: 0 + type: integer + required: + - prefix + type: object + type: array + reachableTime: + default: 0 + description: Time in milliseconds for Neighbor Unreachability Detection. + format: int32 + maximum: 3600000 + minimum: 0 + type: integer + retransmitTime: + default: 0 + description: Time in milliseconds between retransmitted NS messages. + format: int32 + maximum: 1800000 + minimum: 0 + type: integer + routerLifetime: + default: 1800 + description: Router lifetime in seconds for default gateway. + format: int32 + maximum: 9000 + minimum: 0 + type: integer + required: + - currentHopLimit + - enabled + - managedConfigurationFlag + - maxAdvertisementInterval + - minAdvertisementInterval + - otherConfigurationFlag + - retransmitTime + - routerLifetime + type: object + l3ProxyARPND: + description: L3 Proxy ARP and ND configuration. + properties: + proxyARP: + default: false + description: Select whether Proxy ARP should be enabled. + type: boolean + proxyND: + default: false + description: Select whether Proxy ND should be enabled. + type: boolean + type: object + learnUnsolicited: + default: NONE + description: Enable or disable learning of unsolicited ARPs. + enum: + - BOTH + - GLOBAL + - LINK-LOCAL + - NONE + type: string + router: + description: Reference to a Router. + type: string + unnumbered: + description: Enables the use of unnumbered interfaces on the IRBInterface. If IPv6 is specified, no IP address are configured on the sub-interface and only the link local address will be used. If any IP addresses are specified for either IPv4 or IPv6 that will take precedence and IPs will be assigned to the interfaces. (Deprecated, Use IPv6RouterAdvertisement) + enum: + - IPV6 + type: string + vlanID: + default: pool + description: Single value between 1-4094 support, ranges supported in the format x-y,x-y, or the special keyword null, any, untagged or pool for auto allocation. + type: string + vlanPool: + default: vlan-pool + description: Reference to a VLAN pool to use for allocations. + type: string + required: + - interface + - router + type: object + required: + - name + - spec + type: object + type: array + routers: + description: List of Routers.[emits=Router] + items: + properties: + name: + description: The name of the Router. + maxLength: 253 + minLength: 1 + pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$ + type: string + spec: + description: Specification of the Router + properties: + bgp: + description: BGP configuration. + properties: + autonomousSystem: + description: Autonomous System number for BGP. + maximum: 4294967295 + minimum: 1 + type: integer + ebgpPreference: + default: 170 + description: Preference to be set for eBGP [default=170]. + maximum: 255 + minimum: 1 + type: integer + enabled: + default: false + description: Enable or disable BGP. + type: boolean + exportPolicy: + description: Reference to a Policy CR that will be used to filter routes advertised to peers. + items: + type: string + type: array + ibgpPreference: + default: 170 + description: Preference to be set for iBGP [default=170]. + maximum: 255 + minimum: 1 + type: integer + importPolicy: + description: Reference to a Policy CR that will be used to filter routes received from peers. + items: + type: string + type: array + ipAliasNexthops: + description: IP aliasing configuration. + items: + properties: + esi: + default: auto + description: 10 byte Ethernet Segment Identifier, if not set a type 0 ESI is generated. + type: string + nextHop: + description: The nexthop IP address to track for the IP alias. + type: string + preferredActiveNode: + description: When not set the ES is used in an all active mode. This references the TopoNode object and when set, the DF algorithm is configured to type preference and the selected Node is set with a higher preference value. All other Nodes have a lower value configured. + type: string + required: + - nextHop + type: object + type: array + ipv4Unicast: + description: Parameters relating to the IPv4 unicast AFI/SAFI. + properties: + advertiseIPV6NextHops: + description: Enables advertisement of IPv4 Unicast routes with IPv6 next-hops to peers. + type: boolean + enabled: + default: false + description: Enables the IPv4 unicast AFISAFI. + type: boolean + multipath: + description: Enable multipath. + properties: + allowMultipleAS: + default: true + description: When set to true, BGP is allowed to build a multipath set using BGP routes with different neighbor AS (most recent AS in the AS_PATH), When set to false, BGP is only allowed to use non-best paths for ECMP if they meet the multipath criteria and they have the same neighbor AS as the best path. + type: boolean + maxAllowedPaths: + description: The maximum number of BGP ECMP next-hops for BGP routes with an NLRI belonging to the address family of this configuration context. + maximum: 256 + minimum: 1 + type: integer + required: + - allowMultipleAS + - maxAllowedPaths + type: object + receiveIPV6NextHops: + description: Enables the advertisement of the RFC 5549 capability to receive IPv4 routes with IPv6 next-hops. + type: boolean + required: + - enabled + type: object + ipv6Unicast: + description: Parameters relating to the IPv6 unicast AFI/SAFI. + properties: + enabled: + default: false + description: Enables the IPv6 unicast AFISAFI + type: boolean + multipath: + description: Enable multipath + properties: + allowMultipleAS: + default: true + description: When set to true, BGP is allowed to build a multipath set using BGP routes with different neighbor AS (most recent AS in the AS_PATH), When set to false, BGP is only allowed to use non-best paths for ECMP if they meet the multipath criteria and they have the same neighbor AS as the best path. + type: boolean + maxAllowedPaths: + description: The maximum number of BGP ECMP next-hops for BGP routes with an NLRI belonging to the address family of this configuration context. + maximum: 256 + minimum: 1 + type: integer + required: + - allowMultipleAS + - maxAllowedPaths + type: object + required: + - enabled + type: object + keychain: + description: Keychain to be used for authentication + type: string + minWaitToAdvertise: + default: 0 + description: Minimum wait time before advertising routes post BGP restart. + maximum: 3600 + minimum: 0 + type: integer + rapidWithdrawl: + default: true + description: Enable rapid withdrawal in BGP. + type: boolean + waitForFIBInstall: + default: false + description: Wait for FIB installation before advertising routes. + type: boolean + type: object + configuredName: + description: The name of the Router to configure on the device. + type: string + description: + description: The description of the Router. + type: string + ecmp: + description: Set the maximum number of ECMP paths for the Router. This is supported only by some platforms, and will be ignored for others. + maximum: 256 + minimum: 1 + type: integer + evi: + description: EVI for the Router; leave blank for auto-allocation from EVI pool. + maximum: 65535 + minimum: 1 + type: integer + eviPool: + default: evi-pool + description: Reference to EVI pool for auto-allocation. + type: string + exportTarget: + description: Export route target in 'target:N:N' format, if not specified, the default value taken as "target:1:". + pattern: ^target.*$ + type: string + importTarget: + description: Import route target in 'target:N:N' format, if not specified, the default value taken as "target:1:". + pattern: ^target.*$ + type: string + ipLoadBalancing: + description: Resilient Hashing configuration. + properties: + prefix: + description: IPv4 or IPv6 prefix. Active routes in the FIB that exactly match this prefix or that are longer matches of this prefix are provided with resilient-hash programming. + items: + properties: + hashBucketsPerPath: + default: 1 + description: The number of times each next-hop is repeated in the fill pattern if there are max-paths ECMP next-hops. + maximum: 32 + minimum: 1 + type: integer + maxECMP: + default: 1 + description: The maximum number of ECMP next-hops per route associated with the resilient-hash prefix. + maximum: 64 + minimum: 1 + type: integer + prefix: + description: IPv4 or IPv6 prefix. Active routes in the FIB that exactly match this prefix or that are longer matches of this prefix are provided with resilient-hash programming. + type: string + required: + - hashBucketsPerPath + - maxECMP + - prefix + type: object + type: array + type: object + nodeSelector: + description: Node selectors for deployment constraints. If Nodes are selected, the Router will only be deployed on the Nodes selected, if left blank it will be deployed on all Nodes for which there are IRB or RoutedInterfaces referencing this Router. + items: + type: string + type: array + routeLeaking: + description: Route leaking controlled by routing policies in and out of the DefaultRouter. + properties: + exportPolicy: + description: Reference to a Policy resource to use when evaluating route exports from the DefaultRouter. + type: string + importPolicy: + description: Reference to a Policy resource to use when evaluating route imports into the DefaultRouter. + type: string + type: object + routerID: + description: Router ID. + type: string + tunnelIndexPool: + default: tunnel-index-pool + description: Reference to tunnel index allocation pool. + type: string + type: + default: EVPNVXLAN + description: Select the type of Router. Simple doesn't include any overlay control plane or dataplane properties (EVPN/VXLAN). EVPNVXLAN includes the properties needed to provision this Router over an IP Fabric. + enum: + - SIMPLE + - EVPNVXLAN + type: string + vni: + description: VNI for the Router; leave blank for auto-allocation from VNI pool. + maximum: 16777215 + minimum: 1 + type: integer + vniPool: + default: vni-pool + description: Reference to VNI pool for auto-allocation. + type: string + type: object + required: + - name + - spec + type: object + type: array + vlans: + description: List of VLANs. [emits=VLAN] + items: + properties: + name: + description: The name of the VLAN. + maxLength: 253 + minLength: 1 + pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$ + type: string + spec: + description: Specification of the Vlan + properties: + bridgeDomain: + description: Reference to a BridgeDomain or SimpleBridgeDomain. + type: string + description: + description: The description of the VLAN. + type: string + egress: + description: Manages actions on traffic at Egress. + properties: + filters: + description: List of Filter references to use at egress. + items: + type: string + type: array + qosPolicy: + description: List of QoS Egress policy references to use at egress. + items: + type: string + type: array + type: object + ingress: + description: Manages actions on traffic at Ingress. + properties: + filters: + description: List of Filter references to use at ingress. + items: + type: string + type: array + qosPolicy: + description: List of QoS Ingress policy references to use at ingress. + items: + type: string + type: array + type: object + interfaceSelector: + description: Interfaces to use for attachment to this VLAN based on the label selector. Selects Interfaces based on their associated labels. + items: + type: string + type: array + l2MTU: + description: L2 MTU specifies the maximum sized Ethernet frame that can be transmitted on the subinterface. If a frame exceeds this size it is discarded. If the l2-mtu of the subinterface exceeds the port-mtu of the associated interface, the subinterface will remain operationally down. + maximum: 9500 + minimum: 1450 + type: integer + macDuplicationDetectionAction: + description: If Mac Duplication Detection is enabled on the associated Bridge Domain, this property will override the MDD action set in the BridgeDomain. + enum: + - Blackhole + - OperDown + - StopLearning + - UseBridgeDomainAction + type: string + splitHorizonGroup: + description: Name of the Split Horizon Group to be used for this VLAN. All subinterfaces within this VLAN will be members of this Split Horizon Group. + type: string + uplink: + description: The Uplink between your access breakout switch and your leaf switch. + properties: + egress: + description: Manages actions on traffic at Egress of the Local endpoint of the Uplink. + properties: + filters: + description: List of Filter references to use at egress. + items: + type: string + type: array + qosPolicy: + description: List of QoS Egress policy references to use at egress. + items: + type: string + type: array + type: object + ingress: + description: Manages actions on traffic at Ingress of the Local endpoint of the Uplink. + properties: + filters: + description: List of Filter references to use at ingress. + items: + type: string + type: array + qosPolicy: + description: List of QoS Ingress policy references to use at ingress. + items: + type: string + type: array + type: object + uplinkSelector: + description: Selects TopoLinks which connect a leaf switch to a breakout switch. This is the uplink between your access breakout switch and your leaf switch. There can only be a single TopoLink between the access breakout switch and the leaf switch, if more than one TopoLink is present between two devices the transaction will fail. + items: + type: string + type: array + uplinkVLANID: + default: pool + description: The VLAN ID to be utilized to isolate traffic from the VLAN on the access breakout switch to the leaf switch on the selected uplink TopoLink. + type: string + uplinkVLANPool: + description: A VLAN from this pool will be utilized to isolate traffic from the VLAN on the access breakout switch to the leaf switch on the selected uplink TopoLink. + type: string + type: object + vlanID: + default: pool + description: Single value between 1-4094 support, ranges supported in the format x-y,x-y, or the special keyword null, any, untagged or pool for auto allocation. + type: string + vlanPool: + description: Reference to a VLAN pool to use for allocations. [default="vlan-pool"] + type: string + required: + - bridgeDomain + - interfaceSelector + type: object + required: + - name + - spec + type: object + type: array + type: object + status: + properties: + health: + description: Indicates the health score of the VNET. + type: integer + healthScoreReason: + description: Indicates the reason for the health score. + type: string + lastChange: + description: The time when the state of the resource last changed. + type: string + nodes: + description: List of Nodes on which the VNET is configured. + items: + type: string + type: array + numBGPPeers: + description: Total number of configured BGP Peers. + type: integer + numBGPPeersOperDown: + description: Total Number of BGP Peer operationally down. + type: integer + numIRBInterfaces: + description: Total number of irb-interfaces configured by the VNET. + format: int32 + type: integer + numIRBInterfacesOperDown: + description: Total number of irb-interfaces configured by the VNET which are oper-down. + format: int32 + type: integer + numNodes: + description: Total number of Nodes on which the VNET is configured. + type: integer + numOSPFInterfaces: + description: Total number of configured OSPF Interfaces. + type: integer + numOSPFInterfacesOperDown: + description: Total Number of OSPF Interface operationally down. + type: integer + numRoutedInterfaces: + description: Total number of routed-interfaces configured by the VNET. + format: int32 + type: integer + numRoutedInterfacesOperDown: + description: Total number of routed-interfaces configured by the VNET which are oper-down. + format: int32 + type: integer + numSubInterfaces: + description: Total number of sub-interfaces configured by the VNET. + format: int32 + type: integer + numSubInterfacesOperDown: + description: Total number of sub-interfaces configured by the VNET which are oper-down. + format: int32 + type: integer + operationalState: + description: Operational state of the VNET. + type: string + type: object + type: object +served: true +storage: true +subresources: + status: {} diff --git a/static/resources/25.12.1/virtualnetworks.services.eda.nokia.com/v1alpha1.yaml b/static/resources/25.12.1/virtualnetworks.services.eda.nokia.com/v1alpha1.yaml new file mode 100644 index 0000000..535e885 --- /dev/null +++ b/static/resources/25.12.1/virtualnetworks.services.eda.nokia.com/v1alpha1.yaml @@ -0,0 +1,2221 @@ +additionalPrinterColumns: + - jsonPath: .status.operationalState + name: OperationalState + type: string + - jsonPath: .status.lastChange + name: LastChange + type: string +deprecated: true +deprecationWarning: This version is deprecated and will no longer be supported in the next version. +name: v1alpha1 +schema: + openAPIV3Schema: + description: VirtualNetwork is the Schema for the virtualnetworks API + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + description: VirtualNetworkSpec defines the desired state of VirtualNetwork + properties: + bridgeDomains: + description: List of Subnets. [emits=BridgeDomain] + items: + properties: + name: + description: The name of the BridgeDomain. + type: string + spec: + description: Specification of the BridgeDomain + properties: + description: + description: The description of the BridgeDomain. + type: string + evi: + description: EVI to use for this BridgeDomain, can be optionally left blank to have it automatically allocated using the EVI Pool. + maximum: 65535 + minimum: 1 + type: integer + eviPool: + default: evi-pool + description: Reference to an EVI pool to use for allocations if EVI is left blank. + type: string + exportTarget: + description: Export route target in 'target:N:N' format, if not specified, the default value taken as "target:1:". + pattern: ^target.*$ + type: string + importTarget: + description: Import route target in 'target:N:N' format, if not specified, the default value taken as "target:1:". + pattern: ^target.*$ + type: string + l2proxyARPND: + description: Enables / Disabled Proxy ARP / Proxy ND. + properties: + dynamicLearning: + properties: + ageTime: + description: Aging timer value for the proxy entries in seconds. If not set, this indicates that the entries are never flushed. + maximum: 86400 + minimum: 60 + type: integer + enabled: + default: false + description: Enables or disables Dynamic Learning. + type: boolean + sendRefresh: + description: The interval determines the frequency at which the system generates three ARP Requests or Neighbor Solicitations with the intent to refresh the proxy entry. The refresh is sent within the age-time window. + maximum: 86400 + minimum: 120 + type: integer + type: object + ipDuplication: + properties: + enabled: + default: false + description: Enables or disables IP Duplication. + type: boolean + holdDownTime: + default: 9 + description: Time to wait in minutes from the moment an IP is declared duplicate to the time the IP is removed from the proxy ARP/ND table. + maximum: 60 + minimum: 2 + type: integer + monitoringWindow: + default: 3 + description: Monitoring window for detecting duplication on a given IP address in the proxy ARP/ND table. + maximum: 15 + minimum: 1 + type: integer + numMoves: + default: 5 + description: Number of moves in the proxy ARP/ND table that an IP is allowed within the monitoring-window. + maximum: 10 + minimum: 3 + type: integer + type: object + proxyARP: + default: false + description: Enables proxy ARP. + type: boolean + proxyND: + default: false + description: Enables proxy ND. + type: boolean + tableSize: + default: 250 + description: Maximum number of entries allowed in the proxy table of the bridge domain. + maximum: 8192 + minimum: 1 + type: integer + type: object + macAging: + default: 300 + description: Configurable aging time for dynamically learned mac addresses. + format: int32 + maximum: 86400 + minimum: 60 + type: integer + macDuplicationDetection: + description: Enable or disable MAC duplication detection and resolution mechanisms. + properties: + action: + default: StopLearning + description: Action to take on the subinterface upon detecting at least one mac addresses as duplicate on the subinterface. + enum: + - Blackhole + - OperDown + - StopLearning + type: string + enabled: + default: false + description: Enables or disables Mac Duplication Detection. + type: boolean + holdDownTime: + default: 9 + description: Time to wait in minutes from the moment a mac is declared duplicate to the mac is flushed from the bridge table. + maximum: 60 + minimum: 2 + type: integer + monitoringWindow: + default: 3 + description: Monitoring window in minutes for detecting duplication on a given mac address. + maximum: 15 + minimum: 1 + type: integer + numMoves: + default: 5 + description: Number of moves a mac is allowed within the monitoring-window, before it is declared duplicate. + minimum: 3 + type: integer + type: object + macLimit: + description: Sets the maximum number of MAC entries accepted in the bridge table. + format: int32 + type: integer + tunnelIndexPool: + default: tunnel-index-pool + description: Reference to a tunnel index pool to use for allocations. + type: string + type: + default: EVPNVXLAN + description: Select the type of BridgeDomain. Simple doesn't include any overlay control plane or dataplane properties (EVPN/VXLAN). EVPNVXLAN includes the properties needed to provision this BridgeDomain over an IP Fabric. + enum: + - SIMPLE + - EVPNVXLAN + type: string + vni: + description: VNI to use for this BridgeDomain, can be optionally left blank to have it allocated using the VNI Pool. + maximum: 16777215 + minimum: 1 + type: integer + vniPool: + default: vni-pool + description: Reference to a VNI pool to use for allocations if VNI is left blank. + type: string + type: object + required: + - name + - spec + type: object + type: array + bridgeInterfaces: + description: List of BridgeInterfaces. [emits=BridgeInterface] + items: + properties: + name: + description: The name of the BridgeInterface. + type: string + spec: + description: Specification of the BridgeInterface + properties: + bridgeDomain: + description: Reference to a BridgeDomain in which to attach the BridgeInterface. + type: string + description: + description: The description of the BridgeInterface. + type: string + egress: + description: Manages actions on traffic at Egress. + properties: + filters: + description: List of Filter references to use at egress. + items: + type: string + type: array + qosPolicy: + description: List of QoS Egress policy references to use at egress. + items: + type: string + type: array + type: object + ingress: + description: Manages actions on traffic at Ingress. + properties: + filters: + description: List of Filter references to use at ingress. + items: + type: string + type: array + qosPolicy: + description: List of QoS Ingress policy references to use at ingress. + items: + type: string + type: array + type: object + interface: + description: Reference to an Interface resource to attach this BridgeInterface. + type: string + l2MTU: + description: L2 MTU specifies the maximum sized Ethernet frame that can be transmitted on the subinterface. If a frame exceeds this size it is discarded. If the l2-mtu of the subinterface exceeds the port-mtu of the associated interface, the subinterface will remain operationally down. + maximum: 9500 + minimum: 1450 + type: integer + macDuplicationDetectionAction: + description: Override for Mac Duplication Detection action if enabled in the associated BridgeDomain. + enum: + - Blackhole + - OperDown + - StopLearning + - UseBridgeDomainAction + type: string + splitHorizonGroup: + description: Split Horizon Group to be used for this BridgeInterface. The subinterface within this BridgeInterface will be a member of this Split Horizon Group. + type: string + uplink: + description: The Uplink between your access breakout switch and your leaf switch. + properties: + egress: + description: Manages actions on traffic at Egress of the Local endpoint of the Uplink. + properties: + filters: + description: List of Filter references to use at egress. + items: + type: string + type: array + qosPolicy: + description: List of QoS Egress policy references to use at egress. + items: + type: string + type: array + type: object + ingress: + description: Manages actions on traffic at Ingress of the Local endpoint of the Uplink. + properties: + filters: + description: List of Filter references to use at ingress. + items: + type: string + type: array + qosPolicy: + description: List of QoS Ingress policy references to use at ingress. + items: + type: string + type: array + type: object + uplinkSelector: + description: Selects TopoLinks which connect a leaf switch to a breakout switch. This is the uplink between your access breakout switch and your leaf switch. There can only be a single TopoLink between the access breakout switch and the leaf switch, if more than one TopoLink is present between two devices the transaction will fail. + items: + type: string + type: array + uplinkVLANID: + default: pool + description: The VLAN ID to be utilized to isolate traffic from the VLAN on the access breakout switch to the leaf switch on the selected uplink TopoLink. + type: string + uplinkVLANPool: + description: A VLAN from this pool will be utilized to isolate traffic from the VLAN on the access breakout switch to the leaf switch on the selected uplink TopoLink. + type: string + type: object + vlanID: + description: Single value between 1-4094 support, ranges supported in the format x-y,x-y, or the special keyword null, any, untagged or pool for auto allocation. + type: string + required: + - bridgeDomain + - interface + - vlanID + type: object + required: + - name + - spec + type: object + type: array + irbInterfaces: + description: List of IRBInterfaces. [emits=IRBInterface] + items: + properties: + name: + description: The name of the IrbInterface. + type: string + spec: + description: Specification of the IrbInterface + properties: + anycastGatewayMAC: + description: The gateway MAC to use on the anycast address, if left empty the node will automatically assign one. + type: string + arpTimeout: + default: 14400 + description: Duration of time that dynamic ARP entries remain in the ARP cache before they expire. + format: int32 + type: integer + bfd: + description: Enable BFD on the IRBInterface. + properties: + desiredMinTransmitInt: + default: 1000000 + description: The minimum interval in microseconds between transmission of BFD control packets. + maximum: 100000000 + minimum: 10000 + type: integer + detectionMultiplier: + default: 3 + description: The number of packets that must be missed to declare this session as down. + maximum: 20 + minimum: 3 + type: integer + enabled: + default: false + description: Enables Biforward Detection. + type: boolean + minEchoReceiveInterval: + default: 0 + description: The minimum interval between echo packets the local node can receive. + maximum: 100000000 + minimum: 0 + type: integer + requiredMinReceive: + default: 1000000 + description: The minimum interval in microseconds between received BFD control packets that this system should support. + maximum: 100000000 + minimum: 10000 + type: integer + ttl: + description: Sets custom IP TTL or Hop Limit for multi-hop BFD sessions packets. Not applicable to single-hop BFD sessions. + maximum: 255 + minimum: 2 + type: integer + required: + - enabled + type: object + bridgeDomain: + description: Reference to a BridgeDomain. + type: string + description: + description: The description of the IRBInterface. + type: string + egress: + description: Manages actions on traffic at Egress. + properties: + filters: + description: List of Filter references to use at egress. + items: + type: string + type: array + qosPolicy: + description: List of QoS Egress policy references to use at egress. + items: + type: string + type: array + type: object + evpnRouteAdvertisementType: + description: Controls the type of ARP/ND entries to advertise. + properties: + arpDynamic: + default: false + description: Advertise dynamic ARP entries. + type: boolean + arpStatic: + default: false + description: Advertise static ARP entries. + type: boolean + ndDynamic: + default: false + description: Advertise dynamic ND entries. + type: boolean + ndStatic: + default: false + description: Advertise static ND entries. + type: boolean + type: object + hostRoutePopulate: + description: Configures host route population based on ARP entries. + properties: + dynamic: + default: true + description: Create host routes out of dynamic ARP entries. + type: boolean + evpn: + default: false + description: Create host routes out of EVPN learned ARP entries. + type: boolean + static: + default: true + description: Create host routes out of static ARP entries. + type: boolean + type: object + ingress: + description: Manages actions on traffic at Ingress. + properties: + filters: + description: List of Filter references to use at ingress. + items: + type: string + type: array + qosPolicy: + description: List of QoS Ingress policy references to use at ingress. + items: + type: string + type: array + type: object + ipAddresses: + items: + properties: + ipv4Address: + description: IPv4 address in IP/mask form, e.g., 192.168.0.1/24. + properties: + ipPrefix: + description: Address and mask to use + type: string + primary: + description: Indicates which address to use as primary for broadcast + type: boolean + required: + - ipPrefix + type: object + ipv6Address: + description: IPv6 address in IP/mask form, e.g., fc00::1/120. + properties: + ipPrefix: + description: Address and mask to use + type: string + primary: + description: Indicates which address to use as primary for broadcast + type: boolean + required: + - ipPrefix + type: object + node: + description: Reference to a TopoNode resource, if not specified the IP address will be assigned to all nodes on which the IRB is deployed. If specified the IP address will be assigned to the specified node. + type: string + type: object + type: array + ipMTU: + default: 1500 + description: IP MTU for the IRBInterface [default=1500]. + maximum: 9486 + minimum: 1280 + type: integer + ipv4Parameters: + properties: + directedBroadcast: + description: Allow receiving and forwarding of directed broadcast packets. Enabled when set to true. + type: boolean + type: object + ipv6RouterAdvertisement: + properties: + currentHopLimit: + default: 64 + description: The current hop limit to advertise in the router advertisement messages. + format: int32 + maximum: 255 + minimum: 0 + type: integer + enabled: + default: false + description: Enable or disable IPv6 router advertisements. + type: boolean + ipMTU: + description: The IP MTU to advertise in the router advertisement messages. + format: int32 + maximum: 9486 + minimum: 1280 + type: integer + managedConfigurationFlag: + default: false + description: Enable DHCPv6 for address configuration (M-bit). + type: boolean + maxAdvertisementInterval: + default: 600 + description: Maximum time between router advertisements (in seconds). + format: int32 + maximum: 1800 + minimum: 4 + type: integer + minAdvertisementInterval: + default: 200 + description: Minimum time between router advertisements (in seconds). + format: int32 + maximum: 1350 + minimum: 3 + type: integer + otherConfigurationFlag: + default: false + description: Enable DHCPv6 for other configuration (O-bit). + type: boolean + prefixes: + description: IPv6 prefixes to advertise in router advertisements. + items: + description: IPv6Prefix defines the configuration for an IPv6 prefix advertisement. + properties: + autonomousFlag: + default: true + description: When this is set in the prefix information option hosts can use the prefix for stateless address autoconfiguration (SLAAC). + type: boolean + onLinkFlag: + default: true + description: When this is set in the prefix information option hosts can use the prefix for on-link determination. + type: boolean + preferredLifetime: + default: 604800 + description: The length of time in seconds (relative to the time the packet is sent) that addresses generated from the prefix via stateless address autoconfiguration remain preferred. + format: int32 + maximum: 4294967295 + minimum: 0 + type: integer + prefix: + description: An IPv6 global unicast address prefix. + type: string + validLifetime: + default: 2592000 + description: The length of time in seconds (relative to the time the packet is sent) that the prefix is valid for the purpose of on-link determination. + format: int32 + maximum: 4294967295 + minimum: 0 + type: integer + required: + - prefix + type: object + type: array + reachableTime: + default: 0 + description: Time in milliseconds for Neighbor Unreachability Detection. + format: int32 + maximum: 3600000 + minimum: 0 + type: integer + retransmitTime: + default: 0 + description: Time in milliseconds between retransmitted NS messages. + format: int32 + maximum: 1800000 + minimum: 0 + type: integer + routerLifetime: + default: 1800 + description: Router lifetime in seconds for default gateway. + format: int32 + maximum: 9000 + minimum: 0 + type: integer + required: + - currentHopLimit + - enabled + - managedConfigurationFlag + - maxAdvertisementInterval + - minAdvertisementInterval + - otherConfigurationFlag + - retransmitTime + - routerLifetime + type: object + l3ProxyARPND: + description: L3 Proxy ARP and ND configuration. + properties: + proxyARP: + default: false + description: Select whether Proxy ARP should be enabled. + type: boolean + proxyND: + default: false + description: Select whether Proxy ND should be enabled. + type: boolean + type: object + learnUnsolicited: + default: NONE + description: Enable or disable learning of unsolicited ARPs. + enum: + - BOTH + - GLOBAL + - LINK-LOCAL + - NONE + type: string + router: + description: Reference to a Router. + type: string + unnumbered: + description: Enables the use of unnumbered interfaces on the IRBInterface. If IPv6 is specified, no IP address are configured on the sub-interface and only the link local address will be used. If any IP addresses are specified for either IPv4 or IPv6 that will take precedence and IPs will be assigned to the interfaces.(Deprecated, Use IPv6RouterAdvertisement) + enum: + - IPV6 + type: string + virtualIPDiscovery: + description: Configuration for Virtual IP discovery on the interface. + items: + properties: + address: + description: Virtual IP Address. + type: string + allowedMAC: + description: List of allowed MAC addresses for a discovered virtual IP address. + items: + type: string + type: array + bridgeInterfaceToProbe: + description: List of BridgeInterfaces on the associated MAC-VRF to which the ARP probes are sent. If left blank, the probes are sent on all BridgeInterfaces associated with the BridgeDomain. + items: + type: string + type: array + probeInterval: + default: 0 + description: ARP probe interval in seconds. + maximum: 86400 + minimum: 0 + type: integer + vlanToProbe: + description: List of VLANs on the associated BridgeDomain to which the ARP probes are sent. If left blank, the probes are sent on all VLANs associated with the BridgeDomain. + items: + type: string + type: array + required: + - address + type: object + type: array + required: + - bridgeDomain + - router + type: object + required: + - name + - spec + type: object + type: array + protocols: + description: Protocols to configure. + properties: + bgp: + description: BGP Protocol. + properties: + bgpGroups: + description: List of BgpGroups. [emits=BGPGroup] + items: + properties: + name: + description: The name of the BgpGroup. + type: string + spec: + description: Specification of the BgpGroup + properties: + asPathOptions: + description: AS Path Options + properties: + allowOwnAS: + default: 0 + description: The maximum number of times the global AS number or a local AS number of the BGP instance can appear in any received AS_PATH before it is considered a loop and considered invalid. + maximum: 255 + minimum: 0 + type: integer + removePrivateAS: + description: Options for removing private AS numbers (2-byte and 4-byte) from the advertised AS path towards all peers. + properties: + ignorePeerAS: + default: false + description: If set to true then do not delete or replace a private AS number that is the same as the peer AS number. + type: boolean + leadingOnly: + default: false + description: If set to true then only delete or replace private AS numbers that appear before the first occurrence of a non-private ASN in the sequence of most recent ASNs in the AS path. + type: boolean + removePrivateASMode: + default: DISABLED + description: The method by which private AS numbers are removed from the advertised AS_PATH attribute. + enum: + - DISABLED + - REPLACE + - DELETE + type: string + required: + - ignorePeerAS + - leadingOnly + - removePrivateASMode + type: object + required: + - allowOwnAS + type: object + bfd: + description: Enable or disable Bi-forward Forwarding Detection (BFD) with fast failover. + type: boolean + client: + description: When set to true, all configured and dynamic BGP peers are considered RR clients. + type: boolean + clusterID: + description: Enables route reflect client and sets the cluster ID. + type: string + description: + description: Sets the description on the BGP group. + type: string + exportPolicy: + description: Reference to a Policy CR that will be used to filter routes advertised to peers. + items: + type: string + type: array + grStaleRouteTime: + description: Enables Graceful Restart on the peer and sets the stale route time. + maximum: 3600 + minimum: 1 + type: integer + importPolicy: + description: Reference to a Policy CR that will be used to filter routes received from peers. + items: + type: string + type: array + ipv4Unicast: + description: Parameters relating to the IPv4 unicast AFI/SAFI. + properties: + advertiseIPV6NextHops: + description: Enables advertisement of IPv4 Unicast routes with IPv6 next-hops to peers. + type: boolean + enabled: + description: Enables the IPv4 unicast AFISAFI. + type: boolean + maxReceivedRoutes: + description: Maximum number of IPv4 Unicast routes that will be accepted from the neighbor, counting routes accepted and rejected by import policies. + maximum: 4294967295 + minimum: 1 + type: integer + receiveIPV6NextHops: + description: Enables the advertisement of the RFC 5549 capability to receive IPv4 routes with IPv6 next-hops. + type: boolean + type: object + ipv6Unicast: + description: Parameters relating to the IPv6 unicast AFI/SAFI. + properties: + enabled: + description: Enables the IPv6 unicast AFISAFI + type: boolean + maxReceivedRoutes: + description: Maximum number of IPv6 Unicast routes that will be accepted from the neighbor, counting routes accepted and rejected by import policies. + maximum: 4294967295 + minimum: 1 + type: integer + type: object + keychain: + description: Reference to a Keychain resource that will be used for authentication with the BGP peer. + type: string + localAS: + description: The local autonomous system number advertised to peers. + properties: + autonomousSystem: + description: Local Autonomous System number. + maximum: 4294967295 + minimum: 1 + type: integer + prependGlobalAS: + description: When set to true, the global ASN value is prepended to the AS path in outbound routes towards each BGP peer. + type: boolean + prependLocalAS: + description: When set to true, the local AS value is prepended to the AS path of inbound routes from each EBGP peer. + type: boolean + required: + - autonomousSystem + type: object + localPreference: + description: Local Preference attribute added to received routes from the BGP peers, also sets local preference for generated routes. + maximum: 4294967295 + minimum: 0 + type: integer + multiHopMaxHop: + description: Enable multihop for eBGP peers and sets the maximum number of hops allowed. + maximum: 255 + minimum: 1 + type: integer + nextHopSelf: + description: When set to true, the next-hop in all IPv4-unicast, IPv6-unicast and EVPN BGP routes advertised to the peer is set to the local-address. + type: boolean + peerAS: + description: The autonomous system number expected from peers. + properties: + autonomousSystem: + description: Local Autonomous System number. + maximum: 4294967295 + minimum: 1 + type: integer + required: + - autonomousSystem + type: object + sendCommunityLarge: + description: When false, all large (12 byte) BGP communities from all outbound routes advertised to the peer are stripped. + type: boolean + sendCommunityStandard: + description: When false, all standard (4 byte) communities from all outbound routes advertised to the peer are stripped. + type: boolean + sendDefaultRoute: + description: Options for controlling the generation of default routes towards BGP peers. + properties: + addressFamily: + description: Enables the sending of a synthetically generated default IPv4 or IPV6 route to each peer. + items: + enum: + - IPV4-UNICAST + - IPV6-UNICAST + type: string + type: array + exportPolicy: + description: Reference to a Policy that should be applied to the advertised default routes, in order to set their attributes to non-default values. + type: string + required: + - addressFamily + type: object + timers: + description: Timer configurations + properties: + connectRetry: + description: The time interval in seconds between successive attempts to establish a session with a peer. + maximum: 65535 + minimum: 1 + type: integer + holdTime: + description: The hold-time interval in seconds that the router proposes to the peer in its OPEN message. + maximum: 65535 + minimum: 0 + type: integer + keepAlive: + description: The interval in seconds between successive keepalive messages sent to the peer. + maximum: 21845 + minimum: 0 + type: integer + minimumAdvertisementInterval: + description: The value assigned to the MinRouteAdvertisementIntervalTimer of RFC 4271, for both EBGP and IBGP sessions. + maximum: 255 + minimum: 1 + type: integer + type: object + type: object + required: + - name + - spec + type: object + type: array + bgpPeers: + description: List of BgpPeers [emits=BGPPeer] + items: + properties: + name: + description: The name of the BgpPeer. + type: string + spec: + description: Specification of the BgpPeer + properties: + asPathOptions: + description: AS Path Options + properties: + allowOwnAS: + default: 0 + description: The maximum number of times the global AS number or a local AS number of the BGP instance can appear in any received AS_PATH before it is considered a loop and considered invalid. + maximum: 255 + minimum: 0 + type: integer + removePrivateAS: + description: Options for removing private AS numbers (2-byte and 4-byte) from the advertised AS path towards all peers. + properties: + ignorePeerAS: + default: false + description: If set to true then do not delete or replace a private AS number that is the same as the peer AS number. + type: boolean + leadingOnly: + default: false + description: If set to true then only delete or replace private AS numbers that appear before the first occurrence of a non-private ASN in the sequence of most recent ASNs in the AS path. + type: boolean + removePrivateASMode: + default: DISABLED + description: The method by which private AS numbers are removed from the advertised AS_PATH attribute. + enum: + - DISABLED + - REPLACE + - DELETE + type: string + required: + - ignorePeerAS + - leadingOnly + - removePrivateASMode + type: object + required: + - allowOwnAS + type: object + bfd: + description: Enable or disable Bi-forward Forwarding Detection (BFD) with fast failover. + type: boolean + client: + description: When set to true, all configured and dynamic BGP peers are considered RR clients. + type: boolean + clusterID: + description: Enables route reflect client and sets the cluster ID. + type: string + description: + description: Sets the description on the BGP peer + type: string + dynamicNeighbor: + default: false + description: When set to true the Interface is added to the dynamic-neighbor list for dynamic peering. + type: boolean + dynamicNeighborAllowedPeerAS: + description: The autonomous system numbers allowed from peers if dynamic peering is enabled. + items: + type: integer + type: array + exportPolicy: + description: Reference to a Policy CR that will be used to filter routes advertised to peers. + items: + type: string + type: array + grStaleRouteTime: + description: Enables Graceful Restart on the peer and sets the stale route time. + maximum: 3600 + minimum: 1 + type: integer + group: + description: Reference to a BGPGroup. When present this BGP peer will be added to the BGP group + type: string + importPolicy: + description: Reference to a Policy CR that will be used to filter routes received from peers. + items: + type: string + type: array + interface: + description: Reference to a RoutedInterface or IrbInterface resource whose IP will be used as a source IP for the BGP session. + type: string + interfaceKind: + description: InterfaceReference type defines whether the provided Reference is a RoutedInterface or IrbInterface. + enum: + - ROUTEDINTERFACE + - IRBINTERFACE + type: string + ipv4Unicast: + description: Parameters relating to the IPv4 unicast AFI/SAFI. + properties: + advertiseIPV6NextHops: + description: Enables advertisement of IPv4 Unicast routes with IPv6 next-hops to peers. + type: boolean + enabled: + description: Enables the IPv4 unicast AFISAFI. + type: boolean + maxReceivedRoutes: + description: Maximum number of IPv4 Unicast routes that will be accepted from the neighbor, counting routes accepted and rejected by import policies. + maximum: 4294967295 + minimum: 1 + type: integer + receiveIPV6NextHops: + description: Enables the advertisement of the RFC 5549 capability to receive IPv4 routes with IPv6 next-hops. + type: boolean + type: object + ipv6Unicast: + description: Parameters relating to the IPv6 unicast AFI/SAFI. + properties: + enabled: + description: Enables the IPv6 unicast AFISAFI + type: boolean + maxReceivedRoutes: + description: Maximum number of IPv6 Unicast routes that will be accepted from the neighbor, counting routes accepted and rejected by import policies. + maximum: 4294967295 + minimum: 1 + type: integer + type: object + keychain: + description: Reference to a Keychain resource that will be used for authentication with the BGP peer. + type: string + localAS: + description: The local autonomous system number advertised to peers. + properties: + autonomousSystem: + description: Local Autonomous System number. + maximum: 4294967295 + minimum: 1 + type: integer + prependGlobalAS: + description: When set to true, the global ASN value is prepended to the AS path in outbound routes towards each BGP peer. + type: boolean + prependLocalAS: + description: When set to true, the local AS value is prepended to the AS path of inbound routes from each EBGP peer. + type: boolean + required: + - autonomousSystem + type: object + localPreference: + description: Local Preference attribute added to received routes from the BGP peers, also sets local preference for generated routes. + maximum: 4294967295 + minimum: 0 + type: integer + multiHopMaxHop: + description: Enable multihop for eBGP peers and sets the maximum number of hops allowed. + maximum: 255 + minimum: 1 + type: integer + nextHopSelf: + description: When set to true, the next-hop in all IPv4-unicast, IPv6-unicast and EVPN BGP routes advertised to the peer is set to the local-address. + type: boolean + node: + description: Node on which to configure the BGP peer. This node must be one of the nodes on which the IRBInterface is configured. When left blank or if the node is not part of the IRBInterface, the peer will not be deployed. Ignored for RoutedInterfaces. + type: string + peerAS: + description: The autonomous system number expected from peers. + properties: + autonomousSystem: + description: Local Autonomous System number. + maximum: 4294967295 + minimum: 1 + type: integer + required: + - autonomousSystem + type: object + peerIP: + description: Peer IP to which the peering session will be established. + type: string + sendCommunityLarge: + description: When false, all large (12 byte) BGP communities from all outbound routes advertised to the peer are stripped. + type: boolean + sendCommunityStandard: + description: When false, all standard (4 byte) communities from all outbound routes advertised to the peer are stripped. + type: boolean + sendDefaultRoute: + description: Options for controlling the generation of default routes towards BGP peers. + properties: + addressFamily: + description: Enables the sending of a synthetically generated default IPv4 or IPV6 route to each peer. + items: + enum: + - IPV4-UNICAST + - IPV6-UNICAST + type: string + type: array + exportPolicy: + description: Reference to a Policy that should be applied to the advertised default routes, in order to set their attributes to non-default values. + type: string + required: + - addressFamily + type: object + timers: + description: Timer configurations + properties: + connectRetry: + description: The time interval in seconds between successive attempts to establish a session with a peer. + maximum: 65535 + minimum: 1 + type: integer + holdTime: + description: The hold-time interval in seconds that the router proposes to the peer in its OPEN message. + maximum: 65535 + minimum: 0 + type: integer + keepAlive: + description: The interval in seconds between successive keepalive messages sent to the peer. + maximum: 21845 + minimum: 0 + type: integer + minimumAdvertisementInterval: + description: The value assigned to the MinRouteAdvertisementIntervalTimer of RFC 4271, for both EBGP and IBGP sessions. + maximum: 255 + minimum: 1 + type: integer + type: object + required: + - group + - interface + - interfaceKind + type: object + required: + - name + - spec + type: object + type: array + type: object + routingPolicies: + description: Routing Policies. + properties: + policies: + description: List of Policies. [emits=Policy] + items: + properties: + name: + description: Name of the Policy. + type: string + spec: + description: A policy + properties: + configuredName: + description: The name of the policy to configure on the device. + type: string + defaultAction: + description: The default action to apply if no other actions are defined. + properties: + bgp: + description: Actions related to the BGP protocol. + properties: + asPathPrepend: + description: AS number to prepend to the AS Path attributes. + format: int32 + maximum: 4294967295 + minimum: 1 + type: integer + asPathRemove: + description: Clear the AS path to make it empty. + type: boolean + asPathReplace: + description: Replace the existing AS path with a new AS_SEQUENCE containing the listed AS numbers. + items: + format: int32 + type: integer + type: array + communitySet: + description: Modify BGP communities associated with the route using hybrid Community Sets. + properties: + add: + description: List of community sets to add to the route. + items: + type: string + maxItems: 1 + type: array + remove: + description: List of community sets to remove from the route. + items: + type: string + maxItems: 1 + type: array + replace: + description: List of community sets to replace the existing communities with. Cannot be combined with Add or Remove. + items: + type: string + maxItems: 1 + type: array + type: object + localPreference: + description: Set a new LOCAL_PREF value for matching BGP routes. + format: int32 + maximum: 4294967295 + minimum: 0 + type: integer + med: + description: Set a new MED value. + properties: + numericalValue: + description: Fixed numerical value to set or add/subtract. + maximum: 4294967295 + minimum: 0 + type: integer + operation: + description: The operation to perform on the MED value. + enum: + - Set + - Add + - Subtract + type: string + valueType: + description: Use a fixed value or an IGP metric to adjust the MED. + enum: + - Fixed + - IGP + type: string + type: object + setOrigin: + description: Set a new ORIGIN attribute for matching BGP routes. + enum: + - egp + - igp + - incomplete + type: string + type: object + policyResult: + description: Final disposition for the route. + enum: + - accept + - reject + - NextPolicy + - NextStatement + type: string + tags: + description: Manipulate internal route tags associated with the route. + properties: + tagSet: + description: Add tags to the route from the referenced Tag Set. + type: string + type: object + type: object + statement: + description: List of policy statements. + items: + properties: + action: + description: Actions for routes that match the policy statement. + properties: + bgp: + description: Actions related to the BGP protocol. + properties: + asPathPrepend: + description: AS number to prepend to the AS Path attributes. + format: int32 + maximum: 4294967295 + minimum: 1 + type: integer + asPathRemove: + description: Clear the AS path to make it empty. + type: boolean + asPathReplace: + description: Replace the existing AS path with a new AS_SEQUENCE containing the listed AS numbers. + items: + format: int32 + type: integer + type: array + communitySet: + description: Modify BGP communities associated with the route using hybrid Community Sets. + properties: + add: + description: List of community sets to add to the route. + items: + type: string + maxItems: 1 + type: array + remove: + description: List of community sets to remove from the route. + items: + type: string + maxItems: 1 + type: array + replace: + description: List of community sets to replace the existing communities with. Cannot be combined with Add or Remove. + items: + type: string + maxItems: 1 + type: array + type: object + localPreference: + description: Set a new LOCAL_PREF value for matching BGP routes. + format: int32 + maximum: 4294967295 + minimum: 0 + type: integer + med: + description: Set a new MED value. + properties: + numericalValue: + description: Fixed numerical value to set or add/subtract. + maximum: 4294967295 + minimum: 0 + type: integer + operation: + description: The operation to perform on the MED value. + enum: + - Set + - Add + - Subtract + type: string + valueType: + description: Use a fixed value or an IGP metric to adjust the MED. + enum: + - Fixed + - IGP + type: string + type: object + setOrigin: + description: Set a new ORIGIN attribute for matching BGP routes. + enum: + - egp + - igp + - incomplete + type: string + type: object + policyResult: + description: Final disposition for the route. + enum: + - accept + - reject + - NextPolicy + - NextStatement + type: string + tags: + description: Manipulate internal route tags associated with the route. + properties: + tagSet: + description: Add tags to the route from the referenced Tag Set. + type: string + type: object + type: object + match: + description: Match conditions of the policy statement. + properties: + bgp: + description: Configuration for BGP-specific policy match criteria. + properties: + asPathMatch: + description: AS Path match criteria. + properties: + asPathExpression: + description: A singular regular expression string to match against AS_PATH objects. Mutually exclusive with the ASPathSet reference. + type: string + asPathSet: + description: Reference to an ASPathSet resource. Mutually exclusive with the ASPathExpression. + type: string + matchSetOptions: + description: The matching criteria that applies to the members in the referenced set. + enum: + - Any + - All + - Invert + type: string + type: object + communitySet: + description: Match conditions for BGP communities. + type: string + evpnRouteType: + description: Match conditions for EVPN route types. + items: + type: integer + type: array + type: object + family: + description: Address families that the route belongs to. + items: + type: string + type: array + prefixSet: + description: Reference to a PrefixSet resource. + type: string + protocol: + description: The route protocol type to match. + enum: + - AGGREGATE + - ARP_ND + - BGP + - BGP_EVPN + - BGP_EVPN_IFF + - BGP_EVPN_IFL_HOST + - DHCP + - GRIBI + - HOST + - ISIS + - LOCAL + - LINUX + - NDK1 + - NDK2 + - OSPFV2 + - OSPFV3 + - STATIC + type: string + tags: + description: Match based on the internal route tags associated with the route. + properties: + tagSet: + description: Reference to a TagSet resource. + type: string + type: object + type: object + name: + description: Name of the policy statement. + type: string + required: + - name + type: object + type: array + type: object + required: + - name + type: object + type: array + prefixSets: + description: List of PrefixSet [emits=PrefixSet] + items: + properties: + name: + description: Name of the PrefixSet. + type: string + spec: + description: A PrefixSets + properties: + configuredName: + description: The name of the prefixset to configure on the device. + type: string + prefix: + description: List of IPv4 or IPv6 prefixes in CIDR notation. + items: + properties: + endRange: + description: The end range when using a range to match prefixes. + maximum: 128 + minimum: 0 + type: integer + exact: + description: Indicates if it is an exact match. Ignores the StartRange and EndRange if this param is set. + type: boolean + prefix: + description: The IPv4 or IPv6 prefix in CIDR notation with mask. + type: string + startRange: + description: If specifying a range, this is the start of the range. + maximum: 128 + minimum: 0 + type: integer + required: + - prefix + type: object + type: array + required: + - prefix + type: object + required: + - name + type: object + type: array + type: object + staticRoutes: + description: List of Static Routes within this VirtualNetwork. [emits=StaticRoute] + items: + properties: + name: + description: Name of the StaticRoute. + type: string + spec: + description: A StaticRoutes + properties: + nexthopGroup: + description: Group of nexthops for the list of prefixes. + properties: + bfd: + description: Enables BFD to the next-hops in the group. Local and Remote discriminator parameters have been deprecated at this level. Use Nexthop to set these parameters. + properties: + enabled: + default: false + description: Defines whether BFD should be enabled towards the nexthops. + type: boolean + localAddress: + description: Defines the local address to use when establishing the BFD session with the nexthop. + type: string + localDiscriminator: + description: Defines the local discriminator. + type: integer + remoteDiscriminator: + description: Defines the remote discriminator. + type: integer + type: object + blackhole: + default: false + description: If set to true all traffic destined to the prefixes will be blackholed. If enabled, next-hops are ignored and this takes precedence. + type: boolean + blackholeSendICMP: + description: When enabled, the router will generate ICMP Unreachable messages for packets destined to the blackhole route. + type: boolean + nexthops: + description: Ordered list of nexthops. + items: + properties: + bfd: + description: Enables BFD to the next-hops in the group. This overrides the configuration at the group. + properties: + enabled: + default: false + description: Defines whether BFD should be enabled towards the nexthops. + type: boolean + localAddress: + description: Defines the local address to use when establishing the BFD session with the nexthop. + type: string + localDiscriminator: + description: Defines the local discriminator. + type: integer + remoteDiscriminator: + description: Defines the remote discriminator. + type: integer + type: object + ipPrefix: + description: Address to use. + type: string + resolve: + default: false + description: If set to true the next-hops can be destinations which are resolved in the route table. This overrides the configuration at the group. + type: boolean + required: + - ipPrefix + type: object + type: array + resolve: + default: false + description: If set to true the next-hops can be destinations which are resolved in the route table. + type: boolean + type: object + nodes: + description: List of nodes on which to configure the static routes. An AND operation is executed against the nodes in this list and the nodes on which the Router is configured to determine the Nodes on which to configure the static routes. + items: + type: string + type: array + preference: + description: Defines the route preference. + type: integer + prefixes: + description: List of destination prefixes and mask to use for the static routes. + items: + type: string + type: array + router: + description: Reference to a Router on which to configure the static routes. If no Nodes are provided then the static routes will be provisioned on all Nodes on which the Router is provisioned. + type: string + required: + - nexthopGroup + - prefixes + - router + type: object + required: + - name + type: object + type: array + type: object + routedInterfaces: + description: List of RoutedInterface. [emits=RoutedInterface] + items: + properties: + name: + description: The name of the RoutedInterface. + type: string + spec: + description: Specification of the RoutedInterface + properties: + arpTimeout: + default: 14400 + description: Duration of time that dynamic ARP entries remain in the ARP cache before they expire. + format: int32 + type: integer + bfd: + description: Enables BFD on the RoutedInterface. + properties: + desiredMinTransmitInt: + default: 1000000 + description: The minimum interval in microseconds between transmission of BFD control packets. + maximum: 100000000 + minimum: 10000 + type: integer + detectionMultiplier: + default: 3 + description: The number of packets that must be missed to declare this session as down. + maximum: 20 + minimum: 3 + type: integer + enabled: + default: false + description: Enables Biforward Detection. + type: boolean + minEchoReceiveInterval: + default: 0 + description: The minimum interval between echo packets the local node can receive. + maximum: 100000000 + minimum: 0 + type: integer + requiredMinReceive: + default: 1000000 + description: The minimum interval in microseconds between received BFD control packets that this system should support. + maximum: 100000000 + minimum: 10000 + type: integer + ttl: + description: Sets custom IP TTL or Hop Limit for multi-hop BFD sessions packets. Not applicable to single-hop BFD sessions. + maximum: 255 + minimum: 2 + type: integer + required: + - enabled + type: object + description: + description: The description of the RoutedInterface. + type: string + egress: + description: Manages actions on traffic at Egress. + properties: + filters: + description: List of Filter references to use at egress. + items: + type: string + type: array + qosPolicy: + description: List of QoS Egress policy references to use at egress. + items: + type: string + type: array + type: object + ingress: + description: Manages actions on traffic at Ingress. + properties: + filters: + description: List of Filter references to use at ingress. + items: + type: string + type: array + qosPolicy: + description: List of QoS Ingress policy references to use at ingress. + items: + type: string + type: array + type: object + interface: + description: Reference to an Interface to use for attachment. + type: string + ipMTU: + default: 1500 + description: IP MTU for the RoutedInterface. + maximum: 9486 + minimum: 1280 + type: integer + ipv4Addresses: + description: List of IPv4 addresses in IP/mask form, e.g., 192.168.0.1/24. + items: + properties: + ipPrefix: + description: Address and mask to use + type: string + primary: + description: Indicates which address to use as primary for broadcast + type: boolean + required: + - ipPrefix + type: object + type: array + ipv4Parameters: + description: Manages IPv4-specific additional parameters that are not applicable to IPv6. + properties: + directedBroadcast: + description: Allow receiving and forwarding of directed broadcast packets. Enabled when set to true. + type: boolean + type: object + ipv6Addresses: + description: List of IPv6 addresses in IP/mask form, e.g., fc00::1/120. + items: + properties: + ipPrefix: + description: Address and mask to use + type: string + primary: + description: Indicates which address to use as primary for broadcast + type: boolean + required: + - ipPrefix + type: object + type: array + ipv6RouterAdvertisement: + properties: + currentHopLimit: + default: 64 + description: The current hop limit to advertise in the router advertisement messages. + format: int32 + maximum: 255 + minimum: 0 + type: integer + enabled: + default: false + description: Enable or disable IPv6 router advertisements. + type: boolean + ipMTU: + description: The IP MTU to advertise in the router advertisement messages. + format: int32 + maximum: 9486 + minimum: 1280 + type: integer + managedConfigurationFlag: + default: false + description: Enable DHCPv6 for address configuration (M-bit). + type: boolean + maxAdvertisementInterval: + default: 600 + description: Maximum time between router advertisements (in seconds). + format: int32 + maximum: 1800 + minimum: 4 + type: integer + minAdvertisementInterval: + default: 200 + description: Minimum time between router advertisements (in seconds). + format: int32 + maximum: 1350 + minimum: 3 + type: integer + otherConfigurationFlag: + default: false + description: Enable DHCPv6 for other configuration (O-bit). + type: boolean + prefixes: + description: IPv6 prefixes to advertise in router advertisements. + items: + description: IPv6Prefix defines the configuration for an IPv6 prefix advertisement. + properties: + autonomousFlag: + default: true + description: When this is set in the prefix information option hosts can use the prefix for stateless address autoconfiguration (SLAAC). + type: boolean + onLinkFlag: + default: true + description: When this is set in the prefix information option hosts can use the prefix for on-link determination. + type: boolean + preferredLifetime: + default: 604800 + description: The length of time in seconds (relative to the time the packet is sent) that addresses generated from the prefix via stateless address autoconfiguration remain preferred. + format: int32 + maximum: 4294967295 + minimum: 0 + type: integer + prefix: + description: An IPv6 global unicast address prefix. + type: string + validLifetime: + default: 2592000 + description: The length of time in seconds (relative to the time the packet is sent) that the prefix is valid for the purpose of on-link determination. + format: int32 + maximum: 4294967295 + minimum: 0 + type: integer + required: + - prefix + type: object + type: array + reachableTime: + default: 0 + description: Time in milliseconds for Neighbor Unreachability Detection. + format: int32 + maximum: 3600000 + minimum: 0 + type: integer + retransmitTime: + default: 0 + description: Time in milliseconds between retransmitted NS messages. + format: int32 + maximum: 1800000 + minimum: 0 + type: integer + routerLifetime: + default: 1800 + description: Router lifetime in seconds for default gateway. + format: int32 + maximum: 9000 + minimum: 0 + type: integer + required: + - currentHopLimit + - enabled + - managedConfigurationFlag + - maxAdvertisementInterval + - minAdvertisementInterval + - otherConfigurationFlag + - retransmitTime + - routerLifetime + type: object + l3ProxyARPND: + description: L3 Proxy ARP and ND configuration. + properties: + proxyARP: + default: false + description: Select whether Proxy ARP should be enabled. + type: boolean + proxyND: + default: false + description: Select whether Proxy ND should be enabled. + type: boolean + type: object + learnUnsolicited: + default: NONE + description: Enable or disable learning of unsolicited ARPs. + enum: + - BOTH + - GLOBAL + - LINK-LOCAL + - NONE + type: string + router: + description: Reference to a Router. + type: string + unnumbered: + description: Enables the use of unnumbered interfaces on the IRBInterface. If IPv6 is specified, no IP address are configured on the sub-interface and only the link local address will be used. If any IP addresses are specified for either IPv4 or IPv6 that will take precedence and IPs will be assigned to the interfaces. (Deprecated, Use IPv6RouterAdvertisement) + enum: + - IPV6 + type: string + vlanID: + default: pool + description: Single value between 1-4094 support, ranges supported in the format x-y,x-y, or the special keyword null, any, untagged or pool for auto allocation. + type: string + vlanPool: + default: vlan-pool + description: Reference to a VLAN pool to use for allocations. + type: string + required: + - interface + - router + type: object + required: + - name + - spec + type: object + type: array + routers: + description: List of Routers.[emits=Router] + items: + properties: + name: + description: The name of the Router. + type: string + spec: + description: Specification of the Router + properties: + bgp: + description: BGP configuration. + properties: + autonomousSystem: + description: Autonomous System number for BGP. + maximum: 4294967295 + minimum: 1 + type: integer + ebgpPreference: + default: 170 + description: Preference to be set for eBGP [default=170]. + maximum: 255 + minimum: 1 + type: integer + enabled: + default: false + description: Enable or disable BGP. + type: boolean + ibgpPreference: + default: 170 + description: Preference to be set for iBGP [default=170]. + maximum: 255 + minimum: 1 + type: integer + ipAliasNexthops: + description: IP aliasing configuration. + items: + properties: + esi: + default: auto + description: 10 byte Ethernet Segment Identifier, if not set a type 0 ESI is generated. + type: string + nextHop: + description: The nexthop IP address to track for the IP alias. + type: string + preferredActiveNode: + description: When not set the ES is used in an all active mode. This references the TopoNode object and when set, the DF algorithm is configured to type preference and the selected Node is set with a higher preference value. All other Nodes have a lower value configured. + type: string + required: + - nextHop + type: object + type: array + ipv4Unicast: + description: Parameters relating to the IPv4 unicast AFI/SAFI. + properties: + advertiseIPV6NextHops: + description: Enables advertisement of IPv4 Unicast routes with IPv6 next-hops to peers. + type: boolean + enabled: + default: false + description: Enables the IPv4 unicast AFISAFI. + type: boolean + multipath: + description: Enable multipath. + properties: + allowMultipleAS: + default: true + description: When set to true, BGP is allowed to build a multipath set using BGP routes with different neighbor AS (most recent AS in the AS_PATH), When set to false, BGP is only allowed to use non-best paths for ECMP if they meet the multipath criteria and they have the same neighbor AS as the best path. + type: boolean + maxAllowedPaths: + description: The maximum number of BGP ECMP next-hops for BGP routes with an NLRI belonging to the address family of this configuration context. + maximum: 256 + minimum: 1 + type: integer + required: + - allowMultipleAS + - maxAllowedPaths + type: object + receiveIPV6NextHops: + description: Enables the advertisement of the RFC 5549 capability to receive IPv4 routes with IPv6 next-hops. + type: boolean + required: + - enabled + type: object + ipv6Unicast: + description: Parameters relating to the IPv6 unicast AFI/SAFI. + properties: + enabled: + default: false + description: Enables the IPv6 unicast AFISAFI + type: boolean + multipath: + description: Enable multipath + properties: + allowMultipleAS: + default: true + description: When set to true, BGP is allowed to build a multipath set using BGP routes with different neighbor AS (most recent AS in the AS_PATH), When set to false, BGP is only allowed to use non-best paths for ECMP if they meet the multipath criteria and they have the same neighbor AS as the best path. + type: boolean + maxAllowedPaths: + description: The maximum number of BGP ECMP next-hops for BGP routes with an NLRI belonging to the address family of this configuration context. + maximum: 256 + minimum: 1 + type: integer + required: + - allowMultipleAS + - maxAllowedPaths + type: object + required: + - enabled + type: object + keychain: + description: Keychain to be used for authentication + type: string + minWaitToAdvertise: + default: 0 + description: Minimum wait time before advertising routes post BGP restart. + maximum: 3600 + minimum: 0 + type: integer + rapidWithdrawl: + default: true + description: Enable rapid withdrawal in BGP. + type: boolean + waitForFIBInstall: + default: false + description: Wait for FIB installation before advertising routes. + type: boolean + type: object + description: + description: The description of the Router. + type: string + evi: + description: EVI for the Router; leave blank for auto-allocation from EVI pool. + maximum: 65535 + minimum: 1 + type: integer + eviPool: + default: evi-pool + description: Reference to EVI pool for auto-allocation. + type: string + exportTarget: + description: Export route target in 'target:N:N' format, if not specified, the default value taken as "target:1:". + pattern: ^target.*$ + type: string + importTarget: + description: Import route target in 'target:N:N' format, if not specified, the default value taken as "target:1:". + pattern: ^target.*$ + type: string + ipLoadBalancing: + description: IPv4 or IPv6 prefix. Active routes in the FIB that exactly match this prefix or that are longer matches of this prefix are provided with resilient-hash programming. + properties: + prefix: + description: IPv4 or IPv6 prefix. Active routes in the FIB that exactly match this prefix or that are longer matches of this prefix are provided with resilient-hash programming. + items: + properties: + hashBucketsPerPath: + default: 1 + description: The number of times each next-hop is repeated in the fill pattern if there are max-paths ECMP next-hops. + maximum: 32 + minimum: 1 + type: integer + maxECMP: + default: 1 + description: The maximum number of ECMP next-hops per route associated with the resilient-hash prefix. + maximum: 64 + minimum: 1 + type: integer + prefix: + description: IPv4 or IPv6 prefix. Active routes in the FIB that exactly match this prefix or that are longer matches of this prefix are provided with resilient-hash programming. + type: string + required: + - hashBucketsPerPath + - maxECMP + - prefix + type: object + type: array + type: object + nodeSelector: + description: Node selectors for deployment constraints. If Nodes are selected, the Router will only be deployed on the Nodes selected, if left blank it will be deployed on all Nodes for which there are IRB or RoutedInterfaces referencing this Router. + items: + type: string + type: array + routeLeaking: + description: Route leaking controlled by routing policies in and out of the DefaultRouter. + properties: + exportPolicy: + description: Reference to a Policy resource to use when evaluating route exports from the DefaultRouter. + type: string + importPolicy: + description: Reference to a Policy resource to use when evaluating route imports into the DefaultRouter. + type: string + type: object + routerID: + description: Router ID. + type: string + tunnelIndexPool: + default: tunnel-index-pool + description: Reference to tunnel index allocation pool. + type: string + type: + default: EVPNVXLAN + description: Select the type of Router. Simple doesn't include any overlay control plane or dataplane properties (EVPN/VXLAN). EVPNVXLAN includes the properties needed to provision this Router over an IP Fabric. + enum: + - SIMPLE + - EVPNVXLAN + type: string + vni: + description: VNI for the Router; leave blank for auto-allocation from VNI pool. + maximum: 16777215 + minimum: 1 + type: integer + vniPool: + default: vni-pool + description: Reference to VNI pool for auto-allocation. + type: string + type: object + required: + - name + - spec + type: object + type: array + vlans: + description: List of VLANs. [emits=VLAN] + items: + properties: + name: + description: The name of the VLAN. + type: string + spec: + description: Specification of the Vlan + properties: + bridgeDomain: + description: Reference to a BridgeDomain or SimpleBridgeDomain. + type: string + description: + description: The description of the VLAN. + type: string + egress: + description: Manages actions on traffic at Egress. + properties: + filters: + description: List of Filter references to use at egress. + items: + type: string + type: array + qosPolicy: + description: List of QoS Egress policy references to use at egress. + items: + type: string + type: array + type: object + ingress: + description: Manages actions on traffic at Ingress. + properties: + filters: + description: List of Filter references to use at ingress. + items: + type: string + type: array + qosPolicy: + description: List of QoS Ingress policy references to use at ingress. + items: + type: string + type: array + type: object + interfaceSelector: + description: Interfaces to use for attachment to this VLAN based on the label selector. Selects Interfaces based on their associated labels. + items: + type: string + type: array + l2MTU: + description: L2 MTU specifies the maximum sized Ethernet frame that can be transmitted on the subinterface. If a frame exceeds this size it is discarded. If the l2-mtu of the subinterface exceeds the port-mtu of the associated interface, the subinterface will remain operationally down. + maximum: 9500 + minimum: 1450 + type: integer + macDuplicationDetectionAction: + description: If Mac Duplication Detection is enabled on the associated Bridge Domain, this property will override the MDD action set in the BridgeDomain. + enum: + - Blackhole + - OperDown + - StopLearning + - UseBridgeDomainAction + type: string + splitHorizonGroup: + description: Name of the Split Horizon Group to be used for this VLAN. All subinterfaces within this VLAN will be members of this Split Horizon Group. + type: string + uplink: + description: The Uplink between your access breakout switch and your leaf switch. + properties: + egress: + description: Manages actions on traffic at Egress of the Local endpoint of the Uplink. + properties: + filters: + description: List of Filter references to use at egress. + items: + type: string + type: array + qosPolicy: + description: List of QoS Egress policy references to use at egress. + items: + type: string + type: array + type: object + ingress: + description: Manages actions on traffic at Ingress of the Local endpoint of the Uplink. + properties: + filters: + description: List of Filter references to use at ingress. + items: + type: string + type: array + qosPolicy: + description: List of QoS Ingress policy references to use at ingress. + items: + type: string + type: array + type: object + uplinkSelector: + description: Selects TopoLinks which connect a leaf switch to a breakout switch. This is the uplink between your access breakout switch and your leaf switch. There can only be a single TopoLink between the access breakout switch and the leaf switch, if more than one TopoLink is present between two devices the transaction will fail. + items: + type: string + type: array + uplinkVLANID: + default: pool + description: The VLAN ID to be utilized to isolate traffic from the VLAN on the access breakout switch to the leaf switch on the selected uplink TopoLink. + type: string + uplinkVLANPool: + description: A VLAN from this pool will be utilized to isolate traffic from the VLAN on the access breakout switch to the leaf switch on the selected uplink TopoLink. + type: string + type: object + vlanID: + default: pool + description: Single value between 1-4094 support, ranges supported in the format x-y,x-y, or the special keyword null, any, untagged or pool for auto allocation. + type: string + vlanPool: + description: Reference to a VLAN pool to use for allocations. [default="vlan-pool"] + type: string + required: + - bridgeDomain + - interfaceSelector + type: object + required: + - name + - spec + type: object + type: array + type: object + status: + properties: + health: + description: Indicates the health score of the VNET. + type: integer + healthScoreReason: + description: Indicates the reason for the health score. + type: string + lastChange: + description: The time when the state of the resource last changed. + type: string + nodes: + description: List of Nodes on which the Router is deployed. + items: + type: string + type: array + numBGPPeers: + description: Total number of configured BGP Peers. + type: integer + numBGPPeersOperDown: + description: Total Number of BGP Peer operationally down. + type: integer + numIRBInterfaces: + description: Total number of irb-interfaces configured by the VNET. + format: int32 + type: integer + numIRBInterfacesOperDown: + description: Total number of irb-interfaces configured by the VNET which are oper-down. + format: int32 + type: integer + numNodes: + description: Total number of Nodes on which the VNET is configured. + type: integer + numRoutedInterfaces: + description: Total number of routed-interfaces configured by the VNET. + format: int32 + type: integer + numRoutedInterfacesOperDown: + description: Total number of routed-interfaces configured by the VNET which are oper-down. + format: int32 + type: integer + numSubInterfaces: + description: Total number of sub-interfaces configured by the VNET. + format: int32 + type: integer + numSubInterfacesOperDown: + description: Total number of sub-interfaces configured by the VNET which are oper-down. + format: int32 + type: integer + operationalState: + description: Operational state of the VNET. + type: string + type: object + type: object +served: true +storage: false +subresources: + status: {} diff --git a/static/resources/25.12.1/virtualnetworkstates.services.eda.nokia.com/v1.yaml b/static/resources/25.12.1/virtualnetworkstates.services.eda.nokia.com/v1.yaml new file mode 100644 index 0000000..fdf0ae3 --- /dev/null +++ b/static/resources/25.12.1/virtualnetworkstates.services.eda.nokia.com/v1.yaml @@ -0,0 +1,94 @@ +name: v1 +schema: + openAPIV3Schema: + description: VirtualNetworkState is the Schema for the virtualnetworkstates API + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + description: VirtualNetworkStateSpec defines the desired state of VirtualNetworkState + properties: + bgpPeers: + description: List of BGPPeers created by the VNET + items: + type: string + type: array + bridgeDomains: + description: List of BridgeDomains created by the VNET + items: + type: string + type: array + bridgeInterfaces: + description: List of Bridgeinterfaces created by the VNET + items: + type: string + type: array + irbInterfaces: + description: List of IRBInterfaces created by the VNET + items: + type: string + type: array + ospfInstances: + description: List of OSPFInstances created by the VNET + items: + properties: + areas: + items: + properties: + id: + type: string + interfaces: + items: + type: string + type: array + required: + - id + type: object + type: array + name: + type: string + version: + type: string + required: + - name + type: object + type: array + routedInterfaces: + description: List of RoutedInterface created by the VNET + items: + type: string + type: array + routers: + description: List of Routers created by the VNET + items: + type: string + type: array + vlans: + description: List of VLANs created by the VNET + items: + type: string + type: array + type: object + status: + description: VirtualNetworkStateStatus defines the observed state of VirtualNetworkState + type: object + type: object +served: true +storage: true +subresources: + status: {} diff --git a/static/resources/virtualnetworkstates.services.eda.nokia.com/v1alpha1.yaml b/static/resources/25.12.1/virtualnetworkstates.services.eda.nokia.com/v1alpha1.yaml similarity index 100% rename from static/resources/virtualnetworkstates.services.eda.nokia.com/v1alpha1.yaml rename to static/resources/25.12.1/virtualnetworkstates.services.eda.nokia.com/v1alpha1.yaml diff --git a/static/resources/25.12.1/vlans.services.eda.nokia.com/v1.yaml b/static/resources/25.12.1/vlans.services.eda.nokia.com/v1.yaml new file mode 100644 index 0000000..60114e3 --- /dev/null +++ b/static/resources/25.12.1/vlans.services.eda.nokia.com/v1.yaml @@ -0,0 +1,223 @@ +additionalPrinterColumns: + - jsonPath: .spec.bridgeDomain + name: BridgeDomain + type: string + - jsonPath: .status.numSubInterfacesOperDown + name: OperDown SubIf + type: string + - jsonPath: .status.numSubInterfaces + name: Total SubIf + type: string + - jsonPath: .status.operationalState + name: OperationalState + type: string + - jsonPath: .status.lastChange + name: LastChange + type: string + - jsonPath: .metadata.creationTimestamp + name: Age + type: date +name: v1 +schema: + openAPIV3Schema: + description: VLAN is the Schema for the vlans API + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + description: The VLAN enables the configuration and management of VLAN and their association with BridgeDomains. This resource allows for specifying the associated BridgeDomain, selecting interfaces based on label selectors, and configuring VLAN IDs with options for auto-allocation from a VLAN pool. It also supports advanced configurations such as ingress and egress traffic management, and overrides for MAC Duplication Detection actions when enabled in the associated BridgeDomain. + properties: + bridgeDomain: + description: Reference to a BridgeDomain or SimpleBridgeDomain. + type: string + description: + description: The description of the VLAN. + type: string + egress: + description: Manages actions on traffic at Egress. + properties: + filters: + description: List of Filter references to use at egress. + items: + type: string + type: array + qosPolicy: + description: List of QoS Egress policy references to use at egress. + items: + type: string + type: array + type: object + ingress: + description: Manages actions on traffic at Ingress. + properties: + filters: + description: List of Filter references to use at ingress. + items: + type: string + type: array + qosPolicy: + description: List of QoS Ingress policy references to use at ingress. + items: + type: string + type: array + type: object + interfaceSelector: + description: Interfaces to use for attachment to this VLAN based on the label selector. Selects Interfaces based on their associated labels. + items: + type: string + type: array + l2MTU: + description: L2 MTU specifies the maximum sized Ethernet frame that can be transmitted on the subinterface. If a frame exceeds this size it is discarded. If the l2-mtu of the subinterface exceeds the port-mtu of the associated interface, the subinterface will remain operationally down. + maximum: 9500 + minimum: 1450 + type: integer + macDuplicationDetectionAction: + description: If Mac Duplication Detection is enabled on the associated Bridge Domain, this property will override the MDD action set in the BridgeDomain. + enum: + - Blackhole + - OperDown + - StopLearning + - UseBridgeDomainAction + type: string + splitHorizonGroup: + description: Name of the Split Horizon Group to be used for this VLAN. All subinterfaces within this VLAN will be members of this Split Horizon Group. + type: string + uplink: + description: The Uplink between your access breakout switch and your leaf switch. + properties: + egress: + description: Manages actions on traffic at Egress of the Local endpoint of the Uplink. + properties: + filters: + description: List of Filter references to use at egress. + items: + type: string + type: array + qosPolicy: + description: List of QoS Egress policy references to use at egress. + items: + type: string + type: array + type: object + ingress: + description: Manages actions on traffic at Ingress of the Local endpoint of the Uplink. + properties: + filters: + description: List of Filter references to use at ingress. + items: + type: string + type: array + qosPolicy: + description: List of QoS Ingress policy references to use at ingress. + items: + type: string + type: array + type: object + uplinkSelector: + description: Selects TopoLinks which connect a leaf switch to a breakout switch. This is the uplink between your access breakout switch and your leaf switch. There can only be a single TopoLink between the access breakout switch and the leaf switch, if more than one TopoLink is present between two devices the transaction will fail. + items: + type: string + type: array + uplinkVLANID: + default: pool + description: The VLAN ID to be utilized to isolate traffic from the VLAN on the access breakout switch to the leaf switch on the selected uplink TopoLink. + type: string + uplinkVLANPool: + description: A VLAN from this pool will be utilized to isolate traffic from the VLAN on the access breakout switch to the leaf switch on the selected uplink TopoLink. + type: string + type: object + vlanID: + default: pool + description: Single value between 1-4094 support, ranges supported in the format x-y,x-y, or the special keyword null, any, untagged or pool for auto allocation. + type: string + vlanPool: + description: Reference to a VLAN pool to use for allocations. [default="vlan-pool"] + type: string + required: + - bridgeDomain + - interfaceSelector + type: object + status: + properties: + health: + description: Indicates the health score of the VNET. + type: integer + healthScoreReason: + description: Indicates the reason for the health score. + type: string + lastChange: + description: The time when the state of the resource last changed. + type: string + numSubInterfaces: + description: Total number of sub-interfaces configured by the VNET. + format: int32 + type: integer + numSubInterfacesOperDown: + description: Total number of sub-interfaces configured by the VNET which are oper-down. + format: int32 + type: integer + operationalState: + description: Operational state of the VNET. + type: string + subInterfaces: + description: List of members in this Interface. + items: + properties: + enabled: + description: The administrative status of the SubInterface. + type: boolean + interface: + description: Normalized interface name. + type: string + interfaceResource: + description: Eda interface resource. + type: string + lastChange: + description: Indicates when this SubInterface last changed state. + type: string + node: + description: Reference to Node object. + type: string + nodeInterface: + description: Node specific interface name. + type: string + operatingSystem: + description: Operating System of the Node. + type: string + operationalState: + description: Indicates the current operational state of the SubInterface. + type: string + subInterfaceIndex: + description: Index allocated to the subinterface on the associated interface for the given VLAN. + type: integer + vlanID: + description: vlan assigned to this subinterface. + type: string + required: + - interface + - interfaceResource + - node + - nodeInterface + type: object + type: array + type: object + type: object +served: true +storage: true +subresources: + status: {} diff --git a/static/resources/25.12.1/vlans.services.eda.nokia.com/v1alpha1.yaml b/static/resources/25.12.1/vlans.services.eda.nokia.com/v1alpha1.yaml new file mode 100644 index 0000000..c1a8447 --- /dev/null +++ b/static/resources/25.12.1/vlans.services.eda.nokia.com/v1alpha1.yaml @@ -0,0 +1,225 @@ +additionalPrinterColumns: + - jsonPath: .spec.bridgeDomain + name: BridgeDomain + type: string + - jsonPath: .status.numSubInterfacesOperDown + name: OperDown SubIf + type: string + - jsonPath: .status.numSubInterfaces + name: Total SubIf + type: string + - jsonPath: .status.operationalState + name: OperationalState + type: string + - jsonPath: .status.lastChange + name: LastChange + type: string + - jsonPath: .metadata.creationTimestamp + name: Age + type: date +deprecated: true +deprecationWarning: This version is deprecated and will no longer be supported in the next version. +name: v1alpha1 +schema: + openAPIV3Schema: + description: VLAN is the Schema for the vlans API + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + description: The VLAN enables the configuration and management of VLAN and their association with BridgeDomains. This resource allows for specifying the associated BridgeDomain, selecting interfaces based on label selectors, and configuring VLAN IDs with options for auto-allocation from a VLAN pool. It also supports advanced configurations such as ingress and egress traffic management, and overrides for MAC Duplication Detection actions when enabled in the associated BridgeDomain. + properties: + bridgeDomain: + description: Reference to a BridgeDomain or SimpleBridgeDomain. + type: string + description: + description: The description of the VLAN. + type: string + egress: + description: Manages actions on traffic at Egress. + properties: + filters: + description: List of Filter references to use at egress. + items: + type: string + type: array + qosPolicy: + description: List of QoS Egress policy references to use at egress. + items: + type: string + type: array + type: object + ingress: + description: Manages actions on traffic at Ingress. + properties: + filters: + description: List of Filter references to use at ingress. + items: + type: string + type: array + qosPolicy: + description: List of QoS Ingress policy references to use at ingress. + items: + type: string + type: array + type: object + interfaceSelector: + description: Interfaces to use for attachment to this VLAN based on the label selector. Selects Interfaces based on their associated labels. + items: + type: string + type: array + l2MTU: + description: L2 MTU specifies the maximum sized Ethernet frame that can be transmitted on the subinterface. If a frame exceeds this size it is discarded. If the l2-mtu of the subinterface exceeds the port-mtu of the associated interface, the subinterface will remain operationally down. + maximum: 9500 + minimum: 1450 + type: integer + macDuplicationDetectionAction: + description: If Mac Duplication Detection is enabled on the associated Bridge Domain, this property will override the MDD action set in the BridgeDomain. + enum: + - Blackhole + - OperDown + - StopLearning + - UseBridgeDomainAction + type: string + splitHorizonGroup: + description: Name of the Split Horizon Group to be used for this VLAN. All subinterfaces within this VLAN will be members of this Split Horizon Group. + type: string + uplink: + description: The Uplink between your access breakout switch and your leaf switch. + properties: + egress: + description: Manages actions on traffic at Egress of the Local endpoint of the Uplink. + properties: + filters: + description: List of Filter references to use at egress. + items: + type: string + type: array + qosPolicy: + description: List of QoS Egress policy references to use at egress. + items: + type: string + type: array + type: object + ingress: + description: Manages actions on traffic at Ingress of the Local endpoint of the Uplink. + properties: + filters: + description: List of Filter references to use at ingress. + items: + type: string + type: array + qosPolicy: + description: List of QoS Ingress policy references to use at ingress. + items: + type: string + type: array + type: object + uplinkSelector: + description: Selects TopoLinks which connect a leaf switch to a breakout switch. This is the uplink between your access breakout switch and your leaf switch. There can only be a single TopoLink between the access breakout switch and the leaf switch, if more than one TopoLink is present between two devices the transaction will fail. + items: + type: string + type: array + uplinkVLANID: + default: pool + description: The VLAN ID to be utilized to isolate traffic from the VLAN on the access breakout switch to the leaf switch on the selected uplink TopoLink. + type: string + uplinkVLANPool: + description: A VLAN from this pool will be utilized to isolate traffic from the VLAN on the access breakout switch to the leaf switch on the selected uplink TopoLink. + type: string + type: object + vlanID: + default: pool + description: Single value between 1-4094 support, ranges supported in the format x-y,x-y, or the special keyword null, any, untagged or pool for auto allocation. + type: string + vlanPool: + description: Reference to a VLAN pool to use for allocations. [default="vlan-pool"] + type: string + required: + - bridgeDomain + - interfaceSelector + type: object + status: + properties: + health: + description: Indicates the health score of the VNET. + type: integer + healthScoreReason: + description: Indicates the reason for the health score. + type: string + lastChange: + description: The time when the state of the resource last changed. + type: string + numSubInterfaces: + description: Total number of sub-interfaces configured by the VNET. + format: int32 + type: integer + numSubInterfacesOperDown: + description: Total number of sub-interfaces configured by the VNET which are oper-down. + format: int32 + type: integer + operationalState: + description: Operational state of the VNET. + type: string + subInterfaces: + description: List of members in this Interface. + items: + properties: + enabled: + description: The administrative status of the SubInterface. + type: boolean + interface: + description: Normalized interface name. + type: string + interfaceResource: + description: Eda interface resource. + type: string + lastChange: + description: Indicates when this SubInterface last changed state. + type: string + node: + description: Reference to Node object. + type: string + nodeInterface: + description: Node specific interface name. + type: string + operatingSystem: + description: Operating System of the Node. + type: string + operationalState: + description: Indicates the current operational state of the SubInterface. + type: string + subInterfaceIndex: + description: Index allocated to the subinterface on the associated interface for the given VLAN. + type: integer + vlanID: + description: vlan assigned to this subinterface. + type: string + required: + - interface + - interfaceResource + - node + - nodeInterface + type: object + type: array + type: object + type: object +served: true +storage: false +subresources: + status: {} diff --git a/static/resources/25.12.1/vlanstates.services.eda.nokia.com/v1.yaml b/static/resources/25.12.1/vlanstates.services.eda.nokia.com/v1.yaml new file mode 100644 index 0000000..87410e4 --- /dev/null +++ b/static/resources/25.12.1/vlanstates.services.eda.nokia.com/v1.yaml @@ -0,0 +1,81 @@ +name: v1 +schema: + openAPIV3Schema: + description: VLANState is the Schema for the vlanstates API + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + description: VLANStateSpec defines the desired state of VLANState + properties: + bridgeDomain: + description: Node BridgeDomain name + type: string + bridgeDomainConfiguredName: + type: string + subInterfaces: + items: + properties: + interface: + description: Normalized interface name + type: string + interfaceResource: + description: Eda interface resource + type: string + node: + description: Reference to Node object + type: string + nodeInterface: + description: Node specific interface name + type: string + nodeSubInterface: + description: Node specific subinterface name + type: string + operatingSystem: + description: Operating System of the Node + type: string + subInterfaceIndex: + description: Index allocated to the subinterface on the associated interface for the given VLAN + type: integer + vlanID: + description: vlan assigned to this subinterface + type: string + required: + - interface + - interfaceResource + - node + - nodeInterface + type: object + type: array + vlanID: + description: Single value between 0-4094 support, ranges supported in the format x-y,x-y, or the special keyword any or untagged or pool for auto allocation + type: string + required: + - bridgeDomain + - bridgeDomainConfiguredName + - subInterfaces + - vlanID + type: object + status: + description: VLANStateStatus defines the observed state of VLANState + type: object + type: object +served: true +storage: true +subresources: + status: {} diff --git a/static/resources/vlanstates.services.eda.nokia.com/v1alpha1.yaml b/static/resources/25.12.1/vlanstates.services.eda.nokia.com/v1alpha1.yaml similarity index 100% rename from static/resources/vlanstates.services.eda.nokia.com/v1alpha1.yaml rename to static/resources/25.12.1/vlanstates.services.eda.nokia.com/v1alpha1.yaml diff --git a/static/resources/volumeoverlays.components.eda.nokia.com/v1.yaml b/static/resources/25.12.1/volumeoverlays.components.eda.nokia.com/v1.yaml similarity index 100% rename from static/resources/volumeoverlays.components.eda.nokia.com/v1.yaml rename to static/resources/25.12.1/volumeoverlays.components.eda.nokia.com/v1.yaml diff --git a/static/resources/waitforinputs.core.eda.nokia.com/v1.yaml b/static/resources/25.12.1/waitforinputs.core.eda.nokia.com/v1.yaml similarity index 100% rename from static/resources/waitforinputs.core.eda.nokia.com/v1.yaml rename to static/resources/25.12.1/waitforinputs.core.eda.nokia.com/v1.yaml diff --git a/static/resources/workflowdefinitions.core.eda.nokia.com/v1.yaml b/static/resources/25.12.1/workflowdefinitions.core.eda.nokia.com/v1.yaml similarity index 100% rename from static/resources/workflowdefinitions.core.eda.nokia.com/v1.yaml rename to static/resources/25.12.1/workflowdefinitions.core.eda.nokia.com/v1.yaml diff --git a/static/resources/workflows.core.eda.nokia.com/v1.yaml b/static/resources/25.12.1/workflows.core.eda.nokia.com/v1.yaml similarity index 100% rename from static/resources/workflows.core.eda.nokia.com/v1.yaml rename to static/resources/25.12.1/workflows.core.eda.nokia.com/v1.yaml diff --git a/static/resources/25.4.2/aggregateroutes.protocols.eda.nokia.com/v1alpha1.yaml b/static/resources/25.4.2/aggregateroutes.protocols.eda.nokia.com/v1alpha1.yaml new file mode 100644 index 0000000..c8cae42 --- /dev/null +++ b/static/resources/25.4.2/aggregateroutes.protocols.eda.nokia.com/v1alpha1.yaml @@ -0,0 +1,63 @@ +name: v1alpha1 +schema: + openAPIV3Schema: + description: AggregateRoute is the Schema for the aggregateroutes API + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + description: The AggregateRoute enables the configuration of aggregated routes on a specified Router. This resource allows for the definition of destination prefixes, the selection of a router, and optionally, specific nodes where the aggregate routes should be configured. Advanced options include the ability to generate ICMP unreachable messages for packets matching the aggregate route, and the ability to block the advertisement of all contributing routes in dynamic protocols like BGP. + properties: + aggregatorASN: + description: Specifies the aggregator's ASN. + format: int32 + type: integer + aggregatorIP: + description: Specifies the aggregator's IP address. + type: string + generateICMP: + description: When set to true the router generares ICMP unreachable messages for packets matching the aggregate route (and not a more specific route). + type: boolean + nodes: + description: List of nodes on which to configure the aggregate routes. An AND operation is executed against the nodes in this list and the nodes on which the Router is configured to determine the Nodes on which to configure the aggregate routes. + items: + type: string + type: array + prefixes: + description: List of destination prefixes for the aggregate routes. + items: + type: string + type: array + router: + description: Reference to a Router on which to configure the aggregate routes. If no Nodes are provided then the aggregate routes will be provisioned on all Nodes on which the Router is provisioned. + type: string + summaryOnly: + description: When set to true the router blocks the advertisement of all contributing routes of this aggregate route in dynamic protocols such as BGP. + type: boolean + required: + - prefixes + - router + type: object + status: + description: AggregateRouteStatus defines the observed state of AggregateRoute + type: object + type: object +served: true +storage: true +subresources: + status: {} diff --git a/static/resources/alarms.core.eda.nokia.com/v1.yaml b/static/resources/25.4.2/alarms.core.eda.nokia.com/v1.yaml similarity index 100% rename from static/resources/alarms.core.eda.nokia.com/v1.yaml rename to static/resources/25.4.2/alarms.core.eda.nokia.com/v1.yaml diff --git a/static/resources/25.4.2/artifacts.artifacts.eda.nokia.com/v1.yaml b/static/resources/25.4.2/artifacts.artifacts.eda.nokia.com/v1.yaml new file mode 100644 index 0000000..8f40090 --- /dev/null +++ b/static/resources/25.4.2/artifacts.artifacts.eda.nokia.com/v1.yaml @@ -0,0 +1,183 @@ +additionalPrinterColumns: + - jsonPath: .status.downloadStatus + name: Status + type: string +name: v1 +schema: + openAPIV3Schema: + description: Artifact is the Schema for the artifacts API + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + description: ArtifactSpec defines the desired state of Artifact + properties: + filePath: + description: |- + Provide the file path, including an optional file name + For Artifacts that are directories themselves a file name is not required + minLength: 1 + type: string + fromConfigMap: + description: The secret from which the file is to be hosted in the artifact server + properties: + key: + description: Key of the data field + minLength: 1 + type: string + name: + description: The name of the configMap + minLength: 1 + type: string + namespace: + description: The namespace of the configMap + type: string + required: + - key + - name + - namespace + type: object + fromSecret: + description: The secret from which the file is to be hosted in the artifact server + properties: + key: + description: Key of the data field + minLength: 1 + type: string + name: + description: The name of the secret + minLength: 1 + type: string + namespace: + description: The namespace of the secret + type: string + required: + - key + - name + - namespace + type: object + git: + description: A git hash can be used to pull down the file from git + properties: + filePath: + description: The file path within the git repository to pull down + type: string + gitHash: + description: Git hash of the file to pull down. + pattern: ^[0-9a-fA-F]+$ + type: string + repoUrl: + description: The remote URL of the git repository from which to pull down the file + format: uri + type: string + required: + - filePath + - gitHash + - repoUrl + type: object + oci: + description: The container and registry to pull down and host in the artifact server registry + properties: + digest: + description: Digest of the file blob which needs to be downloaded + pattern: ^sha256:[a-fA-F0-9]{64}$ + type: string + registry: + description: The remote registry from which to pull down the OCI artifact + minLength: 1 + type: string + repository: + description: The name of the repository to pull down into the artifact server + minLength: 1 + type: string + tag: + description: Tag of the image which need to be pulled + type: string + required: + - registry + - repository + type: object + remoteFileUrl: + description: the remote URL from which to download the file to host in the artifact server + properties: + fileUrl: + description: This is the remote URL from which to download the file to store in the artifact server. Supported protocols are HTTPS and SFTP, URL format should include the protocol. + type: string + md5Url: + description: This is the remote URL from which to download a text file containing the MD5 hash against which the artifact server will validate the artifact before hosting + type: string + required: + - fileUrl + type: object + repo: + description: |- + Provide the repo + Multiple artifacts can have same repo + minLength: 1 + type: string + x-kubernetes-validations: + - message: repo is immutable + rule: self == oldSelf + secret: + description: If provided the secret to use for authenticating + type: string + textFile: + properties: + content: + description: Content of the text file + type: string + required: + - content + type: object + trustBundle: + description: If provided the configmap contains the trust bundle for https upstream + type: string + required: + - filePath + - repo + type: object + status: + description: ArtifactStatus defines the observed state of Artifact + properties: + downloadStatus: + enum: + - InProgress + - Error + - Failed + - Available + type: string + externalUrl: + description: External (outside of cluster) URL where this Artifact is reachable + type: string + internalUrl: + description: Internal (in cluster) URL where this Artifact is reachable + type: string + lastExternalAddress: + type: string + observedGeneration: + format: int64 + type: integer + statusReason: + description: Human-readable message indicating details about the downloadStatus's Error|Failed state + type: string + type: object + type: object +served: true +storage: true +subresources: + status: {} diff --git a/static/resources/backends.aifabrics.eda.nokia.com/v1alpha1.yaml b/static/resources/25.4.2/backends.aifabrics.eda.nokia.com/v1alpha1.yaml similarity index 100% rename from static/resources/backends.aifabrics.eda.nokia.com/v1alpha1.yaml rename to static/resources/25.4.2/backends.aifabrics.eda.nokia.com/v1alpha1.yaml diff --git a/static/resources/25.4.2/backendstates.aifabrics.eda.nokia.com/v1alpha1.yaml b/static/resources/25.4.2/backendstates.aifabrics.eda.nokia.com/v1alpha1.yaml new file mode 100644 index 0000000..6a7b585 --- /dev/null +++ b/static/resources/25.4.2/backendstates.aifabrics.eda.nokia.com/v1alpha1.yaml @@ -0,0 +1,94 @@ +name: v1alpha1 +schema: + openAPIV3Schema: + description: BackendState is the Schema for the backendstates API + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + description: BackendStateSpec defines the desired state of BackendState + properties: + gpuIsolationGroups: + description: IsolationGroups in the Backend. + items: + properties: + interfaces: + description: List of interfaces mapped to the IsolationGroup. + items: + type: string + type: array + name: + description: The name of the IsolationGroup. + type: string + type: object + type: array + stripeConnector: + description: Stripe connector in the Backend. + properties: + name: + description: The name of the Stripe Connector. + type: string + stripeConnectorNodes: + description: List of stripe connector nodes in the Stripe. + items: + properties: + node: + description: Name of the TopoNode. + type: string + operatingSystem: + description: Operating system running on the node. + type: string + operatingSystemVersion: + description: Operating system version running on the node. + type: string + type: object + type: array + type: object + stripes: + description: List of stripes in the Backend. + items: + properties: + leafNodes: + description: List of leaf nodes in the Stripe. + items: + properties: + node: + description: Name of the TopoNode. + type: string + operatingSystem: + description: Operating system running on the node. + type: string + operatingSystemVersion: + description: Operating system version running on the node. + type: string + type: object + type: array + name: + description: The name of the Stripe. + type: string + type: object + type: array + type: object + status: + description: BackendStateStatus defines the observed state of BackendState + type: object + type: object +served: true +storage: true +subresources: + status: {} diff --git a/static/resources/25.4.2/banners.siteinfo.eda.nokia.com/v1alpha1.yaml b/static/resources/25.4.2/banners.siteinfo.eda.nokia.com/v1alpha1.yaml new file mode 100644 index 0000000..96fcedd --- /dev/null +++ b/static/resources/25.4.2/banners.siteinfo.eda.nokia.com/v1alpha1.yaml @@ -0,0 +1,56 @@ +name: v1alpha1 +schema: + openAPIV3Schema: + description: Banner is the Schema for the banners API + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + description: BannerSpec allows the configuration of login and MOTD (Message of the Day) banners on selected nodes. The banners can be applied to specific nodes or selected using label selectors. + properties: + loginBanner: + description: This is the login banner displayed before a user has logged into the Node. + type: string + motd: + description: This is the MOTD banner displayed after a user has logged into the Node. + type: string + nodeSelector: + description: Labe selector to select nodes on which to configure the banners. + items: + type: string + type: array + nodes: + description: List of nodes on which to configure the banners. + items: + type: string + type: array + type: object + status: + description: BannerStatus defines the observed state of Banner + properties: + nodes: + description: List of nodes this banner has been applied to + items: + type: string + type: array + type: object + type: object +served: true +storage: true +subresources: + status: {} diff --git a/static/resources/25.4.2/bannerstates.siteinfo.eda.nokia.com/v1alpha1.yaml b/static/resources/25.4.2/bannerstates.siteinfo.eda.nokia.com/v1alpha1.yaml new file mode 100644 index 0000000..95ef8f2 --- /dev/null +++ b/static/resources/25.4.2/bannerstates.siteinfo.eda.nokia.com/v1alpha1.yaml @@ -0,0 +1,39 @@ +name: v1alpha1 +schema: + openAPIV3Schema: + description: BannerState is the Schema for the bannerstates API + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + description: BannerStateSpec defines the desired state of BannerState + properties: + nodes: + description: List of TopoNodes this banner has been applied to + items: + type: string + type: array + type: object + status: + description: BannerStateStatus defines the observed state of BannerState + type: object + type: object +served: true +storage: true +subresources: + status: {} diff --git a/static/resources/25.4.2/bgpgroupdeployments.protocols.eda.nokia.com/v1alpha1.yaml b/static/resources/25.4.2/bgpgroupdeployments.protocols.eda.nokia.com/v1alpha1.yaml new file mode 100644 index 0000000..b7da428 --- /dev/null +++ b/static/resources/25.4.2/bgpgroupdeployments.protocols.eda.nokia.com/v1alpha1.yaml @@ -0,0 +1,47 @@ +name: v1alpha1 +schema: + openAPIV3Schema: + description: BGPGroupDeployment is the Schema for the bgpgroupdeployments API + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + description: BGPGroupDeploymentSpec defines the desired state of BGPGroupDeployment + properties: + bgpGroup: + description: Reference to a BgpGroup + type: string + node: + description: Reference to a Node on which to push the BgpGroup + type: string + router: + description: Reference to a Router + type: string + required: + - bgpGroup + - node + - router + type: object + status: + description: BGPGroupDeploymentStatus defines the observed state of BGPGroupDeployment + type: object + type: object +served: true +storage: true +subresources: + status: {} diff --git a/static/resources/25.4.2/bgpgroups.protocols.eda.nokia.com/v1alpha1.yaml b/static/resources/25.4.2/bgpgroups.protocols.eda.nokia.com/v1alpha1.yaml new file mode 100644 index 0000000..5a31889 --- /dev/null +++ b/static/resources/25.4.2/bgpgroups.protocols.eda.nokia.com/v1alpha1.yaml @@ -0,0 +1,250 @@ +additionalPrinterColumns: + - jsonPath: .status.lastChange + name: Last Change + type: date + - jsonPath: .status.operationalState + name: Operational State + type: string +name: v1alpha1 +schema: + openAPIV3Schema: + description: BGPGroup is the Schema for the bgpgroups API + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + description: The BGPGroup enables centralized management of BGP peer configurations. This resource allows setting a description, common BGP settings, and peer-specific configurations, simplifying the consistent application of policies across multiple peers. It also includes transport settings, such as local TCP address configuration, passive mode, and TCP MSS. + properties: + asPathOptions: + description: AS Path Options + properties: + allowOwnAS: + default: 0 + description: The maximum number of times the global AS number or a local AS number of the BGP instance can appear in any received AS_PATH before it is considered a loop and considered invalid. + maximum: 255 + minimum: 0 + type: integer + removePrivateAS: + description: Options for removing private AS numbers (2-byte and 4-byte) from the advertised AS path towards all peers. + properties: + ignorePeerAS: + default: false + description: If set to true then do not delete or replace a private AS number that is the same as the peer AS number. + type: boolean + leadingOnly: + default: false + description: If set to true then only delete or replace private AS numbers that appear before the first occurrence of a non-private ASN in the sequence of most recent ASNs in the AS path. + type: boolean + removePrivateASMode: + default: DISABLED + description: The method by which private AS numbers are removed from the advertised AS_PATH attribute. + enum: + - DISABLED + - REPLACE + - DELETE + type: string + required: + - ignorePeerAS + - leadingOnly + - removePrivateASMode + type: object + required: + - allowOwnAS + type: object + bfd: + description: Enable or disable Bi-forward Forwarding Detection (BFD) with fast failover. + type: boolean + client: + description: When set to true, all configured and dynamic BGP peers are considered RR clients. + type: boolean + clusterID: + description: Enables route reflect client and sets the cluster ID. + type: string + description: + description: Sets the description on the BGP group. + type: string + exportPolicy: + description: Reference to a Policy CR that will be used to filter routes advertised to peers. + items: + type: string + type: array + grStaleRouteTime: + description: Enables Graceful Restart on the peer and sets the stale route time. + maximum: 3600 + minimum: 1 + type: integer + importPolicy: + description: Reference to a Policy CR that will be used to filter routes received from peers. + items: + type: string + type: array + ipv4Unicast: + description: Parameters relating to the IPv4 unicast AFI/SAFI. + properties: + advertiseIPV6NextHops: + description: Enables advertisement of IPv4 Unicast routes with IPv6 next-hops to peers. + type: boolean + enabled: + description: Enables the IPv4 unicast AFISAFI. + type: boolean + maxReceivedRoutes: + description: Maximum number of IPv4 Unicast routes that will be accepted from the neighbor, counting routes accepted and rejected by import policies. + maximum: 4294967295 + minimum: 1 + type: integer + receiveIPV6NextHops: + description: Enables the advertisement of the RFC 5549 capability to receive IPv4 routes with IPv6 next-hops. + type: boolean + type: object + ipv6Unicast: + description: Parameters relating to the IPv6 unicast AFI/SAFI. + properties: + enabled: + description: Enables the IPv6 unicast AFISAFI + type: boolean + maxReceivedRoutes: + description: Maximum number of IPv6 Unicast routes that will be accepted from the neighbor, counting routes accepted and rejected by import policies. + maximum: 4294967295 + minimum: 1 + type: integer + type: object + keychain: + description: Reference to a Keychain resource that will be used for authentication with the BGP peer. + type: string + localAS: + description: The local autonomous system number advertised to peers. + properties: + autonomousSystem: + description: Local Autonomous System number. + maximum: 4294967295 + minimum: 1 + type: integer + prependGlobalAS: + description: When set to true, the global ASN value is prepended to the AS path in outbound routes towards each BGP peer. + type: boolean + prependLocalAS: + description: When set to true, the local AS value is prepended to the AS path of inbound routes from each EBGP peer. + type: boolean + required: + - autonomousSystem + type: object + localPreference: + description: Local Preference attribute added to received routes from the BGP peers, also sets local preference for generated routes. + maximum: 4294967295 + minimum: 0 + type: integer + multiHopMaxHop: + description: Enable multihop for eBGP peers and sets the maximum number of hops allowed. + maximum: 255 + minimum: 1 + type: integer + nextHopSelf: + description: When set to true, the next-hop in all IPv4-unicast, IPv6-unicast and EVPN BGP routes advertised to the peer is set to the local-address. + type: boolean + peerAS: + description: The autonomous system number expected from peers. + properties: + autonomousSystem: + description: Local Autonomous System number. + maximum: 4294967295 + minimum: 1 + type: integer + required: + - autonomousSystem + type: object + sendCommunityLarge: + description: When false, all large (12 byte) BGP communities from all outbound routes advertised to the peer are stripped. + type: boolean + sendCommunityStandard: + description: When false, all standard (4 byte) communities from all outbound routes advertised to the peer are stripped. + type: boolean + sendDefaultRoute: + description: Options for controlling the generation of default routes towards BGP peers. + properties: + addressFamily: + description: Enables the sending of a synthetically generated default IPv4 or IPV6 route to each peer. + items: + enum: + - IPV4-UNICAST + - IPV6-UNICAST + type: string + type: array + exportPolicy: + description: Reference to a Policy that should be applied to the advertised default routes, in order to set their attributes to non-default values. + type: string + required: + - addressFamily + type: object + timers: + description: Timer configurations + properties: + connectRetry: + description: The time interval in seconds between successive attempts to establish a session with a peer. + maximum: 65535 + minimum: 1 + type: integer + holdTime: + description: The hold-time interval in seconds that the router proposes to the peer in its OPEN message. + maximum: 65535 + minimum: 0 + type: integer + keepAlive: + description: The interval in seconds between successive keepalive messages sent to the peer. + maximum: 21845 + minimum: 0 + type: integer + minimumAdvertisementInterval: + description: The value assigned to the MinRouteAdvertisementIntervalTimer of RFC 4271, for both EBGP and IBGP sessions. + maximum: 255 + minimum: 1 + type: integer + type: object + type: object + status: + description: BGPGroupStatus defines the observed state of BGPGroup + properties: + health: + description: Indicates the health score of the BGP group. + type: integer + healthScoreReason: + description: Indicates the reason for the health score. + type: string + lastChange: + description: The time when the state of the resource last changed. + type: string + numPeers: + description: Number of configured BGP peers within the BGP Group. + format: int32 + type: integer + numPeersOperDown: + description: Number of configured BGP peers which have an Operational State of down within the BGP Group. + format: int32 + type: integer + numPeersUnknown: + description: Number of configured BGP peers within the BGP Group which cannot be reached by npp. + format: int32 + type: integer + operationalState: + description: Operational state of the BGP group. + type: string + type: object + type: object +served: true +storage: true +subresources: + status: {} diff --git a/static/resources/25.4.2/bgpgroupstates.protocols.eda.nokia.com/v1alpha1.yaml b/static/resources/25.4.2/bgpgroupstates.protocols.eda.nokia.com/v1alpha1.yaml new file mode 100644 index 0000000..8456411 --- /dev/null +++ b/static/resources/25.4.2/bgpgroupstates.protocols.eda.nokia.com/v1alpha1.yaml @@ -0,0 +1,42 @@ +name: v1alpha1 +schema: + openAPIV3Schema: + description: BGPGroupState is the Schema for the bgpgroupstates API + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + description: BGPGroupStateSpec defines the desired state of BGPGroupState + properties: + defaultBGPGroup: + description: Denotes if the group is a DefaultBGPGroup or BGPGroup + type: boolean + group: + type: string + required: + - defaultBGPGroup + - group + type: object + status: + description: BGPGroupStateStatus defines the observed state of BGPGroupState + type: object + type: object +served: true +storage: true +subresources: + status: {} diff --git a/static/resources/25.4.2/bgppeers.protocols.eda.nokia.com/v1alpha1.yaml b/static/resources/25.4.2/bgppeers.protocols.eda.nokia.com/v1alpha1.yaml new file mode 100644 index 0000000..49602e2 --- /dev/null +++ b/static/resources/25.4.2/bgppeers.protocols.eda.nokia.com/v1alpha1.yaml @@ -0,0 +1,302 @@ +additionalPrinterColumns: + - jsonPath: .status.sessionState + name: Session State + type: string + - jsonPath: .status.lastChange + name: Last Change + type: date + - jsonPath: .status.enabled + name: Enabled + type: boolean + - jsonPath: .status.operationalState + name: Operational State + type: string + - jsonPath: .status.peerAS + name: PeerAS + type: integer +name: v1alpha1 +schema: + openAPIV3Schema: + description: BGPPeer is the Schema for the bgppeers API + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + description: BGPPeer enables the configuration of BGP sessions. It allows specifying a description, an interface reference (either RoutedInterface or IrbInterface), and the peer IP address. The resource also supports dynamic neighbors, common BGP settings, and peer-specific configurations. + properties: + asPathOptions: + description: AS Path Options + properties: + allowOwnAS: + default: 0 + description: The maximum number of times the global AS number or a local AS number of the BGP instance can appear in any received AS_PATH before it is considered a loop and considered invalid. + maximum: 255 + minimum: 0 + type: integer + removePrivateAS: + description: Options for removing private AS numbers (2-byte and 4-byte) from the advertised AS path towards all peers. + properties: + ignorePeerAS: + default: false + description: If set to true then do not delete or replace a private AS number that is the same as the peer AS number. + type: boolean + leadingOnly: + default: false + description: If set to true then only delete or replace private AS numbers that appear before the first occurrence of a non-private ASN in the sequence of most recent ASNs in the AS path. + type: boolean + removePrivateASMode: + default: DISABLED + description: The method by which private AS numbers are removed from the advertised AS_PATH attribute. + enum: + - DISABLED + - REPLACE + - DELETE + type: string + required: + - ignorePeerAS + - leadingOnly + - removePrivateASMode + type: object + required: + - allowOwnAS + type: object + bfd: + description: Enable or disable Bi-forward Forwarding Detection (BFD) with fast failover. + type: boolean + client: + description: When set to true, all configured and dynamic BGP peers are considered RR clients. + type: boolean + clusterID: + description: Enables route reflect client and sets the cluster ID. + type: string + description: + description: Sets the description on the BGP peer + type: string + dynamicNeighbor: + default: false + description: When set to true the Interface is added to the dynamic-neighbor list for dynamic peering. + type: boolean + dynamicNeighborAllowedPeerAS: + description: The autonomous system numbers allowed from peers if dynamic peering is enabled. + items: + type: integer + type: array + exportPolicy: + description: Reference to a Policy CR that will be used to filter routes advertised to peers. + items: + type: string + type: array + grStaleRouteTime: + description: Enables Graceful Restart on the peer and sets the stale route time. + maximum: 3600 + minimum: 1 + type: integer + group: + description: Reference to a BGPGroup. When present this BGP peer will be added to the BGP group + type: string + importPolicy: + description: Reference to a Policy CR that will be used to filter routes received from peers. + items: + type: string + type: array + interface: + description: Reference to a RoutedInterface or IrbInterface resource whose IP will be used as a source IP for the BGP session. + type: string + interfaceKind: + description: InterfaceReference type defines whether the provided Reference is a RoutedInterface or IrbInterface. + enum: + - ROUTEDINTERFACE + - IRBINTERFACE + type: string + ipv4Unicast: + description: Parameters relating to the IPv4 unicast AFI/SAFI. + properties: + advertiseIPV6NextHops: + description: Enables advertisement of IPv4 Unicast routes with IPv6 next-hops to peers. + type: boolean + enabled: + description: Enables the IPv4 unicast AFISAFI. + type: boolean + maxReceivedRoutes: + description: Maximum number of IPv4 Unicast routes that will be accepted from the neighbor, counting routes accepted and rejected by import policies. + maximum: 4294967295 + minimum: 1 + type: integer + receiveIPV6NextHops: + description: Enables the advertisement of the RFC 5549 capability to receive IPv4 routes with IPv6 next-hops. + type: boolean + type: object + ipv6Unicast: + description: Parameters relating to the IPv6 unicast AFI/SAFI. + properties: + enabled: + description: Enables the IPv6 unicast AFISAFI + type: boolean + maxReceivedRoutes: + description: Maximum number of IPv6 Unicast routes that will be accepted from the neighbor, counting routes accepted and rejected by import policies. + maximum: 4294967295 + minimum: 1 + type: integer + type: object + keychain: + description: Reference to a Keychain resource that will be used for authentication with the BGP peer. + type: string + localAS: + description: The local autonomous system number advertised to peers. + properties: + autonomousSystem: + description: Local Autonomous System number. + maximum: 4294967295 + minimum: 1 + type: integer + prependGlobalAS: + description: When set to true, the global ASN value is prepended to the AS path in outbound routes towards each BGP peer. + type: boolean + prependLocalAS: + description: When set to true, the local AS value is prepended to the AS path of inbound routes from each EBGP peer. + type: boolean + required: + - autonomousSystem + type: object + localPreference: + description: Local Preference attribute added to received routes from the BGP peers, also sets local preference for generated routes. + maximum: 4294967295 + minimum: 0 + type: integer + multiHopMaxHop: + description: Enable multihop for eBGP peers and sets the maximum number of hops allowed. + maximum: 255 + minimum: 1 + type: integer + nextHopSelf: + description: When set to true, the next-hop in all IPv4-unicast, IPv6-unicast and EVPN BGP routes advertised to the peer is set to the local-address. + type: boolean + node: + description: Node on which to configure the BGP peer. This node must be one of the nodes on which the IRBInterface is configured. When left blank or if the node is not part of the IRBInterface, the peer will not be deployed. Ignored for RoutedInterfaces. + type: string + peerAS: + description: The autonomous system number expected from peers. + properties: + autonomousSystem: + description: Local Autonomous System number. + maximum: 4294967295 + minimum: 1 + type: integer + required: + - autonomousSystem + type: object + peerIP: + description: Peer IP to which the peering session will be established. + type: string + sendCommunityLarge: + description: When false, all large (12 byte) BGP communities from all outbound routes advertised to the peer are stripped. + type: boolean + sendCommunityStandard: + description: When false, all standard (4 byte) communities from all outbound routes advertised to the peer are stripped. + type: boolean + sendDefaultRoute: + description: Options for controlling the generation of default routes towards BGP peers. + properties: + addressFamily: + description: Enables the sending of a synthetically generated default IPv4 or IPV6 route to each peer. + items: + enum: + - IPV4-UNICAST + - IPV6-UNICAST + type: string + type: array + exportPolicy: + description: Reference to a Policy that should be applied to the advertised default routes, in order to set their attributes to non-default values. + type: string + required: + - addressFamily + type: object + timers: + description: Timer configurations + properties: + connectRetry: + description: The time interval in seconds between successive attempts to establish a session with a peer. + maximum: 65535 + minimum: 1 + type: integer + holdTime: + description: The hold-time interval in seconds that the router proposes to the peer in its OPEN message. + maximum: 65535 + minimum: 0 + type: integer + keepAlive: + description: The interval in seconds between successive keepalive messages sent to the peer. + maximum: 21845 + minimum: 0 + type: integer + minimumAdvertisementInterval: + description: The value assigned to the MinRouteAdvertisementIntervalTimer of RFC 4271, for both EBGP and IBGP sessions. + maximum: 255 + minimum: 1 + type: integer + type: object + required: + - group + - interface + - interfaceKind + type: object + status: + description: BGPPeerStatus defines the observed state of BGPPeer + properties: + enabled: + description: Indicated whether the BGP Peer is administratively enabled. + type: boolean + health: + description: Indicates the health score of the BGP peer. + type: integer + healthScoreReason: + description: Indicates the reason for the health score. + type: string + lastChange: + description: The time when the state of the resource last changed. + type: string + lastEvent: + description: Last event of the BGP peer. + type: string + lastState: + description: Last state of the BGP peer. + type: string + negotiatedHoldTime: + description: Hold time negotiated with the BGP peer. + type: integer + negotiatedKeepaliveInterval: + description: Keepalive interval negotiated with the BGP peer. + type: integer + operationalState: + description: Operational state of the BGP peer + type: string + peerAS: + description: Peer AS of the BGP peer. + type: integer + sessionState: + description: The state of the BGP session. + type: string + underMaintenance: + description: Indicates if the BGP peer is under maintenance. + type: boolean + type: object + type: object +served: true +storage: true +subresources: + status: {} diff --git a/static/resources/25.4.2/bgppeerstates.protocols.eda.nokia.com/v1alpha1.yaml b/static/resources/25.4.2/bgppeerstates.protocols.eda.nokia.com/v1alpha1.yaml new file mode 100644 index 0000000..3b5f957 --- /dev/null +++ b/static/resources/25.4.2/bgppeerstates.protocols.eda.nokia.com/v1alpha1.yaml @@ -0,0 +1,75 @@ +name: v1alpha1 +schema: + openAPIV3Schema: + description: BGPPeerState is the Schema for the bgppeerstates API + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + description: BGPPeerStateSpec defines the desired state of BGPPeerState + properties: + afiSAFI: + description: List of configured AFI-SAFI on the BGP peer + items: + type: string + type: array + defaultNetworkInstance: + description: Denotes if the router is a DefaultRouter or Router + type: boolean + dynamicNeighbor: + default: false + description: When set to true the PeerDefaultInterface is added to the dynamic-neighbor list for dynamic peering. + type: boolean + group: + description: Reference to a BGPGroup + type: string + networkInstanceName: + description: The name of the network-instance or VPRN in which the BGP peer is configured + type: string + node: + description: The Node on which the BGP peer configuration resides + type: string + nodeInterface: + description: Node interface of the default interface which is configured to peer as a dynamic neighbor + type: string + operatingSystem: + description: Operating System of the Node + type: string + peerIP: + description: The IP of the BGP peer + type: string + router: + description: Router to which the BGP peer is attached + type: string + subInterfaceIndex: + description: Sub interface index of the default interface which is configured to peer as a dynamic neighbor + type: integer + required: + - defaultNetworkInstance + - dynamicNeighbor + - networkInstanceName + - router + type: object + status: + description: BGPPeerStateStatus defines the observed state of BGPPeerState + type: object + type: object +served: true +storage: true +subresources: + status: {} diff --git a/static/resources/breakouts.interfaces.eda.nokia.com/v1alpha1.yaml b/static/resources/25.4.2/breakouts.interfaces.eda.nokia.com/v1alpha1.yaml similarity index 100% rename from static/resources/breakouts.interfaces.eda.nokia.com/v1alpha1.yaml rename to static/resources/25.4.2/breakouts.interfaces.eda.nokia.com/v1alpha1.yaml diff --git a/static/resources/25.4.2/bridgedomaindeployments.services.eda.nokia.com/v1alpha1.yaml b/static/resources/25.4.2/bridgedomaindeployments.services.eda.nokia.com/v1alpha1.yaml new file mode 100644 index 0000000..9dca019 --- /dev/null +++ b/static/resources/25.4.2/bridgedomaindeployments.services.eda.nokia.com/v1alpha1.yaml @@ -0,0 +1,51 @@ +name: v1alpha1 +schema: + openAPIV3Schema: + description: BridgeDomainDeployment is the Schema for the bridgedomaindeployments API + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + description: BridgeDomainDeploymentSpec defines the desired state of BridgeDomainDeployment + properties: + bridgeDomain: + description: Reference to a BridgeDomain + type: string + node: + description: Reference to a Node on which to push the BridgeDomain + type: string + type: + default: DEFAULT + description: Specifies the Type of BridgeDomain to be deployed + enum: + - SIMPLE + - DEFAULT + type: string + required: + - bridgeDomain + - node + - type + type: object + status: + description: BridgeDomainDeploymentStatus defines the observed state of BridgeDomainDeployment + type: object + type: object +served: true +storage: true +subresources: + status: {} diff --git a/static/resources/25.4.2/bridgedomains.services.eda.nokia.com/v1alpha1.yaml b/static/resources/25.4.2/bridgedomains.services.eda.nokia.com/v1alpha1.yaml new file mode 100644 index 0000000..6ae3608 --- /dev/null +++ b/static/resources/25.4.2/bridgedomains.services.eda.nokia.com/v1alpha1.yaml @@ -0,0 +1,246 @@ +additionalPrinterColumns: + - jsonPath: .status.vni + name: VNI + type: string + - jsonPath: .status.evi + name: EVI + type: string + - jsonPath: .status.importTarget + name: Import Target + type: string + - jsonPath: .status.exportTarget + name: Export Target + type: string + - jsonPath: .status.numSubInterfacesOperDown + name: OperDown SubIf + type: string + - jsonPath: .status.numSubInterfaces + name: Total SubIf + type: string + - jsonPath: .status.operationalState + name: OperationalState + type: string + - jsonPath: .status.lastChange + name: LastChange + type: string +name: v1alpha1 +schema: + openAPIV3Schema: + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + description: The BridgeDomain enables the configuration and management of Layer 2 virtual networks. It includes settings for VNI, EVI, route targets for import and export, and tunnel index allocation. Additionally, the specification allows for advanced features such as MAC address table limits, aging, Proxy ARP and detection of MAC and IP duplication. + properties: + description: + description: The description of the BridgeDomain. + type: string + evi: + description: EVI to use for this BridgeDomain, can be optionally left blank to have it automatically allocated using the EVI Pool. + maximum: 65535 + minimum: 1 + type: integer + eviPool: + default: evi-pool + description: Reference to an EVI pool to use for allocations if EVI is left blank. + type: string + exportTarget: + description: Export route target in 'target:N:N' format, if not specified, the default value taken as "target:1:". + pattern: ^target.*$ + type: string + importTarget: + description: Import route target in 'target:N:N' format, if not specified, the default value taken as "target:1:". + pattern: ^target.*$ + type: string + l2proxyARPND: + description: Enables / Disabled Proxy ARP / Proxy ND. + properties: + dynamicLearning: + properties: + ageTime: + description: Aging timer value for the proxy entries in seconds. If not set, this indicates that the entries are never flushed. + maximum: 86400 + minimum: 60 + type: integer + enabled: + default: false + description: Enables or disables Dynamic Learning. + type: boolean + sendRefresh: + description: The interval determines the frequency at which the system generates three ARP Requests or Neighbor Solicitations with the intent to refresh the proxy entry. The refresh is sent within the age-time window. + maximum: 86400 + minimum: 120 + type: integer + type: object + ipDuplication: + properties: + enabled: + default: false + description: Enables or disables IP Duplication. + type: boolean + holdDownTime: + default: 9 + description: Time to wait in minutes from the moment an IP is declared duplicate to the time the IP is removed from the proxy ARP/ND table. + maximum: 60 + minimum: 2 + type: integer + monitoringWindow: + default: 3 + description: Monitoring window for detecting duplication on a given IP address in the proxy ARP/ND table. + maximum: 15 + minimum: 1 + type: integer + numMoves: + default: 5 + description: Number of moves in the proxy ARP/ND table that an IP is allowed within the monitoring-window. + maximum: 10 + minimum: 3 + type: integer + type: object + proxyARP: + default: false + description: Enables proxy ARP. + type: boolean + proxyND: + default: false + description: Enables proxy ND. + type: boolean + tableSize: + default: 250 + description: Maximum number of entries allowed in the proxy table of the bridge domain. + maximum: 8192 + minimum: 1 + type: integer + type: object + macAging: + default: 300 + description: Configurable aging time for dynamically learned mac addresses. + format: int32 + maximum: 86400 + minimum: 60 + type: integer + macDuplicationDetection: + description: Enable or disable MAC duplication detection and resolution mechanisms. + properties: + action: + default: StopLearning + description: Action to take on the subinterface upon detecting at least one mac addresses as duplicate on the subinterface. + enum: + - Blackhole + - OperDown + - StopLearning + type: string + enabled: + default: false + description: Enables or disables Mac Duplication Detection. + type: boolean + holdDownTime: + default: 9 + description: Time to wait in minutes from the moment a mac is declared duplicate to the mac is flushed from the bridge table. + maximum: 60 + minimum: 2 + type: integer + monitoringWindow: + default: 3 + description: Monitoring window in minutes for detecting duplication on a given mac address. + maximum: 15 + minimum: 1 + type: integer + numMoves: + default: 5 + description: Number of moves a mac is allowed within the monitoring-window, before it is declared duplicate. + minimum: 3 + type: integer + type: object + macLimit: + description: Sets the maximum number of MAC entries accepted in the bridge table. + format: int32 + type: integer + tunnelIndexPool: + default: tunnel-index-pool + description: Reference to a tunnel index pool to use for allocations. + type: string + type: + default: EVPNVXLAN + description: Select the type of BridgeDomain. Simple doesn't include any overlay control plane or dataplane properties (EVPN/VXLAN). EVPNVXLAN includes the properties needed to provision this BridgeDomain over an IP Fabric. + enum: + - SIMPLE + - EVPNVXLAN + type: string + vni: + description: VNI to use for this BridgeDomain, can be optionally left blank to have it allocated using the VNI Pool. + maximum: 16777215 + minimum: 1 + type: integer + vniPool: + default: vni-pool + description: Reference to a VNI pool to use for allocations if VNI is left blank. + type: string + type: object + status: + description: BridgeDomainStatus defines the observed state of BridgeDomain + properties: + evi: + description: EVI in use for this bridge domain. + type: integer + exportTarget: + description: Export route target for this bridge domain. + type: string + health: + description: Indicates the health score of the VNET. + type: integer + healthScoreReason: + description: Indicates the reason for the health score. + type: string + importTarget: + description: Import route target for this bridge domain. + type: string + lastChange: + description: The time when the state of the resource last changed. + type: string + nodes: + description: Nodes which have the BridgeDomain configured (min 1 sub-interface). + items: + type: string + type: array + numNodes: + description: Number of nodes which have the BridgeDomain configured (min 1 sub-interface). + type: integer + numSubInterfaces: + description: Number of sub-interfaces attached to the BridgeDomain. + format: int32 + type: integer + numSubInterfacesOperDown: + description: Number of oper-down sub-interfaces attached to the BridgeDomain. + format: int32 + type: integer + operationalState: + description: Operational state of the VNET. + type: string + tunnelIndex: + description: Vxlan tunnel index in use. + type: integer + vni: + description: VNI in use for this bridge domain. + type: integer + type: object + type: object +served: true +storage: true +subresources: + status: {} diff --git a/static/resources/25.4.2/bridgedomainstates.services.eda.nokia.com/v1alpha1.yaml b/static/resources/25.4.2/bridgedomainstates.services.eda.nokia.com/v1alpha1.yaml new file mode 100644 index 0000000..9e20956 --- /dev/null +++ b/static/resources/25.4.2/bridgedomainstates.services.eda.nokia.com/v1alpha1.yaml @@ -0,0 +1,55 @@ +name: v1alpha1 +schema: + openAPIV3Schema: + description: BridgeDomainState is the Schema for the bridgedomainstates API + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + description: BridgeDomainStateSpec defines the desired state of BridgeDomainState + properties: + evi: + description: EVI in use for this BridgeDomain + maximum: 65535 + minimum: 1 + type: integer + exportTarget: + description: Export route target for this BridgeDomain, in the format 'target:N:N' + pattern: ^target.*$ + type: string + importTarget: + description: Import route target for this BridgeDomain, in the format 'target:N:N' + pattern: ^target.*$ + type: string + tunnelIndex: + description: Vxlan tunnel index in use + type: integer + vni: + description: VNI in use for this BridgeDomain + maximum: 16777215 + minimum: 1 + type: integer + type: object + status: + description: BridgeDomainStateStatus defines the observed state of BridgeDomainState + type: object + type: object +served: true +storage: true +subresources: + status: {} diff --git a/static/resources/25.4.2/bridgeinterfaces.services.eda.nokia.com/v1alpha1.yaml b/static/resources/25.4.2/bridgeinterfaces.services.eda.nokia.com/v1alpha1.yaml new file mode 100644 index 0000000..de1f92e --- /dev/null +++ b/static/resources/25.4.2/bridgeinterfaces.services.eda.nokia.com/v1alpha1.yaml @@ -0,0 +1,198 @@ +additionalPrinterColumns: + - jsonPath: .status.operationalState + name: OperationalState + type: string + - jsonPath: .status.lastChange + name: LastChange + type: string +name: v1alpha1 +schema: + openAPIV3Schema: + description: BridgeInterface is the Schema for the bridgeinterfaces API + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + description: The BridgeInterface enables the attachment of network interfaces to a Bridge Domain. It includes settings for VLAN ID allocation, interface attachment, and actions on ingress and egress traffic. The specification supports integration with other network resources, such as Bridge Domains and Interfaces, and provides advanced features like MAC Duplication Detection with configurable actions. + properties: + bridgeDomain: + description: Reference to a BridgeDomain in which to attach the BridgeInterface. + type: string + description: + description: The description of the BridgeInterface. + type: string + egress: + description: Manages actions on traffic at Egress. + properties: + filters: + description: List of Filter references to use at egress. + items: + type: string + type: array + qosPolicy: + description: List of QoS Egress policy references to use at egress. + items: + type: string + type: array + type: object + ingress: + description: Manages actions on traffic at Ingress. + properties: + filters: + description: List of Filter references to use at ingress. + items: + type: string + type: array + qosPolicy: + description: List of QoS Ingress policy references to use at ingress. + items: + type: string + type: array + type: object + interface: + description: Reference to an Interface resource to attach this BridgeInterface. + type: string + l2MTU: + description: L2 MTU specifies the maximum sized Ethernet frame that can be transmitted on the subinterface. If a frame exceeds this size it is discarded. If the l2-mtu of the subinterface exceeds the port-mtu of the associated interface, the subinterface will remain operationally down. + maximum: 9500 + minimum: 1450 + type: integer + macDuplicationDetectionAction: + description: Override for Mac Duplication Detection action if enabled in the associated BridgeDomain. + enum: + - Blackhole + - OperDown + - StopLearning + - UseBridgeDomainAction + type: string + splitHorizonGroup: + description: Split Horizon Group to be used for this BridgeInterface. The subinterface within this BridgeInterface will be a member of this Split Horizon Group. + type: string + uplink: + description: The Uplink between your access breakout switch and your leaf switch. + properties: + egress: + description: Manages actions on traffic at Egress of the Local enpoint of the Uplink. + properties: + filters: + description: List of Filter references to use at egress. + items: + type: string + type: array + qosPolicy: + description: List of QoS Egress policy references to use at egress. + items: + type: string + type: array + type: object + ingress: + description: Manages actions on traffic at Ingress of the Local enpoint of the Uplink. + properties: + filters: + description: List of Filter references to use at ingress. + items: + type: string + type: array + qosPolicy: + description: List of QoS Ingress policy references to use at ingress. + items: + type: string + type: array + type: object + uplinkSelector: + description: Selects TopoLinks which connect a leaf switch to a breakout switch. This is the uplink between your access breakout switch and your leaf switch. There can only be a single TopoLink between the access breakout switch and the leaf switch, if more than one TopoLink is present between two devices the transaction will fail. + items: + type: string + type: array + uplinkVLANID: + default: pool + description: The VLAN ID to be utilized to isolate traffic from the VLAN on the access breakout switch to the leaf switch on the selected uplink TopoLink. + type: string + uplinkVLANPool: + description: A VLAN from this pool will be utilized to isolate traffic from the VLAN on the access breakout switch to the leaf switch on the selected uplink TopoLink. + type: string + type: object + vlanID: + description: Single value between 1-4094 support, ranges supported in the format x-y,x-y, or the special keyword null, any, untagged or pool for auto allocation. + type: string + required: + - bridgeDomain + - interface + - vlanID + type: object + status: + properties: + health: + description: Indicates the health score of the BridgeInterface. + type: integer + healthScoreReason: + description: Indicates the reason for the health score. + type: string + lastChange: + description: The time when the state of the resource last changed. + type: string + operationalState: + description: Operational state of the BridgeInterface. + type: string + subInterfaces: + description: Sub-interfaces status within the BridgeInterface. + items: + properties: + enabled: + description: The administrative status of the SubInterface. + type: boolean + interface: + description: Normalized interface name. + type: string + interfaceResource: + description: Eda interface resource. + type: string + lastChange: + description: Indicates when this SubInterface last changed state. + type: string + node: + description: Reference to Node object. + type: string + nodeInterface: + description: Node specific interface name. + type: string + operatingSystem: + description: Operating System of the Node. + type: string + operationalState: + description: Indicates the current operational state of the SubInterface. + type: string + subInterfaceIndex: + description: Index allocated to the subinterface on the associated interface for the given VLAN. + type: integer + vlanID: + description: vlan assigned to this subinterface. + type: string + required: + - interface + - interfaceResource + - node + - nodeInterface + type: object + type: array + type: object + type: object +served: true +storage: true +subresources: + status: {} diff --git a/static/resources/25.4.2/bridgeinterfacestates.services.eda.nokia.com/v1alpha1.yaml b/static/resources/25.4.2/bridgeinterfacestates.services.eda.nokia.com/v1alpha1.yaml new file mode 100644 index 0000000..55e8dcc --- /dev/null +++ b/static/resources/25.4.2/bridgeinterfacestates.services.eda.nokia.com/v1alpha1.yaml @@ -0,0 +1,73 @@ +name: v1alpha1 +schema: + openAPIV3Schema: + description: BridgeInterfaceState is the Schema for the bridgeinterfacestates API + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + description: BridgeInterfaceStateSpec defines the desired state of BridgeInterfaceState + properties: + bridgeDomain: + description: Node BridgeDomain name + type: string + subInterfaces: + items: + properties: + interface: + description: Normalized interface name + type: string + interfaceResource: + description: Eda interface resource + type: string + node: + description: Reference to Node object + type: string + nodeInterface: + description: Node specific interface name + type: string + nodeSubInterface: + description: Node specific subinterface name + type: string + operatingSystem: + description: Operating System of the Node + type: string + subInterfaceIndex: + description: Index allocated to the subinterface on the associated interface for the given VLAN + type: integer + vlanID: + description: vlan assigned to this subinterface + type: string + required: + - interface + - interfaceResource + - node + - nodeInterface + type: object + type: array + required: + - bridgeDomain + - subInterfaces + type: object + status: + type: object + type: object +served: true +storage: true +subresources: + status: {} diff --git a/static/resources/25.4.2/catalogs.appstore.eda.nokia.com/v1.yaml b/static/resources/25.4.2/catalogs.appstore.eda.nokia.com/v1.yaml new file mode 100644 index 0000000..26f5e62 --- /dev/null +++ b/static/resources/25.4.2/catalogs.appstore.eda.nokia.com/v1.yaml @@ -0,0 +1,91 @@ +additionalPrinterColumns: + - jsonPath: .spec.title + name: Title + type: string + - jsonPath: .spec.remoteType + name: Type + type: string + - jsonPath: .status.operational + name: Operational + type: string +name: v1 +schema: + openAPIV3Schema: + description: Catalog is the Schema for the catalogs API + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + description: CatalogSpec defines the desired state of a Catalog. + properties: + authSecretRef: + description: |- + AuthSecretRef is the authentication secret reference, used for authentication. + Must be in the same namespace as the catalog. + type: string + description: + description: Description is an optional short description of the catalog. + maxLength: 70 + type: string + refreshInterval: + default: 180 + description: |- + RefreshInterval tells the controller how often it should check the remote catalog for new updates, in seconds. + Default is 180 seconds. Minimum is 30 seconds for production environments; 10 seconds for test environments. + format: int32 + type: integer + remoteType: + default: git + description: RemoteType type of the catalog, only 'git' is supported at the moment. + enum: + - git + type: string + remoteURL: + description: |- + RemoteURL is the HTTP(S) remote URL of the catalog. Supported URI schemes: 'https://' and 'http://'. + Default is HTTPS if no scheme is given. + type: string + skipTLSVerify: + default: false + description: SkipTLSVerify skips the validity check for the server's certificate. This will make HTTPS connections insecure. + type: boolean + title: + description: Title is an UI-friendly name for the catalog. + maxLength: 50 + type: string + type: object + status: + description: CatalogStatus defines the observed state of a Catalog. + properties: + error: + description: Error denotes the last error that was encountered by the controller. + type: string + lastRefreshTime: + description: LastRefreshTime is the last attempt to refresh the catalog cache by the controller. + format: date-time + type: string + operational: + default: false + description: Operational reports whether the catalog remote is operational. + type: boolean + type: object + type: object +served: true +storage: true +subresources: + status: {} diff --git a/static/resources/25.4.2/certificatechecks.certcheck.eda.nokia.com/v1alpha1.yaml b/static/resources/25.4.2/certificatechecks.certcheck.eda.nokia.com/v1alpha1.yaml new file mode 100644 index 0000000..a1b62ab --- /dev/null +++ b/static/resources/25.4.2/certificatechecks.certcheck.eda.nokia.com/v1alpha1.yaml @@ -0,0 +1,251 @@ +name: v1alpha1 +schema: + openAPIV3Schema: + description: CertificateCheck is the Schema for the certificatechecks API + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + description: CertificateCheckSpec defines the desired state of CertificateCheck + properties: + address: + description: list of addresses to check + items: + type: string + type: array + interval: + default: 5m + description: Interval specifies the check interval + type: string + podSelector: + description: PodSelector defines a selector for the target Pods to check. + properties: + matchExpressions: + description: matchExpressions is a list of label selector requirements. The requirements are ANDed. + items: + description: |- + A label selector requirement is a selector that contains values, a key, and an operator that + relates the key and values. + properties: + key: + description: key is the label key that the selector applies to. + type: string + operator: + description: |- + operator represents a key's relationship to a set of values. + Valid operators are In, NotIn, Exists and DoesNotExist. + type: string + values: + description: |- + values is an array of string values. If the operator is In or NotIn, + the values array must be non-empty. If the operator is Exists or DoesNotExist, + the values array must be empty. This array is replaced during a strategic + merge patch. + items: + type: string + type: array + x-kubernetes-list-type: atomic + required: + - key + - operator + type: object + type: array + x-kubernetes-list-type: atomic + matchLabels: + additionalProperties: + type: string + description: |- + matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels + map is equivalent to an element of matchExpressions, whose key field is "key", the + operator is "In", and the values array contains only "value". The requirements are ANDed. + type: object + type: object + x-kubernetes-map-type: atomic + service: + description: Service defines the name of the Kubernetes Service to check. + items: + type: string + type: array + serviceSelector: + description: ServiceSelector defines a label selector for dynamically selecting the service + properties: + matchExpressions: + description: matchExpressions is a list of label selector requirements. The requirements are ANDed. + items: + description: |- + A label selector requirement is a selector that contains values, a key, and an operator that + relates the key and values. + properties: + key: + description: key is the label key that the selector applies to. + type: string + operator: + description: |- + operator represents a key's relationship to a set of values. + Valid operators are In, NotIn, Exists and DoesNotExist. + type: string + values: + description: |- + values is an array of string values. If the operator is In or NotIn, + the values array must be non-empty. If the operator is Exists or DoesNotExist, + the values array must be empty. This array is replaced during a strategic + merge patch. + items: + type: string + type: array + x-kubernetes-list-type: atomic + required: + - key + - operator + type: object + type: array + x-kubernetes-list-type: atomic + matchLabels: + additionalProperties: + type: string + description: |- + matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels + map is equivalent to an element of matchExpressions, whose key field is "key", the + operator is "In", and the values array contains only "value". The requirements are ANDed. + type: object + type: object + x-kubernetes-map-type: atomic + targetNode: + description: list of Targetnodes to check + items: + type: string + type: array + targetNodeSelector: + description: TargetNodeSelector defines a label selector for dynamically selecting targetNodes + properties: + matchExpressions: + description: matchExpressions is a list of label selector requirements. The requirements are ANDed. + items: + description: |- + A label selector requirement is a selector that contains values, a key, and an operator that + relates the key and values. + properties: + key: + description: key is the label key that the selector applies to. + type: string + operator: + description: |- + operator represents a key's relationship to a set of values. + Valid operators are In, NotIn, Exists and DoesNotExist. + type: string + values: + description: |- + values is an array of string values. If the operator is In or NotIn, + the values array must be non-empty. If the operator is Exists or DoesNotExist, + the values array must be empty. This array is replaced during a strategic + merge patch. + items: + type: string + type: array + x-kubernetes-list-type: atomic + required: + - key + - operator + type: object + type: array + x-kubernetes-list-type: atomic + matchLabels: + additionalProperties: + type: string + description: |- + matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels + map is equivalent to an element of matchExpressions, whose key field is "key", the + operator is "In", and the values array contains only "value". The requirements are ANDed. + type: object + type: object + x-kubernetes-map-type: atomic + thresholds: + description: Thresholds defines the certificate validity thresholds for raising alarms + properties: + critical: + description: Critical threshold in percentage + maximum: 100 + minimum: 0 + type: integer + major: + description: Major threshold in percentage + maximum: 100 + minimum: 0 + type: integer + minor: + description: Minor threshold in percentage + maximum: 100 + minimum: 0 + type: integer + warning: + description: Warning threshold in percentage + maximum: 100 + minimum: 0 + type: integer + type: object + timeout: + default: 5s + description: Timeout specifies the tls timeout + type: string + type: object + status: + description: CertificateCheckStatus defines the observed state of CertificateCheck + properties: + endpointStatuses: + description: EndpointStatuses contains the certificate statuses for each target endpoint + items: + description: EndpointStatus defines the status of the certificate for a specific endpoint + properties: + address: + description: Address is the address of the endpoint (service or pod) + type: string + error: + description: Error provides any error message that occurred during the check + type: string + expiryDate: + description: ExpiryDate is the expiration date of the certificate + format: date-time + type: string + issueDate: + description: IssueDate is the date when certificate was issued + format: date-time + type: string + podName: + type: string + serviceName: + type: string + targetNodeName: + type: string + valid: + description: Valid indicates whether the certificate is valid or not + type: boolean + required: + - address + - valid + type: object + type: array + lastChecked: + description: LastChecked indicates the last time the certificate was checked + format: date-time + type: string + type: object + type: object +served: true +storage: true +subresources: + status: {} diff --git a/static/resources/25.4.2/chassis.components.eda.nokia.com/v1.yaml b/static/resources/25.4.2/chassis.components.eda.nokia.com/v1.yaml new file mode 100644 index 0000000..834cfd1 --- /dev/null +++ b/static/resources/25.4.2/chassis.components.eda.nokia.com/v1.yaml @@ -0,0 +1,97 @@ +name: v1 +schema: + openAPIV3Schema: + description: Chassis is the Schema for the chassis API + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + description: ChassisSpec defines the desired state of Chassis + type: object + status: + description: ChassisStatus defines the observed state of Chassis + properties: + chassisMacAddress: + description: MAC Address of the Chassis + type: string + children: + description: References to children components + items: + properties: + name: + description: Reference to a child component + type: string + type: + description: Type of the child component + enum: + - Fan + - FanTray + - PowerSupply + - PowerModule + - PowerShelf + - InterfaceModule + - ControlModule + - FabricModule + - Chassis + - Transceiver + type: string + type: object + type: array + commonLanguageEquipmentIdentifier: + description: The CLEI code of this component + type: string + lastBooted: + description: The date and time this component last booted + type: string + lastChange: + description: The date and time this component last changed operational state + type: string + manufacturedDate: + description: The date this component was manufactured + type: string + operationalState: + description: Indicates the current operational state of this component. + enum: + - Up + - Down + - Rebooting + - Unknown + - Starting + - Empty + type: string + partNumber: + description: The discovered part number of this component + type: string + removable: + description: Indicates if this component is removable + type: boolean + serialNumber: + description: The discovered serial number of this component + type: string + target: + description: Target this component resides on. + type: string + type: + description: Component type, as provided by the target + type: string + type: object + type: object +served: true +storage: true +subresources: + status: {} diff --git a/static/resources/25.4.2/clusterdiscoveries.components.eda.nokia.com/v1.yaml b/static/resources/25.4.2/clusterdiscoveries.components.eda.nokia.com/v1.yaml new file mode 100644 index 0000000..80a2304 --- /dev/null +++ b/static/resources/25.4.2/clusterdiscoveries.components.eda.nokia.com/v1.yaml @@ -0,0 +1,49 @@ +name: v1 +schema: + openAPIV3Schema: + description: ClusterDiscovery is the Schema for the clusterdiscoveries API + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + description: ClusterDiscoverySpec defines the desired state of ClusterDiscovery + type: object + status: + description: ClusterDiscoveryStatus defines the observed state of ClusterDiscovery + properties: + targets: + description: List of targets component discovery is running for + items: + properties: + name: + description: Name of the target. + type: string + namespace: + description: Namespace of the target. + type: string + required: + - name + - namespace + type: object + type: array + type: object + type: object +served: true +storage: true +subresources: + status: {} diff --git a/static/resources/25.4.2/clusterroles.core.eda.nokia.com/v1.yaml b/static/resources/25.4.2/clusterroles.core.eda.nokia.com/v1.yaml new file mode 100644 index 0000000..81545ff --- /dev/null +++ b/static/resources/25.4.2/clusterroles.core.eda.nokia.com/v1.yaml @@ -0,0 +1,130 @@ +name: v1 +schema: + openAPIV3Schema: + description: ClusterRole is the Schema for the roles API + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + description: |- + ClusterRole defines a set of permissions to access EDA resources. + ClusterRoles and users are bound via groups, selecting a set of users and a set of ClusterRoles to bind. + properties: + description: + description: A description for the role. + type: string + resourceRules: + description: Rules for access to resources. + items: + description: A role rule controlling access to a kubernetes resource. + properties: + apiGroups: + description: |- + The API groups for the resources controlled by the rule. + An API group consists of an apiGroup and a version, e.g. "apigroup/version". + The API group can be a wildcard ("*"), in which case it will match any API group. + items: + minLength: 1 + type: string + minItems: 1 + type: array + permissions: + description: Permissions for resources specified by the rule. + enum: + - none + - read + - readWrite + type: string + resources: + description: |- + Names for the resources controlled by the rule. + It can be a wildcard ("*"), in which case it will match any resource + in the matching API groups. + items: + minLength: 1 + type: string + minItems: 1 + type: array + required: + - apiGroups + - permissions + - resources + type: object + type: array + tableRules: + description: Rules for access to EDB tables, including via EQL. + items: + description: |- + A role rule controlling access to a EDB table. Note that + there is never write access to EDB. + properties: + path: + description: |- + EDB path to which this rule applies. It can end in ".*" + in which case the final portion of the table path can be anything, if the + prefix matches. It can end in ".**" in which case the table path can be + anything if the prefix matches. + minLength: 1 + pattern: ^\..* + type: string + permissions: + description: Permissions for the given EDB path. + enum: + - none + - read + type: string + required: + - path + - permissions + type: object + type: array + urlRules: + description: Rules for access to APIServer proxied routes. + items: + description: A role rule controlling access to an API server proxy. + properties: + path: + description: |- + The API server URL path to which this rule applies. It can end in "/*" + in which case the final portion of the URL path can be anything, if the + prefix matches. It can end in "/**" in which case the URL path can be + anything if the prefix matches. + minLength: 1 + pattern: ^/.* + type: string + permissions: + description: The permissions for the API server URL for the rule. + enum: + - none + - read + - readWrite + type: string + required: + - path + - permissions + type: object + type: array + type: object + status: + description: RoleStatus defines the observed state of Role + type: object + type: object +served: true +storage: true +subresources: + status: {} diff --git a/static/resources/25.4.2/communitysetdeployments.routingpolicies.eda.nokia.com/v1alpha1.yaml b/static/resources/25.4.2/communitysetdeployments.routingpolicies.eda.nokia.com/v1alpha1.yaml new file mode 100644 index 0000000..9052874 --- /dev/null +++ b/static/resources/25.4.2/communitysetdeployments.routingpolicies.eda.nokia.com/v1alpha1.yaml @@ -0,0 +1,42 @@ +name: v1alpha1 +schema: + openAPIV3Schema: + description: CommunitySetDeployment is the schema for the communitysetdeployments API + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + description: CommunitySetDeploymentSpec defines the desired state of CommunitySetDeployment + properties: + communitySet: + description: Specifies a CommunitySet to deploy to the specified Node + type: string + node: + description: Specifies a Node to deploy this policy on + type: string + required: + - node + type: object + status: + description: CommunitySetDeploymentStatus defines the observed state of CommunitySetDeployment + type: object + type: object +served: true +storage: true +subresources: + status: {} diff --git a/static/resources/25.4.2/communitysets.routingpolicies.eda.nokia.com/v1alpha1.yaml b/static/resources/25.4.2/communitysets.routingpolicies.eda.nokia.com/v1alpha1.yaml new file mode 100644 index 0000000..33ba662 --- /dev/null +++ b/static/resources/25.4.2/communitysets.routingpolicies.eda.nokia.com/v1alpha1.yaml @@ -0,0 +1,42 @@ +name: v1alpha1 +schema: + openAPIV3Schema: + description: CommunitySet is the Schema for the communitysets API + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + description: CommunitySetSpec defines the desired state of CommunitySet + properties: + expressionMatch: + description: Options that determine the matching criteria that applies to the list of community members. + type: string + members: + description: A standard BGP community value, regular expression or well-known name or else a large BGP community value or regular expression. + items: + type: string + type: array + type: object + status: + description: CommunitySetStatus defines the observed state of CommunitySet + type: object + type: object +served: true +storage: true +subresources: + status: {} diff --git a/static/resources/components.components.eda.nokia.com/v1.yaml b/static/resources/25.4.2/components.components.eda.nokia.com/v1.yaml similarity index 100% rename from static/resources/components.components.eda.nokia.com/v1.yaml rename to static/resources/25.4.2/components.components.eda.nokia.com/v1.yaml diff --git a/static/resources/25.4.2/components.components.eda.nokia.com/v1alpha1.yaml b/static/resources/25.4.2/components.components.eda.nokia.com/v1alpha1.yaml new file mode 100644 index 0000000..a845192 --- /dev/null +++ b/static/resources/25.4.2/components.components.eda.nokia.com/v1alpha1.yaml @@ -0,0 +1,107 @@ +additionalPrinterColumns: + - jsonPath: .status.enabled + name: Enabled + type: boolean + - jsonPath: .status.operationalState + name: Operational State + type: string + - jsonPath: .status.type + name: Type + type: string + - jsonPath: .status.lastChange + name: Last Change + type: date + - jsonPath: .status.serialNumber + name: Part Number + type: string + - jsonPath: .status.partNumber + name: Serial Number + type: string + - jsonPath: .metadata.creationTimestamp + name: Age + type: date +name: v1alpha1 +schema: + openAPIV3Schema: + description: Component is the Schema for the components API + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + description: ComponentSpec defines the desired state of Component + properties: + node: + description: |- + TopologyNode this Component resides on. + Indicates the operation in which to apply the configuration + type: string + slot: + description: Slot this Component resides in, unset for Components that do not have a slot or ID. + type: string + type: + description: Type of Component. + enum: + - FanTray + - PowerSupply + - LineCard + - Control + - Fabric + - Chassis + - Transceiver + type: string + required: + - node + - type + type: object + status: + description: ComponentStatus defines the observed state of Component + properties: + enabled: + description: The administrative status of this Component. + type: boolean + lastChange: + description: The date and time this Component last changed operational state + type: string + manufacturedDate: + description: The date this Component was manufactured + type: string + operationalState: + description: Indicates the current operational state of this Component. + enum: + - Up + - Down + - Rebooting + - Unknown + - Starting + - Empty + type: string + partNumber: + description: The discovered part number of this Component + type: string + serialNumber: + description: The discovered serial number of this Component + type: string + type: + description: Component type, as provided by the node. + type: string + type: object + type: object +served: true +storage: false +subresources: + status: {} diff --git a/static/resources/25.4.2/configlets.config.eda.nokia.com/v1alpha1.yaml b/static/resources/25.4.2/configlets.config.eda.nokia.com/v1alpha1.yaml new file mode 100644 index 0000000..b4525d1 --- /dev/null +++ b/static/resources/25.4.2/configlets.config.eda.nokia.com/v1alpha1.yaml @@ -0,0 +1,95 @@ +name: v1alpha1 +schema: + openAPIV3Schema: + description: Configlet is the Schema for the configlets API + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + description: |- + Configlet is a configuration snippet that can be applied to a set of targets. + The path on the target is provided in jspath notation, and the configuration is provided as a JSON string. + Configlets can be applied to a set of targets based on a label selector, a list of targets, or a combination of both. + properties: + configs: + description: Configurations to apply, being sets of paths, operations and JSON configurations. + items: + properties: + config: + description: JSON-formatted string representing the configuration to apply. + type: string + operation: + default: Create + description: Indicates the operation in which to apply the configuration. + enum: + - Create + - Update + - Delete + type: string + path: + description: Path to apply the configuration in jspath notation, including any keys if relevant, e.g. .system.information. + type: string + required: + - config + - operation + - path + type: object + type: array + endpointSelector: + description: Label selector to use to match targets to deploy Configlet to. + items: + type: string + type: array + endpoints: + description: Reference to targets to deploy Configlet to. + items: + type: string + type: array + operatingSystem: + description: Operating system to match against when selecting targets. + enum: + - srl + - sros + type: string + priority: + default: 0 + description: Priority of this Configlet, between -100 and 100. Higher priorities overwrite lower priorities in the event of conflicts. + format: int32 + maximum: 100 + minimum: -100 + type: integer + version: + description: Version to match against when selecting targets. + type: string + required: + - configs + type: object + status: + description: Deployment status of this Configlet. + properties: + endpoints: + description: List of targets this configlet has been applied to. + items: + type: string + type: array + type: object + type: object +served: true +storage: true +subresources: + status: {} diff --git a/static/resources/25.4.2/configletstates.config.eda.nokia.com/v1alpha1.yaml b/static/resources/25.4.2/configletstates.config.eda.nokia.com/v1alpha1.yaml new file mode 100644 index 0000000..da2ee7c --- /dev/null +++ b/static/resources/25.4.2/configletstates.config.eda.nokia.com/v1alpha1.yaml @@ -0,0 +1,39 @@ +name: v1alpha1 +schema: + openAPIV3Schema: + description: ConfigletState is the Schema for the configletstates API + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + description: ConfigletStateSpec defines the desired state of ConfigletState + properties: + endpoints: + description: List of endpoints this configlet has been applied to + items: + type: string + type: array + type: object + status: + description: ConfigletStateStatus defines the observed state of ConfigletState + type: object + type: object +served: true +storage: true +subresources: + status: {} diff --git a/static/resources/25.4.2/controlmodules.components.eda.nokia.com/v1.yaml b/static/resources/25.4.2/controlmodules.components.eda.nokia.com/v1.yaml new file mode 100644 index 0000000..565839a --- /dev/null +++ b/static/resources/25.4.2/controlmodules.components.eda.nokia.com/v1.yaml @@ -0,0 +1,122 @@ +name: v1 +schema: + openAPIV3Schema: + description: ControlModule is the Schema for the controlmodules API + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + description: ControlModuleSpec defines the desired state of ControlModule + type: object + status: + description: ControlModuleStatus defines the observed state of ControlModule + properties: + commonLanguageEquipmentIdentifier: + description: The CLEI code of this component + type: string + lastBooted: + description: The date and time this component last booted + type: string + lastChange: + description: The date and time this component last changed operational state + type: string + locatorEnabled: + description: Indicates if the locator LED for the component is active + type: boolean + manufacturedDate: + description: The date this component was manufactured + type: string + operationalState: + description: Indicates the current operational state of this component. + enum: + - Up + - Down + - Rebooting + - Unknown + - Starting + - Empty + type: string + parent: + description: Reference to a parent component + type: string + parentType: + description: Type of the parent component + enum: + - Fan + - FanTray + - PowerSupply + - PowerModule + - PowerShelf + - InterfaceModule + - ControlModule + - FabricModule + - Chassis + - Transceiver + type: string + partNumber: + description: The discovered part number of this component + type: string + removable: + description: Indicates if this component is removable + type: boolean + role: + description: Role of the control module + enum: + - Active + - Standby + type: string + serialNumber: + description: The discovered serial number of this component + type: string + slot: + description: Slot this component resides in, unset for components that do not have a slot or ID + type: string + softwareVersion: + description: Version string of the software running on this component + type: string + target: + description: Target this component resides on. + type: string + temperature: + description: Temperature information for this component + properties: + alarmState: + description: The temperature alarm state, as reported by the component + type: boolean + instant: + description: The current temperature of this component + type: integer + margin: + description: The margin temperature of this component + type: integer + maximum: + description: The maximum temperature of this component + type: integer + threshold: + description: The threshold temperature of this component + type: integer + type: object + type: + description: Component type, as provided by the target + type: string + type: object + type: object +served: true +storage: true +subresources: + status: {} diff --git a/static/resources/25.4.2/controlplanefilters.filters.eda.nokia.com/v1alpha1.yaml b/static/resources/25.4.2/controlplanefilters.filters.eda.nokia.com/v1alpha1.yaml new file mode 100644 index 0000000..b6d06da --- /dev/null +++ b/static/resources/25.4.2/controlplanefilters.filters.eda.nokia.com/v1alpha1.yaml @@ -0,0 +1,639 @@ +name: v1alpha1 +schema: + openAPIV3Schema: + description: ControlPlaneFilter is the Schema for the controlplanefilters API + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + description: ControlPlaneFilter allows for specifying a list of Nodes or Node selectors where the filter should be applied and managing filter entries in order. + properties: + entries: + description: Specifies the list of filter entries, in order. + items: + properties: + ipEntry: + properties: + action: + description: An action to take, either 'Accept','Drop', or 'RateLimit'. + enum: + - Drop + - Accept + - RateLimit + type: string + destinationPortName: + description: Destination port to match by name. + enum: + - ACAP + - AFP-TCP + - ARNS + - ASF-RMCP + - ASHARE + - ATALK-RM + - AURP + - AUTH + - BFD + - BFD-ECHO + - BFTP + - BGMP + - BGP + - BOOTPC + - BOOTPS + - CCSO-NS + - CHARGEN + - CISCO-TDP + - CITADEL + - CLEARCASE + - COMMERCE + - COURIER + - DAYTIME + - DHCP-FAILOVER + - DHCPV6-CLIENT + - DHCPV6-SERVER + - DICOM + - DISCARD + - DNSIX + - DOMAIN + - DSP + - ECHO + - EPP + - ESRO + - EXEC + - FINGER + - FTP + - FTP-DATA + - FTPS + - FTPS-DATA + - GODI + - GOPHER + - GTP-C + - GTP-PRIME + - GTP-U + - HA-CLUSTER + - HOSTNAME + - HP-ALARM-MGR + - HTTP + - HTTP-ALT + - HTTP-MGMT + - HTTP-RPC + - HTTPS + - IEEE-MMS-SSL + - IMAP + - IMAP3 + - IMAPS + - IPP + - IPSEC + - IPX + - IRC + - IRIS-BEEP + - ISAKMP + - ISAKMP-NAT + - ISCSI + - ISO-TSAP + - KERBEROS + - KERBEROS-ADM + - KLOGIN + - KPASSWD + - KSHELL + - L2TP + - LDAP + - LDAPS + - LDP + - LMP + - LOGIN + - LPD + - LSP-PING + - MAC-SERVER-ADM + - MATIP-A + - MATIP-B + - MICRO-BFD + - MICROSOFT-DS + - MOBILE-IP + - MONITOR + - MPP + - MS-EXCHANGE + - MSDP + - MSP + - MSSQL-M + - MSSQL-S + - MULTIHOP-BFD + - NAS + - NCP + - NETBIOS-DATA + - NETBIOS-NS + - NETBIOS-SS + - NETNEWS + - NETRJS-1 + - NETRJS-2 + - NETRJS-3 + - NETRJS-4 + - NETWALL + - NEW-RWHO + - NFS + - NNTP + - NNTPS + - NTP + - ODMR + - OLSR + - OPENVPN + - PIM-AUTO-RP + - PKIX-TIMESTAMP + - POP2 + - POP3 + - POP3S + - PPTP + - PRINT-SRV + - PTP-EVENT + - PTP-GENERAL + - QMTP + - QOTD + - RADIUS + - RADIUS-ACCT + - REMOTE-MAIL + - REMOTEFS + - REMOTECMD + - RIP + - RJE + - RLP + - RLZDB + - RMC + - RMONITOR + - RPC2PORTMAP + - RSYNC + - RTELNET + - RTSP + - SGMP + - SILC + - SMUX + - SNA-GW + - SNMP + - SNMP-TRAP + - SNPP + - SMTP + - SQL-SVCS + - SQL + - SSH + - SUBMISSION + - SUNRPC + - SVCLOC + - SYSLOG + - SYSTAT + - TACACS + - TALK + - TCPMUX + - TCPNETHASPSRV + - TFTP + - TIME + - TIMED + - UPS + - XDMCP + - XNS-CH + - XNS-MAIL + - XNS-TIME + - Z3950 + type: string + destinationPortNumber: + description: Destination port to match by numerical value. + maximum: 65535 + minimum: 0 + type: integer + destinationPortOperator: + description: Operator to use when matching destinationPort, either Equals, GreaterOrEquals, or LessOrEquals. + enum: + - Equals + - GreaterOrEquals + - LessOrEquals + type: string + destinationPortRange: + description: Range of destination ports to match, in the format n-m, e.g. 100-200, The start and end of the range must be port numbers. + type: string + destinationPrefix: + description: Destination prefix to match. + type: string + firstFragment: + description: Match the first fragment only. + type: boolean + fragment: + description: Match any fragment. + type: boolean + icmpCode: + description: Match a specific ICMP code, as a number between 0-255, e.g. 0. + items: + type: integer + maxItems: 255 + minItems: 0 + type: array + icmpTypeName: + description: Match a specific ICMP type by name, e.g. dest-unreachable. + enum: + - DestUnreachable + - Echo + - EchoReply + - EchoRequest + - McastRtrAdv + - McastRtrSolicit + - McastRtrTerm + - MldDone + - MldQuery + - MldReport + - MldV2 + - NeighborAdvertise + - NeighborSolicit + - NodeInfoQuery + - NodeInfoResponse + - PacketTooBig + - ParamProblem + - Redirect + - RouterAdvertise + - RouterRenumber + - RouterSolicit + - SourceQuench + - TimeExceeded + - Timestamp + - TimestampReply + type: string + icmpTypeNumber: + description: Match a specific ICMP type by number. + maximum: 255 + minimum: 0 + type: integer + protocolName: + description: Match a specific IP protocol name (specified in the type field of the IP header). + enum: + - AH + - EGP + - EIGRP + - ESP + - GGP + - GRE + - ICMP + - ICMP6 + - IDRP + - IGMP + - IGP + - IPV4 + - IPV6 + - IPV6-DEST-OPTS + - IPV6-HOP + - L2TP + - MPLS-IN-IP + - NO-NEXT-HDR + - OSPF + - PIM + - ROHC + - RSVP + - SCTP + - ST + - TCP + - UDP + - VRRP + type: string + protocolNumber: + description: Match a specific IP protocol number (specified in the type field of the IP header). + maximum: 255 + minimum: 0 + type: integer + rateLimit: + description: Rate limit to apply when the action is 'RateLimit'. + properties: + burstSize: + description: The maximum burst size in bytes. + format: int32 + type: integer + entrySpecificPolicer: + default: false + description: 'Controls policer instantiation: false for shared instance, true for per-entry instances' + type: boolean + peakRate: + description: The peak rate in kilobytes per second. + format: int32 + type: integer + scope: + default: Global + description: Determines how the policer is applied across subinterfaces. Global applies the policer across all subinterfaces, while Subinterface applies it individually to each subinterface. + enum: + - Global + - Subinterface + type: string + type: object + sourcePortName: + description: Source port to match by name. + enum: + - ACAP + - AFP-TCP + - ARNS + - ASF-RMCP + - ASHARE + - ATALK-RM + - AURP + - AUTH + - BFD + - BFD-ECHO + - BFTP + - BGMP + - BGP + - BOOTPC + - BOOTPS + - CCSO-NS + - CHARGEN + - CISCO-TDP + - CITADEL + - CLEARCASE + - COMMERCE + - COURIER + - DAYTIME + - DHCP-FAILOVER + - DHCPV6-CLIENT + - DHCPV6-SERVER + - DICOM + - DISCARD + - DNSIX + - DOMAIN + - DSP + - ECHO + - EPP + - ESRO + - EXEC + - FINGER + - FTP + - FTP-DATA + - FTPS + - FTPS-DATA + - GODI + - GOPHER + - GTP-C + - GTP-PRIME + - GTP-U + - HA-CLUSTER + - HOSTNAME + - HP-ALARM-MGR + - HTTP + - HTTP-ALT + - HTTP-MGMT + - HTTP-RPC + - HTTPS + - IEEE-MMS-SSL + - IMAP + - IMAP3 + - IMAPS + - IPP + - IPSEC + - IPX + - IRC + - IRIS-BEEP + - ISAKMP + - ISAKMP-NAT + - ISCSI + - ISO-TSAP + - KERBEROS + - KERBEROS-ADM + - KLOGIN + - KPASSWD + - KSHELL + - L2TP + - LDAP + - LDAPS + - LDP + - LMP + - LOGIN + - LPD + - LSP-PING + - MAC-SERVER-ADM + - MATIP-A + - MATIP-B + - MICRO-BFD + - MICROSOFT-DS + - MOBILE-IP + - MONITOR + - MPP + - MS-EXCHANGE + - MSDP + - MSP + - MSSQL-M + - MSSQL-S + - MULTIHOP-BFD + - NAS + - NCP + - NETBIOS-DATA + - NETBIOS-NS + - NETBIOS-SS + - NETNEWS + - NETRJS-1 + - NETRJS-2 + - NETRJS-3 + - NETRJS-4 + - NETWALL + - NEW-RWHO + - NFS + - NNTP + - NNTPS + - NTP + - ODMR + - OLSR + - OPENVPN + - PIM-AUTO-RP + - PKIX-TIMESTAMP + - POP2 + - POP3 + - POP3S + - PPTP + - PRINT-SRV + - PTP-EVENT + - PTP-GENERAL + - QMTP + - QOTD + - RADIUS + - RADIUS-ACCT + - REMOTE-MAIL + - REMOTEFS + - REMOTECMD + - RIP + - RJE + - RLP + - RLZDB + - RMC + - RMONITOR + - RPC2PORTMAP + - RSYNC + - RTELNET + - RTSP + - SGMP + - SILC + - SMUX + - SNA-GW + - SNMP + - SNMP-TRAP + - SNPP + - SMTP + - SQL-SVCS + - SQL + - SSH + - SUBMISSION + - SUNRPC + - SVCLOC + - SYSLOG + - SYSTAT + - TACACS + - TALK + - TCPMUX + - TCPNETHASPSRV + - TFTP + - TIME + - TIMED + - UPS + - XDMCP + - XNS-CH + - XNS-MAIL + - XNS-TIME + - Z3950 + type: string + sourcePortNumber: + description: Source port to match by numerical value. + maximum: 65535 + minimum: 0 + type: integer + sourcePortOperator: + description: Operator to use when matching sourcePort, either Equals, GreaterOrEquals, or LessOrEquals. + enum: + - Equals + - GreaterOrEquals + - LessOrEquals + type: string + sourcePortRange: + description: Range of source ports to match, in the format n-m, e.g. 100-200. The start and end of the range must be port numbers. + type: string + sourcePrefix: + description: Source prefix to match. + type: string + tcpFlags: + description: Match TCP flags, usable with !, &, | and the flags RST, SYN, and ACK. + type: string + type: object + macEntry: + properties: + action: + description: An action to take, either 'Accept','Drop', or 'RateLimit'. + enum: + - Drop + - Accept + - RateLimit + type: string + destinationMAC: + description: Match an Ethernet frame if its destination MAC address logically anded with the mask equals this MAC address. + type: string + destinationMACMask: + description: Match an Ethernet frame if its destination MAC address logically anded with the mask equals the configured MAC address. + type: string + ethertype: + description: An Ethernet frame matches this condition if its ethertype value (after 802.1Q VLAN tags) matches the specified value. + enum: + - ARP + - AUTHENTICATION8021X + - ETHOAM + - FCOE + - FCOEINITIALIZATION + - FLOWCONTROL + - IPV4 + - IPV6 + - LACP + - LLDP + - MACSEC + - MPLSMULTICAST + - MPLSUNICAST + - PBB + - PPPOEDISCOVERY + - PPPOESESSION + - PTP + - ROCE + type: string + outerVLANIDOperator: + description: Operator to use when matching OuterVlanIdValue, either Equals, GreaterOrEquals, or LessOrEquals. + enum: + - Equals + - GreaterOrEquals + - LessOrEquals + type: string + outerVLANIDRange: + description: Range of Outer vlan IDs to match, in the format n-m, e.g. 100-200 + type: string + outerVLANIDValue: + description: Ethernet frame matching criteria based on the outermost VLAN ID found before the subinterface-defining VLAN tag (if any) is removed. A value of 'none' will match only untagged frames. + type: string + rateLimit: + description: Rate limit to apply when the action is 'RateLimit'. + properties: + burstSize: + description: The maximum burst size in bytes. + format: int32 + type: integer + entrySpecificPolicer: + default: false + description: 'Controls policer instantiation: false for shared instance, true for per-entry instances' + type: boolean + peakRate: + description: The peak rate in kilobytes per second. + format: int32 + type: integer + scope: + default: Global + description: Determines how the policer is applied across subinterfaces. Global applies the policer across all subinterfaces, while Subinterface applies it individually to each subinterface. + enum: + - Global + - Subinterface + type: string + type: object + sourceMAC: + description: Match an Ethernet frame if its source MAC address logically anded with the mask equals this MAC address. + type: string + sourceMACMask: + description: Match an Ethernet frame if its source MAC address logically anded with the mask equals the configured MAC address. + type: string + type: object + type: + default: Auto + enum: + - IPV4 + - IPV6 + - MAC + - Auto + type: string + required: + - type + type: object + type: array + nodeSelector: + description: Label selector used to select Toponodes on which to deploy the CPM filter. + items: + type: string + type: array + nodes: + description: Reference to a list of TopoNodes on which to deploy the CPM filter. + items: + type: string + type: array + required: + - entries + type: object + status: + description: ControlPlaneFilterStatus defines the observed state of ControlPlaneFilter + type: object + type: object +served: true +storage: true +subresources: + status: {} diff --git a/static/resources/25.4.2/cpuoverlays.components.eda.nokia.com/v1.yaml b/static/resources/25.4.2/cpuoverlays.components.eda.nokia.com/v1.yaml new file mode 100644 index 0000000..7e556fe --- /dev/null +++ b/static/resources/25.4.2/cpuoverlays.components.eda.nokia.com/v1.yaml @@ -0,0 +1,69 @@ +name: v1 +schema: + openAPIV3Schema: + description: CPUOverlay is the Schema for the CPU overlay + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + description: CPUOverlaySpec defines the desired state of CPUOverlay + properties: + enabled: + description: Enable or disable the generation of the status of this overlay + type: boolean + topology: + description: Reference to the topology that this overlay is extending. + properties: + group: + description: The group of the application which published the topology this overlay is extending. + type: string + name: + description: The name of the resource which published the topology this overlay is extending. + type: string + version: + description: The version of the application which published the topology this overlay is extending. + type: string + required: + - group + - name + - version + type: object + uiDescription: + description: A description of the overlay to expose in the UI + type: string + uiDescriptionKey: + description: The translation key for the description of the overlay to expose in the UI + type: string + uiName: + description: The name of the overlay to expose in the UI + type: string + uiNameKey: + description: The translation key for the name of the overlay to expose in the UI + type: string + required: + - enabled + - topology + type: object + status: + description: CPUOverlayStatus defines the observed state of CPUOverlay + type: object + type: object +served: true +storage: true +subresources: + status: {} diff --git a/static/resources/25.4.2/cpuutiloverlays.topologies.eda.nokia.com/v1alpha1.yaml b/static/resources/25.4.2/cpuutiloverlays.topologies.eda.nokia.com/v1alpha1.yaml new file mode 100644 index 0000000..7b01adb --- /dev/null +++ b/static/resources/25.4.2/cpuutiloverlays.topologies.eda.nokia.com/v1alpha1.yaml @@ -0,0 +1,69 @@ +name: v1alpha1 +schema: + openAPIV3Schema: + description: CPUUtilOverlay is the Schema for the demo overlay + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + description: CPUUtilOverlaySpec defines the desired state of CPUUtilOverlay + properties: + enabled: + description: Enable or disable the generation of the status of this overlay + type: boolean + topology: + description: Reference to the topology that this overlay is extending. + properties: + group: + description: The group of the application which published the topology this overlay is extending. + type: string + name: + description: The name of the resource which published the topology this overlay is extending. + type: string + version: + description: The version of the application which published the topology this overlay is extending. + type: string + required: + - group + - name + - version + type: object + uiDescription: + description: A description of the overlay to expose in the UI + type: string + uiDescriptionKey: + description: The translation key for the description of the overlay to expose in the UI + type: string + uiName: + description: The name of the overlay to expose in the UI + type: string + uiNameKey: + description: The translation key for the name of the overlay to expose in the UI + type: string + required: + - enabled + - topology + type: object + status: + description: CPUUtilOverlayStatus defines the observed state of CPUUtilOverlay + type: object + type: object +served: true +storage: true +subresources: + status: {} diff --git a/static/resources/25.4.2/cxclusters.cx.eda.nokia.com/v1alpha1.yaml b/static/resources/25.4.2/cxclusters.cx.eda.nokia.com/v1alpha1.yaml new file mode 100644 index 0000000..9479296 --- /dev/null +++ b/static/resources/25.4.2/cxclusters.cx.eda.nokia.com/v1alpha1.yaml @@ -0,0 +1,3702 @@ +name: v1alpha1 +schema: + openAPIV3Schema: + properties: + apiVersion: + type: string + kind: + type: string + metadata: + type: object + spec: + properties: + configMap: + properties: + apiVersion: + type: string + binaryData: + additionalProperties: + format: byte + type: string + type: object + data: + additionalProperties: + type: string + type: object + immutable: + type: boolean + kind: + type: string + metadata: + type: object + type: object + env: + items: + properties: + name: + type: string + value: + type: string + valueFrom: + properties: + configMapKeyRef: + properties: + key: + type: string + name: + default: "" + type: string + optional: + type: boolean + required: + - key + type: object + x-kubernetes-map-type: atomic + fieldRef: + properties: + apiVersion: + type: string + fieldPath: + type: string + required: + - fieldPath + type: object + x-kubernetes-map-type: atomic + resourceFieldRef: + properties: + containerName: + type: string + divisor: + anyOf: + - type: integer + - type: string + pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$ + x-kubernetes-int-or-string: true + resource: + type: string + required: + - resource + type: object + x-kubernetes-map-type: atomic + secretKeyRef: + properties: + key: + type: string + name: + default: "" + type: string + optional: + type: boolean + required: + - key + type: object + x-kubernetes-map-type: atomic + type: object + required: + - name + type: object + type: array + labels: + additionalProperties: + type: string + type: object + links: + x-kubernetes-preserve-unknown-fields: true + name: + type: string + skip: + default: false + type: boolean + topology: + properties: + nodes: + items: + properties: + chassisConfiguration: + properties: + chassisType: + type: integer + macAddress: + type: string + required: + - chassisType + - macAddress + type: object + combinedmode: + type: boolean + kind: + default: srl + enum: + - srl + - linux + - srux + - srltest + type: string + name: + type: string + podSpec: + properties: + affinity: + properties: + nodeAffinity: + properties: + preferredDuringSchedulingIgnoredDuringExecution: + items: + properties: + preference: + properties: + matchExpressions: + items: + properties: + key: + type: string + operator: + type: string + values: + items: + type: string + type: array + x-kubernetes-list-type: atomic + required: + - key + - operator + type: object + type: array + x-kubernetes-list-type: atomic + matchFields: + items: + properties: + key: + type: string + operator: + type: string + values: + items: + type: string + type: array + x-kubernetes-list-type: atomic + required: + - key + - operator + type: object + type: array + x-kubernetes-list-type: atomic + type: object + x-kubernetes-map-type: atomic + weight: + format: int32 + type: integer + required: + - preference + - weight + type: object + type: array + x-kubernetes-list-type: atomic + requiredDuringSchedulingIgnoredDuringExecution: + properties: + nodeSelectorTerms: + items: + properties: + matchExpressions: + items: + properties: + key: + type: string + operator: + type: string + values: + items: + type: string + type: array + x-kubernetes-list-type: atomic + required: + - key + - operator + type: object + type: array + x-kubernetes-list-type: atomic + matchFields: + items: + properties: + key: + type: string + operator: + type: string + values: + items: + type: string + type: array + x-kubernetes-list-type: atomic + required: + - key + - operator + type: object + type: array + x-kubernetes-list-type: atomic + type: object + x-kubernetes-map-type: atomic + type: array + x-kubernetes-list-type: atomic + required: + - nodeSelectorTerms + type: object + x-kubernetes-map-type: atomic + type: object + podAffinity: + properties: + preferredDuringSchedulingIgnoredDuringExecution: + items: + properties: + podAffinityTerm: + properties: + labelSelector: + properties: + matchExpressions: + items: + properties: + key: + type: string + operator: + type: string + values: + items: + type: string + type: array + x-kubernetes-list-type: atomic + required: + - key + - operator + type: object + type: array + x-kubernetes-list-type: atomic + matchLabels: + additionalProperties: + type: string + type: object + type: object + x-kubernetes-map-type: atomic + matchLabelKeys: + items: + type: string + type: array + x-kubernetes-list-type: atomic + mismatchLabelKeys: + items: + type: string + type: array + x-kubernetes-list-type: atomic + namespaceSelector: + properties: + matchExpressions: + items: + properties: + key: + type: string + operator: + type: string + values: + items: + type: string + type: array + x-kubernetes-list-type: atomic + required: + - key + - operator + type: object + type: array + x-kubernetes-list-type: atomic + matchLabels: + additionalProperties: + type: string + type: object + type: object + x-kubernetes-map-type: atomic + namespaces: + items: + type: string + type: array + x-kubernetes-list-type: atomic + topologyKey: + type: string + required: + - topologyKey + type: object + weight: + format: int32 + type: integer + required: + - podAffinityTerm + - weight + type: object + type: array + x-kubernetes-list-type: atomic + requiredDuringSchedulingIgnoredDuringExecution: + items: + properties: + labelSelector: + properties: + matchExpressions: + items: + properties: + key: + type: string + operator: + type: string + values: + items: + type: string + type: array + x-kubernetes-list-type: atomic + required: + - key + - operator + type: object + type: array + x-kubernetes-list-type: atomic + matchLabels: + additionalProperties: + type: string + type: object + type: object + x-kubernetes-map-type: atomic + matchLabelKeys: + items: + type: string + type: array + x-kubernetes-list-type: atomic + mismatchLabelKeys: + items: + type: string + type: array + x-kubernetes-list-type: atomic + namespaceSelector: + properties: + matchExpressions: + items: + properties: + key: + type: string + operator: + type: string + values: + items: + type: string + type: array + x-kubernetes-list-type: atomic + required: + - key + - operator + type: object + type: array + x-kubernetes-list-type: atomic + matchLabels: + additionalProperties: + type: string + type: object + type: object + x-kubernetes-map-type: atomic + namespaces: + items: + type: string + type: array + x-kubernetes-list-type: atomic + topologyKey: + type: string + required: + - topologyKey + type: object + type: array + x-kubernetes-list-type: atomic + type: object + podAntiAffinity: + properties: + preferredDuringSchedulingIgnoredDuringExecution: + items: + properties: + podAffinityTerm: + properties: + labelSelector: + properties: + matchExpressions: + items: + properties: + key: + type: string + operator: + type: string + values: + items: + type: string + type: array + x-kubernetes-list-type: atomic + required: + - key + - operator + type: object + type: array + x-kubernetes-list-type: atomic + matchLabels: + additionalProperties: + type: string + type: object + type: object + x-kubernetes-map-type: atomic + matchLabelKeys: + items: + type: string + type: array + x-kubernetes-list-type: atomic + mismatchLabelKeys: + items: + type: string + type: array + x-kubernetes-list-type: atomic + namespaceSelector: + properties: + matchExpressions: + items: + properties: + key: + type: string + operator: + type: string + values: + items: + type: string + type: array + x-kubernetes-list-type: atomic + required: + - key + - operator + type: object + type: array + x-kubernetes-list-type: atomic + matchLabels: + additionalProperties: + type: string + type: object + type: object + x-kubernetes-map-type: atomic + namespaces: + items: + type: string + type: array + x-kubernetes-list-type: atomic + topologyKey: + type: string + required: + - topologyKey + type: object + weight: + format: int32 + type: integer + required: + - podAffinityTerm + - weight + type: object + type: array + x-kubernetes-list-type: atomic + requiredDuringSchedulingIgnoredDuringExecution: + items: + properties: + labelSelector: + properties: + matchExpressions: + items: + properties: + key: + type: string + operator: + type: string + values: + items: + type: string + type: array + x-kubernetes-list-type: atomic + required: + - key + - operator + type: object + type: array + x-kubernetes-list-type: atomic + matchLabels: + additionalProperties: + type: string + type: object + type: object + x-kubernetes-map-type: atomic + matchLabelKeys: + items: + type: string + type: array + x-kubernetes-list-type: atomic + mismatchLabelKeys: + items: + type: string + type: array + x-kubernetes-list-type: atomic + namespaceSelector: + properties: + matchExpressions: + items: + properties: + key: + type: string + operator: + type: string + values: + items: + type: string + type: array + x-kubernetes-list-type: atomic + required: + - key + - operator + type: object + type: array + x-kubernetes-list-type: atomic + matchLabels: + additionalProperties: + type: string + type: object + type: object + x-kubernetes-map-type: atomic + namespaces: + items: + type: string + type: array + x-kubernetes-list-type: atomic + topologyKey: + type: string + required: + - topologyKey + type: object + type: array + x-kubernetes-list-type: atomic + type: object + type: object + annotations: + additionalProperties: + type: string + type: object + containerSpec: + properties: + args: + items: + type: string + type: array + x-kubernetes-list-type: atomic + command: + items: + type: string + type: array + x-kubernetes-list-type: atomic + env: + items: + properties: + name: + type: string + value: + type: string + valueFrom: + properties: + configMapKeyRef: + properties: + key: + type: string + name: + default: "" + type: string + optional: + type: boolean + required: + - key + type: object + x-kubernetes-map-type: atomic + fieldRef: + properties: + apiVersion: + type: string + fieldPath: + type: string + required: + - fieldPath + type: object + x-kubernetes-map-type: atomic + resourceFieldRef: + properties: + containerName: + type: string + divisor: + anyOf: + - type: integer + - type: string + pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$ + x-kubernetes-int-or-string: true + resource: + type: string + required: + - resource + type: object + x-kubernetes-map-type: atomic + secretKeyRef: + properties: + key: + type: string + name: + default: "" + type: string + optional: + type: boolean + required: + - key + type: object + x-kubernetes-map-type: atomic + type: object + required: + - name + type: object + type: array + x-kubernetes-list-map-keys: + - name + x-kubernetes-list-type: map + envFrom: + items: + properties: + configMapRef: + properties: + name: + default: "" + type: string + optional: + type: boolean + type: object + x-kubernetes-map-type: atomic + prefix: + type: string + secretRef: + properties: + name: + default: "" + type: string + optional: + type: boolean + type: object + x-kubernetes-map-type: atomic + type: object + type: array + x-kubernetes-list-type: atomic + image: + type: string + imagePullPolicy: + type: string + lifecycle: + properties: + postStart: + properties: + exec: + properties: + command: + items: + type: string + type: array + x-kubernetes-list-type: atomic + type: object + httpGet: + properties: + host: + type: string + httpHeaders: + items: + properties: + name: + type: string + value: + type: string + required: + - name + - value + type: object + type: array + x-kubernetes-list-type: atomic + path: + type: string + port: + anyOf: + - type: integer + - type: string + x-kubernetes-int-or-string: true + scheme: + type: string + required: + - port + type: object + sleep: + properties: + seconds: + format: int64 + type: integer + required: + - seconds + type: object + tcpSocket: + properties: + host: + type: string + port: + anyOf: + - type: integer + - type: string + x-kubernetes-int-or-string: true + required: + - port + type: object + type: object + preStop: + properties: + exec: + properties: + command: + items: + type: string + type: array + x-kubernetes-list-type: atomic + type: object + httpGet: + properties: + host: + type: string + httpHeaders: + items: + properties: + name: + type: string + value: + type: string + required: + - name + - value + type: object + type: array + x-kubernetes-list-type: atomic + path: + type: string + port: + anyOf: + - type: integer + - type: string + x-kubernetes-int-or-string: true + scheme: + type: string + required: + - port + type: object + sleep: + properties: + seconds: + format: int64 + type: integer + required: + - seconds + type: object + tcpSocket: + properties: + host: + type: string + port: + anyOf: + - type: integer + - type: string + x-kubernetes-int-or-string: true + required: + - port + type: object + type: object + type: object + livenessProbe: + properties: + exec: + properties: + command: + items: + type: string + type: array + x-kubernetes-list-type: atomic + type: object + failureThreshold: + format: int32 + type: integer + grpc: + properties: + port: + format: int32 + type: integer + service: + default: "" + type: string + required: + - port + type: object + httpGet: + properties: + host: + type: string + httpHeaders: + items: + properties: + name: + type: string + value: + type: string + required: + - name + - value + type: object + type: array + x-kubernetes-list-type: atomic + path: + type: string + port: + anyOf: + - type: integer + - type: string + x-kubernetes-int-or-string: true + scheme: + type: string + required: + - port + type: object + initialDelaySeconds: + format: int32 + type: integer + periodSeconds: + format: int32 + type: integer + successThreshold: + format: int32 + type: integer + tcpSocket: + properties: + host: + type: string + port: + anyOf: + - type: integer + - type: string + x-kubernetes-int-or-string: true + required: + - port + type: object + terminationGracePeriodSeconds: + format: int64 + type: integer + timeoutSeconds: + format: int32 + type: integer + type: object + name: + type: string + ports: + items: + properties: + containerPort: + format: int32 + type: integer + hostIP: + type: string + hostPort: + format: int32 + type: integer + name: + type: string + protocol: + default: TCP + type: string + required: + - containerPort + type: object + type: array + x-kubernetes-list-map-keys: + - containerPort + - protocol + x-kubernetes-list-type: map + readinessProbe: + properties: + exec: + properties: + command: + items: + type: string + type: array + x-kubernetes-list-type: atomic + type: object + failureThreshold: + format: int32 + type: integer + grpc: + properties: + port: + format: int32 + type: integer + service: + default: "" + type: string + required: + - port + type: object + httpGet: + properties: + host: + type: string + httpHeaders: + items: + properties: + name: + type: string + value: + type: string + required: + - name + - value + type: object + type: array + x-kubernetes-list-type: atomic + path: + type: string + port: + anyOf: + - type: integer + - type: string + x-kubernetes-int-or-string: true + scheme: + type: string + required: + - port + type: object + initialDelaySeconds: + format: int32 + type: integer + periodSeconds: + format: int32 + type: integer + successThreshold: + format: int32 + type: integer + tcpSocket: + properties: + host: + type: string + port: + anyOf: + - type: integer + - type: string + x-kubernetes-int-or-string: true + required: + - port + type: object + terminationGracePeriodSeconds: + format: int64 + type: integer + timeoutSeconds: + format: int32 + type: integer + type: object + resizePolicy: + items: + properties: + resourceName: + type: string + restartPolicy: + type: string + required: + - resourceName + - restartPolicy + type: object + type: array + x-kubernetes-list-type: atomic + resources: + properties: + claims: + items: + properties: + name: + type: string + request: + type: string + required: + - name + type: object + type: array + x-kubernetes-list-map-keys: + - name + x-kubernetes-list-type: map + limits: + additionalProperties: + anyOf: + - type: integer + - type: string + pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$ + x-kubernetes-int-or-string: true + type: object + requests: + additionalProperties: + anyOf: + - type: integer + - type: string + pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$ + x-kubernetes-int-or-string: true + type: object + type: object + restartPolicy: + type: string + securityContext: + properties: + allowPrivilegeEscalation: + type: boolean + appArmorProfile: + properties: + localhostProfile: + type: string + type: + type: string + required: + - type + type: object + capabilities: + properties: + add: + items: + type: string + type: array + x-kubernetes-list-type: atomic + drop: + items: + type: string + type: array + x-kubernetes-list-type: atomic + type: object + privileged: + type: boolean + procMount: + type: string + readOnlyRootFilesystem: + type: boolean + runAsGroup: + format: int64 + type: integer + runAsNonRoot: + type: boolean + runAsUser: + format: int64 + type: integer + seLinuxOptions: + properties: + level: + type: string + role: + type: string + type: + type: string + user: + type: string + type: object + seccompProfile: + properties: + localhostProfile: + type: string + type: + type: string + required: + - type + type: object + windowsOptions: + properties: + gmsaCredentialSpec: + type: string + gmsaCredentialSpecName: + type: string + hostProcess: + type: boolean + runAsUserName: + type: string + type: object + type: object + startupProbe: + properties: + exec: + properties: + command: + items: + type: string + type: array + x-kubernetes-list-type: atomic + type: object + failureThreshold: + format: int32 + type: integer + grpc: + properties: + port: + format: int32 + type: integer + service: + default: "" + type: string + required: + - port + type: object + httpGet: + properties: + host: + type: string + httpHeaders: + items: + properties: + name: + type: string + value: + type: string + required: + - name + - value + type: object + type: array + x-kubernetes-list-type: atomic + path: + type: string + port: + anyOf: + - type: integer + - type: string + x-kubernetes-int-or-string: true + scheme: + type: string + required: + - port + type: object + initialDelaySeconds: + format: int32 + type: integer + periodSeconds: + format: int32 + type: integer + successThreshold: + format: int32 + type: integer + tcpSocket: + properties: + host: + type: string + port: + anyOf: + - type: integer + - type: string + x-kubernetes-int-or-string: true + required: + - port + type: object + terminationGracePeriodSeconds: + format: int64 + type: integer + timeoutSeconds: + format: int32 + type: integer + type: object + stdin: + type: boolean + stdinOnce: + type: boolean + terminationMessagePath: + type: string + terminationMessagePolicy: + type: string + tty: + type: boolean + volumeDevices: + items: + properties: + devicePath: + type: string + name: + type: string + required: + - devicePath + - name + type: object + type: array + x-kubernetes-list-map-keys: + - devicePath + x-kubernetes-list-type: map + volumeMounts: + items: + properties: + mountPath: + type: string + mountPropagation: + type: string + name: + type: string + readOnly: + type: boolean + recursiveReadOnly: + type: string + subPath: + type: string + subPathExpr: + type: string + required: + - mountPath + - name + type: object + type: array + x-kubernetes-list-map-keys: + - mountPath + x-kubernetes-list-type: map + workingDir: + type: string + required: + - name + type: object + env: + items: + properties: + name: + type: string + value: + type: string + valueFrom: + properties: + configMapKeyRef: + properties: + key: + type: string + name: + default: "" + type: string + optional: + type: boolean + required: + - key + type: object + x-kubernetes-map-type: atomic + fieldRef: + properties: + apiVersion: + type: string + fieldPath: + type: string + required: + - fieldPath + type: object + x-kubernetes-map-type: atomic + resourceFieldRef: + properties: + containerName: + type: string + divisor: + anyOf: + - type: integer + - type: string + pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$ + x-kubernetes-int-or-string: true + resource: + type: string + required: + - resource + type: object + x-kubernetes-map-type: atomic + secretKeyRef: + properties: + key: + type: string + name: + default: "" + type: string + optional: + type: boolean + required: + - key + type: object + x-kubernetes-map-type: atomic + type: object + required: + - name + type: object + type: array + image: + type: string + imagePullSecrets: + items: + properties: + name: + default: "" + type: string + type: object + x-kubernetes-map-type: atomic + type: array + initContainers: + items: + properties: + args: + items: + type: string + type: array + x-kubernetes-list-type: atomic + command: + items: + type: string + type: array + x-kubernetes-list-type: atomic + env: + items: + properties: + name: + type: string + value: + type: string + valueFrom: + properties: + configMapKeyRef: + properties: + key: + type: string + name: + default: "" + type: string + optional: + type: boolean + required: + - key + type: object + x-kubernetes-map-type: atomic + fieldRef: + properties: + apiVersion: + type: string + fieldPath: + type: string + required: + - fieldPath + type: object + x-kubernetes-map-type: atomic + resourceFieldRef: + properties: + containerName: + type: string + divisor: + anyOf: + - type: integer + - type: string + pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$ + x-kubernetes-int-or-string: true + resource: + type: string + required: + - resource + type: object + x-kubernetes-map-type: atomic + secretKeyRef: + properties: + key: + type: string + name: + default: "" + type: string + optional: + type: boolean + required: + - key + type: object + x-kubernetes-map-type: atomic + type: object + required: + - name + type: object + type: array + x-kubernetes-list-map-keys: + - name + x-kubernetes-list-type: map + envFrom: + items: + properties: + configMapRef: + properties: + name: + default: "" + type: string + optional: + type: boolean + type: object + x-kubernetes-map-type: atomic + prefix: + type: string + secretRef: + properties: + name: + default: "" + type: string + optional: + type: boolean + type: object + x-kubernetes-map-type: atomic + type: object + type: array + x-kubernetes-list-type: atomic + image: + type: string + imagePullPolicy: + type: string + lifecycle: + properties: + postStart: + properties: + exec: + properties: + command: + items: + type: string + type: array + x-kubernetes-list-type: atomic + type: object + httpGet: + properties: + host: + type: string + httpHeaders: + items: + properties: + name: + type: string + value: + type: string + required: + - name + - value + type: object + type: array + x-kubernetes-list-type: atomic + path: + type: string + port: + anyOf: + - type: integer + - type: string + x-kubernetes-int-or-string: true + scheme: + type: string + required: + - port + type: object + sleep: + properties: + seconds: + format: int64 + type: integer + required: + - seconds + type: object + tcpSocket: + properties: + host: + type: string + port: + anyOf: + - type: integer + - type: string + x-kubernetes-int-or-string: true + required: + - port + type: object + type: object + preStop: + properties: + exec: + properties: + command: + items: + type: string + type: array + x-kubernetes-list-type: atomic + type: object + httpGet: + properties: + host: + type: string + httpHeaders: + items: + properties: + name: + type: string + value: + type: string + required: + - name + - value + type: object + type: array + x-kubernetes-list-type: atomic + path: + type: string + port: + anyOf: + - type: integer + - type: string + x-kubernetes-int-or-string: true + scheme: + type: string + required: + - port + type: object + sleep: + properties: + seconds: + format: int64 + type: integer + required: + - seconds + type: object + tcpSocket: + properties: + host: + type: string + port: + anyOf: + - type: integer + - type: string + x-kubernetes-int-or-string: true + required: + - port + type: object + type: object + type: object + livenessProbe: + properties: + exec: + properties: + command: + items: + type: string + type: array + x-kubernetes-list-type: atomic + type: object + failureThreshold: + format: int32 + type: integer + grpc: + properties: + port: + format: int32 + type: integer + service: + default: "" + type: string + required: + - port + type: object + httpGet: + properties: + host: + type: string + httpHeaders: + items: + properties: + name: + type: string + value: + type: string + required: + - name + - value + type: object + type: array + x-kubernetes-list-type: atomic + path: + type: string + port: + anyOf: + - type: integer + - type: string + x-kubernetes-int-or-string: true + scheme: + type: string + required: + - port + type: object + initialDelaySeconds: + format: int32 + type: integer + periodSeconds: + format: int32 + type: integer + successThreshold: + format: int32 + type: integer + tcpSocket: + properties: + host: + type: string + port: + anyOf: + - type: integer + - type: string + x-kubernetes-int-or-string: true + required: + - port + type: object + terminationGracePeriodSeconds: + format: int64 + type: integer + timeoutSeconds: + format: int32 + type: integer + type: object + name: + type: string + ports: + items: + properties: + containerPort: + format: int32 + type: integer + hostIP: + type: string + hostPort: + format: int32 + type: integer + name: + type: string + protocol: + default: TCP + type: string + required: + - containerPort + type: object + type: array + x-kubernetes-list-map-keys: + - containerPort + - protocol + x-kubernetes-list-type: map + readinessProbe: + properties: + exec: + properties: + command: + items: + type: string + type: array + x-kubernetes-list-type: atomic + type: object + failureThreshold: + format: int32 + type: integer + grpc: + properties: + port: + format: int32 + type: integer + service: + default: "" + type: string + required: + - port + type: object + httpGet: + properties: + host: + type: string + httpHeaders: + items: + properties: + name: + type: string + value: + type: string + required: + - name + - value + type: object + type: array + x-kubernetes-list-type: atomic + path: + type: string + port: + anyOf: + - type: integer + - type: string + x-kubernetes-int-or-string: true + scheme: + type: string + required: + - port + type: object + initialDelaySeconds: + format: int32 + type: integer + periodSeconds: + format: int32 + type: integer + successThreshold: + format: int32 + type: integer + tcpSocket: + properties: + host: + type: string + port: + anyOf: + - type: integer + - type: string + x-kubernetes-int-or-string: true + required: + - port + type: object + terminationGracePeriodSeconds: + format: int64 + type: integer + timeoutSeconds: + format: int32 + type: integer + type: object + resizePolicy: + items: + properties: + resourceName: + type: string + restartPolicy: + type: string + required: + - resourceName + - restartPolicy + type: object + type: array + x-kubernetes-list-type: atomic + resources: + properties: + claims: + items: + properties: + name: + type: string + request: + type: string + required: + - name + type: object + type: array + x-kubernetes-list-map-keys: + - name + x-kubernetes-list-type: map + limits: + additionalProperties: + anyOf: + - type: integer + - type: string + pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$ + x-kubernetes-int-or-string: true + type: object + requests: + additionalProperties: + anyOf: + - type: integer + - type: string + pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$ + x-kubernetes-int-or-string: true + type: object + type: object + restartPolicy: + type: string + securityContext: + properties: + allowPrivilegeEscalation: + type: boolean + appArmorProfile: + properties: + localhostProfile: + type: string + type: + type: string + required: + - type + type: object + capabilities: + properties: + add: + items: + type: string + type: array + x-kubernetes-list-type: atomic + drop: + items: + type: string + type: array + x-kubernetes-list-type: atomic + type: object + privileged: + type: boolean + procMount: + type: string + readOnlyRootFilesystem: + type: boolean + runAsGroup: + format: int64 + type: integer + runAsNonRoot: + type: boolean + runAsUser: + format: int64 + type: integer + seLinuxOptions: + properties: + level: + type: string + role: + type: string + type: + type: string + user: + type: string + type: object + seccompProfile: + properties: + localhostProfile: + type: string + type: + type: string + required: + - type + type: object + windowsOptions: + properties: + gmsaCredentialSpec: + type: string + gmsaCredentialSpecName: + type: string + hostProcess: + type: boolean + runAsUserName: + type: string + type: object + type: object + startupProbe: + properties: + exec: + properties: + command: + items: + type: string + type: array + x-kubernetes-list-type: atomic + type: object + failureThreshold: + format: int32 + type: integer + grpc: + properties: + port: + format: int32 + type: integer + service: + default: "" + type: string + required: + - port + type: object + httpGet: + properties: + host: + type: string + httpHeaders: + items: + properties: + name: + type: string + value: + type: string + required: + - name + - value + type: object + type: array + x-kubernetes-list-type: atomic + path: + type: string + port: + anyOf: + - type: integer + - type: string + x-kubernetes-int-or-string: true + scheme: + type: string + required: + - port + type: object + initialDelaySeconds: + format: int32 + type: integer + periodSeconds: + format: int32 + type: integer + successThreshold: + format: int32 + type: integer + tcpSocket: + properties: + host: + type: string + port: + anyOf: + - type: integer + - type: string + x-kubernetes-int-or-string: true + required: + - port + type: object + terminationGracePeriodSeconds: + format: int64 + type: integer + timeoutSeconds: + format: int32 + type: integer + type: object + stdin: + type: boolean + stdinOnce: + type: boolean + terminationMessagePath: + type: string + terminationMessagePolicy: + type: string + tty: + type: boolean + volumeDevices: + items: + properties: + devicePath: + type: string + name: + type: string + required: + - devicePath + - name + type: object + type: array + x-kubernetes-list-map-keys: + - devicePath + x-kubernetes-list-type: map + volumeMounts: + items: + properties: + mountPath: + type: string + mountPropagation: + type: string + name: + type: string + readOnly: + type: boolean + recursiveReadOnly: + type: string + subPath: + type: string + subPathExpr: + type: string + required: + - mountPath + - name + type: object + type: array + x-kubernetes-list-map-keys: + - mountPath + x-kubernetes-list-type: map + workingDir: + type: string + required: + - name + type: object + type: array + labels: + additionalProperties: + type: string + type: object + nodeSelector: + additionalProperties: + type: string + type: object + pullPolicy: + enum: + - Always + - Never + - IfNotPresent + type: string + restartPolicy: + type: string + securityContext: + properties: + appArmorProfile: + properties: + localhostProfile: + type: string + type: + type: string + required: + - type + type: object + fsGroup: + format: int64 + type: integer + fsGroupChangePolicy: + type: string + runAsGroup: + format: int64 + type: integer + runAsNonRoot: + type: boolean + runAsUser: + format: int64 + type: integer + seLinuxOptions: + properties: + level: + type: string + role: + type: string + type: + type: string + user: + type: string + type: object + seccompProfile: + properties: + localhostProfile: + type: string + type: + type: string + required: + - type + type: object + supplementalGroups: + items: + format: int64 + type: integer + type: array + x-kubernetes-list-type: atomic + supplementalGroupsPolicy: + type: string + sysctls: + items: + properties: + name: + type: string + value: + type: string + required: + - name + - value + type: object + type: array + x-kubernetes-list-type: atomic + windowsOptions: + properties: + gmsaCredentialSpec: + type: string + gmsaCredentialSpecName: + type: string + hostProcess: + type: boolean + runAsUserName: + type: string + type: object + type: object + sidecars: + items: + properties: + args: + items: + type: string + type: array + x-kubernetes-list-type: atomic + command: + items: + type: string + type: array + x-kubernetes-list-type: atomic + env: + items: + properties: + name: + type: string + value: + type: string + valueFrom: + properties: + configMapKeyRef: + properties: + key: + type: string + name: + default: "" + type: string + optional: + type: boolean + required: + - key + type: object + x-kubernetes-map-type: atomic + fieldRef: + properties: + apiVersion: + type: string + fieldPath: + type: string + required: + - fieldPath + type: object + x-kubernetes-map-type: atomic + resourceFieldRef: + properties: + containerName: + type: string + divisor: + anyOf: + - type: integer + - type: string + pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$ + x-kubernetes-int-or-string: true + resource: + type: string + required: + - resource + type: object + x-kubernetes-map-type: atomic + secretKeyRef: + properties: + key: + type: string + name: + default: "" + type: string + optional: + type: boolean + required: + - key + type: object + x-kubernetes-map-type: atomic + type: object + required: + - name + type: object + type: array + x-kubernetes-list-map-keys: + - name + x-kubernetes-list-type: map + envFrom: + items: + properties: + configMapRef: + properties: + name: + default: "" + type: string + optional: + type: boolean + type: object + x-kubernetes-map-type: atomic + prefix: + type: string + secretRef: + properties: + name: + default: "" + type: string + optional: + type: boolean + type: object + x-kubernetes-map-type: atomic + type: object + type: array + x-kubernetes-list-type: atomic + image: + type: string + imagePullPolicy: + type: string + lifecycle: + properties: + postStart: + properties: + exec: + properties: + command: + items: + type: string + type: array + x-kubernetes-list-type: atomic + type: object + httpGet: + properties: + host: + type: string + httpHeaders: + items: + properties: + name: + type: string + value: + type: string + required: + - name + - value + type: object + type: array + x-kubernetes-list-type: atomic + path: + type: string + port: + anyOf: + - type: integer + - type: string + x-kubernetes-int-or-string: true + scheme: + type: string + required: + - port + type: object + sleep: + properties: + seconds: + format: int64 + type: integer + required: + - seconds + type: object + tcpSocket: + properties: + host: + type: string + port: + anyOf: + - type: integer + - type: string + x-kubernetes-int-or-string: true + required: + - port + type: object + type: object + preStop: + properties: + exec: + properties: + command: + items: + type: string + type: array + x-kubernetes-list-type: atomic + type: object + httpGet: + properties: + host: + type: string + httpHeaders: + items: + properties: + name: + type: string + value: + type: string + required: + - name + - value + type: object + type: array + x-kubernetes-list-type: atomic + path: + type: string + port: + anyOf: + - type: integer + - type: string + x-kubernetes-int-or-string: true + scheme: + type: string + required: + - port + type: object + sleep: + properties: + seconds: + format: int64 + type: integer + required: + - seconds + type: object + tcpSocket: + properties: + host: + type: string + port: + anyOf: + - type: integer + - type: string + x-kubernetes-int-or-string: true + required: + - port + type: object + type: object + type: object + livenessProbe: + properties: + exec: + properties: + command: + items: + type: string + type: array + x-kubernetes-list-type: atomic + type: object + failureThreshold: + format: int32 + type: integer + grpc: + properties: + port: + format: int32 + type: integer + service: + default: "" + type: string + required: + - port + type: object + httpGet: + properties: + host: + type: string + httpHeaders: + items: + properties: + name: + type: string + value: + type: string + required: + - name + - value + type: object + type: array + x-kubernetes-list-type: atomic + path: + type: string + port: + anyOf: + - type: integer + - type: string + x-kubernetes-int-or-string: true + scheme: + type: string + required: + - port + type: object + initialDelaySeconds: + format: int32 + type: integer + periodSeconds: + format: int32 + type: integer + successThreshold: + format: int32 + type: integer + tcpSocket: + properties: + host: + type: string + port: + anyOf: + - type: integer + - type: string + x-kubernetes-int-or-string: true + required: + - port + type: object + terminationGracePeriodSeconds: + format: int64 + type: integer + timeoutSeconds: + format: int32 + type: integer + type: object + name: + type: string + ports: + items: + properties: + containerPort: + format: int32 + type: integer + hostIP: + type: string + hostPort: + format: int32 + type: integer + name: + type: string + protocol: + default: TCP + type: string + required: + - containerPort + type: object + type: array + x-kubernetes-list-map-keys: + - containerPort + - protocol + x-kubernetes-list-type: map + readinessProbe: + properties: + exec: + properties: + command: + items: + type: string + type: array + x-kubernetes-list-type: atomic + type: object + failureThreshold: + format: int32 + type: integer + grpc: + properties: + port: + format: int32 + type: integer + service: + default: "" + type: string + required: + - port + type: object + httpGet: + properties: + host: + type: string + httpHeaders: + items: + properties: + name: + type: string + value: + type: string + required: + - name + - value + type: object + type: array + x-kubernetes-list-type: atomic + path: + type: string + port: + anyOf: + - type: integer + - type: string + x-kubernetes-int-or-string: true + scheme: + type: string + required: + - port + type: object + initialDelaySeconds: + format: int32 + type: integer + periodSeconds: + format: int32 + type: integer + successThreshold: + format: int32 + type: integer + tcpSocket: + properties: + host: + type: string + port: + anyOf: + - type: integer + - type: string + x-kubernetes-int-or-string: true + required: + - port + type: object + terminationGracePeriodSeconds: + format: int64 + type: integer + timeoutSeconds: + format: int32 + type: integer + type: object + resizePolicy: + items: + properties: + resourceName: + type: string + restartPolicy: + type: string + required: + - resourceName + - restartPolicy + type: object + type: array + x-kubernetes-list-type: atomic + resources: + properties: + claims: + items: + properties: + name: + type: string + request: + type: string + required: + - name + type: object + type: array + x-kubernetes-list-map-keys: + - name + x-kubernetes-list-type: map + limits: + additionalProperties: + anyOf: + - type: integer + - type: string + pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$ + x-kubernetes-int-or-string: true + type: object + requests: + additionalProperties: + anyOf: + - type: integer + - type: string + pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$ + x-kubernetes-int-or-string: true + type: object + type: object + restartPolicy: + type: string + securityContext: + properties: + allowPrivilegeEscalation: + type: boolean + appArmorProfile: + properties: + localhostProfile: + type: string + type: + type: string + required: + - type + type: object + capabilities: + properties: + add: + items: + type: string + type: array + x-kubernetes-list-type: atomic + drop: + items: + type: string + type: array + x-kubernetes-list-type: atomic + type: object + privileged: + type: boolean + procMount: + type: string + readOnlyRootFilesystem: + type: boolean + runAsGroup: + format: int64 + type: integer + runAsNonRoot: + type: boolean + runAsUser: + format: int64 + type: integer + seLinuxOptions: + properties: + level: + type: string + role: + type: string + type: + type: string + user: + type: string + type: object + seccompProfile: + properties: + localhostProfile: + type: string + type: + type: string + required: + - type + type: object + windowsOptions: + properties: + gmsaCredentialSpec: + type: string + gmsaCredentialSpecName: + type: string + hostProcess: + type: boolean + runAsUserName: + type: string + type: object + type: object + startupProbe: + properties: + exec: + properties: + command: + items: + type: string + type: array + x-kubernetes-list-type: atomic + type: object + failureThreshold: + format: int32 + type: integer + grpc: + properties: + port: + format: int32 + type: integer + service: + default: "" + type: string + required: + - port + type: object + httpGet: + properties: + host: + type: string + httpHeaders: + items: + properties: + name: + type: string + value: + type: string + required: + - name + - value + type: object + type: array + x-kubernetes-list-type: atomic + path: + type: string + port: + anyOf: + - type: integer + - type: string + x-kubernetes-int-or-string: true + scheme: + type: string + required: + - port + type: object + initialDelaySeconds: + format: int32 + type: integer + periodSeconds: + format: int32 + type: integer + successThreshold: + format: int32 + type: integer + tcpSocket: + properties: + host: + type: string + port: + anyOf: + - type: integer + - type: string + x-kubernetes-int-or-string: true + required: + - port + type: object + terminationGracePeriodSeconds: + format: int64 + type: integer + timeoutSeconds: + format: int32 + type: integer + type: object + stdin: + type: boolean + stdinOnce: + type: boolean + terminationMessagePath: + type: string + terminationMessagePolicy: + type: string + tty: + type: boolean + volumeDevices: + items: + properties: + devicePath: + type: string + name: + type: string + required: + - devicePath + - name + type: object + type: array + x-kubernetes-list-map-keys: + - devicePath + x-kubernetes-list-type: map + volumeMounts: + items: + properties: + mountPath: + type: string + mountPropagation: + type: string + name: + type: string + readOnly: + type: boolean + recursiveReadOnly: + type: string + subPath: + type: string + subPathExpr: + type: string + required: + - mountPath + - name + type: object + type: array + x-kubernetes-list-map-keys: + - mountPath + x-kubernetes-list-type: map + workingDir: + type: string + required: + - name + type: object + type: array + terminationGracePeriodSeconds: + format: int64 + minimum: 0 + type: integer + volumeMounts: + items: + properties: + mountPath: + type: string + mountPropagation: + type: string + name: + type: string + readOnly: + type: boolean + recursiveReadOnly: + type: string + subPath: + type: string + subPathExpr: + type: string + required: + - mountPath + - name + type: object + type: array + volumes: + items: + properties: + awsElasticBlockStore: + properties: + fsType: + type: string + partition: + format: int32 + type: integer + readOnly: + type: boolean + volumeID: + type: string + required: + - volumeID + type: object + azureDisk: + properties: + cachingMode: + type: string + diskName: + type: string + diskURI: + type: string + fsType: + default: ext4 + type: string + kind: + type: string + readOnly: + default: false + type: boolean + required: + - diskName + - diskURI + type: object + azureFile: + properties: + readOnly: + type: boolean + secretName: + type: string + shareName: + type: string + required: + - secretName + - shareName + type: object + cephfs: + properties: + monitors: + items: + type: string + type: array + x-kubernetes-list-type: atomic + path: + type: string + readOnly: + type: boolean + secretFile: + type: string + secretRef: + properties: + name: + default: "" + type: string + type: object + x-kubernetes-map-type: atomic + user: + type: string + required: + - monitors + type: object + cinder: + properties: + fsType: + type: string + readOnly: + type: boolean + secretRef: + properties: + name: + default: "" + type: string + type: object + x-kubernetes-map-type: atomic + volumeID: + type: string + required: + - volumeID + type: object + configMap: + properties: + defaultMode: + format: int32 + type: integer + items: + items: + properties: + key: + type: string + mode: + format: int32 + type: integer + path: + type: string + required: + - key + - path + type: object + type: array + x-kubernetes-list-type: atomic + name: + default: "" + type: string + optional: + type: boolean + type: object + x-kubernetes-map-type: atomic + csi: + properties: + driver: + type: string + fsType: + type: string + nodePublishSecretRef: + properties: + name: + default: "" + type: string + type: object + x-kubernetes-map-type: atomic + readOnly: + type: boolean + volumeAttributes: + additionalProperties: + type: string + type: object + required: + - driver + type: object + downwardAPI: + properties: + defaultMode: + format: int32 + type: integer + items: + items: + properties: + fieldRef: + properties: + apiVersion: + type: string + fieldPath: + type: string + required: + - fieldPath + type: object + x-kubernetes-map-type: atomic + mode: + format: int32 + type: integer + path: + type: string + resourceFieldRef: + properties: + containerName: + type: string + divisor: + anyOf: + - type: integer + - type: string + pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$ + x-kubernetes-int-or-string: true + resource: + type: string + required: + - resource + type: object + x-kubernetes-map-type: atomic + required: + - path + type: object + type: array + x-kubernetes-list-type: atomic + type: object + emptyDir: + properties: + medium: + type: string + sizeLimit: + anyOf: + - type: integer + - type: string + pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$ + x-kubernetes-int-or-string: true + type: object + ephemeral: + properties: + volumeClaimTemplate: + properties: + metadata: + type: object + spec: + properties: + accessModes: + items: + type: string + type: array + x-kubernetes-list-type: atomic + dataSource: + properties: + apiGroup: + type: string + kind: + type: string + name: + type: string + required: + - kind + - name + type: object + x-kubernetes-map-type: atomic + dataSourceRef: + properties: + apiGroup: + type: string + kind: + type: string + name: + type: string + namespace: + type: string + required: + - kind + - name + type: object + resources: + properties: + limits: + additionalProperties: + anyOf: + - type: integer + - type: string + pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$ + x-kubernetes-int-or-string: true + type: object + requests: + additionalProperties: + anyOf: + - type: integer + - type: string + pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$ + x-kubernetes-int-or-string: true + type: object + type: object + selector: + properties: + matchExpressions: + items: + properties: + key: + type: string + operator: + type: string + values: + items: + type: string + type: array + x-kubernetes-list-type: atomic + required: + - key + - operator + type: object + type: array + x-kubernetes-list-type: atomic + matchLabels: + additionalProperties: + type: string + type: object + type: object + x-kubernetes-map-type: atomic + storageClassName: + type: string + volumeAttributesClassName: + type: string + volumeMode: + type: string + volumeName: + type: string + type: object + required: + - spec + type: object + type: object + fc: + properties: + fsType: + type: string + lun: + format: int32 + type: integer + readOnly: + type: boolean + targetWWNs: + items: + type: string + type: array + x-kubernetes-list-type: atomic + wwids: + items: + type: string + type: array + x-kubernetes-list-type: atomic + type: object + flexVolume: + properties: + driver: + type: string + fsType: + type: string + options: + additionalProperties: + type: string + type: object + readOnly: + type: boolean + secretRef: + properties: + name: + default: "" + type: string + type: object + x-kubernetes-map-type: atomic + required: + - driver + type: object + flocker: + properties: + datasetName: + type: string + datasetUUID: + type: string + type: object + gcePersistentDisk: + properties: + fsType: + type: string + partition: + format: int32 + type: integer + pdName: + type: string + readOnly: + type: boolean + required: + - pdName + type: object + gitRepo: + properties: + directory: + type: string + repository: + type: string + revision: + type: string + required: + - repository + type: object + glusterfs: + properties: + endpoints: + type: string + path: + type: string + readOnly: + type: boolean + required: + - endpoints + - path + type: object + hostPath: + properties: + path: + type: string + type: + type: string + required: + - path + type: object + image: + properties: + pullPolicy: + type: string + reference: + type: string + type: object + iscsi: + properties: + chapAuthDiscovery: + type: boolean + chapAuthSession: + type: boolean + fsType: + type: string + initiatorName: + type: string + iqn: + type: string + iscsiInterface: + default: default + type: string + lun: + format: int32 + type: integer + portals: + items: + type: string + type: array + x-kubernetes-list-type: atomic + readOnly: + type: boolean + secretRef: + properties: + name: + default: "" + type: string + type: object + x-kubernetes-map-type: atomic + targetPortal: + type: string + required: + - iqn + - lun + - targetPortal + type: object + name: + type: string + nfs: + properties: + path: + type: string + readOnly: + type: boolean + server: + type: string + required: + - path + - server + type: object + persistentVolumeClaim: + properties: + claimName: + type: string + readOnly: + type: boolean + required: + - claimName + type: object + photonPersistentDisk: + properties: + fsType: + type: string + pdID: + type: string + required: + - pdID + type: object + portworxVolume: + properties: + fsType: + type: string + readOnly: + type: boolean + volumeID: + type: string + required: + - volumeID + type: object + projected: + properties: + defaultMode: + format: int32 + type: integer + sources: + items: + properties: + clusterTrustBundle: + properties: + labelSelector: + properties: + matchExpressions: + items: + properties: + key: + type: string + operator: + type: string + values: + items: + type: string + type: array + x-kubernetes-list-type: atomic + required: + - key + - operator + type: object + type: array + x-kubernetes-list-type: atomic + matchLabels: + additionalProperties: + type: string + type: object + type: object + x-kubernetes-map-type: atomic + name: + type: string + optional: + type: boolean + path: + type: string + signerName: + type: string + required: + - path + type: object + configMap: + properties: + items: + items: + properties: + key: + type: string + mode: + format: int32 + type: integer + path: + type: string + required: + - key + - path + type: object + type: array + x-kubernetes-list-type: atomic + name: + default: "" + type: string + optional: + type: boolean + type: object + x-kubernetes-map-type: atomic + downwardAPI: + properties: + items: + items: + properties: + fieldRef: + properties: + apiVersion: + type: string + fieldPath: + type: string + required: + - fieldPath + type: object + x-kubernetes-map-type: atomic + mode: + format: int32 + type: integer + path: + type: string + resourceFieldRef: + properties: + containerName: + type: string + divisor: + anyOf: + - type: integer + - type: string + pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$ + x-kubernetes-int-or-string: true + resource: + type: string + required: + - resource + type: object + x-kubernetes-map-type: atomic + required: + - path + type: object + type: array + x-kubernetes-list-type: atomic + type: object + secret: + properties: + items: + items: + properties: + key: + type: string + mode: + format: int32 + type: integer + path: + type: string + required: + - key + - path + type: object + type: array + x-kubernetes-list-type: atomic + name: + default: "" + type: string + optional: + type: boolean + type: object + x-kubernetes-map-type: atomic + serviceAccountToken: + properties: + audience: + type: string + expirationSeconds: + format: int64 + type: integer + path: + type: string + required: + - path + type: object + type: object + type: array + x-kubernetes-list-type: atomic + type: object + quobyte: + properties: + group: + type: string + readOnly: + type: boolean + registry: + type: string + tenant: + type: string + user: + type: string + volume: + type: string + required: + - registry + - volume + type: object + rbd: + properties: + fsType: + type: string + image: + type: string + keyring: + default: /etc/ceph/keyring + type: string + monitors: + items: + type: string + type: array + x-kubernetes-list-type: atomic + pool: + default: rbd + type: string + readOnly: + type: boolean + secretRef: + properties: + name: + default: "" + type: string + type: object + x-kubernetes-map-type: atomic + user: + default: admin + type: string + required: + - image + - monitors + type: object + scaleIO: + properties: + fsType: + default: xfs + type: string + gateway: + type: string + protectionDomain: + type: string + readOnly: + type: boolean + secretRef: + properties: + name: + default: "" + type: string + type: object + x-kubernetes-map-type: atomic + sslEnabled: + type: boolean + storageMode: + default: ThinProvisioned + type: string + storagePool: + type: string + system: + type: string + volumeName: + type: string + required: + - gateway + - secretRef + - system + type: object + secret: + properties: + defaultMode: + format: int32 + type: integer + items: + items: + properties: + key: + type: string + mode: + format: int32 + type: integer + path: + type: string + required: + - key + - path + type: object + type: array + x-kubernetes-list-type: atomic + optional: + type: boolean + secretName: + type: string + type: object + storageos: + properties: + fsType: + type: string + readOnly: + type: boolean + secretRef: + properties: + name: + default: "" + type: string + type: object + x-kubernetes-map-type: atomic + volumeName: + type: string + volumeNamespace: + type: string + type: object + vsphereVolume: + properties: + fsType: + type: string + storagePolicyID: + type: string + storagePolicyName: + type: string + volumePath: + type: string + required: + - volumePath + type: object + required: + - name + type: object + type: array + type: object + preferredAddressFamily: + type: string + profile: + type: string + slotConfigurations: + items: + properties: + cardStr: + type: string + cardType: + maximum: 255 + type: integer + mdaStr: + items: + type: string + type: array + mdaType: + maximum: 255 + type: integer + sfmStr: + type: string + slotNumber: + maximum: 60 + type: integer + slotStr: + type: string + xiomStr: + items: + type: string + type: array + required: + - cardType + - slotNumber + type: object + maxItems: 20 + minItems: 1 + type: array + type: + type: string + version: + type: string + required: + - combinedmode + - kind + - name + - profile + - type + - version + type: object + type: array + required: + - nodes + type: object + version: + type: string + required: + - topology + type: object + status: + properties: + generations: + properties: + reconciled: + format: int64 + type: integer + type: object + name: + type: string + pods: + additionalProperties: + properties: + chassisName: + type: string + clusterName: + type: string + cxInfo: + properties: + endpoints: + items: + items: + type: string + type: array + type: array + type: object + image: + type: string + podIP: + type: string + required: + - chassisName + - clusterName + - image + - podIP + type: object + type: object + version: + type: string + required: + - pods + type: object + type: object +served: true +storage: true +subresources: + status: {} diff --git a/static/resources/25.4.2/defaultaggregateroutes.protocols.eda.nokia.com/v1alpha1.yaml b/static/resources/25.4.2/defaultaggregateroutes.protocols.eda.nokia.com/v1alpha1.yaml new file mode 100644 index 0000000..cd16bdc --- /dev/null +++ b/static/resources/25.4.2/defaultaggregateroutes.protocols.eda.nokia.com/v1alpha1.yaml @@ -0,0 +1,58 @@ +name: v1alpha1 +schema: + openAPIV3Schema: + description: DefaultAggregateRoute is the Schema for the defaultaggregateroutes API + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + description: DefaultAggregateRoute allows the configuration of aggregate routes on a DefaultRouter. It includes specifying destination prefixes, the DefaultRouter, and settings for generating ICMP unreachable messages or blocking route advertisement. Additionally, it configures the aggregator’s IP address and ASN for efficient route management. + properties: + aggregatorASN: + description: Specifies the aggregator's ASN. + format: int32 + type: integer + aggregatorIP: + description: Specifies the aggregator's IP address. + type: string + defaultRouter: + description: Reference to a Default Router on which to configure the aggregate routes. If no Nodes are provided then the aggregate routes will be provisioned on all Nodes on which the Router is provisioned. + type: string + generateICMP: + description: When set to true the router generares ICMP unreachable messages for packets matching the aggregate route (and not a more specific route). + type: boolean + prefixes: + description: List of destination prefixes for the aggregate routes. + items: + type: string + type: array + summaryOnly: + description: When set to true the router blocks the advertisement of all contributing routes of this aggregate route in dynamic protocols such as BGP. + type: boolean + required: + - defaultRouter + - prefixes + type: object + status: + description: DefaultAggregateRouteStatus defines the observed state of DefaultAggregateRoute + type: object + type: object +served: true +storage: true +subresources: + status: {} diff --git a/static/resources/25.4.2/defaultbgpgroupdeployments.protocols.eda.nokia.com/v1alpha1.yaml b/static/resources/25.4.2/defaultbgpgroupdeployments.protocols.eda.nokia.com/v1alpha1.yaml new file mode 100644 index 0000000..e685814 --- /dev/null +++ b/static/resources/25.4.2/defaultbgpgroupdeployments.protocols.eda.nokia.com/v1alpha1.yaml @@ -0,0 +1,43 @@ +name: v1alpha1 +schema: + openAPIV3Schema: + description: DefaultBGPGroupDeployment is the Schema for the defaultbgpgroupdeployments API + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + description: DefaultBGPGroupDeploymentSpec defines the desired state of DefaultBGPGroupDeployment + properties: + defaultBGPGroup: + description: Reference to a DefaultBgpGroup + type: string + node: + description: Reference to a Node on which to push the BgpGroup + type: string + required: + - defaultBGPGroup + - node + type: object + status: + description: DefaultBGPGroupDeploymentStatus defines the observed state of DefaultBGPGroupDeployment + type: object + type: object +served: true +storage: true +subresources: + status: {} diff --git a/static/resources/25.4.2/defaultbgpgroups.protocols.eda.nokia.com/v1alpha1.yaml b/static/resources/25.4.2/defaultbgpgroups.protocols.eda.nokia.com/v1alpha1.yaml new file mode 100644 index 0000000..12b6a4b --- /dev/null +++ b/static/resources/25.4.2/defaultbgpgroups.protocols.eda.nokia.com/v1alpha1.yaml @@ -0,0 +1,265 @@ +additionalPrinterColumns: + - jsonPath: .status.lastChange + name: Last Change + type: date + - jsonPath: .status.operationalState + name: Operational State + type: string +name: v1alpha1 +schema: + openAPIV3Schema: + description: DefaultBGPGroup is the Schema for the defaultbgpgroups API + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + description: The DefaultBGPGroup enables centralized management of BGP peer configurations within a DefaultRouter. This resource allows setting a description, common BGP settings, and peer-specific configurations, simplifying the consistent application of policies across multiple peers. It also includes transport settings, such as local TCP address configuration, passive mode, and TCP MSS. type DefaultBGPGroupSpec struct { + properties: + asPathOptions: + description: AS Path Options + properties: + allowOwnAS: + default: 0 + description: The maximum number of times the global AS number or a local AS number of the BGP instance can appear in any received AS_PATH before it is considered a loop and considered invalid. + maximum: 255 + minimum: 0 + type: integer + removePrivateAS: + description: Options for removing private AS numbers (2-byte and 4-byte) from the advertised AS path towards all peers. + properties: + ignorePeerAS: + default: false + description: If set to true then do not delete or replace a private AS number that is the same as the peer AS number. + type: boolean + leadingOnly: + default: false + description: If set to true then only delete or replace private AS numbers that appear before the first occurrence of a non-private ASN in the sequence of most recent ASNs in the AS path. + type: boolean + removePrivateASMode: + default: DISABLED + description: The method by which private AS numbers are removed from the advertised AS_PATH attribute. + enum: + - DISABLED + - REPLACE + - DELETE + type: string + required: + - ignorePeerAS + - leadingOnly + - removePrivateASMode + type: object + required: + - allowOwnAS + type: object + bfd: + description: Enable or disable Bi-forward Forwarding Detection (BFD) with fast failover. + type: boolean + client: + description: When set to true, all configured and dynamic BGP peers are considered RR clients. + type: boolean + clusterID: + description: Enables route reflect client and sets the cluster ID. + type: string + description: + description: Sets the description on the BGP group. + type: string + exportPolicy: + description: Reference to a Policy CR that will be used to filter routes advertised to peers. + items: + type: string + type: array + grStaleRouteTime: + description: Enables Graceful Restart on the peer and sets the stale route time. + maximum: 3600 + minimum: 1 + type: integer + importPolicy: + description: Reference to a Policy CR that will be used to filter routes received from peers. + items: + type: string + type: array + ipv4Unicast: + description: Parameters relating to the IPv4 unicast AFI/SAFI. + properties: + advertiseIPV6NextHops: + description: Enables advertisement of IPv4 Unicast routes with IPv6 next-hops to peers. + type: boolean + enabled: + description: Enables the IPv4 unicast AFISAFI. + type: boolean + maxReceivedRoutes: + description: Maximum number of IPv4 Unicast routes that will be accepted from the neighbor, counting routes accepted and rejected by import policies. + maximum: 4294967295 + minimum: 1 + type: integer + receiveIPV6NextHops: + description: Enables the advertisement of the RFC 5549 capability to receive IPv4 routes with IPv6 next-hops. + type: boolean + type: object + ipv6Unicast: + description: Parameters relating to the IPv6 unicast AFI/SAFI. + properties: + enabled: + description: Enables the IPv6 unicast AFISAFI + type: boolean + maxReceivedRoutes: + description: Maximum number of IPv6 Unicast routes that will be accepted from the neighbor, counting routes accepted and rejected by import policies. + maximum: 4294967295 + minimum: 1 + type: integer + type: object + keychain: + description: Reference to a Keychain resource that will be used for authentication with the BGP peer. + type: string + l2VPNEVPN: + description: Parameters relating to the EVPN AFI/SAFI. + properties: + advertiseIPV6NextHops: + description: Enables advertisement of EVPN routes with IPv6 next-hops to peers. + type: boolean + enabled: + description: Enables the L2VPN EVPN AFISAFI. + type: boolean + maxReceivedRoutes: + description: Maximum number of EVPN routes that will be accepted from the neighbor, counting routes accepted and rejected by import policies. + maximum: 4294967295 + minimum: 1 + type: integer + type: object + localAS: + description: The local autonomous system number advertised to peers. + properties: + autonomousSystem: + description: Local Autonomous System number. + maximum: 4294967295 + minimum: 1 + type: integer + prependGlobalAS: + description: When set to true, the global ASN value is prepended to the AS path in outbound routes towards each BGP peer. + type: boolean + prependLocalAS: + description: When set to true, the local AS value is prepended to the AS path of inbound routes from each EBGP peer. + type: boolean + required: + - autonomousSystem + type: object + localPreference: + description: Local Preference attribute added to received routes from the BGP peers, also sets local preference for generated routes. + maximum: 4294967295 + minimum: 0 + type: integer + multiHopMaxHop: + description: Enable multihop for eBGP peers and sets the maximum number of hops allowed. + maximum: 255 + minimum: 1 + type: integer + nextHopSelf: + description: When set to true, the next-hop in all IPv4-unicast, IPv6-unicast and EVPN BGP routes advertised to the peer is set to the local-address. + type: boolean + peerAS: + description: The autonomous system number expected from peers. + properties: + autonomousSystem: + description: Local Autonomous System number. + maximum: 4294967295 + minimum: 1 + type: integer + required: + - autonomousSystem + type: object + sendCommunityLarge: + description: When false, all large (12 byte) BGP communities from all outbound routes advertised to the peer are stripped. + type: boolean + sendCommunityStandard: + description: When false, all standard (4 byte) communities from all outbound routes advertised to the peer are stripped. + type: boolean + sendDefaultRoute: + description: Options for controlling the generation of default routes towards BGP peers. + properties: + addressFamily: + description: Enables the sending of a synthetically generated default IPv4 or IPV6 route to each peer. + items: + enum: + - IPV4-UNICAST + - IPV6-UNICAST + type: string + type: array + exportPolicy: + description: Reference to a Policy that should be applied to the advertised default routes, in order to set their attributes to non-default values. + type: string + required: + - addressFamily + type: object + timers: + description: Timer configurations + properties: + connectRetry: + description: The time interval in seconds between successive attempts to establish a session with a peer. + maximum: 65535 + minimum: 1 + type: integer + holdTime: + description: The hold-time interval in seconds that the router proposes to the peer in its OPEN message. + maximum: 65535 + minimum: 0 + type: integer + keepAlive: + description: The interval in seconds between successive keepalive messages sent to the peer. + maximum: 21845 + minimum: 0 + type: integer + minimumAdvertisementInterval: + description: The value assigned to the MinRouteAdvertisementIntervalTimer of RFC 4271, for both EBGP and IBGP sessions. + maximum: 255 + minimum: 1 + type: integer + type: object + type: object + status: + description: DefaultBGPGroupStatus defines the observed state of DefaultBGPGroup. + properties: + health: + description: Indicates the health score of the BGP group. + type: integer + healthScoreReason: + description: Indicates the reason for the health score. + type: string + lastChange: + description: The time when the state of the resource last changed. + type: string + numPeers: + description: Number of configured BGP peers within the BGP Group. + format: int32 + type: integer + numPeersOperDown: + description: Number of configured BGP peers which have an Operational State of down within the BGP Group. + format: int32 + type: integer + numPeersUnknown: + description: Number of configured BGP peers within the BGP Group which cannot be reached by npp. + format: int32 + type: integer + operationalState: + description: Operational state of the BGP group. + type: string + type: object + type: object +served: true +storage: true +subresources: + status: {} diff --git a/static/resources/25.4.2/defaultbgppeers.protocols.eda.nokia.com/v1alpha1.yaml b/static/resources/25.4.2/defaultbgppeers.protocols.eda.nokia.com/v1alpha1.yaml new file mode 100644 index 0000000..1b1df56 --- /dev/null +++ b/static/resources/25.4.2/defaultbgppeers.protocols.eda.nokia.com/v1alpha1.yaml @@ -0,0 +1,323 @@ +additionalPrinterColumns: + - jsonPath: .status.sessionState + name: Session State + type: string + - jsonPath: .status.lastChange + name: Last Change + type: date + - jsonPath: .status.enabled + name: Enabled + type: boolean + - jsonPath: .status.operationalState + name: Operational State + type: string + - jsonPath: .status.peerAS + name: PeerAS + type: integer +name: v1alpha1 +schema: + openAPIV3Schema: + description: DefaultBGPPeer is the Schema for the defaultbgppeers API + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + description: DefaultBGPPeer enables the configuration of BGP sessions within a DefaultRouter. It allows specifying a description, a DefaultInterface reference, and the peer IP address. The resource also supports dynamic neighbors, common BGP settings, and peer-specific configurations. + properties: + asPathOptions: + description: AS Path Options + properties: + allowOwnAS: + default: 0 + description: The maximum number of times the global AS number or a local AS number of the BGP instance can appear in any received AS_PATH before it is considered a loop and considered invalid. + maximum: 255 + minimum: 0 + type: integer + removePrivateAS: + description: Options for removing private AS numbers (2-byte and 4-byte) from the advertised AS path towards all peers. + properties: + ignorePeerAS: + default: false + description: If set to true then do not delete or replace a private AS number that is the same as the peer AS number. + type: boolean + leadingOnly: + default: false + description: If set to true then only delete or replace private AS numbers that appear before the first occurrence of a non-private ASN in the sequence of most recent ASNs in the AS path. + type: boolean + removePrivateASMode: + default: DISABLED + description: The method by which private AS numbers are removed from the advertised AS_PATH attribute. + enum: + - DISABLED + - REPLACE + - DELETE + type: string + required: + - ignorePeerAS + - leadingOnly + - removePrivateASMode + type: object + required: + - allowOwnAS + type: object + bfd: + description: Enable or disable Bi-forward Forwarding Detection (BFD) with fast failover. + type: boolean + client: + description: When set to true, all configured and dynamic BGP peers are considered RR clients. + type: boolean + clusterID: + description: Enables route reflect client and sets the cluster ID. + type: string + description: + description: Sets the description on the BGP peer. + type: string + dynamicNeighbor: + default: false + description: When set to true the DefaultInterface is added to the dynamic-neighbor list for dynamic peering. + type: boolean + dynamicNeighborAllowedPeerAS: + description: The autonomous system numbers allowed from peers if dynamic peering is enabled. + items: + type: integer + type: array + exportPolicy: + description: Reference to a Policy CR that will be used to filter routes advertised to peers. + items: + type: string + type: array + grStaleRouteTime: + description: Enables Graceful Restart on the peer and sets the stale route time. + maximum: 3600 + minimum: 1 + type: integer + group: + description: Reference to a DefaultBGPGroup. + type: string + importPolicy: + description: Reference to a Policy CR that will be used to filter routes received from peers. + items: + type: string + type: array + interface: + description: Reference to either a DefaultInterface or SystemInterface whose IP will be used as a source IP for the BGP session. + type: string + interfaceKind: + description: Reference to a the Kind of interface whose IP will be used as a source IP for the BGP session. + enum: + - DEFAULTINTERFACE + - SYSTEMINTERFACE + type: string + ipv4Unicast: + description: Parameters relating to the IPv4 unicast AFI/SAFI. + properties: + advertiseIPV6NextHops: + description: Enables advertisement of IPv4 Unicast routes with IPv6 next-hops to peers. + type: boolean + enabled: + description: Enables the IPv4 unicast AFISAFI. + type: boolean + maxReceivedRoutes: + description: Maximum number of IPv4 Unicast routes that will be accepted from the neighbor, counting routes accepted and rejected by import policies. + maximum: 4294967295 + minimum: 1 + type: integer + receiveIPV6NextHops: + description: Enables the advertisement of the RFC 5549 capability to receive IPv4 routes with IPv6 next-hops. + type: boolean + type: object + ipv6Unicast: + description: Parameters relating to the IPv6 unicast AFI/SAFI. + properties: + enabled: + description: Enables the IPv6 unicast AFISAFI + type: boolean + maxReceivedRoutes: + description: Maximum number of IPv6 Unicast routes that will be accepted from the neighbor, counting routes accepted and rejected by import policies. + maximum: 4294967295 + minimum: 1 + type: integer + type: object + keychain: + description: Reference to a Keychain resource that will be used for authentication with the BGP peer. + type: string + l2VPNEVPN: + description: Parameters relating to the EVPN AFI/SAFI. + properties: + advertiseIPV6NextHops: + description: Enables advertisement of EVPN routes with IPv6 next-hops to peers. + type: boolean + enabled: + description: Enables the L2VPN EVPN AFISAFI. + type: boolean + maxReceivedRoutes: + description: Maximum number of EVPN routes that will be accepted from the neighbor, counting routes accepted and rejected by import policies. + maximum: 4294967295 + minimum: 1 + type: integer + type: object + localAS: + description: The local autonomous system number advertised to peers. + properties: + autonomousSystem: + description: Local Autonomous System number. + maximum: 4294967295 + minimum: 1 + type: integer + prependGlobalAS: + description: When set to true, the global ASN value is prepended to the AS path in outbound routes towards each BGP peer. + type: boolean + prependLocalAS: + description: When set to true, the local AS value is prepended to the AS path of inbound routes from each EBGP peer. + type: boolean + required: + - autonomousSystem + type: object + localPreference: + description: Local Preference attribute added to received routes from the BGP peers, also sets local preference for generated routes. + maximum: 4294967295 + minimum: 0 + type: integer + multiHopMaxHop: + description: Enable multihop for eBGP peers and sets the maximum number of hops allowed. + maximum: 255 + minimum: 1 + type: integer + nextHopSelf: + description: When set to true, the next-hop in all IPv4-unicast, IPv6-unicast and EVPN BGP routes advertised to the peer is set to the local-address. + type: boolean + peerAS: + description: The autonomous system number expected from peers. + properties: + autonomousSystem: + description: Local Autonomous System number. + maximum: 4294967295 + minimum: 1 + type: integer + required: + - autonomousSystem + type: object + peerIP: + description: Peer IP to which the peering session will be established. There cannot be both a PeerIp and PeerDefaultInterface property set. + type: string + peerInterface: + description: Reference to a DefaultInterface or SystemInterface resource to which the peering session will be established. There cannot be both a PeerIp and PeerDefaultInterface property set. + type: string + peerInterfaceKind: + description: Reference to a the Kind of interface to which to peer to. + enum: + - DEFAULTINTERFACE + - SYSTEMINTERFACE + type: string + sendCommunityLarge: + description: When false, all large (12 byte) BGP communities from all outbound routes advertised to the peer are stripped. + type: boolean + sendCommunityStandard: + description: When false, all standard (4 byte) communities from all outbound routes advertised to the peer are stripped. + type: boolean + sendDefaultRoute: + description: Options for controlling the generation of default routes towards BGP peers. + properties: + addressFamily: + description: Enables the sending of a synthetically generated default IPv4 or IPV6 route to each peer. + items: + enum: + - IPV4-UNICAST + - IPV6-UNICAST + type: string + type: array + exportPolicy: + description: Reference to a Policy that should be applied to the advertised default routes, in order to set their attributes to non-default values. + type: string + required: + - addressFamily + type: object + timers: + description: Timer configurations + properties: + connectRetry: + description: The time interval in seconds between successive attempts to establish a session with a peer. + maximum: 65535 + minimum: 1 + type: integer + holdTime: + description: The hold-time interval in seconds that the router proposes to the peer in its OPEN message. + maximum: 65535 + minimum: 0 + type: integer + keepAlive: + description: The interval in seconds between successive keepalive messages sent to the peer. + maximum: 21845 + minimum: 0 + type: integer + minimumAdvertisementInterval: + description: The value assigned to the MinRouteAdvertisementIntervalTimer of RFC 4271, for both EBGP and IBGP sessions. + maximum: 255 + minimum: 1 + type: integer + type: object + required: + - group + - interface + - interfaceKind + type: object + status: + description: DefaultBGPPeerStatus defines the observed state of DefaultBGPPeer + properties: + enabled: + description: Indicated whether the BGP Peer is administratively enabled. + type: boolean + health: + description: Indicates the health score of the BGP peer. + type: integer + healthScoreReason: + description: Indicates the reason for the health score. + type: string + lastChange: + description: The time when the state of the resource last changed. + type: string + lastEvent: + description: Last event of the BGP peer. + type: string + lastState: + description: Last state of the BGP peer. + type: string + negotiatedHoldTime: + description: Hold time negotiated with the BGP peer. + type: integer + negotiatedKeepaliveInterval: + description: Keepalive interval negotiated with the BGP peer. + type: integer + operationalState: + description: Operational state of the BGP peer + type: string + peerAS: + description: Peer AS of the BGP peer. + type: integer + sessionState: + description: The state of the BGP session. + type: string + underMaintenance: + description: Indicates if the BGP peer is under maintenance. + type: boolean + type: object + type: object +served: true +storage: true +subresources: + status: {} diff --git a/static/resources/25.4.2/defaultinterfaces.routing.eda.nokia.com/v1alpha1.yaml b/static/resources/25.4.2/defaultinterfaces.routing.eda.nokia.com/v1alpha1.yaml new file mode 100644 index 0000000..f356e2d --- /dev/null +++ b/static/resources/25.4.2/defaultinterfaces.routing.eda.nokia.com/v1alpha1.yaml @@ -0,0 +1,144 @@ +additionalPrinterColumns: + - jsonPath: .status.lastChange + name: Last Change + type: date + - jsonPath: .status.operationalState + name: Operational State + type: string +name: v1alpha1 +schema: + openAPIV3Schema: + description: DefaultInterface is the Schema for the defaultinterfaces API + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + description: DefaultInterface enables the configuration of default interfaces, including Interface references, DefaultRouter, VLAN IDs, IP MTU settings, and options for IPv4 and IPv6 addresses. It also supports unnumbered interfaces and BFD (Bidirectional Forwarding Detection) configuration. + properties: + bfd: + description: Enable or disable BFD on this DefaultInterface. + properties: + desiredMinTransmitInt: + default: 1000000 + description: The minimum interval in microseconds between transmission of BFD control packets[default=1000000]. + maximum: 100000000 + minimum: 10000 + type: integer + detectionMultiplier: + default: 3 + description: The number of packets that must be missed to declare this session as down. [default=3] + maximum: 20 + minimum: 3 + type: integer + enabled: + default: false + description: Enable Biforward Detection[default=false]. + type: boolean + minEchoReceiveInterval: + default: 1000000 + description: The minimum interval between echo packets the local node can receive in microseconds + maximum: 100000000 + minimum: 0 + type: integer + requiredMinReceive: + default: 1000000 + description: The minimum interval in microseconds between received BFD control packets that this system should support.[default=1000000]. + maximum: 100000000 + minimum: 10000 + type: integer + required: + - desiredMinTransmitInt + - detectionMultiplier + - enabled + - minEchoReceiveInterval + - requiredMinReceive + type: object + defaultRouter: + description: Reference to a DefaultRouter. + type: string + interface: + description: Reference to an Interface to use for attachment. + type: string + ipMTU: + description: Set the IP MTU for the DefaultInterface. + maximum: 9486 + minimum: 1280 + type: integer + ipv4Addresses: + description: List of IPv4 addresses in ip/mask form, e.g., 192.168.0.1/24. + items: + properties: + ipPrefix: + description: Address and mask to use + type: string + primary: + description: Indicates which address to use as primary for broadcast + type: boolean + required: + - ipPrefix + type: object + type: array + ipv6Addresses: + description: List of IPv6 addresses in ip/mask form, e.g., fc00::1/120. + items: + properties: + ipPrefix: + description: Address and mask to use + type: string + primary: + description: Indicates which address to use as primary for broadcast + type: boolean + required: + - ipPrefix + type: object + type: array + unnumbered: + description: Enables the use of unnumbered interfaces on the ISL. For IPv6, no IP address are configured on the sub-interface and only the link local address will be used. If any allocation pool is specified for IPv6 that will take precedence and IPs will be assigned to the interfaces. When using eBGP for an underlay protocol, the DefaultInterfaces which are a part of the ISL will be added to the BGP dynamic neighbor list. + enum: + - IPV6 + type: string + vlanID: + description: VLAN to use with this DefaultInterface. + maximum: 4094 + minimum: 1 + type: integer + required: + - defaultRouter + - interface + type: object + status: + description: DefaultInterfaceStatus defines the observed state of DefaultInterface + properties: + health: + description: Indicates the health score of the DefaultInterface. + type: integer + healthScoreReason: + description: Indicates the reason for the health score. + type: string + lastChange: + description: Indicates when this Interface last changed state. + type: string + operationalState: + description: Indicates the current operational state of the DefaultInterface. + type: string + type: object + type: object +served: true +storage: true +subresources: + status: {} diff --git a/static/resources/25.4.2/defaultinterfacestates.routing.eda.nokia.com/v1alpha1.yaml b/static/resources/25.4.2/defaultinterfacestates.routing.eda.nokia.com/v1alpha1.yaml new file mode 100644 index 0000000..05660ab --- /dev/null +++ b/static/resources/25.4.2/defaultinterfacestates.routing.eda.nokia.com/v1alpha1.yaml @@ -0,0 +1,105 @@ +name: v1alpha1 +schema: + openAPIV3Schema: + description: DefaultInterfaceState is the Schema for the defaultinterfacestates API + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + description: DefaultInterfaceStateSpec defines the desired state of DefaultInterfaceState + properties: + bfdEnabled: + description: Indicates if bfd is enabled or disabled + type: boolean + defaultNodeInterface: + description: Node specific default interface name, for example "ethernet-1/1.0", "if-1/1/c1/1" + type: string + defaultRouter: + description: Reference to a DefaultRouter + type: string + interface: + description: Reference to an interface + type: string + interfaceEnabled: + description: Indicates if the interface is enabled or disabled + type: boolean + ipv4Addresses: + description: List of IPv4 addresses + items: + properties: + ipPrefix: + description: Address and mask to use + type: string + primary: + description: Indicates which address to use as primary for broadcast + type: boolean + required: + - ipPrefix + type: object + type: array + ipv6Addresses: + description: List of IPv6 addresses + items: + properties: + ipPrefix: + description: Address and mask to use + type: string + primary: + description: Indicates which address to use as primary for broadcast + type: boolean + required: + - ipPrefix + type: object + type: array + networkInstanceName: + description: The name of the network-instance or base routing instance in which the DefaultInterface is configured + type: string + node: + description: Reference to Node object + type: string + nodeInterface: + description: Node specific interface name, for example "ethernet-1/1", "1/1/c1/1" + type: string + operatingSystem: + description: Operating System of the Node + type: string + subInterfaceIndex: + description: Index of the subinterface + type: integer + unnumbered: + description: Indicates if the interface is unnumbered + enum: + - IPV6 + type: string + required: + - defaultNodeInterface + - defaultRouter + - interface + - interfaceEnabled + - networkInstanceName + - node + - nodeInterface + type: object + status: + description: DefaultInterfaceStateStatus defines the observed state of DefaultInterfaceState + type: object + type: object +served: true +storage: true +subresources: + status: {} diff --git a/static/resources/25.4.2/defaultroutereflectorclients.protocols.eda.nokia.com/v1alpha1.yaml b/static/resources/25.4.2/defaultroutereflectorclients.protocols.eda.nokia.com/v1alpha1.yaml new file mode 100644 index 0000000..19d930b --- /dev/null +++ b/static/resources/25.4.2/defaultroutereflectorclients.protocols.eda.nokia.com/v1alpha1.yaml @@ -0,0 +1,274 @@ +additionalPrinterColumns: + - jsonPath: .status.lastChange + name: Last Change + type: date + - jsonPath: .status.operationalState + name: OperationalState + type: string + - jsonPath: .status.numRouteReflectorClientBGPPeers + name: NumRouteReflectorClientBGPPeers + type: string + - jsonPath: .status.numRouteReflectorClientBGPPeersOperDown + name: NumRouteReflectorClientBGPPeersOperDown + type: string +name: v1alpha1 +schema: + openAPIV3Schema: + description: DefaultRouteReflectorClient is the Schema for the defaultroutereflectorclients API + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + description: DefaultRouteReflectorClient enables the configuration of iBGP sessions from a client to RouteReflectors. It includes settings for the DefaultInterface, BGP group, client selectors, and a list of Route Reflector IPs. Additionally, it allows for the configuration of L2VPN EVPN settings and applies common BGP configuration settings to manage routing efficiently within the network. + properties: + asPathOptions: + description: AS Path Options + properties: + allowOwnAS: + default: 0 + description: The maximum number of times the global AS number or a local AS number of the BGP instance can appear in any received AS_PATH before it is considered a loop and considered invalid. + maximum: 255 + minimum: 0 + type: integer + removePrivateAS: + description: Options for removing private AS numbers (2-byte and 4-byte) from the advertised AS path towards all peers. + properties: + ignorePeerAS: + default: false + description: If set to true then do not delete or replace a private AS number that is the same as the peer AS number. + type: boolean + leadingOnly: + default: false + description: If set to true then only delete or replace private AS numbers that appear before the first occurrence of a non-private ASN in the sequence of most recent ASNs in the AS path. + type: boolean + removePrivateASMode: + default: DISABLED + description: The method by which private AS numbers are removed from the advertised AS_PATH attribute. + enum: + - DISABLED + - REPLACE + - DELETE + type: string + required: + - ignorePeerAS + - leadingOnly + - removePrivateASMode + type: object + required: + - allowOwnAS + type: object + bfd: + description: Enable or disable Bi-forward Forwarding Detection (BFD) with fast failover. + type: boolean + defaultBgpClientGroup: + description: Reference to Default Bgp Group. + type: string + exportPolicy: + description: Reference to a Policy CR that will be used to filter routes advertised to peers. + items: + type: string + type: array + grStaleRouteTime: + description: Enables Graceful Restart on the peer and sets the stale route time. + maximum: 3600 + minimum: 1 + type: integer + importPolicy: + description: Reference to a Policy CR that will be used to filter routes received from peers. + items: + type: string + type: array + interface: + description: Reference to either a DefaultInterface or SystemInterface from which the session to the RR will be done from. + type: string + interfaceKind: + description: Reference to a the Kind of interface from which the session to the RR will be done from. + enum: + - DEFAULTINTERFACE + - SYSTEMINTERFACE + type: string + ipv4Unicast: + description: Parameters relating to the IPv4 unicast AFI/SAFI. + properties: + advertiseIPV6NextHops: + description: Enables advertisement of IPv4 Unicast routes with IPv6 next-hops to peers. + type: boolean + enabled: + description: Enables the IPv4 unicast AFISAFI. + type: boolean + maxReceivedRoutes: + description: Maximum number of IPv4 Unicast routes that will be accepted from the neighbor, counting routes accepted and rejected by import policies. + maximum: 4294967295 + minimum: 1 + type: integer + receiveIPV6NextHops: + description: Enables the advertisement of the RFC 5549 capability to receive IPv4 routes with IPv6 next-hops. + type: boolean + type: object + ipv6Unicast: + description: Parameters relating to the IPv6 unicast AFI/SAFI. + properties: + enabled: + description: Enables the IPv6 unicast AFISAFI + type: boolean + maxReceivedRoutes: + description: Maximum number of IPv6 Unicast routes that will be accepted from the neighbor, counting routes accepted and rejected by import policies. + maximum: 4294967295 + minimum: 1 + type: integer + type: object + keychain: + description: Reference to a Keychain resource that will be used for authentication with the BGP peer. + type: string + l2VPNEVPN: + description: Parameters relating to the EVPN AFI/SAFI. + properties: + advertiseIPV6NextHops: + description: Enables advertisement of EVPN routes with IPv6 next-hops to peers. + type: boolean + enabled: + description: Enables the L2VPN EVPN AFISAFI. + type: boolean + maxReceivedRoutes: + description: Maximum number of EVPN routes that will be accepted from the neighbor, counting routes accepted and rejected by import policies. + maximum: 4294967295 + minimum: 1 + type: integer + type: object + localAS: + description: The local autonomous system number advertised to peers. + properties: + autonomousSystem: + description: Local Autonomous System number. + maximum: 4294967295 + minimum: 1 + type: integer + prependGlobalAS: + description: When set to true, the global ASN value is prepended to the AS path in outbound routes towards each BGP peer. + type: boolean + prependLocalAS: + description: When set to true, the local AS value is prepended to the AS path of inbound routes from each EBGP peer. + type: boolean + required: + - autonomousSystem + type: object + peerAS: + description: The autonomous system number expected from peers. + properties: + autonomousSystem: + description: Local Autonomous System number. + maximum: 4294967295 + minimum: 1 + type: integer + required: + - autonomousSystem + type: object + routeReflectorIPs: + description: List of the peering IPs on the RRs to which peering session is established. + items: + type: string + type: array + routeReflectorSelector: + description: Label selector used to select the RouteReflectors to which the iBGP sessions are established. + items: + type: string + type: array + sendCommunityLarge: + description: When false, all large (12 byte) BGP communities from all outbound routes advertised to the peer are stripped. + type: boolean + sendCommunityStandard: + description: When false, all standard (4 byte) communities from all outbound routes advertised to the peer are stripped. + type: boolean + sendDefaultRoute: + description: Options for controlling the generation of default routes towards BGP peers. + properties: + addressFamily: + description: Enables the sending of a synthetically generated default IPv4 or IPV6 route to each peer. + items: + enum: + - IPV4-UNICAST + - IPV6-UNICAST + type: string + type: array + exportPolicy: + description: Reference to a Policy that should be applied to the advertised default routes, in order to set their attributes to non-default values. + type: string + required: + - addressFamily + type: object + timers: + description: Timer configurations + properties: + connectRetry: + description: The time interval in seconds between successive attempts to establish a session with a peer. + maximum: 65535 + minimum: 1 + type: integer + holdTime: + description: The hold-time interval in seconds that the router proposes to the peer in its OPEN message. + maximum: 65535 + minimum: 0 + type: integer + keepAlive: + description: The interval in seconds between successive keepalive messages sent to the peer. + maximum: 21845 + minimum: 0 + type: integer + minimumAdvertisementInterval: + description: The value assigned to the MinRouteAdvertisementIntervalTimer of RFC 4271, for both EBGP and IBGP sessions. + maximum: 255 + minimum: 1 + type: integer + type: object + required: + - defaultBgpClientGroup + - interface + - interfaceKind + type: object + status: + description: DefaultRouteReflectorClientStatus defines the observed state of DefaultRouteReflectorClient + properties: + health: + description: Indicates the health score of the DefaultRouteReflectorClient. + type: integer + healthScoreReason: + description: Indicates the reason for the health score. + type: string + lastChange: + description: The time when the state of the resource last changed. + type: string + numRouteReflectorClientBGPPeers: + description: Total number of configured route reflector peers on the route reflector client. + type: integer + numRouteReflectorClientBGPPeersOperDown: + description: Total number of configured route reflector peers on the route reflector client that are operationally down. + type: integer + operDownRouteReflectorClientPeers: + description: List of route reflector BGPPeers which are operationally down. + items: + type: string + type: array + operationalState: + description: Operational state of the DefaultRouteReflectorClient. + type: string + type: object + type: object +served: true +storage: true +subresources: + status: {} diff --git a/static/resources/25.4.2/defaultroutereflectors.protocols.eda.nokia.com/v1alpha1.yaml b/static/resources/25.4.2/defaultroutereflectors.protocols.eda.nokia.com/v1alpha1.yaml new file mode 100644 index 0000000..0761cd0 --- /dev/null +++ b/static/resources/25.4.2/defaultroutereflectors.protocols.eda.nokia.com/v1alpha1.yaml @@ -0,0 +1,278 @@ +additionalPrinterColumns: + - jsonPath: .status.lastChange + name: Last Change + type: date + - jsonPath: .status.operationalState + name: Operational State + type: string + - jsonPath: .status.numRouteReflectorBGPPeers + name: NumRouteReflectorBGPPeers + type: string + - jsonPath: .status.numRouteReflectorBGPPeersOperDown + name: NumRouteReflectorBGPPeersOperDown + type: string +name: v1alpha1 +schema: + openAPIV3Schema: + description: DefaultRouteReflector is the Schema for the defaultroutereflectors API + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + description: DefaultRouteReflector enables the configuration of iBGP sessions to RouteReflectorClients. It includes settings for the DefaultInterface, BGP group, client selectors, and the Cluster ID. Additionally, it allows for the configuration of L2VPN EVPN settings and applies common BGP configuration settings to manage routing efficiently within the network. + properties: + asPathOptions: + description: AS Path Options + properties: + allowOwnAS: + default: 0 + description: The maximum number of times the global AS number or a local AS number of the BGP instance can appear in any received AS_PATH before it is considered a loop and considered invalid. + maximum: 255 + minimum: 0 + type: integer + removePrivateAS: + description: Options for removing private AS numbers (2-byte and 4-byte) from the advertised AS path towards all peers. + properties: + ignorePeerAS: + default: false + description: If set to true then do not delete or replace a private AS number that is the same as the peer AS number. + type: boolean + leadingOnly: + default: false + description: If set to true then only delete or replace private AS numbers that appear before the first occurrence of a non-private ASN in the sequence of most recent ASNs in the AS path. + type: boolean + removePrivateASMode: + default: DISABLED + description: The method by which private AS numbers are removed from the advertised AS_PATH attribute. + enum: + - DISABLED + - REPLACE + - DELETE + type: string + required: + - ignorePeerAS + - leadingOnly + - removePrivateASMode + type: object + required: + - allowOwnAS + type: object + bfd: + description: Enable or disable Bi-forward Forwarding Detection (BFD) with fast failover. + type: boolean + clientIPs: + description: List of RR client IPs to which the iBGP sessions are established. + items: + type: string + type: array + clientSelector: + description: Label selector used to select the RouteReflectorClients to which the iBGP sessions are established. + items: + type: string + type: array + clusterID: + description: Sets the cluster ID for route reflectors. + type: string + defaultBGPRRGroup: + description: Reference to a DefaultBGPGroup. + type: string + exportPolicy: + description: Reference to a Policy CR that will be used to filter routes advertised to peers. + items: + type: string + type: array + grStaleRouteTime: + description: Enables Graceful Restart on the peer and sets the stale route time. + maximum: 3600 + minimum: 1 + type: integer + importPolicy: + description: Reference to a Policy CR that will be used to filter routes received from peers. + items: + type: string + type: array + interface: + description: Reference to either a DefaultInterface or SystemInterface from which the session to the client will be done from. + type: string + interfaceKind: + description: Reference to a the Kind of interface from which the session to the client will be done from. + enum: + - DEFAULTINTERFACE + - SYSTEMINTERFACE + type: string + ipv4Unicast: + description: Parameters relating to the IPv4 unicast AFI/SAFI. + properties: + advertiseIPV6NextHops: + description: Enables advertisement of IPv4 Unicast routes with IPv6 next-hops to peers. + type: boolean + enabled: + description: Enables the IPv4 unicast AFISAFI. + type: boolean + maxReceivedRoutes: + description: Maximum number of IPv4 Unicast routes that will be accepted from the neighbor, counting routes accepted and rejected by import policies. + maximum: 4294967295 + minimum: 1 + type: integer + receiveIPV6NextHops: + description: Enables the advertisement of the RFC 5549 capability to receive IPv4 routes with IPv6 next-hops. + type: boolean + type: object + ipv6Unicast: + description: Parameters relating to the IPv6 unicast AFI/SAFI. + properties: + enabled: + description: Enables the IPv6 unicast AFISAFI + type: boolean + maxReceivedRoutes: + description: Maximum number of IPv6 Unicast routes that will be accepted from the neighbor, counting routes accepted and rejected by import policies. + maximum: 4294967295 + minimum: 1 + type: integer + type: object + keychain: + description: Reference to a Keychain resource that will be used for authentication with the BGP peer. + type: string + l2VPNEVPN: + description: Parameters relating to the EVPN AFI/SAFI. + properties: + advertiseIPV6NextHops: + description: Enables advertisement of EVPN routes with IPv6 next-hops to peers. + type: boolean + enabled: + description: Enables the L2VPN EVPN AFISAFI. + type: boolean + maxReceivedRoutes: + description: Maximum number of EVPN routes that will be accepted from the neighbor, counting routes accepted and rejected by import policies. + maximum: 4294967295 + minimum: 1 + type: integer + type: object + localAS: + description: The local autonomous system number advertised to peers. + properties: + autonomousSystem: + description: Local Autonomous System number. + maximum: 4294967295 + minimum: 1 + type: integer + prependGlobalAS: + description: When set to true, the global ASN value is prepended to the AS path in outbound routes towards each BGP peer. + type: boolean + prependLocalAS: + description: When set to true, the local AS value is prepended to the AS path of inbound routes from each EBGP peer. + type: boolean + required: + - autonomousSystem + type: object + peerAS: + description: The autonomous system number expected from peers. + properties: + autonomousSystem: + description: Local Autonomous System number. + maximum: 4294967295 + minimum: 1 + type: integer + required: + - autonomousSystem + type: object + sendCommunityLarge: + description: When false, all large (12 byte) BGP communities from all outbound routes advertised to the peer are stripped. + type: boolean + sendCommunityStandard: + description: When false, all standard (4 byte) communities from all outbound routes advertised to the peer are stripped. + type: boolean + sendDefaultRoute: + description: Options for controlling the generation of default routes towards BGP peers. + properties: + addressFamily: + description: Enables the sending of a synthetically generated default IPv4 or IPV6 route to each peer. + items: + enum: + - IPV4-UNICAST + - IPV6-UNICAST + type: string + type: array + exportPolicy: + description: Reference to a Policy that should be applied to the advertised default routes, in order to set their attributes to non-default values. + type: string + required: + - addressFamily + type: object + timers: + description: Timer configurations + properties: + connectRetry: + description: The time interval in seconds between successive attempts to establish a session with a peer. + maximum: 65535 + minimum: 1 + type: integer + holdTime: + description: The hold-time interval in seconds that the router proposes to the peer in its OPEN message. + maximum: 65535 + minimum: 0 + type: integer + keepAlive: + description: The interval in seconds between successive keepalive messages sent to the peer. + maximum: 21845 + minimum: 0 + type: integer + minimumAdvertisementInterval: + description: The value assigned to the MinRouteAdvertisementIntervalTimer of RFC 4271, for both EBGP and IBGP sessions. + maximum: 255 + minimum: 1 + type: integer + type: object + required: + - clusterID + - defaultBGPRRGroup + - interface + - interfaceKind + type: object + status: + description: DefaultRouteReflectorStatus defines the observed state of DefaultRouteReflector + properties: + health: + description: Indicates the health score of the Route Reflector. + type: integer + healthScoreReason: + description: Indicates the reason for the health score. + type: string + lastChange: + description: The time when the state of the resource last changed. + type: string + numRouteReflectorBGPPeers: + description: Total number of configured route reflector client peers on the route reflector. + type: integer + numRouteReflectorBGPPeersOperDown: + description: Total number of configured route reflector client peers on the route reflector that are operationally down. + type: integer + operDownRouteReflectorPeers: + description: List of route reflector BGPPeers which are operationally down. + items: + type: string + type: array + operationalState: + description: Operational state of the Route Reflector. + type: string + type: object + type: object +served: true +storage: true +subresources: + status: {} diff --git a/static/resources/defaultrouters.routing.eda.nokia.com/v1alpha1.yaml b/static/resources/25.4.2/defaultrouters.routing.eda.nokia.com/v1alpha1.yaml similarity index 100% rename from static/resources/defaultrouters.routing.eda.nokia.com/v1alpha1.yaml rename to static/resources/25.4.2/defaultrouters.routing.eda.nokia.com/v1alpha1.yaml diff --git a/static/resources/25.4.2/defaultrouterstates.routing.eda.nokia.com/v1alpha1.yaml b/static/resources/25.4.2/defaultrouterstates.routing.eda.nokia.com/v1alpha1.yaml new file mode 100644 index 0000000..0606314 --- /dev/null +++ b/static/resources/25.4.2/defaultrouterstates.routing.eda.nokia.com/v1alpha1.yaml @@ -0,0 +1,42 @@ +name: v1alpha1 +schema: + openAPIV3Schema: + description: DefaultRouterState is the Schema for the defaultrouterstates API + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + description: DefaultRouterStateSpec defines the desired state of DefaultRouterState + properties: + node: + description: Node on which the DefaultRouter is deployed + type: string + operatingSystem: + description: Operating System of the Node + type: string + required: + - node + type: object + status: + description: DefaultRouterStateStatus defines the observed state of DefaultRouterState + type: object + type: object +served: true +storage: true +subresources: + status: {} diff --git a/static/resources/25.4.2/defaultstaticroutes.protocols.eda.nokia.com/v1alpha1.yaml b/static/resources/25.4.2/defaultstaticroutes.protocols.eda.nokia.com/v1alpha1.yaml new file mode 100644 index 0000000..f9c78ea --- /dev/null +++ b/static/resources/25.4.2/defaultstaticroutes.protocols.eda.nokia.com/v1alpha1.yaml @@ -0,0 +1,123 @@ +name: v1alpha1 +schema: + openAPIV3Schema: + description: DefaultStaticRoute is the Schema for the default static routes API + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + description: DefaultStaticRoute enables the configuration of static routes within a DefaultRouter. It allows specifying destination prefixes, route preference, and a nexthop group. This resource facilitates precise control over routing behavior, including options for BFD, route resolution, and blackholing traffic. + properties: + defaultRouter: + description: Reference to a DefaultRouter on which to configure the static routes. + type: string + nexthopGroup: + description: Group of nexthops for the list of prefixes. + properties: + bfd: + description: Enables BFD to the next-hops in the group. Local and Remote discriminator parameters have been deprecated at this level. Use Nexthop to set these parameters. + properties: + enabled: + default: false + description: Defines whether BFD should be enabled towards the nexthops. + type: boolean + localAddress: + description: Defines the local address to use when establishing the BFD session with the nexthop. + type: string + localDiscriminator: + description: Defines the local discriminator. + type: integer + remoteDiscriminator: + description: Defines the remote discriminator. + type: integer + type: object + blackhole: + default: false + description: If set to true all traffic destined to the prefixes will be blackholed. If enabled, next-hops are ignored and this takes precedence. + type: boolean + nexthops: + description: Ordered list of nexthops. + items: + properties: + bfd: + description: Enables BFD to the next-hops in the group. This overrides the configuration at the group. + properties: + enabled: + default: false + description: Defines whether BFD should be enabled towards the nexthops. + type: boolean + localAddress: + description: Defines the local address to use when establishing the BFD session with the nexthop. + type: string + localDiscriminator: + description: Defines the local discriminator. + type: integer + remoteDiscriminator: + description: Defines the remote discriminator. + type: integer + type: object + ipPrefix: + description: Address to use. + type: string + resolve: + default: false + description: If set to true the next-hops can be destinations which are resolved in the route table. This overrides the configuration at the group. + type: boolean + required: + - ipPrefix + type: object + type: array + resolve: + default: false + description: If set to true the next-hops can be destinations which are resolved in the route table. + type: boolean + type: object + preference: + description: Defines the route preference. + type: integer + prefixes: + description: List of destination prefixes and mask to use for the static routes. + items: + type: string + type: array + required: + - defaultRouter + - nexthopGroup + - prefixes + type: object + status: + description: DefaultStaticRouteStatus defines the observed state of default static route + properties: + health: + description: Indicates the health score of the static routes. + type: integer + healthScoreReason: + description: Indicates the reason for the health score. + type: string + lastChange: + description: The time when the state of the resource last changed. + type: string + operationalState: + description: Operational state of the static routes. + type: string + type: object + type: object +served: true +storage: true +subresources: + status: {} diff --git a/static/resources/25.4.2/deployimages.os.eda.nokia.com/v1alpha1.yaml b/static/resources/25.4.2/deployimages.os.eda.nokia.com/v1alpha1.yaml new file mode 100644 index 0000000..aa89321 --- /dev/null +++ b/static/resources/25.4.2/deployimages.os.eda.nokia.com/v1alpha1.yaml @@ -0,0 +1,128 @@ +additionalPrinterColumns: + - jsonPath: .status.id + name: ID + type: integer + - jsonPath: .status.result + name: Result + type: string + - jsonPath: .metadata.creationTimestamp + name: Age + type: date +name: v1alpha1 +schema: + openAPIV3Schema: + description: DeployImage is the Schema for the deployimages API + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + description: DeployImageSpec defines the desired state of DeployImage + properties: + canaries: + items: + type: string + type: array + checks: + properties: + checks: + description: Checks to run before (pre) and after (post) any image changes + items: + enum: + - Interface + - DefaultBGP + - PingISL + - PingSystem + type: string + type: array + force: + description: Do not prompt for user input, even if checks fail + type: boolean + skip: + description: Do not run any checks + type: boolean + required: + - checks + - force + - skip + type: object + drains: + properties: + interfaceDisableSelectors: + items: + type: string + type: array + minimumWaitTime: + type: integer + skip: + description: Do not run any drains + type: boolean + type: object + nodeProfile: + type: string + nodeSelector: + items: + type: string + type: array + nodes: + items: + type: string + type: array + prompt: + items: + enum: + - AfterPreChecks + - AfterPostChecks + type: string + type: array + tranches: + items: + properties: + name: + type: string + nodeSelector: + items: + type: string + type: array + type: object + type: array + type: + enum: + - node + - nodeselector + - tranche + type: string + version: + type: string + required: + - type + type: object + status: + description: DeployImageStatus defines the observed state of DeployImage + properties: + id: + description: Id + type: integer + result: + description: Aggregate result of the Flow + type: string + type: object + type: object +served: true +storage: true +subresources: + status: {} diff --git a/static/resources/25.4.2/designers.core.eda.nokia.com/v1.yaml b/static/resources/25.4.2/designers.core.eda.nokia.com/v1.yaml new file mode 100644 index 0000000..9d3d2c0 --- /dev/null +++ b/static/resources/25.4.2/designers.core.eda.nokia.com/v1.yaml @@ -0,0 +1,98 @@ +name: v1 +schema: + openAPIV3Schema: + description: Designer is the Schema for the designers API + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + description: DesignerSpec defines the desired state of Designer + properties: + nodeTemplate: + description: A list of templates to use with nodes + items: + properties: + interfaceGroup: + description: A list of interfaceGroups + items: + properties: + interfaceTemplate: + description: The interfaceTemplate associated with the interfaceGroup + properties: + fec: + description: Set Forward Error Correction on interfaces + type: string + numberChannel: + description: When set > 0 breakouts are configured on the interfaces + type: integer + speed: + description: The speed set on each interface + type: string + required: + - numberChannel + - speed + type: object + interfaces: + description: List of interfaces within the interfaceGroup in the dut-1/1/1 format (check this format) + items: + type: string + type: array + labels: + description: List of labels to associate with the interfaces within this interface Gropu + items: + type: string + type: array + required: + - interfaceTemplate + - interfaces + type: object + type: array + name: + type: string + operatingSystem: + description: The OS running on this TopoNode, e.g. srl, sros + enum: + - srl + - sros + - eos + - sonic + type: string + platform: + description: Platform type of this Node, e.g. 7220 IXR-D3L + type: string + version: + description: Sets the software version of this TopoNode, e.g. 22.6.1, 22.10.R1 + type: string + required: + - name + - operatingSystem + - platform + - version + type: object + type: array + required: + - nodeTemplate + type: object + status: + description: DesignerStatus defines the observed state of Designer + type: object + type: object +served: true +storage: true +subresources: + status: {} diff --git a/static/resources/25.4.2/deviationactions.core.eda.nokia.com/v1.yaml b/static/resources/25.4.2/deviationactions.core.eda.nokia.com/v1.yaml new file mode 100644 index 0000000..0a9bd4c --- /dev/null +++ b/static/resources/25.4.2/deviationactions.core.eda.nokia.com/v1.yaml @@ -0,0 +1,81 @@ +additionalPrinterColumns: + - jsonPath: .status.result + name: Result + type: string + - jsonPath: .metadata.creationTimestamp + name: Age + type: date +name: v1 +schema: + openAPIV3Schema: + description: DeviationAction is the Schema for the deviationactions API + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + description: |- + DeviationAction allows manual and API-driven actions to be performed on Deviation resources. + They are the only means to which and end user can accept or reject deviations, as Deviation resources themselves are read only. + properties: + actions: + description: The set of actions to perform on the target. + items: + properties: + action: + description: Action to perform on matching Deviations. + enum: + - setAccept + - clearAccept + - reject + type: string + path: + description: Path to match Deviation resources on this target. Only one action is allowed per path. + type: string + recurse: + description: Recursively accept/reject Deviations from the specified path. + type: boolean + required: + - action + - path + type: object + type: array + nodeEndpoint: + description: The target on which this action is to be performed. + type: string + required: + - actions + - nodeEndpoint + type: object + status: + description: DeviationActionStatus defines the observed state of DeviationAction + properties: + result: + description: The result of the set of actions. + enum: + - OK + - Failed + type: string + transactionId: + description: The transaction id these actions were part of. + type: integer + type: object + type: object +served: true +storage: true +subresources: + status: {} diff --git a/static/resources/25.4.2/deviationoverlays.topologies.eda.nokia.com/v1alpha1.yaml b/static/resources/25.4.2/deviationoverlays.topologies.eda.nokia.com/v1alpha1.yaml new file mode 100644 index 0000000..801dc68 --- /dev/null +++ b/static/resources/25.4.2/deviationoverlays.topologies.eda.nokia.com/v1alpha1.yaml @@ -0,0 +1,69 @@ +name: v1alpha1 +schema: + openAPIV3Schema: + description: DeviationOverlay is the Schema for deviationoverlays + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + description: DeviationOverlaySpec defines the desired state of DeviationOverlay + properties: + enabled: + description: Enable or disable the generation of the status of this overlay + type: boolean + topology: + description: Reference to the topology that this overlay is extending. + properties: + group: + description: The group of the application which published the topology this overlay is extending. + type: string + name: + description: The name of the resource which published the topology this overlay is extending. + type: string + version: + description: The version of the application which published the topology this overlay is extending. + type: string + required: + - group + - name + - version + type: object + uiDescription: + description: A description of the overlay to expose in the UI + type: string + uiDescriptionKey: + description: The translation key for the description of the overlay to expose in the UI + type: string + uiName: + description: The name of the overlay to expose in the UI + type: string + uiNameKey: + description: The translation key for the name of the overlay to expose in the UI + type: string + required: + - enabled + - topology + type: object + status: + description: DeviationOverlayStatus defines the observed state of DeviationOverlay + type: object + type: object +served: true +storage: true +subresources: + status: {} diff --git a/static/resources/25.4.2/deviations.core.eda.nokia.com/v1.yaml b/static/resources/25.4.2/deviations.core.eda.nokia.com/v1.yaml new file mode 100644 index 0000000..d6ead7a --- /dev/null +++ b/static/resources/25.4.2/deviations.core.eda.nokia.com/v1.yaml @@ -0,0 +1,90 @@ +additionalPrinterColumns: + - jsonPath: .spec.operation + name: OPERATION + type: string + - jsonPath: .spec.path + name: JSPATH + type: string +name: v1 +schema: + openAPIV3Schema: + description: Deviation is the Schema for the nodeconfigs API + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + description: |- + Deviations are used to represent differences between the intended and actual state of a target. + They indicate the intended state - or the computed configuration EDA expects, and compare this to the actual or running state, or the configuration retrieved from the target. + Deviations are most often generated by out-of-band changes to a target by an external system or user, and + can be accepted or rejected. Rejecting a Deviation will result in the intended configuration being re-applied, undoing the out-of-band change. + Deviations are raised per table, meaning a single change on a target may result in more than one Deviation. + properties: + accepted: + description: Indicates whether this Deviation has been accepted. + type: boolean + associatedCrs: + description: Resources impacted by this Deviation. + items: + properties: + groupVersion: + description: Group and version of the resource. + type: string + kind: + description: Kind of the resource. + type: string + name: + description: Name of the resource. + type: string + required: + - groupVersion + - kind + - name + type: object + type: array + intendedValues: + description: JSON object containing intended values of fields at the specified path. + type: string + nodeEndpoint: + description: Target on which this Deviation is present. + type: string + operation: + description: Indicates the operation in this Deviation. + enum: + - create + - delete + type: string + path: + description: Path on the target this Deviation is present at. This path is relative to the target's root, without any EDA prefixes - for example ".system" rather than ".namespace.node.srl.system". + type: string + runningValues: + description: JSON object containing running values of fields at the specified path. + type: string + required: + - nodeEndpoint + - operation + - path + type: object + status: + description: DeviationStatus defines the observed state of Deviation + type: object + type: object +served: true +storage: true +subresources: + status: {} diff --git a/static/resources/25.4.2/dhcprelays.services.eda.nokia.com/v1alpha1.yaml b/static/resources/25.4.2/dhcprelays.services.eda.nokia.com/v1alpha1.yaml new file mode 100644 index 0000000..b9f5b0a --- /dev/null +++ b/static/resources/25.4.2/dhcprelays.services.eda.nokia.com/v1alpha1.yaml @@ -0,0 +1,63 @@ +name: v1alpha1 +schema: + openAPIV3Schema: + description: DHCPRelay is the Schema for the dhcprelays API + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + description: The DHCPRelay enables the forwarding of DHCP requests and responses between clients and servers across different networks. This resource allows for the configuration of various DHCP relay sub-options, such as CircuitID, RemoteID, and ClientLinkLayerAddress, to provide detailed client information. It also includes settings for specifying the router to reach the DHCP server, the list of DHCP servers to forward requests to, and selectors for Routed and IRB interfaces where the relay will be configured. Additionally, the GI Address option can be set to derive the Gateway IP address from the selected interface, ensuring correct routing of DHCP messages. + properties: + giAddress: + description: Set GI Address to the IP derived from the IRBInterface or RoutedInterface on which the DHCP relay is configured. + type: boolean + irbInterfaceSelector: + description: Label selector to select the IRBInterface on which to configure the DHCP relay. + items: + type: string + type: array + routedInterfaceSelector: + description: Label selector to select the RoutedInterface on which to configure the DHCP relay. + items: + type: string + type: array + router: + description: Router to be used to reach the DHCP server, if not specified the Router under which the source IRBInterface or RoutedInterface resides will be used. + type: string + servers: + description: List of servers to send the DHCP relayed packet to. These can be IP addresses or FQDN. + items: + type: string + minItems: 1 + type: array + subOptions: + description: DHCP Relay sub-options; available options are CircuitID, RemoteID, and ClientLinkLayerAddress. + items: + type: string + type: array + required: + - servers + type: object + status: + description: DHCPRelayStatus defines the observed state of DHCPRelay + type: object + type: object +served: true +storage: true +subresources: + status: {} diff --git a/static/resources/25.4.2/discoveries.components.eda.nokia.com/v1.yaml b/static/resources/25.4.2/discoveries.components.eda.nokia.com/v1.yaml new file mode 100644 index 0000000..fbdeb0b --- /dev/null +++ b/static/resources/25.4.2/discoveries.components.eda.nokia.com/v1.yaml @@ -0,0 +1,53 @@ +name: v1 +schema: + openAPIV3Schema: + description: Discovery is the Schema for the discoveries API + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + description: DiscoverySpec defines the desired state of Discovery + properties: + nodeSelector: + description: Selector to use when selecting TopoNodes to discover components for. + items: + type: string + type: array + nodes: + description: ' TopoNodes to discover components for.' + items: + type: string + type: array + operatingSystem: + description: Operating system to match against when selecting TopoNodes + type: string + type: object + status: + description: DiscoveryStatus defines the observed state of Discovery + properties: + nodes: + description: List of TopoNodes component discovery is running for + items: + type: string + type: array + type: object + type: object +served: true +storage: true +subresources: + status: {} diff --git a/static/resources/25.4.2/discoveries.components.eda.nokia.com/v1alpha1.yaml b/static/resources/25.4.2/discoveries.components.eda.nokia.com/v1alpha1.yaml new file mode 100644 index 0000000..f31a95e --- /dev/null +++ b/static/resources/25.4.2/discoveries.components.eda.nokia.com/v1alpha1.yaml @@ -0,0 +1,53 @@ +name: v1alpha1 +schema: + openAPIV3Schema: + description: Discovery is the Schema for the discoveries API + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + description: DiscoverySpec defines the desired state of Discovery + properties: + nodeSelector: + description: Selector to use when selecting TopoNodes to discover components for. + items: + type: string + type: array + nodes: + description: ' TopoNodes to discover components for.' + items: + type: string + type: array + operatingSystem: + description: Operating system to match against when selecting TopoNodes + type: string + type: object + status: + description: DiscoveryStatus defines the observed state of Discovery + properties: + nodes: + description: List of TopoNodes component discovery is running for + items: + type: string + type: array + type: object + type: object +served: true +storage: false +subresources: + status: {} diff --git a/static/resources/25.4.2/discoveryaggregatestates.components.eda.nokia.com/v1.yaml b/static/resources/25.4.2/discoveryaggregatestates.components.eda.nokia.com/v1.yaml new file mode 100644 index 0000000..96bfc05 --- /dev/null +++ b/static/resources/25.4.2/discoveryaggregatestates.components.eda.nokia.com/v1.yaml @@ -0,0 +1,39 @@ +name: v1 +schema: + openAPIV3Schema: + description: DiscoveryAggregateState is the Schema for the discoveryaggregatestates API + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + description: DiscoveryAggregateStateSpec defines the desired state of DiscoveryAggregateState + properties: + nodes: + description: List of TopoNodes this discovery is for. + items: + type: string + type: array + type: object + status: + description: DiscoveryAggregateStateStatus defines the observed state of DiscoveryAggregateState + type: object + type: object +served: true +storage: true +subresources: + status: {} diff --git a/static/resources/25.4.2/discoveryaggregatestates.components.eda.nokia.com/v1alpha1.yaml b/static/resources/25.4.2/discoveryaggregatestates.components.eda.nokia.com/v1alpha1.yaml new file mode 100644 index 0000000..0bbfbea --- /dev/null +++ b/static/resources/25.4.2/discoveryaggregatestates.components.eda.nokia.com/v1alpha1.yaml @@ -0,0 +1,39 @@ +name: v1alpha1 +schema: + openAPIV3Schema: + description: DiscoveryAggregateState is the Schema for the discoveryaggregatestates API + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + description: DiscoveryAggregateStateSpec defines the desired state of DiscoveryAggregateState + properties: + nodes: + description: List of TopoNodes this discovery is for. + items: + type: string + type: array + type: object + status: + description: DiscoveryAggregateStateStatus defines the observed state of DiscoveryAggregateState + type: object + type: object +served: true +storage: false +subresources: + status: {} diff --git a/static/resources/25.4.2/discoverystates.components.eda.nokia.com/v1.yaml b/static/resources/25.4.2/discoverystates.components.eda.nokia.com/v1.yaml new file mode 100644 index 0000000..6754ccd --- /dev/null +++ b/static/resources/25.4.2/discoverystates.components.eda.nokia.com/v1.yaml @@ -0,0 +1,47 @@ +name: v1 +schema: + openAPIV3Schema: + description: DiscoveryState is the Schema for the discoverystates API + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + description: DiscoveryStateSpec defines the desired state of DiscoveryState + properties: + node: + description: Reference to the TopoNode being discovered + type: string + operatingSystem: + description: The operating system of the TopoNode being discovered + type: string + version: + description: The version of the TopoNode being discovered + type: string + required: + - node + - operatingSystem + - version + type: object + status: + description: DiscoveryStateStatus defines the observed state of DiscoveryState + type: object + type: object +served: true +storage: true +subresources: + status: {} diff --git a/static/resources/25.4.2/discoverystates.components.eda.nokia.com/v1alpha1.yaml b/static/resources/25.4.2/discoverystates.components.eda.nokia.com/v1alpha1.yaml new file mode 100644 index 0000000..c43e4d3 --- /dev/null +++ b/static/resources/25.4.2/discoverystates.components.eda.nokia.com/v1alpha1.yaml @@ -0,0 +1,47 @@ +name: v1alpha1 +schema: + openAPIV3Schema: + description: DiscoveryState is the Schema for the discoverystates API + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + description: DiscoveryStateSpec defines the desired state of DiscoveryState + properties: + node: + description: Reference to the TopoNode being discovered + type: string + operatingSystem: + description: The operating system of the TopoNode being discovered + type: string + version: + description: The version of the TopoNode being discovered + type: string + required: + - node + - operatingSystem + - version + type: object + status: + description: DiscoveryStateStatus defines the observed state of DiscoveryState + type: object + type: object +served: true +storage: false +subresources: + status: {} diff --git a/static/resources/25.4.2/diskoverlays.topologies.eda.nokia.com/v1alpha1.yaml b/static/resources/25.4.2/diskoverlays.topologies.eda.nokia.com/v1alpha1.yaml new file mode 100644 index 0000000..d302b84 --- /dev/null +++ b/static/resources/25.4.2/diskoverlays.topologies.eda.nokia.com/v1alpha1.yaml @@ -0,0 +1,69 @@ +name: v1alpha1 +schema: + openAPIV3Schema: + description: DiskOverlay is the Schema for diskoverlays + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + description: DiskOverlaySpec defines the desired state of DiskOverlay + properties: + enabled: + description: Enable or disable the generation of the status of this overlay + type: boolean + topology: + description: Reference to the topology that this overlay is extending. + properties: + group: + description: The group of the application which published the topology this overlay is extending. + type: string + name: + description: The name of the resource which published the topology this overlay is extending. + type: string + version: + description: The version of the application which published the topology this overlay is extending. + type: string + required: + - group + - name + - version + type: object + uiDescription: + description: A description of the overlay to expose in the UI + type: string + uiDescriptionKey: + description: The translation key for the description of the overlay to expose in the UI + type: string + uiName: + description: The name of the overlay to expose in the UI + type: string + uiNameKey: + description: The translation key for the name of the overlay to expose in the UI + type: string + required: + - enabled + - topology + type: object + status: + description: DiskOverlayStatus defines the observed state of DiskOverlay + type: object + type: object +served: true +storage: true +subresources: + status: {} diff --git a/static/resources/25.4.2/drains.routing.eda.nokia.com/v1alpha1.yaml b/static/resources/25.4.2/drains.routing.eda.nokia.com/v1alpha1.yaml new file mode 100644 index 0000000..f670dfd --- /dev/null +++ b/static/resources/25.4.2/drains.routing.eda.nokia.com/v1alpha1.yaml @@ -0,0 +1,58 @@ +additionalPrinterColumns: + - jsonPath: .spec.enabled + name: Enabled + type: string +name: v1alpha1 +schema: + openAPIV3Schema: + description: Drain is the Schema for the drains API + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + description: Drain allows for the controlled disabling or draining of specific DefaultRouters, either by selecting them through labels or directly referencing them, ensuring traffic is safely rerouted or dropped before the routers are decommissioned. + properties: + defaultRouterSelector: + description: Selector to use when selecting DefaultRouters to drain. + items: + type: string + type: array + defaultRouters: + description: Reference to DefaultRouters to drain. + items: + type: string + type: array + enabled: + default: true + description: Enable this Drain. + type: boolean + type: object + status: + description: DrainStatus defines the observed state of Drain. + properties: + defaultRouters: + description: List of DefaultRouters this Drain has been applied to + items: + type: string + type: array + type: object + type: object +served: true +storage: true +subresources: + status: {} diff --git a/static/resources/25.4.2/drainstates.routing.eda.nokia.com/v1alpha1.yaml b/static/resources/25.4.2/drainstates.routing.eda.nokia.com/v1alpha1.yaml new file mode 100644 index 0000000..d2746fd --- /dev/null +++ b/static/resources/25.4.2/drainstates.routing.eda.nokia.com/v1alpha1.yaml @@ -0,0 +1,39 @@ +name: v1alpha1 +schema: + openAPIV3Schema: + description: DrainState is the Schema for the drainstates API + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + description: DrainStateSpec defines the desired state of DrainState + properties: + defaultRouters: + description: List of DefaultRouters this drain has been applied to + items: + type: string + type: array + type: object + status: + description: DrainStateStatus defines the observed state of DrainState + type: object + type: object +served: true +storage: true +subresources: + status: {} diff --git a/static/resources/25.4.2/edgeinterfaces.core.eda.nokia.com/v1.yaml b/static/resources/25.4.2/edgeinterfaces.core.eda.nokia.com/v1.yaml new file mode 100644 index 0000000..0d467a5 --- /dev/null +++ b/static/resources/25.4.2/edgeinterfaces.core.eda.nokia.com/v1.yaml @@ -0,0 +1,86 @@ +name: v1 +schema: + openAPIV3Schema: + description: EdgeInterface is the Schema for the edgeinterfaces API + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + description: EdgeInterfaceSpec defines the desired state of EdgeInterface + properties: + bridgeDomain: + description: Reference to a Bridge Domain + type: string + encapType: + default: "null" + description: Indicates if the EdgeInterface uses VLAN tagging + enum: + - "null" + - dot1q + type: string + gatewayIPV4Addresses: + description: List of gateway IPv4 addresses in ip/mask form - e.g. 192.168.0.1/24 + items: + properties: + ipPrefix: + description: Address and mask to use + type: string + primary: + description: Indicates which address to use as primary for broadcast + type: boolean + required: + - ipPrefix + type: object + type: array + gatewayIPV6Addresses: + description: List of gateway IPv6 addresses in ip/mask form - e.g. fc00::1/120 + items: + properties: + ipPrefix: + description: Address and mask to use + type: string + primary: + description: Indicates which address to use as primary for broadcast + type: boolean + required: + - ipPrefix + type: object + type: array + interfaceResource: + description: Reference to an interface + type: string + router: + description: Reference to a Router + type: string + vlanID: + description: Single value between 0-4094 supported + maximum: 4094 + minimum: 0 + type: integer + required: + - encapType + - interfaceResource + type: object + status: + description: EdgeInterfaceStatus defines the observed state of EdgeInterface + type: object + type: object +served: true +storage: true +subresources: + status: {} diff --git a/static/resources/25.4.2/egresspolicys.qos.eda.nokia.com/v1alpha1.yaml b/static/resources/25.4.2/egresspolicys.qos.eda.nokia.com/v1alpha1.yaml new file mode 100644 index 0000000..301af49 --- /dev/null +++ b/static/resources/25.4.2/egresspolicys.qos.eda.nokia.com/v1alpha1.yaml @@ -0,0 +1,262 @@ +name: v1alpha1 +schema: + openAPIV3Schema: + description: EgressPolicy is the Schema for the egresspolicys API + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + description: EgressPolicySpec defines the desired state of EgressPolicy + properties: + dot1pRewritePolicy: + description: Dot1pRewritePolicy enables the configuration of rewrite policies for Dot1p values. It includes mappings of forwarding classes to Dot1p values, with options for drop probability-specific overrides within each forwarding class. + properties: + dot1pMap: + description: Map of forwarding classes to PCP values + items: + properties: + dropProbability: + description: Drop probability specific overrides within the forwarding class + items: + properties: + level: + description: A drop probability level within the forwarding class for which a different remarking is desired + enum: + - High + - Medium + - Low + type: string + pcpValue: + description: The PCP value to be used for packets associated with the forwarding class and the specific drop probability. This overrides the general PCP value. + maximum: 7 + minimum: 0 + type: integer + type: object + type: array + forwardingClasses: + description: The forwarding class matched to apply the rewrite policy + items: + type: string + type: array + pcpValue: + description: The PCP value to be used for all packets associated with the forwarding class, except those with a drop-probability-specific or profile-specific override + maximum: 7 + minimum: 0 + type: integer + required: + - forwardingClasses + type: object + type: array + required: + - dot1pMap + type: object + dscpRewritePolicy: + description: DSCPRewritePolicy enables the configuration of rewrite policies for Differentiated Services Code Point (DSCP) values. It includes mappings of forwarding classes to DSCP values, with options for drop probability-specific overrides within each forwarding class. If a DSCPRewritePolicy is not specified, the DSCP value of the packet is unchanged. If a DSCP policy is specific and ECN is enabled on any of the queues, the DSCP policy will be applied to all ECN capable packets. + properties: + dscpMap: + description: Map of forwarding classes to DSCP values. + items: + properties: + dropProbability: + description: A drop probability within the forwarding class for which a different remarking is desired. + items: + properties: + dscp: + description: The DSCP value to be used for packets associated with the forwarding class and the specific drop probability. This overrides the general DSCP value. + maximum: 63 + minimum: 0 + type: integer + level: + description: A drop probability level within the forwarding class for which a different remarking is desired. + enum: + - High + - Medium + - Low + type: string + type: object + type: array + dscp: + description: The DSCP value to be used for all packets associated with the forwarding class, except those with a drop-probability-specific or profile-specific override. + maximum: 63 + minimum: 0 + type: integer + forwardingClasses: + description: The forwarding class matched to apply the rewrite policy. + items: + type: string + type: array + required: + - forwardingClasses + type: object + type: array + required: + - dscpMap + type: object + forwardingClassToQueueMapping: + description: Forwarding class to queue mapping policy. + items: + properties: + forwardingClasses: + description: The forwarding classes to which the mapping applies, these are references to ForwardingClass resources. + items: + type: string + minItems: 1 + type: array + queue: + description: The queue to which the forwarding classes are mapped, this is a reference to a Queue resource. + type: string + queueGroup: + description: The queue-group name for queue to forwarding class mapping. + type: string + required: + - forwardingClasses + - queue + type: object + type: array + pfcDeadlockAvoidance: + description: Parameters related to avoid a deadlock related to pfc on outgoing interface. + properties: + deadlockAvoidance: + description: Parameters related to avoid a deadlock related to pfc on outgoing interface + type: boolean + deadlockDetectionTimer: + description: Number of milliseconds during which outgoing interface is receiving pfc-pause-frames before triggering recovery-timer. + type: integer + deadlockRecoveryTimer: + description: Number of milliseconds during which the pfc-pause-frames will be ignored. + type: integer + required: + - deadlockAvoidance + - deadlockDetectionTimer + - deadlockRecoveryTimer + type: object + queueManagement: + description: Queue management policy for egress queues. + items: + properties: + queues: + description: List of queues. + items: + properties: + committedBurstSize: + description: Committed Burst Size. + format: int32 + type: integer + maximumBurstSize: + description: Maximum amount of shared buffer memory available to the queue in bytes. + format: int32 + maximum: 4294967295 + minimum: 0 + type: integer + pfcPauseFramePriority: + description: The pfc-priority received in pfc-pause-frame. + type: integer + queue: + description: Reference to a Queue resource. + type: string + schedulerPeakRatePercent: + description: The peak rate percent used by the scheduler for the queue. + maximum: 100 + minimum: 1 + type: integer + schedulerPriorityLevel: + description: The priority level at this Port Scheduler Policy. + maximum: 8 + minimum: 1 + type: integer + schedulerWeight: + description: The weight factor used for the WRR scheduler. If any of the queues have a configured weight the set of queues will use a WRR scheduler and thus all queues must have a weight configured. If no weights are set then the queues are scheduled in strict priority from lowest to higher queue ID. + maximum: 255 + minimum: 0 + type: integer + required: + - maximumBurstSize + - queue + type: object + type: array + slopePolicyWeight: + default: 0 + description: 'The average queue size is calculated using both the previous average and the current queue size: average = (previous average)(1 - 2^(-n)) + (current size)(2^(-n)), where n is a user-configurable weight factor. A higher n gives more importance to the previous average, smoothing peaks and lows in the queue. Lower n makes the average closer to the current queue size. If this leaf is absent, the default value is used.' + maximum: 15 + minimum: 0 + type: integer + wredSlopPolicies: + description: Slope policy to apply to the set of queues. + items: + properties: + drop: + default: false + description: When set to true, and if the ECN field in the packet indicates that the endpoints are not ECN-capable, and the WRED algorithm determines that the packet should be dropped based on the drop probability, the packet will be dropped + type: boolean + dropProbability: + default: All + enum: + - High + - Medium + - Low + - All + type: string + ecn: + default: false + description: When set to true and the queue length is between the thresholds and the ECN field indicates ECN-capable endpoints, the CE bits are set to 1, and the packet is transmitted based on WRED. If false, such packets are discarded. + type: boolean + maxDropProbabilityPercent: + description: If the queue depth is between min and max threshold then this the probability with which packets are dropped or marked. + type: integer + maxThreshold: + description: The maximum threshold parameter for a RED-managed queue in bytes. When the average queue length exceeds the max value, all packets are dropped (or marked if ECN is enabled). Mutually exclusive with min-threshold-percent and max-threshold-percent. + format: int64 + type: integer + maxThresholdPercent: + description: The maximum threshold parameter for a RED-managed queue in percent. When the average queue length exceeds the max value, all packets are dropped (or marked if ECN is enabled). Mutually exclusive with min-threshold and max-threshold. + type: integer + minThreshold: + description: The mininum threshold parameter for a RED-managed queue in bytes. When the average queue length is less than min, all packets are admitted to the queue. Mututally exclusive with min-threshold-percent and max-threshold-percent. + format: int64 + type: integer + minThresholdPercent: + description: The mininum threshold parameter for a RED-managed queue in percent. When the average queue length is less than min, all packets are admitted to the queue. Mutually exclusive with min-threshold and max-threshold. + type: integer + trafficType: + default: All + description: The traffic type to which the WRED slope applies. + enum: + - Tcp + - NonTcp + - All + type: string + required: + - drop + - dropProbability + - ecn + - trafficType + type: object + type: array + required: + - queues + type: object + type: array + type: object + status: + description: EgressPolicyStatus defines the observed state of EgressPolicy + type: object + type: object +served: true +storage: true +subresources: + status: {} diff --git a/static/resources/25.4.2/engineconfigs.core.eda.nokia.com/v1.yaml b/static/resources/25.4.2/engineconfigs.core.eda.nokia.com/v1.yaml new file mode 100644 index 0000000..954c166 --- /dev/null +++ b/static/resources/25.4.2/engineconfigs.core.eda.nokia.com/v1.yaml @@ -0,0 +1,911 @@ +name: v1 +schema: + openAPIV3Schema: + description: EngineConfig is the Schema for the engineconfigs API + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + description: EngineConfigSpec defines the desired state of EngineConfig + properties: + allocationPools: + description: Settings related to allocation pools + properties: + alarms: + description: Define alarm thresholds for allocation pool instance utilization + properties: + criticalThreshold: + default: 95 + description: |- + Set the threshold for which a critical alarm will be generated for allocation pool instance utilization, as a percentage. + Using a value of 0 will disable the generation of major threshold alarms. + maximum: 100 + minimum: 0 + type: integer + majorThreshold: + default: 90 + description: |- + Set the threshold for which a major alarm will be generated for allocation pool instance utilization, as a percentage. + Using a value of 0 will disable the generation of major threshold alarms. + maximum: 100 + minimum: 0 + type: integer + minorThreshold: + default: 80 + description: |- + Set the threshold for which a minor alarm will be generated for allocation pool instance utilization, as a percentage. + Using a value of 0 will disable the generation of minor threshold alarms. + maximum: 100 + minimum: 0 + type: integer + type: object + type: object + api: + description: Settings related to APIServer. + properties: + enableLoadBalancerNodePorts: + description: For the service enable the creation of nodePort + type: boolean + image: + description: The full URI to the image + type: string + image-credential: + description: The credential to use when interacting with the image + type: string + replicas: + description: The number of replicas to launch + format: int32 + type: integer + resources: + description: Resource limits and requests for deployments + properties: + limits: + properties: + cpu: + type: string + memory: + type: string + type: object + requests: + properties: + cpu: + type: string + memory: + type: string + type: object + type: object + serviceType: + default: LoadBalancer + description: Describes the type of k8s service + enum: + - ClusterIP + - NodePort + - LoadBalancer + type: string + type: object + appStore: + description: Settings related to AppStore. + properties: + image: + description: The full URI to the image + type: string + image-credential: + description: The credential to use when interacting with the image + type: string + resources: + description: Resource limits and requests for deployments + properties: + limits: + properties: + cpu: + type: string + memory: + type: string + type: object + requests: + properties: + cpu: + type: string + memory: + type: string + type: object + type: object + type: object + appStoreFlow: + description: Settings related to AppStore installer workflow. + properties: + image: + description: The full URI to the image + type: string + image-credential: + description: The credential to use when interacting with the image + type: string + resources: + description: Resource limits and requests for deployments + properties: + limits: + properties: + cpu: + type: string + memory: + type: string + type: object + requests: + properties: + cpu: + type: string + memory: + type: string + type: object + type: object + type: object + artifactServer: + description: Settings related to ArtifactServer. + properties: + image: + description: The full URI to the image + type: string + image-credential: + description: The credential to use when interacting with the image + type: string + resources: + description: Resource limits and requests for deployments + properties: + limits: + properties: + cpu: + type: string + memory: + type: string + type: object + requests: + properties: + cpu: + type: string + memory: + type: string + type: object + type: object + type: object + bootstrapServer: + description: Settings related to BootstrapServer. + properties: + image: + description: The full URI to the image + type: string + image-credential: + description: The credential to use when interacting with the image + type: string + resources: + description: Resource limits and requests for deployments + properties: + limits: + properties: + cpu: + type: string + memory: + type: string + type: object + requests: + properties: + cpu: + type: string + memory: + type: string + type: object + type: object + type: object + certChecker: + description: Settings related to CertChecker. + properties: + image: + description: The full URI to the image + type: string + image-credential: + description: The credential to use when interacting with the image + type: string + resources: + description: Resource limits and requests for deployments + properties: + limits: + properties: + cpu: + type: string + memory: + type: string + type: object + requests: + properties: + cpu: + type: string + memory: + type: string + type: object + type: object + type: object + certificate-git-repo: + description: Settings related to the certificate backup + properties: + remote-path: + description: The full URI to the git repository + type: string + type: object + checkpoint-git-repo: + description: Settings related to the checkpoint or backup git repository. + properties: + remote-path: + description: The full URI to the git repository + type: string + type: object + cluster: + description: Settings related to how the cluster is exposed to external entities, and how the cluster members communicate with each other. + properties: + external: + description: Configure how this cluster is presented to external entities. This is used to configure the external IP address and port that will be used to access the cluster, where values are likely configured on a loadbalancer fronting the cluster. + properties: + domainName: + description: The external domain name of the cluster + type: string + httpPort: + description: HTTP port used to reach this cluster externally + format: int32 + type: integer + httpsPort: + description: HTTPS port used to reach this cluster externally + format: int32 + type: integer + ipv4Address: + description: The external IPv4 address of the cluster + type: string + ipv6Address: + description: The external IPv6 address of the cluster + type: string + type: object + internal: + description: Configure how this cluster is presented at the k8s edge. This is used to configure the eda-api service. + properties: + httpPort: + description: HTTP port used by api service + format: int32 + type: integer + httpsPort: + description: HTTPS port used by api service + format: int32 + type: integer + type: object + redundancy: + description: Configure the redundancy of the cluster. This is used to configure how the cluster members communicate with each other, and how they authenticate each other. + properties: + active: + description: Sets the active cluster from the members list + type: string + credential: + description: The credential used by this cluster to authenticate to each other cluster member. + type: string + members: + description: The list of members in the cluster. + items: + properties: + address: + description: The address of the cluster member, this address is used for synchronization and must be reachable. + type: string + name: + description: The name of the cluster member, this value should match the name of the EngineConfig resource loaded in each member. + type: string + port: + description: The port of the cluster member. + type: integer + required: + - address + - name + type: object + minItems: 1 + type: array + required: + - active + - members + type: object + type: object + customSettings: + description: |- + Directives to override internal application settings + This should be set only at direction of support + items: + properties: + applicationName: + description: Name of application + type: string + settings: + description: List of options to override + items: + properties: + name: + description: Setting Name + type: string + value: + description: Value + type: string + type: object + type: array + type: object + type: array + cx: + description: Settings related to CX. + properties: + image: + description: The full URI to the image + type: string + image-credential: + description: The credential to use when interacting with the image + type: string + resources: + description: Resource limits and requests for deployments + properties: + limits: + properties: + cpu: + type: string + memory: + type: string + type: object + requests: + properties: + cpu: + type: string + memory: + type: string + type: object + type: object + type: object + cxCluster: + description: Settings related to remote CX Cluster. + properties: + address: + description: The address of the remote cx cluster, this address is used to create device sims on remote cluster and must be reachable. + type: string + isCxAgent: + description: Run cx as a agent to reconcile sims on remote cx cluster. + type: boolean + port: + description: The port of the remote cx cluster. + type: integer + required: + - isCxAgent + type: object + flowEngine: + description: Settings related to WorkflowEngine. + properties: + image: + description: The full URI to the image + type: string + image-credential: + description: The credential to use when interacting with the image + type: string + resources: + description: Resource limits and requests for deployments + properties: + limits: + properties: + cpu: + type: string + memory: + type: string + type: object + requests: + properties: + cpu: + type: string + memory: + type: string + type: object + type: object + type: object + git: + description: Settings related to git servers, used for storing and recovering the state of the cluster. + properties: + servers: + description: Define the set of git servers to use when interacting with git repositories. Each server will receive the full set of changes, and any can be used to recover a cluster. + items: + properties: + credential: + description: The credential to use when authenticating with the git server + type: string + name: + description: The name of the git server + type: string + uri: + description: The URI of the git server + type: string + required: + - credential + - uri + type: object + type: array + type: object + identity: + description: Settings related to Identity and Access management server. + properties: + image: + description: The full URI to the image + type: string + image-credential: + description: The credential to use when interacting with the image + type: string + replicas: + description: The number of replicas to launch + format: int32 + type: integer + resources: + description: Resource limits and requests for deployments + properties: + limits: + properties: + cpu: + type: string + memory: + type: string + type: object + requests: + properties: + cpu: + type: string + memory: + type: string + type: object + type: object + type: object + identity-git-repo: + description: Settings related to user identities + properties: + remote-path: + description: The full URI to the git repository + type: string + type: object + identitydb: + description: Settings related to Identity DB server. + properties: + image: + description: The full URI to the image + type: string + image-credential: + description: The credential to use when interacting with the image + type: string + replicas: + description: The number of replicas to launch + format: int32 + type: integer + resources: + description: Resource limits and requests for deployments + properties: + limits: + properties: + cpu: + type: string + memory: + type: string + type: object + requests: + properties: + cpu: + type: string + memory: + type: string + type: object + type: object + type: object + kubernetes: + description: Settings related to interactions with Kubernetes. + properties: + exports: + description: |- + List of GVKs to export to kubernetes. By default, any CR created by a script will not be exported to kubernetes + unless listed in the exports list. + items: + properties: + gvk: + description: The group + version + kind to apply the specified policy to + properties: + group: + description: The group of the resource to import/export + type: string + kind: + description: The kind of the resource to import/export + type: string + version: + description: The version of the resource to import/export + type: string + required: + - kind + - version + type: object + policy: + description: The policy to apply to the GVK + enum: + - all + type: string + required: + - gvk + - policy + type: object + type: array + imports: + description: List of GVKs to import from kubernetes. By default, any CR used by a script will already have its spec imported. + items: + properties: + gvk: + description: The group + version + kind to apply the specified policy to + properties: + group: + description: The group of the resource to import/export + type: string + kind: + description: The kind of the resource to import/export + type: string + version: + description: The version of the resource to import/export + type: string + required: + - kind + - version + type: object + policy: + description: The policy to apply to the GVK + enum: + - all + - spec + type: string + required: + - gvk + - policy + type: object + type: array + mode: + description: |- + Sets the default mode for interacting with resources in Kubernetes. + This controls the set of resources that CE will publish to Kubernetes, and the set of resources that CE will treat as inputs. + This setting can be overridden on a per-resource basis using the imports and exports lists, or by an application within their Manifest. + enum: + - None + type: string + type: object + llm: + description: Settings related to the large language model used for natural language processing. + properties: + apiKey: + description: Set the API key to use when interacting with the LLM API + type: string + model: + default: gpt-4-1106-preview + description: Set the model for natural language processing + type: string + type: object + metricsServer: + description: Settings related to MetricsServer. + properties: + image: + description: The full URI to the image + type: string + image-credential: + description: The credential to use when interacting with the image + type: string + resources: + description: Resource limits and requests for deployments + properties: + limits: + properties: + cpu: + type: string + memory: + type: string + type: object + requests: + properties: + cpu: + type: string + memory: + type: string + type: object + type: object + type: object + npp: + description: Settings related to NPP. + properties: + image: + description: The full URI to the image + type: string + image-credential: + description: The credential to use when interacting with the image + type: string + resources: + description: Resource limits and requests for deployments + properties: + limits: + properties: + cpu: + type: string + memory: + type: string + type: object + requests: + properties: + cpu: + type: string + memory: + type: string + type: object + type: object + type: object + nppNodeLabelSelector: + description: |- + Which nodes to run NPP for - if empty, all nodes are run, e.g. "role in (leaf-group1)" will run NPP only for + toponodes with the label "role=leaf-group1". This also controls which nodes are simulated. + items: + type: string + type: array + playground: + description: |- + Indicates if the current cluster is running in playground mode. If true, TargetNodes are generated by CX. + Additionally a branch is created at startup to support changes in the playground, which can later be merged. + type: string + python: + description: Settings related to Python interpreters. + properties: + heap-size: + description: The maximum heap size for each Python interpreter + type: integer + local-script-dir: + description: Override path to use for the Python interpreter to read scripts from + type: string + num-interpreters: + description: The number of interpreters to run in parallel + type: integer + script-timeout: + description: How long to allow scripts to run before timing out + type: integer + stdout-capture-limit: + description: The maximum number of lines to capture from STDOUT + type: integer + type: object + scripts-git-repo: + description: Settings related to the apps git repository. + properties: + remote-path: + description: The full URI to the git repository + type: string + type: object + simulate: + default: true + description: |- + Simulate using CX - if true CX is reponsible for generating the TargetNode CRs (this flag is only relevant for + !playground. In the playground case, simulate is always true) + type: boolean + simulateNodeLabelSelector: + description: |- + Which nodes to simulate - if empty, all nodes are simulated, e.g. "role in (leaf-group1)" will simulate only + toponodes with the label "role=leaf-group1" + items: + type: string + type: array + singleStackServices: + description: Run services in single-stack mode instead of PreferredDualStack. + type: boolean + stateAggregator: + description: Settings related to StateAggregator. + properties: + image: + description: The full URI to the image + type: string + image-credential: + description: The credential to use when interacting with the image + type: string + replicas: + description: The number of replicas to launch + format: int32 + type: integer + resources: + description: Resource limits and requests for deployments + properties: + limits: + properties: + cpu: + type: string + memory: + type: string + type: object + requests: + properties: + cpu: + type: string + memory: + type: string + type: object + type: object + type: object + stateController: + description: Settings related to StateController. + properties: + image: + description: The full URI to the image + type: string + image-credential: + description: The credential to use when interacting with the image + type: string + resources: + description: Resource limits and requests for deployments + properties: + limits: + properties: + cpu: + type: string + memory: + type: string + type: object + requests: + properties: + cpu: + type: string + memory: + type: string + type: object + type: object + type: object + stateEngine: + description: Settings related to StateEngine. + properties: + image: + description: The full URI to the image + type: string + image-credential: + description: The credential to use when interacting with the image + type: string + replicas: + description: The number of replicas to launch + format: int32 + type: integer + resources: + description: Resource limits and requests for deployments + properties: + limits: + properties: + cpu: + type: string + memory: + type: string + type: object + requests: + properties: + cpu: + type: string + memory: + type: string + type: object + type: object + type: object + testMan: + description: Settings related to TestMan. + properties: + image: + description: The full URI to the image + type: string + image-credential: + description: The credential to use when interacting with the image + type: string + resources: + description: Resource limits and requests for deployments + properties: + limits: + properties: + cpu: + type: string + memory: + type: string + type: object + requests: + properties: + cpu: + type: string + memory: + type: string + type: object + type: object + type: object + user-settings-git-repo: + description: Settings related to the user settings git repository. + properties: + remote-path: + description: The full URI to the git repository + type: string + type: object + required: + - simulate + type: object + status: + description: EngineConfigStatus defines the observed state of EngineConfig + properties: + activityState: + description: Indicates the activity state of this cluster - either active, standby or unknown. + type: string + cluster: + description: status related to how the cluster is exposed to external entities. + properties: + redundancy: + properties: + members: + description: The list of members in the cluster. + items: + properties: + activityState: + description: The activity state of the cluster member. + type: string + name: + description: The name of the cluster member. + type: string + reachable: + description: Whether this cluster member is reachable. + type: boolean + synchronized: + description: Whether this cluster member is in sync with the active cluster. + type: boolean + required: + - name + - reachable + - synchronized + type: object + type: array + type: object + type: object + git: + description: status related to git servers. + properties: + servers: + description: The status of git servers. + items: + properties: + name: + description: The name of the git server + type: string + status: + description: The status of the git server + type: string + required: + - name + type: object + type: array + type: object + licenses: + description: Status related to licenses. + properties: + activeLicense: + description: Reference to the License currently providing the "base" feature. + type: string + expirationDate: + description: Date and time the currently active license will expire. + type: string + licensedState: + description: Licensed state, indicating the presence of a license providing the "base" feature. + type: string + type: object + run-status: + description: Indicates the current run status of the cluster. + type: string + type: object + type: object +served: true +storage: true +subresources: + status: {} diff --git a/static/resources/25.4.2/fabricmodules.components.eda.nokia.com/v1.yaml b/static/resources/25.4.2/fabricmodules.components.eda.nokia.com/v1.yaml new file mode 100644 index 0000000..0a2460d --- /dev/null +++ b/static/resources/25.4.2/fabricmodules.components.eda.nokia.com/v1.yaml @@ -0,0 +1,116 @@ +name: v1 +schema: + openAPIV3Schema: + description: FabricModule is the Schema for the fabricmodules API + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + description: FabricModuleSpec defines the desired state of FabricModule + type: object + status: + description: FabricModuleStatus defines the observed state of FabricModule + properties: + commonLanguageEquipmentIdentifier: + description: The CLEI code of this component + type: string + lastBooted: + description: The date and time this component last booted + type: string + lastChange: + description: The date and time this component last changed operational state + type: string + locatorEnabled: + description: Indicates if the locator LED for the component is active + type: boolean + manufacturedDate: + description: The date this component was manufactured + type: string + operationalState: + description: Indicates the current operational state of this component. + enum: + - Up + - Down + - Rebooting + - Unknown + - Starting + - Empty + type: string + parent: + description: Reference to a parent component + type: string + parentType: + description: Type of the parent component + enum: + - Fan + - FanTray + - PowerSupply + - PowerModule + - PowerShelf + - InterfaceModule + - ControlModule + - FabricModule + - Chassis + - Transceiver + type: string + partNumber: + description: The discovered part number of this component + type: string + removable: + description: Indicates if this component is removable + type: boolean + serialNumber: + description: The discovered serial number of this component + type: string + slot: + description: Slot this component resides in, unset for components that do not have a slot or ID + type: string + softwareVersion: + description: Version string of the software running on this component + type: string + target: + description: Target this component resides on. + type: string + temperature: + description: Temperature information for this component + properties: + alarmState: + description: The temperature alarm state, as reported by the component + type: boolean + instant: + description: The current temperature of this component + type: integer + margin: + description: The margin temperature of this component + type: integer + maximum: + description: The maximum temperature of this component + type: integer + threshold: + description: The threshold temperature of this component + type: integer + type: object + type: + description: Component type, as provided by the target + type: string + type: object + type: object +served: true +storage: true +subresources: + status: {} diff --git a/static/resources/25.4.2/fabrics.fabrics.eda.nokia.com/v1alpha1.yaml b/static/resources/25.4.2/fabrics.fabrics.eda.nokia.com/v1alpha1.yaml new file mode 100644 index 0000000..002721c --- /dev/null +++ b/static/resources/25.4.2/fabrics.fabrics.eda.nokia.com/v1alpha1.yaml @@ -0,0 +1,502 @@ +additionalPrinterColumns: + - jsonPath: .status.lastChange + name: Last Change + type: date + - jsonPath: .status.operationalState + name: Operational State + type: string +name: v1alpha1 +schema: + openAPIV3Schema: + description: Fabric is the Schema for the fabrics API + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + description: The Fabric defines the desired state of a Fabric resource, enabling the automation and management of data center network fabrics. It includes configurations for IP address allocation pools, network topology roles (Leafs, Spines, SuperSpines, BorderLeafs), inter-switch links, and network protocols (underlay and overlay). The specification allows for detailed control over routing strategies, including ASN allocations for BGP-based protocols, and supports advanced features like BFD. + properties: + borderLeafs: + properties: + asnPool: + description: Reference to an IndexAllocationPool pool to use for Autonomous System Number allocations. Used when eBGP is configured as an underlay protocol. This reference will take precedence over the spec.underlayProtocol.asnPool. + type: string + borderLeafNodeSelector: + description: Label selector used to select Toponodes to configure as Borderleaf nodes. + items: + type: string + type: array + routeLeaking: + description: Route leaking controlled by routing policies in and out of the DefaultRouters on each node. If specifided under the Leafs, Spines, SuperSpines, or BorderLeafs those will take precedence. + properties: + exportPolicy: + description: Reference to a Policy resource to use when evaluating route exports from the DefaultRouter. + type: string + importPolicy: + description: Reference to a Policy resource to use when evaluating route imports into the DefaultRouter. + type: string + required: + - exportPolicy + - importPolicy + type: object + systemPoolIPV4: + description: Reference to an IPAllocationPool used to dynamically allocate an IPv4 address to system/lo0 interfaces. This reference will take precedence over the spec.systemPoolIPV4. Both IPv4 and IPv6 pools can be configured simultaneously for dual-stack system/lo0 interfaces. + type: string + systemPoolIPV6: + description: Reference to an IPAllocationPool used to dynamically allocate an IPv6 address to system/lo0 interfaces. This reference will take precedence over the spec.systemPoolIPV6. Both IPv4 and IPv6 pools can be configured simultaneously for dual-stack system/lo0 interfaces. + type: string + type: object + fabricSelector: + description: Selects Fabric resources when connecting multiple Fabrics together. Only one Fabric needs the selector, typically the upper layer (e.g., Superspine) selecting the lower layer (e.g., a pod fabric of leafs and spines). This helps build complete Fabrics in smaller instances of the Fabric resource. This instance selecting other fabrics must also select the InterSwitchLinks connecting itself to the selected Fabrics. + items: + type: string + type: array + interSwitchLinks: + properties: + linkSelector: + description: Selects TopoLinks to include in this Fabric, creating an ISL resource if both Nodes in the TopoLink are part of this Fabric or a selected Fabric. + items: + type: string + type: array + poolIPV4: + description: Reference to an IPAllocationPool used to dynamically allocate an IPv4 address to DefaultInterfaces which are members of the ISLs. Both IPv4 and IPv6 pools can be configured simultaneously for dual-stack DefaultInterfaces. + type: string + poolIPV6: + description: Reference to an IPAllocationPool used to dynamically allocate an IPv6 address to DefaultInterfaces which are members of the ISLs. Both IPv4 and IPv6 pools can be configured simultaneously for dual-stack DefaultInterfaces. + type: string + qos: + properties: + egressPolicy: + type: string + ingressPolicy: + type: string + type: object + unnumbered: + description: Enables unnumbered interfaces on the ISL; for IPv6, only link-local addresses are used unless a PoolIPV6 is also specified. DefaultInterfaces in the ISL are added to the DefaultBGPPeer dynamic neighbor list when using an eBGP underlay. + enum: + - IPV6 + type: string + vlanID: + description: Configures the provided VLAN on the DefaultInterfaces which are members of the ISLs. + maximum: 4094 + minimum: 1 + type: integer + type: object + leafs: + properties: + asnPool: + description: Reference to an IndexAllocationPool pool to use for Autonomous System Number allocations. Used when eBGP is configured as an underlay protocol. This reference will take precedence over the spec.underlayProtocol.asnPool. + type: string + leafNodeSelector: + description: Label selector used to select Toponodes to configure as Leaf nodes. + items: + type: string + type: array + routeLeaking: + description: Route leaking controlled by routing policies in and out of the DefaultRouters on each node. If specifided under the Leafs, Spines, SuperSpines, or BorderLeafs those will take precedence. + properties: + exportPolicy: + description: Reference to a Policy resource to use when evaluating route exports from the DefaultRouter. + type: string + importPolicy: + description: Reference to a Policy resource to use when evaluating route imports into the DefaultRouter. + type: string + required: + - exportPolicy + - importPolicy + type: object + systemPoolIPV4: + description: Reference to an IPAllocationPool used to dynamically allocate an IPv4 address to system/lo0 interfaces. This reference will take precedence over the spec.systemPoolIPV4. Both IPv4 and IPv6 pools can be configured simultaneously for dual-stack system/lo0 interfaces. + type: string + systemPoolIPV6: + description: Reference to an IPAllocationPool used to dynamically allocate an IPv6 address to system/lo0 interfaces. This reference will take precedence over the spec.systemPoolIPV6. Both IPv4 and IPv6 pools can be configured simultaneously for dual-stack system/lo0 interfaces. + type: string + type: object + overlayProtocol: + description: Set the overlay protocol used + properties: + bfd: + description: Enable BFD on overlay protocol + properties: + desiredMinTransmitInt: + default: 1000000 + description: The minimum interval in microseconds between transmission of BFD control packets. + maximum: 100000000 + minimum: 10000 + type: integer + detectionMultiplier: + default: 3 + description: The number of packets that must be missed to declare this session as down. + maximum: 20 + minimum: 3 + type: integer + enabled: + default: false + description: Enable Biforward Detection. + type: boolean + minEchoReceiveInterval: + default: 1000000 + description: The minimum interval between echo packets the local node can receive in microseconds. + maximum: 100000000 + minimum: 0 + type: integer + requiredMinReceive: + default: 1000000 + description: The minimum interval in microseconds between received BFD control packets that this system should support. + maximum: 100000000 + minimum: 10000 + type: integer + type: object + bgp: + description: Overlay specific BGP properties. + properties: + autonomousSystem: + description: Autonomous System used for iBGP peering session, when protocol is set to IBGP providing an autonomousSystem is required. + format: int32 + type: integer + clusterID: + description: Sets the cluster ID used by DefaultRouteReflectors, when protocol is set to IBGP providing a clusterID is required. + type: string + exportPolicy: + description: Reference to a Policy, when left empty or not specified the Fabric will automatically generate a policy for the specified protocols. + items: + type: string + type: array + importPolicy: + description: Reference to a Policy, when left empty or not specified the Fabric will automatically generate a policy for the specified protocols. + items: + type: string + type: array + keychain: + description: Keychain to be used for authentication when overlay protocol is IBGP, ignored otherwise + type: string + rrClientNodeSelector: + description: Label selector used to select Toponodes to configure as DefaultRouteReflectorClients, these are typically Leaf or Borderleaf nodes. Used on conjunction with rrNodeSelector in order to configure the DefaultBGPPeers for both the DefaultRouteReflectors and DefaultRouteReflectorClients. + items: + type: string + type: array + rrIPAddresses: + description: List of route reflector IP addresses not provisioned by this instance of a Fabric resource. Used with rrClientNodeSelector to configure the DefaultBGPPeers on the selected nodes to peer the list of external route reflector IPs. + items: + type: string + type: array + rrNodeSelector: + description: Label selector used to select Toponodes to configure as DefaultRouteReflectors, these are typically Spine, Superspine or Borderleaf nodes. Used on conjunction with rrClientNodeSelector in order to configure the DefaultBGPPeers for both the DefaultRouteReflectors and DefaultRouteReflectorClients. + items: + type: string + type: array + timers: + description: Timer configurations + properties: + connectRetry: + description: The time interval in seconds between successive attempts to establish a session with a peer. + maximum: 65535 + minimum: 1 + type: integer + holdTime: + description: The hold-time interval in seconds that the router proposes to the peer in its OPEN message. + maximum: 65535 + minimum: 0 + type: integer + keepAlive: + description: The interval in seconds between successive keepalive messages sent to the peer. + maximum: 21845 + minimum: 0 + type: integer + minimumAdvertisementInterval: + description: The value assigned to the MinRouteAdvertisementIntervalTimer of RFC 4271, for both EBGP and IBGP sessions. + maximum: 255 + minimum: 1 + type: integer + type: object + type: object + protocol: + description: List of routing protocols to used to advertise EVPN routes for overlay services. When EBGP is used, the BGP properties configured under the spec.underlayProtocol will be used. + enum: + - IBGP + - EBGP + type: string + required: + - protocol + type: object + routeLeaking: + description: Route leaking controlled by routing policies in and out of the DefaulRouters on each node. If specifided under the Leafs, Spines, SuperSpines, or BorderLeafs those will take precedence. + properties: + exportPolicy: + description: Reference to a Policy resource to use when evaluating route exports from the DefaultRouter. + type: string + importPolicy: + description: Reference to a Policy resource to use when evaluating route imports into the DefaultRouter. + type: string + required: + - exportPolicy + - importPolicy + type: object + spines: + properties: + asnPool: + description: Reference to an IndexAllocationPool pool to use for Autonomous System Number allocations. Used when eBGP is configured as an underlay protocol. This reference will take precedence over the spec.underlayProtocol.asnPool. + type: string + routeLeaking: + description: Route leaking controlled by routing policies in and out of the DefaultRouters on each node. If specifided under the Leafs, Spines, SuperSpines, or BorderLeafs those will take precedence. + properties: + exportPolicy: + description: Reference to a Policy resource to use when evaluating route exports from the DefaultRouter. + type: string + importPolicy: + description: Reference to a Policy resource to use when evaluating route imports into the DefaultRouter. + type: string + required: + - exportPolicy + - importPolicy + type: object + spineNodeSelector: + description: Label selector used to select Toponodes to configure as Spine nodes. + items: + type: string + type: array + systemPoolIPV4: + description: Reference to an IPAllocationPool used to dynamically allocate an IPv4 address to system/lo0 interfaces. This reference will take precedence over the spec.systemPoolIPV4. Both IPv4 and IPv6 pools can be configured simultaneously for dual-stack system/lo0 interfaces. + type: string + systemPoolIPV6: + description: Reference to an IPAllocationPool used to dynamically allocate an IPv6 address to system/lo0 interfaces. This reference will take precedence over the spec.systemPoolIPV6. Both IPv4 and IPv6 pools can be configured simultaneously for dual-stack system/lo0 interfaces. + type: string + type: object + superSpines: + properties: + asnPool: + description: Reference to an IndexAllocationPool pool to use for Autonomous System Number allocations. Used when eBGP is configured as an underlay protocol. This reference will take precedence over the spec.underlayProtocol.asnPool. + type: string + routeLeaking: + description: Route leaking controlled by routing policies in and out of the DefaultRouters on each node. If specifided under the Leafs, Spines, SuperSpines, or BorderLeafs those will take precedence. + properties: + exportPolicy: + description: Reference to a Policy resource to use when evaluating route exports from the DefaultRouter. + type: string + importPolicy: + description: Reference to a Policy resource to use when evaluating route imports into the DefaultRouter. + type: string + required: + - exportPolicy + - importPolicy + type: object + superSpineNodeSelector: + description: Label selector used to select Toponodes to configure as Superspine nodes. + items: + type: string + type: array + systemPoolIPV4: + description: Reference to an IPAllocationPool used to dynamically allocate an IPv4 address to system/lo0 interfaces. This reference will take precedence over the spec.systemPoolIPV4. Both IPv4 and IPv6 pools can be configured simultaneously for dual-stack system/lo0 interfaces. + type: string + systemPoolIPV6: + description: Reference to an IPAllocationPool used to dynamically allocate an IPv6 address to system/lo0 interfaces. This reference will take precedence over the spec.systemPoolIPV6. Both IPv4 and IPv6 pools can be configured simultaneously for dual-stack system/lo0 interfaces. + type: string + type: object + systemPoolIPV4: + description: Reference to an IPAllocationPool used to dynamically allocate an IPv4 address to system/lo0 interfaces. If specified under the Leaf/Spine/Superspine/Borderleaf those will take precedence. Both IPv4 and IPv6 pools can be configured simultaneously for dual-stack system/lo0 interfaces. + type: string + systemPoolIPV6: + description: Reference to an IPAllocationPool used to dynamically allocate an IPv6 address to system/lo0 interfaces. If specified under the Leaf/Spine/Superspine/Borderleaf those will take precedence. Both IPv4 and IPv6 pools can be configured simultaneously for dual-stack system/lo0 interfaces. + type: string + underlayProtocol: + description: Set the underlay protocol used + properties: + bfd: + description: Enable BFD on underlay protocol + properties: + desiredMinTransmitInt: + default: 1000000 + description: The minimum interval in microseconds between transmission of BFD control packets. + maximum: 100000000 + minimum: 10000 + type: integer + detectionMultiplier: + default: 3 + description: The number of packets that must be missed to declare this session as down. + maximum: 20 + minimum: 3 + type: integer + enabled: + default: false + description: Enable Biforward Detection. + type: boolean + minEchoReceiveInterval: + default: 1000000 + description: The minimum interval between echo packets the local node can receive in microseconds. + maximum: 100000000 + minimum: 0 + type: integer + requiredMinReceive: + default: 1000000 + description: The minimum interval in microseconds between received BFD control packets that this system should support. + maximum: 100000000 + minimum: 10000 + type: integer + type: object + bgp: + description: Underlay specific BGP properties. + properties: + asnPool: + description: Reference to an IndexAllocationPool pool to use for Autonomous System Number allocations. Used when eBGP is configured as an underlay protocol. If specified under the Leaf/Spine/Superspine/Borderleaf those will take precedence. + type: string + exportPolicy: + description: Reference to a Policy, when left empty or not specified the Fabric will automatically generate a policy for the specified protocols. + items: + type: string + type: array + importPolicy: + description: Reference to a Policy, when left empty or not specified the Fabric will automatically generate a policy for the specified protocols. + items: + type: string + type: array + keychain: + description: Keychain to be used for authentication + type: string + timers: + description: Timer configurations + properties: + connectRetry: + description: The time interval in seconds between successive attempts to establish a session with a peer. + maximum: 65535 + minimum: 1 + type: integer + holdTime: + description: The hold-time interval in seconds that the router proposes to the peer in its OPEN message. + maximum: 65535 + minimum: 0 + type: integer + keepAlive: + description: The interval in seconds between successive keepalive messages sent to the peer. + maximum: 21845 + minimum: 0 + type: integer + minimumAdvertisementInterval: + description: The value assigned to the MinRouteAdvertisementIntervalTimer of RFC 4271, for both EBGP and IBGP sessions. + maximum: 255 + minimum: 1 + type: integer + type: object + type: object + protocol: + description: List of routing protocols to used between peers of an ISL. Multiple protocols may be listed, if so multiple protocols will be used. + items: + enum: + - EBGP + type: string + type: array + required: + - bgp + - protocol + type: object + type: object + status: + description: FabricStatus defines the observed state of Fabric + properties: + borderLeafNodes: + description: List of border leaf nodes in the Fabric. + items: + properties: + node: + description: Name of the TopoNode. + type: string + operatingSystem: + description: Operating system running on the node. + type: string + operatingSystemVersion: + description: Operating system version running on the node. + type: string + underlayAutonomousSystem: + description: Underlay Autonomous System used for eBGP peering session, when protocol is set to eBGP this is required. + format: int32 + type: integer + type: object + type: array + health: + description: Indicates the health score of the Fabric. The health score of the Fabric is determined by the aggregate health score of the resources emited by the Fabric such as ISL, DefaultRouteReflectors etc. + type: integer + healthScoreReason: + description: Indicates the reason for the health score. + type: string + lastChange: + description: The time when the state of the resource last changed. + type: string + leafNodes: + description: List of leaf nodes in the Fabric. + items: + properties: + node: + description: Name of the TopoNode. + type: string + operatingSystem: + description: Operating system running on the node. + type: string + operatingSystemVersion: + description: Operating system version running on the node. + type: string + underlayAutonomousSystem: + description: Underlay Autonomous System used for eBGP peering session, when protocol is set to eBGP this is required. + format: int32 + type: integer + type: object + type: array + operationalState: + description: 'Operational state of the Fabric. The operational state of the fabric is determined by monitoring the operational state of the following resources (if applicable): DefaultRouters, ISLs.' + type: string + spineNodes: + description: List of spine nodes in the Fabric. + items: + properties: + node: + description: Name of the TopoNode. + type: string + operatingSystem: + description: Operating system running on the node. + type: string + operatingSystemVersion: + description: Operating system version running on the node. + type: string + underlayAutonomousSystem: + description: Underlay Autonomous System used for eBGP peering session, when protocol is set to eBGP this is required. + format: int32 + type: integer + type: object + type: array + superSpineNodes: + description: List of super spine nodes in the Fabric. + items: + properties: + node: + description: Name of the TopoNode. + type: string + operatingSystem: + description: Operating system running on the node. + type: string + operatingSystemVersion: + description: Operating system version running on the node. + type: string + underlayAutonomousSystem: + description: Underlay Autonomous System used for eBGP peering session, when protocol is set to eBGP this is required. + format: int32 + type: integer + type: object + type: array + type: object + type: object +served: true +storage: true +subresources: + status: {} diff --git a/static/resources/25.4.2/fabricstates.fabrics.eda.nokia.com/v1alpha1.yaml b/static/resources/25.4.2/fabricstates.fabrics.eda.nokia.com/v1alpha1.yaml new file mode 100644 index 0000000..18933d6 --- /dev/null +++ b/static/resources/25.4.2/fabricstates.fabrics.eda.nokia.com/v1alpha1.yaml @@ -0,0 +1,120 @@ +name: v1alpha1 +schema: + openAPIV3Schema: + description: FabricState is the Schema for the fabricstates API + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + description: FabricStateSpec defines the desired state of FabricState + properties: + borderLeafNodes: + description: List of borderleaf nodes in the fabric + items: + properties: + node: + description: Name of the TopoNode. + type: string + operatingSystem: + description: Operating system running on the node. + type: string + operatingSystemVersion: + description: Operating system version running on the node. + type: string + underlayAutonomousSystem: + description: Underlay Autonomous System used for eBGP peering session, when protocol is set to eBGP this is required. + format: int32 + type: integer + type: object + type: array + defaultRouters: + description: List of DefaultRouters used within the fabric + items: + type: string + type: array + isls: + description: List of ISL used in the Fabric + items: + type: string + type: array + leafNodes: + description: List of leaf nodes in the fabric + items: + properties: + node: + description: Name of the TopoNode. + type: string + operatingSystem: + description: Operating system running on the node. + type: string + operatingSystemVersion: + description: Operating system version running on the node. + type: string + underlayAutonomousSystem: + description: Underlay Autonomous System used for eBGP peering session, when protocol is set to eBGP this is required. + format: int32 + type: integer + type: object + type: array + spineNodes: + description: List of spine nodes in the fabric + items: + properties: + node: + description: Name of the TopoNode. + type: string + operatingSystem: + description: Operating system running on the node. + type: string + operatingSystemVersion: + description: Operating system version running on the node. + type: string + underlayAutonomousSystem: + description: Underlay Autonomous System used for eBGP peering session, when protocol is set to eBGP this is required. + format: int32 + type: integer + type: object + type: array + superSpineNodes: + description: List of super spine nodes in the fabric + items: + properties: + node: + description: Name of the TopoNode. + type: string + operatingSystem: + description: Operating system running on the node. + type: string + operatingSystemVersion: + description: Operating system version running on the node. + type: string + underlayAutonomousSystem: + description: Underlay Autonomous System used for eBGP peering session, when protocol is set to eBGP this is required. + format: int32 + type: integer + type: object + type: array + type: object + status: + description: FabricStateStatus defines the observed state of FabricState + type: object + type: object +served: true +storage: true +subresources: + status: {} diff --git a/static/resources/25.4.2/fans.components.eda.nokia.com/v1.yaml b/static/resources/25.4.2/fans.components.eda.nokia.com/v1.yaml new file mode 100644 index 0000000..e925057 --- /dev/null +++ b/static/resources/25.4.2/fans.components.eda.nokia.com/v1.yaml @@ -0,0 +1,94 @@ +name: v1 +schema: + openAPIV3Schema: + description: Fan is the Schema for the fans API + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + description: FanSpec defines the desired state of Fan + type: object + status: + description: FanStatus defines the observed state of Fan + properties: + commonLanguageEquipmentIdentifier: + description: The CLEI code of this component + type: string + lastBooted: + description: The date and time this component last booted + type: string + lastChange: + description: The date and time this component last changed operational state + type: string + locatorEnabled: + description: Indicates if the locator LED for the component is active + type: boolean + manufacturedDate: + description: The date this component was manufactured + type: string + operationalState: + description: Indicates the current operational state of this component. + enum: + - Up + - Down + - Rebooting + - Unknown + - Starting + - Empty + type: string + parent: + description: Reference to a parent component + type: string + parentType: + description: Type of the parent component + enum: + - Fan + - FanTray + - PowerSupply + - PowerModule + - PowerShelf + - InterfaceModule + - ControlModule + - FabricModule + - Chassis + - Transceiver + type: string + partNumber: + description: The discovered part number of this component + type: string + removable: + description: Indicates if this component is removable + type: boolean + serialNumber: + description: The discovered serial number of this component + type: string + slot: + description: Slot this component resides in, unset for components that do not have a slot or ID + type: string + target: + description: Target this component resides on. + type: string + type: + description: Component type, as provided by the target + type: string + type: object + type: object +served: true +storage: true +subresources: + status: {} diff --git a/static/resources/25.4.2/filterdeployments.filters.eda.nokia.com/v1alpha1.yaml b/static/resources/25.4.2/filterdeployments.filters.eda.nokia.com/v1alpha1.yaml new file mode 100644 index 0000000..9931ed9 --- /dev/null +++ b/static/resources/25.4.2/filterdeployments.filters.eda.nokia.com/v1alpha1.yaml @@ -0,0 +1,50 @@ +name: v1alpha1 +schema: + openAPIV3Schema: + description: FilterDeployment is the Schema for the filterdeployments API + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + description: FilterDeploymentSpec defines the desired state of FilterDeployment + properties: + filter: + description: Specifies a filter to deploy on the specified Node + type: string + node: + description: Specifies a Node to deploy this filter on + type: string + type: + description: Specifies a filter type of the filter + enum: + - CPMFilter + - Filter + type: string + required: + - filter + - node + - type + type: object + status: + description: FilterDeploymentStatus defines the observed state of a FilterDeployment + type: object + type: object +served: true +storage: true +subresources: + status: {} diff --git a/static/resources/25.4.2/filters.filters.eda.nokia.com/v1alpha1.yaml b/static/resources/25.4.2/filters.filters.eda.nokia.com/v1alpha1.yaml new file mode 100644 index 0000000..5fe6c7c --- /dev/null +++ b/static/resources/25.4.2/filters.filters.eda.nokia.com/v1alpha1.yaml @@ -0,0 +1,629 @@ +name: v1alpha1 +schema: + openAPIV3Schema: + description: Filter is the Schema for the filters API + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + description: Filter allows for the creation and management of ordered filtering rules based on IP or MAC criteria. The resource supports various conditions and actions, enabling fine-grained control over network traffic by specifying rules for source and destination addresses, ports, and protocols. + properties: + entries: + description: Specifies the list of filter entries, in order. + items: + properties: + ipEntry: + properties: + action: + description: An action to take, either 'Accept','Drop', or 'RateLimit'. + enum: + - Drop + - Accept + - RateLimit + type: string + destinationPortName: + description: Destination port to match by name. + enum: + - ACAP + - AFP-TCP + - ARNS + - ASF-RMCP + - ASHARE + - ATALK-RM + - AURP + - AUTH + - BFD + - BFD-ECHO + - BFTP + - BGMP + - BGP + - BOOTPC + - BOOTPS + - CCSO-NS + - CHARGEN + - CISCO-TDP + - CITADEL + - CLEARCASE + - COMMERCE + - COURIER + - DAYTIME + - DHCP-FAILOVER + - DHCPV6-CLIENT + - DHCPV6-SERVER + - DICOM + - DISCARD + - DNSIX + - DOMAIN + - DSP + - ECHO + - EPP + - ESRO + - EXEC + - FINGER + - FTP + - FTP-DATA + - FTPS + - FTPS-DATA + - GODI + - GOPHER + - GTP-C + - GTP-PRIME + - GTP-U + - HA-CLUSTER + - HOSTNAME + - HP-ALARM-MGR + - HTTP + - HTTP-ALT + - HTTP-MGMT + - HTTP-RPC + - HTTPS + - IEEE-MMS-SSL + - IMAP + - IMAP3 + - IMAPS + - IPP + - IPSEC + - IPX + - IRC + - IRIS-BEEP + - ISAKMP + - ISAKMP-NAT + - ISCSI + - ISO-TSAP + - KERBEROS + - KERBEROS-ADM + - KLOGIN + - KPASSWD + - KSHELL + - L2TP + - LDAP + - LDAPS + - LDP + - LMP + - LOGIN + - LPD + - LSP-PING + - MAC-SERVER-ADM + - MATIP-A + - MATIP-B + - MICRO-BFD + - MICROSOFT-DS + - MOBILE-IP + - MONITOR + - MPP + - MS-EXCHANGE + - MSDP + - MSP + - MSSQL-M + - MSSQL-S + - MULTIHOP-BFD + - NAS + - NCP + - NETBIOS-DATA + - NETBIOS-NS + - NETBIOS-SS + - NETNEWS + - NETRJS-1 + - NETRJS-2 + - NETRJS-3 + - NETRJS-4 + - NETWALL + - NEW-RWHO + - NFS + - NNTP + - NNTPS + - NTP + - ODMR + - OLSR + - OPENVPN + - PIM-AUTO-RP + - PKIX-TIMESTAMP + - POP2 + - POP3 + - POP3S + - PPTP + - PRINT-SRV + - PTP-EVENT + - PTP-GENERAL + - QMTP + - QOTD + - RADIUS + - RADIUS-ACCT + - REMOTE-MAIL + - REMOTEFS + - REMOTECMD + - RIP + - RJE + - RLP + - RLZDB + - RMC + - RMONITOR + - RPC2PORTMAP + - RSYNC + - RTELNET + - RTSP + - SGMP + - SILC + - SMUX + - SNA-GW + - SNMP + - SNMP-TRAP + - SNPP + - SMTP + - SQL-SVCS + - SQL + - SSH + - SUBMISSION + - SUNRPC + - SVCLOC + - SYSLOG + - SYSTAT + - TACACS + - TALK + - TCPMUX + - TCPNETHASPSRV + - TFTP + - TIME + - TIMED + - UPS + - XDMCP + - XNS-CH + - XNS-MAIL + - XNS-TIME + - Z3950 + type: string + destinationPortNumber: + description: Destination port to match by numerical value. + maximum: 65535 + minimum: 0 + type: integer + destinationPortOperator: + description: Operator to use when matching destinationPort, either Equals, GreaterOrEquals, or LessOrEquals. + enum: + - Equals + - GreaterOrEquals + - LessOrEquals + type: string + destinationPortRange: + description: Range of destination ports to match, in the format n-m, e.g. 100-200, The start and end of the range must be port numbers. + type: string + destinationPrefix: + description: Destination prefix to match. + type: string + firstFragment: + description: Match the first fragment only. + type: boolean + fragment: + description: Match any fragment. + type: boolean + icmpCode: + description: Match a specific ICMP code, as a number between 0-255, e.g. 0. + items: + type: integer + maxItems: 255 + minItems: 0 + type: array + icmpTypeName: + description: Match a specific ICMP type by name, e.g. dest-unreachable. + enum: + - DestUnreachable + - Echo + - EchoReply + - EchoRequest + - McastRtrAdv + - McastRtrSolicit + - McastRtrTerm + - MldDone + - MldQuery + - MldReport + - MldV2 + - NeighborAdvertise + - NeighborSolicit + - NodeInfoQuery + - NodeInfoResponse + - PacketTooBig + - ParamProblem + - Redirect + - RouterAdvertise + - RouterRenumber + - RouterSolicit + - SourceQuench + - TimeExceeded + - Timestamp + - TimestampReply + type: string + icmpTypeNumber: + description: Match a specific ICMP type by number. + maximum: 255 + minimum: 0 + type: integer + protocolName: + description: Match a specific IP protocol name (specified in the type field of the IP header). + enum: + - AH + - EGP + - EIGRP + - ESP + - GGP + - GRE + - ICMP + - ICMP6 + - IDRP + - IGMP + - IGP + - IPV4 + - IPV6 + - IPV6-DEST-OPTS + - IPV6-HOP + - L2TP + - MPLS-IN-IP + - NO-NEXT-HDR + - OSPF + - PIM + - ROHC + - RSVP + - SCTP + - ST + - TCP + - UDP + - VRRP + type: string + protocolNumber: + description: Match a specific IP protocol number (specified in the type field of the IP header). + maximum: 255 + minimum: 0 + type: integer + rateLimit: + description: Rate limit to apply when the action is 'RateLimit'. + properties: + burstSize: + description: The maximum burst size in bytes. + format: int32 + type: integer + entrySpecificPolicer: + default: false + description: 'Controls policer instantiation: false for shared instance, true for per-entry instances' + type: boolean + peakRate: + description: The peak rate in kilobytes per second. + format: int32 + type: integer + scope: + default: Global + description: Determines how the policer is applied across subinterfaces. Global applies the policer across all subinterfaces, while Subinterface applies it individually to each subinterface. + enum: + - Global + - Subinterface + type: string + type: object + sourcePortName: + description: Source port to match by name. + enum: + - ACAP + - AFP-TCP + - ARNS + - ASF-RMCP + - ASHARE + - ATALK-RM + - AURP + - AUTH + - BFD + - BFD-ECHO + - BFTP + - BGMP + - BGP + - BOOTPC + - BOOTPS + - CCSO-NS + - CHARGEN + - CISCO-TDP + - CITADEL + - CLEARCASE + - COMMERCE + - COURIER + - DAYTIME + - DHCP-FAILOVER + - DHCPV6-CLIENT + - DHCPV6-SERVER + - DICOM + - DISCARD + - DNSIX + - DOMAIN + - DSP + - ECHO + - EPP + - ESRO + - EXEC + - FINGER + - FTP + - FTP-DATA + - FTPS + - FTPS-DATA + - GODI + - GOPHER + - GTP-C + - GTP-PRIME + - GTP-U + - HA-CLUSTER + - HOSTNAME + - HP-ALARM-MGR + - HTTP + - HTTP-ALT + - HTTP-MGMT + - HTTP-RPC + - HTTPS + - IEEE-MMS-SSL + - IMAP + - IMAP3 + - IMAPS + - IPP + - IPSEC + - IPX + - IRC + - IRIS-BEEP + - ISAKMP + - ISAKMP-NAT + - ISCSI + - ISO-TSAP + - KERBEROS + - KERBEROS-ADM + - KLOGIN + - KPASSWD + - KSHELL + - L2TP + - LDAP + - LDAPS + - LDP + - LMP + - LOGIN + - LPD + - LSP-PING + - MAC-SERVER-ADM + - MATIP-A + - MATIP-B + - MICRO-BFD + - MICROSOFT-DS + - MOBILE-IP + - MONITOR + - MPP + - MS-EXCHANGE + - MSDP + - MSP + - MSSQL-M + - MSSQL-S + - MULTIHOP-BFD + - NAS + - NCP + - NETBIOS-DATA + - NETBIOS-NS + - NETBIOS-SS + - NETNEWS + - NETRJS-1 + - NETRJS-2 + - NETRJS-3 + - NETRJS-4 + - NETWALL + - NEW-RWHO + - NFS + - NNTP + - NNTPS + - NTP + - ODMR + - OLSR + - OPENVPN + - PIM-AUTO-RP + - PKIX-TIMESTAMP + - POP2 + - POP3 + - POP3S + - PPTP + - PRINT-SRV + - PTP-EVENT + - PTP-GENERAL + - QMTP + - QOTD + - RADIUS + - RADIUS-ACCT + - REMOTE-MAIL + - REMOTEFS + - REMOTECMD + - RIP + - RJE + - RLP + - RLZDB + - RMC + - RMONITOR + - RPC2PORTMAP + - RSYNC + - RTELNET + - RTSP + - SGMP + - SILC + - SMUX + - SNA-GW + - SNMP + - SNMP-TRAP + - SNPP + - SMTP + - SQL-SVCS + - SQL + - SSH + - SUBMISSION + - SUNRPC + - SVCLOC + - SYSLOG + - SYSTAT + - TACACS + - TALK + - TCPMUX + - TCPNETHASPSRV + - TFTP + - TIME + - TIMED + - UPS + - XDMCP + - XNS-CH + - XNS-MAIL + - XNS-TIME + - Z3950 + type: string + sourcePortNumber: + description: Source port to match by numerical value. + maximum: 65535 + minimum: 0 + type: integer + sourcePortOperator: + description: Operator to use when matching sourcePort, either Equals, GreaterOrEquals, or LessOrEquals. + enum: + - Equals + - GreaterOrEquals + - LessOrEquals + type: string + sourcePortRange: + description: Range of source ports to match, in the format n-m, e.g. 100-200. The start and end of the range must be port numbers. + type: string + sourcePrefix: + description: Source prefix to match. + type: string + tcpFlags: + description: Match TCP flags, usable with !, &, | and the flags RST, SYN, and ACK. + type: string + type: object + macEntry: + properties: + action: + description: An action to take, either 'Accept','Drop', or 'RateLimit'. + enum: + - Drop + - Accept + - RateLimit + type: string + destinationMAC: + description: Match an Ethernet frame if its destination MAC address logically anded with the mask equals this MAC address. + type: string + destinationMACMask: + description: Match an Ethernet frame if its destination MAC address logically anded with the mask equals the configured MAC address. + type: string + ethertype: + description: An Ethernet frame matches this condition if its ethertype value (after 802.1Q VLAN tags) matches the specified value. + enum: + - ARP + - AUTHENTICATION8021X + - ETHOAM + - FCOE + - FCOEINITIALIZATION + - FLOWCONTROL + - IPV4 + - IPV6 + - LACP + - LLDP + - MACSEC + - MPLSMULTICAST + - MPLSUNICAST + - PBB + - PPPOEDISCOVERY + - PPPOESESSION + - PTP + - ROCE + type: string + outerVLANIDOperator: + description: Operator to use when matching OuterVlanIdValue, either Equals, GreaterOrEquals, or LessOrEquals. + enum: + - Equals + - GreaterOrEquals + - LessOrEquals + type: string + outerVLANIDRange: + description: Range of Outer vlan IDs to match, in the format n-m, e.g. 100-200 + type: string + outerVLANIDValue: + description: Ethernet frame matching criteria based on the outermost VLAN ID found before the subinterface-defining VLAN tag (if any) is removed. A value of 'none' will match only untagged frames. + type: string + rateLimit: + description: Rate limit to apply when the action is 'RateLimit'. + properties: + burstSize: + description: The maximum burst size in bytes. + format: int32 + type: integer + entrySpecificPolicer: + default: false + description: 'Controls policer instantiation: false for shared instance, true for per-entry instances' + type: boolean + peakRate: + description: The peak rate in kilobytes per second. + format: int32 + type: integer + scope: + default: Global + description: Determines how the policer is applied across subinterfaces. Global applies the policer across all subinterfaces, while Subinterface applies it individually to each subinterface. + enum: + - Global + - Subinterface + type: string + type: object + sourceMAC: + description: Match an Ethernet frame if its source MAC address logically anded with the mask equals this MAC address. + type: string + sourceMACMask: + description: Match an Ethernet frame if its source MAC address logically anded with the mask equals the configured MAC address. + type: string + type: object + type: + default: Auto + enum: + - IPV4 + - IPV6 + - MAC + - Auto + type: string + required: + - type + type: object + type: array + required: + - entries + type: object + status: + description: FilterStatus defines the observed state of Filter + type: object + type: object +served: true +storage: true +subresources: + status: {} diff --git a/static/resources/25.4.2/forwardingclasss.qos.eda.nokia.com/v1alpha1.yaml b/static/resources/25.4.2/forwardingclasss.qos.eda.nokia.com/v1alpha1.yaml new file mode 100644 index 0000000..0b84ac4 --- /dev/null +++ b/static/resources/25.4.2/forwardingclasss.qos.eda.nokia.com/v1alpha1.yaml @@ -0,0 +1,33 @@ +name: v1alpha1 +schema: + openAPIV3Schema: + description: ForwardingClass is the Schema for the forwardingclasss API + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + description: The ForwaringClass is used as a placeholder for to allow multiple other resources to reference the same forwarding class. + type: object + status: + description: ForwardingClassStatus defines the observed state of ForwardingClass + type: object + type: object +served: true +storage: true +subresources: + status: {} diff --git a/static/resources/25.4.2/globalconfigs.core.eda.nokia.com/v1.yaml b/static/resources/25.4.2/globalconfigs.core.eda.nokia.com/v1.yaml new file mode 100644 index 0000000..8e8eeeb --- /dev/null +++ b/static/resources/25.4.2/globalconfigs.core.eda.nokia.com/v1.yaml @@ -0,0 +1,55 @@ +name: v1 +schema: + openAPIV3Schema: + description: GlobalConfig is the Schema for the GlobalConfigs API + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + properties: + dhcp: + description: External reachability configuration for this cluster + properties: + domainName: + description: The external domain name of the cluster + type: string + httpPort: + description: HTTP port used to reach this cluster externally + format: int32 + type: integer + httpsPort: + description: HTTPS port used to reach this cluster externally + format: int32 + type: integer + ipv4Address: + description: The external IPv4 address of the cluster + type: string + ipv6Address: + description: The external IPv6 address of the cluster + type: string + type: object + required: + - dhcp + type: object + required: + - spec + type: object +served: true +storage: true +subresources: + status: {} diff --git a/static/resources/25.4.2/httpproxies.core.eda.nokia.com/v1.yaml b/static/resources/25.4.2/httpproxies.core.eda.nokia.com/v1.yaml new file mode 100644 index 0000000..117df24 --- /dev/null +++ b/static/resources/25.4.2/httpproxies.core.eda.nokia.com/v1.yaml @@ -0,0 +1,53 @@ +additionalPrinterColumns: + - jsonPath: .spec.rootUrl + name: Root URL + type: string +name: v1 +schema: + openAPIV3Schema: + description: HttpProxy is the Schema for the proxy API + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + description: HttpProxySpec defines the desired state of HttpProxy + properties: + authType: + description: |- + Determines where authentication happens. + If "atDestination", then no authentication happens in API server and any auth tokens are forwarded as is. + If "inApiServer", then authentication happens within the API server and auth tokens are stripped prior to forwarding. + enum: + - atDestination + - inApiServer + type: string + rootUrl: + description: The proxy destination, including the protocol. + type: string + required: + - authType + - rootUrl + type: object + status: + description: HttpProxyStatus defines the observed state of HttpProxy + type: object + type: object +served: true +storage: true +subresources: + status: {} diff --git a/static/resources/indexallocationpools.core.eda.nokia.com/v1.yaml b/static/resources/25.4.2/indexallocationpools.core.eda.nokia.com/v1.yaml similarity index 100% rename from static/resources/indexallocationpools.core.eda.nokia.com/v1.yaml rename to static/resources/25.4.2/indexallocationpools.core.eda.nokia.com/v1.yaml diff --git a/static/resources/25.4.2/ingresspolicys.qos.eda.nokia.com/v1alpha1.yaml b/static/resources/25.4.2/ingresspolicys.qos.eda.nokia.com/v1alpha1.yaml new file mode 100644 index 0000000..bcf3475 --- /dev/null +++ b/static/resources/25.4.2/ingresspolicys.qos.eda.nokia.com/v1alpha1.yaml @@ -0,0 +1,785 @@ +name: v1alpha1 +schema: + openAPIV3Schema: + description: IngressPolicy is the Schema for the ingresspolicys API + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + description: IngressPolicySpec defines the desired state of IngressPolicy + properties: + classifier: + description: Classifier manages the configuration of traffic classification policies in a network. It includes various entry types like IPv4, IPv6, Dot1p, and DSCP policies. Each entry specifies how traffic should be classified and what actions should be taken on the matched packets. + properties: + entries: + description: |- + Specifies the list of filter entries, in order. + A classifier containing multiple entry types may result in multiple classifiers being created on the target node. + IPV4 and IPV6 entries will create multifield classifier policies. + items: + properties: + dot1pPolicyEntry: + description: A Dot1p policy entry - only a single Dot1p entry is allowed per classifier resource. + properties: + directToPFCQueue: + description: In addition to creating a Dot1p PCP value to Forwarding Class mapping, this will map the PCP values directly to the PFC queue specified in the Forwarding Class to Queue mapping. + type: boolean + dropProbabilityLevel: + default: Low + description: Assign matching packets to the specified drop probability level. + enum: + - High + - Medium + - Low + type: string + forwardingClass: + description: Reference to a ForwardingClass resource to which the value is mapped. + type: string + pcpValues: + description: List of PCP values or ranges used to match packets to classify into Forwarding Classes. + items: + properties: + rangeEnd: + description: Optional end of PCP range (inclusive) which would start from the Value to the RangeEnd. + maximum: 7 + minimum: 0 + type: integer + value: + description: Single PCP value or start of range. + maximum: 7 + minimum: 0 + type: integer + required: + - value + type: object + minItems: 1 + type: array + required: + - pcpValues + type: object + dscpPolicyEntry: + description: A DSCP policy entry - only a single DSCP entry is allowed per classifier resource. + properties: + dropProbabilityLevel: + default: Low + description: Assign matching packets to the specified drop probability level. + enum: + - High + - Medium + - Low + type: string + dscpValues: + description: List of DSCP values or ranges used to match packets to classify into Forwarding Classes. + items: + properties: + rangeEnd: + description: Optional end of DSCP range (inclusive) which would start from the Value to the RangeEnd. + maximum: 63 + minimum: 0 + type: integer + value: + description: Single DSCP value or start of range. + maximum: 63 + minimum: 0 + type: integer + required: + - value + type: object + minItems: 1 + type: array + forwardingClass: + description: Reference to a ForwardingClass resource to which the value is mapped. + type: string + required: + - dscpValues + type: object + ipEntry: + description: An IPv4 or IPv6 multifield classifier entry. + properties: + action: + description: An action to take on the matched packets. + properties: + dropProbabilityLevel: + default: Low + description: Assign matching packets to the specified drop probability level. + enum: + - High + - Medium + - Low + type: string + dscpRewriteValue: + description: Rewrite actions associated with packets that match the classifier entry. + maximum: 63 + minimum: 0 + type: integer + forwardingClass: + description: Reference to a ForwardingClass resource to which the value is mapped. + type: string + type: object + destinationPortName: + description: Destination port to match by name. + enum: + - ACAP + - AFP-TCP + - ARNS + - ASF-RMCP + - ASHARE + - ATALK-RM + - AURP + - AUTH + - BFD + - BFD-ECHO + - BFTP + - BGMP + - BGP + - BOOTPC + - BOOTPS + - CCSO-NS + - CHARGEN + - CISCO-TDP + - CITADEL + - CLEARCASE + - COMMERCE + - COURIER + - DAYTIME + - DHCP-FAILOVER + - DHCPV6-CLIENT + - DHCPV6-SERVER + - DICOM + - DISCARD + - DNSIX + - DOMAIN + - DSP + - ECHO + - EPP + - ESRO + - EXEC + - FINGER + - FTP + - FTP-DATA + - FTPS + - FTPS-DATA + - GODI + - GOPHER + - GTP-C + - GTP-PRIME + - GTP-U + - HA-CLUSTER + - HOSTNAME + - HP-ALARM-MGR + - HTTP + - HTTP-ALT + - HTTP-MGMT + - HTTP-RPC + - HTTPS + - IEEE-MMS-SSL + - IMAP + - IMAP3 + - IMAPS + - IPP + - IPSEC + - IPX + - IRC + - IRIS-BEEP + - ISAKMP + - ISAKMP-NAT + - ISCSI + - ISO-TSAP + - KERBEROS + - KERBEROS-ADM + - KLOGIN + - KPASSWD + - KSHELL + - L2TP + - LDAP + - LDAPS + - LDP + - LMP + - LOGIN + - LPD + - LSP-PING + - MAC-SERVER-ADM + - MATIP-A + - MATIP-B + - MICRO-BFD + - MICROSOFT-DS + - MOBILE-IP + - MONITOR + - MPP + - MS-EXCHANGE + - MSDP + - MSP + - MSSQL-M + - MSSQL-S + - MULTIHOP-BFD + - NAS + - NCP + - NETBIOS-DATA + - NETBIOS-NS + - NETBIOS-SS + - NETNEWS + - NETRJS-1 + - NETRJS-2 + - NETRJS-3 + - NETRJS-4 + - NETWALL + - NEW-RWHO + - NFS + - NNTP + - NNTPS + - NTP + - ODMR + - OLSR + - OPENVPN + - PIM-AUTO-RP + - PKIX-TIMESTAMP + - POP2 + - POP3 + - POP3S + - PPTP + - PRINT-SRV + - PTP-EVENT + - PTP-GENERAL + - QMTP + - QOTD + - RADIUS + - RADIUS-ACCT + - REMOTE-MAIL + - REMOTEFS + - REMOTECMD + - RIP + - RJE + - RLP + - RLZDB + - RMC + - RMONITOR + - RPC2PORTMAP + - RSYNC + - RTELNET + - RTSP + - SGMP + - SILC + - SMUX + - SNA-GW + - SNMP + - SNMP-TRAP + - SNPP + - SMTP + - SQL-SVCS + - SQL + - SSH + - SUBMISSION + - SUNRPC + - SVCLOC + - SYSLOG + - SYSTAT + - TACACS + - TALK + - TCPMUX + - TCPNETHASPSRV + - TFTP + - TIME + - TIMED + - UPS + - XDMCP + - XNS-CH + - XNS-MAIL + - XNS-TIME + - Z3950 + type: string + destinationPortNumber: + description: Destination port to match by numerical value. + maximum: 65535 + minimum: 0 + type: integer + destinationPortOperator: + description: Operator to use when matching destinationPort, either Equals, GreaterOrEquals, or LessOrEquals. + enum: + - Equals + - GreaterOrEquals + - LessOrEquals + type: string + destinationPortRange: + description: Range of destination ports to match, in the format n-m, e.g. 100-200, The start and end of the range must be port numbers. + type: string + destinationPrefix: + description: Destination prefix to match. + type: string + firstFragment: + description: Match the first fragment only. + type: boolean + fragment: + description: Match any fragment. + type: boolean + icmpCode: + description: Match a specific ICMP code, as a number between 0-255, e.g. 0. + items: + type: integer + maxItems: 255 + minItems: 0 + type: array + icmpTypeName: + description: Match a specific ICMP type by name, e.g. dest-unreachable. + enum: + - DestUnreachable + - Echo + - EchoReply + - EchoRequest + - McastRtrAdv + - McastRtrSolicit + - McastRtrTerm + - MldDone + - MldQuery + - MldReport + - MldV2 + - NeighborAdvertise + - NeighborSolicit + - NodeInfoQuery + - NodeInfoResponse + - PacketTooBig + - ParamProblem + - Redirect + - RouterAdvertise + - RouterRenumber + - RouterSolicit + - SourceQuench + - TimeExceeded + - Timestamp + - TimestampReply + type: string + icmpTypeNumber: + description: Match a specific ICMP type by number. + maximum: 255 + minimum: 0 + type: integer + protocolName: + description: Match a specific IP protocol name (specified in the type field of the IP header). + enum: + - AH + - EGP + - EIGRP + - ESP + - GGP + - GRE + - ICMP + - ICMP6 + - IDRP + - IGMP + - IGP + - IPV4 + - IPV6 + - IPV6-DEST-OPTS + - IPV6-HOP + - L2TP + - MPLS-IN-IP + - NO-NEXT-HDR + - OSPF + - PIM + - ROHC + - RSVP + - SCTP + - ST + - TCP + - UDP + - VRRP + type: string + protocolNumber: + description: Match a specific IP protocol number (specified in the type field of the IP header). + maximum: 255 + minimum: 0 + type: integer + sourcePortName: + description: Source port to match by name. + enum: + - ACAP + - AFP-TCP + - ARNS + - ASF-RMCP + - ASHARE + - ATALK-RM + - AURP + - AUTH + - BFD + - BFD-ECHO + - BFTP + - BGMP + - BGP + - BOOTPC + - BOOTPS + - CCSO-NS + - CHARGEN + - CISCO-TDP + - CITADEL + - CLEARCASE + - COMMERCE + - COURIER + - DAYTIME + - DHCP-FAILOVER + - DHCPV6-CLIENT + - DHCPV6-SERVER + - DICOM + - DISCARD + - DNSIX + - DOMAIN + - DSP + - ECHO + - EPP + - ESRO + - EXEC + - FINGER + - FTP + - FTP-DATA + - FTPS + - FTPS-DATA + - GODI + - GOPHER + - GTP-C + - GTP-PRIME + - GTP-U + - HA-CLUSTER + - HOSTNAME + - HP-ALARM-MGR + - HTTP + - HTTP-ALT + - HTTP-MGMT + - HTTP-RPC + - HTTPS + - IEEE-MMS-SSL + - IMAP + - IMAP3 + - IMAPS + - IPP + - IPSEC + - IPX + - IRC + - IRIS-BEEP + - ISAKMP + - ISAKMP-NAT + - ISCSI + - ISO-TSAP + - KERBEROS + - KERBEROS-ADM + - KLOGIN + - KPASSWD + - KSHELL + - L2TP + - LDAP + - LDAPS + - LDP + - LMP + - LOGIN + - LPD + - LSP-PING + - MAC-SERVER-ADM + - MATIP-A + - MATIP-B + - MICRO-BFD + - MICROSOFT-DS + - MOBILE-IP + - MONITOR + - MPP + - MS-EXCHANGE + - MSDP + - MSP + - MSSQL-M + - MSSQL-S + - MULTIHOP-BFD + - NAS + - NCP + - NETBIOS-DATA + - NETBIOS-NS + - NETBIOS-SS + - NETNEWS + - NETRJS-1 + - NETRJS-2 + - NETRJS-3 + - NETRJS-4 + - NETWALL + - NEW-RWHO + - NFS + - NNTP + - NNTPS + - NTP + - ODMR + - OLSR + - OPENVPN + - PIM-AUTO-RP + - PKIX-TIMESTAMP + - POP2 + - POP3 + - POP3S + - PPTP + - PRINT-SRV + - PTP-EVENT + - PTP-GENERAL + - QMTP + - QOTD + - RADIUS + - RADIUS-ACCT + - REMOTE-MAIL + - REMOTEFS + - REMOTECMD + - RIP + - RJE + - RLP + - RLZDB + - RMC + - RMONITOR + - RPC2PORTMAP + - RSYNC + - RTELNET + - RTSP + - SGMP + - SILC + - SMUX + - SNA-GW + - SNMP + - SNMP-TRAP + - SNPP + - SMTP + - SQL-SVCS + - SQL + - SSH + - SUBMISSION + - SUNRPC + - SVCLOC + - SYSLOG + - SYSTAT + - TACACS + - TALK + - TCPMUX + - TCPNETHASPSRV + - TFTP + - TIME + - TIMED + - UPS + - XDMCP + - XNS-CH + - XNS-MAIL + - XNS-TIME + - Z3950 + type: string + sourcePortNumber: + description: Source port to match by numerical value. + maximum: 65535 + minimum: 0 + type: integer + sourcePortOperator: + description: Operator to use when matching sourcePort, either Equals, GreaterOrEquals, or LessOrEquals. + enum: + - Equals + - GreaterOrEquals + - LessOrEquals + type: string + sourcePortRange: + description: Range of source ports to match, in the format n-m, e.g. 100-200. The start and end of the range must be port numbers. + type: string + sourcePrefix: + description: Source prefix to match. + type: string + tcpFlags: + description: Match TCP flags, usable with !, &, | and the flags RST, SYN, and ACK. + type: string + required: + - action + type: object + type: + default: AUTO + description: Type of the entry which can be IPV4, IPV6, Dot1pPolicy, DSCPPolicy, or Auto. + enum: + - IPV4 + - IPV6 + - DOT1P + - DSCP + - AUTO + type: string + required: + - type + type: object + type: array + required: + - entries + type: object + forwardingClassToQueueMapping: + description: Forwarding class to queue mapping policy. + items: + properties: + forwardingClasses: + description: The forwarding classes to which the mapping applies, these are references to ForwardingClass resources. + items: + type: string + minItems: 1 + type: array + queue: + description: The queue to which the forwarding classes are mapped, this is a reference to a Queue resource. + type: string + required: + - forwardingClasses + - queue + type: object + type: array + policers: + description: Ordered list of policers where the first policer is evaluated first before proceeding to the next. + items: + properties: + committedBurstSize: + description: Maximum CIR bucket depth in bytes. + format: int32 + maximum: 4294967295 + minimum: 0 + type: integer + committedRate: + description: The committed information rate (CIR) of the policer, defined in kilobits (1024 bits) per second. + format: int32 + type: integer + committedRatePercent: + description: The committed information rate (CIR) of the policer, defined as a percentage of the Interface speed on which it is applied. + maximum: 100 + minimum: 0 + type: integer + exceedAction: + description: Applies a drop-probability to packets that the policer has determined are exceeding (yellow). + properties: + dropProbabilityLevel: + default: Medium + enum: + - High + - Medium + - Low + type: string + type: object + forwardingClasses: + description: The list of forwarding classes with traffic to be sent to the policer. Unless specified all traffic is matched for this policer. + items: + properties: + forwardingClasses: + description: The forwarding class of the packets on which to apply the Policer. To match all traffic set this to 'ALL'. + items: + type: string + type: array + forwardingTypes: + default: + - All + items: + enum: + - Broadcast + - Unicast + - Multicast + - UnknownMulticast + - UnknownUnicast + - All + type: string + type: array + required: + - forwardingTypes + type: object + type: array + maximumBurstSize: + description: Maximum PIR bucket depth in bytes. + format: int32 + maximum: 4294967295 + minimum: 0 + type: integer + minInterfaceSpeed: + description: Minimum interface speed (kbps) to calculate PeakRate and CommittedRate for devices where configuration is not supported in percentage. + format: int32 + type: integer + peakRate: + description: The peak information rate (PIR) of the policer, defined in kilobits (1024 bits) per second. + format: int32 + type: integer + peakRatePercent: + description: The peak information rate (PIR) of the policer, defined as a percentage of the Interface speed on which it is applied. + maximum: 100 + minimum: 0 + type: integer + violateAction: + description: Applies a drop-probability to packets that the policer has determined are exceeding (red). + properties: + dropProbabilityLevel: + default: High + enum: + - High + - Medium + - Low + - All + type: string + type: object + type: object + type: array + queueManagement: + description: Queue management policy for egress queues. + items: + properties: + pfcReservedBufferPercent: + description: 'Percentage of the linecard buffer reserved for accomodating incoming traffic while upstream node reacts to generated PFC-pause frames. Note: this percentage must be common across all EgressPolicies and QueuesSets used on the same linecard.' + maximum: 100 + minimum: 0 + type: integer + queues: + description: List of queues. + items: + properties: + committedBurstSize: + description: Committed Burst Size. + format: int32 + type: integer + maximumBurstSize: + description: Maximum amount of shared buffer memory available to the queue in bytes. + format: int32 + maximum: 4294967295 + minimum: 0 + type: integer + pfcOffThreshold: + description: PFC off threshold. + maximum: 100 + minimum: 0 + type: integer + pfcOnThreshold: + description: PFC on threshold. + maximum: 100 + minimum: 0 + type: integer + pfcPauseFramePriority: + description: PFC priorities indicated in generated pfc-pause-frame if congestion occurs in a given pfc-queue. + type: integer + pfcReservedShareBufferPercent: + description: Maximum level the pfc-queue can take from pfc-reserved buffer configured per given forwarding-complex. + maximum: 100 + minimum: 0 + type: integer + queue: + description: Reference to a Queue resource. + type: string + required: + - queue + type: object + type: array + required: + - queues + type: object + type: array + type: object + status: + description: IngressPolicyStatus defines the observed state of IngressPolicy + type: object + type: object +served: true +storage: true +subresources: + status: {} diff --git a/static/resources/25.4.2/inits.bootstrap.eda.nokia.com/v1alpha1.yaml b/static/resources/25.4.2/inits.bootstrap.eda.nokia.com/v1alpha1.yaml new file mode 100644 index 0000000..f892c03 --- /dev/null +++ b/static/resources/25.4.2/inits.bootstrap.eda.nokia.com/v1alpha1.yaml @@ -0,0 +1,72 @@ +name: v1alpha1 +schema: + openAPIV3Schema: + description: Init is the Schema for the inits API + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + description: InitSpec defines the desired state of Init + properties: + commitSave: + description: Save a startup configuration after each commit. + type: boolean + mgmt: + description: |- + Optional management interface settings. + Allows setting DHCP clients or static IPs as well as + the IP MTU. + properties: + ipMTU: + description: Set the management interface IP MTU. + type: integer + ipv4DHCP: + description: Enable IPv4 DHCP client. + type: boolean + ipv6DHCP: + description: Enable IPv6 DHCP client. + type: boolean + staticRoutes: + description: Optional list of static routes to add to the management network instance as part of the initial configuration. + items: + properties: + nextHop: + description: Static route next hop. + type: string + prefix: + description: Static route prefix. + type: string + type: object + type: array + type: object + nodeSelector: + description: |- + Optional node selectors to perform initial configuration for. + If not provided initialization is performed for all nodes. + items: + type: string + type: array + type: object + status: + description: InitStatus defines the observed state of Init + type: object + type: object +served: true +storage: true +subresources: + status: {} diff --git a/static/resources/25.4.2/interfacemodules.components.eda.nokia.com/v1.yaml b/static/resources/25.4.2/interfacemodules.components.eda.nokia.com/v1.yaml new file mode 100644 index 0000000..4c759fe --- /dev/null +++ b/static/resources/25.4.2/interfacemodules.components.eda.nokia.com/v1.yaml @@ -0,0 +1,116 @@ +name: v1 +schema: + openAPIV3Schema: + description: InterfaceModule is the Schema for the interfacemodules API + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + description: InterfaceModuleSpec defines the desired state of InterfaceModule + type: object + status: + description: InterfaceModuleStatus defines the observed state of InterfaceModule + properties: + commonLanguageEquipmentIdentifier: + description: The CLEI code of this component + type: string + lastBooted: + description: The date and time this component last booted + type: string + lastChange: + description: The date and time this component last changed operational state + type: string + locatorEnabled: + description: Indicates if the locator LED for the component is active + type: boolean + manufacturedDate: + description: The date this component was manufactured + type: string + operationalState: + description: Indicates the current operational state of this component. + enum: + - Up + - Down + - Rebooting + - Unknown + - Starting + - Empty + type: string + parent: + description: Reference to a parent component + type: string + parentType: + description: Type of the parent component + enum: + - Fan + - FanTray + - PowerSupply + - PowerModule + - PowerShelf + - InterfaceModule + - ControlModule + - FabricModule + - Chassis + - Transceiver + type: string + partNumber: + description: The discovered part number of this component + type: string + removable: + description: Indicates if this component is removable + type: boolean + serialNumber: + description: The discovered serial number of this component + type: string + slot: + description: Slot this component resides in, unset for components that do not have a slot or ID + type: string + softwareVersion: + description: Version string of the software running on this component + type: string + target: + description: Target this component resides on. + type: string + temperature: + description: Temperature information for this component + properties: + alarmState: + description: The temperature alarm state, as reported by the component + type: boolean + instant: + description: The current temperature of this component + type: integer + margin: + description: The margin temperature of this component + type: integer + maximum: + description: The maximum temperature of this component + type: integer + threshold: + description: The threshold temperature of this component + type: integer + type: object + type: + description: Component type, as provided by the target + type: string + type: object + type: object +served: true +storage: true +subresources: + status: {} diff --git a/static/resources/interfaces.interfaces.eda.nokia.com/v1alpha1.yaml b/static/resources/25.4.2/interfaces.interfaces.eda.nokia.com/v1alpha1.yaml similarity index 100% rename from static/resources/interfaces.interfaces.eda.nokia.com/v1alpha1.yaml rename to static/resources/25.4.2/interfaces.interfaces.eda.nokia.com/v1alpha1.yaml diff --git a/static/resources/interfacestates.interfaces.eda.nokia.com/v1alpha1.yaml b/static/resources/25.4.2/interfacestates.interfaces.eda.nokia.com/v1alpha1.yaml similarity index 100% rename from static/resources/interfacestates.interfaces.eda.nokia.com/v1alpha1.yaml rename to static/resources/25.4.2/interfacestates.interfaces.eda.nokia.com/v1alpha1.yaml diff --git a/static/resources/25.4.2/ipallocationpools.core.eda.nokia.com/v1.yaml b/static/resources/25.4.2/ipallocationpools.core.eda.nokia.com/v1.yaml new file mode 100644 index 0000000..fda4f3d --- /dev/null +++ b/static/resources/25.4.2/ipallocationpools.core.eda.nokia.com/v1.yaml @@ -0,0 +1,84 @@ +name: v1 +schema: + openAPIV3Schema: + description: IPAllocationPool is the Schema for the ipallocationpools API + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + description: |- + IPAllocationPool is a generic IP allocation pool supporting allocation of IPv4 and/or IPv6 addresses from a set of segments. + It is different from IPInSubnetAllocationPool in that it returns a single unzoned IP address, i.e. an IP address without a subnet. For example a 10.1.1.0/24 segment could return 10.1.1.1. + Consult application documentation to know which pool type to use for a given use case. + properties: + publishAllocations: + description: If true, allocations in segments will be published to EDB, available to query via EQL and trigger state applications off of. + type: boolean + segments: + description: List of segments containing IPv4 or IPv6 addresses to allocate. + items: + properties: + allocations: + description: List of reservations to exclude from allocations from this segment. + items: + properties: + name: + description: Name of this allocation. + type: string + value: + description: Allocation to reserve. + type: string + required: + - name + - value + type: object + type: array + reservations: + description: List of ranges to exclude from allocations from this segment. + items: + properties: + end: + description: Value to reserve to. + type: string + start: + description: Value to start reserving. + type: string + required: + - end + - start + type: object + type: array + subnet: + description: IPv4 or IPv6 subnet, e.g. 10.1.1.0/24. + type: string + required: + - subnet + type: object + minItems: 1 + type: array + required: + - segments + type: object + status: + description: IPAllocationPoolStatus defines the observed state of IPAllocationPool + type: object + type: object +served: true +storage: true +subresources: + status: {} diff --git a/static/resources/25.4.2/ipinsubnetallocationpools.core.eda.nokia.com/v1.yaml b/static/resources/25.4.2/ipinsubnetallocationpools.core.eda.nokia.com/v1.yaml new file mode 100644 index 0000000..0265d37 --- /dev/null +++ b/static/resources/25.4.2/ipinsubnetallocationpools.core.eda.nokia.com/v1.yaml @@ -0,0 +1,84 @@ +name: v1 +schema: + openAPIV3Schema: + description: IPInSubnetAllocationPool is the Schema for the ipinsubnetallocationpools API + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + description: |- + IPInSubnetAllocationPool is a generic IP allocation pool supporting allocation of IPv4 and/or IPv6 addresses from a set of segments. + It is different from IPAllocationPool in that it returns a single zoned IP address, i.e. an IP address with a subnet. For example a 10.1.1.0/24 segment could return 10.1.1.1/24. + Consult application documentation to know which pool type to use for a given use case. + properties: + publishAllocations: + description: If true, allocations in segments will be published to EDB, available to query via EQL and trigger state applications off of. + type: boolean + segments: + description: List of segments containing IPv4 or IPv6 addresses to allocate. + items: + properties: + allocations: + description: List of reservations to exclude from allocations from this segment. + items: + properties: + name: + description: Name of this allocation. + type: string + value: + description: Allocation to reserve. + type: string + required: + - name + - value + type: object + type: array + reservations: + description: List of ranges to exclude from allocations from this segment. + items: + properties: + end: + description: Value to reserve to. + type: string + start: + description: Value to start reserving. + type: string + required: + - end + - start + type: object + type: array + subnet: + description: IPv4 or IPv6 subnet, e.g. 10.1.1.0/24. + type: string + required: + - subnet + type: object + minItems: 1 + type: array + required: + - segments + type: object + status: + description: IPInSubnetAllocationPoolStatus defines the observed state of IPInSubnetAllocationPool + type: object + type: object +served: true +storage: true +subresources: + status: {} diff --git a/static/resources/25.4.2/irbinterfaces.services.eda.nokia.com/v1alpha1.yaml b/static/resources/25.4.2/irbinterfaces.services.eda.nokia.com/v1alpha1.yaml new file mode 100644 index 0000000..e7d168d --- /dev/null +++ b/static/resources/25.4.2/irbinterfaces.services.eda.nokia.com/v1alpha1.yaml @@ -0,0 +1,432 @@ +additionalPrinterColumns: + - jsonPath: .spec.ipMTU + name: MTU + type: string + - jsonPath: .status.operationalState + name: OperationalState + type: string + - jsonPath: .status.lastChange + name: LastChange + type: string +name: v1alpha1 +schema: + openAPIV3Schema: + description: IRBInterface is the Schema for the irbinterfaces API + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + description: The IRBInterface enables the configuration and management of Layer 3 interfaces associated with a BridgeDomain. This resource allows for the specification of various parameters, including IP MTU, learning of unsolicited ARPs, IPv4 and IPv6 addresses, and unnumbered interface settings. It also supports advanced features such as BFD configuration, Virtual IP discovery, and ARP/ND-related settings like Proxy ARP/ND and EVPN route advertisement. + properties: + anycastGatewayMAC: + description: The gateway MAC to use on the anycast address, if left empty the node will automatically assign one. + type: string + arpTimeout: + default: 14400 + description: Duration of time that dynamic ARP entries remain in the ARP cache before they expire. + format: int32 + type: integer + bfd: + description: Enable BFD on the IRBInterface. + properties: + desiredMinTransmitInt: + default: 1000000 + description: The minimum interval in microseconds between transmission of BFD control packets. + maximum: 100000000 + minimum: 10000 + type: integer + detectionMultiplier: + default: 3 + description: The number of packets that must be missed to declare this session as down. + maximum: 20 + minimum: 3 + type: integer + enabled: + default: false + description: Enables Biforward Detection. + type: boolean + minEchoReceiveInterval: + default: 1000000 + description: The minimum interval between echo packets the local node can receive. + maximum: 100000000 + minimum: 250000 + type: integer + requiredMinReceive: + default: 1000000 + description: The minimum interval in microseconds between received BFD control packets that this system should support. + maximum: 100000000 + minimum: 10000 + type: integer + required: + - enabled + type: object + bridgeDomain: + description: Reference to a BridgeDomain. + type: string + description: + description: The description of the IRBInterface. + type: string + egress: + description: Manages actions on traffic at Egress. + properties: + filters: + description: List of Filter references to use at egress. + items: + type: string + type: array + qosPolicy: + description: List of QoS Egress policy references to use at egress. + items: + type: string + type: array + type: object + evpnRouteAdvertisementType: + description: Controls the type of ARP/ND entries to advertise. + properties: + arpDynamic: + default: false + description: Advertise dynamic ARP entries. + type: boolean + arpStatic: + default: false + description: Advertise static ARP entries. + type: boolean + ndDynamic: + default: false + description: Advertise dynamic ND entries. + type: boolean + ndStatic: + default: false + description: Advertise static ND entries. + type: boolean + type: object + hostRoutePopulate: + description: Configures host route population based on ARP entries. + properties: + dynamic: + default: true + description: Create host routes out of dynamic ARP entries. + type: boolean + evpn: + default: false + description: Create host routes out of EVPN learned ARP entries. + type: boolean + static: + default: true + description: Create host routes out of static ARP entries. + type: boolean + type: object + ingress: + description: Manages actions on traffic at Ingress. + properties: + filters: + description: List of Filter references to use at ingress. + items: + type: string + type: array + qosPolicy: + description: List of QoS Ingress policy references to use at ingress. + items: + type: string + type: array + type: object + ipAddresses: + items: + properties: + ipv4Address: + description: IPv4 address in IP/mask form, e.g., 192.168.0.1/24. + properties: + ipPrefix: + description: Address and mask to use + type: string + primary: + description: Indicates which address to use as primary for broadcast + type: boolean + required: + - ipPrefix + type: object + ipv6Address: + description: IPv6 address in IP/mask form, e.g., fc00::1/120. + properties: + ipPrefix: + description: Address and mask to use + type: string + primary: + description: Indicates which address to use as primary for broadcast + type: boolean + required: + - ipPrefix + type: object + node: + description: Reference to a TopoNode resource, if not specified the IP address will be assigned to all nodes on which the IRB is deployed. If specified the IP address will be assigned to the specified node. + type: string + type: object + type: array + ipMTU: + default: 1500 + description: IP MTU for the IRBInterface [default=1500]. + maximum: 9486 + minimum: 1280 + type: integer + ipv6RouterAdvertisement: + properties: + currentHopLimit: + default: 64 + description: The current hop limit to advertise in the router advertisement messages. + format: int32 + maximum: 255 + minimum: 0 + type: integer + enabled: + default: false + description: Enable or disable IPv6 router advertisements. + type: boolean + ipMTU: + description: The IP MTU to advertise in the router advertisement messages. + format: int32 + maximum: 9486 + minimum: 1280 + type: integer + managedConfigurationFlag: + default: false + description: Enable DHCPv6 for address configuration (M-bit). + type: boolean + maxAdvertisementInterval: + default: 600 + description: Maximum time between router advertisements (in seconds). + format: int32 + maximum: 1800 + minimum: 4 + type: integer + minAdvertisementInterval: + default: 200 + description: Minimum time between router advertisements (in seconds). + format: int32 + maximum: 1350 + minimum: 3 + type: integer + otherConfigurationFlag: + default: false + description: Enable DHCPv6 for other configuration (O-bit). + type: boolean + prefixes: + description: IPv6 prefixes to advertise in router advertisements. + items: + description: IPv6Prefix defines the configuration for an IPv6 prefix advertisement. + properties: + autonomousFlag: + default: true + description: When this is set in the prefix information option hosts can use the prefix for stateless address autoconfiguration (SLAAC). + type: boolean + onLinkFlag: + default: true + description: When this is set in the prefix information option hosts can use the prefix for on-link determination. + type: boolean + preferredLifetime: + default: 604800 + description: The length of time in seconds (relative to the time the packet is sent) that addresses generated from the prefix via stateless address autoconfiguration remain preferred. + format: int32 + maximum: 4294967295 + minimum: 0 + type: integer + prefix: + description: An IPv6 global unicast address prefix. + type: string + validLifetime: + default: 2592000 + description: The length of time in seconds (relative to the time the packet is sent) that the prefix is valid for the purpose of on-link determination. + format: int32 + maximum: 4294967295 + minimum: 0 + type: integer + required: + - prefix + type: object + type: array + reachableTime: + default: 0 + description: Time in milliseconds for Neighbor Unreachability Detection. + format: int32 + maximum: 3600000 + minimum: 0 + type: integer + retransmitTime: + default: 0 + description: Time in milliseconds between retransmitted NS messages. + format: int32 + maximum: 1800000 + minimum: 0 + type: integer + routerLifetime: + default: 1800 + description: Router lifetime in seconds for default gateway. + format: int32 + maximum: 9000 + minimum: 0 + type: integer + required: + - currentHopLimit + - enabled + - managedConfigurationFlag + - maxAdvertisementInterval + - minAdvertisementInterval + - otherConfigurationFlag + - retransmitTime + - routerLifetime + type: object + l3ProxyARPND: + description: L3 Proxy ARP and ND configuration. + properties: + proxyARP: + default: false + description: Select whether Proxy ARP should be enabled. + type: boolean + proxyND: + default: false + description: Select whether Proxy ND should be enabled. + type: boolean + type: object + learnUnsolicited: + default: NONE + description: Enable or disable learning of unsolicited ARPs. + enum: + - BOTH + - GLOBAL + - LINK-LOCAL + - NONE + type: string + router: + description: Reference to a Router. + type: string + unnumbered: + description: Enables the use of unnumbered interfaces on the IRBInterface. If IPv6 is specified, no IP address are configured on the sub-interface and only the link local address will be used. If any IP addresses are specified for either IPv4 or IPv6 that will take precedence and IPs will be assigned to the interfaces.(Deprecated, Use IPv6RouterAdvertisement) + enum: + - IPV6 + type: string + virtualIPDiscovery: + description: Configuration for Virtual IP discovery on the interface. + items: + properties: + address: + description: Virtual IP Address. + type: string + allowedMAC: + description: List of allowed MAC addresses for a discovered virtual IP address. + items: + type: string + type: array + bridgeInterfaceToProbe: + description: List of BridgeInterfaces on the associated MAC-VRF to which the ARP probes are sent. If left blank, the probes are sent on all BridgeInterfaces associated with the BridgeDomain. + items: + type: string + type: array + probeInterval: + default: 0 + description: ARP probe interval in seconds. + maximum: 86400 + minimum: 0 + type: integer + vlanToProbe: + description: List of VLANs on the associated BridgeDomain to which the ARP probes are sent. If left blank, the probes are sent on all VLANs associated with the BridgeDomain. + items: + type: string + type: array + required: + - address + type: object + type: array + required: + - bridgeDomain + - router + type: object + status: + description: IRBInterfaceStatus defines the observed state of IRBInterface + properties: + health: + description: Indicates the health score of the VNET. + type: integer + healthScoreReason: + description: Explains the reason for the health score. + type: string + interfaces: + description: Details of the interfaces associated with the IRB. + items: + properties: + enabled: + description: Administrative status of the SubInterface. + type: boolean + ipv4Addresses: + description: List of IPv4 addresses + items: + properties: + ipPrefix: + description: Address and mask to use + type: string + primary: + description: Indicates which address to use as primary for broadcast + type: boolean + required: + - ipPrefix + type: object + type: array + ipv6Addresses: + description: List of IPv6 addresses + items: + properties: + ipPrefix: + description: Address and mask to use + type: string + primary: + description: Indicates which address to use as primary for broadcast + type: boolean + required: + - ipPrefix + type: object + type: array + lastChange: + description: Timestamp of when this SubInterface last changed state. + type: string + node: + description: Reference to Node object. + type: string + nodeInterface: + description: Node specific interface name. + type: string + operatingSystem: + description: Operating System of the Node. + type: string + operationalState: + description: Current operational state of the SubInterface. + type: string + required: + - node + - nodeInterface + type: object + type: array + lastChange: + description: Timestamp of the last state change. + type: string + operationalState: + description: Operational state of the VNET. + type: string + type: object + type: object +served: true +storage: true +subresources: + status: {} diff --git a/static/resources/25.4.2/irbinterfacestates.services.eda.nokia.com/v1alpha1.yaml b/static/resources/25.4.2/irbinterfacestates.services.eda.nokia.com/v1alpha1.yaml new file mode 100644 index 0000000..69e15aa --- /dev/null +++ b/static/resources/25.4.2/irbinterfacestates.services.eda.nokia.com/v1alpha1.yaml @@ -0,0 +1,88 @@ +name: v1alpha1 +schema: + openAPIV3Schema: + description: IRBInterfaceState is the Schema for the irbinterfacestates API + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + description: IRBInterfaceStateSpec defines the desired state of IRBInterfaceState + properties: + bridgeDomain: + description: Router the IRBInterface is attached to + type: string + interfaces: + items: + properties: + ipv4Addresses: + description: List of IPv4 addresses + items: + properties: + ipPrefix: + description: Address and mask to use + type: string + primary: + description: Indicates which address to use as primary for broadcast + type: boolean + required: + - ipPrefix + type: object + type: array + ipv6Addresses: + description: List of IPv6 addresses + items: + properties: + ipPrefix: + description: Address and mask to use + type: string + primary: + description: Indicates which address to use as primary for broadcast + type: boolean + required: + - ipPrefix + type: object + type: array + node: + description: Reference to Node object. + type: string + nodeInterface: + description: Node specific interface name. + type: string + operatingSystem: + description: Operating System of the Node. + type: string + required: + - node + - nodeInterface + type: object + type: array + router: + description: Router the IRBInterface is attached to + type: string + required: + - bridgeDomain + - router + type: object + status: + description: IRBInterfaceStateStatus defines the observed state of IRBInterfaceState + type: object + type: object +served: true +storage: true +subresources: + status: {} diff --git a/static/resources/25.4.2/isls.fabrics.eda.nokia.com/v1alpha1.yaml b/static/resources/25.4.2/isls.fabrics.eda.nokia.com/v1alpha1.yaml new file mode 100644 index 0000000..2d490cc --- /dev/null +++ b/static/resources/25.4.2/isls.fabrics.eda.nokia.com/v1alpha1.yaml @@ -0,0 +1,202 @@ +additionalPrinterColumns: + - jsonPath: .status.lastChange + name: Last Change + type: date + - jsonPath: .status.operationalState + name: Operational State + type: string +name: v1alpha1 +schema: + openAPIV3Schema: + description: ISL is the Schema for the isls API + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + description: The ISL enables the configuration and management of direct links between Nodes. This resource allows for specifying IPv4 and IPv6 allocation pools, enabling BFD for fast failure detection, and configuring VLAN IDs for the ISL. It also supports BGP peering between the endpoints, with options for setting autonomous systems, AFI/SAFI configurations, and import/export routing policies. + properties: + bfd: + description: Enable or disable BFD on the ISL. [default=false] + properties: + desiredMinTransmitInt: + default: 1000000 + description: The minimum interval in microseconds between transmission of BFD control packets. + maximum: 100000000 + minimum: 10000 + type: integer + detectionMultiplier: + default: 3 + description: The number of packets that must be missed to declare this session as down. + maximum: 20 + minimum: 3 + type: integer + enabled: + default: false + description: Enable Biforward Detection. + type: boolean + minEchoReceiveInterval: + default: 1000000 + description: The minimum interval between echo packets the local node can receive in microseconds. + maximum: 100000000 + minimum: 0 + type: integer + requiredMinReceive: + default: 1000000 + description: The minimum interval in microseconds between received BFD control packets that this system should support. + maximum: 100000000 + minimum: 10000 + type: integer + type: object + bgp: + properties: + afiSAFI: + description: 'Which AFI and SAFI to advertise on the BGP peering session. Options: ipv4unicast, ipv6unicast, l2vpnevpn' + items: + type: string + type: array + bgpGroup: + description: Reference to a DefaultBgpGroup. + type: string + enabled: + default: false + description: Enable or disable BGP peering between the two endpoints of the ISL. [default=false] + type: boolean + exportPolicy: + description: Reference to a RoutingPolicy to use when evaluating route exports from the DefaultRouter. + items: + type: string + type: array + importPolicy: + description: Reference to a RoutingPolicy to use when evaluating route imports into the DefaultRouter. + items: + type: string + type: array + keychain: + description: Keychain to be used for authentication + type: string + localInterfaceAS: + description: The Autonomous System to configure on the Local Interface. + format: int32 + maximum: 4294967295 + minimum: 0 + type: integer + remoteInterfaceAS: + description: The Autonomous System to configure on the Remote Interface. + format: int32 + maximum: 4294967295 + minimum: 0 + type: integer + required: + - enabled + - localInterfaceAS + - remoteInterfaceAS + type: object + localDefaultRouter: + description: Reference to the DefautlRouter associated with the local Interface in which the ISL will be provisioned. + type: string + localInterface: + description: Reference to an Interface. + type: string + poolIPV4: + description: Reference to an IPv4 allocation pool to use for ISL subnet allocations. + type: string + poolIPV6: + description: Reference to an IPv6 allocation pool to use for ISL subnet allocations. + type: string + qos: + properties: + egressPolicy: + type: string + ingressPolicy: + type: string + type: object + remoteDefaultRouter: + description: Reference to the DefautlRouter associated with the remote Interface in which the ISL will be provisioned. + type: string + remoteInterface: + description: Reference to an Interface + type: string + unnumbered: + description: Enables the use of unnumbered interfaces on the ISL. For IPv6, no IP address are configured on the sub-interface and only the link local address will be used. If any allocation pool is specified for IPv6 that will take precedence and IPs will be assigned to the interfaces. When using eBGP for an underlay protocol, the DefaultInterfaces which are a part of the ISL will be added to the BGP dynamic neighbor list. + enum: + - IPV6 + type: string + vlanID: + description: Single VLAN tag value between 1-4094. + maximum: 4094 + minimum: 1 + type: integer + required: + - localDefaultRouter + - localInterface + - remoteDefaultRouter + - remoteInterface + type: object + status: + description: ISLStatus defines the observed state of ISL + properties: + health: + description: Indicates the health score of the ISL + type: integer + healthScoreReason: + description: Indicates the reason for the health score + type: string + lastChange: + description: The time when the state of the resource last changed + type: string + localInterface: + description: Local Interface + properties: + IPv4Address: + description: Local Interface IPv4 address + type: string + IPv6Address: + description: Local Interface IPv4 address + type: string + defaultInterface: + description: Reference to the DefaulInterface assocaited with the local interface + type: string + node: + description: Reference to the TopoNode on which the local interface is configured + type: string + type: object + operationalState: + description: Operational state of the ISL + type: string + remoteInterface: + description: Remote Interface + properties: + IPv4Address: + description: Remote Interface IPv4 address + type: string + IPv6Address: + description: Remote Interface IPv6 address + type: string + defaultInterface: + description: Reference to the DefaulInterface assocaited with the remote interface + type: string + node: + description: Reference to the TopoNode on which the remote interface is configured + type: string + type: object + type: object + type: object +served: true +storage: true +subresources: + status: {} diff --git a/static/resources/islstates.fabrics.eda.nokia.com/v1alpha1.yaml b/static/resources/25.4.2/islstates.fabrics.eda.nokia.com/v1alpha1.yaml similarity index 100% rename from static/resources/islstates.fabrics.eda.nokia.com/v1alpha1.yaml rename to static/resources/25.4.2/islstates.fabrics.eda.nokia.com/v1alpha1.yaml diff --git a/static/resources/25.4.2/keychaindeployments.security.eda.nokia.com/v1alpha1.yaml b/static/resources/25.4.2/keychaindeployments.security.eda.nokia.com/v1alpha1.yaml new file mode 100644 index 0000000..8c47ac9 --- /dev/null +++ b/static/resources/25.4.2/keychaindeployments.security.eda.nokia.com/v1alpha1.yaml @@ -0,0 +1,43 @@ +name: v1alpha1 +schema: + openAPIV3Schema: + description: KeychainDeployment is the Schema for the keychaindeployments API + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + description: KeychainDeploymentSpec defines the desired state of KeychainDeployment + properties: + keychain: + description: Reference to a Keychain + type: string + node: + description: Reference to a Node on which to push the BgpGroup + type: string + required: + - keychain + - node + type: object + status: + description: KeychainDeploymentStatus defines the observed state of KeychainDeployment + type: object + type: object +served: true +storage: true +subresources: + status: {} diff --git a/static/resources/25.4.2/keychains.security.eda.nokia.com/v1alpha1.yaml b/static/resources/25.4.2/keychains.security.eda.nokia.com/v1alpha1.yaml new file mode 100644 index 0000000..7cd16ba --- /dev/null +++ b/static/resources/25.4.2/keychains.security.eda.nokia.com/v1alpha1.yaml @@ -0,0 +1,48 @@ +name: v1alpha1 +schema: + openAPIV3Schema: + description: Keychain is the Schema for the keychains API + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + description: KeychainSpec defines the desired state of Keychain + properties: + key: + properties: + algorithm: + enum: + - MD5 + type: string + authenticationKey: + type: string + required: + - algorithm + - authenticationKey + type: object + required: + - key + type: object + status: + description: KeychainStatus defines the observed state of Keychain + type: object + type: object +served: true +storage: true +subresources: + status: {} diff --git a/static/resources/25.4.2/licenses.core.eda.nokia.com/v1.yaml b/static/resources/25.4.2/licenses.core.eda.nokia.com/v1.yaml new file mode 100644 index 0000000..7e7a041 --- /dev/null +++ b/static/resources/25.4.2/licenses.core.eda.nokia.com/v1.yaml @@ -0,0 +1,66 @@ +name: v1 +schema: + openAPIV3Schema: + description: License is the Schema for the licenses API + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + description: A License represents an application license providing functionality within EDA. A license providing the "base" feature must be provided/valid for transactions to be processed. + properties: + data: + description: The license key. This is a base64 encoded string. + type: string + enabled: + default: true + description: Indicates if this license is available for use. + type: boolean + required: + - data + type: object + status: + description: Status information for this license. + properties: + comment: + description: Any comment provided in the license. + type: string + expirationDate: + description: Date and time the license expires. + type: string + expired: + description: Indicates if the license has expired. + type: boolean + issuedDate: + description: Date and time the license was issued. + type: string + used: + description: Indicates if license has been used. + type: boolean + valid: + description: Indicates if the license is valid. + type: boolean + required: + - expired + - used + - valid + type: object + type: object +served: true +storage: true +subresources: + status: {} diff --git a/static/resources/25.4.2/lldpoverlays.topologies.eda.nokia.com/v1alpha1.yaml b/static/resources/25.4.2/lldpoverlays.topologies.eda.nokia.com/v1alpha1.yaml new file mode 100644 index 0000000..94f4813 --- /dev/null +++ b/static/resources/25.4.2/lldpoverlays.topologies.eda.nokia.com/v1alpha1.yaml @@ -0,0 +1,69 @@ +name: v1alpha1 +schema: + openAPIV3Schema: + description: LldpOverlay is the Schema for lldpoverlays + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + description: LldpOverlaySpec defines the desired state of lldp + properties: + enabled: + description: Enable or disable the generation of the status of this overlay + type: boolean + topology: + description: Reference to the topology that this overlay is extending. + properties: + group: + description: The group of the application which published the topology this overlay is extending. + type: string + name: + description: The name of the resource which published the topology this overlay is extending. + type: string + version: + description: The version of the application which published the topology this overlay is extending. + type: string + required: + - group + - name + - version + type: object + uiDescription: + description: A description of the overlay to expose in the UI + type: string + uiDescriptionKey: + description: The translation key for the description of the overlay to expose in the UI + type: string + uiName: + description: The name of the overlay to expose in the UI + type: string + uiNameKey: + description: The translation key for the name of the overlay to expose in the UI + type: string + required: + - enabled + - topology + type: object + status: + description: LldpOverlayStatus defines the observed state of LldpOverlay + type: object + type: object +served: true +storage: true +subresources: + status: {} diff --git a/static/resources/managementrouters.bootstrap.eda.nokia.com/v1alpha1.yaml b/static/resources/25.4.2/managementrouters.bootstrap.eda.nokia.com/v1alpha1.yaml similarity index 100% rename from static/resources/managementrouters.bootstrap.eda.nokia.com/v1alpha1.yaml rename to static/resources/25.4.2/managementrouters.bootstrap.eda.nokia.com/v1alpha1.yaml diff --git a/static/resources/25.4.2/managementrouterstates.bootstrap.eda.nokia.com/v1alpha1.yaml b/static/resources/25.4.2/managementrouterstates.bootstrap.eda.nokia.com/v1alpha1.yaml new file mode 100644 index 0000000..e16fda8 --- /dev/null +++ b/static/resources/25.4.2/managementrouterstates.bootstrap.eda.nokia.com/v1alpha1.yaml @@ -0,0 +1,54 @@ +name: v1alpha1 +schema: + openAPIV3Schema: + description: ManagementRouterState is the Schema for the managementrouterstates API + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + description: ManagementRouterStateSpec defines the desired state of ManagementRouterState + properties: + nodes: + description: Reference to Nodes on which the ManagementRouter is deployed + items: + properties: + networkInstanceName: + description: The name of the management network instance in the Node OS format. For example in SR Linux it would be 'mgmt' + type: string + node: + description: Reference to Node object + type: string + operatingSystem: + description: Operating System of the Node + type: string + required: + - networkInstanceName + - node + type: object + type: array + required: + - nodes + type: object + status: + description: ManagementRouterStateStatus defines the observed state of ManagementRouterState + type: object + type: object +served: true +storage: true +subresources: + status: {} diff --git a/static/resources/25.4.2/manifest.json b/static/resources/25.4.2/manifest.json new file mode 100644 index 0000000..c3b14d7 --- /dev/null +++ b/static/resources/25.4.2/manifest.json @@ -0,0 +1,1722 @@ +[ + { + "name": "aggregateroutes.protocols.eda.nokia.com", + "group": "protocols.eda.nokia.com", + "kind": "AggregateRoute", + "versions": [ + { + "name": "v1alpha1", + "appVersion": "v3.0.2+25.4.3" + } + ] + }, + { + "name": "alarms.core.eda.nokia.com", + "group": "core.eda.nokia.com", + "kind": "Alarm", + "versions": [ + { + "name": "v1" + } + ] + }, + { + "name": "artifacts.artifacts.eda.nokia.com", + "group": "artifacts.eda.nokia.com", + "kind": "Artifact", + "versions": [ + { + "name": "v1" + } + ] + }, + { + "name": "backends.aifabrics.eda.nokia.com", + "group": "aifabrics.eda.nokia.com", + "kind": "Backend", + "versions": [ + { + "name": "v1alpha1", + "appVersion": "v4.0.1" + } + ] + }, + { + "name": "backendstates.aifabrics.eda.nokia.com", + "group": "aifabrics.eda.nokia.com", + "kind": "", + "versions": [ + { + "name": "v1alpha1" + } + ] + }, + { + "name": "banners.siteinfo.eda.nokia.com", + "group": "siteinfo.eda.nokia.com", + "kind": "Banner", + "versions": [ + { + "name": "v1alpha1", + "appVersion": "v4.0.1" + } + ] + }, + { + "name": "bannerstates.siteinfo.eda.nokia.com", + "group": "siteinfo.eda.nokia.com", + "kind": "", + "versions": [ + { + "name": "v1alpha1" + } + ] + }, + { + "name": "bgpgroupdeployments.protocols.eda.nokia.com", + "group": "protocols.eda.nokia.com", + "kind": "BGPGroupDeployment", + "versions": [ + { + "name": "v1alpha1", + "appVersion": "v3.0.2+25.4.3" + } + ] + }, + { + "name": "bgpgroups.protocols.eda.nokia.com", + "group": "protocols.eda.nokia.com", + "kind": "BGPGroup", + "versions": [ + { + "name": "v1alpha1", + "appVersion": "v3.0.2+25.4.3" + } + ] + }, + { + "name": "bgpgroupstates.protocols.eda.nokia.com", + "group": "protocols.eda.nokia.com", + "kind": "", + "versions": [ + { + "name": "v1alpha1" + } + ] + }, + { + "name": "bgppeers.protocols.eda.nokia.com", + "group": "protocols.eda.nokia.com", + "kind": "BGPPeer", + "versions": [ + { + "name": "v1alpha1", + "appVersion": "v3.0.2+25.4.3" + } + ] + }, + { + "name": "bgppeerstates.protocols.eda.nokia.com", + "group": "protocols.eda.nokia.com", + "kind": "", + "versions": [ + { + "name": "v1alpha1" + } + ] + }, + { + "name": "breakouts.interfaces.eda.nokia.com", + "group": "interfaces.eda.nokia.com", + "kind": "Breakout", + "versions": [ + { + "name": "v1alpha1", + "appVersion": "v4.0.1" + } + ] + }, + { + "name": "bridgedomaindeployments.services.eda.nokia.com", + "group": "services.eda.nokia.com", + "kind": "BridgeDomainDeployment", + "versions": [ + { + "name": "v1alpha1", + "appVersion": "v3.0.2+25.4.3" + } + ] + }, + { + "name": "bridgedomains.services.eda.nokia.com", + "group": "services.eda.nokia.com", + "kind": "BridgeDomain", + "versions": [ + { + "name": "v1alpha1", + "appVersion": "v3.0.2+25.4.3" + } + ] + }, + { + "name": "bridgedomainstates.services.eda.nokia.com", + "group": "services.eda.nokia.com", + "kind": "", + "versions": [ + { + "name": "v1alpha1" + } + ] + }, + { + "name": "bridgeinterfaces.services.eda.nokia.com", + "group": "services.eda.nokia.com", + "kind": "BridgeInterface", + "versions": [ + { + "name": "v1alpha1", + "appVersion": "v3.0.2+25.4.3" + } + ] + }, + { + "name": "bridgeinterfacestates.services.eda.nokia.com", + "group": "services.eda.nokia.com", + "kind": "", + "versions": [ + { + "name": "v1alpha1" + } + ] + }, + { + "name": "catalogs.appstore.eda.nokia.com", + "group": "appstore.eda.nokia.com", + "kind": "Catalog", + "versions": [ + { + "name": "v1" + } + ] + }, + { + "name": "certificatechecks.certcheck.eda.nokia.com", + "group": "certcheck.eda.nokia.com", + "kind": "CertificateCheck", + "versions": [ + { + "name": "v1alpha1" + } + ] + }, + { + "name": "chassis.components.eda.nokia.com", + "group": "components.eda.nokia.com", + "kind": "Chassis", + "versions": [ + { + "name": "v1", + "appVersion": "v4.0.1" + } + ] + }, + { + "name": "clusterdiscoveries.components.eda.nokia.com", + "group": "components.eda.nokia.com", + "kind": "ClusterDiscovery", + "versions": [ + { + "name": "v1", + "appVersion": "v4.0.1" + } + ] + }, + { + "name": "clusterroles.core.eda.nokia.com", + "group": "core.eda.nokia.com", + "kind": "ClusterRole", + "versions": [ + { + "name": "v1" + } + ] + }, + { + "name": "communitysetdeployments.routingpolicies.eda.nokia.com", + "group": "routingpolicies.eda.nokia.com", + "kind": "CommunitySetDeployment", + "versions": [ + { + "name": "v1alpha1", + "appVersion": "v4.0.1" + } + ] + }, + { + "name": "communitysets.routingpolicies.eda.nokia.com", + "group": "routingpolicies.eda.nokia.com", + "kind": "CommunitySet", + "versions": [ + { + "name": "v1alpha1", + "appVersion": "v4.0.1" + } + ] + }, + { + "name": "components.components.eda.nokia.com", + "group": "components.eda.nokia.com", + "kind": "Component", + "versions": [ + { + "name": "v1", + "appVersion": "v4.0.1" + }, + { + "name": "v1alpha1" + } + ] + }, + { + "name": "configlets.config.eda.nokia.com", + "group": "config.eda.nokia.com", + "kind": "Configlet", + "versions": [ + { + "name": "v1alpha1", + "appVersion": "v4.0.1" + } + ] + }, + { + "name": "configletstates.config.eda.nokia.com", + "group": "config.eda.nokia.com", + "kind": "", + "versions": [ + { + "name": "v1alpha1" + } + ] + }, + { + "name": "controlmodules.components.eda.nokia.com", + "group": "components.eda.nokia.com", + "kind": "ControlModule", + "versions": [ + { + "name": "v1", + "appVersion": "v4.0.1" + } + ] + }, + { + "name": "controlplanefilters.filters.eda.nokia.com", + "group": "filters.eda.nokia.com", + "kind": "ControlPlaneFilter", + "versions": [ + { + "name": "v1alpha1", + "appVersion": "v4.0.1" + } + ] + }, + { + "name": "cpuoverlays.components.eda.nokia.com", + "group": "components.eda.nokia.com", + "kind": "CPUOverlay", + "versions": [ + { + "name": "v1", + "appVersion": "v4.0.1" + } + ] + }, + { + "name": "cpuutiloverlays.topologies.eda.nokia.com", + "group": "topologies.eda.nokia.com", + "kind": "CPUUtilOverlay", + "versions": [ + { + "name": "v1alpha1", + "appVersion": "v3.0.2+25.4.3" + } + ] + }, + { + "name": "cxclusters.cx.eda.nokia.com", + "group": "cx.eda.nokia.com", + "kind": "CxCluster", + "versions": [ + { + "name": "v1alpha1" + } + ] + }, + { + "name": "defaultaggregateroutes.protocols.eda.nokia.com", + "group": "protocols.eda.nokia.com", + "kind": "DefaultAggregateRoute", + "versions": [ + { + "name": "v1alpha1", + "appVersion": "v3.0.2+25.4.3" + } + ] + }, + { + "name": "defaultbgpgroupdeployments.protocols.eda.nokia.com", + "group": "protocols.eda.nokia.com", + "kind": "DefaultBGPGroupDeployment", + "versions": [ + { + "name": "v1alpha1", + "appVersion": "v3.0.2+25.4.3" + } + ] + }, + { + "name": "defaultbgpgroups.protocols.eda.nokia.com", + "group": "protocols.eda.nokia.com", + "kind": "DefaultBGPGroup", + "versions": [ + { + "name": "v1alpha1", + "appVersion": "v3.0.2+25.4.3" + } + ] + }, + { + "name": "defaultbgppeers.protocols.eda.nokia.com", + "group": "protocols.eda.nokia.com", + "kind": "DefaultBGPPeer", + "versions": [ + { + "name": "v1alpha1", + "appVersion": "v3.0.2+25.4.3" + } + ] + }, + { + "name": "defaultinterfaces.routing.eda.nokia.com", + "group": "routing.eda.nokia.com", + "kind": "DefaultInterface", + "versions": [ + { + "name": "v1alpha1", + "appVersion": "v4.0.1" + } + ] + }, + { + "name": "defaultinterfacestates.routing.eda.nokia.com", + "group": "routing.eda.nokia.com", + "kind": "", + "versions": [ + { + "name": "v1alpha1" + } + ] + }, + { + "name": "defaultroutereflectorclients.protocols.eda.nokia.com", + "group": "protocols.eda.nokia.com", + "kind": "DefaultRouteReflectorClient", + "versions": [ + { + "name": "v1alpha1", + "appVersion": "v3.0.2+25.4.3" + } + ] + }, + { + "name": "defaultroutereflectors.protocols.eda.nokia.com", + "group": "protocols.eda.nokia.com", + "kind": "DefaultRouteReflector", + "versions": [ + { + "name": "v1alpha1", + "appVersion": "v3.0.2+25.4.3" + } + ] + }, + { + "name": "defaultrouters.routing.eda.nokia.com", + "group": "routing.eda.nokia.com", + "kind": "DefaultRouter", + "versions": [ + { + "name": "v1alpha1", + "appVersion": "v4.0.1" + } + ] + }, + { + "name": "defaultrouterstates.routing.eda.nokia.com", + "group": "routing.eda.nokia.com", + "kind": "", + "versions": [ + { + "name": "v1alpha1" + } + ] + }, + { + "name": "defaultstaticroutes.protocols.eda.nokia.com", + "group": "protocols.eda.nokia.com", + "kind": "DefaultStaticRoute", + "versions": [ + { + "name": "v1alpha1", + "appVersion": "v3.0.2+25.4.3" + } + ] + }, + { + "name": "deployimages.os.eda.nokia.com", + "group": "os.eda.nokia.com", + "kind": "DeployImage", + "versions": [ + { + "name": "v1alpha1", + "appVersion": "v4.0.1" + } + ] + }, + { + "name": "designers.core.eda.nokia.com", + "group": "core.eda.nokia.com", + "kind": "Designer", + "versions": [ + { + "name": "v1" + } + ] + }, + { + "name": "deviationactions.core.eda.nokia.com", + "group": "core.eda.nokia.com", + "kind": "DeviationAction", + "versions": [ + { + "name": "v1" + } + ] + }, + { + "name": "deviationoverlays.topologies.eda.nokia.com", + "group": "topologies.eda.nokia.com", + "kind": "DeviationOverlay", + "versions": [ + { + "name": "v1alpha1", + "appVersion": "v4.0.1" + } + ] + }, + { + "name": "deviations.core.eda.nokia.com", + "group": "core.eda.nokia.com", + "kind": "Deviation", + "versions": [ + { + "name": "v1" + } + ] + }, + { + "name": "dhcprelays.services.eda.nokia.com", + "group": "services.eda.nokia.com", + "kind": "DHCPRelay", + "versions": [ + { + "name": "v1alpha1", + "appVersion": "v3.0.2+25.4.3" + } + ] + }, + { + "name": "discoveries.components.eda.nokia.com", + "group": "components.eda.nokia.com", + "kind": "Discovery", + "versions": [ + { + "name": "v1", + "appVersion": "v4.0.1" + }, + { + "name": "v1alpha1" + } + ] + }, + { + "name": "discoveryaggregatestates.components.eda.nokia.com", + "group": "components.eda.nokia.com", + "kind": "", + "versions": [ + { + "name": "v1" + }, + { + "name": "v1alpha1" + } + ] + }, + { + "name": "discoverystates.components.eda.nokia.com", + "group": "components.eda.nokia.com", + "kind": "", + "versions": [ + { + "name": "v1" + }, + { + "name": "v1alpha1" + } + ] + }, + { + "name": "diskoverlays.topologies.eda.nokia.com", + "group": "topologies.eda.nokia.com", + "kind": "DiskOverlay", + "versions": [ + { + "name": "v1alpha1", + "appVersion": "v3.0.2+25.4.3" + } + ] + }, + { + "name": "drains.routing.eda.nokia.com", + "group": "routing.eda.nokia.com", + "kind": "Drain", + "versions": [ + { + "name": "v1alpha1", + "appVersion": "v4.0.1" + } + ] + }, + { + "name": "drainstates.routing.eda.nokia.com", + "group": "routing.eda.nokia.com", + "kind": "", + "versions": [ + { + "name": "v1alpha1" + } + ] + }, + { + "name": "edgeinterfaces.core.eda.nokia.com", + "group": "core.eda.nokia.com", + "kind": "EdgeInterface", + "versions": [ + { + "name": "v1" + } + ] + }, + { + "name": "egresspolicys.qos.eda.nokia.com", + "group": "qos.eda.nokia.com", + "kind": "EgressPolicy", + "versions": [ + { + "name": "v1alpha1", + "appVersion": "v3.0.2+25.4.3" + } + ] + }, + { + "name": "engineconfigs.core.eda.nokia.com", + "group": "core.eda.nokia.com", + "kind": "EngineConfig", + "versions": [ + { + "name": "v1" + } + ] + }, + { + "name": "fabricmodules.components.eda.nokia.com", + "group": "components.eda.nokia.com", + "kind": "FabricModule", + "versions": [ + { + "name": "v1", + "appVersion": "v4.0.1" + } + ] + }, + { + "name": "fabrics.fabrics.eda.nokia.com", + "group": "fabrics.eda.nokia.com", + "kind": "Fabric", + "versions": [ + { + "name": "v1alpha1", + "appVersion": "v4.0.1" + } + ] + }, + { + "name": "fabricstates.fabrics.eda.nokia.com", + "group": "fabrics.eda.nokia.com", + "kind": "", + "versions": [ + { + "name": "v1alpha1" + } + ] + }, + { + "name": "fans.components.eda.nokia.com", + "group": "components.eda.nokia.com", + "kind": "Fan", + "versions": [ + { + "name": "v1", + "appVersion": "v4.0.1" + } + ] + }, + { + "name": "filterdeployments.filters.eda.nokia.com", + "group": "filters.eda.nokia.com", + "kind": "FilterDeployment", + "versions": [ + { + "name": "v1alpha1", + "appVersion": "v4.0.1" + } + ] + }, + { + "name": "filters.filters.eda.nokia.com", + "group": "filters.eda.nokia.com", + "kind": "Filter", + "versions": [ + { + "name": "v1alpha1", + "appVersion": "v4.0.1" + } + ] + }, + { + "name": "forwardingclasss.qos.eda.nokia.com", + "group": "qos.eda.nokia.com", + "kind": "ForwardingClass", + "versions": [ + { + "name": "v1alpha1", + "appVersion": "v3.0.2+25.4.3" + } + ] + }, + { + "name": "globalconfigs.core.eda.nokia.com", + "group": "core.eda.nokia.com", + "kind": "GlobalConfig", + "versions": [ + { + "name": "v1" + } + ] + }, + { + "name": "httpproxies.core.eda.nokia.com", + "group": "core.eda.nokia.com", + "kind": "HttpProxy", + "versions": [ + { + "name": "v1" + } + ] + }, + { + "name": "indexallocationpools.core.eda.nokia.com", + "group": "core.eda.nokia.com", + "kind": "IndexAllocationPool", + "versions": [ + { + "name": "v1" + } + ] + }, + { + "name": "ingresspolicys.qos.eda.nokia.com", + "group": "qos.eda.nokia.com", + "kind": "IngressPolicy", + "versions": [ + { + "name": "v1alpha1", + "appVersion": "v3.0.2+25.4.3" + } + ] + }, + { + "name": "inits.bootstrap.eda.nokia.com", + "group": "bootstrap.eda.nokia.com", + "kind": "Init", + "versions": [ + { + "name": "v1alpha1", + "appVersion": "v4.0.1" + } + ] + }, + { + "name": "interfacemodules.components.eda.nokia.com", + "group": "components.eda.nokia.com", + "kind": "InterfaceModule", + "versions": [ + { + "name": "v1", + "appVersion": "v4.0.1" + } + ] + }, + { + "name": "interfaces.interfaces.eda.nokia.com", + "group": "interfaces.eda.nokia.com", + "kind": "Interface", + "versions": [ + { + "name": "v1alpha1", + "appVersion": "v4.0.1" + } + ] + }, + { + "name": "interfacestates.interfaces.eda.nokia.com", + "group": "interfaces.eda.nokia.com", + "kind": "", + "versions": [ + { + "name": "v1alpha1" + } + ] + }, + { + "name": "ipallocationpools.core.eda.nokia.com", + "group": "core.eda.nokia.com", + "kind": "IPAllocationPool", + "versions": [ + { + "name": "v1" + } + ] + }, + { + "name": "ipinsubnetallocationpools.core.eda.nokia.com", + "group": "core.eda.nokia.com", + "kind": "IPInSubnetAllocationPool", + "versions": [ + { + "name": "v1" + } + ] + }, + { + "name": "irbinterfaces.services.eda.nokia.com", + "group": "services.eda.nokia.com", + "kind": "IRBInterface", + "versions": [ + { + "name": "v1alpha1", + "appVersion": "v3.0.2+25.4.3" + } + ] + }, + { + "name": "irbinterfacestates.services.eda.nokia.com", + "group": "services.eda.nokia.com", + "kind": "", + "versions": [ + { + "name": "v1alpha1" + } + ] + }, + { + "name": "isls.fabrics.eda.nokia.com", + "group": "fabrics.eda.nokia.com", + "kind": "ISL", + "versions": [ + { + "name": "v1alpha1", + "appVersion": "v4.0.1" + } + ] + }, + { + "name": "islstates.fabrics.eda.nokia.com", + "group": "fabrics.eda.nokia.com", + "kind": "", + "versions": [ + { + "name": "v1alpha1" + } + ] + }, + { + "name": "keychaindeployments.security.eda.nokia.com", + "group": "security.eda.nokia.com", + "kind": "KeychainDeployment", + "versions": [ + { + "name": "v1alpha1", + "appVersion": "v4.0.1" + } + ] + }, + { + "name": "keychains.security.eda.nokia.com", + "group": "security.eda.nokia.com", + "kind": "Keychain", + "versions": [ + { + "name": "v1alpha1", + "appVersion": "v4.0.1" + } + ] + }, + { + "name": "licenses.core.eda.nokia.com", + "group": "core.eda.nokia.com", + "kind": "License", + "versions": [ + { + "name": "v1" + } + ] + }, + { + "name": "lldpoverlays.topologies.eda.nokia.com", + "group": "topologies.eda.nokia.com", + "kind": "LldpOverlay", + "versions": [ + { + "name": "v1alpha1", + "appVersion": "v4.0.1" + } + ] + }, + { + "name": "managementrouters.bootstrap.eda.nokia.com", + "group": "bootstrap.eda.nokia.com", + "kind": "ManagementRouter", + "versions": [ + { + "name": "v1alpha1", + "appVersion": "v4.0.1" + } + ] + }, + { + "name": "managementrouterstates.bootstrap.eda.nokia.com", + "group": "bootstrap.eda.nokia.com", + "kind": "", + "versions": [ + { + "name": "v1alpha1" + } + ] + }, + { + "name": "manifests.core.eda.nokia.com", + "group": "core.eda.nokia.com", + "kind": "Manifest", + "versions": [ + { + "name": "v1" + } + ] + }, + { + "name": "memoryoverlays.components.eda.nokia.com", + "group": "components.eda.nokia.com", + "kind": "MemoryOverlay", + "versions": [ + { + "name": "v1", + "appVersion": "v4.0.1" + } + ] + }, + { + "name": "memoryoverlays.topologies.eda.nokia.com", + "group": "topologies.eda.nokia.com", + "kind": "MemoryOverlay", + "versions": [ + { + "name": "v1alpha1", + "appVersion": "v3.0.2+25.4.3" + } + ] + }, + { + "name": "mirrorfilterdeployments.filters.eda.nokia.com", + "group": "filters.eda.nokia.com", + "kind": "MirrorFilterDeployment", + "versions": [ + { + "name": "v1alpha1", + "appVersion": "v4.0.1" + } + ] + }, + { + "name": "mirrorfilters.filters.eda.nokia.com", + "group": "filters.eda.nokia.com", + "kind": "MirrorFilter", + "versions": [ + { + "name": "v1alpha1", + "appVersion": "v4.0.1" + } + ] + }, + { + "name": "mirrors.oam.eda.nokia.com", + "group": "oam.eda.nokia.com", + "kind": "Mirror", + "versions": [ + { + "name": "v1alpha1", + "appVersion": "v4.0.1" + } + ] + }, + { + "name": "mirrorstates.oam.eda.nokia.com", + "group": "oam.eda.nokia.com", + "kind": "", + "versions": [ + { + "name": "v1alpha1" + } + ] + }, + { + "name": "monitoraggregatestates.components.eda.nokia.com", + "group": "components.eda.nokia.com", + "kind": "", + "versions": [ + { + "name": "v1" + } + ] + }, + { + "name": "monitoraggregatestates.system.eda.nokia.com", + "group": "system.eda.nokia.com", + "kind": "", + "versions": [ + { + "name": "v1alpha1" + } + ] + }, + { + "name": "monitors.components.eda.nokia.com", + "group": "components.eda.nokia.com", + "kind": "Monitor", + "versions": [ + { + "name": "v1", + "appVersion": "v4.0.1" + } + ] + }, + { + "name": "monitors.system.eda.nokia.com", + "group": "system.eda.nokia.com", + "kind": "Monitor", + "versions": [ + { + "name": "v1alpha1", + "appVersion": "v4.0.1" + } + ] + }, + { + "name": "monitorstates.components.eda.nokia.com", + "group": "components.eda.nokia.com", + "kind": "", + "versions": [ + { + "name": "v1" + } + ] + }, + { + "name": "monitorstates.system.eda.nokia.com", + "group": "system.eda.nokia.com", + "kind": "", + "versions": [ + { + "name": "v1alpha1" + } + ] + }, + { + "name": "namespaces.core.eda.nokia.com", + "group": "core.eda.nokia.com", + "kind": "Namespace", + "versions": [ + { + "name": "v1" + } + ] + }, + { + "name": "nodeconfigs.core.eda.nokia.com", + "group": "core.eda.nokia.com", + "kind": "NodeConfig", + "versions": [ + { + "name": "v1" + } + ] + }, + { + "name": "nodegroupdeployments.aaa.eda.nokia.com", + "group": "aaa.eda.nokia.com", + "kind": "NodeGroupDeployment", + "versions": [ + { + "name": "v1alpha1", + "appVersion": "v4.0.1" + } + ] + }, + { + "name": "nodegroups.aaa.eda.nokia.com", + "group": "aaa.eda.nokia.com", + "kind": "NodeGroup", + "versions": [ + { + "name": "v1alpha1", + "appVersion": "v4.0.1" + } + ] + }, + { + "name": "nodeprofiles.core.eda.nokia.com", + "group": "core.eda.nokia.com", + "kind": "NodeProfile", + "versions": [ + { + "name": "v1" + } + ] + }, + { + "name": "nodesecurityprofiles.core.eda.nokia.com", + "group": "core.eda.nokia.com", + "kind": "NodeSecurityProfile", + "versions": [ + { + "name": "v1" + } + ] + }, + { + "name": "nodeusers.core.eda.nokia.com", + "group": "core.eda.nokia.com", + "kind": "NodeUser", + "versions": [ + { + "name": "v1" + } + ] + }, + { + "name": "nodeuserstates.aaa.eda.nokia.com", + "group": "aaa.eda.nokia.com", + "kind": "", + "versions": [ + { + "name": "v1alpha1" + } + ] + }, + { + "name": "ntpclients.timing.eda.nokia.com", + "group": "timing.eda.nokia.com", + "kind": "NTPClient", + "versions": [ + { + "name": "v1alpha1", + "appVersion": "v4.0.1" + } + ] + }, + { + "name": "ntpclientstates.timing.eda.nokia.com", + "group": "timing.eda.nokia.com", + "kind": "", + "versions": [ + { + "name": "v1alpha1" + } + ] + }, + { + "name": "pings.oam.eda.nokia.com", + "group": "oam.eda.nokia.com", + "kind": "Ping", + "versions": [ + { + "name": "v1alpha1", + "appVersion": "v4.0.1" + } + ] + }, + { + "name": "policyattachments.qos.eda.nokia.com", + "group": "qos.eda.nokia.com", + "kind": "PolicyAttachment", + "versions": [ + { + "name": "v1alpha1", + "appVersion": "v3.0.2+25.4.3" + } + ] + }, + { + "name": "policydeployments.qos.eda.nokia.com", + "group": "qos.eda.nokia.com", + "kind": "PolicyDeployment", + "versions": [ + { + "name": "v1alpha1", + "appVersion": "v3.0.2+25.4.3" + } + ] + }, + { + "name": "policydeployments.routingpolicies.eda.nokia.com", + "group": "routingpolicies.eda.nokia.com", + "kind": "PolicyDeployment", + "versions": [ + { + "name": "v1alpha1", + "appVersion": "v4.0.1" + } + ] + }, + { + "name": "policys.routingpolicies.eda.nokia.com", + "group": "routingpolicies.eda.nokia.com", + "kind": "Policy", + "versions": [ + { + "name": "v1alpha1", + "appVersion": "v4.0.1" + } + ] + }, + { + "name": "powersupplies.components.eda.nokia.com", + "group": "components.eda.nokia.com", + "kind": "PowerSupply", + "versions": [ + { + "name": "v1", + "appVersion": "v4.0.1" + } + ] + }, + { + "name": "prefixsetdeployments.routingpolicies.eda.nokia.com", + "group": "routingpolicies.eda.nokia.com", + "kind": "PrefixSetDeployment", + "versions": [ + { + "name": "v1alpha1", + "appVersion": "v4.0.1" + } + ] + }, + { + "name": "prefixsets.routingpolicies.eda.nokia.com", + "group": "routingpolicies.eda.nokia.com", + "kind": "PrefixSet", + "versions": [ + { + "name": "v1alpha1", + "appVersion": "v4.0.1" + } + ] + }, + { + "name": "queues.qos.eda.nokia.com", + "group": "qos.eda.nokia.com", + "kind": "Queue", + "versions": [ + { + "name": "v1alpha1", + "appVersion": "v3.0.2+25.4.3" + } + ] + }, + { + "name": "registries.appstore.eda.nokia.com", + "group": "appstore.eda.nokia.com", + "kind": "Registry", + "versions": [ + { + "name": "v1" + } + ] + }, + { + "name": "roles.core.eda.nokia.com", + "group": "core.eda.nokia.com", + "kind": "Role", + "versions": [ + { + "name": "v1" + } + ] + }, + { + "name": "routedinterfaces.services.eda.nokia.com", + "group": "services.eda.nokia.com", + "kind": "RoutedInterface", + "versions": [ + { + "name": "v1alpha1", + "appVersion": "v3.0.2+25.4.3" + } + ] + }, + { + "name": "routedinterfacestates.services.eda.nokia.com", + "group": "services.eda.nokia.com", + "kind": "", + "versions": [ + { + "name": "v1alpha1" + } + ] + }, + { + "name": "routerdeployments.services.eda.nokia.com", + "group": "services.eda.nokia.com", + "kind": "RouterDeployment", + "versions": [ + { + "name": "v1alpha1", + "appVersion": "v3.0.2+25.4.3" + } + ] + }, + { + "name": "routereflectorclients.protocols.eda.nokia.com", + "group": "protocols.eda.nokia.com", + "kind": "RouteReflectorClient", + "versions": [ + { + "name": "v1alpha1", + "appVersion": "v3.0.2+25.4.3" + } + ] + }, + { + "name": "routereflectorclientstates.protocols.eda.nokia.com", + "group": "protocols.eda.nokia.com", + "kind": "", + "versions": [ + { + "name": "v1alpha1" + } + ] + }, + { + "name": "routereflectors.protocols.eda.nokia.com", + "group": "protocols.eda.nokia.com", + "kind": "RouteReflector", + "versions": [ + { + "name": "v1alpha1", + "appVersion": "v3.0.2+25.4.3" + } + ] + }, + { + "name": "routereflectorstates.protocols.eda.nokia.com", + "group": "protocols.eda.nokia.com", + "kind": "", + "versions": [ + { + "name": "v1alpha1" + } + ] + }, + { + "name": "routers.services.eda.nokia.com", + "group": "services.eda.nokia.com", + "kind": "Router", + "versions": [ + { + "name": "v1alpha1", + "appVersion": "v3.0.2+25.4.3" + } + ] + }, + { + "name": "routerstates.services.eda.nokia.com", + "group": "services.eda.nokia.com", + "kind": "", + "versions": [ + { + "name": "v1alpha1" + } + ] + }, + { + "name": "simlinks.test.eda.nokia.com", + "group": "test.eda.nokia.com", + "kind": "SimLink", + "versions": [ + { + "name": "v1" + } + ] + }, + { + "name": "simnodes.test.eda.nokia.com", + "group": "test.eda.nokia.com", + "kind": "SimNode", + "versions": [ + { + "name": "v1" + } + ] + }, + { + "name": "simtopologies.core.eda.nokia.com", + "group": "core.eda.nokia.com", + "kind": "", + "versions": [ + { + "name": "v1" + } + ] + }, + { + "name": "simtoponodes.core.eda.nokia.com", + "group": "core.eda.nokia.com", + "kind": "", + "versions": [ + { + "name": "v1" + } + ] + }, + { + "name": "stateconfigs.services.eda.nokia.com", + "group": "services.eda.nokia.com", + "kind": "StateConfig", + "versions": [ + { + "name": "v1alpha1", + "appVersion": "v3.0.2+25.4.3" + } + ] + }, + { + "name": "staticroutes.protocols.eda.nokia.com", + "group": "protocols.eda.nokia.com", + "kind": "StaticRoute", + "versions": [ + { + "name": "v1alpha1", + "appVersion": "v3.0.2+25.4.3" + } + ] + }, + { + "name": "subnetallocationpools.core.eda.nokia.com", + "group": "core.eda.nokia.com", + "kind": "SubnetAllocationPool", + "versions": [ + { + "name": "v1" + } + ] + }, + { + "name": "systeminterfaces.routing.eda.nokia.com", + "group": "routing.eda.nokia.com", + "kind": "SystemInterface", + "versions": [ + { + "name": "v1alpha1", + "appVersion": "v4.0.1" + } + ] + }, + { + "name": "systeminterfacestates.routing.eda.nokia.com", + "group": "routing.eda.nokia.com", + "kind": "", + "versions": [ + { + "name": "v1alpha1" + } + ] + }, + { + "name": "targetnodes.core.eda.nokia.com", + "group": "core.eda.nokia.com", + "kind": "TargetNode", + "versions": [ + { + "name": "v1" + } + ] + }, + { + "name": "thresholds.oam.eda.nokia.com", + "group": "oam.eda.nokia.com", + "kind": "Threshold", + "versions": [ + { + "name": "v1alpha1", + "appVersion": "v4.0.1" + } + ] + }, + { + "name": "thresholds.platformmetrics.eda.nokia.com", + "group": "platformmetrics.eda.nokia.com", + "kind": "Threshold", + "versions": [ + { + "name": "v1" + } + ] + }, + { + "name": "topobreakouts.core.eda.nokia.com", + "group": "core.eda.nokia.com", + "kind": "TopoBreakout", + "versions": [ + { + "name": "v1" + } + ] + }, + { + "name": "topolinkmonitors.topologies.eda.nokia.com", + "group": "topologies.eda.nokia.com", + "kind": "TopoLinkMonitor", + "versions": [ + { + "name": "v1alpha1", + "appVersion": "v4.0.1" + } + ] + }, + { + "name": "topolinks.core.eda.nokia.com", + "group": "core.eda.nokia.com", + "kind": "TopoLink", + "versions": [ + { + "name": "v1" + } + ] + }, + { + "name": "topolinkstates.topologies.eda.nokia.com", + "group": "topologies.eda.nokia.com", + "kind": "", + "versions": [ + { + "name": "v1alpha1" + } + ] + }, + { + "name": "topologies.core.eda.nokia.com", + "group": "core.eda.nokia.com", + "kind": "", + "versions": [ + { + "name": "v1" + } + ] + }, + { + "name": "topologies.topologies.eda.nokia.com", + "group": "topologies.eda.nokia.com", + "kind": "Topology", + "versions": [ + { + "name": "v1alpha1", + "appVersion": "v4.0.1" + } + ] + }, + { + "name": "topologygroupings.topologies.eda.nokia.com", + "group": "topologies.eda.nokia.com", + "kind": "TopologyGrouping", + "versions": [ + { + "name": "v1alpha1", + "appVersion": "v4.0.1" + } + ] + }, + { + "name": "toponodes.core.eda.nokia.com", + "group": "core.eda.nokia.com", + "kind": "TopoNode", + "versions": [ + { + "name": "v1" + } + ] + }, + { + "name": "trafficrateoverlays.topologies.eda.nokia.com", + "group": "topologies.eda.nokia.com", + "kind": "TrafficRateOverlay", + "versions": [ + { + "name": "v1alpha1", + "appVersion": "v4.0.1" + } + ] + }, + { + "name": "transactionresults.core.eda.nokia.com", + "group": "core.eda.nokia.com", + "kind": "TransactionResult", + "versions": [ + { + "name": "v1" + } + ] + }, + { + "name": "transactions.core.eda.nokia.com", + "group": "core.eda.nokia.com", + "kind": "Transaction", + "versions": [ + { + "name": "v1" + } + ] + }, + { + "name": "udpproxies.core.eda.nokia.com", + "group": "core.eda.nokia.com", + "kind": "UdpProxy", + "versions": [ + { + "name": "v1" + } + ] + }, + { + "name": "userdeployments.aaa.eda.nokia.com", + "group": "aaa.eda.nokia.com", + "kind": "UserDeployment", + "versions": [ + { + "name": "v1alpha1", + "appVersion": "v4.0.1" + } + ] + }, + { + "name": "virtualnetworks.services.eda.nokia.com", + "group": "services.eda.nokia.com", + "kind": "VirtualNetwork", + "versions": [ + { + "name": "v1alpha1", + "appVersion": "v3.0.2+25.4.3" + } + ] + }, + { + "name": "virtualnetworkstates.services.eda.nokia.com", + "group": "services.eda.nokia.com", + "kind": "", + "versions": [ + { + "name": "v1alpha1" + } + ] + }, + { + "name": "vlans.services.eda.nokia.com", + "group": "services.eda.nokia.com", + "kind": "VLAN", + "versions": [ + { + "name": "v1alpha1", + "appVersion": "v3.0.2+25.4.3" + } + ] + }, + { + "name": "vlanstates.services.eda.nokia.com", + "group": "services.eda.nokia.com", + "kind": "", + "versions": [ + { + "name": "v1alpha1" + } + ] + }, + { + "name": "volumeoverlays.components.eda.nokia.com", + "group": "components.eda.nokia.com", + "kind": "VolumeOverlay", + "versions": [ + { + "name": "v1", + "appVersion": "v4.0.1" + } + ] + }, + { + "name": "waitforinputs.core.eda.nokia.com", + "group": "core.eda.nokia.com", + "kind": "WaitForInput", + "versions": [ + { + "name": "v1" + } + ] + }, + { + "name": "workflowdefinitions.core.eda.nokia.com", + "group": "core.eda.nokia.com", + "kind": "WorkflowDefinition", + "versions": [ + { + "name": "v1" + } + ] + }, + { + "name": "workflows.core.eda.nokia.com", + "group": "core.eda.nokia.com", + "kind": "Workflow", + "versions": [ + { + "name": "v1" + } + ] + } +] \ No newline at end of file diff --git a/static/resources/25.4.2/manifests.core.eda.nokia.com/v1.yaml b/static/resources/25.4.2/manifests.core.eda.nokia.com/v1.yaml new file mode 100644 index 0000000..f56da3d --- /dev/null +++ b/static/resources/25.4.2/manifests.core.eda.nokia.com/v1.yaml @@ -0,0 +1,442 @@ +name: v1 +schema: + openAPIV3Schema: + description: Manifest is the Schema for the manifests API + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + description: ManifestSpec defines the desired state of Manifest + properties: + appInfo: + description: Additional information relating the application described by this Manifest + properties: + categories: + description: Categories of the application described by this Manifest, used by UI + items: + type: string + type: array + documentation: + description: Relative path to any documentation + type: string + license: + description: Relative path to a LICENSE file + type: string + ociSpecVersion: + description: OCI Spec version of the built app image, populated by the edabuilder cli + type: string + readme: + description: Relative path to the README for the application described by this Manifest + type: string + screenshots: + description: Relative path to any screenshots to present in the App Store + items: + type: string + type: array + settings: + description: |- + Relative path to the OpenApi spec describing the settings that can be set on this application. + This file should be generated using edabuilder. + type: string + source: + description: Relative path to the source repository for the application described by this Manfest + type: string + srcURI: + description: Source URI that points to the source code of the application + type: string + type: object + author: + description: Author of the application described by this Manifest + type: string + components: + description: A list of components provided in this Manifest + items: + properties: + bootstrapResource: + description: |- + Bootstrap resource provided in this component. + This may be a path to a resource, or a path to a directory containing resources. + On new namespace creation, bootstrap resources are loaded into the new namespace by default, "bootstrapping" the namespace. + properties: + path: + description: Relative path in the local application repository + type: string + required: + - path + type: object + cr: + description: Definition of a CR provided in this component + properties: + path: + description: Relative path in the local application repository + type: string + required: + - path + type: object + crd: + description: Definition of a CRD provided in this component + properties: + api: + description: Settings related to how this CRD is exposed in the API + properties: + expose: + default: readWrite + description: |- + Indicates if this Kind will be made available through the EDA API, and what REST functions will be supported + 'readWrite' maps to PUT, POST, PATCH, and DELETE. + 'read' maps to GET, LIST, HEAD. + 'none' results in the Kind not being made available in the API. + enum: + - none + - read + - readWrite + type: string + type: object + conversionScript: + description: Relative path to the conversion script for this CRD + type: string + kubernetes: + description: Define how resources for this CRD will be imported/exported to/from Kubernetes + properties: + exportPolicy: + enum: + - all + type: string + importPolicy: + description: Defines whether resources of this type will be exported to Kubernetes + enum: + - all + - spec + type: string + type: object + namespaced: + default: true + description: If set, resources of this CRD are namespace scoped + type: boolean + path: + description: Relative path in the local application repository + type: string + resourceType: + default: Transactional + description: |- + The type of the resource that this CRD defines. Transactional resources are processed via ConfigEngine, + Kubernetes resources are not exposed in the EDA API, and are not processed via ConfigEngine. + Use Transactional for intent-based resources, or any resources you wish EDA to persist/restore. + Use Kubernetes for resources that are managed by Kubernetes, that you do not want EDA to process in transactions or persist/restore. + enum: + - Transactional + - Kubernetes + type: string + schema: + description: Relative path to the schema to use with this CRD + type: string + ui: + description: If set, this CRD will be exposed in the UI + properties: + category: + description: Category in which to present this resource, these groups exist in the UI navigation menu + type: string + name: + description: Name to use within the category to present this resource + type: string + panel: + description: |- + Panel in which to present this resource. + 'main' renders resource under main panel. + 'system_administration' renders resource under system administration panel. + enum: + - main + - system_administration + type: string + required: + - name + type: object + workflow: + description: If set, resources of this CRD are is in workflows + type: boolean + required: + - path + type: object + dbSchema: + description: Definition of schema for EDB, referencing a table and providing JSONSchema + properties: + schema: + description: Relative path to the JSONSchema that defines the schema of the table + type: string + table: + description: Provide the name of the table in the EDB to which this schema applies, e.g. ".db.example.table" + type: string + required: + - schema + - table + type: object + script: + description: Definition of a script provided in this component + properties: + path: + description: Relative path in the local application repository + type: string + trigger: + description: The trigger used to start execution of provided script resource + properties: + kind: + description: Kind used to trigger the execution of provided script resource, e.g. Interface + type: string + required: + - kind + type: object + type: + description: The type of script + enum: + - config + - state + type: string + required: + - path + - trigger + type: object + view: + description: Definition of a UI view provided in this component + properties: + path: + description: Relative path in the local application repository + type: string + ui: + description: Settings related to how this view is presented in the UI + properties: + category: + description: Category in which to present this resource, these groups exist in the UI navigation menu + type: string + name: + description: Name to use within the category to present this resource + type: string + panel: + description: |- + Panel in which to present this resource. + 'main' renders resource under main panel. + 'system_administration' renders resource under system administration panel. + enum: + - main + - system_administration + type: string + required: + - name + type: object + required: + - path + - ui + type: object + workflow: + description: Definition of workflow provided in this component + properties: + definition: + description: Relative path to the WorkflowDefinition resource that defines this workflow + type: string + image: + description: Provide the container image to execute for this workflow + type: string + required: + - definition + - image + type: object + type: object + type: array + dependencies: + description: A list of other artifacts, images, or files this Manifest depends on + items: + properties: + artifact: + description: Definition of an artifact to be loaded in artifact server + properties: + destination: + description: Destination in the artifact server to host this artifact. This corresponds to the filePath field of an Artifact. + type: string + path: + description: Relative path in the local application repository + type: string + required: + - path + type: object + container: + description: Definition of a container image provided in this application + properties: + image: + description: OCI image to use as a source for artifacts provided in this Manifest + type: string + name: + description: Name of the container dependency + type: string + pullSecret: + description: Pull secret reference that will be populated by the app store + type: string + required: + - image + - name + type: object + file: + description: Definition of an artifact provided in this component + properties: + path: + description: Relative path in the local application repository + type: string + required: + - path + type: object + type: object + type: array + description: + description: Summary description of the application described by this Manifest + type: string + gitPathPrefix: + description: A path prefix to apply when resolving any relative paths within this Manifest in the EDA application repository + type: string + gitReference: + description: Reference to a git hash or tag within the EDA application repository at which to load resources from components in this Manifest + example: v27.3.1 or 69cd4d76c467f6f27e43f3f6284356d8941df8fb + type: string + group: + description: The Group components and their respective Kinds reside in + type: string + image: + description: OCI image to use as a source for artifacts provided in this Manifest + type: string + requirements: + description: Other applications this application depends on/interacts with + items: + properties: + appName: + description: The name of an application that this Manifest depends on. + type: string + kubernetes: + description: |- + Required Kinds to be imported/exported to/from Kubernetes from this application. + This can be used by apps with Kubernetes controllers in them, that depends on other apps with CRDs. + properties: + exports: + description: List of Kinds to ensure are exported to Kubernetes. + items: + properties: + gvk: + description: The group + version + kind to apply the specified policy to + properties: + group: + description: The group of the resource to import/export + type: string + kind: + description: The kind of the resource to import/export + type: string + version: + description: The version of the resource to import/export + type: string + required: + - kind + - version + type: object + policy: + description: The policy to apply to the GVK + enum: + - all + type: string + required: + - gvk + - policy + type: object + type: array + imports: + description: List of Kinds to ensure are imported from Kubernetes. + items: + properties: + gvk: + description: The group + version + kind to apply the specified policy to + properties: + group: + description: The group of the resource to import/export + type: string + kind: + description: The kind of the resource to import/export + type: string + version: + description: The version of the resource to import/export + type: string + required: + - kind + - version + type: object + policy: + description: The policy to apply to the GVK + enum: + - all + - spec + type: string + required: + - gvk + - policy + type: object + type: array + type: object + state: + default: Present + description: The state of the dependency, either Present or Absent. + enum: + - Present + - Absent + type: string + vendor: + description: The vendor of an application that this Manifest depends on. + type: string + version: + description: |- + The version of the application this Manifest depends on or requires to be absent. + Supported values are semantic versions, basic comparisons, wildcards, e.g. v1.0.1, <=v1.0.1, >=v1.0.1, '*' (any version), v2.0.* + type: string + required: + - appName + - vendor + - version + type: object + type: array + supportedCoreVersions: + description: Supported core versions, i.e. the versions of the EDA core that this Manifest is compatible with + items: + type: string + type: array + supportedEndpoints: + description: Endpoints supported by the application described by this Manifest + items: + type: string + type: array + title: + description: Friendly name to use when displaying this Manifest, e.g. Interface + type: string + version: + description: The Version components and their respective Kinds reside in + type: string + required: + - group + - supportedCoreVersions + - title + - version + type: object + status: + description: ManifestStatus defines the observed state of Manifest + type: object + type: object +served: true +storage: true +subresources: + status: {} diff --git a/static/resources/25.4.2/memoryoverlays.components.eda.nokia.com/v1.yaml b/static/resources/25.4.2/memoryoverlays.components.eda.nokia.com/v1.yaml new file mode 100644 index 0000000..8ed1aaa --- /dev/null +++ b/static/resources/25.4.2/memoryoverlays.components.eda.nokia.com/v1.yaml @@ -0,0 +1,69 @@ +name: v1 +schema: + openAPIV3Schema: + description: MemoryOverlay is the Schema for memoryoverlays + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + description: MemoryOverlaySpec defines the desired state of MemoryOverlay + properties: + enabled: + description: Enable or disable the generation of the status of this overlay + type: boolean + topology: + description: Reference to the topology that this overlay is extending. + properties: + group: + description: The group of the application which published the topology this overlay is extending. + type: string + name: + description: The name of the resource which published the topology this overlay is extending. + type: string + version: + description: The version of the application which published the topology this overlay is extending. + type: string + required: + - group + - name + - version + type: object + uiDescription: + description: A description of the overlay to expose in the UI + type: string + uiDescriptionKey: + description: The translation key for the description of the overlay to expose in the UI + type: string + uiName: + description: The name of the overlay to expose in the UI + type: string + uiNameKey: + description: The translation key for the name of the overlay to expose in the UI + type: string + required: + - enabled + - topology + type: object + status: + description: MemoryOverlayStatus defines the observed state of MemoryOverlay + type: object + type: object +served: true +storage: true +subresources: + status: {} diff --git a/static/resources/25.4.2/memoryoverlays.topologies.eda.nokia.com/v1alpha1.yaml b/static/resources/25.4.2/memoryoverlays.topologies.eda.nokia.com/v1alpha1.yaml new file mode 100644 index 0000000..85bebc8 --- /dev/null +++ b/static/resources/25.4.2/memoryoverlays.topologies.eda.nokia.com/v1alpha1.yaml @@ -0,0 +1,69 @@ +name: v1alpha1 +schema: + openAPIV3Schema: + description: MemoryOverlay is the Schema for memoryoverlays + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + description: MemoryOverlaySpec defines the desired state of MemoryOverlay + properties: + enabled: + description: Enable or disable the generation of the status of this overlay + type: boolean + topology: + description: Reference to the topology that this overlay is extending. + properties: + group: + description: The group of the application which published the topology this overlay is extending. + type: string + name: + description: The name of the resource which published the topology this overlay is extending. + type: string + version: + description: The version of the application which published the topology this overlay is extending. + type: string + required: + - group + - name + - version + type: object + uiDescription: + description: A description of the overlay to expose in the UI + type: string + uiDescriptionKey: + description: The translation key for the description of the overlay to expose in the UI + type: string + uiName: + description: The name of the overlay to expose in the UI + type: string + uiNameKey: + description: The translation key for the name of the overlay to expose in the UI + type: string + required: + - enabled + - topology + type: object + status: + description: MemoryOverlayStatus defines the observed state of MemoryOverlay + type: object + type: object +served: true +storage: true +subresources: + status: {} diff --git a/static/resources/25.4.2/mirrorfilterdeployments.filters.eda.nokia.com/v1alpha1.yaml b/static/resources/25.4.2/mirrorfilterdeployments.filters.eda.nokia.com/v1alpha1.yaml new file mode 100644 index 0000000..cd68b80 --- /dev/null +++ b/static/resources/25.4.2/mirrorfilterdeployments.filters.eda.nokia.com/v1alpha1.yaml @@ -0,0 +1,43 @@ +name: v1alpha1 +schema: + openAPIV3Schema: + description: MirrorFilterDeployment is the Schema for the mirrorfilterdeployments API + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + description: MirrorFilterDeploymentSpec defines the desired state of MirrorFilterDeployment + properties: + filter: + description: Specifies a filter to deploy on the specified Node + type: string + node: + description: Specifies a Node to deploy this filter on + type: string + required: + - filter + - node + type: object + status: + description: MirrorFilterDeploymentStatus defines the observed state of MirrorFilterDeployment + type: object + type: object +served: true +storage: true +subresources: + status: {} diff --git a/static/resources/25.4.2/mirrorfilters.filters.eda.nokia.com/v1alpha1.yaml b/static/resources/25.4.2/mirrorfilters.filters.eda.nokia.com/v1alpha1.yaml new file mode 100644 index 0000000..a37a7a2 --- /dev/null +++ b/static/resources/25.4.2/mirrorfilters.filters.eda.nokia.com/v1alpha1.yaml @@ -0,0 +1,548 @@ +name: v1alpha1 +schema: + openAPIV3Schema: + description: MirrorFilter is the Schema for the mirrorfilters API + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + description: MirrorFilter specifies a list of filtering rules for mirroring network traffic. The resource allows for the creation of ordered filter entries based on IP criteria, providing flexibility in traffic mirroring configurations. + properties: + entries: + description: Specifies the list of filter entries, in order. + items: + properties: + ipEntry: + properties: + action: + description: An action to take, either 'Accept','Drop', or 'RateLimit'. + enum: + - Drop + - Accept + - RateLimit + type: string + destinationPortName: + description: Destination port to match by name. + enum: + - ACAP + - AFP-TCP + - ARNS + - ASF-RMCP + - ASHARE + - ATALK-RM + - AURP + - AUTH + - BFD + - BFD-ECHO + - BFTP + - BGMP + - BGP + - BOOTPC + - BOOTPS + - CCSO-NS + - CHARGEN + - CISCO-TDP + - CITADEL + - CLEARCASE + - COMMERCE + - COURIER + - DAYTIME + - DHCP-FAILOVER + - DHCPV6-CLIENT + - DHCPV6-SERVER + - DICOM + - DISCARD + - DNSIX + - DOMAIN + - DSP + - ECHO + - EPP + - ESRO + - EXEC + - FINGER + - FTP + - FTP-DATA + - FTPS + - FTPS-DATA + - GODI + - GOPHER + - GTP-C + - GTP-PRIME + - GTP-U + - HA-CLUSTER + - HOSTNAME + - HP-ALARM-MGR + - HTTP + - HTTP-ALT + - HTTP-MGMT + - HTTP-RPC + - HTTPS + - IEEE-MMS-SSL + - IMAP + - IMAP3 + - IMAPS + - IPP + - IPSEC + - IPX + - IRC + - IRIS-BEEP + - ISAKMP + - ISAKMP-NAT + - ISCSI + - ISO-TSAP + - KERBEROS + - KERBEROS-ADM + - KLOGIN + - KPASSWD + - KSHELL + - L2TP + - LDAP + - LDAPS + - LDP + - LMP + - LOGIN + - LPD + - LSP-PING + - MAC-SERVER-ADM + - MATIP-A + - MATIP-B + - MICRO-BFD + - MICROSOFT-DS + - MOBILE-IP + - MONITOR + - MPP + - MS-EXCHANGE + - MSDP + - MSP + - MSSQL-M + - MSSQL-S + - MULTIHOP-BFD + - NAS + - NCP + - NETBIOS-DATA + - NETBIOS-NS + - NETBIOS-SS + - NETNEWS + - NETRJS-1 + - NETRJS-2 + - NETRJS-3 + - NETRJS-4 + - NETWALL + - NEW-RWHO + - NFS + - NNTP + - NNTPS + - NTP + - ODMR + - OLSR + - OPENVPN + - PIM-AUTO-RP + - PKIX-TIMESTAMP + - POP2 + - POP3 + - POP3S + - PPTP + - PRINT-SRV + - PTP-EVENT + - PTP-GENERAL + - QMTP + - QOTD + - RADIUS + - RADIUS-ACCT + - REMOTE-MAIL + - REMOTEFS + - REMOTECMD + - RIP + - RJE + - RLP + - RLZDB + - RMC + - RMONITOR + - RPC2PORTMAP + - RSYNC + - RTELNET + - RTSP + - SGMP + - SILC + - SMUX + - SNA-GW + - SNMP + - SNMP-TRAP + - SNPP + - SMTP + - SQL-SVCS + - SQL + - SSH + - SUBMISSION + - SUNRPC + - SVCLOC + - SYSLOG + - SYSTAT + - TACACS + - TALK + - TCPMUX + - TCPNETHASPSRV + - TFTP + - TIME + - TIMED + - UPS + - XDMCP + - XNS-CH + - XNS-MAIL + - XNS-TIME + - Z3950 + type: string + destinationPortNumber: + description: Destination port to match by numerical value. + maximum: 65535 + minimum: 0 + type: integer + destinationPortOperator: + description: Operator to use when matching destinationPort, either Equals, GreaterOrEquals, or LessOrEquals. + enum: + - Equals + - GreaterOrEquals + - LessOrEquals + type: string + destinationPortRange: + description: Range of destination ports to match, in the format n-m, e.g. 100-200, The start and end of the range must be port numbers. + type: string + destinationPrefix: + description: Destination prefix to match. + type: string + firstFragment: + description: Match the first fragment only. + type: boolean + fragment: + description: Match any fragment. + type: boolean + icmpCode: + description: Match a specific ICMP code, as a number between 0-255, e.g. 0. + items: + type: integer + maxItems: 255 + minItems: 0 + type: array + icmpTypeName: + description: Match a specific ICMP type by name, e.g. dest-unreachable. + enum: + - DestUnreachable + - Echo + - EchoReply + - EchoRequest + - McastRtrAdv + - McastRtrSolicit + - McastRtrTerm + - MldDone + - MldQuery + - MldReport + - MldV2 + - NeighborAdvertise + - NeighborSolicit + - NodeInfoQuery + - NodeInfoResponse + - PacketTooBig + - ParamProblem + - Redirect + - RouterAdvertise + - RouterRenumber + - RouterSolicit + - SourceQuench + - TimeExceeded + - Timestamp + - TimestampReply + type: string + icmpTypeNumber: + description: Match a specific ICMP type by number. + maximum: 255 + minimum: 0 + type: integer + protocolName: + description: Match a specific IP protocol name (specified in the type field of the IP header). + enum: + - AH + - EGP + - EIGRP + - ESP + - GGP + - GRE + - ICMP + - ICMP6 + - IDRP + - IGMP + - IGP + - IPV4 + - IPV6 + - IPV6-DEST-OPTS + - IPV6-HOP + - L2TP + - MPLS-IN-IP + - NO-NEXT-HDR + - OSPF + - PIM + - ROHC + - RSVP + - SCTP + - ST + - TCP + - UDP + - VRRP + type: string + protocolNumber: + description: Match a specific IP protocol number (specified in the type field of the IP header). + maximum: 255 + minimum: 0 + type: integer + rateLimit: + description: Rate limit to apply when the action is 'RateLimit'. + properties: + burstSize: + description: The maximum burst size in bytes. + format: int32 + type: integer + entrySpecificPolicer: + default: false + description: 'Controls policer instantiation: false for shared instance, true for per-entry instances' + type: boolean + peakRate: + description: The peak rate in kilobytes per second. + format: int32 + type: integer + scope: + default: Global + description: Determines how the policer is applied across subinterfaces. Global applies the policer across all subinterfaces, while Subinterface applies it individually to each subinterface. + enum: + - Global + - Subinterface + type: string + type: object + sourcePortName: + description: Source port to match by name. + enum: + - ACAP + - AFP-TCP + - ARNS + - ASF-RMCP + - ASHARE + - ATALK-RM + - AURP + - AUTH + - BFD + - BFD-ECHO + - BFTP + - BGMP + - BGP + - BOOTPC + - BOOTPS + - CCSO-NS + - CHARGEN + - CISCO-TDP + - CITADEL + - CLEARCASE + - COMMERCE + - COURIER + - DAYTIME + - DHCP-FAILOVER + - DHCPV6-CLIENT + - DHCPV6-SERVER + - DICOM + - DISCARD + - DNSIX + - DOMAIN + - DSP + - ECHO + - EPP + - ESRO + - EXEC + - FINGER + - FTP + - FTP-DATA + - FTPS + - FTPS-DATA + - GODI + - GOPHER + - GTP-C + - GTP-PRIME + - GTP-U + - HA-CLUSTER + - HOSTNAME + - HP-ALARM-MGR + - HTTP + - HTTP-ALT + - HTTP-MGMT + - HTTP-RPC + - HTTPS + - IEEE-MMS-SSL + - IMAP + - IMAP3 + - IMAPS + - IPP + - IPSEC + - IPX + - IRC + - IRIS-BEEP + - ISAKMP + - ISAKMP-NAT + - ISCSI + - ISO-TSAP + - KERBEROS + - KERBEROS-ADM + - KLOGIN + - KPASSWD + - KSHELL + - L2TP + - LDAP + - LDAPS + - LDP + - LMP + - LOGIN + - LPD + - LSP-PING + - MAC-SERVER-ADM + - MATIP-A + - MATIP-B + - MICRO-BFD + - MICROSOFT-DS + - MOBILE-IP + - MONITOR + - MPP + - MS-EXCHANGE + - MSDP + - MSP + - MSSQL-M + - MSSQL-S + - MULTIHOP-BFD + - NAS + - NCP + - NETBIOS-DATA + - NETBIOS-NS + - NETBIOS-SS + - NETNEWS + - NETRJS-1 + - NETRJS-2 + - NETRJS-3 + - NETRJS-4 + - NETWALL + - NEW-RWHO + - NFS + - NNTP + - NNTPS + - NTP + - ODMR + - OLSR + - OPENVPN + - PIM-AUTO-RP + - PKIX-TIMESTAMP + - POP2 + - POP3 + - POP3S + - PPTP + - PRINT-SRV + - PTP-EVENT + - PTP-GENERAL + - QMTP + - QOTD + - RADIUS + - RADIUS-ACCT + - REMOTE-MAIL + - REMOTEFS + - REMOTECMD + - RIP + - RJE + - RLP + - RLZDB + - RMC + - RMONITOR + - RPC2PORTMAP + - RSYNC + - RTELNET + - RTSP + - SGMP + - SILC + - SMUX + - SNA-GW + - SNMP + - SNMP-TRAP + - SNPP + - SMTP + - SQL-SVCS + - SQL + - SSH + - SUBMISSION + - SUNRPC + - SVCLOC + - SYSLOG + - SYSTAT + - TACACS + - TALK + - TCPMUX + - TCPNETHASPSRV + - TFTP + - TIME + - TIMED + - UPS + - XDMCP + - XNS-CH + - XNS-MAIL + - XNS-TIME + - Z3950 + type: string + sourcePortNumber: + description: Source port to match by numerical value. + maximum: 65535 + minimum: 0 + type: integer + sourcePortOperator: + description: Operator to use when matching sourcePort, either Equals, GreaterOrEquals, or LessOrEquals. + enum: + - Equals + - GreaterOrEquals + - LessOrEquals + type: string + sourcePortRange: + description: Range of source ports to match, in the format n-m, e.g. 100-200. The start and end of the range must be port numbers. + type: string + sourcePrefix: + description: Source prefix to match. + type: string + tcpFlags: + description: Match TCP flags, usable with !, &, | and the flags RST, SYN, and ACK. + type: string + type: object + type: + default: Auto + enum: + - IPV4 + - IPV6 + - Auto + type: string + required: + - type + type: object + type: array + required: + - entries + type: object + status: + description: MirrorFilterStatus defines the observed state of MirrorFilter + type: object + type: object +served: true +storage: true +subresources: + status: {} diff --git a/static/resources/25.4.2/mirrors.oam.eda.nokia.com/v1alpha1.yaml b/static/resources/25.4.2/mirrors.oam.eda.nokia.com/v1alpha1.yaml new file mode 100644 index 0000000..b18b2dc --- /dev/null +++ b/static/resources/25.4.2/mirrors.oam.eda.nokia.com/v1alpha1.yaml @@ -0,0 +1,749 @@ +additionalPrinterColumns: + - jsonPath: .status.lastChange + name: Last Change + type: date + - jsonPath: .status.operationalState + name: Operational State + type: string +name: v1alpha1 +schema: + openAPIV3Schema: + description: Mirror is the Schema for the mirrors API + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + description: Mirror allows for the configuration of mirroring sources, including interfaces, subinterfaces, and filters, as well as the destination for the mirrored traffic, which can be either local or remote. + properties: + localDestination: + description: Local destination for the mirror, there can only be either a remote destination or local destination provisioned for a Mirror. + properties: + interface: + description: Reference to an Interface resource to send the mirrored traffic to. This must be on the same Node as the source. + type: string + vlanID: + description: Single value between 0-4094 support, or the special keyword untagged. + type: string + type: object + remoteDestination: + description: Remote destination for the mirror, there can only be either a remote destination or local destination provisioned for a Mirror. + properties: + defaultRouter: + description: Specifies the DefaultRouter to reach the remote destination of the mirror, a Router and DefaultRouter reference cannot be set at the same time. + type: string + destinationIP: + description: Remote destination IP address. When a remote destination is used for the mirror, the destinationIP is mandatory. + type: string + encapsulation: + enum: + - L2OGRE + - L3OGRE + type: string + router: + description: Specifies the Router to reach the remote destination of the mirror, a Router and DefaultRouter reference cannot be set at the same time. + type: string + sourceIP: + description: Source IP to use when sending a mirror to a remote destination. When a remote destination us used for the mirror, the sourceIP is mandatory. + type: string + type: object + sources: + description: Mirror sources. + properties: + direction: + description: The direction of the traffic being mirrored. + enum: + - Ingress + - Egress + - IngressEgress + type: string + filters: + items: + properties: + filter: + description: Emittes an MirrorFilter and uses the filter as a source for the Mirror. + properties: + entries: + description: Specifies the list of filter entries, in order. + items: + properties: + ipEntry: + properties: + action: + description: An action to take, either 'Accept','Drop', or 'RateLimit'. + enum: + - Drop + - Accept + - RateLimit + type: string + destinationPortName: + description: Destination port to match by name. + enum: + - ACAP + - AFP-TCP + - ARNS + - ASF-RMCP + - ASHARE + - ATALK-RM + - AURP + - AUTH + - BFD + - BFD-ECHO + - BFTP + - BGMP + - BGP + - BOOTPC + - BOOTPS + - CCSO-NS + - CHARGEN + - CISCO-TDP + - CITADEL + - CLEARCASE + - COMMERCE + - COURIER + - DAYTIME + - DHCP-FAILOVER + - DHCPV6-CLIENT + - DHCPV6-SERVER + - DICOM + - DISCARD + - DNSIX + - DOMAIN + - DSP + - ECHO + - EPP + - ESRO + - EXEC + - FINGER + - FTP + - FTP-DATA + - FTPS + - FTPS-DATA + - GODI + - GOPHER + - GTP-C + - GTP-PRIME + - GTP-U + - HA-CLUSTER + - HOSTNAME + - HP-ALARM-MGR + - HTTP + - HTTP-ALT + - HTTP-MGMT + - HTTP-RPC + - HTTPS + - IEEE-MMS-SSL + - IMAP + - IMAP3 + - IMAPS + - IPP + - IPSEC + - IPX + - IRC + - IRIS-BEEP + - ISAKMP + - ISAKMP-NAT + - ISCSI + - ISO-TSAP + - KERBEROS + - KERBEROS-ADM + - KLOGIN + - KPASSWD + - KSHELL + - L2TP + - LDAP + - LDAPS + - LDP + - LMP + - LOGIN + - LPD + - LSP-PING + - MAC-SERVER-ADM + - MATIP-A + - MATIP-B + - MICRO-BFD + - MICROSOFT-DS + - MOBILE-IP + - MONITOR + - MPP + - MS-EXCHANGE + - MSDP + - MSP + - MSSQL-M + - MSSQL-S + - MULTIHOP-BFD + - NAS + - NCP + - NETBIOS-DATA + - NETBIOS-NS + - NETBIOS-SS + - NETNEWS + - NETRJS-1 + - NETRJS-2 + - NETRJS-3 + - NETRJS-4 + - NETWALL + - NEW-RWHO + - NFS + - NNTP + - NNTPS + - NTP + - ODMR + - OLSR + - OPENVPN + - PIM-AUTO-RP + - PKIX-TIMESTAMP + - POP2 + - POP3 + - POP3S + - PPTP + - PRINT-SRV + - PTP-EVENT + - PTP-GENERAL + - QMTP + - QOTD + - RADIUS + - RADIUS-ACCT + - REMOTE-MAIL + - REMOTEFS + - REMOTECMD + - RIP + - RJE + - RLP + - RLZDB + - RMC + - RMONITOR + - RPC2PORTMAP + - RSYNC + - RTELNET + - RTSP + - SGMP + - SILC + - SMUX + - SNA-GW + - SNMP + - SNMP-TRAP + - SNPP + - SMTP + - SQL-SVCS + - SQL + - SSH + - SUBMISSION + - SUNRPC + - SVCLOC + - SYSLOG + - SYSTAT + - TACACS + - TALK + - TCPMUX + - TCPNETHASPSRV + - TFTP + - TIME + - TIMED + - UPS + - XDMCP + - XNS-CH + - XNS-MAIL + - XNS-TIME + - Z3950 + type: string + destinationPortNumber: + description: Destination port to match by numerical value. + maximum: 65535 + minimum: 0 + type: integer + destinationPortOperator: + description: Operator to use when matching destinationPort, either Equals, GreaterOrEquals, or LessOrEquals. + enum: + - Equals + - GreaterOrEquals + - LessOrEquals + type: string + destinationPortRange: + description: Range of destination ports to match, in the format n-m, e.g. 100-200, The start and end of the range must be port numbers. + type: string + destinationPrefix: + description: Destination prefix to match. + type: string + firstFragment: + description: Match the first fragment only. + type: boolean + fragment: + description: Match any fragment. + type: boolean + icmpCode: + description: Match a specific ICMP code, as a number between 0-255, e.g. 0. + items: + type: integer + maxItems: 255 + minItems: 0 + type: array + icmpTypeName: + description: Match a specific ICMP type by name, e.g. dest-unreachable. + enum: + - DestUnreachable + - Echo + - EchoReply + - EchoRequest + - McastRtrAdv + - McastRtrSolicit + - McastRtrTerm + - MldDone + - MldQuery + - MldReport + - MldV2 + - NeighborAdvertise + - NeighborSolicit + - NodeInfoQuery + - NodeInfoResponse + - PacketTooBig + - ParamProblem + - Redirect + - RouterAdvertise + - RouterRenumber + - RouterSolicit + - SourceQuench + - TimeExceeded + - Timestamp + - TimestampReply + type: string + icmpTypeNumber: + description: Match a specific ICMP type by number. + maximum: 255 + minimum: 0 + type: integer + protocolName: + description: Match a specific IP protocol name (specified in the type field of the IP header). + enum: + - AH + - EGP + - EIGRP + - ESP + - GGP + - GRE + - ICMP + - ICMP6 + - IDRP + - IGMP + - IGP + - IPV4 + - IPV6 + - IPV6-DEST-OPTS + - IPV6-HOP + - L2TP + - MPLS-IN-IP + - NO-NEXT-HDR + - OSPF + - PIM + - ROHC + - RSVP + - SCTP + - ST + - TCP + - UDP + - VRRP + type: string + protocolNumber: + description: Match a specific IP protocol number (specified in the type field of the IP header). + maximum: 255 + minimum: 0 + type: integer + rateLimit: + description: Rate limit to apply when the action is 'RateLimit'. + properties: + burstSize: + description: The maximum burst size in bytes. + format: int32 + type: integer + entrySpecificPolicer: + default: false + description: 'Controls policer instantiation: false for shared instance, true for per-entry instances' + type: boolean + peakRate: + description: The peak rate in kilobytes per second. + format: int32 + type: integer + scope: + default: Global + description: Determines how the policer is applied across subinterfaces. Global applies the policer across all subinterfaces, while Subinterface applies it individually to each subinterface. + enum: + - Global + - Subinterface + type: string + type: object + sourcePortName: + description: Source port to match by name. + enum: + - ACAP + - AFP-TCP + - ARNS + - ASF-RMCP + - ASHARE + - ATALK-RM + - AURP + - AUTH + - BFD + - BFD-ECHO + - BFTP + - BGMP + - BGP + - BOOTPC + - BOOTPS + - CCSO-NS + - CHARGEN + - CISCO-TDP + - CITADEL + - CLEARCASE + - COMMERCE + - COURIER + - DAYTIME + - DHCP-FAILOVER + - DHCPV6-CLIENT + - DHCPV6-SERVER + - DICOM + - DISCARD + - DNSIX + - DOMAIN + - DSP + - ECHO + - EPP + - ESRO + - EXEC + - FINGER + - FTP + - FTP-DATA + - FTPS + - FTPS-DATA + - GODI + - GOPHER + - GTP-C + - GTP-PRIME + - GTP-U + - HA-CLUSTER + - HOSTNAME + - HP-ALARM-MGR + - HTTP + - HTTP-ALT + - HTTP-MGMT + - HTTP-RPC + - HTTPS + - IEEE-MMS-SSL + - IMAP + - IMAP3 + - IMAPS + - IPP + - IPSEC + - IPX + - IRC + - IRIS-BEEP + - ISAKMP + - ISAKMP-NAT + - ISCSI + - ISO-TSAP + - KERBEROS + - KERBEROS-ADM + - KLOGIN + - KPASSWD + - KSHELL + - L2TP + - LDAP + - LDAPS + - LDP + - LMP + - LOGIN + - LPD + - LSP-PING + - MAC-SERVER-ADM + - MATIP-A + - MATIP-B + - MICRO-BFD + - MICROSOFT-DS + - MOBILE-IP + - MONITOR + - MPP + - MS-EXCHANGE + - MSDP + - MSP + - MSSQL-M + - MSSQL-S + - MULTIHOP-BFD + - NAS + - NCP + - NETBIOS-DATA + - NETBIOS-NS + - NETBIOS-SS + - NETNEWS + - NETRJS-1 + - NETRJS-2 + - NETRJS-3 + - NETRJS-4 + - NETWALL + - NEW-RWHO + - NFS + - NNTP + - NNTPS + - NTP + - ODMR + - OLSR + - OPENVPN + - PIM-AUTO-RP + - PKIX-TIMESTAMP + - POP2 + - POP3 + - POP3S + - PPTP + - PRINT-SRV + - PTP-EVENT + - PTP-GENERAL + - QMTP + - QOTD + - RADIUS + - RADIUS-ACCT + - REMOTE-MAIL + - REMOTEFS + - REMOTECMD + - RIP + - RJE + - RLP + - RLZDB + - RMC + - RMONITOR + - RPC2PORTMAP + - RSYNC + - RTELNET + - RTSP + - SGMP + - SILC + - SMUX + - SNA-GW + - SNMP + - SNMP-TRAP + - SNPP + - SMTP + - SQL-SVCS + - SQL + - SSH + - SUBMISSION + - SUNRPC + - SVCLOC + - SYSLOG + - SYSTAT + - TACACS + - TALK + - TCPMUX + - TCPNETHASPSRV + - TFTP + - TIME + - TIMED + - UPS + - XDMCP + - XNS-CH + - XNS-MAIL + - XNS-TIME + - Z3950 + type: string + sourcePortNumber: + description: Source port to match by numerical value. + maximum: 65535 + minimum: 0 + type: integer + sourcePortOperator: + description: Operator to use when matching sourcePort, either Equals, GreaterOrEquals, or LessOrEquals. + enum: + - Equals + - GreaterOrEquals + - LessOrEquals + type: string + sourcePortRange: + description: Range of source ports to match, in the format n-m, e.g. 100-200. The start and end of the range must be port numbers. + type: string + sourcePrefix: + description: Source prefix to match. + type: string + tcpFlags: + description: Match TCP flags, usable with !, &, | and the flags RST, SYN, and ACK. + type: string + type: object + type: + default: Auto + enum: + - IPV4 + - IPV6 + - Auto + type: string + required: + - type + type: object + type: array + required: + - entries + type: object + subinterfaces: + description: Subinterfaces on which to deploy the IPFilter to use as a source for the Mirror. + properties: + bridgeInterfaces: + description: List of BridgeInterfaces, all traffic from all BridgeInterfaces in the list will be used as sources to be mirrored. A combination of VLANs, BridgeInterfaces and subinterfaces can be configured as sources together. + items: + type: string + type: array + subinterfaces: + description: List of Interfaces and subinterface indices + items: + properties: + index: + description: Index of the sub-interface. This is ignored on a node running SROS. + type: integer + interfaceName: + description: Reference to an Interface resource, the combination of the Interface and the specified subinterface index will build the subinterface to be used as a source of traffic to be mirrored. A combination of VLANs, BridgeInterfaces and subinterfaces can be configured as sources together. + type: string + vlan: + description: Reference to the VLAN resource under which the sub-interface is configured. This is mandatory when the sub-interface is on a node running SROS and ignored for all other node operating systems. + type: string + required: + - interfaceName + type: object + type: array + vlans: + description: List of VLAN resources, all subinterfaces attached to the VLAN will be used as sources to be mirrored. A combination of VLANs, BridgeInterfaces and subinterfaces can be configured as sources together. + items: + type: string + type: array + type: object + type: object + type: array + interfaces: + description: Reference to an Interface resource to be mirrored. Traffic from the entire Interface will be mirrored for any selected Interfaces. + properties: + interfaceSelector: + description: Select Interfaces using a label selector to be mirrored. Traffic from the entire Interface will be mirrored for any selected Interfaces. If both a label selector is used and a list of Interfaces is provided, a combination of all selected and provided interfaces will be mirrored. + items: + type: string + type: array + interfaces: + description: List of Interfaces to be mirrored. Traffic from the entire Interface will be mirrored for any selected Interfaces. If both a label selector is used and a list of Interfaces is provided, a combination of all selected and provided interfaces will be mirrored. + items: + type: string + type: array + type: object + subinterfaces: + properties: + bridgeInterfaces: + description: List of BridgeInterfaces, all traffic from all BridgeInterfaces in the list will be used as sources to be mirrored. A combination of VLANs, BridgeInterfaces and subinterfaces can be configured as sources together. + items: + type: string + type: array + subinterfaces: + description: List of Interfaces and subinterface indices + items: + properties: + index: + description: Index of the sub-interface. This is ignored on a node running SROS. + type: integer + interfaceName: + description: Reference to an Interface resource, the combination of the Interface and the specified subinterface index will build the subinterface to be used as a source of traffic to be mirrored. A combination of VLANs, BridgeInterfaces and subinterfaces can be configured as sources together. + type: string + vlan: + description: Reference to the VLAN resource under which the sub-interface is configured. This is mandatory when the sub-interface is on a node running SROS and ignored for all other node operating systems. + type: string + required: + - interfaceName + type: object + type: array + vlans: + description: List of VLAN resources, all subinterfaces attached to the VLAN will be used as sources to be mirrored. A combination of VLANs, BridgeInterfaces and subinterfaces can be configured as sources together. + items: + type: string + type: array + type: object + required: + - direction + type: object + required: + - sources + type: object + status: + description: MirrorStatus defines the observed state of Mirror + properties: + lastChange: + description: Indicates when this SubInterface last changed state. + type: string + mirrorID: + description: Mirror Identifier used as the name of the mirror. + type: string + numActiveInterfaces: + description: Total number of active Interfaces used as sources of the mirror. + type: integer + numActiveSubinterfaces: + description: Total number of active subinterfaces used as sources of the mirror. + type: integer + numActiveV4FilterSubinterfaces: + description: Total number of active subinterfaces used as sources of the mirror derived from IPV4Filter associations. + type: integer + numActiveV6FilterSubinterfaces: + description: Total number of active subinterfaces used as sources of the mirror derived from IPV6Filter associations. + type: integer + numActiveVLANSubinterfaces: + description: Total number of active subinterfaces used as sources of the mirror derived from VLAN resource references. + type: integer + numberActiveBridgeInterfaces: + description: Total number of active subinterfaces used as sources of the mirror derived from BridgeInterface resource references. + type: integer + operationalState: + description: Indicates the current operational state of the Mirror instance. + type: string + subinterfaces: + description: List of members in this Interface. + items: + properties: + configuredSource: + description: Indicates what is driving the particular subinterface to be selected as a mirror source. + enum: + - VLAN + - BridgeInterface + - Subinterface + - Interface + - FilterV4 + - FilterV6 + type: string + interface: + description: Node specific interface name. + type: string + node: + description: Reference to Node object. + type: string + operatingSystem: + description: Operating System of the Node. + type: string + subinterfaceIndex: + description: Index allocated to the subinterface which is being mirrored. If an interface is used as a source, this will not be set. + type: integer + vlanID: + description: vlan assigned to this subinterface. + type: string + required: + - configuredSource + - interface + - node + - operatingSystem + type: object + type: array + type: object + type: object +served: true +storage: true +subresources: + status: {} diff --git a/static/resources/25.4.2/mirrorstates.oam.eda.nokia.com/v1alpha1.yaml b/static/resources/25.4.2/mirrorstates.oam.eda.nokia.com/v1alpha1.yaml new file mode 100644 index 0000000..091e18c --- /dev/null +++ b/static/resources/25.4.2/mirrorstates.oam.eda.nokia.com/v1alpha1.yaml @@ -0,0 +1,73 @@ +name: v1alpha1 +schema: + openAPIV3Schema: + description: MirrorState is the Schema for the mirrorstates API + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + description: MirrorStateSpec defines the desired state of MirrorState + properties: + mirrorID: + description: Mirror Identifier used as the name of the mirror + type: string + subinterfaces: + description: List of members in this Interface + items: + properties: + configuredSource: + description: Indicates what is driving the particular subinterface to be selected as a mirror source. + enum: + - VLAN + - BridgeInterface + - Subinterface + - Interface + - FilterV4 + - FilterV6 + type: string + interface: + description: Node specific interface name. + type: string + node: + description: Reference to Node object. + type: string + operatingSystem: + description: Operating System of the Node. + type: string + subinterfaceIndex: + description: Index allocated to the subinterface which is being mirrored. If an interface is used as a source, this will not be set. + type: integer + vlanID: + description: vlan assigned to this subinterface. + type: string + required: + - configuredSource + - interface + - node + - operatingSystem + type: object + type: array + type: object + status: + description: MirrorStateStatus defines the observed state of MirrorState + type: object + type: object +served: true +storage: true +subresources: + status: {} diff --git a/static/resources/25.4.2/monitoraggregatestates.components.eda.nokia.com/v1.yaml b/static/resources/25.4.2/monitoraggregatestates.components.eda.nokia.com/v1.yaml new file mode 100644 index 0000000..b74454e --- /dev/null +++ b/static/resources/25.4.2/monitoraggregatestates.components.eda.nokia.com/v1.yaml @@ -0,0 +1,39 @@ +name: v1 +schema: + openAPIV3Schema: + description: MonitorAggregateState is the Schema for the monitoraggregatestates API + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + description: MonitorAggregateStateSpec defines the desired state of MonitorAggregateState + properties: + targets: + description: List of targets monitored by this instance + items: + type: string + type: array + type: object + status: + description: MonitorAggregateStateStatus defines the observed state of MonitorAggregateState + type: object + type: object +served: true +storage: true +subresources: + status: {} diff --git a/static/resources/monitoraggregatestates.system.eda.nokia.com/v1alpha1.yaml b/static/resources/25.4.2/monitoraggregatestates.system.eda.nokia.com/v1alpha1.yaml similarity index 100% rename from static/resources/monitoraggregatestates.system.eda.nokia.com/v1alpha1.yaml rename to static/resources/25.4.2/monitoraggregatestates.system.eda.nokia.com/v1alpha1.yaml diff --git a/static/resources/25.4.2/monitors.components.eda.nokia.com/v1.yaml b/static/resources/25.4.2/monitors.components.eda.nokia.com/v1.yaml new file mode 100644 index 0000000..eb5e3dc --- /dev/null +++ b/static/resources/25.4.2/monitors.components.eda.nokia.com/v1.yaml @@ -0,0 +1,182 @@ +name: v1 +schema: + openAPIV3Schema: + description: Monitor is the Schema for the monitors API + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + description: MonitorSpec defines the desired state of Monitor + properties: + cpu: + description: CPU monitoring for targets matching this Monitor. + properties: + enabled: + default: true + description: Enable or disable CPU monitoring. + type: boolean + utilization: + description: Parameters relating to CPU utilization monitoring. + properties: + criticalThreshold: + default: 95 + description: |- + The minimum average utilization over the last 1 minute to trigger a critical alarm. + This value must be greater than the majorThreshold. + maximum: 100 + minimum: 1 + type: integer + fallingDelta: + default: 5 + description: |- + The delta in which a triggered threshold must drop below to clear an alarm. + For example, with a criticalThreshold of 90 and a fallingDelta of 5, the critical alarm will clear when the utilization drops below 85. + maximum: 25 + minimum: 1 + type: integer + majorThreshold: + default: 90 + description: |- + The minimum average utilization over the last 1 minute to trigger a major alarm. + This value must be greater than the minorThreshold. + maximum: 100 + minimum: 1 + type: integer + minorThreshold: + default: 80 + description: The minimum average utilization over the last 1 minute to trigger a minor alarm. + maximum: 100 + minimum: 1 + type: integer + type: object + required: + - enabled + type: object + memory: + description: Memory monitoring for targets matching this Monitor. + properties: + enabled: + default: true + description: Enable or disable memory monitoring. + type: boolean + utilization: + description: Parameters relating to memory utilization monitoring. + properties: + criticalThreshold: + default: 95 + description: |- + The minimum average utilization over the last 1 minute to trigger a critical alarm. + This value must be greater than the majorThreshold. + maximum: 100 + minimum: 1 + type: integer + fallingDelta: + default: 5 + description: |- + The delta in which a triggered threshold must drop below to clear an alarm. + For example, with a criticalThreshold of 90 and a fallingDelta of 5, the critical alarm will clear when the utilization drops below 85. + maximum: 25 + minimum: 1 + type: integer + majorThreshold: + default: 90 + description: |- + The minimum average utilization over the last 1 minute to trigger a major alarm. + This value must be greater than the minorThreshold. + maximum: 100 + minimum: 1 + type: integer + minorThreshold: + default: 80 + description: The minimum average utilization over the last 1 minute to trigger a minor alarm. + maximum: 100 + minimum: 1 + type: integer + type: object + required: + - enabled + type: object + targetSelector: + description: Selector to use when including targets to monitor. + items: + type: string + type: array + targets: + description: References to targets to monitor. + items: + type: string + type: array + volume: + description: Volume monitoring for targets matching this Monitor. + properties: + enabled: + default: true + description: Enable or disable volume monitoring. + type: boolean + utilization: + description: Parameters relating to volume utilization monitoring. + properties: + criticalThreshold: + default: 95 + description: |- + The minimum average utilization over the last 1 minute to trigger a critical alarm. + This value must be greater than the majorThreshold. + maximum: 100 + minimum: 1 + type: integer + fallingDelta: + default: 5 + description: |- + The delta in which a triggered threshold must drop below to clear an alarm. + For example, with a criticalThreshold of 90 and a fallingDelta of 5, the critical alarm will clear when the utilization drops below 85. + maximum: 25 + minimum: 1 + type: integer + majorThreshold: + default: 90 + description: |- + The minimum average utilization over the last 1 minute to trigger a major alarm. + This value must be greater than the minorThreshold. + maximum: 100 + minimum: 1 + type: integer + minorThreshold: + default: 80 + description: The minimum average utilization over the last 1 minute to trigger a minor alarm. + maximum: 100 + minimum: 1 + type: integer + type: object + required: + - enabled + type: object + type: object + status: + description: MonitorStatus defines the observed state of Monitor + properties: + targets: + description: Targets being monitored. + items: + type: string + type: array + type: object + type: object +served: true +storage: true +subresources: + status: {} diff --git a/static/resources/monitors.system.eda.nokia.com/v1alpha1.yaml b/static/resources/25.4.2/monitors.system.eda.nokia.com/v1alpha1.yaml similarity index 100% rename from static/resources/monitors.system.eda.nokia.com/v1alpha1.yaml rename to static/resources/25.4.2/monitors.system.eda.nokia.com/v1alpha1.yaml diff --git a/static/resources/25.4.2/monitorstates.components.eda.nokia.com/v1.yaml b/static/resources/25.4.2/monitorstates.components.eda.nokia.com/v1.yaml new file mode 100644 index 0000000..36ff5e5 --- /dev/null +++ b/static/resources/25.4.2/monitorstates.components.eda.nokia.com/v1.yaml @@ -0,0 +1,194 @@ +name: v1 +schema: + openAPIV3Schema: + description: MonitorState is the Schema for the monitorstates API + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + description: MonitorStateSpec defines the desired state of MonitorState + properties: + monitorSpec: + description: The spec of the input Monitor + properties: + cpu: + description: CPU monitoring for targets matching this Monitor. + properties: + enabled: + default: true + description: Enable or disable CPU monitoring. + type: boolean + utilization: + description: Parameters relating to CPU utilization monitoring. + properties: + criticalThreshold: + default: 95 + description: |- + The minimum average utilization over the last 1 minute to trigger a critical alarm. + This value must be greater than the majorThreshold. + maximum: 100 + minimum: 1 + type: integer + fallingDelta: + default: 5 + description: |- + The delta in which a triggered threshold must drop below to clear an alarm. + For example, with a criticalThreshold of 90 and a fallingDelta of 5, the critical alarm will clear when the utilization drops below 85. + maximum: 25 + minimum: 1 + type: integer + majorThreshold: + default: 90 + description: |- + The minimum average utilization over the last 1 minute to trigger a major alarm. + This value must be greater than the minorThreshold. + maximum: 100 + minimum: 1 + type: integer + minorThreshold: + default: 80 + description: The minimum average utilization over the last 1 minute to trigger a minor alarm. + maximum: 100 + minimum: 1 + type: integer + type: object + required: + - enabled + type: object + memory: + description: Memory monitoring for targets matching this Monitor. + properties: + enabled: + default: true + description: Enable or disable memory monitoring. + type: boolean + utilization: + description: Parameters relating to memory utilization monitoring. + properties: + criticalThreshold: + default: 95 + description: |- + The minimum average utilization over the last 1 minute to trigger a critical alarm. + This value must be greater than the majorThreshold. + maximum: 100 + minimum: 1 + type: integer + fallingDelta: + default: 5 + description: |- + The delta in which a triggered threshold must drop below to clear an alarm. + For example, with a criticalThreshold of 90 and a fallingDelta of 5, the critical alarm will clear when the utilization drops below 85. + maximum: 25 + minimum: 1 + type: integer + majorThreshold: + default: 90 + description: |- + The minimum average utilization over the last 1 minute to trigger a major alarm. + This value must be greater than the minorThreshold. + maximum: 100 + minimum: 1 + type: integer + minorThreshold: + default: 80 + description: The minimum average utilization over the last 1 minute to trigger a minor alarm. + maximum: 100 + minimum: 1 + type: integer + type: object + required: + - enabled + type: object + targetSelector: + description: Selector to use when including targets to monitor. + items: + type: string + type: array + targets: + description: References to targets to monitor. + items: + type: string + type: array + volume: + description: Volume monitoring for targets matching this Monitor. + properties: + enabled: + default: true + description: Enable or disable volume monitoring. + type: boolean + utilization: + description: Parameters relating to volume utilization monitoring. + properties: + criticalThreshold: + default: 95 + description: |- + The minimum average utilization over the last 1 minute to trigger a critical alarm. + This value must be greater than the majorThreshold. + maximum: 100 + minimum: 1 + type: integer + fallingDelta: + default: 5 + description: |- + The delta in which a triggered threshold must drop below to clear an alarm. + For example, with a criticalThreshold of 90 and a fallingDelta of 5, the critical alarm will clear when the utilization drops below 85. + maximum: 25 + minimum: 1 + type: integer + majorThreshold: + default: 90 + description: |- + The minimum average utilization over the last 1 minute to trigger a major alarm. + This value must be greater than the minorThreshold. + maximum: 100 + minimum: 1 + type: integer + minorThreshold: + default: 80 + description: The minimum average utilization over the last 1 minute to trigger a minor alarm. + maximum: 100 + minimum: 1 + type: integer + type: object + required: + - enabled + type: object + type: object + operatingSystem: + description: The operating system of the target being monitored + type: string + target: + description: Reference to the target being monitored + type: string + version: + description: The version of the target being monitored + type: string + required: + - monitorSpec + - operatingSystem + - target + - version + type: object + status: + description: MonitorStateStatus defines the observed state of MonitorState + type: object + type: object +served: true +storage: true +subresources: + status: {} diff --git a/static/resources/monitorstates.system.eda.nokia.com/v1alpha1.yaml b/static/resources/25.4.2/monitorstates.system.eda.nokia.com/v1alpha1.yaml similarity index 100% rename from static/resources/monitorstates.system.eda.nokia.com/v1alpha1.yaml rename to static/resources/25.4.2/monitorstates.system.eda.nokia.com/v1alpha1.yaml diff --git a/static/resources/namespaces.core.eda.nokia.com/v1.yaml b/static/resources/25.4.2/namespaces.core.eda.nokia.com/v1.yaml similarity index 100% rename from static/resources/namespaces.core.eda.nokia.com/v1.yaml rename to static/resources/25.4.2/namespaces.core.eda.nokia.com/v1.yaml diff --git a/static/resources/25.4.2/nodeconfigs.core.eda.nokia.com/v1.yaml b/static/resources/25.4.2/nodeconfigs.core.eda.nokia.com/v1.yaml new file mode 100644 index 0000000..36330fa --- /dev/null +++ b/static/resources/25.4.2/nodeconfigs.core.eda.nokia.com/v1.yaml @@ -0,0 +1,78 @@ +name: v1 +schema: + openAPIV3Schema: + description: NodeConfig is the Schema for the nodeconfigs API + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + description: NodeConfigSpec defines the desired state of NodeConfig + properties: + configs: + description: An array of configurations (paths and corresponding configs) applied in this NodeConfig + items: + properties: + config: + description: |- + For Create/Update operations, this is a mandatory json object representing the configuration. + For Delete operation, this is an optional json array representing the fields to delete + type: string + encrypt: + description: |- + Encrypt the payload of the config. + For Delete operation, this does not apply. + type: boolean + operation: + description: Operation to perform on the configuration + enum: + - Create + - Update + - Delete + type: string + path: + description: Path to place the configuration on the node, in json path format + type: string + required: + - operation + - path + type: object + type: array + node-endpoint: + description: Reference to a TopoNode to which this config is applied + type: string + priority: + default: 0 + description: |- + Sets the priority of this NodeConfig, with lower priorities being overwritten by higher priorities. + Negative priorities may be used to indicate a lower-than-default priority. + format: int32 + maximum: 100 + minimum: -100 + type: integer + required: + - configs + - node-endpoint + type: object + status: + description: NodeConfigStatus defines the observed state of NodeConfig + type: object + type: object +served: true +storage: true +subresources: + status: {} diff --git a/static/resources/25.4.2/nodegroupdeployments.aaa.eda.nokia.com/v1alpha1.yaml b/static/resources/25.4.2/nodegroupdeployments.aaa.eda.nokia.com/v1alpha1.yaml new file mode 100644 index 0000000..06636ba --- /dev/null +++ b/static/resources/25.4.2/nodegroupdeployments.aaa.eda.nokia.com/v1alpha1.yaml @@ -0,0 +1,43 @@ +name: v1alpha1 +schema: + openAPIV3Schema: + description: NodeGroupDeployment is the Schema for the nodegroupdeployments API + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + description: NodeGroupDeploymentSpec defines the desired state of NodeGroupDeployment + properties: + group: + description: Specifies a group to deploy on the specified Node + type: string + node: + description: Specifies a Node to deploy this group on + type: string + required: + - group + - node + type: object + status: + description: NodeGroupDeploymentStatus defines the observed state of a NodeGroupDeployment + type: object + type: object +served: true +storage: true +subresources: + status: {} diff --git a/static/resources/25.4.2/nodegroups.aaa.eda.nokia.com/v1alpha1.yaml b/static/resources/25.4.2/nodegroups.aaa.eda.nokia.com/v1alpha1.yaml new file mode 100644 index 0000000..7bf41f5 --- /dev/null +++ b/static/resources/25.4.2/nodegroups.aaa.eda.nokia.com/v1alpha1.yaml @@ -0,0 +1,105 @@ +name: v1alpha1 +schema: + openAPIV3Schema: + description: NodeGroup is the Schema for the nodegroups API + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + description: |- + NodeGroup is a representation of a group on a node, including the services it has access to, any RBAC, and TACACS configuration. + NodeGroups are deployed to nodes by NodeUser or other permission-consuming resources. + properties: + groupName: + description: Set the local name for this group. If not provided, the resource name will be used. + type: string + rules: + description: Rules for this group. + items: + properties: + action: + default: ReadWrite + description: Set the action for this entry. + enum: + - Deny + - ReadWrite + - Read + type: string + match: + description: |- + Set the match for this entry. This is a string to match input against - for example "interface" for srl or "configure port" for sros. + Rules here should be specified in the target specific format. + type: string + operatingSystem: + default: srl + description: |- + Operating system to match against for this rule. + Operating system to deploy this rule to. + enum: + - srl + - sros + type: string + required: + - action + - operatingSystem + type: object + type: array + services: + description: Enabled services for this group + items: + enum: + - CLI + - FTP + - GNMI + - GNOI + - GNSI + - GRIBI + - Reflection + - JSON-RPC + - NETCONF + type: string + type: array + superuser: + description: Make members of this group superusers. + type: boolean + tacacs: + description: TACACS configuration. + properties: + privilegeLevel: + description: Set the privilege level for this group. + maximum: 15 + minimum: 0 + type: integer + type: object + required: + - services + type: object + status: + description: Deployment status of this NodeGroup. + properties: + nodes: + description: List of TopoNodes group has been deployed to. + items: + type: string + type: array + type: object + type: object +served: true +storage: true +subresources: + status: {} diff --git a/static/resources/25.4.2/nodeprofiles.core.eda.nokia.com/v1.yaml b/static/resources/25.4.2/nodeprofiles.core.eda.nokia.com/v1.yaml new file mode 100644 index 0000000..0dd50f7 --- /dev/null +++ b/static/resources/25.4.2/nodeprofiles.core.eda.nokia.com/v1.yaml @@ -0,0 +1,358 @@ +additionalPrinterColumns: + - jsonPath: .spec.operatingSystem + name: OS + type: string + - jsonPath: .spec.version + name: Version + type: string + - jsonPath: .spec.nodeUser + name: Node User + type: string + - jsonPath: .spec.transport + name: Transport + type: string + - jsonPath: .spec.port + name: Port + type: string +name: v1 +schema: + openAPIV3Schema: + description: NodeProfile is the Schema for the toponodes API + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + description: NodeProfileSpec defines the desired state of NodeProfile + properties: + annotate: + default: false + description: Indicates if NPP should annotate sent configuration. + type: boolean + containerImage: + description: Container image to use when simulating TopoNodes referencing this NodeProfile, e.g. ghcr.io/nokia/srlinux:24.7.1. + type: string + dhcp: + description: DHCP options to use when onboarding the TopoNode. Optional if not bootstrapping using EDA. + properties: + dhcp4Options: + description: DHCPv4 options to return to TopoNodes referencing this NodeProfile. + items: + properties: + option: + description: DHCPv4 option to return to the TopoNode. + enum: + - 1-SubnetMask + - 2-TimeOffset + - 3-Router + - 4-TimeServer + - 5-NameServer + - 6-DomainNameServer + - 7-LogServer + - 8-QuoteServer + - 9-LPRServer + - 10-ImpressServer + - 11-ResourceLocationServer + - 12-HostName + - 13-BootFileSize + - 14-MeritDumpFile + - 15-DomainName + - 16-SwapServer + - 17-RootPath + - 18-ExtensionsPath + - 19-IPForwarding + - 20-NonLocalSourceRouting + - 21-PolicyFilter + - 22-MaximumDatagramAssemblySize + - 23-DefaultIPTTL + - 24-PathMTUAgingTimeout + - 25-PathMTUPlateauTable + - 26-InterfaceMTU + - 27-AllSubnetsAreLocal + - 28-BroadcastAddress + - 29-PerformMaskDiscovery + - 30-MaskSupplier + - 31-PerformRouterDiscovery + - 32-RouterSolicitationAddress + - 33-StaticRoutingTable + - 34-TrailerEncapsulation + - 35-ArpCacheTimeout + - 36-EthernetEncapsulation + - 37-DefaulTCPTTL + - 38-TCPKeepaliveInterval + - 39-TCPKeepaliveGarbage + - 40-NetworkInformationServiceDomain + - 41-NetworkInformationServers + - 42-NTPServers + - 43-VendorSpecificInformation + - 44-NetBIOSOverTCPIPNameServer + - 45-NetBIOSOverTCPIPDatagramDistributionServer + - 46-NetBIOSOverTCPIPNodeType + - 47-NetBIOSOverTCPIPScope + - 48-XWindowSystemFontServer + - 49-XWindowSystemDisplayManager + - 50-RequestedIPAddress + - 51-IPAddressLeaseTime + - 52-OptionOverload + - 53-DHCPMessageType + - 54-ServerIdentifier + - 55-ParameterRequestList + - 56-Message + - 57-MaximumDHCPMessageSize + - 58-RenewTimeValue + - 59-RebindingTimeValue + - 60-ClassIdentifier + - 61-ClientIdentifier + - 62-NetWareIPDomainName + - 63-NetWareIPInformation + - 64-NetworkInformationServicePlusDomain + - 65-NetworkInformationServicePlusServers + - 66-TFTPServerName + - 67-BootfileName + - 68-MobileIPHomeAgent + - 69-SimpleMailTransportProtocolServer + - 70-PostOfficeProtocolServer + - 71-NetworkNewsTransportProtocolServer + - 72-DefaultWorldWideWebServer + - 73-DefaultFingerServer + - 74-DefaultInternetRelayChatServer + - 75-StreetTalkServer + - 76-StreetTalkDirectoryAssistanceServer + - 77-UserClassInformation + - 78-SLPDirectoryAgent + - 79-SLPServiceScope + - 80-RapidCommit + - 81-FQDN + - 82-RelayAgentInformation + - 83-InternetStorageNameService + - 85-NDSServers + - 86-NDSTreeName + - 87-NDSContext + - 88-BCMCSControllerDomainNameList + - 89-BCMCSControllerIPv4AddressList + - 90-Authentication + - 91-ClientLastTransactionTime + - 92-AssociatedIP + - 93-ClientSystemArchitectureType + - 94-ClientNetworkInterfaceIdentifier + - 95-LDAP + - 97-ClientMachineIdentifier + - 98-OpenGroupUserAuthentication + - 99-GeoConfCivic + - 100-IEEE10031TZString + - 101-ReferenceToTZDatabase + - 112-NetInfoParentServerAddress + - 113-NetInfoParentServerTag + - 114-URL + - 116-AutoConfigure + - 117-NameServiceSearch + - 118-SubnetSelection + - 119-DNSDomainSearchList + - 120-SIPServers + - 121-ClasslessStaticRoute + - 122-CCC + - 123-GeoConf + - 124-VendorIdentifyingVendorClass + - 125-VendorIdentifyingVendorSpecific + - 128-TFTPServerIPAddress + - 129-CallServerIPAddress + - 130-DiscriminationString + - 131-RemoteStatisticsServerIPAddress + - 132-8021PVLANID + - 133-8021QL2Priority + - 134-DiffservCodePoint + - 135-HTTPProxyForPhoneSpecificApplications + - 136-PANAAuthenticationAgent + - 137-LoSTServer + - 138-CAPWAPAccessControllerAddresses + - 139-OPTIONIPv4AddressMoS + - 140-OPTIONIPv4FQDNMoS + - 141-SIPUAConfigurationServiceDomains + - 142-OPTIONIPv4AddressANDSF + - 143-OPTIONIPv6AddressANDSF + - 150-TFTPServerAddress + - 151-StatusCode + - 152-BaseTime + - 153-StartTimeOfState + - 154-QueryStartTime + - 155-QueryEndTime + - 156-DHCPState + - 157-DataSource + - 175-Etherboot + - 176-IPTelephone + - 177-EtherbootPacketCableAndCableHome + - 208-PXELinuxMagicString + - 209-PXELinuxConfigFile + - 210-PXELinuxPathPrefix + - 211-PXELinuxRebootTime + - 212-OPTION6RD + - 213-OPTIONv4AccessDomain + - 220-SubnetAllocation + - 221-VirtualSubnetAllocation + - 224-Reserved + - 225-Reserved + - 226-Reserved + - 227-Reserved + - 228-Reserved + - 229-Reserved + - 230-Reserved + - 231-Reserved + - 232-Reserved + - 233-Reserved + - 234-Reserved + - 235-Reserved + - 236-Reserved + - 237-Reserved + - 238-Reserved + - 239-Reserved + - 240-Reserved + - 241-Reserved + - 242-Reserved + - 243-Reserved + - 244-Reserved + - 245-Reserved + - 246-Reserved + - 247-Reserved + - 248-Reserved + - 249-Reserved + - 250-Reserved + - 251-Reserved + - 252-Reserved + - 253-Reserved + - 254-Reserved + - 255-End + type: string + value: + description: Value to return to the TopoNode for the specified option. + items: + type: string + minItems: 1 + type: array + required: + - option + - value + type: object + type: array + dhcp6Options: + description: DHCPv6 options to return to TopoNodes referencing this NodeProfile. + items: + properties: + option: + description: DHCPv6 option to return to the TopoNode. + enum: + - 59-BootfileUrl + type: string + value: + description: Value to return to the TopoNode for the specified option. + items: + type: string + minItems: 1 + type: array + required: + - option + - value + type: object + type: array + managementPoolv4: + description: IPInSubnetAllocationPool to use for IPv4 allocations of the management address for TopoNodes referencing this NodeProfile. + type: string + managementPoolv6: + description: IPInSubnetAllocationPool to use for IPv6 allocations of the management address for TopoNodes referencing this NodeProfile. + type: string + preferredAddressFamily: + description: Preferred IP address family + enum: + - IPv4 + - IPv6 + type: string + type: object + imagePullSecret: + description: Secret used to authenticate to the container registry where the container image is hosted. + type: string + images: + description: URLs hosting software images for bootstrapping TopoNodes referencing this NodeProfile. + items: + properties: + image: + description: URL hosting the software image, e.g. srlimages/srlinux-24.7.1.bin. + type: string + imageMd5: + description: URL hosting the software image md5 hash. e.g. srlimages/srlinux-24.7.1.bin.md5. + type: string + required: + - image + type: object + type: array + license: + description: ConfigMap containing a license for TopoNodes referencing this NodeProfile. + type: string + llmDb: + description: URL containing LLDB to use when interacting with LLM-DB and OpenAI for query autocompletion, e.g. http://eda-asvr/llmdb/ce-llm-db-srlinux-24.7.1.tar.gz. + type: string + nodeUser: + description: Reference to a NodeUser to use for authentication to TopoNodes referencing this NodeProfile. + type: string + onboardingPassword: + description: The password to use when onboarding TopoNodes referencing this NodeProfile, e.g. admin. + type: string + onboardingUsername: + description: The username to use when onboarding TopoNodes referencing this NodeProfile, e.g. admin. + type: string + operatingSystem: + description: Sets the operating system of this NodeProfile, e.g. srl. + enum: + - srl + - sros + - nxos + type: string + platformPath: + description: JSPath to use for retrieving the version string from TopoNodes referencing this NodeProfile, e.g. .platform.chassis.type. + type: string + port: + default: 57400 + description: Port used to establish a connection to the TopoNode, e.g. 57400. + maximum: 65535 + minimum: 1 + type: integer + serialNumberPath: + description: JSPath to use for retrieving the serial number string from TopoNodes referencing this NodeProfile, e.g. .platform.chassis.serial-number. + type: string + version: + description: Sets the software version of this NodeProfile, e.g. 24.7.1 (for srl), or 24.7.r1 (for sros). + type: string + versionMatch: + description: Regular expression to match the node-retrieved version string to TopoNode version, e.g. v0\.0\.0.*. + type: string + versionPath: + description: JSPath to use for retrieving the version string from TopoNodes referencing this NodeProfile, e.g. .system.information.version. + type: string + yang: + description: URL containing YANG modules and schema profile to use when interacting with TopoNodes referencing this NodeProfile, e.g. http://eda-asvr/schemaprofiles/srlinux-24.7.1.zip. + type: string + required: + - nodeUser + - operatingSystem + - version + - yang + type: object + status: + type: object + type: object +served: true +storage: true +subresources: + status: {} diff --git a/static/resources/25.4.2/nodesecurityprofiles.core.eda.nokia.com/v1.yaml b/static/resources/25.4.2/nodesecurityprofiles.core.eda.nokia.com/v1.yaml new file mode 100644 index 0000000..acad983 --- /dev/null +++ b/static/resources/25.4.2/nodesecurityprofiles.core.eda.nokia.com/v1.yaml @@ -0,0 +1,135 @@ +name: v1 +schema: + openAPIV3Schema: + description: NodeSecurityProfile is the Schema for the nodeSecurityProfile API + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + description: NodeSecurityProfileSpec defines the desired state of NodeSecurityProfile + properties: + namespace: + description: Namespace of toponodes to be used to apply this security profile to. + type: string + nodeSelector: + description: Selector to use when selecting TopoNodes to apply this security profile to. + items: + type: string + type: array + nodes: + description: ' TopoNodes to apply this security profile to.' + items: + type: string + type: array + tls: + description: Set of TLS related attributes + properties: + csrParams: + description: A set of certificate signing request parameters used when asking for a CSR from the toponode. + properties: + certificateValidity: + default: 2160h + description: CertificateValidity defines the duration for which the certificate is considered valid after issuance. + type: string + city: + description: City denotes the city where the organization is based. + type: string + commonName: + description: CommonName specifies the common name field of the CSR, typically representing the domain name. + type: string + country: + description: Country indicates the country in which the organization is legally registered. + type: string + csrSuite: + default: CSRSUITE_X509_KEY_TYPE_RSA_2048_SIGNATURE_ALGORITHM_SHA_2_256 + description: The CSRSuite value used when asking for a CSR from the toponode + enum: + - CSRSUITE_X509_KEY_TYPE_RSA_2048_SIGNATURE_ALGORITHM_SHA_2_256 + - CSRSUITE_X509_KEY_TYPE_RSA_2048_SIGNATURE_ALGORITHM_SHA_2_384 + - CSRSUITE_X509_KEY_TYPE_RSA_2048_SIGNATURE_ALGORITHM_SHA_2_512 + - CSRSUITE_X509_KEY_TYPE_RSA_3072_SIGNATURE_ALGORITHM_SHA_2_256 + - CSRSUITE_X509_KEY_TYPE_RSA_3072_SIGNATURE_ALGORITHM_SHA_2_384 + - CSRSUITE_X509_KEY_TYPE_RSA_3072_SIGNATURE_ALGORITHM_SHA_2_512 + - CSRSUITE_X509_KEY_TYPE_RSA_4096_SIGNATURE_ALGORITHM_SHA_2_256 + - CSRSUITE_X509_KEY_TYPE_RSA_4096_SIGNATURE_ALGORITHM_SHA_2_384 + - CSRSUITE_X509_KEY_TYPE_RSA_4096_SIGNATURE_ALGORITHM_SHA_2_512 + - CSRSUITE_X509_KEY_TYPE_ECDSA_PRIME256V1_SIGNATURE_ALGORITHM_SHA_2_256 + - CSRSUITE_X509_KEY_TYPE_ECDSA_PRIME256V1_SIGNATURE_ALGORITHM_SHA_2_384 + - CSRSUITE_X509_KEY_TYPE_ECDSA_PRIME256V1_SIGNATURE_ALGORITHM_SHA_2_512 + - CSRSUITE_X509_KEY_TYPE_ECDSA_SECP384R1_SIGNATURE_ALGORITHM_SHA_2_256 + - CSRSUITE_X509_KEY_TYPE_ECDSA_SECP384R1_SIGNATURE_ALGORITHM_SHA_2_384 + - CSRSUITE_X509_KEY_TYPE_ECDSA_SECP384R1_SIGNATURE_ALGORITHM_SHA_2_512 + - CSRSUITE_X509_KEY_TYPE_ECDSA_SECP521R1_SIGNATURE_ALGORITHM_SHA_2_256 + - CSRSUITE_X509_KEY_TYPE_ECDSA_SECP521R1_SIGNATURE_ALGORITHM_SHA_2_384 + - CSRSUITE_X509_KEY_TYPE_ECDSA_SECP521R1_SIGNATURE_ALGORITHM_SHA_2_512 + - CSRSUITE_X509_KEY_TYPE_EDDSA_ED25519 + type: string + org: + description: Org is the name of the organization requesting the CSR. + type: string + orgUnit: + description: OrgUnit specifies the organizational unit (like department or division) within the organization. + type: string + san: + description: Subject Alternative Names contains additional hostnames or IP addresses covered by the CSR. + properties: + dns: + description: Dns contains a list of DNS names that can be used to access the server. + items: + type: string + type: array + emails: + description: Emails consists of email addresses that should be associated with the certificate. + items: + type: string + type: array + ips: + description: Ips includes IP addresses that the certificate should validate. + items: + type: string + type: array + uris: + description: Uris lists specific URIs that the certificate will authenticate. + items: + type: string + type: array + type: object + state: + description: State represents the state or province where the organization is located. + type: string + type: object + issuerRef: + description: Reference to a CertManager issuer that must be used to sign nodes certificates. + type: string + skipVerify: + description: Skip certificate verification. + type: boolean + trustBundle: + description: |- + Reference to configMap that contains a CA certificate that is used to verify the node certificate + when certificates are not managed by EDA. + type: string + type: object + type: object + status: + type: object + type: object +served: true +storage: true +subresources: + status: {} diff --git a/static/resources/25.4.2/nodeusers.core.eda.nokia.com/v1.yaml b/static/resources/25.4.2/nodeusers.core.eda.nokia.com/v1.yaml new file mode 100644 index 0000000..1781ecb --- /dev/null +++ b/static/resources/25.4.2/nodeusers.core.eda.nokia.com/v1.yaml @@ -0,0 +1,96 @@ +additionalPrinterColumns: + - jsonPath: .spec.username + name: Username + type: string + - jsonPath: .metadata.creationTimestamp + name: Age + type: date +name: v1 +schema: + openAPIV3Schema: + description: NodeUser is the Schemal for the nodeusers API + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + description: |- + The NodeUser resource represents a user that can be deployed to a set of TopoNodes. It supports managing the user's password, SSH keys, and group bindings. + Additionally a NodeUser is referenced by a NodeProfile to indicate how NPP should connect to TopoNodes. + properties: + groupBindings: + description: Matching of this user to node-specific permissions via groups. + items: + properties: + groups: + description: Assigned groups for this user. + items: + type: string + type: array + nodeSelector: + description: Selector to use when selecting TopoNodes to deploy this user to. + items: + type: string + type: array + nodes: + description: ' TopoNodes to deploy this user to.' + items: + type: string + type: array + required: + - groups + type: object + type: array + password: + description: Password for this user. + type: string + sshPublicKeys: + description: SSH public keys to deploy for the user. + items: + type: string + type: array + username: + description: Name of this user. If not provided, the name of the resource will be used. + maxLength: 32 + type: string + required: + - groupBindings + - password + type: object + status: + description: Deployment status of this NodeUser. + properties: + groupBindings: + description: List of TopoNodes user has been deployed to, along with corresponding groups. + items: + properties: + groups: + description: Groups this user is a member of on this node. + items: + type: string + type: array + node: + description: Node this user is deployed to. + type: string + type: object + type: array + type: object + type: object +served: true +storage: true +subresources: + status: {} diff --git a/static/resources/25.4.2/nodeuserstates.aaa.eda.nokia.com/v1alpha1.yaml b/static/resources/25.4.2/nodeuserstates.aaa.eda.nokia.com/v1alpha1.yaml new file mode 100644 index 0000000..2a012cf --- /dev/null +++ b/static/resources/25.4.2/nodeuserstates.aaa.eda.nokia.com/v1alpha1.yaml @@ -0,0 +1,48 @@ +name: v1alpha1 +schema: + openAPIV3Schema: + description: NodeUserState is the Schema for the nodeuserstates API + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + description: NodeUserStateSpec defines the desired state of NodeUserState + properties: + groupBindings: + description: List of TopoNodes user has been deployed to, along with corresponding groups. + items: + properties: + groups: + description: Groups this user is a member of on this node. + items: + type: string + type: array + node: + description: Node this user is deployed to. + type: string + type: object + type: array + type: object + status: + description: NodeUserStateStatus defines the observed state of NodeUserState + type: object + type: object +served: true +storage: true +subresources: + status: {} diff --git a/static/resources/25.4.2/ntpclients.timing.eda.nokia.com/v1alpha1.yaml b/static/resources/25.4.2/ntpclients.timing.eda.nokia.com/v1alpha1.yaml new file mode 100644 index 0000000..d7559a0 --- /dev/null +++ b/static/resources/25.4.2/ntpclients.timing.eda.nokia.com/v1alpha1.yaml @@ -0,0 +1,118 @@ +additionalPrinterColumns: + - jsonPath: .status.lastChange + name: Last Change + type: date + - jsonPath: .status.operationalState + name: Operational State + type: string +name: v1alpha1 +schema: + openAPIV3Schema: + description: NTPClient is the Schema for the ntpclients API + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + description: The NTP client allows for configuring NTP servers and the source of NTP traffic in order for the devices to synchronize their clocks. + properties: + router: + description: Router used to reach the NTP servers. + type: string + routerKind: + description: the Kind of the router used to reach the NTP servers. + enum: + - MANAGEMENTROUTER + - ROUTER + - DEFAULTROUTER + type: string + routerSelector: + description: Selects router resources based on the defined KIND. Applies to DefaultRouter only. Not supported for Router and ManagementRouter. + items: + type: string + type: array + servers: + description: A list of NTP servers, each entry in the list can either be an IP address or an FQDN. + items: + properties: + iBurst: + description: Indicates whether this server should enable burst synchronization or not + type: boolean + preferred: + description: Indicates whether this server should be preferred or not + type: boolean + server: + description: An NTP server can either be an IP address or an FQDN + type: string + required: + - server + type: object + type: array + sourceInterface: + description: Specifies a Interface resource to use as a source of NTP traffic. If none is specified the Node default behavior is used. + type: string + sourceInterfaceKind: + description: Specifies the source interface Kind to use as a source of NTP traffic. + enum: + - IRB + - ROUTED + - DEFAULT + - SYSTEM + type: string + required: + - routerKind + - servers + type: object + status: + description: NTPClientStatus defines the observed state of NTPClient + properties: + health: + description: Indicates the health score of the NTPClient + type: integer + healthScoreReason: + description: Indicates the reason for the health score + type: string + lastChange: + description: The time when the state of the resource last changed + type: string + nodes: + description: List of nodes which are not synchronized + items: + properties: + node: + description: Reference to Node object + type: string + operatingSystem: + description: Operating System of the Node + type: string + synchronized: + description: Synchronized state of the Node + type: string + required: + - node + - operatingSystem + type: object + type: array + operationalState: + description: Operational state of the NTPClient + type: string + type: object + type: object +served: true +storage: true +subresources: + status: {} diff --git a/static/resources/25.4.2/ntpclientstates.timing.eda.nokia.com/v1alpha1.yaml b/static/resources/25.4.2/ntpclientstates.timing.eda.nokia.com/v1alpha1.yaml new file mode 100644 index 0000000..004c817 --- /dev/null +++ b/static/resources/25.4.2/ntpclientstates.timing.eda.nokia.com/v1alpha1.yaml @@ -0,0 +1,52 @@ +name: v1alpha1 +schema: + openAPIV3Schema: + description: NTPClientState is the Schema for the ntpclientstates API + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + description: NTPClientStateSpec defines the desired state of NTPClientState + properties: + nodes: + description: List of Nodes on which was configured the NTPClient + items: + properties: + node: + description: Reference to Node object + type: string + operatingSystem: + description: Operating System of the Node + type: string + synchronized: + description: Synchronized state of the Node + type: string + required: + - node + - operatingSystem + type: object + type: array + type: object + status: + description: NTPClientStateStatus defines the observed state of NTPClientState + type: object + type: object +served: true +storage: true +subresources: + status: {} diff --git a/static/resources/25.4.2/pings.oam.eda.nokia.com/v1alpha1.yaml b/static/resources/25.4.2/pings.oam.eda.nokia.com/v1alpha1.yaml new file mode 100644 index 0000000..c17151b --- /dev/null +++ b/static/resources/25.4.2/pings.oam.eda.nokia.com/v1alpha1.yaml @@ -0,0 +1,83 @@ +additionalPrinterColumns: + - jsonPath: .status.id + name: ID + type: integer + - jsonPath: .status.result + name: Result + type: string + - jsonPath: .metadata.creationTimestamp + name: Age + type: date +name: v1alpha1 +schema: + openAPIV3Schema: + description: Ping is the Schema for the pings API + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + description: PingSpec defines the desired state of Ping + properties: + address: + type: string + networkInstance: + type: string + node: + type: string + pingType: + enum: + - isl + - node + - system + type: string + pods: + items: + type: string + type: array + roles: + items: + type: string + type: array + required: + - pingType + type: object + status: + description: PingStatus defines the observed state of Ping + properties: + id: + description: Id + type: integer + result: + description: Aggregate result of the Flow + enum: + - OK + - Failed + - Terminated + - WaitingForInput + - Running + - WaitingToStart + - SubflowWaitingForInput + type: string + required: + - result + type: object + type: object +served: true +storage: true +subresources: + status: {} diff --git a/static/resources/25.4.2/policyattachments.qos.eda.nokia.com/v1alpha1.yaml b/static/resources/25.4.2/policyattachments.qos.eda.nokia.com/v1alpha1.yaml new file mode 100644 index 0000000..31bf0c3 --- /dev/null +++ b/static/resources/25.4.2/policyattachments.qos.eda.nokia.com/v1alpha1.yaml @@ -0,0 +1,60 @@ +name: v1alpha1 +schema: + openAPIV3Schema: + description: PolicyAttachment is the Schema for the policyattachments API + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + description: PolicyAttachmentSpec defines the desired state of PolicyAttachment + properties: + attachments: + description: Specifies a list of Interfaces and subinterfaces on which to deploy the policies. + items: + properties: + interface: + description: Specifies the Interface on which to deploy the policies. + type: string + interfaceType: + description: Used for platforms that differentiate between access/service interfaces and network interface. These platforms may require different classifiers depending on whether they are applied on access/service interfaces or network interfaces. Specifies whether the classifier should be configured as a service Egress classifier or network Egress classifier + enum: + - ACCESS + - NETWORK + type: string + subInterfaceIndex: + description: Specifies the SubInterfaceIndex on which to deploy the policies. + type: integer + type: object + type: array + egressPolicy: + description: Specifies an EgressPolicy to deploy on the specified Node. + type: string + ingressPolicy: + description: Specifies the IngressPolicy to deploy on the specified Node. + type: string + required: + - attachments + type: object + status: + description: PolicyAttachmentStatus defines the observed state of PolicyAttachment + type: object + type: object +served: true +storage: true +subresources: + status: {} diff --git a/static/resources/25.4.2/policydeployments.qos.eda.nokia.com/v1alpha1.yaml b/static/resources/25.4.2/policydeployments.qos.eda.nokia.com/v1alpha1.yaml new file mode 100644 index 0000000..fa895cb --- /dev/null +++ b/static/resources/25.4.2/policydeployments.qos.eda.nokia.com/v1alpha1.yaml @@ -0,0 +1,60 @@ +name: v1alpha1 +schema: + openAPIV3Schema: + description: PolicyDeployment is the Schema for the policydeployments API + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + description: PolicyDeploymentSpec defines the desired state of PolicyDeployment + properties: + egressPolicy: + description: Specifies an EgressPolicy to deploy on the specified Node. + type: string + ingressPolicy: + description: Specifies the IngressPolicy to deploy on the specified Node. + type: string + interfaceSelector: + description: Specifies a label selector to filter the interfaces on which to deploy the policies. + type: string + interfaceType: + description: Used for platforms that differentiate between access/service interfaces and network interface. These platforms may require different classifiers depending on whether they are applied on access/service interfaces or network interfaces. Specifies whether the classifier should be configured as a service Egress classifier or network Egress classifier + enum: + - ACCESS + - NETWORK + type: string + interfaces: + description: Specifies a list of Interfaces on which to deploy the policies. + items: + type: string + type: array + node: + description: Specifies a Node to deploy the policies on. + type: string + nodeSelector: + description: Specifies a label selector to filter the nodes on which to deploy the policies. + type: string + type: object + status: + description: PolicyDeploymentStatus defines the observed state of PolicyDeployment + type: object + type: object +served: true +storage: true +subresources: + status: {} diff --git a/static/resources/25.4.2/policydeployments.routingpolicies.eda.nokia.com/v1alpha1.yaml b/static/resources/25.4.2/policydeployments.routingpolicies.eda.nokia.com/v1alpha1.yaml new file mode 100644 index 0000000..cedf3ae --- /dev/null +++ b/static/resources/25.4.2/policydeployments.routingpolicies.eda.nokia.com/v1alpha1.yaml @@ -0,0 +1,42 @@ +name: v1alpha1 +schema: + openAPIV3Schema: + description: PolicyDeployment is the Schema for the policydeployments API + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + description: PolicyDeploymentSpec defines the desired state of PolicyDeployment + properties: + node: + description: Specifies a Node to deploy this policy on + type: string + policy: + description: Specifies a Policy to deploy on the specified Node + type: string + required: + - node + type: object + status: + description: PolicyDeploymentStatus defines the observed state of PolicyDeployment + type: object + type: object +served: true +storage: true +subresources: + status: {} diff --git a/static/resources/25.4.2/policys.routingpolicies.eda.nokia.com/v1alpha1.yaml b/static/resources/25.4.2/policys.routingpolicies.eda.nokia.com/v1alpha1.yaml new file mode 100644 index 0000000..795e583 --- /dev/null +++ b/static/resources/25.4.2/policys.routingpolicies.eda.nokia.com/v1alpha1.yaml @@ -0,0 +1,172 @@ +name: v1alpha1 +schema: + openAPIV3Schema: + description: Policy is the Schema for the policys API + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + description: Policy defines a set of rules and actions to manage network traffic or routing behavior, with statements that include matching conditions and actions, such as accepting or rejecting routes, or modifying route attributes like BGP parameters. + properties: + defaultAction: + description: The default action to apply if no other actions are defined. + properties: + bgp: + description: Actions related to the BGP protocol. + properties: + asPathPrepend: + description: AS number to prepend to the AS Path attributes. + format: int32 + maximum: 4294967295 + minimum: 1 + type: integer + asPathRemove: + description: Clear the AS path to make it empty. + type: boolean + asPathReplace: + description: Replace the existing AS path with a new AS_SEQUENCE containing the listed AS numbers. + items: + format: int32 + type: integer + type: array + localPreference: + description: Set a new LOCAL_PREF value for matching BGP routes. + format: int32 + maximum: 4294967295 + minimum: 0 + type: integer + setOrigin: + description: Set a new ORIGIN attribute for matching BGP routes. + enum: + - egp + - igp + - incomplete + type: string + type: object + policyResult: + description: Final disposition for the route. + enum: + - accept + - reject + type: string + type: object + statement: + description: List of policy statements. + items: + properties: + action: + description: Actions for routes that match the policy statement. + properties: + bgp: + description: Actions related to the BGP protocol. + properties: + asPathPrepend: + description: AS number to prepend to the AS Path attributes. + format: int32 + maximum: 4294967295 + minimum: 1 + type: integer + asPathRemove: + description: Clear the AS path to make it empty. + type: boolean + asPathReplace: + description: Replace the existing AS path with a new AS_SEQUENCE containing the listed AS numbers. + items: + format: int32 + type: integer + type: array + localPreference: + description: Set a new LOCAL_PREF value for matching BGP routes. + format: int32 + maximum: 4294967295 + minimum: 0 + type: integer + setOrigin: + description: Set a new ORIGIN attribute for matching BGP routes. + enum: + - egp + - igp + - incomplete + type: string + type: object + policyResult: + description: Final disposition for the route. + enum: + - accept + - reject + type: string + type: object + match: + description: Match conditions of the policy statement. + properties: + bgp: + description: Configuration for BGP-specific policy match criteria. + properties: + communitySet: + description: Match conditions for BGP communities. + type: string + evpnRouteType: + description: Match conditions for EVPN route types. + items: + type: integer + type: array + type: object + family: + description: Address families that the route belongs to. + items: + type: string + type: array + prefixSet: + description: Reference to a PrefixSet resource. + type: string + protocol: + description: The route protocol type to match. + enum: + - AGGREGATE + - ARP_ND + - BGP + - BGP_EVPN + - DHCP + - GRIBI + - HOST + - ISIS + - LOCAL + - LINUX + - NDK1 + - NDK2 + - OSPFV2 + - OSPFV3 + - STATIC + type: string + type: object + name: + description: Name of the policy statement. + type: string + required: + - name + type: object + type: array + type: object + status: + description: PolicyStatus defines the observed state of Policy. + type: object + type: object +served: true +storage: true +subresources: + status: {} diff --git a/static/resources/25.4.2/powersupplies.components.eda.nokia.com/v1.yaml b/static/resources/25.4.2/powersupplies.components.eda.nokia.com/v1.yaml new file mode 100644 index 0000000..067e111 --- /dev/null +++ b/static/resources/25.4.2/powersupplies.components.eda.nokia.com/v1.yaml @@ -0,0 +1,124 @@ +name: v1 +schema: + openAPIV3Schema: + description: PowerSupply is the Schema for the powersupplies API + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + description: PowerSupplySpec defines the desired state of PowerSupply + properties: + foo: + description: |- + INSERT ADDITIONAL SPEC FIELDS - define desired state of cluster + Important: Run "edabuilder generate" to regenerate code after modifying this file + type: string + required: + - foo + type: object + status: + description: PowerSupplyStatus defines the observed state of PowerSupply + properties: + commonLanguageEquipmentIdentifier: + description: The CLEI code of this component + type: string + lastBooted: + description: The date and time this component last booted + type: string + lastChange: + description: The date and time this component last changed operational state + type: string + locatorEnabled: + description: Indicates if the locator LED for the component is active + type: boolean + manufacturedDate: + description: The date this component was manufactured + type: string + operationalState: + description: Indicates the current operational state of this component. + enum: + - Up + - Down + - Rebooting + - Unknown + - Starting + - Empty + type: string + parent: + description: Reference to a parent component + type: string + parentType: + description: Type of the parent component + enum: + - Fan + - FanTray + - PowerSupply + - PowerModule + - PowerShelf + - InterfaceModule + - ControlModule + - FabricModule + - Chassis + - Transceiver + type: string + partNumber: + description: The discovered part number of this component + type: string + removable: + description: Indicates if this component is removable + type: boolean + serialNumber: + description: The discovered serial number of this component + type: string + slot: + description: Slot this component resides in, unset for components that do not have a slot or ID + type: string + softwareVersion: + description: Version string of the software running on this component + type: string + target: + description: Target this component resides on. + type: string + temperature: + description: Temperature information for this component + properties: + alarmState: + description: The temperature alarm state, as reported by the component + type: boolean + instant: + description: The current temperature of this component + type: integer + margin: + description: The margin temperature of this component + type: integer + maximum: + description: The maximum temperature of this component + type: integer + threshold: + description: The threshold temperature of this component + type: integer + type: object + type: + description: Component type, as provided by the target + type: string + type: object + type: object +served: true +storage: true +subresources: + status: {} diff --git a/static/resources/25.4.2/prefixsetdeployments.routingpolicies.eda.nokia.com/v1alpha1.yaml b/static/resources/25.4.2/prefixsetdeployments.routingpolicies.eda.nokia.com/v1alpha1.yaml new file mode 100644 index 0000000..b886afa --- /dev/null +++ b/static/resources/25.4.2/prefixsetdeployments.routingpolicies.eda.nokia.com/v1alpha1.yaml @@ -0,0 +1,42 @@ +name: v1alpha1 +schema: + openAPIV3Schema: + description: PrefixSetDeployment is the Schema for the prefixsetdeployments API + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + description: PrefixSetDeploymentSpec defines the desired state of PrefixSetDeployment + properties: + node: + description: Specifies a Node to deploy this policy on + type: string + prefixSet: + description: Specifies a PrefixSet to deploy to the specified Node + type: string + required: + - node + type: object + status: + description: PrefixSetDeploymentStatus defines the observed state of PrefixSetDeployment + type: object + type: object +served: true +storage: true +subresources: + status: {} diff --git a/static/resources/prefixsets.routingpolicies.eda.nokia.com/v1alpha1.yaml b/static/resources/25.4.2/prefixsets.routingpolicies.eda.nokia.com/v1alpha1.yaml similarity index 100% rename from static/resources/prefixsets.routingpolicies.eda.nokia.com/v1alpha1.yaml rename to static/resources/25.4.2/prefixsets.routingpolicies.eda.nokia.com/v1alpha1.yaml diff --git a/static/resources/25.4.2/queues.qos.eda.nokia.com/v1alpha1.yaml b/static/resources/25.4.2/queues.qos.eda.nokia.com/v1alpha1.yaml new file mode 100644 index 0000000..81f7a3c --- /dev/null +++ b/static/resources/25.4.2/queues.qos.eda.nokia.com/v1alpha1.yaml @@ -0,0 +1,52 @@ +name: v1alpha1 +schema: + openAPIV3Schema: + description: Queue is the Schema for the queues API + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + description: The Queue resource is used to define the properties of a queue, which can then be referenced by other resources. + properties: + queueID: + description: The ID of the queue on which to apply the properties. This is mandatory for usage of queus on SROS and is ignored on other operating systems. + type: integer + queueType: + description: QueueType specifies whether this is a normal queue or a PFC queue + enum: + - Normal + - Pfc + type: string + trafficType: + description: The traffic type of the queue, either unicast or multicast. + enum: + - Unicast + - Multicast + type: string + required: + - queueType + - trafficType + type: object + status: + description: QueueStatus defines the observed state of Queue + type: object + type: object +served: true +storage: true +subresources: + status: {} diff --git a/static/resources/registries.appstore.eda.nokia.com/v1.yaml b/static/resources/25.4.2/registries.appstore.eda.nokia.com/v1.yaml similarity index 100% rename from static/resources/registries.appstore.eda.nokia.com/v1.yaml rename to static/resources/25.4.2/registries.appstore.eda.nokia.com/v1.yaml diff --git a/static/resources/25.4.2/roles.core.eda.nokia.com/v1.yaml b/static/resources/25.4.2/roles.core.eda.nokia.com/v1.yaml new file mode 100644 index 0000000..f1e2566 --- /dev/null +++ b/static/resources/25.4.2/roles.core.eda.nokia.com/v1.yaml @@ -0,0 +1,128 @@ +name: v1 +schema: + openAPIV3Schema: + description: Role is the Schema for the roles API + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + description: RoleSpec defines the desired state of Role + properties: + description: + description: A description for the role. + type: string + resourceRules: + description: The rules for access to kubernetes resources + items: + description: A role rule controlling access to a kubernetes resource. + properties: + apiGroups: + description: |- + The API groups for the resources controlled by the rule. + An API group consists of an apiGroup and a version, e.g. "apigroup/version". + The API group can be a wildcard ("*"), in which case it will match any API group. + items: + minLength: 1 + type: string + minItems: 1 + type: array + permissions: + description: Permissions for resources specified by the rule. + enum: + - none + - read + - readWrite + type: string + resources: + description: |- + Names for the resources controlled by the rule. + It can be a wildcard ("*"), in which case it will match any resource + in the matching API groups. + items: + minLength: 1 + type: string + minItems: 1 + type: array + required: + - apiGroups + - permissions + - resources + type: object + type: array + tableRules: + description: The rules for access to the database tables. + items: + description: |- + A role rule controlling access to a EDB table. Note that + there is never write access to EDB. + properties: + path: + description: |- + EDB path to which this rule applies. It can end in ".*" + in which case the final portion of the table path can be anything, if the + prefix matches. It can end in ".**" in which case the table path can be + anything if the prefix matches. + minLength: 1 + pattern: ^\..* + type: string + permissions: + description: Permissions for the given EDB path. + enum: + - none + - read + type: string + required: + - path + - permissions + type: object + type: array + urlRules: + description: The rules for access to api-server proxied routes. + items: + description: A role rule controlling access to an API server proxy. + properties: + path: + description: |- + The API server URL path to which this rule applies. It can end in "/*" + in which case the final portion of the URL path can be anything, if the + prefix matches. It can end in "/**" in which case the URL path can be + anything if the prefix matches. + minLength: 1 + pattern: ^/.* + type: string + permissions: + description: The permissions for the API server URL for the rule. + enum: + - none + - read + - readWrite + type: string + required: + - path + - permissions + type: object + type: array + type: object + status: + description: RoleStatus defines the observed state of Role + type: object + type: object +served: true +storage: true +subresources: + status: {} diff --git a/static/resources/25.4.2/routedinterfaces.services.eda.nokia.com/v1alpha1.yaml b/static/resources/25.4.2/routedinterfaces.services.eda.nokia.com/v1alpha1.yaml new file mode 100644 index 0000000..0bd5a3e --- /dev/null +++ b/static/resources/25.4.2/routedinterfaces.services.eda.nokia.com/v1alpha1.yaml @@ -0,0 +1,354 @@ +additionalPrinterColumns: + - jsonPath: .spec.ipMtu + name: MTU + type: string + - jsonPath: .status.operationalState + name: OperationalState + type: string + - jsonPath: .status.lastChange + name: LastChange + type: string + - jsonPath: .metadata.creationTimestamp + name: Age + type: date +name: v1alpha1 +schema: + openAPIV3Schema: + description: RoutedInterface is the Schema for the routedinterfaces API + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + description: The RoutedInterface enables the configuration and management of Layer 3 interfaces for routing traffic between different networks. This resource allows for specifying an underlying Interface and Router, configuring VLAN IDs, and setting the IP MTU. It also supports the learning of unsolicited ARPs, defining both IPv4 and IPv6 addresses, and enabling unnumbered interfaces. Advanced features such as BFD configuration, Proxy ARP/ND, and ARP timeout settings are included to ensure robust and efficient routing. + properties: + arpTimeout: + default: 14400 + description: Duration of time that dynamic ARP entries remain in the ARP cache before they expire. + format: int32 + type: integer + bfd: + description: Enables BFD on the RoutedInterface. + properties: + desiredMinTransmitInt: + default: 1000000 + description: The minimum interval in microseconds between transmission of BFD control packets. + maximum: 100000000 + minimum: 10000 + type: integer + detectionMultiplier: + default: 3 + description: The number of packets that must be missed to declare this session as down. + maximum: 20 + minimum: 3 + type: integer + enabled: + default: false + description: Enables Biforward Detection. + type: boolean + minEchoReceiveInterval: + default: 1000000 + description: The minimum interval between echo packets the local node can receive. + maximum: 100000000 + minimum: 250000 + type: integer + requiredMinReceive: + default: 1000000 + description: The minimum interval in microseconds between received BFD control packets that this system should support. + maximum: 100000000 + minimum: 10000 + type: integer + required: + - enabled + type: object + description: + description: The description of the RoutedInterface. + type: string + egress: + description: Manages actions on traffic at Egress. + properties: + filters: + description: List of Filter references to use at egress. + items: + type: string + type: array + qosPolicy: + description: List of QoS Egress policy references to use at egress. + items: + type: string + type: array + type: object + ingress: + description: Manages actions on traffic at Ingress. + properties: + filters: + description: List of Filter references to use at ingress. + items: + type: string + type: array + qosPolicy: + description: List of QoS Ingress policy references to use at ingress. + items: + type: string + type: array + type: object + interface: + description: Reference to an Interface to use for attachment. + type: string + ipMTU: + default: 1500 + description: IP MTU for the RoutedInterface. + maximum: 9486 + minimum: 1280 + type: integer + ipv4Addresses: + description: List of IPv4 addresses in IP/mask form, e.g., 192.168.0.1/24. + items: + properties: + ipPrefix: + description: Address and mask to use + type: string + primary: + description: Indicates which address to use as primary for broadcast + type: boolean + required: + - ipPrefix + type: object + type: array + ipv6Addresses: + description: List of IPv6 addresses in IP/mask form, e.g., fc00::1/120. + items: + properties: + ipPrefix: + description: Address and mask to use + type: string + primary: + description: Indicates which address to use as primary for broadcast + type: boolean + required: + - ipPrefix + type: object + type: array + ipv6RouterAdvertisement: + properties: + currentHopLimit: + default: 64 + description: The current hop limit to advertise in the router advertisement messages. + format: int32 + maximum: 255 + minimum: 0 + type: integer + enabled: + default: false + description: Enable or disable IPv6 router advertisements. + type: boolean + ipMTU: + description: The IP MTU to advertise in the router advertisement messages. + format: int32 + maximum: 9486 + minimum: 1280 + type: integer + managedConfigurationFlag: + default: false + description: Enable DHCPv6 for address configuration (M-bit). + type: boolean + maxAdvertisementInterval: + default: 600 + description: Maximum time between router advertisements (in seconds). + format: int32 + maximum: 1800 + minimum: 4 + type: integer + minAdvertisementInterval: + default: 200 + description: Minimum time between router advertisements (in seconds). + format: int32 + maximum: 1350 + minimum: 3 + type: integer + otherConfigurationFlag: + default: false + description: Enable DHCPv6 for other configuration (O-bit). + type: boolean + prefixes: + description: IPv6 prefixes to advertise in router advertisements. + items: + description: IPv6Prefix defines the configuration for an IPv6 prefix advertisement. + properties: + autonomousFlag: + default: true + description: When this is set in the prefix information option hosts can use the prefix for stateless address autoconfiguration (SLAAC). + type: boolean + onLinkFlag: + default: true + description: When this is set in the prefix information option hosts can use the prefix for on-link determination. + type: boolean + preferredLifetime: + default: 604800 + description: The length of time in seconds (relative to the time the packet is sent) that addresses generated from the prefix via stateless address autoconfiguration remain preferred. + format: int32 + maximum: 4294967295 + minimum: 0 + type: integer + prefix: + description: An IPv6 global unicast address prefix. + type: string + validLifetime: + default: 2592000 + description: The length of time in seconds (relative to the time the packet is sent) that the prefix is valid for the purpose of on-link determination. + format: int32 + maximum: 4294967295 + minimum: 0 + type: integer + required: + - prefix + type: object + type: array + reachableTime: + default: 0 + description: Time in milliseconds for Neighbor Unreachability Detection. + format: int32 + maximum: 3600000 + minimum: 0 + type: integer + retransmitTime: + default: 0 + description: Time in milliseconds between retransmitted NS messages. + format: int32 + maximum: 1800000 + minimum: 0 + type: integer + routerLifetime: + default: 1800 + description: Router lifetime in seconds for default gateway. + format: int32 + maximum: 9000 + minimum: 0 + type: integer + required: + - currentHopLimit + - enabled + - managedConfigurationFlag + - maxAdvertisementInterval + - minAdvertisementInterval + - otherConfigurationFlag + - retransmitTime + - routerLifetime + type: object + l3ProxyARPND: + description: L3 Proxy ARP and ND configuration. + properties: + proxyARP: + default: false + description: Select whether Proxy ARP should be enabled. + type: boolean + proxyND: + default: false + description: Select whether Proxy ND should be enabled. + type: boolean + type: object + learnUnsolicited: + default: NONE + description: Enable or disable learning of unsolicited ARPs. + enum: + - BOTH + - GLOBAL + - LINK-LOCAL + - NONE + type: string + router: + description: Reference to a Router. + type: string + unnumbered: + description: Enables the use of unnumbered interfaces on the IRBInterface. If IPv6 is specified, no IP address are configured on the sub-interface and only the link local address will be used. If any IP addresses are specified for either IPv4 or IPv6 that will take precedence and IPs will be assigned to the interfaces. (Deprecated, Use IPv6RouterAdvertisement) + enum: + - IPV6 + type: string + vlanID: + default: pool + description: Single value between 1-4094 support, ranges supported in the format x-y,x-y, or the special keyword null, any, untagged or pool for auto allocation. + type: string + vlanPool: + default: vlan-pool + description: Reference to a VLAN pool to use for allocations. + type: string + required: + - interface + - router + type: object + status: + description: RoutedInterfaceStatus defines the observed state of RoutedInterface + properties: + health: + description: Indicates the health score of the RoutedInterface. + type: integer + healthScoreReason: + description: Indicates the reason for the health score. + type: string + interfaces: + description: Sub-interface status within the RoutedInterface. + items: + properties: + enabled: + description: The administrative status of the SubInterface. + type: boolean + interface: + description: Normalized interface name. + type: string + interfaceResource: + description: Eda interface resource. + type: string + lastChange: + description: Indicates when this SubInterface last changed state. + type: string + node: + description: Reference to Node object. + type: string + nodeInterface: + description: Node specific interface name. + type: string + operatingSystem: + description: Operating System of the Node. + type: string + operationalState: + description: Indicates the current operational state of the SubInterface. + type: string + subInterfaceIndex: + description: Index allocated to the subinterface on the associated interface for the given VLAN. + type: integer + vlanID: + description: vlan assigned to this subinterface. + type: string + required: + - interface + - interfaceResource + - node + - nodeInterface + type: object + type: array + lastChange: + description: The time when the state of the resource last changed. + type: string + operationalState: + description: Operational state of the RoutedInterface. + type: string + type: object + type: object +served: true +storage: true +subresources: + status: {} diff --git a/static/resources/25.4.2/routedinterfacestates.services.eda.nokia.com/v1alpha1.yaml b/static/resources/25.4.2/routedinterfacestates.services.eda.nokia.com/v1alpha1.yaml new file mode 100644 index 0000000..382bac1 --- /dev/null +++ b/static/resources/25.4.2/routedinterfacestates.services.eda.nokia.com/v1alpha1.yaml @@ -0,0 +1,102 @@ +name: v1alpha1 +schema: + openAPIV3Schema: + description: RoutedInterfaceState is the Schema for the routedinterfacestates API + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + description: RoutedInterfaceStateSpec defines the desired state of RoutedInterfaceState + properties: + interfaces: + items: + properties: + interface: + description: Normalized interface name + type: string + interfaceResource: + description: Eda interface resource + type: string + node: + description: Reference to Node object + type: string + nodeInterface: + description: Node specific interface name + type: string + nodeSubInterface: + description: Node specific subinterface name + type: string + operatingSystem: + description: Operating System of the Node + type: string + subInterfaceIndex: + description: Index allocated to the subinterface on the associated interface for the given VLAN + type: integer + vlanID: + description: vlan assigned to this subinterface + type: string + required: + - interface + - interfaceResource + - node + - nodeInterface + type: object + type: array + ipv4Addresses: + description: List of IPv4 addresses + items: + properties: + ipPrefix: + description: Address and mask to use + type: string + primary: + description: Indicates which address to use as primary for broadcast + type: boolean + required: + - ipPrefix + type: object + type: array + ipv6Addresses: + description: List of IPv6 addresses + items: + properties: + ipPrefix: + description: Address and mask to use + type: string + primary: + description: Indicates which address to use as primary for broadcast + type: boolean + required: + - ipPrefix + type: object + type: array + router: + description: Router the RoutedInterface is attached to + type: string + required: + - interfaces + - router + type: object + status: + description: RoutedInterfaceStateStatus defines the observed state of RoutedInterfaceState + type: object + type: object +served: true +storage: true +subresources: + status: {} diff --git a/static/resources/25.4.2/routerdeployments.services.eda.nokia.com/v1alpha1.yaml b/static/resources/25.4.2/routerdeployments.services.eda.nokia.com/v1alpha1.yaml new file mode 100644 index 0000000..7b15e07 --- /dev/null +++ b/static/resources/25.4.2/routerdeployments.services.eda.nokia.com/v1alpha1.yaml @@ -0,0 +1,43 @@ +name: v1alpha1 +schema: + openAPIV3Schema: + description: RouterDeployment is the Schema for the routerdeployments API + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + description: RouterDeploymentSpec defines the desired state of RouterDeployment + properties: + node: + description: Reference to a Node on which to push the Router + type: string + router: + description: Reference to a Router + type: string + required: + - node + - router + type: object + status: + description: RouterDeploymentStatus defines the observed state of RouterDeployment + type: object + type: object +served: true +storage: true +subresources: + status: {} diff --git a/static/resources/25.4.2/routereflectorclients.protocols.eda.nokia.com/v1alpha1.yaml b/static/resources/25.4.2/routereflectorclients.protocols.eda.nokia.com/v1alpha1.yaml new file mode 100644 index 0000000..f1ea968 --- /dev/null +++ b/static/resources/25.4.2/routereflectorclients.protocols.eda.nokia.com/v1alpha1.yaml @@ -0,0 +1,264 @@ +additionalPrinterColumns: + - jsonPath: .status.lastChange + name: Last Change + type: date + - jsonPath: .status.operationalState + name: Operational State + type: string + - jsonPath: .status.numRouteReflectorClientBGPPeers + name: NumRouteReflectorClientBGPPeers + type: string + - jsonPath: .status.numRouteReflectorClientBGPPeersOperDown + name: NumRouteReflectorClientBGPPeersOperDown + type: string +name: v1alpha1 +schema: + openAPIV3Schema: + description: RouteReflectorClient is the Schema for the routereflectorclients API + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + description: RouteReflectorClient manages the configuration of iBGP sessions between a client and RouteReflectors. This resource allows you to specify the Interface for BGP sessions, set selectors for RouteReflectors, and configure common BGP settings. + properties: + asPathOptions: + description: AS Path Options + properties: + allowOwnAS: + default: 0 + description: The maximum number of times the global AS number or a local AS number of the BGP instance can appear in any received AS_PATH before it is considered a loop and considered invalid. + maximum: 255 + minimum: 0 + type: integer + removePrivateAS: + description: Options for removing private AS numbers (2-byte and 4-byte) from the advertised AS path towards all peers. + properties: + ignorePeerAS: + default: false + description: If set to true then do not delete or replace a private AS number that is the same as the peer AS number. + type: boolean + leadingOnly: + default: false + description: If set to true then only delete or replace private AS numbers that appear before the first occurrence of a non-private ASN in the sequence of most recent ASNs in the AS path. + type: boolean + removePrivateASMode: + default: DISABLED + description: The method by which private AS numbers are removed from the advertised AS_PATH attribute. + enum: + - DISABLED + - REPLACE + - DELETE + type: string + required: + - ignorePeerAS + - leadingOnly + - removePrivateASMode + type: object + required: + - allowOwnAS + type: object + bfd: + description: Enable or disable Bi-forward Forwarding Detection (BFD) with fast failover. + type: boolean + bgpGroup: + description: Reference to BgpGroup. + type: string + exportPolicy: + description: Reference to a Policy CR that will be used to filter routes advertised to peers. + items: + type: string + type: array + grStaleRouteTime: + description: Enables Graceful Restart on the peer and sets the stale route time. + maximum: 3600 + minimum: 1 + type: integer + importPolicy: + description: Reference to a Policy CR that will be used to filter routes received from peers. + items: + type: string + type: array + interface: + description: Reference to a RoutedInterface or IrbInterface resource whose IP will be used as a source IP for the BGP session. + type: string + interfaceKind: + description: InterfaceReference type defines whether the provided Reference is a RoutedInterface or IrbInterface. + enum: + - ROUTEDINTERFACE + - IRBINTERFACE + type: string + ipv4RouteReflectorSelector: + description: Label selector used to select the RouteReflectors to which the iBGP sessions are established for IPv4. + items: + type: string + type: array + ipv4Unicast: + description: Parameters relating to the IPv4 unicast AFI/SAFI. + properties: + advertiseIPV6NextHops: + description: Enables advertisement of IPv4 Unicast routes with IPv6 next-hops to peers. + type: boolean + enabled: + description: Enables the IPv4 unicast AFISAFI. + type: boolean + maxReceivedRoutes: + description: Maximum number of IPv4 Unicast routes that will be accepted from the neighbor, counting routes accepted and rejected by import policies. + maximum: 4294967295 + minimum: 1 + type: integer + receiveIPV6NextHops: + description: Enables the advertisement of the RFC 5549 capability to receive IPv4 routes with IPv6 next-hops. + type: boolean + type: object + ipv6RouteReflectorSelector: + description: Label selector used to select the RouteReflectors to which the iBGP sessions are established for IPv6. + items: + type: string + type: array + ipv6Unicast: + description: Parameters relating to the IPv6 unicast AFI/SAFI. + properties: + enabled: + description: Enables the IPv6 unicast AFISAFI + type: boolean + maxReceivedRoutes: + description: Maximum number of IPv6 Unicast routes that will be accepted from the neighbor, counting routes accepted and rejected by import policies. + maximum: 4294967295 + minimum: 1 + type: integer + type: object + keychain: + description: Reference to a Keychain resource that will be used for authentication with the BGP peer. + type: string + localAS: + description: The local autonomous system number advertised to peers. + properties: + autonomousSystem: + description: Local Autonomous System number. + maximum: 4294967295 + minimum: 1 + type: integer + prependGlobalAS: + description: When set to true, the global ASN value is prepended to the AS path in outbound routes towards each BGP peer. + type: boolean + prependLocalAS: + description: When set to true, the local AS value is prepended to the AS path of inbound routes from each EBGP peer. + type: boolean + required: + - autonomousSystem + type: object + peerAS: + description: The autonomous system number expected from peers. + properties: + autonomousSystem: + description: Local Autonomous System number. + maximum: 4294967295 + minimum: 1 + type: integer + required: + - autonomousSystem + type: object + routeReflectorIPs: + description: List of the peering IPs on the RRs to which peering session is established. + items: + type: string + type: array + sendCommunityLarge: + description: When false, all large (12 byte) BGP communities from all outbound routes advertised to the peer are stripped. + type: boolean + sendCommunityStandard: + description: When false, all standard (4 byte) communities from all outbound routes advertised to the peer are stripped. + type: boolean + sendDefaultRoute: + description: Options for controlling the generation of default routes towards BGP peers. + properties: + addressFamily: + description: Enables the sending of a synthetically generated default IPv4 or IPV6 route to each peer. + items: + enum: + - IPV4-UNICAST + - IPV6-UNICAST + type: string + type: array + exportPolicy: + description: Reference to a Policy that should be applied to the advertised default routes, in order to set their attributes to non-default values. + type: string + required: + - addressFamily + type: object + timers: + description: Timer configurations + properties: + connectRetry: + description: The time interval in seconds between successive attempts to establish a session with a peer. + maximum: 65535 + minimum: 1 + type: integer + holdTime: + description: The hold-time interval in seconds that the router proposes to the peer in its OPEN message. + maximum: 65535 + minimum: 0 + type: integer + keepAlive: + description: The interval in seconds between successive keepalive messages sent to the peer. + maximum: 21845 + minimum: 0 + type: integer + minimumAdvertisementInterval: + description: The value assigned to the MinRouteAdvertisementIntervalTimer of RFC 4271, for both EBGP and IBGP sessions. + maximum: 255 + minimum: 1 + type: integer + type: object + required: + - bgpGroup + - interface + - interfaceKind + type: object + status: + description: RouteReflectorClientStatus defines the observed state of RouteReflectorClient + properties: + health: + description: Indicates the health score of the RouteReflectorClient. + type: integer + healthScoreReason: + description: Indicates the reason for the health score. + type: string + lastChange: + description: The time when the state of the resource last changed. + type: string + numRouteReflectorClientBGPPeers: + description: Total number of configured route reflector peers on the route reflector client. + type: integer + numRouteReflectorClientBGPPeersOperDown: + description: Total number of configured route reflector peers on the route reflector client that are operationally down. + type: integer + operDownRouteReflectorClientPeers: + description: List of route reflector BGPPeers which are operationally down. + items: + type: string + type: array + operationalState: + description: Operational state of the RouteReflectorClient. + type: string + type: object + type: object +served: true +storage: true +subresources: + status: {} diff --git a/static/resources/25.4.2/routereflectorclientstates.protocols.eda.nokia.com/v1alpha1.yaml b/static/resources/25.4.2/routereflectorclientstates.protocols.eda.nokia.com/v1alpha1.yaml new file mode 100644 index 0000000..eae71e0 --- /dev/null +++ b/static/resources/25.4.2/routereflectorclientstates.protocols.eda.nokia.com/v1alpha1.yaml @@ -0,0 +1,42 @@ +name: v1alpha1 +schema: + openAPIV3Schema: + description: RouteReflectorClientState is the Schema for the routereflectorclientstates API + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + description: RouteReflectorClientStateSpec defines the desired state of RouteReflectorClientState + properties: + defaultRouteReflectorClient: + description: Denotes if the route reflector client is a DefaultRouteReflectorClient or RouteReflectorClient + type: boolean + routeReflectorClientBGPPeers: + description: A list of BGPPeers configured on the route reflector client to peer with route reflectors + items: + type: string + type: array + type: object + status: + description: RouteReflectorClientStateStatus defines the observed state of RouteReflectorClientState + type: object + type: object +served: true +storage: true +subresources: + status: {} diff --git a/static/resources/25.4.2/routereflectors.protocols.eda.nokia.com/v1alpha1.yaml b/static/resources/25.4.2/routereflectors.protocols.eda.nokia.com/v1alpha1.yaml new file mode 100644 index 0000000..5b1b6b6 --- /dev/null +++ b/static/resources/25.4.2/routereflectors.protocols.eda.nokia.com/v1alpha1.yaml @@ -0,0 +1,268 @@ +additionalPrinterColumns: + - jsonPath: .status.lastChange + name: Last Change + type: date + - jsonPath: .status.operationalState + name: Operational State + type: string + - jsonPath: .status.numRouteReflectorBGPPeers + name: NumRouteReflectorBGPPeers + type: string + - jsonPath: .status.numRouteReflectorBGPPeersOperDown + name: NumRouteReflectorBGPPeersOperDown + type: string +name: v1alpha1 +schema: + openAPIV3Schema: + description: RouteReflector is the Schema for the routereflectors API + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + description: RouteReflector enables the configuration of iBGP sessions with RouteReflectorClients. It includes settings for selecting Interfaces, client selectors for IPv4 and IPv6, and the option to specify a BGP group and cluster ID. + properties: + asPathOptions: + description: AS Path Options + properties: + allowOwnAS: + default: 0 + description: The maximum number of times the global AS number or a local AS number of the BGP instance can appear in any received AS_PATH before it is considered a loop and considered invalid. + maximum: 255 + minimum: 0 + type: integer + removePrivateAS: + description: Options for removing private AS numbers (2-byte and 4-byte) from the advertised AS path towards all peers. + properties: + ignorePeerAS: + default: false + description: If set to true then do not delete or replace a private AS number that is the same as the peer AS number. + type: boolean + leadingOnly: + default: false + description: If set to true then only delete or replace private AS numbers that appear before the first occurrence of a non-private ASN in the sequence of most recent ASNs in the AS path. + type: boolean + removePrivateASMode: + default: DISABLED + description: The method by which private AS numbers are removed from the advertised AS_PATH attribute. + enum: + - DISABLED + - REPLACE + - DELETE + type: string + required: + - ignorePeerAS + - leadingOnly + - removePrivateASMode + type: object + required: + - allowOwnAS + type: object + bfd: + description: Enable or disable Bi-forward Forwarding Detection (BFD) with fast failover. + type: boolean + bgpGroup: + description: Reference to BgpGroup + type: string + clientIPs: + description: List of RR client IPs to which the iBGP sessions are established. + items: + type: string + type: array + clusterID: + description: Sets the cluster ID for route reflectors. + type: string + exportPolicy: + description: Reference to a Policy CR that will be used to filter routes advertised to peers. + items: + type: string + type: array + grStaleRouteTime: + description: Enables Graceful Restart on the peer and sets the stale route time. + maximum: 3600 + minimum: 1 + type: integer + importPolicy: + description: Reference to a Policy CR that will be used to filter routes received from peers. + items: + type: string + type: array + interface: + description: Reference to a RoutedInterface or IrbInterface resource whose IP will be used as a source IP for the BGP session. + type: string + interfaceKind: + description: InterfaceReference type defines whether the provided Reference is a RoutedInterface or IrbInterface. + enum: + - ROUTEDINTERFACE + - IRBINTERFACE + type: string + ipv4ClientSelector: + description: Label selector used to select the RouteReflectorClients to which the iBGP sessions are established for IPv4. + items: + type: string + type: array + ipv4Unicast: + description: Parameters relating to the IPv4 unicast AFI/SAFI. + properties: + advertiseIPV6NextHops: + description: Enables advertisement of IPv4 Unicast routes with IPv6 next-hops to peers. + type: boolean + enabled: + description: Enables the IPv4 unicast AFISAFI. + type: boolean + maxReceivedRoutes: + description: Maximum number of IPv4 Unicast routes that will be accepted from the neighbor, counting routes accepted and rejected by import policies. + maximum: 4294967295 + minimum: 1 + type: integer + receiveIPV6NextHops: + description: Enables the advertisement of the RFC 5549 capability to receive IPv4 routes with IPv6 next-hops. + type: boolean + type: object + ipv6ClientSelector: + description: Label selector used to select the RouteReflectorClients to which the iBGP sessions are established for IPv6. + items: + type: string + type: array + ipv6Unicast: + description: Parameters relating to the IPv6 unicast AFI/SAFI. + properties: + enabled: + description: Enables the IPv6 unicast AFISAFI + type: boolean + maxReceivedRoutes: + description: Maximum number of IPv6 Unicast routes that will be accepted from the neighbor, counting routes accepted and rejected by import policies. + maximum: 4294967295 + minimum: 1 + type: integer + type: object + keychain: + description: Reference to a Keychain resource that will be used for authentication with the BGP peer. + type: string + localAS: + description: The local autonomous system number advertised to peers. + properties: + autonomousSystem: + description: Local Autonomous System number. + maximum: 4294967295 + minimum: 1 + type: integer + prependGlobalAS: + description: When set to true, the global ASN value is prepended to the AS path in outbound routes towards each BGP peer. + type: boolean + prependLocalAS: + description: When set to true, the local AS value is prepended to the AS path of inbound routes from each EBGP peer. + type: boolean + required: + - autonomousSystem + type: object + peerAS: + description: The autonomous system number expected from peers. + properties: + autonomousSystem: + description: Local Autonomous System number. + maximum: 4294967295 + minimum: 1 + type: integer + required: + - autonomousSystem + type: object + sendCommunityLarge: + description: When false, all large (12 byte) BGP communities from all outbound routes advertised to the peer are stripped. + type: boolean + sendCommunityStandard: + description: When false, all standard (4 byte) communities from all outbound routes advertised to the peer are stripped. + type: boolean + sendDefaultRoute: + description: Options for controlling the generation of default routes towards BGP peers. + properties: + addressFamily: + description: Enables the sending of a synthetically generated default IPv4 or IPV6 route to each peer. + items: + enum: + - IPV4-UNICAST + - IPV6-UNICAST + type: string + type: array + exportPolicy: + description: Reference to a Policy that should be applied to the advertised default routes, in order to set their attributes to non-default values. + type: string + required: + - addressFamily + type: object + timers: + description: Timer configurations + properties: + connectRetry: + description: The time interval in seconds between successive attempts to establish a session with a peer. + maximum: 65535 + minimum: 1 + type: integer + holdTime: + description: The hold-time interval in seconds that the router proposes to the peer in its OPEN message. + maximum: 65535 + minimum: 0 + type: integer + keepAlive: + description: The interval in seconds between successive keepalive messages sent to the peer. + maximum: 21845 + minimum: 0 + type: integer + minimumAdvertisementInterval: + description: The value assigned to the MinRouteAdvertisementIntervalTimer of RFC 4271, for both EBGP and IBGP sessions. + maximum: 255 + minimum: 1 + type: integer + type: object + required: + - bgpGroup + - clusterID + - interface + - interfaceKind + type: object + status: + description: RouteReflectorStatus defines the observed state of RouteReflector + properties: + health: + description: Indicates the health score of the RouteReflector. + type: integer + healthScoreReason: + description: Indicates the reason for the health score. + type: string + lastChange: + description: The time when the state of the resource last changed. + type: string + numRouteReflectorBGPPeers: + description: Total number of configured route reflector client peers on the route reflector. + type: integer + numRouteReflectorBGPPeersOperDown: + description: Total number of configured route reflector client peers on the route reflector that are operationally down. + type: integer + operDownRouteReflectorPeers: + description: List of route reflector BGPPeers which are operationally down. + items: + type: string + type: array + operationalState: + description: Operational state of the RouteReflector. + type: string + type: object + type: object +served: true +storage: true +subresources: + status: {} diff --git a/static/resources/25.4.2/routereflectorstates.protocols.eda.nokia.com/v1alpha1.yaml b/static/resources/25.4.2/routereflectorstates.protocols.eda.nokia.com/v1alpha1.yaml new file mode 100644 index 0000000..ac2694e --- /dev/null +++ b/static/resources/25.4.2/routereflectorstates.protocols.eda.nokia.com/v1alpha1.yaml @@ -0,0 +1,42 @@ +name: v1alpha1 +schema: + openAPIV3Schema: + description: RouteReflectorState is the Schema for the routereflectorstates API + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + description: RouteReflectorStateSpec defines the desired state of RouteReflectorState + properties: + defaultRouteReflector: + description: Denotes if the route reflector is a DefaultRouteReflector or RouteReflector + type: boolean + routeReflectorBGPPeers: + description: A list of BGPPeers configured on the route reflector to peer with clients + items: + type: string + type: array + type: object + status: + description: RouteReflectorStateStatus defines the observed state of RouteReflectorState + type: object + type: object +served: true +storage: true +subresources: + status: {} diff --git a/static/resources/25.4.2/routers.services.eda.nokia.com/v1alpha1.yaml b/static/resources/25.4.2/routers.services.eda.nokia.com/v1alpha1.yaml new file mode 100644 index 0000000..552c93a --- /dev/null +++ b/static/resources/25.4.2/routers.services.eda.nokia.com/v1alpha1.yaml @@ -0,0 +1,309 @@ +additionalPrinterColumns: + - jsonPath: .status.vni + name: VNI + type: string + - jsonPath: .status.evi + name: EVI + type: string + - jsonPath: .status.importTarget + name: Import Target + type: string + - jsonPath: .status.exportTarget + name: Export Target + type: string + - jsonPath: .status.operationalState + name: OperationalState + type: string + - jsonPath: .status.lastChange + name: LastChange + type: string +name: v1alpha1 +schema: + openAPIV3Schema: + description: Router is the Schema for the routers API + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + description: The Router enables the configuration and management of routing functions within a network. This resource allows for setting a unique Router ID, configuring VNIs and EVIs with options for automatic allocation, and defining import and export route targets. It also includes advanced configuration options such as BGP settings, including autonomous system numbers, AFI/SAFI options, and route advertisement preferences. Node selectors can be used to constrain the deployment of the router to specific nodes within the network. + properties: + bgp: + description: BGP configuration. + properties: + autonomousSystem: + description: Autonomous System number for BGP. + maximum: 4294967295 + minimum: 1 + type: integer + ebgpPreference: + default: 170 + description: Preference to be set for eBGP [default=170]. + maximum: 255 + minimum: 1 + type: integer + enabled: + default: false + description: Enable or disable BGP. + type: boolean + ibgpPreference: + default: 170 + description: Preference to be set for iBGP [default=170]. + maximum: 255 + minimum: 1 + type: integer + ipAliasNexthops: + description: IP aliasing configuration. + items: + properties: + esi: + default: auto + description: 10 byte Ethernet Segment Identifier, if not set a type 0 ESI is generated. + type: string + nextHop: + description: The nexthop IP address to track for the IP alias. + type: string + preferredActiveNode: + description: When not set the ES is used in an all active mode. This references the ToppNode object and when set, the DF algorithm is configured to type preference and the selected Node is set with a higher preference value. All other Nodes have a lower value configured. + type: string + required: + - nextHop + type: object + type: array + ipv4Unicast: + description: Parameters relating to the IPv4 unicast AFI/SAFI. + properties: + advertiseIPV6NextHops: + description: Enables advertisement of IPv4 Unicast routes with IPv6 next-hops to peers. + type: boolean + enabled: + default: false + description: Enables the IPv4 unicast AFISAFI. + type: boolean + multipath: + description: Enable multipath. + properties: + allowMultipleAS: + default: true + description: When set to true, BGP is allowed to build a multipath set using BGP routes with different neighbor AS (most recent AS in the AS_PATH), When set to false, BGP is only allowed to use non-best paths for ECMP if they meet the multipath criteria and they have the same neighbor AS as the best path. + type: boolean + maxAllowedPaths: + description: The maximum number of BGP ECMP next-hops for BGP routes with an NLRI belonging to the address family of this configuration context. + maximum: 256 + minimum: 1 + type: integer + required: + - allowMultipleAS + - maxAllowedPaths + type: object + receiveIPV6NextHops: + description: Enables the advertisement of the RFC 5549 capability to receive IPv4 routes with IPv6 next-hops. + type: boolean + required: + - enabled + type: object + ipv6Unicast: + description: Parameters relating to the IPv6 unicast AFI/SAFI. + properties: + enabled: + default: false + description: Enables the IPv6 unicast AFISAFI + type: boolean + multipath: + description: Enable multipath + properties: + allowMultipleAS: + default: true + description: When set to true, BGP is allowed to build a multipath set using BGP routes with different neighbor AS (most recent AS in the AS_PATH), When set to false, BGP is only allowed to use non-best paths for ECMP if they meet the multipath criteria and they have the same neighbor AS as the best path. + type: boolean + maxAllowedPaths: + description: The maximum number of BGP ECMP next-hops for BGP routes with an NLRI belonging to the address family of this configuration context. + maximum: 256 + minimum: 1 + type: integer + required: + - allowMultipleAS + - maxAllowedPaths + type: object + required: + - enabled + type: object + keychain: + description: Keychain to be used for authentication + type: string + minWaitToAdvertise: + default: 0 + description: Minimum wait time before advertising routes post BGP restart. + maximum: 3600 + minimum: 0 + type: integer + rapidWithdrawl: + default: true + description: Enable rapid withdrawal in BGP. + type: boolean + waitForFIBInstall: + default: false + description: Wait for FIB installation before advertising routes. + type: boolean + type: object + description: + description: The description of the Router. + type: string + evi: + description: EVI for the Router; leave blank for auto-allocation from EVI pool. + maximum: 65535 + minimum: 1 + type: integer + eviPool: + default: evi-pool + description: Reference to EVI pool for auto-allocation. + type: string + exportTarget: + description: Export route target in 'target:N:N' format, if not specified, the default value taken as "target:1:". + pattern: ^target.*$ + type: string + importTarget: + description: Import route target in 'target:N:N' format, if not specified, the default value taken as "target:1:". + pattern: ^target.*$ + type: string + ipLoadBalancing: + description: IPv4 or IPv6 prefix. Active routes in the FIB that exactly match this prefix or that are longer matches of this prefix are provided with resilient-hash programming. + properties: + prefix: + description: IPv4 or IPv6 prefix. Active routes in the FIB that exactly match this prefix or that are longer matches of this prefix are provided with resilient-hash programming. + items: + properties: + hashBucketsPerPath: + default: 1 + description: The number of times each next-hop is repeated in the fill pattern if there are max-paths ECMP next-hops. + maximum: 32 + minimum: 1 + type: integer + maxECMP: + default: 1 + description: The maximum number of ECMP next-hops per route associated with the resilient-hash prefix. + maximum: 64 + minimum: 1 + type: integer + prefix: + description: IPv4 or IPv6 prefix. Active routes in the FIB that exactly match this prefix or that are longer matches of this prefix are provided with resilient-hash programming. + type: string + required: + - hashBucketsPerPath + - maxECMP + - prefix + type: object + type: array + type: object + nodeSelector: + description: Node selectors for deployment constraints. If Nodes are selected, the Router will only be deployed on the Nodes selected, if left blank it will be deployed on all Nodes for which there are IRB or RoutedInterfaces referencing this Router. + items: + type: string + type: array + routeLeaking: + description: Route leaking controlled by routing policies in and out of the DefaultRouter. + properties: + exportPolicy: + description: Reference to a Policy resource to use when evaluating route exports from the DefaultRouter. + type: string + importPolicy: + description: Reference to a Policy resource to use when evaluating route imports into the DefaultRouter. + type: string + type: object + routerID: + description: Router ID. + type: string + tunnelIndexPool: + default: tunnel-index-pool + description: Reference to tunnel index allocation pool. + type: string + type: + default: EVPNVXLAN + description: Select the type of Router. Simple doesn't include any overlay control plane or dataplane properties (EVPN/VXLAN). EVPNVXLAN includes the properties needed to provision this Router over an IP Fabric. + enum: + - SIMPLE + - EVPNVXLAN + type: string + vni: + description: VNI for the Router; leave blank for auto-allocation from VNI pool. + maximum: 16777215 + minimum: 1 + type: integer + vniPool: + default: vni-pool + description: Reference to VNI pool for auto-allocation. + type: string + type: object + status: + description: RouterStatus defines the observed state of Router + properties: + bgpPeers: + description: List of BGPPeers attached to the router. + items: + type: string + type: array + evi: + description: EVI in use for this Router. + type: integer + exportTarget: + description: Export route target for this Router. + type: string + health: + description: Indicates the health score of the Router. + type: integer + healthScoreReason: + description: Explains the reason for the health score. + type: string + importTarget: + description: Import route target for this Router. + type: string + irbInterfaces: + description: List of IRBInterfaces attached to the router. + items: + type: string + type: array + lastChange: + description: Timestamp of the last state change. + type: string + nodes: + description: List of nodes on which the Router is deployed. + items: + type: string + type: array + numNodes: + description: Number of nodes on which the Router is configured. + type: integer + operationalState: + description: Operational state of the Router. + type: string + routedInterfaces: + description: List of RoutedInterfaces attached to the router. + items: + type: string + type: array + tunnelIndex: + description: Vxlan tunnel index in use. + type: integer + vni: + description: VNI in use for this Router. + type: integer + type: object + type: object +served: true +storage: true +subresources: + status: {} diff --git a/static/resources/25.4.2/routerstates.services.eda.nokia.com/v1alpha1.yaml b/static/resources/25.4.2/routerstates.services.eda.nokia.com/v1alpha1.yaml new file mode 100644 index 0000000..130d3bd --- /dev/null +++ b/static/resources/25.4.2/routerstates.services.eda.nokia.com/v1alpha1.yaml @@ -0,0 +1,55 @@ +name: v1alpha1 +schema: + openAPIV3Schema: + description: RouterState is the Schema for the routerstates API + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + description: RouterStateSpec defines the desired state of RouterState + properties: + evi: + description: EVI in use for this Router + maximum: 65535 + minimum: 1 + type: integer + exportTarget: + description: Export route target for this Router, in the format 'target:N:N' + pattern: ^target.*$ + type: string + importTarget: + description: Import route target for this Router, in the format 'target:N:N' + pattern: ^target.*$ + type: string + tunnelIndex: + description: Vxlan tunnel index in use + type: integer + vni: + description: VNI in use for this Router + maximum: 16777215 + minimum: 1 + type: integer + type: object + status: + description: RouterStateStatus defines the observed state of RouterState + type: object + type: object +served: true +storage: true +subresources: + status: {} diff --git a/static/resources/25.4.2/simlinks.test.eda.nokia.com/v1.yaml b/static/resources/25.4.2/simlinks.test.eda.nokia.com/v1.yaml new file mode 100644 index 0000000..9596640 --- /dev/null +++ b/static/resources/25.4.2/simlinks.test.eda.nokia.com/v1.yaml @@ -0,0 +1,95 @@ +name: v1 +schema: + openAPIV3Schema: + description: SimLink is the Schema for the simlinks API + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + description: SimLinkSpec defines the desired state of SimLink + properties: + bondName: + description: |- + When creating a SimLink with more than one member, the bondName is used to create a bond on the SimNode side. + This field must not be used when creating a single member SimLink. + type: string + links: + description: |- + To create a point to point link with a single interface on both sides use a single link object. + To create a point to point link with a LAG configured on both side, use two links with matching nodes. + A multihommed lag is created by using two or more links where the remoteNode and/or localNode can be different. + Creating a link with only localNode specified will create an edge interface. + items: + properties: + local: + properties: + interface: + description: |- + Normalized name of the interface/port. + For sim, this is the name of the interface as it will appear in the SimNode, for example 'eth0'. + For local, this is the normalized name of the interface in the TopoNode, for example 'ethernet-1-1'. + type: string + interfaceResource: + description: Name of an the Interface resource + type: string + node: + description: Reference to a TopoNode if local, or a SimNode if sim + type: string + required: + - interface + - interfaceResource + - node + type: object + sim: + properties: + interface: + description: |- + Normalized name of the interface/port. + For sim, this is the name of the interface as it will appear in the SimNode, for example 'eth0'. + For local, this is the normalized name of the interface in the TopoNode, for example 'ethernet-1-1'. + type: string + interfaceResource: + description: Name of an the Interface resource + type: string + node: + description: Reference to a TopoNode if local, or a SimNode if sim + type: string + required: + - interface + - interfaceResource + - node + type: object + speed: + type: string + required: + - local + - sim + type: object + minItems: 1 + type: array + required: + - links + type: object + status: + description: SimLinkStatus defines the observed state of SimLink + type: object + type: object +served: true +storage: true +subresources: + status: {} diff --git a/static/resources/25.4.2/simnodes.test.eda.nokia.com/v1.yaml b/static/resources/25.4.2/simnodes.test.eda.nokia.com/v1.yaml new file mode 100644 index 0000000..9c745a4 --- /dev/null +++ b/static/resources/25.4.2/simnodes.test.eda.nokia.com/v1.yaml @@ -0,0 +1,53 @@ +name: v1 +schema: + openAPIV3Schema: + description: SimNode is the Schema for the simnodes API + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + description: SimNodeSpec defines the desired state of SimNode + properties: + image: + description: The container image to use for this SimNode + type: string + imagePullSecret: + description: Reference to a Secret to use when pulling the image for this simNode + type: string + type: + description: Type defines what image to use for this SimNode + enum: + - Linux + - TestMan + - SrlTest + type: string + required: + - type + type: object + status: + description: SimNodeStatus defines the observed state of SimNode + properties: + ipAddress: + description: Sim Node IP address + type: string + type: object + type: object +served: true +storage: true +subresources: + status: {} diff --git a/static/resources/25.4.2/simtopologies.core.eda.nokia.com/v1.yaml b/static/resources/25.4.2/simtopologies.core.eda.nokia.com/v1.yaml new file mode 100644 index 0000000..31f8ef0 --- /dev/null +++ b/static/resources/25.4.2/simtopologies.core.eda.nokia.com/v1.yaml @@ -0,0 +1,91 @@ +name: v1 +schema: + openAPIV3Schema: + description: SimTopology is the Schema for the simtopologies API + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + description: SimTopologySpec defines the desired state of SimTopology + properties: + simNodes: + description: Provide the list of SimNodes to be used in the simulation, and their corresponding images. + items: + properties: + image: + description: The image to use for this SimNode. This is the full path to the image as it would be provided to the container runtime. + type: string + imagePullSecret: + description: Reference to a Secret to use when pulling the image for this simNode + type: string + name: + description: The name of the SimNode. This is the name that will be used to reference the SimNode in the SimTopology. + type: string + type: + description: Type defines what is type of this SimNode + enum: + - Linux + - TestMan + - SrlTest + type: string + required: + - image + - name + - type + type: object + minItems: 1 + type: array + topology: + description: Describe the topology of the simulation. This topology builds the relationship between TopoNodes and their interfaces and SimNodes. + items: + properties: + interface: + description: |- + Normalized name of an interface/port. This is the normalized name of the interface in the TopoNode, for example 'ethernet-1-1'. + The value of "*" indicates all interfaces on the TopoNode/s. + type: string + node: + description: The TopoNode on which interfaces will be mapped to a SimNode. You may use the value "*" to indicate all TopoNodes. + type: string + simNode: + description: The SimNode to which the interface will be mapped. This is the name of the SimNode as it is defined in the SimTopology. + type: string + simNodeInterface: + description: |- + The name of the interface to present to the SimNode to which the interface will be mapped. If not provided the interface name will be generated starting with "eth1", "eth2", ... . + This is the interface name as it will appear in the SimNode. + type: string + required: + - interface + - node + - simNode + type: object + minItems: 1 + type: array + required: + - simNodes + - topology + type: object + status: + description: SimTopologyStatus defines the observed state of SimTopology + type: object + type: object +served: true +storage: true +subresources: + status: {} diff --git a/static/resources/25.4.2/simtoponodes.core.eda.nokia.com/v1.yaml b/static/resources/25.4.2/simtoponodes.core.eda.nokia.com/v1.yaml new file mode 100644 index 0000000..617aefc --- /dev/null +++ b/static/resources/25.4.2/simtoponodes.core.eda.nokia.com/v1.yaml @@ -0,0 +1,109 @@ +name: v1 +schema: + openAPIV3Schema: + description: SimTopoNode is the Schema for the simtoponodes API + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + description: SimTopoNodeSpec defines the desired state of SimTopoNode + properties: + component: + description: A list of components within a node. Used to define the type and location of linecards, fabrics (sfm), media adapter cards (mda) and control cards. + items: + properties: + kind: + description: The kind of Component, e.g. lineCard. + enum: + - lineCard + - fabric + - mda + - connector + - xiom + - powerShelf + - powerModule + type: string + slot: + description: |- + The slot this Component resides in, unset for Components that do not have a slot or ID. + e.g. 1 would denote the linecard slot 1, 1/1 would denote linecard slot 1 mda slot 1. + type: string + type: + description: Denotes the type of hardware being provisioned, e.g. xcm-x20. + type: string + required: + - kind + - type + type: object + type: array + containerImage: + description: Reference URL to the container image for the associated operatingSystem and version + type: string + dhcp: + properties: + preferredAddressFamily: + description: Preferred IP address family + enum: + - IPv4 + - IPv6 + type: string + type: object + imagePullSecret: + description: Secret used to authenticate to the container registry where the container image is hosted + type: string + license: + description: Reference to a URL path hosting the license for the TopoNode. + type: string + operatingSystem: + description: Operational operating system running on this TopoNode, e.g. srl, sros + type: string + platform: + description: Operational platform type of this TopoNode, e.g. 7220 IXR-D3L + type: string + platformPath: + description: JSPath to use for retrieving the version string from nodes matching this NodeProfile + type: string + port: + default: 57400 + description: The port used to establish a connection to the TargetNode + maximum: 65535 + minimum: 1 + type: integer + serialNumberPath: + description: JSPath to use for retrieving the serial number string from nodes matching this NodeProfile + type: string + version: + description: Operational software version of this TopoNode, e.g. 24.7.1 (for srl), or 24.7.r1 (for sros) + type: string + versionMatch: + description: |- + Match the node-retrieved version string to TopoNode version + The value should be a regular expression matching the version string that would appear on the node + type: string + versionPath: + description: JSPath to use for retrieving the version string from nodes matching this NodeProfile + type: string + type: object + status: + description: SimTopoNodeStatus defines the observed state of SimTopoNode + type: object + type: object +served: true +storage: true +subresources: + status: {} diff --git a/static/resources/25.4.2/stateconfigs.services.eda.nokia.com/v1alpha1.yaml b/static/resources/25.4.2/stateconfigs.services.eda.nokia.com/v1alpha1.yaml new file mode 100644 index 0000000..51f76db --- /dev/null +++ b/static/resources/25.4.2/stateconfigs.services.eda.nokia.com/v1alpha1.yaml @@ -0,0 +1,47 @@ +name: v1alpha1 +schema: + openAPIV3Schema: + description: StateConfig is the Schema for the StateConfigs API + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + properties: + configs: + items: + properties: + config: + type: string + path: + type: string + required: + - path + type: object + type: array + required: + - configs + type: object + status: + type: object + required: + - spec + type: object +served: true +storage: true +subresources: + status: {} diff --git a/static/resources/25.4.2/staticroutes.protocols.eda.nokia.com/v1alpha1.yaml b/static/resources/25.4.2/staticroutes.protocols.eda.nokia.com/v1alpha1.yaml new file mode 100644 index 0000000..fd476f7 --- /dev/null +++ b/static/resources/25.4.2/staticroutes.protocols.eda.nokia.com/v1alpha1.yaml @@ -0,0 +1,133 @@ +name: v1alpha1 +schema: + openAPIV3Schema: + description: StaticRoute is the Schema for the static routes API + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + description: StaticRoute allows for the specification of destination prefixes, route preferences, and the associated Router. It also supports configuring nexthop groups and specifying the nodes where the static routes should be provisioned. + properties: + nexthopGroup: + description: Group of nexthops for the list of prefixes. + properties: + bfd: + description: Enables BFD to the next-hops in the group. Local and Remote discriminator parameters have been deprecated at this level. Use Nexthop to set these parameters. + properties: + enabled: + default: false + description: Defines whether BFD should be enabled towards the nexthops. + type: boolean + localAddress: + description: Defines the local address to use when establishing the BFD session with the nexthop. + type: string + localDiscriminator: + description: Defines the local discriminator. + type: integer + remoteDiscriminator: + description: Defines the remote discriminator. + type: integer + type: object + blackhole: + default: false + description: If set to true all traffic destined to the prefixes will be blackholed. If enabled, next-hops are ignored and this takes precedence. + type: boolean + nexthops: + description: Ordered list of nexthops. + items: + properties: + bfd: + description: Enables BFD to the next-hops in the group. This overrides the configuration at the group. + properties: + enabled: + default: false + description: Defines whether BFD should be enabled towards the nexthops. + type: boolean + localAddress: + description: Defines the local address to use when establishing the BFD session with the nexthop. + type: string + localDiscriminator: + description: Defines the local discriminator. + type: integer + remoteDiscriminator: + description: Defines the remote discriminator. + type: integer + type: object + ipPrefix: + description: Address to use. + type: string + resolve: + default: false + description: If set to true the next-hops can be destinations which are resolved in the route table. This overrides the configuration at the group. + type: boolean + required: + - ipPrefix + type: object + type: array + resolve: + default: false + description: If set to true the next-hops can be destinations which are resolved in the route table. + type: boolean + type: object + nodes: + description: List of nodes on which to configure the static routes. An AND operation is executed against the nodes in this list and the nodes on which the Router is configured to determine the Nodes on which to configure the static routes. + items: + type: string + type: array + preference: + description: Defines the route preference. + type: integer + prefixes: + description: List of destination prefixes and mask to use for the static routes. + items: + type: string + type: array + router: + description: Reference to a Router on which to configure the static routes. If no Nodes are provided then the static routes will be provisioned on all Nodes on which the Router is provisioned. + type: string + required: + - nexthopGroup + - prefixes + - router + type: object + status: + description: StaticRouteStatus defines the observed state of Static Route + properties: + health: + description: Indicates the health score of the static routes. + type: integer + healthScoreReason: + description: Indicates the reason for the health score. + type: string + lastChange: + description: The time when the state of the resource last changed. + type: string + nodes: + description: List of Nodes on which the static routes are configured. + items: + type: string + type: array + operationalState: + description: Operational state of the static routes. + type: string + type: object + type: object +served: true +storage: true +subresources: + status: {} diff --git a/static/resources/subnetallocationpools.core.eda.nokia.com/v1.yaml b/static/resources/25.4.2/subnetallocationpools.core.eda.nokia.com/v1.yaml similarity index 100% rename from static/resources/subnetallocationpools.core.eda.nokia.com/v1.yaml rename to static/resources/25.4.2/subnetallocationpools.core.eda.nokia.com/v1.yaml diff --git a/static/resources/25.4.2/systeminterfaces.routing.eda.nokia.com/v1alpha1.yaml b/static/resources/25.4.2/systeminterfaces.routing.eda.nokia.com/v1alpha1.yaml new file mode 100644 index 0000000..7d81c99 --- /dev/null +++ b/static/resources/25.4.2/systeminterfaces.routing.eda.nokia.com/v1alpha1.yaml @@ -0,0 +1,103 @@ +additionalPrinterColumns: + - jsonPath: .status.lastChange + name: Last Change + type: date + - jsonPath: .status.operationalState + name: Operational State + type: string +name: v1alpha1 +schema: + openAPIV3Schema: + description: SystemInterface is the Schema for the systeminterfaces API + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + description: SystemInterfaceSpec defines the desired state of SystemInterface + properties: + bfd: + description: Enable or disable BFD on this SystemInterface. + properties: + desiredMinTransmitInt: + default: 1000000 + description: The minimum interval in microseconds between transmission of BFD control packets[default=1000000]. + maximum: 100000000 + minimum: 10000 + type: integer + detectionMultiplier: + default: 3 + description: The number of packets that must be missed to declare this session as down. [default=3] + maximum: 20 + minimum: 3 + type: integer + enabled: + default: false + description: Enable Biforward Detection[default=false]. + type: boolean + minEchoReceiveInterval: + default: 1000000 + description: The minimum interval between echo packets the local node can receive in microseconds + maximum: 100000000 + minimum: 0 + type: integer + requiredMinReceive: + default: 1000000 + description: The minimum interval in microseconds between received BFD control packets that this system should support.[default=1000000]. + maximum: 100000000 + minimum: 10000 + type: integer + required: + - desiredMinTransmitInt + - detectionMultiplier + - enabled + - minEchoReceiveInterval + - requiredMinReceive + type: object + defaultRouter: + description: Reference to a DefaultRouter. + type: string + ipv4Address: + description: IPv4 address in ip/mask form, e.g., 192.168.0.1/32. + type: string + ipv6Address: + description: IPv6 address in ip/mask form, e.g., fc00::1/128. + type: string + required: + - defaultRouter + type: object + status: + description: SystemInterfaceStatus defines the observed state of SystemInterface + properties: + health: + description: Indicates the health score of the SystemInterface. + type: integer + healthScoreReason: + description: Indicates the reason for the health score. + type: string + lastChange: + description: Indicates when this Interface last changed state. + type: string + operationalState: + description: Indicates the current operational state of the SystemInterface. + type: string + type: object + type: object +served: true +storage: true +subresources: + status: {} diff --git a/static/resources/25.4.2/systeminterfacestates.routing.eda.nokia.com/v1alpha1.yaml b/static/resources/25.4.2/systeminterfacestates.routing.eda.nokia.com/v1alpha1.yaml new file mode 100644 index 0000000..095e3ed --- /dev/null +++ b/static/resources/25.4.2/systeminterfacestates.routing.eda.nokia.com/v1alpha1.yaml @@ -0,0 +1,68 @@ +name: v1alpha1 +schema: + openAPIV3Schema: + description: SystemInterfaceState is the Schema for the systeminterfacestates API + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + description: SystemInterfaceStateSpec defines the desired state of SystemInterfaceState + properties: + defaultRouter: + description: Reference to a DefaultRouter + type: string + interface: + description: Reference to an interface + type: string + ipv4Address: + description: IPv4 address of the system interface + type: string + ipv6Address: + description: IPv6 addresses of the system interface + type: string + networkInstanceName: + description: The name of the network-instance or base routing instance in which the SystemInterface is configured + type: string + node: + description: Reference to Node object + type: string + nodeInterface: + description: Node specific interface name, for example "ethernet-1/1", "1/1/c1/1" + type: string + operatingSystem: + description: Operating System of the Node + type: string + subInterfaceIndex: + description: Index of the subinterface + type: integer + required: + - defaultRouter + - interface + - ipv4Address + - networkInstanceName + - node + - nodeInterface + type: object + status: + description: SystemInterfaceStateStatus defines the observed state of SystemInterfaceState + type: object + type: object +served: true +storage: true +subresources: + status: {} diff --git a/static/resources/25.4.2/targetnodes.core.eda.nokia.com/v1.yaml b/static/resources/25.4.2/targetnodes.core.eda.nokia.com/v1.yaml new file mode 100644 index 0000000..c40500a --- /dev/null +++ b/static/resources/25.4.2/targetnodes.core.eda.nokia.com/v1.yaml @@ -0,0 +1,443 @@ +additionalPrinterColumns: + - jsonPath: .status.tlsStatus.nodeSecurityProfile + name: NodeSecurityProfile + type: string + - jsonPath: .status.bootstrapStatus + name: Status + type: string + - jsonPath: .status.dhcpStatus + name: DHCP + type: string + - jsonPath: .spec.address + name: Address + type: string + - jsonPath: .spec.port + name: Port + type: string +name: v1 +schema: + openAPIV3Schema: + description: TargetNode is the Schema for the targetnodes API + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + description: TargetNodeSpec defines the desired state of TargetNode + properties: + address: + description: Addressed used to connect to TopoNode + type: string + dhcp4: + description: DHCPv4 configuration + properties: + address: + description: Assigned address in DHCP4 reply + type: string + options: + description: DHCP4 Options + items: + properties: + option: + description: DHCPv4 option to return to the TopoNode. + enum: + - 1-SubnetMask + - 2-TimeOffset + - 3-Router + - 4-TimeServer + - 5-NameServer + - 6-DomainNameServer + - 7-LogServer + - 8-QuoteServer + - 9-LPRServer + - 10-ImpressServer + - 11-ResourceLocationServer + - 12-HostName + - 13-BootFileSize + - 14-MeritDumpFile + - 15-DomainName + - 16-SwapServer + - 17-RootPath + - 18-ExtensionsPath + - 19-IPForwarding + - 20-NonLocalSourceRouting + - 21-PolicyFilter + - 22-MaximumDatagramAssemblySize + - 23-DefaultIPTTL + - 24-PathMTUAgingTimeout + - 25-PathMTUPlateauTable + - 26-InterfaceMTU + - 27-AllSubnetsAreLocal + - 28-BroadcastAddress + - 29-PerformMaskDiscovery + - 30-MaskSupplier + - 31-PerformRouterDiscovery + - 32-RouterSolicitationAddress + - 33-StaticRoutingTable + - 34-TrailerEncapsulation + - 35-ArpCacheTimeout + - 36-EthernetEncapsulation + - 37-DefaulTCPTTL + - 38-TCPKeepaliveInterval + - 39-TCPKeepaliveGarbage + - 40-NetworkInformationServiceDomain + - 41-NetworkInformationServers + - 42-NTPServers + - 43-VendorSpecificInformation + - 44-NetBIOSOverTCPIPNameServer + - 45-NetBIOSOverTCPIPDatagramDistributionServer + - 46-NetBIOSOverTCPIPNodeType + - 47-NetBIOSOverTCPIPScope + - 48-XWindowSystemFontServer + - 49-XWindowSystemDisplayManager + - 50-RequestedIPAddress + - 51-IPAddressLeaseTime + - 52-OptionOverload + - 53-DHCPMessageType + - 54-ServerIdentifier + - 55-ParameterRequestList + - 56-Message + - 57-MaximumDHCPMessageSize + - 58-RenewTimeValue + - 59-RebindingTimeValue + - 60-ClassIdentifier + - 61-ClientIdentifier + - 62-NetWareIPDomainName + - 63-NetWareIPInformation + - 64-NetworkInformationServicePlusDomain + - 65-NetworkInformationServicePlusServers + - 66-TFTPServerName + - 67-BootfileName + - 68-MobileIPHomeAgent + - 69-SimpleMailTransportProtocolServer + - 70-PostOfficeProtocolServer + - 71-NetworkNewsTransportProtocolServer + - 72-DefaultWorldWideWebServer + - 73-DefaultFingerServer + - 74-DefaultInternetRelayChatServer + - 75-StreetTalkServer + - 76-StreetTalkDirectoryAssistanceServer + - 77-UserClassInformation + - 78-SLPDirectoryAgent + - 79-SLPServiceScope + - 80-RapidCommit + - 81-FQDN + - 82-RelayAgentInformation + - 83-InternetStorageNameService + - 85-NDSServers + - 86-NDSTreeName + - 87-NDSContext + - 88-BCMCSControllerDomainNameList + - 89-BCMCSControllerIPv4AddressList + - 90-Authentication + - 91-ClientLastTransactionTime + - 92-AssociatedIP + - 93-ClientSystemArchitectureType + - 94-ClientNetworkInterfaceIdentifier + - 95-LDAP + - 97-ClientMachineIdentifier + - 98-OpenGroupUserAuthentication + - 99-GeoConfCivic + - 100-IEEE10031TZString + - 101-ReferenceToTZDatabase + - 112-NetInfoParentServerAddress + - 113-NetInfoParentServerTag + - 114-URL + - 116-AutoConfigure + - 117-NameServiceSearch + - 118-SubnetSelection + - 119-DNSDomainSearchList + - 120-SIPServers + - 121-ClasslessStaticRoute + - 122-CCC + - 123-GeoConf + - 124-VendorIdentifyingVendorClass + - 125-VendorIdentifyingVendorSpecific + - 128-TFTPServerIPAddress + - 129-CallServerIPAddress + - 130-DiscriminationString + - 131-RemoteStatisticsServerIPAddress + - 132-8021PVLANID + - 133-8021QL2Priority + - 134-DiffservCodePoint + - 135-HTTPProxyForPhoneSpecificApplications + - 136-PANAAuthenticationAgent + - 137-LoSTServer + - 138-CAPWAPAccessControllerAddresses + - 139-OPTIONIPv4AddressMoS + - 140-OPTIONIPv4FQDNMoS + - 141-SIPUAConfigurationServiceDomains + - 142-OPTIONIPv4AddressANDSF + - 143-OPTIONIPv6AddressANDSF + - 150-TFTPServerAddress + - 151-StatusCode + - 152-BaseTime + - 153-StartTimeOfState + - 154-QueryStartTime + - 155-QueryEndTime + - 156-DHCPState + - 157-DataSource + - 175-Etherboot + - 176-IPTelephone + - 177-EtherbootPacketCableAndCableHome + - 208-PXELinuxMagicString + - 209-PXELinuxConfigFile + - 210-PXELinuxPathPrefix + - 211-PXELinuxRebootTime + - 212-OPTION6RD + - 213-OPTIONv4AccessDomain + - 220-SubnetAllocation + - 221-VirtualSubnetAllocation + - 224-Reserved + - 225-Reserved + - 226-Reserved + - 227-Reserved + - 228-Reserved + - 229-Reserved + - 230-Reserved + - 231-Reserved + - 232-Reserved + - 233-Reserved + - 234-Reserved + - 235-Reserved + - 236-Reserved + - 237-Reserved + - 238-Reserved + - 239-Reserved + - 240-Reserved + - 241-Reserved + - 242-Reserved + - 243-Reserved + - 244-Reserved + - 245-Reserved + - 246-Reserved + - 247-Reserved + - 248-Reserved + - 249-Reserved + - 250-Reserved + - 251-Reserved + - 252-Reserved + - 253-Reserved + - 254-Reserved + - 255-End + type: string + value: + description: Value to return to the TopoNode for the specified option. + items: + type: string + minItems: 1 + type: array + required: + - option + - value + type: object + type: array + required: + - address + - options + type: object + dhcp6: + description: DHCPv6 configuration + properties: + address: + description: Assigned address in DHCP6 reply + type: string + options: + description: DHCP6 Options + items: + properties: + option: + description: DHCPv6 option to return to the TopoNode. + enum: + - 59-BootfileUrl + type: string + value: + description: Value to return to the TopoNode for the specified option. + items: + type: string + minItems: 1 + type: array + required: + - option + - value + type: object + type: array + required: + - address + - options + type: object + macAddress: + description: ' MAC address of the TopoNode' + type: string + operatingSystem: + description: The OS matching this NodeProfile + enum: + - srl + - sros + - eos + - sonic + - ios-xr + - nxos + type: string + platform: + description: Platform type of this Node, e.g. 7220 IXR-D3L + type: string + platformPath: + description: JSPath to use for retrieving the chassis string from the node + type: string + port: + description: Port used to connect to the TopoNode + type: integer + serialNumber: + description: Serial number of the TopoNode + type: string + serialNumberPath: + description: JSPath to use for retrieving the serial number string from the node + type: string + versionMatch: + description: |- + Match the node-retrieved version string to TargetNode version + The value should be a regular expression matching the version string that would appear on the node + type: string + versionPath: + description: JSPath to use for retrieving the version string from the node + type: string + required: + - address + - operatingSystem + type: object + status: + description: TargetNodeStatus defines the observed state of TargetNode + properties: + bootstrapStatus: + description: Bootstrap status of the Target + enum: + - Init + - Ready + - Failed + type: string + bootstrapStatusReason: + description: Human-readable message indicating details about the bootstrapStatus's Failed state + type: string + dhcpStatus: + description: DHCP status of the Target + enum: + - Offered + - Acknowledged + type: string + tlsStatus: + description: TLS status of the Target + properties: + nodeSecurityProfile: + description: NodeSecurity Profile Used + type: string + tls: + description: NodeSecurity Profile Used + properties: + csrParams: + description: A set of certificate signing request parameters used when asking for a CSR from the toponode. + properties: + certificateValidity: + default: 2160h + description: CertificateValidity defines the duration for which the certificate is considered valid after issuance. + type: string + city: + description: City denotes the city where the organization is based. + type: string + commonName: + description: CommonName specifies the common name field of the CSR, typically representing the domain name. + type: string + country: + description: Country indicates the country in which the organization is legally registered. + type: string + csrSuite: + default: CSRSUITE_X509_KEY_TYPE_RSA_2048_SIGNATURE_ALGORITHM_SHA_2_256 + description: The CSRSuite value used when asking for a CSR from the toponode + enum: + - CSRSUITE_X509_KEY_TYPE_RSA_2048_SIGNATURE_ALGORITHM_SHA_2_256 + - CSRSUITE_X509_KEY_TYPE_RSA_2048_SIGNATURE_ALGORITHM_SHA_2_384 + - CSRSUITE_X509_KEY_TYPE_RSA_2048_SIGNATURE_ALGORITHM_SHA_2_512 + - CSRSUITE_X509_KEY_TYPE_RSA_3072_SIGNATURE_ALGORITHM_SHA_2_256 + - CSRSUITE_X509_KEY_TYPE_RSA_3072_SIGNATURE_ALGORITHM_SHA_2_384 + - CSRSUITE_X509_KEY_TYPE_RSA_3072_SIGNATURE_ALGORITHM_SHA_2_512 + - CSRSUITE_X509_KEY_TYPE_RSA_4096_SIGNATURE_ALGORITHM_SHA_2_256 + - CSRSUITE_X509_KEY_TYPE_RSA_4096_SIGNATURE_ALGORITHM_SHA_2_384 + - CSRSUITE_X509_KEY_TYPE_RSA_4096_SIGNATURE_ALGORITHM_SHA_2_512 + - CSRSUITE_X509_KEY_TYPE_ECDSA_PRIME256V1_SIGNATURE_ALGORITHM_SHA_2_256 + - CSRSUITE_X509_KEY_TYPE_ECDSA_PRIME256V1_SIGNATURE_ALGORITHM_SHA_2_384 + - CSRSUITE_X509_KEY_TYPE_ECDSA_PRIME256V1_SIGNATURE_ALGORITHM_SHA_2_512 + - CSRSUITE_X509_KEY_TYPE_ECDSA_SECP384R1_SIGNATURE_ALGORITHM_SHA_2_256 + - CSRSUITE_X509_KEY_TYPE_ECDSA_SECP384R1_SIGNATURE_ALGORITHM_SHA_2_384 + - CSRSUITE_X509_KEY_TYPE_ECDSA_SECP384R1_SIGNATURE_ALGORITHM_SHA_2_512 + - CSRSUITE_X509_KEY_TYPE_ECDSA_SECP521R1_SIGNATURE_ALGORITHM_SHA_2_256 + - CSRSUITE_X509_KEY_TYPE_ECDSA_SECP521R1_SIGNATURE_ALGORITHM_SHA_2_384 + - CSRSUITE_X509_KEY_TYPE_ECDSA_SECP521R1_SIGNATURE_ALGORITHM_SHA_2_512 + - CSRSUITE_X509_KEY_TYPE_EDDSA_ED25519 + type: string + org: + description: Org is the name of the organization requesting the CSR. + type: string + orgUnit: + description: OrgUnit specifies the organizational unit (like department or division) within the organization. + type: string + san: + description: Subject Alternative Names contains additional hostnames or IP addresses covered by the CSR. + properties: + dns: + description: Dns contains a list of DNS names that can be used to access the server. + items: + type: string + type: array + emails: + description: Emails consists of email addresses that should be associated with the certificate. + items: + type: string + type: array + ips: + description: Ips includes IP addresses that the certificate should validate. + items: + type: string + type: array + uris: + description: Uris lists specific URIs that the certificate will authenticate. + items: + type: string + type: array + type: object + state: + description: State represents the state or province where the organization is located. + type: string + type: object + issuerRef: + description: Reference to a CertManager issuer that must be used to sign nodes certificates. + type: string + skipVerify: + description: Skip certificate verification. + type: boolean + trustBundle: + description: |- + Reference to configMap that contains a CA certificate that is used to verify the node certificate + when certificates are not managed by EDA. + type: string + type: object + type: object + type: object + type: object +served: true +storage: true +subresources: + status: {} diff --git a/static/resources/thresholds.oam.eda.nokia.com/v1alpha1.yaml b/static/resources/25.4.2/thresholds.oam.eda.nokia.com/v1alpha1.yaml similarity index 100% rename from static/resources/thresholds.oam.eda.nokia.com/v1alpha1.yaml rename to static/resources/25.4.2/thresholds.oam.eda.nokia.com/v1alpha1.yaml diff --git a/static/resources/25.4.2/thresholds.platformmetrics.eda.nokia.com/v1.yaml b/static/resources/25.4.2/thresholds.platformmetrics.eda.nokia.com/v1.yaml new file mode 100644 index 0000000..0693102 --- /dev/null +++ b/static/resources/25.4.2/thresholds.platformmetrics.eda.nokia.com/v1.yaml @@ -0,0 +1,37 @@ +name: v1 +schema: + openAPIV3Schema: + description: Threshold is the Schema for the thresholds API + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + description: ThresholdSpec defines the desired state of Threshold + properties: + foo: + description: Foo is an example field of Threshold. Edit threshold_types.go to remove/update + type: string + type: object + status: + description: ThresholdStatus defines the observed state of Threshold + type: object + type: object +served: true +storage: true +subresources: + status: {} diff --git a/static/resources/25.4.2/topobreakouts.core.eda.nokia.com/v1.yaml b/static/resources/25.4.2/topobreakouts.core.eda.nokia.com/v1.yaml new file mode 100644 index 0000000..47dc96b --- /dev/null +++ b/static/resources/25.4.2/topobreakouts.core.eda.nokia.com/v1.yaml @@ -0,0 +1,65 @@ +name: v1 +schema: + openAPIV3Schema: + description: TopoBreakout is the Schema for the topobreakouts API + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + description: TopoBreakoutSpec defines the desired state of TopoBreakout + properties: + channels: + description: The number of breakout channels to create + maximum: 8 + minimum: 1 + type: integer + interface: + description: A list of normalized parent interface/port + items: + type: string + type: array + node: + description: Reference to a list of TopoNodes where the parent interfaces are to be broken out + items: + type: string + type: array + speed: + description: The speed of each breakout channel + enum: + - 800G + - 400G + - 200G + - 100G + - 50G + - 40G + - 25G + - 10G + type: string + required: + - channels + - node + - speed + type: object + status: + description: TopoBreakoutStatus defines the observed state of TopoBreakout + type: object + type: object +served: true +storage: true +subresources: + status: {} diff --git a/static/resources/25.4.2/topolinkmonitors.topologies.eda.nokia.com/v1alpha1.yaml b/static/resources/25.4.2/topolinkmonitors.topologies.eda.nokia.com/v1alpha1.yaml new file mode 100644 index 0000000..9a8aaa1 --- /dev/null +++ b/static/resources/25.4.2/topolinkmonitors.topologies.eda.nokia.com/v1alpha1.yaml @@ -0,0 +1,33 @@ +name: v1alpha1 +schema: + openAPIV3Schema: + description: TopoLinkMonitor is the Schema for the topolinkmonitors API + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + description: TopoLinkMonitorSpec triggers the monitoring of TopoLinks. + type: object + status: + description: TopoLinkMonitorStatus defines the observed state of TopoLinkMonitor. + type: object + type: object +served: true +storage: true +subresources: + status: {} diff --git a/static/resources/25.4.2/topolinks.core.eda.nokia.com/v1.yaml b/static/resources/25.4.2/topolinks.core.eda.nokia.com/v1.yaml new file mode 100644 index 0000000..de70203 --- /dev/null +++ b/static/resources/25.4.2/topolinks.core.eda.nokia.com/v1.yaml @@ -0,0 +1,132 @@ +name: v1 +schema: + openAPIV3Schema: + description: TopoLink is the Schema for the topolinks API + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + description: |- + TopoLink represents a logical link between two TopoNodes. It may include more than one physical link, being used to represent a LAG or multihomed link. + To create a point to point link with a single interface on both sides use a single link property. + To create a point to point link with a LAG configured on both side, use two links with matching nodes. + A multihomed LAG is created by using two or more links where the A side and/or B side can be different. + Creating a link with only A specified will create an edge interface. + properties: + links: + description: Define the set of physical links making up this TopoLink. + items: + properties: + local: + description: Local, or "A" endpoint of the link. + properties: + interface: + description: Normalized name of the interface/port, e.g. ethernet-1-1. + type: string + interfaceResource: + description: Reference to a Interface. + type: string + node: + description: Reference to a TopoNode. + type: string + required: + - interfaceResource + - node + type: object + remote: + description: Remote, or "B" endpoint of the link. + properties: + interface: + description: Normalized name of the interface/port, e.g. ethernet-1-1. + type: string + interfaceResource: + description: Reference to a Interface. + type: string + node: + description: Reference to a TopoNode. + type: string + required: + - interfaceResource + - node + type: object + speed: + description: Speed of the link. + enum: + - 800G + - 400G + - 200G + - 100G + - 50G + - 40G + - 25G + - 10G + - 2.5G + - 1G + - 100M + type: string + type: + description: |- + Specify the type of link. + If type is set to edge, topology information for the remote device can be set; when doing so the Remote Node can be set as the hostname of the remote device and Remote Interface as the remote interface name in the device specific format, e.g. eth0. + enum: + - edge + - interSwitch + - loopback + type: string + required: + - local + - type + type: object + minItems: 1 + type: array + required: + - links + type: object + status: + description: TopoLinkStatus defines the observed state of TopoLink + properties: + members: + description: List of members present on the TopoLink. + items: + description: MemberStatus defines the state of each member of a TopoLink + properties: + interface: + description: Reference to an Interface + type: string + node: + description: Reference to a TopoNode + type: string + operationalState: + description: Indicates the operational state of the TopoLink member. + type: string + required: + - node + - operationalState + type: object + type: array + operationalState: + description: Indicates the aggregate operational state of the TopoLink. + type: string + required: + - operationalState + type: object + type: object +served: true +storage: true +subresources: + status: {} diff --git a/static/resources/25.4.2/topolinkstates.topologies.eda.nokia.com/v1alpha1.yaml b/static/resources/25.4.2/topolinkstates.topologies.eda.nokia.com/v1alpha1.yaml new file mode 100644 index 0000000..60f86d7 --- /dev/null +++ b/static/resources/25.4.2/topolinkstates.topologies.eda.nokia.com/v1alpha1.yaml @@ -0,0 +1,107 @@ +name: v1alpha1 +schema: + openAPIV3Schema: + description: TopoLinkState is the Schema for the topolinkstates API + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + description: |- + TopoLinkStateSpec represents a logical link between two TopoNodes. It may include more than one physical link, being used to represent a LAG or multihomed link. + To create a point to point link with a single interface on both sides use a single link property. + To create a point to point link with a LAG configured on both side, use two links with matching nodes. + A multihomed LAG is created by using two or more links where the A side and/or B side can be different. + Creating a link with only A specified will create an edge interface. + properties: + links: + description: Define the set of physical links making up this TopoLink. + items: + properties: + local: + description: Local, or "A" endpoint of the link. + properties: + interface: + description: Normalized name of the interface/port, e.g. ethernet-1-1. + type: string + interfaceResource: + description: Reference to a Interface. + type: string + node: + description: Reference to a TopoNode. + type: string + required: + - interfaceResource + - node + type: object + remote: + description: Remote, or "B" endpoint of the link. + properties: + interface: + description: Normalized name of the interface/port, e.g. ethernet-1-1. + type: string + interfaceResource: + description: Reference to a Interface. + type: string + node: + description: Reference to a TopoNode. + type: string + required: + - interfaceResource + - node + type: object + speed: + description: Speed of the link. + enum: + - 800G + - 400G + - 200G + - 100G + - 50G + - 40G + - 25G + - 10G + - 2.5G + - 1G + - 100M + type: string + type: + description: |- + Specify the type of link. + If type is set to edge, topology information for the remote device can be set; when doing so the Remote Node can be set as the hostname of the remote device and Remote Interface as the remote interface name in the device specific format, e.g. eth0. + enum: + - edge + - interSwitch + - loopback + type: string + required: + - local + - type + type: object + minItems: 1 + type: array + required: + - links + type: object + status: + description: TopoLinkStatus defines the observed state of TopoLink + type: object + type: object +served: true +storage: true +subresources: + status: {} diff --git a/static/resources/25.4.2/topologies.core.eda.nokia.com/v1.yaml b/static/resources/25.4.2/topologies.core.eda.nokia.com/v1.yaml new file mode 100644 index 0000000..5596010 --- /dev/null +++ b/static/resources/25.4.2/topologies.core.eda.nokia.com/v1.yaml @@ -0,0 +1,332 @@ +name: v1 +schema: + openAPIV3Schema: + description: Topology is the Schema for the topology API + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + description: TopologySpec defines the desired state of Topology + properties: + breakouts: + description: Describe the set of TopoBreakout resources in the Topology + items: + description: TopoBreakout is the Schema for the topobreakouts API + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + description: TopoBreakoutSpec defines the desired state of TopoBreakout + properties: + channels: + description: The number of breakout channels to create + maximum: 8 + minimum: 1 + type: integer + interface: + description: A list of normalized parent interface/port + items: + type: string + type: array + node: + description: Reference to a list of TopoNodes where the parent interfaces are to be broken out + items: + type: string + type: array + speed: + description: The speed of each breakout channel + enum: + - 800G + - 400G + - 200G + - 100G + - 50G + - 40G + - 25G + - 10G + type: string + required: + - channels + - node + - speed + type: object + status: + description: TopoBreakoutStatus defines the observed state of TopoBreakout + type: object + type: object + type: array + links: + description: Describe the set of TopoLink resources in the Topology + items: + properties: + encapType: + default: "null" + description: Enable or disable VLAN tagging on Interfaces created by the TopoLink + enum: + - "null" + - dot1q + type: string + labels: + additionalProperties: + type: string + description: Labels to assign to the TopoLink + type: object + x-kubernetes-preserve-unknown-fields: true + name: + description: The name of the TopoLink + type: string + spec: + description: Specification of the TopoLink + properties: + links: + description: Define the set of physical links making up this TopoLink. + items: + properties: + local: + description: Local, or "A" endpoint of the link. + properties: + interface: + description: Normalized name of the interface/port, e.g. ethernet-1-1. + type: string + interfaceResource: + description: Reference to a Interface. + type: string + node: + description: Reference to a TopoNode. + type: string + required: + - interfaceResource + - node + type: object + remote: + description: Remote, or "B" endpoint of the link. + properties: + interface: + description: Normalized name of the interface/port, e.g. ethernet-1-1. + type: string + interfaceResource: + description: Reference to a Interface. + type: string + node: + description: Reference to a TopoNode. + type: string + required: + - interfaceResource + - node + type: object + speed: + description: Speed of the link. + enum: + - 800G + - 400G + - 200G + - 100G + - 50G + - 40G + - 25G + - 10G + - 2.5G + - 1G + - 100M + type: string + type: + description: |- + Specify the type of link. + If type is set to edge, topology information for the remote device can be set; when doing so the Remote Node can be set as the hostname of the remote device and Remote Interface as the remote interface name in the device specific format, e.g. eth0. + enum: + - edge + - interSwitch + - loopback + type: string + required: + - local + - type + type: object + minItems: 1 + type: array + required: + - links + type: object + required: + - encapType + - name + - spec + type: object + type: array + nodes: + description: Describe the set of TopoNode resources in the Topology + items: + properties: + labels: + additionalProperties: + type: string + description: Labels to assign to the TopoNode + type: object + x-kubernetes-preserve-unknown-fields: true + name: + description: The name of the TopoNode + type: string + spec: + description: Specification of the TopoNode + properties: + component: + description: |- + List of components within the TopoNode. + Used to define the type and location of linecards, fabrics (SFM), media adapter cards (MDA) and control cards (CPM). + items: + properties: + kind: + description: The kind of Component, e.g. lineCard. + enum: + - lineCard + - fabric + - mda + - connector + - xiom + - powerShelf + - powerModule + type: string + slot: + description: |- + The slot this Component resides in, unset for Components that do not have a slot or ID. + e.g. 1 would denote the linecard slot 1, 1/1 would denote linecard slot 1 mda slot 1. + type: string + type: + description: Denotes the type of hardware being provisioned, e.g. xcm-x20. + type: string + required: + - kind + - type + type: object + type: array + license: + description: Reference to a ConfigMap containing a license for the TopoNode. Overrides the license set in the referenced NodeProfile, if present. + type: string + macAddress: + description: |- + MAC address to associate with this TopoNode. + Typically the chassis MAC address, optionally sent by a node in DHCP requests. + Not required when a TopoNode is not being bootstrapped by EDA, or is simulated through CX. + type: string + nodeProfile: + description: Reference to a NodeProfile to use with this TopoNode. + type: string + npp: + description: Options relating to NPP interactions with the node. + properties: + mode: + default: normal + description: |- + The mode in which this TopoNode is functioning. + "normal" (the default) + indicates that NPP is expecting an endpoint to exist, and will accept and confirm changes only if the endpoint + accepts them. + "maintenance" + indicates that no changes will be accepted for the TopoNode, irrespective if the endpoint is up and reachable. + The exception is if an upgrade is occuring, in which case changes will be accepted. + "null" + indicates that changes will be accepted from CRs and no NPP will be spun up. NPP validation will not occur. + This may be useful in playground mode to avoid spinning up of 1000s of NPPs. + "emulate" + indicates that changes will be accepted at the NPP level, without pushing them to a endpoint. NPP validation + still occurs. If no IP address is present, we also run in emulate mode. + enum: + - normal + - maintenance + - "null" + - emulate + type: string + type: object + onBoarded: + default: false + description: |- + Indicates if this TopoNode has been bootstrapped or is reachable via configured credentials. Set by BootstrapServer when it completes onboarding functions for a given TopoNode. + Most applications ignore TopoNodes that have not been onboarded yet. + type: boolean + operatingSystem: + default: srl + description: Operating system running on this TopoNode, e.g. srl. + enum: + - srl + - sros + - nxos + type: string + platform: + description: Platform type of this TopoNode, e.g. 7220 IXR-D3L. + type: string + productionAddress: + description: |- + Production address of this TopoNode - this is the address the real, production instance of this TopoNode uses. + If left blank, an address will be allocated from the management IP pool specified in the referenced NodeProfile. + If this TopoNode is not bootstrapped by EDA this field must be provided. + properties: + ipv4: + description: The IPv4 production address + type: string + ipv6: + description: The IPv6 production address + type: string + type: object + serialNumber: + description: |- + Serial number of this TopoNode, optionally sent by a node in DHCP requests. + Not required when a TopoNode is not being bootstrapped by EDA, or is simulated through CX. + type: string + systemInterface: + description: Name of the Interface resource representing the primary loopback on the TopoNode. + type: string + version: + description: Sets the software version of this TopoNode, e.g. 24.7.1 (for srl), or 24.7.r1 (for sros). + type: string + required: + - nodeProfile + - operatingSystem + - platform + - version + type: object + required: + - name + - spec + type: object + type: array + required: + - nodes + type: object + status: + description: TopologyStatus defines the observed state of Topology + type: object + type: object +served: true +storage: true +subresources: + status: {} diff --git a/static/resources/25.4.2/topologies.topologies.eda.nokia.com/v1alpha1.yaml b/static/resources/25.4.2/topologies.topologies.eda.nokia.com/v1alpha1.yaml new file mode 100644 index 0000000..19a65db --- /dev/null +++ b/static/resources/25.4.2/topologies.topologies.eda.nokia.com/v1alpha1.yaml @@ -0,0 +1,78 @@ +name: v1alpha1 +schema: + openAPIV3Schema: + description: Topology is the Schema for the topology state API + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + description: TopologySpec defines the desired state of Topology + properties: + enabled: + description: Enable or disable the generation of the status of this topology + type: boolean + endpointSubtitle: + description: Override the subtitle to show for endpoints in the topology + type: string + linkSubtitle: + description: Override the subtitle to show for links in the topology + type: string + nodeSubtitle: + description: Override the subtitle to show for nodes in the topology + type: string + overlays: + description: The set of overlays supported with this topology + items: + properties: + enabled: + description: Enable or disable the generation of the status of this overlay + type: boolean + key: + description: |- + A unique key for identifying this overlay within the topology. This is used internally + only. + type: string + required: + - enabled + - key + type: object + type: array + uiDescription: + description: A description of the topology to expose in the UI + type: string + uiDescriptionKey: + description: The translation key for the description of the topology to expose in the UI + type: string + uiName: + description: The name of the topology to expose in the UI + type: string + uiNameKey: + description: The translation key for the name of the topology to expose in the UI + type: string + required: + - enabled + - overlays + type: object + status: + description: TopologyStatus defines the observed state of Topology + type: object + type: object +served: true +storage: true +subresources: + status: {} diff --git a/static/resources/25.4.2/topologygroupings.topologies.eda.nokia.com/v1alpha1.yaml b/static/resources/25.4.2/topologygroupings.topologies.eda.nokia.com/v1alpha1.yaml new file mode 100644 index 0000000..22853ac --- /dev/null +++ b/static/resources/25.4.2/topologygroupings.topologies.eda.nokia.com/v1alpha1.yaml @@ -0,0 +1,79 @@ +name: v1alpha1 +schema: + openAPIV3Schema: + description: TopologyGrouping is the Schema for the topology grouping API + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + description: TopologyGroupingSpec defines the desired state of TopologyGrouping + properties: + groupSelectors: + description: The set of selectors for assigning nodes to groups + items: + properties: + group: + description: The group to assign to nodes that match the selector. + type: string + nodeSelector: + description: Label selector to use to match nodes that should be assigned to this group. + items: + type: string + type: array + required: + - group + type: object + type: array + tierSelectors: + description: The set of selectors for assigning nodes to tiers + items: + properties: + nodeSelector: + description: Label selector to use to match nodes that should be assigned to this tier. + items: + type: string + type: array + tier: + description: The tier to assign to nodes that match the selector. + format: int32 + type: integer + required: + - tier + type: object + type: array + uiDescription: + description: A description of the topology grouping to expose in the UI + type: string + uiDescriptionKey: + description: The translation key for the description of the topology grouping to expose in the UI + type: string + uiName: + description: The name of the topology grouping to expose in the UI + type: string + uiNameKey: + description: The translation key for the name of the topology grouping to expose in the UI + type: string + type: object + status: + description: TopologyGroupingStatus defines the observed state of TopologyGrouping + type: object + type: object +served: true +storage: true +subresources: + status: {} diff --git a/static/resources/25.4.2/toponodes.core.eda.nokia.com/v1.yaml b/static/resources/25.4.2/toponodes.core.eda.nokia.com/v1.yaml new file mode 100644 index 0000000..933d7cd --- /dev/null +++ b/static/resources/25.4.2/toponodes.core.eda.nokia.com/v1.yaml @@ -0,0 +1,217 @@ +additionalPrinterColumns: + - jsonPath: .spec.platform + name: Platform + type: string + - jsonPath: .spec.version + name: Version + type: string + - jsonPath: .spec.operatingSystem + name: OS + type: string + - jsonPath: .spec.onBoarded + name: OnBoarded + type: boolean + - jsonPath: .spec.npp.mode + name: Mode + type: string + - jsonPath: .status.npp-state + name: NPP + type: string + - jsonPath: .status.node-state + name: Node + type: string + - jsonPath: .metadata.creationTimestamp + name: Age + type: date +name: v1 +schema: + openAPIV3Schema: + description: TopoNode is the Schema for the toponodes API + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + description: A managed network element is represented via a TopoNode resource, describing characteristics of a specific element in the topology. + properties: + component: + description: |- + List of components within the TopoNode. + Used to define the type and location of linecards, fabrics (SFM), media adapter cards (MDA) and control cards (CPM). + items: + properties: + kind: + description: The kind of Component, e.g. lineCard. + enum: + - lineCard + - fabric + - mda + - connector + - xiom + - powerShelf + - powerModule + type: string + slot: + description: |- + The slot this Component resides in, unset for Components that do not have a slot or ID. + e.g. 1 would denote the linecard slot 1, 1/1 would denote linecard slot 1 mda slot 1. + type: string + type: + description: Denotes the type of hardware being provisioned, e.g. xcm-x20. + type: string + required: + - kind + - type + type: object + type: array + license: + description: Reference to a ConfigMap containing a license for the TopoNode. Overrides the license set in the referenced NodeProfile, if present. + type: string + macAddress: + description: |- + MAC address to associate with this TopoNode. + Typically the chassis MAC address, optionally sent by a node in DHCP requests. + Not required when a TopoNode is not being bootstrapped by EDA, or is simulated through CX. + type: string + nodeProfile: + description: Reference to a NodeProfile to use with this TopoNode. + type: string + npp: + description: Options relating to NPP interactions with the node. + properties: + mode: + default: normal + description: |- + The mode in which this TopoNode is functioning. + "normal" (the default) + indicates that NPP is expecting an endpoint to exist, and will accept and confirm changes only if the endpoint + accepts them. + "maintenance" + indicates that no changes will be accepted for the TopoNode, irrespective if the endpoint is up and reachable. + The exception is if an upgrade is occuring, in which case changes will be accepted. + "null" + indicates that changes will be accepted from CRs and no NPP will be spun up. NPP validation will not occur. + This may be useful in playground mode to avoid spinning up of 1000s of NPPs. + "emulate" + indicates that changes will be accepted at the NPP level, without pushing them to a endpoint. NPP validation + still occurs. If no IP address is present, we also run in emulate mode. + enum: + - normal + - maintenance + - "null" + - emulate + type: string + type: object + onBoarded: + default: false + description: |- + Indicates if this TopoNode has been bootstrapped or is reachable via configured credentials. Set by BootstrapServer when it completes onboarding functions for a given TopoNode. + Most applications ignore TopoNodes that have not been onboarded yet. + type: boolean + operatingSystem: + default: srl + description: Operating system running on this TopoNode, e.g. srl. + enum: + - srl + - sros + - nxos + type: string + platform: + description: Platform type of this TopoNode, e.g. 7220 IXR-D3L. + type: string + productionAddress: + description: |- + Production address of this TopoNode - this is the address the real, production instance of this TopoNode uses. + If left blank, an address will be allocated from the management IP pool specified in the referenced NodeProfile. + If this TopoNode is not bootstrapped by EDA this field must be provided. + properties: + ipv4: + description: The IPv4 production address + type: string + ipv6: + description: The IPv6 production address + type: string + type: object + serialNumber: + description: |- + Serial number of this TopoNode, optionally sent by a node in DHCP requests. + Not required when a TopoNode is not being bootstrapped by EDA, or is simulated through CX. + type: string + systemInterface: + description: Name of the Interface resource representing the primary loopback on the TopoNode. + type: string + version: + description: Sets the software version of this TopoNode, e.g. 24.7.1 (for srl), or 24.7.r1 (for sros). + type: string + required: + - nodeProfile + - operatingSystem + - platform + - version + type: object + status: + description: TopoNodeStatus defines the observed state of TopoNode + properties: + node-details: + description: Address and port used to connected to the node. + type: string + node-state: + description: |- + The current state of the connection between NPP and the node. + "TryingToConnect" + NPP is attempting to connect and establish connectivity to the node + "WaitingForInitialCfg" + NPP is connected to the node but waiting for intial config to push + "Committing" + NPP is in progress of commiting + "RetryingCommit" + NPP lost sync to node and is re-pushing current config + "Synced" + NPP is in fully synced state + "Standby" + NPP is running in standby mode. This state is only used on standby clusters with georedundancy. + "NoIpAddress" + NPP is running but there is no IP address for node. This only happen in sim setups when + CX has not created the simulated node, or the simulated pod failed to launch due to image error. + type: string + npp-details: + description: NPP address and port for this TopoNode. + type: string + npp-pod: + description: NPP pod name + type: string + npp-state: + description: The current state of the connection between ConfigEngine and NPP. + type: string + operatingSystem: + description: Operational operating system running on this TopoNode, e.g. srl, sros. + type: string + platform: + description: Operational platform type of this TopoNode, e.g. 7220 IXR-D3L. + type: string + simulate: + description: Simulate using CX - if true CX is reponsible for generating the TargetNode resource. + type: boolean + version: + description: Operational software version of this TopoNode, e.g. 24.7.1 (for srl), or 24.7.r1 (for sros). + type: string + type: object + type: object +served: true +storage: true +subresources: + status: {} diff --git a/static/resources/25.4.2/trafficrateoverlays.topologies.eda.nokia.com/v1alpha1.yaml b/static/resources/25.4.2/trafficrateoverlays.topologies.eda.nokia.com/v1alpha1.yaml new file mode 100644 index 0000000..0670216 --- /dev/null +++ b/static/resources/25.4.2/trafficrateoverlays.topologies.eda.nokia.com/v1alpha1.yaml @@ -0,0 +1,69 @@ +name: v1alpha1 +schema: + openAPIV3Schema: + description: TrafficRateOverlay is the Schema for trafficrateoverlays + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + description: TrafficRateOverlaySpec defines the desired state of TrafficRateOverlay + properties: + enabled: + description: Enable or disable the generation of the status of this overlay + type: boolean + topology: + description: Reference to the topology that this overlay is extending. + properties: + group: + description: The group of the application which published the topology this overlay is extending. + type: string + name: + description: The name of the resource which published the topology this overlay is extending. + type: string + version: + description: The version of the application which published the topology this overlay is extending. + type: string + required: + - group + - name + - version + type: object + uiDescription: + description: A description of the overlay to expose in the UI + type: string + uiDescriptionKey: + description: The translation key for the description of the overlay to expose in the UI + type: string + uiName: + description: The name of the overlay to expose in the UI + type: string + uiNameKey: + description: The translation key for the name of the overlay to expose in the UI + type: string + required: + - enabled + - topology + type: object + status: + description: TrafficRateOverlayStatus defines the observed state of TrafficRateOverlay + type: object + type: object +served: true +storage: true +subresources: + status: {} diff --git a/static/resources/25.4.2/transactionresults.core.eda.nokia.com/v1.yaml b/static/resources/25.4.2/transactionresults.core.eda.nokia.com/v1.yaml new file mode 100644 index 0000000..7eac55e --- /dev/null +++ b/static/resources/25.4.2/transactionresults.core.eda.nokia.com/v1.yaml @@ -0,0 +1,210 @@ +additionalPrinterColumns: + - jsonPath: .spec.result + name: Result + type: string + - jsonPath: .metadata.creationTimestamp + name: Age + type: date + - jsonPath: .spec.dryRun + name: DryRun + type: string + - jsonPath: .spec.description + name: Description + type: string +name: v1 +schema: + openAPIV3Schema: + description: TransactionResult is the Schema for the transactionresults API + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + description: TransactionResultSpec defines the desired state of TransactionResult + properties: + applicationErrors: + description: Any errors generated by applications run in this transaction. + items: + properties: + errors: + description: Errors returned by this application, if any. + items: + type: string + type: array + gvk: + description: Group, version, kind of the application. + type: string + name: + description: Name of the application. + type: string + namespace: + description: Namespace of the application. + type: string + script: + description: Application execution information. + properties: + executionTimeUs: + description: Execution time in microseconds. + type: integer + output: + description: Any output from the application. + type: string + type: object + required: + - gvk + - name + - namespace + - script + type: object + type: array + bundledTransactionId: + description: The transaction Id of the transaction that this transaction is bundled with, if any. + type: integer + commit: + description: The git commit hash of the transaction + type: string + description: + description: The description passed through from the input transaction, if any. + type: string + dryRun: + description: Indicates if the transaction was a dry run. + type: boolean + executionSummary: + description: A summary of this transaction + properties: + appSummary: + description: Summary of applications run in this transaction. + items: + properties: + gvk: + description: Group, version, kind of the application. + type: string + instancesRun: + description: The number of resources of this kind that were processed. + type: integer + totalExecutionTimeMs: + description: Total execution time in milliseconds. + type: integer + required: + - gvk + - instancesRun + - totalExecutionTimeMs + type: object + type: array + engineTimeMs: + description: The time spent in the engine computing the transaction in milliseconds. + type: integer + inputResourceCount: + description: The number of input resources processed in this transaction. + type: integer + publishTimeMs: + description: The time spent publishing changes to Kubernetes. + type: integer + pushTimeMs: + description: The time spent pushing changes to targets. + type: integer + saveTimeMs: + description: The time spent saving changes to git. + type: integer + targetsModified: + description: Targets with configuration changes in this transaction. + items: + properties: + name: + description: The name of a target that generated an error. + type: string + namespace: + description: Namespace of the application. + type: string + required: + - name + - namespace + type: object + type: array + targetsModifiedCount: + description: The number of targets with configuration changes in this transaction. + type: integer + totalTimeMs: + description: The total time spent executing the transaction. Due to parallelism, this may be less than the sum of the other times. + type: integer + type: object + generalErrors: + description: Any errors that aren't specific or can't be mapped to an individual application. + items: + type: string + type: array + inputResources: + description: The set of input resources that were processed in the transaction. + items: + properties: + action: + description: Action on the resource. + type: string + gvk: + description: Group, version, kind of the resource. + type: string + name: + description: Name of the resource. + type: string + namespace: + description: Namespace of the resource. + type: string + required: + - gvk + - name + - namespace + type: object + type: array + result: + description: The transaction result. + type: string + targetErrors: + description: Any errors generated by targets in this transaction. + items: + properties: + errors: + description: Errors returned by this target. + items: + type: string + type: array + name: + description: The name of a target that generated an error. + type: string + namespace: + description: Namespace of the application. + type: string + required: + - name + - namespace + type: object + type: array + timestamp: + description: The timestamp when the transaction finished + format: date-time + type: string + username: + description: The username of the user that initiated the transaction + type: string + type: object + status: + description: TransactionResultStatus defines the observed state of TransactionResult + type: object + type: object +served: true +storage: true +subresources: + status: {} diff --git a/static/resources/25.4.2/transactions.core.eda.nokia.com/v1.yaml b/static/resources/25.4.2/transactions.core.eda.nokia.com/v1.yaml new file mode 100644 index 0000000..82032b5 --- /dev/null +++ b/static/resources/25.4.2/transactions.core.eda.nokia.com/v1.yaml @@ -0,0 +1,102 @@ +additionalPrinterColumns: + - jsonPath: .metadata.creationTimestamp + name: Age + type: date + - jsonPath: .status.result + name: Result + type: string +name: v1 +schema: + openAPIV3Schema: + description: Transaction is the Schema for the transactions API + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + description: TransactionSpec defines the desired state of Transaction + properties: + description: + description: A user provided description of the transaction. + type: string + dryRun: + description: Indicates the system should dry run the transaction without actually performing it. A transaction that is dry run will perform all steps other than pushing changes to endpoints. + type: boolean + items: + description: Items to include in this transaction. + items: + properties: + delete: + description: Delete is a reference to a GVK and name of a resource to delete. + properties: + gvk: + description: GVK is the Group, Version, Kind of the resource to delete. + properties: + group: + type: string + kind: + type: string + version: + type: string + required: + - kind + - version + type: object + name: + description: Name is the name of the resource to delete. + type: string + namespace: + description: Namespace is the namespace of the resource to delete. + type: string + required: + - gvk + - name + type: object + replace: + description: Replace is an unstructured, "free-form" Kubernetes resource, complete with GVK, metadata and spec. + type: object + x-kubernetes-embedded-resource: true + x-kubernetes-preserve-unknown-fields: true + type: object + minItems: 1 + type: array + keepDetailedLog: + description: Indicates the system should keep a detailed log of the transaction. + type: boolean + required: + - items + type: object + status: + description: TransactionStatus defines the observed state of Transaction + properties: + errors: + description: Errors is a list of error messages encountered during the transaction, if any. + items: + type: string + type: array + result: + description: Result is the overall status of the transaction. + type: string + transactionId: + description: Reference to the transaction id storing detailed information about the transaction. + type: integer + type: object + type: object +served: true +storage: true +subresources: + status: {} diff --git a/static/resources/25.4.2/udpproxies.core.eda.nokia.com/v1.yaml b/static/resources/25.4.2/udpproxies.core.eda.nokia.com/v1.yaml new file mode 100644 index 0000000..c8ade48 --- /dev/null +++ b/static/resources/25.4.2/udpproxies.core.eda.nokia.com/v1.yaml @@ -0,0 +1,76 @@ +additionalPrinterColumns: + - jsonPath: .spec.proxyPort + name: Proxy Port + type: integer + - jsonPath: .spec.destHost + name: Dest Host + type: string + - jsonPath: .spec.destPort + name: Dest Port + type: integer +name: v1 +schema: + openAPIV3Schema: + description: UdpProxy is the Schema for the UDP proxy API + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + description: UdpProxySpec defines the desired state of UdpProxy + properties: + bufferSize: + description: |- + The proxy will use a buffer of this size for all datagrams it receives and this must be sized + to accommodate the largest datagrams expected + maximum: 65535 + minimum: 64 + type: integer + destHost: + description: The destination hostname or IP address to forward the datagrams to + type: string + destPort: + description: The destination UDP port to forward the datagrams to + maximum: 65535 + minimum: 1 + type: integer + idleTimeout: + description: |- + The proxy will listen for responses from the destination and forward it back to the source + of the datagram until there is no traffic at all for at least the idle timeout in seconds + minimum: 1 + type: integer + proxyPort: + description: The UDP port on which to listen for datagrams and then proxy to the destination + maximum: 65535 + minimum: 1 + type: integer + required: + - bufferSize + - destHost + - destPort + - idleTimeout + - proxyPort + type: object + status: + description: UdpProxyStatus defines the observed state of UdpProxy + type: object + type: object +served: true +storage: true +subresources: + status: {} diff --git a/static/resources/25.4.2/userdeployments.aaa.eda.nokia.com/v1alpha1.yaml b/static/resources/25.4.2/userdeployments.aaa.eda.nokia.com/v1alpha1.yaml new file mode 100644 index 0000000..8a4c374 --- /dev/null +++ b/static/resources/25.4.2/userdeployments.aaa.eda.nokia.com/v1alpha1.yaml @@ -0,0 +1,33 @@ +name: v1alpha1 +schema: + openAPIV3Schema: + description: UserDeployment is the Schema for the userdeployments API + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + description: UserDeploymentSpec defines the desired state of UserDeployment + type: object + status: + description: UserDeploymentStatus defines the observed state of UserDeployment + type: object + type: object +served: true +storage: true +subresources: + status: {} diff --git a/static/resources/25.4.2/virtualnetworks.services.eda.nokia.com/v1alpha1.yaml b/static/resources/25.4.2/virtualnetworks.services.eda.nokia.com/v1alpha1.yaml new file mode 100644 index 0000000..e188e29 --- /dev/null +++ b/static/resources/25.4.2/virtualnetworks.services.eda.nokia.com/v1alpha1.yaml @@ -0,0 +1,2055 @@ +additionalPrinterColumns: + - jsonPath: .status.operationalState + name: OperationalState + type: string + - jsonPath: .status.lastChange + name: LastChange + type: string +name: v1alpha1 +schema: + openAPIV3Schema: + description: VirtualNetwork is the Schema for the virtualnetworks API + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + description: VirtualNetworkSpec defines the desired state of VirtualNetwork + properties: + bridgeDomains: + description: List of Subnets. [emits=BridgeDomain] + items: + properties: + name: + description: The name of the BridgeDomain. + type: string + spec: + description: Specification of the BridgeDomain + properties: + description: + description: The description of the BridgeDomain. + type: string + evi: + description: EVI to use for this BridgeDomain, can be optionally left blank to have it automatically allocated using the EVI Pool. + maximum: 65535 + minimum: 1 + type: integer + eviPool: + default: evi-pool + description: Reference to an EVI pool to use for allocations if EVI is left blank. + type: string + exportTarget: + description: Export route target in 'target:N:N' format, if not specified, the default value taken as "target:1:". + pattern: ^target.*$ + type: string + importTarget: + description: Import route target in 'target:N:N' format, if not specified, the default value taken as "target:1:". + pattern: ^target.*$ + type: string + l2proxyARPND: + description: Enables / Disabled Proxy ARP / Proxy ND. + properties: + dynamicLearning: + properties: + ageTime: + description: Aging timer value for the proxy entries in seconds. If not set, this indicates that the entries are never flushed. + maximum: 86400 + minimum: 60 + type: integer + enabled: + default: false + description: Enables or disables Dynamic Learning. + type: boolean + sendRefresh: + description: The interval determines the frequency at which the system generates three ARP Requests or Neighbor Solicitations with the intent to refresh the proxy entry. The refresh is sent within the age-time window. + maximum: 86400 + minimum: 120 + type: integer + type: object + ipDuplication: + properties: + enabled: + default: false + description: Enables or disables IP Duplication. + type: boolean + holdDownTime: + default: 9 + description: Time to wait in minutes from the moment an IP is declared duplicate to the time the IP is removed from the proxy ARP/ND table. + maximum: 60 + minimum: 2 + type: integer + monitoringWindow: + default: 3 + description: Monitoring window for detecting duplication on a given IP address in the proxy ARP/ND table. + maximum: 15 + minimum: 1 + type: integer + numMoves: + default: 5 + description: Number of moves in the proxy ARP/ND table that an IP is allowed within the monitoring-window. + maximum: 10 + minimum: 3 + type: integer + type: object + proxyARP: + default: false + description: Enables proxy ARP. + type: boolean + proxyND: + default: false + description: Enables proxy ND. + type: boolean + tableSize: + default: 250 + description: Maximum number of entries allowed in the proxy table of the bridge domain. + maximum: 8192 + minimum: 1 + type: integer + type: object + macAging: + default: 300 + description: Configurable aging time for dynamically learned mac addresses. + format: int32 + maximum: 86400 + minimum: 60 + type: integer + macDuplicationDetection: + description: Enable or disable MAC duplication detection and resolution mechanisms. + properties: + action: + default: StopLearning + description: Action to take on the subinterface upon detecting at least one mac addresses as duplicate on the subinterface. + enum: + - Blackhole + - OperDown + - StopLearning + type: string + enabled: + default: false + description: Enables or disables Mac Duplication Detection. + type: boolean + holdDownTime: + default: 9 + description: Time to wait in minutes from the moment a mac is declared duplicate to the mac is flushed from the bridge table. + maximum: 60 + minimum: 2 + type: integer + monitoringWindow: + default: 3 + description: Monitoring window in minutes for detecting duplication on a given mac address. + maximum: 15 + minimum: 1 + type: integer + numMoves: + default: 5 + description: Number of moves a mac is allowed within the monitoring-window, before it is declared duplicate. + minimum: 3 + type: integer + type: object + macLimit: + description: Sets the maximum number of MAC entries accepted in the bridge table. + format: int32 + type: integer + tunnelIndexPool: + default: tunnel-index-pool + description: Reference to a tunnel index pool to use for allocations. + type: string + type: + default: EVPNVXLAN + description: Select the type of BridgeDomain. Simple doesn't include any overlay control plane or dataplane properties (EVPN/VXLAN). EVPNVXLAN includes the properties needed to provision this BridgeDomain over an IP Fabric. + enum: + - SIMPLE + - EVPNVXLAN + type: string + vni: + description: VNI to use for this BridgeDomain, can be optionally left blank to have it allocated using the VNI Pool. + maximum: 16777215 + minimum: 1 + type: integer + vniPool: + default: vni-pool + description: Reference to a VNI pool to use for allocations if VNI is left blank. + type: string + type: object + required: + - name + - spec + type: object + type: array + bridgeInterfaces: + description: List of BridgeInterfaces. [emits=BridgeInterface] + items: + properties: + name: + description: The name of the BridgeInterface. + type: string + spec: + description: Specification of the BridgeInterface + properties: + bridgeDomain: + description: Reference to a BridgeDomain in which to attach the BridgeInterface. + type: string + description: + description: The description of the BridgeInterface. + type: string + egress: + description: Manages actions on traffic at Egress. + properties: + filters: + description: List of Filter references to use at egress. + items: + type: string + type: array + qosPolicy: + description: List of QoS Egress policy references to use at egress. + items: + type: string + type: array + type: object + ingress: + description: Manages actions on traffic at Ingress. + properties: + filters: + description: List of Filter references to use at ingress. + items: + type: string + type: array + qosPolicy: + description: List of QoS Ingress policy references to use at ingress. + items: + type: string + type: array + type: object + interface: + description: Reference to an Interface resource to attach this BridgeInterface. + type: string + l2MTU: + description: L2 MTU specifies the maximum sized Ethernet frame that can be transmitted on the subinterface. If a frame exceeds this size it is discarded. If the l2-mtu of the subinterface exceeds the port-mtu of the associated interface, the subinterface will remain operationally down. + maximum: 9500 + minimum: 1450 + type: integer + macDuplicationDetectionAction: + description: Override for Mac Duplication Detection action if enabled in the associated BridgeDomain. + enum: + - Blackhole + - OperDown + - StopLearning + - UseBridgeDomainAction + type: string + splitHorizonGroup: + description: Split Horizon Group to be used for this BridgeInterface. The subinterface within this BridgeInterface will be a member of this Split Horizon Group. + type: string + uplink: + description: The Uplink between your access breakout switch and your leaf switch. + properties: + egress: + description: Manages actions on traffic at Egress of the Local enpoint of the Uplink. + properties: + filters: + description: List of Filter references to use at egress. + items: + type: string + type: array + qosPolicy: + description: List of QoS Egress policy references to use at egress. + items: + type: string + type: array + type: object + ingress: + description: Manages actions on traffic at Ingress of the Local enpoint of the Uplink. + properties: + filters: + description: List of Filter references to use at ingress. + items: + type: string + type: array + qosPolicy: + description: List of QoS Ingress policy references to use at ingress. + items: + type: string + type: array + type: object + uplinkSelector: + description: Selects TopoLinks which connect a leaf switch to a breakout switch. This is the uplink between your access breakout switch and your leaf switch. There can only be a single TopoLink between the access breakout switch and the leaf switch, if more than one TopoLink is present between two devices the transaction will fail. + items: + type: string + type: array + uplinkVLANID: + default: pool + description: The VLAN ID to be utilized to isolate traffic from the VLAN on the access breakout switch to the leaf switch on the selected uplink TopoLink. + type: string + uplinkVLANPool: + description: A VLAN from this pool will be utilized to isolate traffic from the VLAN on the access breakout switch to the leaf switch on the selected uplink TopoLink. + type: string + type: object + vlanID: + description: Single value between 1-4094 support, ranges supported in the format x-y,x-y, or the special keyword null, any, untagged or pool for auto allocation. + type: string + required: + - bridgeDomain + - interface + - vlanID + type: object + required: + - name + - spec + type: object + type: array + irbInterfaces: + description: List of IRBInterfaces. [emits=IRBInterface] + items: + properties: + name: + description: The name of the IrbInterface. + type: string + spec: + description: Specification of the IrbInterface + properties: + anycastGatewayMAC: + description: The gateway MAC to use on the anycast address, if left empty the node will automatically assign one. + type: string + arpTimeout: + default: 14400 + description: Duration of time that dynamic ARP entries remain in the ARP cache before they expire. + format: int32 + type: integer + bfd: + description: Enable BFD on the IRBInterface. + properties: + desiredMinTransmitInt: + default: 1000000 + description: The minimum interval in microseconds between transmission of BFD control packets. + maximum: 100000000 + minimum: 10000 + type: integer + detectionMultiplier: + default: 3 + description: The number of packets that must be missed to declare this session as down. + maximum: 20 + minimum: 3 + type: integer + enabled: + default: false + description: Enables Biforward Detection. + type: boolean + minEchoReceiveInterval: + default: 1000000 + description: The minimum interval between echo packets the local node can receive. + maximum: 100000000 + minimum: 250000 + type: integer + requiredMinReceive: + default: 1000000 + description: The minimum interval in microseconds between received BFD control packets that this system should support. + maximum: 100000000 + minimum: 10000 + type: integer + required: + - enabled + type: object + bridgeDomain: + description: Reference to a BridgeDomain. + type: string + description: + description: The description of the IRBInterface. + type: string + egress: + description: Manages actions on traffic at Egress. + properties: + filters: + description: List of Filter references to use at egress. + items: + type: string + type: array + qosPolicy: + description: List of QoS Egress policy references to use at egress. + items: + type: string + type: array + type: object + evpnRouteAdvertisementType: + description: Controls the type of ARP/ND entries to advertise. + properties: + arpDynamic: + default: false + description: Advertise dynamic ARP entries. + type: boolean + arpStatic: + default: false + description: Advertise static ARP entries. + type: boolean + ndDynamic: + default: false + description: Advertise dynamic ND entries. + type: boolean + ndStatic: + default: false + description: Advertise static ND entries. + type: boolean + type: object + hostRoutePopulate: + description: Configures host route population based on ARP entries. + properties: + dynamic: + default: true + description: Create host routes out of dynamic ARP entries. + type: boolean + evpn: + default: false + description: Create host routes out of EVPN learned ARP entries. + type: boolean + static: + default: true + description: Create host routes out of static ARP entries. + type: boolean + type: object + ingress: + description: Manages actions on traffic at Ingress. + properties: + filters: + description: List of Filter references to use at ingress. + items: + type: string + type: array + qosPolicy: + description: List of QoS Ingress policy references to use at ingress. + items: + type: string + type: array + type: object + ipAddresses: + items: + properties: + ipv4Address: + description: IPv4 address in IP/mask form, e.g., 192.168.0.1/24. + properties: + ipPrefix: + description: Address and mask to use + type: string + primary: + description: Indicates which address to use as primary for broadcast + type: boolean + required: + - ipPrefix + type: object + ipv6Address: + description: IPv6 address in IP/mask form, e.g., fc00::1/120. + properties: + ipPrefix: + description: Address and mask to use + type: string + primary: + description: Indicates which address to use as primary for broadcast + type: boolean + required: + - ipPrefix + type: object + node: + description: Reference to a TopoNode resource, if not specified the IP address will be assigned to all nodes on which the IRB is deployed. If specified the IP address will be assigned to the specified node. + type: string + type: object + type: array + ipMTU: + default: 1500 + description: IP MTU for the IRBInterface [default=1500]. + maximum: 9486 + minimum: 1280 + type: integer + ipv6RouterAdvertisement: + properties: + currentHopLimit: + default: 64 + description: The current hop limit to advertise in the router advertisement messages. + format: int32 + maximum: 255 + minimum: 0 + type: integer + enabled: + default: false + description: Enable or disable IPv6 router advertisements. + type: boolean + ipMTU: + description: The IP MTU to advertise in the router advertisement messages. + format: int32 + maximum: 9486 + minimum: 1280 + type: integer + managedConfigurationFlag: + default: false + description: Enable DHCPv6 for address configuration (M-bit). + type: boolean + maxAdvertisementInterval: + default: 600 + description: Maximum time between router advertisements (in seconds). + format: int32 + maximum: 1800 + minimum: 4 + type: integer + minAdvertisementInterval: + default: 200 + description: Minimum time between router advertisements (in seconds). + format: int32 + maximum: 1350 + minimum: 3 + type: integer + otherConfigurationFlag: + default: false + description: Enable DHCPv6 for other configuration (O-bit). + type: boolean + prefixes: + description: IPv6 prefixes to advertise in router advertisements. + items: + description: IPv6Prefix defines the configuration for an IPv6 prefix advertisement. + properties: + autonomousFlag: + default: true + description: When this is set in the prefix information option hosts can use the prefix for stateless address autoconfiguration (SLAAC). + type: boolean + onLinkFlag: + default: true + description: When this is set in the prefix information option hosts can use the prefix for on-link determination. + type: boolean + preferredLifetime: + default: 604800 + description: The length of time in seconds (relative to the time the packet is sent) that addresses generated from the prefix via stateless address autoconfiguration remain preferred. + format: int32 + maximum: 4294967295 + minimum: 0 + type: integer + prefix: + description: An IPv6 global unicast address prefix. + type: string + validLifetime: + default: 2592000 + description: The length of time in seconds (relative to the time the packet is sent) that the prefix is valid for the purpose of on-link determination. + format: int32 + maximum: 4294967295 + minimum: 0 + type: integer + required: + - prefix + type: object + type: array + reachableTime: + default: 0 + description: Time in milliseconds for Neighbor Unreachability Detection. + format: int32 + maximum: 3600000 + minimum: 0 + type: integer + retransmitTime: + default: 0 + description: Time in milliseconds between retransmitted NS messages. + format: int32 + maximum: 1800000 + minimum: 0 + type: integer + routerLifetime: + default: 1800 + description: Router lifetime in seconds for default gateway. + format: int32 + maximum: 9000 + minimum: 0 + type: integer + required: + - currentHopLimit + - enabled + - managedConfigurationFlag + - maxAdvertisementInterval + - minAdvertisementInterval + - otherConfigurationFlag + - retransmitTime + - routerLifetime + type: object + l3ProxyARPND: + description: L3 Proxy ARP and ND configuration. + properties: + proxyARP: + default: false + description: Select whether Proxy ARP should be enabled. + type: boolean + proxyND: + default: false + description: Select whether Proxy ND should be enabled. + type: boolean + type: object + learnUnsolicited: + default: NONE + description: Enable or disable learning of unsolicited ARPs. + enum: + - BOTH + - GLOBAL + - LINK-LOCAL + - NONE + type: string + router: + description: Reference to a Router. + type: string + unnumbered: + description: Enables the use of unnumbered interfaces on the IRBInterface. If IPv6 is specified, no IP address are configured on the sub-interface and only the link local address will be used. If any IP addresses are specified for either IPv4 or IPv6 that will take precedence and IPs will be assigned to the interfaces.(Deprecated, Use IPv6RouterAdvertisement) + enum: + - IPV6 + type: string + virtualIPDiscovery: + description: Configuration for Virtual IP discovery on the interface. + items: + properties: + address: + description: Virtual IP Address. + type: string + allowedMAC: + description: List of allowed MAC addresses for a discovered virtual IP address. + items: + type: string + type: array + bridgeInterfaceToProbe: + description: List of BridgeInterfaces on the associated MAC-VRF to which the ARP probes are sent. If left blank, the probes are sent on all BridgeInterfaces associated with the BridgeDomain. + items: + type: string + type: array + probeInterval: + default: 0 + description: ARP probe interval in seconds. + maximum: 86400 + minimum: 0 + type: integer + vlanToProbe: + description: List of VLANs on the associated BridgeDomain to which the ARP probes are sent. If left blank, the probes are sent on all VLANs associated with the BridgeDomain. + items: + type: string + type: array + required: + - address + type: object + type: array + required: + - bridgeDomain + - router + type: object + required: + - name + - spec + type: object + type: array + protocols: + description: Protocols to configure. + properties: + bgp: + description: BGP Protocol. + properties: + bgpGroups: + description: List of BgpGroups. [emits=BGPGroup] + items: + properties: + name: + description: The name of the BgpGroup. + type: string + spec: + description: Specification of the BgpGroup + properties: + asPathOptions: + description: AS Path Options + properties: + allowOwnAS: + default: 0 + description: The maximum number of times the global AS number or a local AS number of the BGP instance can appear in any received AS_PATH before it is considered a loop and considered invalid. + maximum: 255 + minimum: 0 + type: integer + removePrivateAS: + description: Options for removing private AS numbers (2-byte and 4-byte) from the advertised AS path towards all peers. + properties: + ignorePeerAS: + default: false + description: If set to true then do not delete or replace a private AS number that is the same as the peer AS number. + type: boolean + leadingOnly: + default: false + description: If set to true then only delete or replace private AS numbers that appear before the first occurrence of a non-private ASN in the sequence of most recent ASNs in the AS path. + type: boolean + removePrivateASMode: + default: DISABLED + description: The method by which private AS numbers are removed from the advertised AS_PATH attribute. + enum: + - DISABLED + - REPLACE + - DELETE + type: string + required: + - ignorePeerAS + - leadingOnly + - removePrivateASMode + type: object + required: + - allowOwnAS + type: object + bfd: + description: Enable or disable Bi-forward Forwarding Detection (BFD) with fast failover. + type: boolean + client: + description: When set to true, all configured and dynamic BGP peers are considered RR clients. + type: boolean + clusterID: + description: Enables route reflect client and sets the cluster ID. + type: string + description: + description: Sets the description on the BGP group. + type: string + exportPolicy: + description: Reference to a Policy CR that will be used to filter routes advertised to peers. + items: + type: string + type: array + grStaleRouteTime: + description: Enables Graceful Restart on the peer and sets the stale route time. + maximum: 3600 + minimum: 1 + type: integer + importPolicy: + description: Reference to a Policy CR that will be used to filter routes received from peers. + items: + type: string + type: array + ipv4Unicast: + description: Parameters relating to the IPv4 unicast AFI/SAFI. + properties: + advertiseIPV6NextHops: + description: Enables advertisement of IPv4 Unicast routes with IPv6 next-hops to peers. + type: boolean + enabled: + description: Enables the IPv4 unicast AFISAFI. + type: boolean + maxReceivedRoutes: + description: Maximum number of IPv4 Unicast routes that will be accepted from the neighbor, counting routes accepted and rejected by import policies. + maximum: 4294967295 + minimum: 1 + type: integer + receiveIPV6NextHops: + description: Enables the advertisement of the RFC 5549 capability to receive IPv4 routes with IPv6 next-hops. + type: boolean + type: object + ipv6Unicast: + description: Parameters relating to the IPv6 unicast AFI/SAFI. + properties: + enabled: + description: Enables the IPv6 unicast AFISAFI + type: boolean + maxReceivedRoutes: + description: Maximum number of IPv6 Unicast routes that will be accepted from the neighbor, counting routes accepted and rejected by import policies. + maximum: 4294967295 + minimum: 1 + type: integer + type: object + keychain: + description: Reference to a Keychain resource that will be used for authentication with the BGP peer. + type: string + localAS: + description: The local autonomous system number advertised to peers. + properties: + autonomousSystem: + description: Local Autonomous System number. + maximum: 4294967295 + minimum: 1 + type: integer + prependGlobalAS: + description: When set to true, the global ASN value is prepended to the AS path in outbound routes towards each BGP peer. + type: boolean + prependLocalAS: + description: When set to true, the local AS value is prepended to the AS path of inbound routes from each EBGP peer. + type: boolean + required: + - autonomousSystem + type: object + localPreference: + description: Local Preference attribute added to received routes from the BGP peers, also sets local preference for generated routes. + maximum: 4294967295 + minimum: 0 + type: integer + multiHopMaxHop: + description: Enable multihop for eBGP peers and sets the maximum number of hops allowed. + maximum: 255 + minimum: 1 + type: integer + nextHopSelf: + description: When set to true, the next-hop in all IPv4-unicast, IPv6-unicast and EVPN BGP routes advertised to the peer is set to the local-address. + type: boolean + peerAS: + description: The autonomous system number expected from peers. + properties: + autonomousSystem: + description: Local Autonomous System number. + maximum: 4294967295 + minimum: 1 + type: integer + required: + - autonomousSystem + type: object + sendCommunityLarge: + description: When false, all large (12 byte) BGP communities from all outbound routes advertised to the peer are stripped. + type: boolean + sendCommunityStandard: + description: When false, all standard (4 byte) communities from all outbound routes advertised to the peer are stripped. + type: boolean + sendDefaultRoute: + description: Options for controlling the generation of default routes towards BGP peers. + properties: + addressFamily: + description: Enables the sending of a synthetically generated default IPv4 or IPV6 route to each peer. + items: + enum: + - IPV4-UNICAST + - IPV6-UNICAST + type: string + type: array + exportPolicy: + description: Reference to a Policy that should be applied to the advertised default routes, in order to set their attributes to non-default values. + type: string + required: + - addressFamily + type: object + timers: + description: Timer configurations + properties: + connectRetry: + description: The time interval in seconds between successive attempts to establish a session with a peer. + maximum: 65535 + minimum: 1 + type: integer + holdTime: + description: The hold-time interval in seconds that the router proposes to the peer in its OPEN message. + maximum: 65535 + minimum: 0 + type: integer + keepAlive: + description: The interval in seconds between successive keepalive messages sent to the peer. + maximum: 21845 + minimum: 0 + type: integer + minimumAdvertisementInterval: + description: The value assigned to the MinRouteAdvertisementIntervalTimer of RFC 4271, for both EBGP and IBGP sessions. + maximum: 255 + minimum: 1 + type: integer + type: object + type: object + required: + - name + - spec + type: object + type: array + bgpPeers: + description: List of BgpPeers [emits=BGPPeer] + items: + properties: + name: + description: The name of the BgpPeer. + type: string + spec: + description: Specification of the BgpPeer + properties: + asPathOptions: + description: AS Path Options + properties: + allowOwnAS: + default: 0 + description: The maximum number of times the global AS number or a local AS number of the BGP instance can appear in any received AS_PATH before it is considered a loop and considered invalid. + maximum: 255 + minimum: 0 + type: integer + removePrivateAS: + description: Options for removing private AS numbers (2-byte and 4-byte) from the advertised AS path towards all peers. + properties: + ignorePeerAS: + default: false + description: If set to true then do not delete or replace a private AS number that is the same as the peer AS number. + type: boolean + leadingOnly: + default: false + description: If set to true then only delete or replace private AS numbers that appear before the first occurrence of a non-private ASN in the sequence of most recent ASNs in the AS path. + type: boolean + removePrivateASMode: + default: DISABLED + description: The method by which private AS numbers are removed from the advertised AS_PATH attribute. + enum: + - DISABLED + - REPLACE + - DELETE + type: string + required: + - ignorePeerAS + - leadingOnly + - removePrivateASMode + type: object + required: + - allowOwnAS + type: object + bfd: + description: Enable or disable Bi-forward Forwarding Detection (BFD) with fast failover. + type: boolean + client: + description: When set to true, all configured and dynamic BGP peers are considered RR clients. + type: boolean + clusterID: + description: Enables route reflect client and sets the cluster ID. + type: string + description: + description: Sets the description on the BGP peer + type: string + dynamicNeighbor: + default: false + description: When set to true the Interface is added to the dynamic-neighbor list for dynamic peering. + type: boolean + dynamicNeighborAllowedPeerAS: + description: The autonomous system numbers allowed from peers if dynamic peering is enabled. + items: + type: integer + type: array + exportPolicy: + description: Reference to a Policy CR that will be used to filter routes advertised to peers. + items: + type: string + type: array + grStaleRouteTime: + description: Enables Graceful Restart on the peer and sets the stale route time. + maximum: 3600 + minimum: 1 + type: integer + group: + description: Reference to a BGPGroup. When present this BGP peer will be added to the BGP group + type: string + importPolicy: + description: Reference to a Policy CR that will be used to filter routes received from peers. + items: + type: string + type: array + interface: + description: Reference to a RoutedInterface or IrbInterface resource whose IP will be used as a source IP for the BGP session. + type: string + interfaceKind: + description: InterfaceReference type defines whether the provided Reference is a RoutedInterface or IrbInterface. + enum: + - ROUTEDINTERFACE + - IRBINTERFACE + type: string + ipv4Unicast: + description: Parameters relating to the IPv4 unicast AFI/SAFI. + properties: + advertiseIPV6NextHops: + description: Enables advertisement of IPv4 Unicast routes with IPv6 next-hops to peers. + type: boolean + enabled: + description: Enables the IPv4 unicast AFISAFI. + type: boolean + maxReceivedRoutes: + description: Maximum number of IPv4 Unicast routes that will be accepted from the neighbor, counting routes accepted and rejected by import policies. + maximum: 4294967295 + minimum: 1 + type: integer + receiveIPV6NextHops: + description: Enables the advertisement of the RFC 5549 capability to receive IPv4 routes with IPv6 next-hops. + type: boolean + type: object + ipv6Unicast: + description: Parameters relating to the IPv6 unicast AFI/SAFI. + properties: + enabled: + description: Enables the IPv6 unicast AFISAFI + type: boolean + maxReceivedRoutes: + description: Maximum number of IPv6 Unicast routes that will be accepted from the neighbor, counting routes accepted and rejected by import policies. + maximum: 4294967295 + minimum: 1 + type: integer + type: object + keychain: + description: Reference to a Keychain resource that will be used for authentication with the BGP peer. + type: string + localAS: + description: The local autonomous system number advertised to peers. + properties: + autonomousSystem: + description: Local Autonomous System number. + maximum: 4294967295 + minimum: 1 + type: integer + prependGlobalAS: + description: When set to true, the global ASN value is prepended to the AS path in outbound routes towards each BGP peer. + type: boolean + prependLocalAS: + description: When set to true, the local AS value is prepended to the AS path of inbound routes from each EBGP peer. + type: boolean + required: + - autonomousSystem + type: object + localPreference: + description: Local Preference attribute added to received routes from the BGP peers, also sets local preference for generated routes. + maximum: 4294967295 + minimum: 0 + type: integer + multiHopMaxHop: + description: Enable multihop for eBGP peers and sets the maximum number of hops allowed. + maximum: 255 + minimum: 1 + type: integer + nextHopSelf: + description: When set to true, the next-hop in all IPv4-unicast, IPv6-unicast and EVPN BGP routes advertised to the peer is set to the local-address. + type: boolean + node: + description: Node on which to configure the BGP peer. This node must be one of the nodes on which the IRBInterface is configured. When left blank or if the node is not part of the IRBInterface, the peer will not be deployed. Ignored for RoutedInterfaces. + type: string + peerAS: + description: The autonomous system number expected from peers. + properties: + autonomousSystem: + description: Local Autonomous System number. + maximum: 4294967295 + minimum: 1 + type: integer + required: + - autonomousSystem + type: object + peerIP: + description: Peer IP to which the peering session will be established. + type: string + sendCommunityLarge: + description: When false, all large (12 byte) BGP communities from all outbound routes advertised to the peer are stripped. + type: boolean + sendCommunityStandard: + description: When false, all standard (4 byte) communities from all outbound routes advertised to the peer are stripped. + type: boolean + sendDefaultRoute: + description: Options for controlling the generation of default routes towards BGP peers. + properties: + addressFamily: + description: Enables the sending of a synthetically generated default IPv4 or IPV6 route to each peer. + items: + enum: + - IPV4-UNICAST + - IPV6-UNICAST + type: string + type: array + exportPolicy: + description: Reference to a Policy that should be applied to the advertised default routes, in order to set their attributes to non-default values. + type: string + required: + - addressFamily + type: object + timers: + description: Timer configurations + properties: + connectRetry: + description: The time interval in seconds between successive attempts to establish a session with a peer. + maximum: 65535 + minimum: 1 + type: integer + holdTime: + description: The hold-time interval in seconds that the router proposes to the peer in its OPEN message. + maximum: 65535 + minimum: 0 + type: integer + keepAlive: + description: The interval in seconds between successive keepalive messages sent to the peer. + maximum: 21845 + minimum: 0 + type: integer + minimumAdvertisementInterval: + description: The value assigned to the MinRouteAdvertisementIntervalTimer of RFC 4271, for both EBGP and IBGP sessions. + maximum: 255 + minimum: 1 + type: integer + type: object + required: + - group + - interface + - interfaceKind + type: object + required: + - name + - spec + type: object + type: array + type: object + routingPolicies: + description: Routing Policies. + properties: + policies: + description: List of Policies. [emits=Policy] + items: + properties: + name: + description: Name of the Policy. + type: string + spec: + description: A policy + properties: + defaultAction: + description: The default action to apply if no other actions are defined. + properties: + bgp: + description: Actions related to the BGP protocol. + properties: + asPathPrepend: + description: AS number to prepend to the AS Path attributes. + format: int32 + maximum: 4294967295 + minimum: 1 + type: integer + asPathRemove: + description: Clear the AS path to make it empty. + type: boolean + asPathReplace: + description: Replace the existing AS path with a new AS_SEQUENCE containing the listed AS numbers. + items: + format: int32 + type: integer + type: array + localPreference: + description: Set a new LOCAL_PREF value for matching BGP routes. + format: int32 + maximum: 4294967295 + minimum: 0 + type: integer + setOrigin: + description: Set a new ORIGIN attribute for matching BGP routes. + enum: + - egp + - igp + - incomplete + type: string + type: object + policyResult: + description: Final disposition for the route. + enum: + - accept + - reject + type: string + type: object + statement: + description: List of policy statements. + items: + properties: + action: + description: Actions for routes that match the policy statement. + properties: + bgp: + description: Actions related to the BGP protocol. + properties: + asPathPrepend: + description: AS number to prepend to the AS Path attributes. + format: int32 + maximum: 4294967295 + minimum: 1 + type: integer + asPathRemove: + description: Clear the AS path to make it empty. + type: boolean + asPathReplace: + description: Replace the existing AS path with a new AS_SEQUENCE containing the listed AS numbers. + items: + format: int32 + type: integer + type: array + localPreference: + description: Set a new LOCAL_PREF value for matching BGP routes. + format: int32 + maximum: 4294967295 + minimum: 0 + type: integer + setOrigin: + description: Set a new ORIGIN attribute for matching BGP routes. + enum: + - egp + - igp + - incomplete + type: string + type: object + policyResult: + description: Final disposition for the route. + enum: + - accept + - reject + type: string + type: object + match: + description: Match conditions of the policy statement. + properties: + bgp: + description: Configuration for BGP-specific policy match criteria. + properties: + communitySet: + description: Match conditions for BGP communities. + type: string + evpnRouteType: + description: Match conditions for EVPN route types. + items: + type: integer + type: array + type: object + family: + description: Address families that the route belongs to. + items: + type: string + type: array + prefixSet: + description: Reference to a PrefixSet resource. + type: string + protocol: + description: The route protocol type to match. + enum: + - AGGREGATE + - ARP_ND + - BGP + - BGP_EVPN + - DHCP + - GRIBI + - HOST + - ISIS + - LOCAL + - LINUX + - NDK1 + - NDK2 + - OSPFV2 + - OSPFV3 + - STATIC + type: string + type: object + name: + description: Name of the policy statement. + type: string + required: + - name + type: object + type: array + type: object + required: + - name + type: object + type: array + prefixSets: + description: List of PrefixSet [emits=PrefixSet] + items: + properties: + name: + description: Name of the PrefixSet. + type: string + spec: + description: A PrefixSets + properties: + prefix: + description: List of IPv4 or IPv6 prefixes in CIDR notation. + items: + properties: + endRange: + description: The end range when using a range to match prefixes. + maximum: 128 + minimum: 0 + type: integer + exact: + description: Indicates if it is an exact match. Ignores the StartRange and EndRange if this param is set. + type: boolean + prefix: + description: The IPv4 or IPv6 prefix in CIDR notation with mask. + type: string + startRange: + description: If specifying a range, this is the start of the range. + maximum: 128 + minimum: 0 + type: integer + required: + - prefix + type: object + type: array + required: + - prefix + type: object + required: + - name + type: object + type: array + type: object + staticRoutes: + description: List of Static Routes within this VirtualNetwork. [emits=StaticRoute] + items: + properties: + name: + description: Name of the StaticRoute. + type: string + spec: + description: A StaticRoutes + properties: + nexthopGroup: + description: Group of nexthops for the list of prefixes. + properties: + bfd: + description: Enables BFD to the next-hops in the group. Local and Remote discriminator parameters have been deprecated at this level. Use Nexthop to set these parameters. + properties: + enabled: + default: false + description: Defines whether BFD should be enabled towards the nexthops. + type: boolean + localAddress: + description: Defines the local address to use when establishing the BFD session with the nexthop. + type: string + localDiscriminator: + description: Defines the local discriminator. + type: integer + remoteDiscriminator: + description: Defines the remote discriminator. + type: integer + type: object + blackhole: + default: false + description: If set to true all traffic destined to the prefixes will be blackholed. If enabled, next-hops are ignored and this takes precedence. + type: boolean + nexthops: + description: Ordered list of nexthops. + items: + properties: + bfd: + description: Enables BFD to the next-hops in the group. This overrides the configuration at the group. + properties: + enabled: + default: false + description: Defines whether BFD should be enabled towards the nexthops. + type: boolean + localAddress: + description: Defines the local address to use when establishing the BFD session with the nexthop. + type: string + localDiscriminator: + description: Defines the local discriminator. + type: integer + remoteDiscriminator: + description: Defines the remote discriminator. + type: integer + type: object + ipPrefix: + description: Address to use. + type: string + resolve: + default: false + description: If set to true the next-hops can be destinations which are resolved in the route table. This overrides the configuration at the group. + type: boolean + required: + - ipPrefix + type: object + type: array + resolve: + default: false + description: If set to true the next-hops can be destinations which are resolved in the route table. + type: boolean + type: object + nodes: + description: List of nodes on which to configure the static routes. An AND operation is executed against the nodes in this list and the nodes on which the Router is configured to determine the Nodes on which to configure the static routes. + items: + type: string + type: array + preference: + description: Defines the route preference. + type: integer + prefixes: + description: List of destination prefixes and mask to use for the static routes. + items: + type: string + type: array + router: + description: Reference to a Router on which to configure the static routes. If no Nodes are provided then the static routes will be provisioned on all Nodes on which the Router is provisioned. + type: string + required: + - nexthopGroup + - prefixes + - router + type: object + required: + - name + type: object + type: array + type: object + routedInterfaces: + description: List of RoutedInterface. [emits=RoutedInterface] + items: + properties: + name: + description: The name of the RoutedInterface. + type: string + spec: + description: Specification of the RoutedInterface + properties: + arpTimeout: + default: 14400 + description: Duration of time that dynamic ARP entries remain in the ARP cache before they expire. + format: int32 + type: integer + bfd: + description: Enables BFD on the RoutedInterface. + properties: + desiredMinTransmitInt: + default: 1000000 + description: The minimum interval in microseconds between transmission of BFD control packets. + maximum: 100000000 + minimum: 10000 + type: integer + detectionMultiplier: + default: 3 + description: The number of packets that must be missed to declare this session as down. + maximum: 20 + minimum: 3 + type: integer + enabled: + default: false + description: Enables Biforward Detection. + type: boolean + minEchoReceiveInterval: + default: 1000000 + description: The minimum interval between echo packets the local node can receive. + maximum: 100000000 + minimum: 250000 + type: integer + requiredMinReceive: + default: 1000000 + description: The minimum interval in microseconds between received BFD control packets that this system should support. + maximum: 100000000 + minimum: 10000 + type: integer + required: + - enabled + type: object + description: + description: The description of the RoutedInterface. + type: string + egress: + description: Manages actions on traffic at Egress. + properties: + filters: + description: List of Filter references to use at egress. + items: + type: string + type: array + qosPolicy: + description: List of QoS Egress policy references to use at egress. + items: + type: string + type: array + type: object + ingress: + description: Manages actions on traffic at Ingress. + properties: + filters: + description: List of Filter references to use at ingress. + items: + type: string + type: array + qosPolicy: + description: List of QoS Ingress policy references to use at ingress. + items: + type: string + type: array + type: object + interface: + description: Reference to an Interface to use for attachment. + type: string + ipMTU: + default: 1500 + description: IP MTU for the RoutedInterface. + maximum: 9486 + minimum: 1280 + type: integer + ipv4Addresses: + description: List of IPv4 addresses in IP/mask form, e.g., 192.168.0.1/24. + items: + properties: + ipPrefix: + description: Address and mask to use + type: string + primary: + description: Indicates which address to use as primary for broadcast + type: boolean + required: + - ipPrefix + type: object + type: array + ipv6Addresses: + description: List of IPv6 addresses in IP/mask form, e.g., fc00::1/120. + items: + properties: + ipPrefix: + description: Address and mask to use + type: string + primary: + description: Indicates which address to use as primary for broadcast + type: boolean + required: + - ipPrefix + type: object + type: array + ipv6RouterAdvertisement: + properties: + currentHopLimit: + default: 64 + description: The current hop limit to advertise in the router advertisement messages. + format: int32 + maximum: 255 + minimum: 0 + type: integer + enabled: + default: false + description: Enable or disable IPv6 router advertisements. + type: boolean + ipMTU: + description: The IP MTU to advertise in the router advertisement messages. + format: int32 + maximum: 9486 + minimum: 1280 + type: integer + managedConfigurationFlag: + default: false + description: Enable DHCPv6 for address configuration (M-bit). + type: boolean + maxAdvertisementInterval: + default: 600 + description: Maximum time between router advertisements (in seconds). + format: int32 + maximum: 1800 + minimum: 4 + type: integer + minAdvertisementInterval: + default: 200 + description: Minimum time between router advertisements (in seconds). + format: int32 + maximum: 1350 + minimum: 3 + type: integer + otherConfigurationFlag: + default: false + description: Enable DHCPv6 for other configuration (O-bit). + type: boolean + prefixes: + description: IPv6 prefixes to advertise in router advertisements. + items: + description: IPv6Prefix defines the configuration for an IPv6 prefix advertisement. + properties: + autonomousFlag: + default: true + description: When this is set in the prefix information option hosts can use the prefix for stateless address autoconfiguration (SLAAC). + type: boolean + onLinkFlag: + default: true + description: When this is set in the prefix information option hosts can use the prefix for on-link determination. + type: boolean + preferredLifetime: + default: 604800 + description: The length of time in seconds (relative to the time the packet is sent) that addresses generated from the prefix via stateless address autoconfiguration remain preferred. + format: int32 + maximum: 4294967295 + minimum: 0 + type: integer + prefix: + description: An IPv6 global unicast address prefix. + type: string + validLifetime: + default: 2592000 + description: The length of time in seconds (relative to the time the packet is sent) that the prefix is valid for the purpose of on-link determination. + format: int32 + maximum: 4294967295 + minimum: 0 + type: integer + required: + - prefix + type: object + type: array + reachableTime: + default: 0 + description: Time in milliseconds for Neighbor Unreachability Detection. + format: int32 + maximum: 3600000 + minimum: 0 + type: integer + retransmitTime: + default: 0 + description: Time in milliseconds between retransmitted NS messages. + format: int32 + maximum: 1800000 + minimum: 0 + type: integer + routerLifetime: + default: 1800 + description: Router lifetime in seconds for default gateway. + format: int32 + maximum: 9000 + minimum: 0 + type: integer + required: + - currentHopLimit + - enabled + - managedConfigurationFlag + - maxAdvertisementInterval + - minAdvertisementInterval + - otherConfigurationFlag + - retransmitTime + - routerLifetime + type: object + l3ProxyARPND: + description: L3 Proxy ARP and ND configuration. + properties: + proxyARP: + default: false + description: Select whether Proxy ARP should be enabled. + type: boolean + proxyND: + default: false + description: Select whether Proxy ND should be enabled. + type: boolean + type: object + learnUnsolicited: + default: NONE + description: Enable or disable learning of unsolicited ARPs. + enum: + - BOTH + - GLOBAL + - LINK-LOCAL + - NONE + type: string + router: + description: Reference to a Router. + type: string + unnumbered: + description: Enables the use of unnumbered interfaces on the IRBInterface. If IPv6 is specified, no IP address are configured on the sub-interface and only the link local address will be used. If any IP addresses are specified for either IPv4 or IPv6 that will take precedence and IPs will be assigned to the interfaces. (Deprecated, Use IPv6RouterAdvertisement) + enum: + - IPV6 + type: string + vlanID: + default: pool + description: Single value between 1-4094 support, ranges supported in the format x-y,x-y, or the special keyword null, any, untagged or pool for auto allocation. + type: string + vlanPool: + default: vlan-pool + description: Reference to a VLAN pool to use for allocations. + type: string + required: + - interface + - router + type: object + required: + - name + - spec + type: object + type: array + routers: + description: List of Routers.[emits=Router] + items: + properties: + name: + description: The name of the Router. + type: string + spec: + description: Specification of the Router + properties: + bgp: + description: BGP configuration. + properties: + autonomousSystem: + description: Autonomous System number for BGP. + maximum: 4294967295 + minimum: 1 + type: integer + ebgpPreference: + default: 170 + description: Preference to be set for eBGP [default=170]. + maximum: 255 + minimum: 1 + type: integer + enabled: + default: false + description: Enable or disable BGP. + type: boolean + ibgpPreference: + default: 170 + description: Preference to be set for iBGP [default=170]. + maximum: 255 + minimum: 1 + type: integer + ipAliasNexthops: + description: IP aliasing configuration. + items: + properties: + esi: + default: auto + description: 10 byte Ethernet Segment Identifier, if not set a type 0 ESI is generated. + type: string + nextHop: + description: The nexthop IP address to track for the IP alias. + type: string + preferredActiveNode: + description: When not set the ES is used in an all active mode. This references the ToppNode object and when set, the DF algorithm is configured to type preference and the selected Node is set with a higher preference value. All other Nodes have a lower value configured. + type: string + required: + - nextHop + type: object + type: array + ipv4Unicast: + description: Parameters relating to the IPv4 unicast AFI/SAFI. + properties: + advertiseIPV6NextHops: + description: Enables advertisement of IPv4 Unicast routes with IPv6 next-hops to peers. + type: boolean + enabled: + default: false + description: Enables the IPv4 unicast AFISAFI. + type: boolean + multipath: + description: Enable multipath. + properties: + allowMultipleAS: + default: true + description: When set to true, BGP is allowed to build a multipath set using BGP routes with different neighbor AS (most recent AS in the AS_PATH), When set to false, BGP is only allowed to use non-best paths for ECMP if they meet the multipath criteria and they have the same neighbor AS as the best path. + type: boolean + maxAllowedPaths: + description: The maximum number of BGP ECMP next-hops for BGP routes with an NLRI belonging to the address family of this configuration context. + maximum: 256 + minimum: 1 + type: integer + required: + - allowMultipleAS + - maxAllowedPaths + type: object + receiveIPV6NextHops: + description: Enables the advertisement of the RFC 5549 capability to receive IPv4 routes with IPv6 next-hops. + type: boolean + required: + - enabled + type: object + ipv6Unicast: + description: Parameters relating to the IPv6 unicast AFI/SAFI. + properties: + enabled: + default: false + description: Enables the IPv6 unicast AFISAFI + type: boolean + multipath: + description: Enable multipath + properties: + allowMultipleAS: + default: true + description: When set to true, BGP is allowed to build a multipath set using BGP routes with different neighbor AS (most recent AS in the AS_PATH), When set to false, BGP is only allowed to use non-best paths for ECMP if they meet the multipath criteria and they have the same neighbor AS as the best path. + type: boolean + maxAllowedPaths: + description: The maximum number of BGP ECMP next-hops for BGP routes with an NLRI belonging to the address family of this configuration context. + maximum: 256 + minimum: 1 + type: integer + required: + - allowMultipleAS + - maxAllowedPaths + type: object + required: + - enabled + type: object + keychain: + description: Keychain to be used for authentication + type: string + minWaitToAdvertise: + default: 0 + description: Minimum wait time before advertising routes post BGP restart. + maximum: 3600 + minimum: 0 + type: integer + rapidWithdrawl: + default: true + description: Enable rapid withdrawal in BGP. + type: boolean + waitForFIBInstall: + default: false + description: Wait for FIB installation before advertising routes. + type: boolean + type: object + description: + description: The description of the Router. + type: string + evi: + description: EVI for the Router; leave blank for auto-allocation from EVI pool. + maximum: 65535 + minimum: 1 + type: integer + eviPool: + default: evi-pool + description: Reference to EVI pool for auto-allocation. + type: string + exportTarget: + description: Export route target in 'target:N:N' format, if not specified, the default value taken as "target:1:". + pattern: ^target.*$ + type: string + importTarget: + description: Import route target in 'target:N:N' format, if not specified, the default value taken as "target:1:". + pattern: ^target.*$ + type: string + ipLoadBalancing: + description: IPv4 or IPv6 prefix. Active routes in the FIB that exactly match this prefix or that are longer matches of this prefix are provided with resilient-hash programming. + properties: + prefix: + description: IPv4 or IPv6 prefix. Active routes in the FIB that exactly match this prefix or that are longer matches of this prefix are provided with resilient-hash programming. + items: + properties: + hashBucketsPerPath: + default: 1 + description: The number of times each next-hop is repeated in the fill pattern if there are max-paths ECMP next-hops. + maximum: 32 + minimum: 1 + type: integer + maxECMP: + default: 1 + description: The maximum number of ECMP next-hops per route associated with the resilient-hash prefix. + maximum: 64 + minimum: 1 + type: integer + prefix: + description: IPv4 or IPv6 prefix. Active routes in the FIB that exactly match this prefix or that are longer matches of this prefix are provided with resilient-hash programming. + type: string + required: + - hashBucketsPerPath + - maxECMP + - prefix + type: object + type: array + type: object + nodeSelector: + description: Node selectors for deployment constraints. If Nodes are selected, the Router will only be deployed on the Nodes selected, if left blank it will be deployed on all Nodes for which there are IRB or RoutedInterfaces referencing this Router. + items: + type: string + type: array + routeLeaking: + description: Route leaking controlled by routing policies in and out of the DefaultRouter. + properties: + exportPolicy: + description: Reference to a Policy resource to use when evaluating route exports from the DefaultRouter. + type: string + importPolicy: + description: Reference to a Policy resource to use when evaluating route imports into the DefaultRouter. + type: string + type: object + routerID: + description: Router ID. + type: string + tunnelIndexPool: + default: tunnel-index-pool + description: Reference to tunnel index allocation pool. + type: string + type: + default: EVPNVXLAN + description: Select the type of Router. Simple doesn't include any overlay control plane or dataplane properties (EVPN/VXLAN). EVPNVXLAN includes the properties needed to provision this Router over an IP Fabric. + enum: + - SIMPLE + - EVPNVXLAN + type: string + vni: + description: VNI for the Router; leave blank for auto-allocation from VNI pool. + maximum: 16777215 + minimum: 1 + type: integer + vniPool: + default: vni-pool + description: Reference to VNI pool for auto-allocation. + type: string + type: object + required: + - name + - spec + type: object + type: array + vlans: + description: List of VLANs. [emits=VLAN] + items: + properties: + name: + description: The name of the VLAN. + type: string + spec: + description: Specification of the Vlan + properties: + bridgeDomain: + description: Reference to a BridgeDomain or SimpleBridgeDomain. + type: string + description: + description: The description of the VLAN. + type: string + egress: + description: Manages actions on traffic at Egress. + properties: + filters: + description: List of Filter references to use at egress. + items: + type: string + type: array + qosPolicy: + description: List of QoS Egress policy references to use at egress. + items: + type: string + type: array + type: object + ingress: + description: Manages actions on traffic at Ingress. + properties: + filters: + description: List of Filter references to use at ingress. + items: + type: string + type: array + qosPolicy: + description: List of QoS Ingress policy references to use at ingress. + items: + type: string + type: array + type: object + interfaceSelector: + description: Interfaces to use for attachment to this VLAN based on the label selector. Selects Interfaces based on their associated labels. + items: + type: string + type: array + l2MTU: + description: L2 MTU specifies the maximum sized Ethernet frame that can be transmitted on the subinterface. If a frame exceeds this size it is discarded. If the l2-mtu of the subinterface exceeds the port-mtu of the associated interface, the subinterface will remain operationally down. + maximum: 9500 + minimum: 1450 + type: integer + macDuplicationDetectionAction: + description: If Mac Duplication Detection is enabled on the associated Bridge Domain, this property will override the MDD action set in the BridgeDomain. + enum: + - Blackhole + - OperDown + - StopLearning + - UseBridgeDomainAction + type: string + splitHorizonGroup: + description: Name of the Split Horizon Group to be used for this VLAN. All subinterfaces within this VLAN will be members of this Split Horizon Group. + type: string + uplink: + description: The Uplink between your access breakout switch and your leaf switch. + properties: + egress: + description: Manages actions on traffic at Egress of the Local enpoint of the Uplink. + properties: + filters: + description: List of Filter references to use at egress. + items: + type: string + type: array + qosPolicy: + description: List of QoS Egress policy references to use at egress. + items: + type: string + type: array + type: object + ingress: + description: Manages actions on traffic at Ingress of the Local enpoint of the Uplink. + properties: + filters: + description: List of Filter references to use at ingress. + items: + type: string + type: array + qosPolicy: + description: List of QoS Ingress policy references to use at ingress. + items: + type: string + type: array + type: object + uplinkSelector: + description: Selects TopoLinks which connect a leaf switch to a breakout switch. This is the uplink between your access breakout switch and your leaf switch. There can only be a single TopoLink between the access breakout switch and the leaf switch, if more than one TopoLink is present between two devices the transaction will fail. + items: + type: string + type: array + uplinkVLANID: + default: pool + description: The VLAN ID to be utilized to isolate traffic from the VLAN on the access breakout switch to the leaf switch on the selected uplink TopoLink. + type: string + uplinkVLANPool: + description: A VLAN from this pool will be utilized to isolate traffic from the VLAN on the access breakout switch to the leaf switch on the selected uplink TopoLink. + type: string + type: object + vlanID: + default: pool + description: Single value between 1-4094 support, ranges supported in the format x-y,x-y, or the special keyword null, any, untagged or pool for auto allocation. + type: string + vlanPool: + description: Reference to a VLAN pool to use for allocations. [default="vlan-pool"] + type: string + required: + - bridgeDomain + - interfaceSelector + type: object + required: + - name + - spec + type: object + type: array + type: object + status: + properties: + health: + description: Indicates the health score of the VNET. + type: integer + healthScoreReason: + description: Indicates the reason for the health score. + type: string + lastChange: + description: The time when the state of the resource last changed. + type: string + nodes: + description: List of Nodes on which the Router is deployed. + items: + type: string + type: array + numBGPPeers: + description: Total number of configured BGP Peers. + type: integer + numBGPPeersOperDown: + description: Total Number of BGP Peer operationally down. + type: integer + numIRBInterfaces: + description: Total number of irb-interfaces configured by the VNET. + format: int32 + type: integer + numIRBInterfacesOperDown: + description: Total number of irb-interfaces configured by the VNET which are oper-down. + format: int32 + type: integer + numNodes: + description: Total number of Nodes on which the VNET is configured. + type: integer + numRoutedInterfaces: + description: Total number of routed-interfaces configured by the VNET. + format: int32 + type: integer + numRoutedInterfacesOperDown: + description: Total number of routed-interfaces configured by the VNET which are oper-down. + format: int32 + type: integer + numSubInterfaces: + description: Total number of sub-interfaces configured by the VNET. + format: int32 + type: integer + numSubInterfacesOperDown: + description: Total number of sub-interfaces configured by the VNET which are oper-down. + format: int32 + type: integer + operationalState: + description: Operational state of the VNET. + type: string + type: object + type: object +served: true +storage: true +subresources: + status: {} diff --git a/static/resources/25.4.2/virtualnetworkstates.services.eda.nokia.com/v1alpha1.yaml b/static/resources/25.4.2/virtualnetworkstates.services.eda.nokia.com/v1alpha1.yaml new file mode 100644 index 0000000..bbe91f7 --- /dev/null +++ b/static/resources/25.4.2/virtualnetworkstates.services.eda.nokia.com/v1alpha1.yaml @@ -0,0 +1,69 @@ +name: v1alpha1 +schema: + openAPIV3Schema: + description: VirtualNetworkState is the Schema for the virtualnetworkstates API + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + description: VirtualNetworkStateSpec defines the desired state of VirtualNetworkState + properties: + bgpPeers: + description: List of BGPPeers created by the VNET + items: + type: string + type: array + bridgeDomains: + description: List of BridgeDomains created by the VNET + items: + type: string + type: array + bridgeInterfaces: + description: List of Bridgeinterfaces created by the VNET + items: + type: string + type: array + irbInterfaces: + description: List of IRBInterfaces created by the VNET + items: + type: string + type: array + routedInterfaces: + description: List of RoutedInterface created by the VNET + items: + type: string + type: array + routers: + description: List of Routers created by the VNET + items: + type: string + type: array + vlans: + description: List of VLANs created by the VNET + items: + type: string + type: array + type: object + status: + description: VirtualNetworkStateStatus defines the observed state of VirtualNetworkState + type: object + type: object +served: true +storage: true +subresources: + status: {} diff --git a/static/resources/25.4.2/vlans.services.eda.nokia.com/v1alpha1.yaml b/static/resources/25.4.2/vlans.services.eda.nokia.com/v1alpha1.yaml new file mode 100644 index 0000000..0354a51 --- /dev/null +++ b/static/resources/25.4.2/vlans.services.eda.nokia.com/v1alpha1.yaml @@ -0,0 +1,223 @@ +additionalPrinterColumns: + - jsonPath: .spec.bridgeDomain + name: BridgeDomain + type: string + - jsonPath: .status.numSubInterfacesOperDown + name: OperDown SubIf + type: string + - jsonPath: .status.numSubInterfaces + name: Total SubIf + type: string + - jsonPath: .status.operationalState + name: OperationalState + type: string + - jsonPath: .status.lastChange + name: LastChange + type: string + - jsonPath: .metadata.creationTimestamp + name: Age + type: date +name: v1alpha1 +schema: + openAPIV3Schema: + description: VLAN is the Schema for the vlans API + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + description: The VLAN enables the configuration and management of VLAN and their association with BridgeDomains. This resource allows for specifying the associated BridgeDomain, selecting interfaces based on label selectors, and configuring VLAN IDs with options for auto-allocation from a VLAN pool. It also supports advanced configurations such as ingress and egress traffic management, and overrides for MAC Duplication Detection actions when enabled in the associated BridgeDomain. + properties: + bridgeDomain: + description: Reference to a BridgeDomain or SimpleBridgeDomain. + type: string + description: + description: The description of the VLAN. + type: string + egress: + description: Manages actions on traffic at Egress. + properties: + filters: + description: List of Filter references to use at egress. + items: + type: string + type: array + qosPolicy: + description: List of QoS Egress policy references to use at egress. + items: + type: string + type: array + type: object + ingress: + description: Manages actions on traffic at Ingress. + properties: + filters: + description: List of Filter references to use at ingress. + items: + type: string + type: array + qosPolicy: + description: List of QoS Ingress policy references to use at ingress. + items: + type: string + type: array + type: object + interfaceSelector: + description: Interfaces to use for attachment to this VLAN based on the label selector. Selects Interfaces based on their associated labels. + items: + type: string + type: array + l2MTU: + description: L2 MTU specifies the maximum sized Ethernet frame that can be transmitted on the subinterface. If a frame exceeds this size it is discarded. If the l2-mtu of the subinterface exceeds the port-mtu of the associated interface, the subinterface will remain operationally down. + maximum: 9500 + minimum: 1450 + type: integer + macDuplicationDetectionAction: + description: If Mac Duplication Detection is enabled on the associated Bridge Domain, this property will override the MDD action set in the BridgeDomain. + enum: + - Blackhole + - OperDown + - StopLearning + - UseBridgeDomainAction + type: string + splitHorizonGroup: + description: Name of the Split Horizon Group to be used for this VLAN. All subinterfaces within this VLAN will be members of this Split Horizon Group. + type: string + uplink: + description: The Uplink between your access breakout switch and your leaf switch. + properties: + egress: + description: Manages actions on traffic at Egress of the Local enpoint of the Uplink. + properties: + filters: + description: List of Filter references to use at egress. + items: + type: string + type: array + qosPolicy: + description: List of QoS Egress policy references to use at egress. + items: + type: string + type: array + type: object + ingress: + description: Manages actions on traffic at Ingress of the Local enpoint of the Uplink. + properties: + filters: + description: List of Filter references to use at ingress. + items: + type: string + type: array + qosPolicy: + description: List of QoS Ingress policy references to use at ingress. + items: + type: string + type: array + type: object + uplinkSelector: + description: Selects TopoLinks which connect a leaf switch to a breakout switch. This is the uplink between your access breakout switch and your leaf switch. There can only be a single TopoLink between the access breakout switch and the leaf switch, if more than one TopoLink is present between two devices the transaction will fail. + items: + type: string + type: array + uplinkVLANID: + default: pool + description: The VLAN ID to be utilized to isolate traffic from the VLAN on the access breakout switch to the leaf switch on the selected uplink TopoLink. + type: string + uplinkVLANPool: + description: A VLAN from this pool will be utilized to isolate traffic from the VLAN on the access breakout switch to the leaf switch on the selected uplink TopoLink. + type: string + type: object + vlanID: + default: pool + description: Single value between 1-4094 support, ranges supported in the format x-y,x-y, or the special keyword null, any, untagged or pool for auto allocation. + type: string + vlanPool: + description: Reference to a VLAN pool to use for allocations. [default="vlan-pool"] + type: string + required: + - bridgeDomain + - interfaceSelector + type: object + status: + properties: + health: + description: Indicates the health score of the VNET. + type: integer + healthScoreReason: + description: Indicates the reason for the health score. + type: string + lastChange: + description: The time when the state of the resource last changed. + type: string + numSubInterfaces: + description: Total number of sub-interfaces configured by the VNET. + format: int32 + type: integer + numSubInterfacesOperDown: + description: Total number of sub-interfaces configured by the VNET which are oper-down. + format: int32 + type: integer + operationalState: + description: Operational state of the VNET. + type: string + subInterfaces: + description: List of members in this Interface. + items: + properties: + enabled: + description: The administrative status of the SubInterface. + type: boolean + interface: + description: Normalized interface name. + type: string + interfaceResource: + description: Eda interface resource. + type: string + lastChange: + description: Indicates when this SubInterface last changed state. + type: string + node: + description: Reference to Node object. + type: string + nodeInterface: + description: Node specific interface name. + type: string + operatingSystem: + description: Operating System of the Node. + type: string + operationalState: + description: Indicates the current operational state of the SubInterface. + type: string + subInterfaceIndex: + description: Index allocated to the subinterface on the associated interface for the given VLAN. + type: integer + vlanID: + description: vlan assigned to this subinterface. + type: string + required: + - interface + - interfaceResource + - node + - nodeInterface + type: object + type: array + type: object + type: object +served: true +storage: true +subresources: + status: {} diff --git a/static/resources/25.4.2/vlanstates.services.eda.nokia.com/v1alpha1.yaml b/static/resources/25.4.2/vlanstates.services.eda.nokia.com/v1alpha1.yaml new file mode 100644 index 0000000..bbf6311 --- /dev/null +++ b/static/resources/25.4.2/vlanstates.services.eda.nokia.com/v1alpha1.yaml @@ -0,0 +1,78 @@ +name: v1alpha1 +schema: + openAPIV3Schema: + description: VLANState is the Schema for the vlanstates API + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + description: VLANStateSpec defines the desired state of VLANState + properties: + bridgeDomain: + description: Node BridgeDomain name + type: string + subInterfaces: + items: + properties: + interface: + description: Normalized interface name + type: string + interfaceResource: + description: Eda interface resource + type: string + node: + description: Reference to Node object + type: string + nodeInterface: + description: Node specific interface name + type: string + nodeSubInterface: + description: Node specific subinterface name + type: string + operatingSystem: + description: Operating System of the Node + type: string + subInterfaceIndex: + description: Index allocated to the subinterface on the associated interface for the given VLAN + type: integer + vlanID: + description: vlan assigned to this subinterface + type: string + required: + - interface + - interfaceResource + - node + - nodeInterface + type: object + type: array + vlanID: + description: Single value between 0-4094 support, ranges supported in the format x-y,x-y, or the special keyword any or untagged or pool for auto allocation + type: string + required: + - bridgeDomain + - subInterfaces + - vlanID + type: object + status: + description: VLANStateStatus defines the observed state of VLANState + type: object + type: object +served: true +storage: true +subresources: + status: {} diff --git a/static/resources/25.4.2/volumeoverlays.components.eda.nokia.com/v1.yaml b/static/resources/25.4.2/volumeoverlays.components.eda.nokia.com/v1.yaml new file mode 100644 index 0000000..d794973 --- /dev/null +++ b/static/resources/25.4.2/volumeoverlays.components.eda.nokia.com/v1.yaml @@ -0,0 +1,69 @@ +name: v1 +schema: + openAPIV3Schema: + description: VolumeOverlay is the Schema for volumeoverlays + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + description: VolumeOverlaySpec defines the desired state of VolumeOverlay + properties: + enabled: + description: Enable or disable the generation of the status of this overlay + type: boolean + topology: + description: Reference to the topology that this overlay is extending. + properties: + group: + description: The group of the application which published the topology this overlay is extending. + type: string + name: + description: The name of the resource which published the topology this overlay is extending. + type: string + version: + description: The version of the application which published the topology this overlay is extending. + type: string + required: + - group + - name + - version + type: object + uiDescription: + description: A description of the overlay to expose in the UI + type: string + uiDescriptionKey: + description: The translation key for the description of the overlay to expose in the UI + type: string + uiName: + description: The name of the overlay to expose in the UI + type: string + uiNameKey: + description: The translation key for the name of the overlay to expose in the UI + type: string + required: + - enabled + - topology + type: object + status: + description: VolumeOverlayStatus defines the observed state of VolumeOverlay + type: object + type: object +served: true +storage: true +subresources: + status: {} diff --git a/static/resources/25.4.2/waitforinputs.core.eda.nokia.com/v1.yaml b/static/resources/25.4.2/waitforinputs.core.eda.nokia.com/v1.yaml new file mode 100644 index 0000000..19dd660 --- /dev/null +++ b/static/resources/25.4.2/waitforinputs.core.eda.nokia.com/v1.yaml @@ -0,0 +1,42 @@ +name: v1 +schema: + openAPIV3Schema: + description: WaitForInput is the Schema for the waitforinputs API + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + description: WaitForInputSpec defines the desired state of WaitForInput + properties: + id: + type: integer + prompt: + description: Foo is an example field of WaitForInput. Edit waitforinput_types.go to remove/update + type: string + type: object + status: + description: WaitForInputStatus defines the observed state of WaitForInput + properties: + prompt: + type: boolean + type: object + type: object +served: true +storage: true +subresources: + status: {} diff --git a/static/resources/25.4.2/workflowdefinitions.core.eda.nokia.com/v1.yaml b/static/resources/25.4.2/workflowdefinitions.core.eda.nokia.com/v1.yaml new file mode 100644 index 0000000..13ba6e6 --- /dev/null +++ b/static/resources/25.4.2/workflowdefinitions.core.eda.nokia.com/v1.yaml @@ -0,0 +1,74 @@ +additionalPrinterColumns: + - jsonPath: .spec.image + name: Image + type: string + - jsonPath: .metadata.creationTimestamp + name: Age + type: date +name: v1 +schema: + openAPIV3Schema: + description: WorkflowDefinition is the Schema for the workflowdefinitions API + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + description: WorkflowDefinitionSpec defines the desired state of FlowDefinition + properties: + flowDefinitionResource: + description: the resource type to be used for this flow, can only be set if Schema is not set + properties: + group: + type: string + kind: + type: string + version: + type: string + required: + - kind + - version + type: object + flowDefinitionSchema: + description: the schema for the flow, can only be set if Resource is not set + properties: + jsonSchemaSpec: + description: A string containing the JSON schema the workflow accepts as input. + type: string + jsonSchemaStatus: + description: A string containing the JSON schema the workflow will populate as output. + type: string + type: object + image: + description: Container image containing the flow. For example "ghcr.io/nokia-eda/apps/operatingsystem:v1.0.0". + type: string + imagePullSecrets: + description: Secrets to use to pull the image for this workflow. + items: + type: string + type: array + required: + - image + type: object + status: + description: WorkflowDefinitionStatus defines the observed state of FlowDefinition + type: object + type: object +served: true +storage: true +subresources: + status: {} diff --git a/static/resources/25.4.2/workflows.core.eda.nokia.com/v1.yaml b/static/resources/25.4.2/workflows.core.eda.nokia.com/v1.yaml new file mode 100644 index 0000000..ec20612 --- /dev/null +++ b/static/resources/25.4.2/workflows.core.eda.nokia.com/v1.yaml @@ -0,0 +1,119 @@ +additionalPrinterColumns: + - jsonPath: .spec.type + name: Type + type: string + - jsonPath: .status.id + name: ID + type: integer + - jsonPath: .status.result + name: Result + type: string + - jsonPath: .metadata.creationTimestamp + name: Age + type: date +name: v1 +schema: + openAPIV3Schema: + description: Workflow is the Schema for the workflows API + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + description: WorkflowSpec defines the desired state of Flow + properties: + input: + description: Input to this flow, adhering to the JSON schema defined in the referenced WorkflowDefinition. + x-kubernetes-preserve-unknown-fields: true + type: + description: Select the WorkflowDefinition to execute. + type: string + required: + - type + type: object + status: + description: WorkflowStatus defines the observed state of Flow + properties: + duration: + description: Total duration of the Flow in milliseconds + format: int64 + type: integer + errors: + items: + type: string + type: array + id: + description: Id + type: integer + output: + description: Output from this flow, adhering to the JSON schema defined in the referenced FlowDefinition + x-kubernetes-preserve-unknown-fields: true + result: + description: Aggregate result of the Flow + enum: + - OK + - Failed + - Terminated + - WaitingForInput + - Running + - WaitingToStart + - SubflowWaitingForInput + type: string + stages: + description: Results of the stages in this Flow + items: + properties: + duration: + description: Duration of the stage in milliseconds. + format: int64 + type: integer + name: + description: Name of the stage. + type: string + result: + description: Result of the stage. + enum: + - OK + - Running + - Failed + - Pending + - Skipped + - Aborted + type: string + subflows: + description: Subflows of this stage. + items: + type: integer + type: array + required: + - name + - result + type: object + type: array + subflowswaitingforinput: + description: List of Ids of the Subflows waiting for input + items: + type: integer + type: array + required: + - result + type: object + type: object +served: true +storage: true +subresources: + status: {} diff --git a/static/resources/25.8.1/aggregateroutes.protocols.eda.nokia.com/v1.yaml b/static/resources/25.8.1/aggregateroutes.protocols.eda.nokia.com/v1.yaml new file mode 100644 index 0000000..c6e6fa7 --- /dev/null +++ b/static/resources/25.8.1/aggregateroutes.protocols.eda.nokia.com/v1.yaml @@ -0,0 +1,63 @@ +name: v1 +schema: + openAPIV3Schema: + description: AggregateRoute is the Schema for the aggregateroutes API + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + description: The AggregateRoute enables the configuration of aggregated routes on a specified Router. This resource allows for the definition of destination prefixes, the selection of a router, and optionally, specific nodes where the aggregate routes should be configured. Advanced options include the ability to generate ICMP unreachable messages for packets matching the aggregate route, and the ability to block the advertisement of all contributing routes in dynamic protocols like BGP. + properties: + aggregatorASN: + description: Specifies the aggregator's ASN. + format: int32 + type: integer + aggregatorIP: + description: Specifies the aggregator's IP address. + type: string + generateICMP: + description: When set to true the router generares ICMP unreachable messages for packets matching the aggregate route (and not a more specific route). + type: boolean + nodes: + description: List of nodes on which to configure the aggregate routes. An AND operation is executed against the nodes in this list and the nodes on which the Router is configured to determine the Nodes on which to configure the aggregate routes. + items: + type: string + type: array + prefixes: + description: List of destination prefixes for the aggregate routes. + items: + type: string + type: array + router: + description: Reference to a Router on which to configure the aggregate routes. If no Nodes are provided then the aggregate routes will be provisioned on all Nodes on which the Router is provisioned. + type: string + summaryOnly: + description: When set to true the router blocks the advertisement of all contributing routes of this aggregate route in dynamic protocols such as BGP. + type: boolean + required: + - prefixes + - router + type: object + status: + description: AggregateRouteStatus defines the observed state of AggregateRoute + type: object + type: object +served: true +storage: true +subresources: + status: {} diff --git a/static/resources/25.8.1/aggregateroutes.protocols.eda.nokia.com/v1alpha1.yaml b/static/resources/25.8.1/aggregateroutes.protocols.eda.nokia.com/v1alpha1.yaml new file mode 100644 index 0000000..055f7b5 --- /dev/null +++ b/static/resources/25.8.1/aggregateroutes.protocols.eda.nokia.com/v1alpha1.yaml @@ -0,0 +1,65 @@ +deprecated: true +deprecationWarning: This version is deprecated and will no longer be supported in the next version. +name: v1alpha1 +schema: + openAPIV3Schema: + description: AggregateRoute is the Schema for the aggregateroutes API + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + description: The AggregateRoute enables the configuration of aggregated routes on a specified Router. This resource allows for the definition of destination prefixes, the selection of a router, and optionally, specific nodes where the aggregate routes should be configured. Advanced options include the ability to generate ICMP unreachable messages for packets matching the aggregate route, and the ability to block the advertisement of all contributing routes in dynamic protocols like BGP. + properties: + aggregatorASN: + description: Specifies the aggregator's ASN. + format: int32 + type: integer + aggregatorIP: + description: Specifies the aggregator's IP address. + type: string + generateICMP: + description: When set to true the router generares ICMP unreachable messages for packets matching the aggregate route (and not a more specific route). + type: boolean + nodes: + description: List of nodes on which to configure the aggregate routes. An AND operation is executed against the nodes in this list and the nodes on which the Router is configured to determine the Nodes on which to configure the aggregate routes. + items: + type: string + type: array + prefixes: + description: List of destination prefixes for the aggregate routes. + items: + type: string + type: array + router: + description: Reference to a Router on which to configure the aggregate routes. If no Nodes are provided then the aggregate routes will be provisioned on all Nodes on which the Router is provisioned. + type: string + summaryOnly: + description: When set to true the router blocks the advertisement of all contributing routes of this aggregate route in dynamic protocols such as BGP. + type: boolean + required: + - prefixes + - router + type: object + status: + description: AggregateRouteStatus defines the observed state of AggregateRoute + type: object + type: object +served: true +storage: false +subresources: + status: {} diff --git a/static/resources/25.8.1/alarms.core.eda.nokia.com/v1.yaml b/static/resources/25.8.1/alarms.core.eda.nokia.com/v1.yaml new file mode 100644 index 0000000..b985673 --- /dev/null +++ b/static/resources/25.8.1/alarms.core.eda.nokia.com/v1.yaml @@ -0,0 +1,104 @@ +name: v1 +schema: + openAPIV3Schema: + description: Alarm is the Schema for the alarms API + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + description: AlarmSpec defines the desired state of Alarm + properties: + clusterSpecific: + description: Specifies if the alarm is within cluster, such as pod issue, or external issue, such as with BGP session on node + type: boolean + description: + description: Description of the alarm + minLength: 1 + type: string + group: + description: The group of the resouce the alarm is associated with, for example core.eda.nokia.com + minLength: 1 + type: string + jsPath: + description: Provide a JSON path to the resource or object that the alarm is associated with, for example .node{.name=='leaf-1-1'}.srl{.version=='24.7.1'}.interface{.name=='ethernet-1-11' + type: string + kind: + description: The kind of the resource the alarm is associated with, for example TopoNode + minLength: 1 + type: string + name: + description: Name of the alarm, this is typically the alarm Kind followed by a unique identifier such as InterfaceDown-leaf-1-1-ethernet-1-11 + minLength: 1 + type: string + parentAlarm: + description: ParentAlarm is the name of the parent alarm, if any, for example LinecardDown-leaf-1-1-Linecard1 + type: string + probableCause: + description: ProbableCause is the probable cause of the alarm + type: string + remedialAction: + description: RemedialAction is the proposed remedial action for the alarm + type: string + resource: + description: The name of the resouce the alarm is associated with, for example leaf-1-1 + minLength: 1 + type: string + severity: + description: Severity for this alarm + enum: + - warning + - minor + - major + - critical + type: string + sourceGroup: + description: The group of the resource that raise the alarm, for example core.eda.nokia.com + minLength: 1 + type: string + sourceKind: + description: The kind of the resource that raised the alarm, for example InterfaceState + minLength: 1 + type: string + sourceResource: + description: The resource that raised the alarm, for example + minLength: 1 + type: string + type: + description: Type of the alarm, for example InterfaceDown + minLength: 1 + type: string + required: + - description + - group + - kind + - name + - resource + - severity + - sourceGroup + - sourceKind + - sourceResource + - type + type: object + status: + description: AlarmStatus defines the observed state of Alarm + type: object + type: object +served: true +storage: true +subresources: + status: {} diff --git a/static/resources/appinstallers.appstore.eda.nokia.com/v1.yaml b/static/resources/25.8.1/appinstallers.appstore.eda.nokia.com/v1.yaml similarity index 100% rename from static/resources/appinstallers.appstore.eda.nokia.com/v1.yaml rename to static/resources/25.8.1/appinstallers.appstore.eda.nokia.com/v1.yaml diff --git a/static/resources/25.8.1/artifacts.artifacts.eda.nokia.com/v1.yaml b/static/resources/25.8.1/artifacts.artifacts.eda.nokia.com/v1.yaml new file mode 100644 index 0000000..8f40090 --- /dev/null +++ b/static/resources/25.8.1/artifacts.artifacts.eda.nokia.com/v1.yaml @@ -0,0 +1,183 @@ +additionalPrinterColumns: + - jsonPath: .status.downloadStatus + name: Status + type: string +name: v1 +schema: + openAPIV3Schema: + description: Artifact is the Schema for the artifacts API + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + description: ArtifactSpec defines the desired state of Artifact + properties: + filePath: + description: |- + Provide the file path, including an optional file name + For Artifacts that are directories themselves a file name is not required + minLength: 1 + type: string + fromConfigMap: + description: The secret from which the file is to be hosted in the artifact server + properties: + key: + description: Key of the data field + minLength: 1 + type: string + name: + description: The name of the configMap + minLength: 1 + type: string + namespace: + description: The namespace of the configMap + type: string + required: + - key + - name + - namespace + type: object + fromSecret: + description: The secret from which the file is to be hosted in the artifact server + properties: + key: + description: Key of the data field + minLength: 1 + type: string + name: + description: The name of the secret + minLength: 1 + type: string + namespace: + description: The namespace of the secret + type: string + required: + - key + - name + - namespace + type: object + git: + description: A git hash can be used to pull down the file from git + properties: + filePath: + description: The file path within the git repository to pull down + type: string + gitHash: + description: Git hash of the file to pull down. + pattern: ^[0-9a-fA-F]+$ + type: string + repoUrl: + description: The remote URL of the git repository from which to pull down the file + format: uri + type: string + required: + - filePath + - gitHash + - repoUrl + type: object + oci: + description: The container and registry to pull down and host in the artifact server registry + properties: + digest: + description: Digest of the file blob which needs to be downloaded + pattern: ^sha256:[a-fA-F0-9]{64}$ + type: string + registry: + description: The remote registry from which to pull down the OCI artifact + minLength: 1 + type: string + repository: + description: The name of the repository to pull down into the artifact server + minLength: 1 + type: string + tag: + description: Tag of the image which need to be pulled + type: string + required: + - registry + - repository + type: object + remoteFileUrl: + description: the remote URL from which to download the file to host in the artifact server + properties: + fileUrl: + description: This is the remote URL from which to download the file to store in the artifact server. Supported protocols are HTTPS and SFTP, URL format should include the protocol. + type: string + md5Url: + description: This is the remote URL from which to download a text file containing the MD5 hash against which the artifact server will validate the artifact before hosting + type: string + required: + - fileUrl + type: object + repo: + description: |- + Provide the repo + Multiple artifacts can have same repo + minLength: 1 + type: string + x-kubernetes-validations: + - message: repo is immutable + rule: self == oldSelf + secret: + description: If provided the secret to use for authenticating + type: string + textFile: + properties: + content: + description: Content of the text file + type: string + required: + - content + type: object + trustBundle: + description: If provided the configmap contains the trust bundle for https upstream + type: string + required: + - filePath + - repo + type: object + status: + description: ArtifactStatus defines the observed state of Artifact + properties: + downloadStatus: + enum: + - InProgress + - Error + - Failed + - Available + type: string + externalUrl: + description: External (outside of cluster) URL where this Artifact is reachable + type: string + internalUrl: + description: Internal (in cluster) URL where this Artifact is reachable + type: string + lastExternalAddress: + type: string + observedGeneration: + format: int64 + type: integer + statusReason: + description: Human-readable message indicating details about the downloadStatus's Error|Failed state + type: string + type: object + type: object +served: true +storage: true +subresources: + status: {} diff --git a/static/resources/25.8.1/aspathsetdeployments.routingpolicies.eda.nokia.com/v1alpha1.yaml b/static/resources/25.8.1/aspathsetdeployments.routingpolicies.eda.nokia.com/v1alpha1.yaml new file mode 100644 index 0000000..474011c --- /dev/null +++ b/static/resources/25.8.1/aspathsetdeployments.routingpolicies.eda.nokia.com/v1alpha1.yaml @@ -0,0 +1,42 @@ +name: v1alpha1 +schema: + openAPIV3Schema: + description: ASPathSetDeployment is the Schema for the aspathsetdeployments API + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + description: ASPathSetDeploymentSpec defines the desired state of ASPathSetDeployment + properties: + asPathSet: + description: Specifies an ASPathSet to deploy to the specified Node + type: string + node: + description: Specifies a Node to deploy this policy on + type: string + required: + - node + type: object + status: + description: ASPathSetDeploymentStatus defines the observed state of ASPathSetDeployment + type: object + type: object +served: true +storage: true +subresources: + status: {} diff --git a/static/resources/25.8.1/aspathsets.routingpolicies.eda.nokia.com/v1alpha1.yaml b/static/resources/25.8.1/aspathsets.routingpolicies.eda.nokia.com/v1alpha1.yaml new file mode 100644 index 0000000..7e0cdd5 --- /dev/null +++ b/static/resources/25.8.1/aspathsets.routingpolicies.eda.nokia.com/v1alpha1.yaml @@ -0,0 +1,45 @@ +name: v1alpha1 +schema: + openAPIV3Schema: + description: ASPathSet is the Schema for the aspathsets API + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + description: ASPathSetSpec defines the desired state of ASPathSet + properties: + members: + description: Members is a list of AS path regular expressions. + items: + type: string + type: array + regexMode: + description: Defines how AS_PATH attribute is converted into a string for regex matching. + enum: + - ASN + - Character + type: string + type: object + status: + description: ASPathSetStatus defines the observed state of ASPathSet + type: object + type: object +served: true +storage: true +subresources: + status: {} diff --git a/static/resources/25.8.1/attachmentlookups.routing.eda.nokia.com/v1alpha1.yaml b/static/resources/25.8.1/attachmentlookups.routing.eda.nokia.com/v1alpha1.yaml new file mode 100644 index 0000000..76f90e2 --- /dev/null +++ b/static/resources/25.8.1/attachmentlookups.routing.eda.nokia.com/v1alpha1.yaml @@ -0,0 +1,83 @@ +name: v1alpha1 +schema: + openAPIV3Schema: + description: AttachmentLookup is the Schema for the attachmentlookups API + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + description: |- + This workflow is used to look up attachments (where an address is attached in the network) on a set of nodes. + It takes an address, and an optional list of nodes (or node selectors - a list of label expressions) to perform the lookup on, + and returns the matching attachments, including the node, + network instance, prefix, interface, and next hop group ID. + properties: + address: + description: |- + Address to perform a lookup for. + This is a standard IPv4 or IPv6 address, excluding mask or prefix length, e.g. 12.0.0.1. + type: string + networkInstance: + description: |- + Network Instance is the locally named network instance to use for the lookup. + Can be omitted if the default network instance is to be used. + type: string + nodeSelectors: + description: |- + NodeSelectors is a list of node selectors to execute lookups on. + This is a list of label expressions, e.g. ["eda.nokia.com/role=leaf", "eda.nokia.com/region=us-west"]. + items: + type: string + type: array + nodes: + description: Nodes is a list of node names to execute lookups on. + items: + type: string + type: array + required: + - address + type: object + status: + description: AttachmentLookupStatus defines the observed state of AttachmentLookup + properties: + found: + type: boolean + results: + items: + properties: + interface: + type: string + networkInstance: + type: string + nextHopGroupId: + format: int64 + type: integer + node: + type: string + prefix: + type: string + type: object + type: array + required: + - found + type: object + type: object +served: true +storage: true +subresources: + status: {} diff --git a/static/resources/25.8.1/backends.aifabrics.eda.nokia.com/v1alpha1.yaml b/static/resources/25.8.1/backends.aifabrics.eda.nokia.com/v1alpha1.yaml new file mode 100644 index 0000000..8b7da72 --- /dev/null +++ b/static/resources/25.8.1/backends.aifabrics.eda.nokia.com/v1alpha1.yaml @@ -0,0 +1,222 @@ +additionalPrinterColumns: + - jsonPath: .status.lastChange + name: Last Change + type: date + - jsonPath: .status.operationalState + name: Operational State + type: string +name: v1alpha1 +schema: + openAPIV3Schema: + description: Backend is the Schema for the backends API + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + description: BackendSpec defines the desired state of Backend + properties: + asnPool: + description: Reference to an IndexAllocationPool pool to use for Autonomous System Number allocations. Used when eBGP is configured as an underlay protocol. + type: string + gpuIsolationGroups: + description: GPU Isolation Groups are used to isolate GPU traffic over the network, GPUs in different GPU isolation groups will not be able to communicate with each other. If all GPUs across all stripes need to be able to communicate with each other, create a single GPUIsolationGroup selecting all GPU facing interfaces. + items: + properties: + interfaceSelector: + items: + type: string + type: array + name: + description: Name of the IsolationGroup. + type: string + required: + - interfaceSelector + - name + type: object + type: array + rocev2QoS: + description: Set of properties to configure the RoCEv2 QoS. + properties: + ecnMaxDropProbabilityPercent: + default: 100 + description: If the queue depth is between min and max threshold then this the probability with which packets are dropped or marked. + type: integer + ecnSlopeMaxThresholdPercent: + default: 80 + description: The maximum threshold parameter for a RED-managed queue in percent. When the average queue length exceeds the max value, all packets are dropped (or marked if ECN is enabled). Mutually exclusive with min-threshold and max-threshold. + type: integer + ecnSlopeMinThresholdPercent: + default: 5 + description: The mininum threshold parameter for a RED-managed queue in percent. When the average queue length is less than min, all packets are admitted to the queue. Mutually exclusive with min-threshold and max-threshold. + type: integer + pfcDeadlockDetectionTimer: + default: 750 + description: Number of milliseconds during which outgoing interface is receiving pfc-pause-frames before triggering recovery-timer. + type: integer + pfcDeadlockRecoveryTimer: + default: 750 + description: Number of milliseconds during which the pfc-pause-frames will be ignored. + type: integer + queueMaximumBurstSize: + default: 52110640 + description: Maximum amount of shared buffer memory available to the queue in bytes. + format: int32 + maximum: 4294967295 + minimum: 0 + type: integer + required: + - ecnMaxDropProbabilityPercent + - ecnSlopeMaxThresholdPercent + - ecnSlopeMinThresholdPercent + - pfcDeadlockDetectionTimer + - pfcDeadlockRecoveryTimer + - queueMaximumBurstSize + type: object + stripeConnector: + description: StripeConnector is the spine layer interconnecting multiple stripes. + properties: + asnPool: + description: Reference to an IndexAllocationPool pool to use for Autonomous System Number allocations. + type: string + linkSelector: + description: Selects TopoLinks to include in this AI Fabric, the selected TopoLinks will be used to create ISLs between the stripe connector devices and the leaf devices. + items: + type: string + type: array + name: + description: The name of the Stripe Connector. + type: string + nodeSelector: + description: Node selector to select the nodes to be used for this stripe connector. + items: + type: string + type: array + systemPoolIPV4: + description: Reference to an IPAllocationPool used to dynamically allocate an IPv4 address to system/lo0 interfaces for the stripe connector devices. If not specified, the system will use the default IPAllocationPool. + type: string + required: + - linkSelector + - name + - nodeSelector + type: object + stripes: + description: A list of stripes, stripes contain a set of nodes (rails). + items: + properties: + asnPool: + description: Optional reference to an IndexAllocationPool pool to use for Autonomous System Number allocations. If left blank, ASN allocation will be done from the ASNAllocationRange. + type: string + gpuVlan: + description: The VLAN used on interfaces facing the GPU servers. + type: integer + name: + description: The name of the Stripe. + type: string + nodeSelector: + description: Node selector to select the nodes to be used for this stripe. + items: + type: string + type: array + stripeID: + description: Unique ID for a stripe + type: integer + systemPoolIPV4: + description: Optional reference to an IPAllocationPool used to dynamically allocate an IPv4 address to system/lo0 interfaces. If left blank, system IP allocation will be done from the SystemIPV4Subnet. + type: string + required: + - gpuVlan + - name + - nodeSelector + - stripeID + type: object + type: array + systemPoolIPV4: + description: Reference to an IPAllocationPool used to dynamically allocate an IPv4 address to system/lo0 interfaces. If specified under the Leaf/Spine/Superspine/Borderleaf those will take precedence. + type: string + required: + - gpuIsolationGroups + - rocev2QoS + - stripes + type: object + status: + description: BackendStatus defines the observed state of Backend + properties: + health: + description: Indicates the health score of the Fabric. The health score of the Fabric is determined by the aggregate health score of the resources emited by the Fabric such as ISL, DefaultRouteReflectors etc. + type: integer + healthScoreReason: + description: Indicates the reason for the health score. + type: string + lastChange: + description: The time when the state of the resource last changed. + type: string + operationalState: + description: 'Operational state of the Fabric. The operational state of the fabric is determined by monitoring the operational state of the following resources (if applicable): DefaultRouters, ISLs.' + type: string + stripeConnector: + description: Stripe connector in the Backend. + properties: + name: + description: The name of the Stripe Connector. + type: string + stripeConnectorNodes: + description: List of stripe connector nodes in the Stripe. + items: + properties: + node: + description: Name of the TopoNode. + type: string + operatingSystem: + description: Operating system running on the node. + type: string + operatingSystemVersion: + description: Operating system version running on the node. + type: string + type: object + type: array + type: object + stripes: + description: List of stripes in the Backend. + items: + properties: + leafNodes: + description: List of leaf nodes in the Stripe. + items: + properties: + node: + description: Name of the TopoNode. + type: string + operatingSystem: + description: Operating system running on the node. + type: string + operatingSystemVersion: + description: Operating system version running on the node. + type: string + type: object + type: array + name: + description: The name of the Stripe. + type: string + type: object + type: array + type: object + type: object +served: true +storage: true +subresources: + status: {} diff --git a/static/resources/25.8.1/backendstates.aifabrics.eda.nokia.com/v1alpha1.yaml b/static/resources/25.8.1/backendstates.aifabrics.eda.nokia.com/v1alpha1.yaml new file mode 100644 index 0000000..6a7b585 --- /dev/null +++ b/static/resources/25.8.1/backendstates.aifabrics.eda.nokia.com/v1alpha1.yaml @@ -0,0 +1,94 @@ +name: v1alpha1 +schema: + openAPIV3Schema: + description: BackendState is the Schema for the backendstates API + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + description: BackendStateSpec defines the desired state of BackendState + properties: + gpuIsolationGroups: + description: IsolationGroups in the Backend. + items: + properties: + interfaces: + description: List of interfaces mapped to the IsolationGroup. + items: + type: string + type: array + name: + description: The name of the IsolationGroup. + type: string + type: object + type: array + stripeConnector: + description: Stripe connector in the Backend. + properties: + name: + description: The name of the Stripe Connector. + type: string + stripeConnectorNodes: + description: List of stripe connector nodes in the Stripe. + items: + properties: + node: + description: Name of the TopoNode. + type: string + operatingSystem: + description: Operating system running on the node. + type: string + operatingSystemVersion: + description: Operating system version running on the node. + type: string + type: object + type: array + type: object + stripes: + description: List of stripes in the Backend. + items: + properties: + leafNodes: + description: List of leaf nodes in the Stripe. + items: + properties: + node: + description: Name of the TopoNode. + type: string + operatingSystem: + description: Operating system running on the node. + type: string + operatingSystemVersion: + description: Operating system version running on the node. + type: string + type: object + type: array + name: + description: The name of the Stripe. + type: string + type: object + type: array + type: object + status: + description: BackendStateStatus defines the observed state of BackendState + type: object + type: object +served: true +storage: true +subresources: + status: {} diff --git a/static/resources/25.8.1/banners.siteinfo.eda.nokia.com/v1alpha1.yaml b/static/resources/25.8.1/banners.siteinfo.eda.nokia.com/v1alpha1.yaml new file mode 100644 index 0000000..96fcedd --- /dev/null +++ b/static/resources/25.8.1/banners.siteinfo.eda.nokia.com/v1alpha1.yaml @@ -0,0 +1,56 @@ +name: v1alpha1 +schema: + openAPIV3Schema: + description: Banner is the Schema for the banners API + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + description: BannerSpec allows the configuration of login and MOTD (Message of the Day) banners on selected nodes. The banners can be applied to specific nodes or selected using label selectors. + properties: + loginBanner: + description: This is the login banner displayed before a user has logged into the Node. + type: string + motd: + description: This is the MOTD banner displayed after a user has logged into the Node. + type: string + nodeSelector: + description: Labe selector to select nodes on which to configure the banners. + items: + type: string + type: array + nodes: + description: List of nodes on which to configure the banners. + items: + type: string + type: array + type: object + status: + description: BannerStatus defines the observed state of Banner + properties: + nodes: + description: List of nodes this banner has been applied to + items: + type: string + type: array + type: object + type: object +served: true +storage: true +subresources: + status: {} diff --git a/static/resources/25.8.1/bannerstates.siteinfo.eda.nokia.com/v1alpha1.yaml b/static/resources/25.8.1/bannerstates.siteinfo.eda.nokia.com/v1alpha1.yaml new file mode 100644 index 0000000..95ef8f2 --- /dev/null +++ b/static/resources/25.8.1/bannerstates.siteinfo.eda.nokia.com/v1alpha1.yaml @@ -0,0 +1,39 @@ +name: v1alpha1 +schema: + openAPIV3Schema: + description: BannerState is the Schema for the bannerstates API + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + description: BannerStateSpec defines the desired state of BannerState + properties: + nodes: + description: List of TopoNodes this banner has been applied to + items: + type: string + type: array + type: object + status: + description: BannerStateStatus defines the observed state of BannerState + type: object + type: object +served: true +storage: true +subresources: + status: {} diff --git a/static/resources/25.8.1/bgpgroupdeployments.protocols.eda.nokia.com/v1.yaml b/static/resources/25.8.1/bgpgroupdeployments.protocols.eda.nokia.com/v1.yaml new file mode 100644 index 0000000..470b027 --- /dev/null +++ b/static/resources/25.8.1/bgpgroupdeployments.protocols.eda.nokia.com/v1.yaml @@ -0,0 +1,47 @@ +name: v1 +schema: + openAPIV3Schema: + description: BGPGroupDeployment is the Schema for the bgpgroupdeployments API + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + description: BGPGroupDeploymentSpec defines the desired state of BGPGroupDeployment + properties: + bgpGroup: + description: Reference to a BgpGroup + type: string + node: + description: Reference to a Node on which to push the BgpGroup + type: string + router: + description: Reference to a Router + type: string + required: + - bgpGroup + - node + - router + type: object + status: + description: BGPGroupDeploymentStatus defines the observed state of BGPGroupDeployment + type: object + type: object +served: true +storage: true +subresources: + status: {} diff --git a/static/resources/25.8.1/bgpgroupdeployments.protocols.eda.nokia.com/v1alpha1.yaml b/static/resources/25.8.1/bgpgroupdeployments.protocols.eda.nokia.com/v1alpha1.yaml new file mode 100644 index 0000000..e2b5fb3 --- /dev/null +++ b/static/resources/25.8.1/bgpgroupdeployments.protocols.eda.nokia.com/v1alpha1.yaml @@ -0,0 +1,49 @@ +deprecated: true +deprecationWarning: This version is deprecated and will no longer be supported in the next version. +name: v1alpha1 +schema: + openAPIV3Schema: + description: BGPGroupDeployment is the Schema for the bgpgroupdeployments API + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + description: BGPGroupDeploymentSpec defines the desired state of BGPGroupDeployment + properties: + bgpGroup: + description: Reference to a BgpGroup + type: string + node: + description: Reference to a Node on which to push the BgpGroup + type: string + router: + description: Reference to a Router + type: string + required: + - bgpGroup + - node + - router + type: object + status: + description: BGPGroupDeploymentStatus defines the observed state of BGPGroupDeployment + type: object + type: object +served: true +storage: false +subresources: + status: {} diff --git a/static/resources/bgpgroups.protocols.eda.nokia.com/v1.yaml b/static/resources/25.8.1/bgpgroups.protocols.eda.nokia.com/v1.yaml similarity index 100% rename from static/resources/bgpgroups.protocols.eda.nokia.com/v1.yaml rename to static/resources/25.8.1/bgpgroups.protocols.eda.nokia.com/v1.yaml diff --git a/static/resources/25.8.1/bgpgroups.protocols.eda.nokia.com/v1alpha1.yaml b/static/resources/25.8.1/bgpgroups.protocols.eda.nokia.com/v1alpha1.yaml new file mode 100644 index 0000000..5111fe2 --- /dev/null +++ b/static/resources/25.8.1/bgpgroups.protocols.eda.nokia.com/v1alpha1.yaml @@ -0,0 +1,252 @@ +additionalPrinterColumns: + - jsonPath: .status.lastChange + name: Last Change + type: date + - jsonPath: .status.operationalState + name: Operational State + type: string +deprecated: true +deprecationWarning: This version is deprecated and will no longer be supported in the next version. +name: v1alpha1 +schema: + openAPIV3Schema: + description: BGPGroup is the Schema for the bgpgroups API + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + description: The BGPGroup enables centralized management of BGP peer configurations. This resource allows setting a description, common BGP settings, and peer-specific configurations, simplifying the consistent application of policies across multiple peers. It also includes transport settings, such as local TCP address configuration, passive mode, and TCP MSS. + properties: + asPathOptions: + description: AS Path Options + properties: + allowOwnAS: + default: 0 + description: The maximum number of times the global AS number or a local AS number of the BGP instance can appear in any received AS_PATH before it is considered a loop and considered invalid. + maximum: 255 + minimum: 0 + type: integer + removePrivateAS: + description: Options for removing private AS numbers (2-byte and 4-byte) from the advertised AS path towards all peers. + properties: + ignorePeerAS: + default: false + description: If set to true then do not delete or replace a private AS number that is the same as the peer AS number. + type: boolean + leadingOnly: + default: false + description: If set to true then only delete or replace private AS numbers that appear before the first occurrence of a non-private ASN in the sequence of most recent ASNs in the AS path. + type: boolean + removePrivateASMode: + default: DISABLED + description: The method by which private AS numbers are removed from the advertised AS_PATH attribute. + enum: + - DISABLED + - REPLACE + - DELETE + type: string + required: + - ignorePeerAS + - leadingOnly + - removePrivateASMode + type: object + required: + - allowOwnAS + type: object + bfd: + description: Enable or disable Bi-forward Forwarding Detection (BFD) with fast failover. + type: boolean + client: + description: When set to true, all configured and dynamic BGP peers are considered RR clients. + type: boolean + clusterID: + description: Enables route reflect client and sets the cluster ID. + type: string + description: + description: Sets the description on the BGP group. + type: string + exportPolicy: + description: Reference to a Policy CR that will be used to filter routes advertised to peers. + items: + type: string + type: array + grStaleRouteTime: + description: Enables Graceful Restart on the peer and sets the stale route time. + maximum: 3600 + minimum: 1 + type: integer + importPolicy: + description: Reference to a Policy CR that will be used to filter routes received from peers. + items: + type: string + type: array + ipv4Unicast: + description: Parameters relating to the IPv4 unicast AFI/SAFI. + properties: + advertiseIPV6NextHops: + description: Enables advertisement of IPv4 Unicast routes with IPv6 next-hops to peers. + type: boolean + enabled: + description: Enables the IPv4 unicast AFISAFI. + type: boolean + maxReceivedRoutes: + description: Maximum number of IPv4 Unicast routes that will be accepted from the neighbor, counting routes accepted and rejected by import policies. + maximum: 4294967295 + minimum: 1 + type: integer + receiveIPV6NextHops: + description: Enables the advertisement of the RFC 5549 capability to receive IPv4 routes with IPv6 next-hops. + type: boolean + type: object + ipv6Unicast: + description: Parameters relating to the IPv6 unicast AFI/SAFI. + properties: + enabled: + description: Enables the IPv6 unicast AFISAFI + type: boolean + maxReceivedRoutes: + description: Maximum number of IPv6 Unicast routes that will be accepted from the neighbor, counting routes accepted and rejected by import policies. + maximum: 4294967295 + minimum: 1 + type: integer + type: object + keychain: + description: Reference to a Keychain resource that will be used for authentication with the BGP peer. + type: string + localAS: + description: The local autonomous system number advertised to peers. + properties: + autonomousSystem: + description: Local Autonomous System number. + maximum: 4294967295 + minimum: 1 + type: integer + prependGlobalAS: + description: When set to true, the global ASN value is prepended to the AS path in outbound routes towards each BGP peer. + type: boolean + prependLocalAS: + description: When set to true, the local AS value is prepended to the AS path of inbound routes from each EBGP peer. + type: boolean + required: + - autonomousSystem + type: object + localPreference: + description: Local Preference attribute added to received routes from the BGP peers, also sets local preference for generated routes. + maximum: 4294967295 + minimum: 0 + type: integer + multiHopMaxHop: + description: Enable multihop for eBGP peers and sets the maximum number of hops allowed. + maximum: 255 + minimum: 1 + type: integer + nextHopSelf: + description: When set to true, the next-hop in all IPv4-unicast, IPv6-unicast and EVPN BGP routes advertised to the peer is set to the local-address. + type: boolean + peerAS: + description: The autonomous system number expected from peers. + properties: + autonomousSystem: + description: Local Autonomous System number. + maximum: 4294967295 + minimum: 1 + type: integer + required: + - autonomousSystem + type: object + sendCommunityLarge: + description: When false, all large (12 byte) BGP communities from all outbound routes advertised to the peer are stripped. + type: boolean + sendCommunityStandard: + description: When false, all standard (4 byte) communities from all outbound routes advertised to the peer are stripped. + type: boolean + sendDefaultRoute: + description: Options for controlling the generation of default routes towards BGP peers. + properties: + addressFamily: + description: Enables the sending of a synthetically generated default IPv4 or IPV6 route to each peer. + items: + enum: + - IPV4-UNICAST + - IPV6-UNICAST + type: string + type: array + exportPolicy: + description: Reference to a Policy that should be applied to the advertised default routes, in order to set their attributes to non-default values. + type: string + required: + - addressFamily + type: object + timers: + description: Timer configurations + properties: + connectRetry: + description: The time interval in seconds between successive attempts to establish a session with a peer. + maximum: 65535 + minimum: 1 + type: integer + holdTime: + description: The hold-time interval in seconds that the router proposes to the peer in its OPEN message. + maximum: 65535 + minimum: 0 + type: integer + keepAlive: + description: The interval in seconds between successive keepalive messages sent to the peer. + maximum: 21845 + minimum: 0 + type: integer + minimumAdvertisementInterval: + description: The value assigned to the MinRouteAdvertisementIntervalTimer of RFC 4271, for both EBGP and IBGP sessions. + maximum: 255 + minimum: 1 + type: integer + type: object + type: object + status: + description: BGPGroupStatus defines the observed state of BGPGroup + properties: + health: + description: Indicates the health score of the BGP group. + type: integer + healthScoreReason: + description: Indicates the reason for the health score. + type: string + lastChange: + description: The time when the state of the resource last changed. + type: string + numPeers: + description: Number of configured BGP peers within the BGP Group. + format: int32 + type: integer + numPeersOperDown: + description: Number of configured BGP peers which have an Operational State of down within the BGP Group. + format: int32 + type: integer + numPeersUnknown: + description: Number of configured BGP peers within the BGP Group which cannot be reached by npp. + format: int32 + type: integer + operationalState: + description: Operational state of the BGP group. + type: string + type: object + type: object +served: true +storage: false +subresources: + status: {} diff --git a/static/resources/bgpgroupstates.protocols.eda.nokia.com/v1.yaml b/static/resources/25.8.1/bgpgroupstates.protocols.eda.nokia.com/v1.yaml similarity index 100% rename from static/resources/bgpgroupstates.protocols.eda.nokia.com/v1.yaml rename to static/resources/25.8.1/bgpgroupstates.protocols.eda.nokia.com/v1.yaml diff --git a/static/resources/25.8.1/bgpgroupstates.protocols.eda.nokia.com/v1alpha1.yaml b/static/resources/25.8.1/bgpgroupstates.protocols.eda.nokia.com/v1alpha1.yaml new file mode 100644 index 0000000..d6c17dc --- /dev/null +++ b/static/resources/25.8.1/bgpgroupstates.protocols.eda.nokia.com/v1alpha1.yaml @@ -0,0 +1,44 @@ +deprecated: true +deprecationWarning: This version is deprecated and will no longer be supported in the next version. +name: v1alpha1 +schema: + openAPIV3Schema: + description: BGPGroupState is the Schema for the bgpgroupstates API + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + description: BGPGroupStateSpec defines the desired state of BGPGroupState + properties: + defaultBGPGroup: + description: Denotes if the group is a DefaultBGPGroup or BGPGroup + type: boolean + group: + type: string + required: + - defaultBGPGroup + - group + type: object + status: + description: BGPGroupStateStatus defines the observed state of BGPGroupState + type: object + type: object +served: true +storage: false +subresources: + status: {} diff --git a/static/resources/25.8.1/bgppeers.protocols.eda.nokia.com/v1.yaml b/static/resources/25.8.1/bgppeers.protocols.eda.nokia.com/v1.yaml new file mode 100644 index 0000000..cda8f76 --- /dev/null +++ b/static/resources/25.8.1/bgppeers.protocols.eda.nokia.com/v1.yaml @@ -0,0 +1,366 @@ +additionalPrinterColumns: + - jsonPath: .status.sessionState + name: Session State + type: string + - jsonPath: .status.lastChange + name: Last Change + type: date + - jsonPath: .status.enabled + name: Enabled + type: boolean + - jsonPath: .status.operationalState + name: Operational State + type: string + - jsonPath: .status.peerAS + name: PeerAS + type: integer +name: v1 +schema: + openAPIV3Schema: + description: BGPPeer is the Schema for the bgppeers API + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + description: BGPPeer enables the configuration of BGP sessions. It allows specifying a description, an interface reference (either RoutedInterface or IrbInterface), and the peer IP address. The resource also supports dynamic neighbors, common BGP settings, and peer-specific configurations. + properties: + asPathOptions: + description: AS Path Options + properties: + allowOwnAS: + default: 0 + description: The maximum number of times the global AS number or a local AS number of the BGP instance can appear in any received AS_PATH before it is considered a loop and considered invalid. + maximum: 255 + minimum: 0 + type: integer + removePrivateAS: + description: Options for removing private AS numbers (2-byte and 4-byte) from the advertised AS path towards all peers. + properties: + ignorePeerAS: + default: false + description: If set to true then do not delete or replace a private AS number that is the same as the peer AS number. + type: boolean + leadingOnly: + default: false + description: If set to true then only delete or replace private AS numbers that appear before the first occurrence of a non-private ASN in the sequence of most recent ASNs in the AS path. + type: boolean + removePrivateASMode: + default: DISABLED + description: The method by which private AS numbers are removed from the advertised AS_PATH attribute. + enum: + - DISABLED + - REPLACE + - DELETE + type: string + required: + - ignorePeerAS + - leadingOnly + - removePrivateASMode + type: object + required: + - allowOwnAS + type: object + bfd: + description: Enable or disable Bi-forward Forwarding Detection (BFD) with fast failover. + type: boolean + client: + description: When set to true, all configured and dynamic BGP peers are considered RR clients. + type: boolean + clusterID: + description: Enables route reflect client and sets the cluster ID. + type: string + description: + description: Sets the description on the BGP peer + type: string + dynamicNeighbor: + default: false + description: When set to true the Interface is added to the dynamic-neighbor list for dynamic peering. + type: boolean + dynamicNeighborAllowedPeerAS: + description: The autonomous system numbers allowed from peers if dynamic peering is enabled. + items: + type: integer + type: array + exportPolicy: + description: Reference to a Policy CR that will be used to filter routes advertised to peers. + items: + type: string + type: array + grStaleRouteTime: + description: Enables Graceful Restart on the peer and sets the stale route time. + maximum: 3600 + minimum: 1 + type: integer + group: + description: Reference to a BGPGroup. When present this BGP peer will be added to the BGP group + type: string + importPolicy: + description: Reference to a Policy CR that will be used to filter routes received from peers. + items: + type: string + type: array + interface: + description: Reference to a RoutedInterface or IrbInterface resource whose IP will be used as a source IP for the BGP session. + type: string + interfaceKind: + description: InterfaceReference type defines whether the provided Reference is a RoutedInterface or IrbInterface. + enum: + - ROUTEDINTERFACE + - IRBINTERFACE + type: string + ipv4Unicast: + description: Parameters relating to the IPv4 unicast AFI/SAFI. + properties: + advertiseIPV6NextHops: + description: Enables advertisement of IPv4 Unicast routes with IPv6 next-hops to peers. + type: boolean + enabled: + description: Enables the IPv4 unicast AFISAFI. + type: boolean + prefixLimit: + properties: + prefixLimitAccepted: + properties: + logOnly: + description: Defines the action to take when the maximum number of prefixes is exceeded. Session is reset if set to false, otherwise only a warning is logged. + type: boolean + maxReceivedRoutes: + description: Maximum number of prefixes allowed to be received from the neighbor, counting only accepted routes. + format: int32 + maximum: 4294967295 + minimum: 1 + type: integer + warningThreshold: + description: A percentage of the maximum number of prefixes that can be accepted before a warning is logged. + maximum: 100 + minimum: 1 + type: integer + type: object + prefixLimitReceived: + properties: + logOnly: + description: Defines the action to take when the maximum number of prefixes is exceeded. Session is reset if set to false, otherwise only a warning is logged. + type: boolean + maxReceivedRoutes: + description: Maximum number of prefixes allowed to be received from the neighbor, counting all routes (accepted and rejected by import policies). + format: int32 + maximum: 4294967295 + minimum: 1 + type: integer + warningThreshold: + description: A percentage of the maximum number of prefixes that can be received before a warning is logged. + maximum: 100 + minimum: 1 + type: integer + type: object + type: object + receiveIPV6NextHops: + description: Enables the advertisement of the RFC 5549 capability to receive IPv4 routes with IPv6 next-hops. + type: boolean + type: object + ipv6Unicast: + description: Parameters relating to the IPv6 unicast AFI/SAFI. + properties: + enabled: + description: Enables the IPv6 unicast AFISAFI + type: boolean + prefixLimit: + properties: + prefixLimitAccepted: + properties: + logOnly: + description: Defines the action to take when the maximum number of prefixes is exceeded. Session is reset if set to false, otherwise only a warning is logged. + type: boolean + maxReceivedRoutes: + description: Maximum number of prefixes allowed to be received from the neighbor, counting only accepted routes. + format: int32 + maximum: 4294967295 + minimum: 1 + type: integer + warningThreshold: + description: A percentage of the maximum number of prefixes that can be accepted before a warning is logged. + maximum: 100 + minimum: 1 + type: integer + type: object + prefixLimitReceived: + properties: + logOnly: + description: Defines the action to take when the maximum number of prefixes is exceeded. Session is reset if set to false, otherwise only a warning is logged. + type: boolean + maxReceivedRoutes: + description: Maximum number of prefixes allowed to be received from the neighbor, counting all routes (accepted and rejected by import policies). + format: int32 + maximum: 4294967295 + minimum: 1 + type: integer + warningThreshold: + description: A percentage of the maximum number of prefixes that can be received before a warning is logged. + maximum: 100 + minimum: 1 + type: integer + type: object + type: object + type: object + keychain: + description: Reference to a Keychain resource that will be used for authentication with the BGP peer. + type: string + localAS: + description: The local autonomous system number advertised to peers. + properties: + autonomousSystem: + description: Local Autonomous System number. + maximum: 4294967295 + minimum: 1 + type: integer + prependGlobalAS: + description: When set to true, the global ASN value is prepended to the AS path in outbound routes towards each BGP peer. + type: boolean + prependLocalAS: + description: When set to true, the local AS value is prepended to the AS path of inbound routes from each EBGP peer. + type: boolean + required: + - autonomousSystem + type: object + localPreference: + description: Local Preference attribute added to received routes from the BGP peers, also sets local preference for generated routes. + maximum: 4294967295 + minimum: 0 + type: integer + multiHopMaxHop: + description: Enable multihop for eBGP peers and sets the maximum number of hops allowed. + maximum: 255 + minimum: 1 + type: integer + nextHopSelf: + description: When set to true, the next-hop in all IPv4-unicast, IPv6-unicast and EVPN BGP routes advertised to the peer is set to the local-address. + type: boolean + node: + description: Node on which to configure the BGP peer. This node must be one of the nodes on which the IRBInterface is configured. When left blank or if the node is not part of the IRBInterface, the peer will not be deployed. Ignored for RoutedInterfaces. + type: string + peerAS: + description: The autonomous system number expected from peers. + properties: + autonomousSystem: + description: Local Autonomous System number. + maximum: 4294967295 + minimum: 1 + type: integer + required: + - autonomousSystem + type: object + peerIP: + description: Peer IP to which the peering session will be established. + type: string + sendCommunityLarge: + description: When false, all large (12 byte) BGP communities from all outbound routes advertised to the peer are stripped. + type: boolean + sendCommunityStandard: + description: When false, all standard (4 byte) communities from all outbound routes advertised to the peer are stripped. + type: boolean + sendDefaultRoute: + description: Options for controlling the generation of default routes towards BGP peers. + properties: + addressFamily: + description: Enables the sending of a synthetically generated default IPv4 or IPV6 route to each peer. + items: + enum: + - IPV4-UNICAST + - IPV6-UNICAST + type: string + type: array + exportPolicy: + description: Reference to a Policy that should be applied to the advertised default routes, in order to set their attributes to non-default values. + type: string + required: + - addressFamily + type: object + timers: + description: Timer configurations + properties: + connectRetry: + description: The time interval in seconds between successive attempts to establish a session with a peer. + maximum: 65535 + minimum: 1 + type: integer + holdTime: + description: The hold-time interval in seconds that the router proposes to the peer in its OPEN message. + maximum: 65535 + minimum: 0 + type: integer + keepAlive: + description: The interval in seconds between successive keepalive messages sent to the peer. + maximum: 21845 + minimum: 0 + type: integer + minimumAdvertisementInterval: + description: The value assigned to the MinRouteAdvertisementIntervalTimer of RFC 4271, for both EBGP and IBGP sessions. + maximum: 255 + minimum: 1 + type: integer + type: object + required: + - group + - interface + - interfaceKind + type: object + status: + description: BGPPeerStatus defines the observed state of BGPPeer + properties: + enabled: + description: Indicated whether the BGP Peer is administratively enabled. + type: boolean + health: + description: Indicates the health score of the BGP peer. + type: integer + healthScoreReason: + description: Indicates the reason for the health score. + type: string + lastChange: + description: The time when the state of the resource last changed. + type: string + lastEvent: + description: Last event of the BGP peer. + type: string + lastState: + description: Last state of the BGP peer. + type: string + negotiatedHoldTime: + description: Hold time negotiated with the BGP peer. + type: integer + negotiatedKeepaliveInterval: + description: Keepalive interval negotiated with the BGP peer. + type: integer + operationalState: + description: Operational state of the BGP peer + type: string + peerAS: + description: Peer AS of the BGP peer. + type: integer + sessionState: + description: The state of the BGP session. + type: string + underMaintenance: + description: Indicates if the BGP peer is under maintenance. + type: boolean + type: object + type: object +served: true +storage: true +subresources: + status: {} diff --git a/static/resources/25.8.1/bgppeers.protocols.eda.nokia.com/v1alpha1.yaml b/static/resources/25.8.1/bgppeers.protocols.eda.nokia.com/v1alpha1.yaml new file mode 100644 index 0000000..0304ecb --- /dev/null +++ b/static/resources/25.8.1/bgppeers.protocols.eda.nokia.com/v1alpha1.yaml @@ -0,0 +1,304 @@ +additionalPrinterColumns: + - jsonPath: .status.sessionState + name: Session State + type: string + - jsonPath: .status.lastChange + name: Last Change + type: date + - jsonPath: .status.enabled + name: Enabled + type: boolean + - jsonPath: .status.operationalState + name: Operational State + type: string + - jsonPath: .status.peerAS + name: PeerAS + type: integer +deprecated: true +deprecationWarning: This version is deprecated and will no longer be supported in the next version. +name: v1alpha1 +schema: + openAPIV3Schema: + description: BGPPeer is the Schema for the bgppeers API + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + description: BGPPeer enables the configuration of BGP sessions. It allows specifying a description, an interface reference (either RoutedInterface or IrbInterface), and the peer IP address. The resource also supports dynamic neighbors, common BGP settings, and peer-specific configurations. + properties: + asPathOptions: + description: AS Path Options + properties: + allowOwnAS: + default: 0 + description: The maximum number of times the global AS number or a local AS number of the BGP instance can appear in any received AS_PATH before it is considered a loop and considered invalid. + maximum: 255 + minimum: 0 + type: integer + removePrivateAS: + description: Options for removing private AS numbers (2-byte and 4-byte) from the advertised AS path towards all peers. + properties: + ignorePeerAS: + default: false + description: If set to true then do not delete or replace a private AS number that is the same as the peer AS number. + type: boolean + leadingOnly: + default: false + description: If set to true then only delete or replace private AS numbers that appear before the first occurrence of a non-private ASN in the sequence of most recent ASNs in the AS path. + type: boolean + removePrivateASMode: + default: DISABLED + description: The method by which private AS numbers are removed from the advertised AS_PATH attribute. + enum: + - DISABLED + - REPLACE + - DELETE + type: string + required: + - ignorePeerAS + - leadingOnly + - removePrivateASMode + type: object + required: + - allowOwnAS + type: object + bfd: + description: Enable or disable Bi-forward Forwarding Detection (BFD) with fast failover. + type: boolean + client: + description: When set to true, all configured and dynamic BGP peers are considered RR clients. + type: boolean + clusterID: + description: Enables route reflect client and sets the cluster ID. + type: string + description: + description: Sets the description on the BGP peer + type: string + dynamicNeighbor: + default: false + description: When set to true the Interface is added to the dynamic-neighbor list for dynamic peering. + type: boolean + dynamicNeighborAllowedPeerAS: + description: The autonomous system numbers allowed from peers if dynamic peering is enabled. + items: + type: integer + type: array + exportPolicy: + description: Reference to a Policy CR that will be used to filter routes advertised to peers. + items: + type: string + type: array + grStaleRouteTime: + description: Enables Graceful Restart on the peer and sets the stale route time. + maximum: 3600 + minimum: 1 + type: integer + group: + description: Reference to a BGPGroup. When present this BGP peer will be added to the BGP group + type: string + importPolicy: + description: Reference to a Policy CR that will be used to filter routes received from peers. + items: + type: string + type: array + interface: + description: Reference to a RoutedInterface or IrbInterface resource whose IP will be used as a source IP for the BGP session. + type: string + interfaceKind: + description: InterfaceReference type defines whether the provided Reference is a RoutedInterface or IrbInterface. + enum: + - ROUTEDINTERFACE + - IRBINTERFACE + type: string + ipv4Unicast: + description: Parameters relating to the IPv4 unicast AFI/SAFI. + properties: + advertiseIPV6NextHops: + description: Enables advertisement of IPv4 Unicast routes with IPv6 next-hops to peers. + type: boolean + enabled: + description: Enables the IPv4 unicast AFISAFI. + type: boolean + maxReceivedRoutes: + description: Maximum number of IPv4 Unicast routes that will be accepted from the neighbor, counting routes accepted and rejected by import policies. + maximum: 4294967295 + minimum: 1 + type: integer + receiveIPV6NextHops: + description: Enables the advertisement of the RFC 5549 capability to receive IPv4 routes with IPv6 next-hops. + type: boolean + type: object + ipv6Unicast: + description: Parameters relating to the IPv6 unicast AFI/SAFI. + properties: + enabled: + description: Enables the IPv6 unicast AFISAFI + type: boolean + maxReceivedRoutes: + description: Maximum number of IPv6 Unicast routes that will be accepted from the neighbor, counting routes accepted and rejected by import policies. + maximum: 4294967295 + minimum: 1 + type: integer + type: object + keychain: + description: Reference to a Keychain resource that will be used for authentication with the BGP peer. + type: string + localAS: + description: The local autonomous system number advertised to peers. + properties: + autonomousSystem: + description: Local Autonomous System number. + maximum: 4294967295 + minimum: 1 + type: integer + prependGlobalAS: + description: When set to true, the global ASN value is prepended to the AS path in outbound routes towards each BGP peer. + type: boolean + prependLocalAS: + description: When set to true, the local AS value is prepended to the AS path of inbound routes from each EBGP peer. + type: boolean + required: + - autonomousSystem + type: object + localPreference: + description: Local Preference attribute added to received routes from the BGP peers, also sets local preference for generated routes. + maximum: 4294967295 + minimum: 0 + type: integer + multiHopMaxHop: + description: Enable multihop for eBGP peers and sets the maximum number of hops allowed. + maximum: 255 + minimum: 1 + type: integer + nextHopSelf: + description: When set to true, the next-hop in all IPv4-unicast, IPv6-unicast and EVPN BGP routes advertised to the peer is set to the local-address. + type: boolean + node: + description: Node on which to configure the BGP peer. This node must be one of the nodes on which the IRBInterface is configured. When left blank or if the node is not part of the IRBInterface, the peer will not be deployed. Ignored for RoutedInterfaces. + type: string + peerAS: + description: The autonomous system number expected from peers. + properties: + autonomousSystem: + description: Local Autonomous System number. + maximum: 4294967295 + minimum: 1 + type: integer + required: + - autonomousSystem + type: object + peerIP: + description: Peer IP to which the peering session will be established. + type: string + sendCommunityLarge: + description: When false, all large (12 byte) BGP communities from all outbound routes advertised to the peer are stripped. + type: boolean + sendCommunityStandard: + description: When false, all standard (4 byte) communities from all outbound routes advertised to the peer are stripped. + type: boolean + sendDefaultRoute: + description: Options for controlling the generation of default routes towards BGP peers. + properties: + addressFamily: + description: Enables the sending of a synthetically generated default IPv4 or IPV6 route to each peer. + items: + enum: + - IPV4-UNICAST + - IPV6-UNICAST + type: string + type: array + exportPolicy: + description: Reference to a Policy that should be applied to the advertised default routes, in order to set their attributes to non-default values. + type: string + required: + - addressFamily + type: object + timers: + description: Timer configurations + properties: + connectRetry: + description: The time interval in seconds between successive attempts to establish a session with a peer. + maximum: 65535 + minimum: 1 + type: integer + holdTime: + description: The hold-time interval in seconds that the router proposes to the peer in its OPEN message. + maximum: 65535 + minimum: 0 + type: integer + keepAlive: + description: The interval in seconds between successive keepalive messages sent to the peer. + maximum: 21845 + minimum: 0 + type: integer + minimumAdvertisementInterval: + description: The value assigned to the MinRouteAdvertisementIntervalTimer of RFC 4271, for both EBGP and IBGP sessions. + maximum: 255 + minimum: 1 + type: integer + type: object + required: + - group + - interface + - interfaceKind + type: object + status: + description: BGPPeerStatus defines the observed state of BGPPeer + properties: + enabled: + description: Indicated whether the BGP Peer is administratively enabled. + type: boolean + health: + description: Indicates the health score of the BGP peer. + type: integer + healthScoreReason: + description: Indicates the reason for the health score. + type: string + lastChange: + description: The time when the state of the resource last changed. + type: string + lastEvent: + description: Last event of the BGP peer. + type: string + lastState: + description: Last state of the BGP peer. + type: string + negotiatedHoldTime: + description: Hold time negotiated with the BGP peer. + type: integer + negotiatedKeepaliveInterval: + description: Keepalive interval negotiated with the BGP peer. + type: integer + operationalState: + description: Operational state of the BGP peer + type: string + peerAS: + description: Peer AS of the BGP peer. + type: integer + sessionState: + description: The state of the BGP session. + type: string + underMaintenance: + description: Indicates if the BGP peer is under maintenance. + type: boolean + type: object + type: object +served: true +storage: false +subresources: + status: {} diff --git a/static/resources/25.8.1/bgppeerstates.protocols.eda.nokia.com/v1.yaml b/static/resources/25.8.1/bgppeerstates.protocols.eda.nokia.com/v1.yaml new file mode 100644 index 0000000..f9ac91d --- /dev/null +++ b/static/resources/25.8.1/bgppeerstates.protocols.eda.nokia.com/v1.yaml @@ -0,0 +1,75 @@ +name: v1 +schema: + openAPIV3Schema: + description: BGPPeerState is the Schema for the bgppeerstates API + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + description: BGPPeerStateSpec defines the desired state of BGPPeerState + properties: + afiSAFI: + description: List of configured AFI-SAFI on the BGP peer + items: + type: string + type: array + defaultNetworkInstance: + description: Denotes if the router is a DefaultRouter or Router + type: boolean + dynamicNeighbor: + default: false + description: When set to true the PeerDefaultInterface is added to the dynamic-neighbor list for dynamic peering. + type: boolean + group: + description: Reference to a BGPGroup + type: string + networkInstanceName: + description: The name of the network-instance or VPRN in which the BGP peer is configured + type: string + node: + description: The Node on which the BGP peer configuration resides + type: string + nodeInterface: + description: Node interface of the default interface which is configured to peer as a dynamic neighbor + type: string + operatingSystem: + description: Operating System of the Node + type: string + peerIP: + description: The IP of the BGP peer + type: string + router: + description: Router to which the BGP peer is attached + type: string + subInterfaceIndex: + description: Sub interface index of the default interface which is configured to peer as a dynamic neighbor + type: integer + required: + - defaultNetworkInstance + - dynamicNeighbor + - networkInstanceName + - router + type: object + status: + description: BGPPeerStateStatus defines the observed state of BGPPeerState + type: object + type: object +served: true +storage: true +subresources: + status: {} diff --git a/static/resources/25.8.1/bgppeerstates.protocols.eda.nokia.com/v1alpha1.yaml b/static/resources/25.8.1/bgppeerstates.protocols.eda.nokia.com/v1alpha1.yaml new file mode 100644 index 0000000..7252857 --- /dev/null +++ b/static/resources/25.8.1/bgppeerstates.protocols.eda.nokia.com/v1alpha1.yaml @@ -0,0 +1,77 @@ +deprecated: true +deprecationWarning: This version is deprecated and will no longer be supported in the next version. +name: v1alpha1 +schema: + openAPIV3Schema: + description: BGPPeerState is the Schema for the bgppeerstates API + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + description: BGPPeerStateSpec defines the desired state of BGPPeerState + properties: + afiSAFI: + description: List of configured AFI-SAFI on the BGP peer + items: + type: string + type: array + defaultNetworkInstance: + description: Denotes if the router is a DefaultRouter or Router + type: boolean + dynamicNeighbor: + default: false + description: When set to true the PeerDefaultInterface is added to the dynamic-neighbor list for dynamic peering. + type: boolean + group: + description: Reference to a BGPGroup + type: string + networkInstanceName: + description: The name of the network-instance or VPRN in which the BGP peer is configured + type: string + node: + description: The Node on which the BGP peer configuration resides + type: string + nodeInterface: + description: Node interface of the default interface which is configured to peer as a dynamic neighbor + type: string + operatingSystem: + description: Operating System of the Node + type: string + peerIP: + description: The IP of the BGP peer + type: string + router: + description: Router to which the BGP peer is attached + type: string + subInterfaceIndex: + description: Sub interface index of the default interface which is configured to peer as a dynamic neighbor + type: integer + required: + - defaultNetworkInstance + - dynamicNeighbor + - networkInstanceName + - router + type: object + status: + description: BGPPeerStateStatus defines the observed state of BGPPeerState + type: object + type: object +served: true +storage: false +subresources: + status: {} diff --git a/static/resources/25.8.1/breakouts.interfaces.eda.nokia.com/v1alpha1.yaml b/static/resources/25.8.1/breakouts.interfaces.eda.nokia.com/v1alpha1.yaml new file mode 100644 index 0000000..8d7f8d9 --- /dev/null +++ b/static/resources/25.8.1/breakouts.interfaces.eda.nokia.com/v1alpha1.yaml @@ -0,0 +1,70 @@ +name: v1alpha1 +schema: + openAPIV3Schema: + description: Breakout is the Schema for the breakouts API + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + description: Breakout allows for the configuration of interface breakouts on specified Nodes. This resource specifies the Nodes, parent Interfaces, the number of breakout channels, and the speed of each channel. + properties: + channels: + description: The number of breakout channels to create. + maximum: 8 + minimum: 1 + type: integer + interface: + description: A list of normalized parent interface/port. + items: + type: string + type: array + node: + description: Reference to a list of TopoNodes where the parent interfaces are to be broken out. + items: + type: string + type: array + nodeSelector: + description: TopoNode where the parent interfaces are to be broken out. + items: + type: string + type: array + speed: + description: The speed of each breakout channel. + enum: + - 800G + - 400G + - 200G + - 100G + - 50G + - 40G + - 25G + - 10G + type: string + required: + - channels + - node + - speed + type: object + status: + description: BreakoutStatus defines the observed state of Breakout + type: object + type: object +served: true +storage: true +subresources: + status: {} diff --git a/static/resources/25.8.1/bridgedomaindeployments.services.eda.nokia.com/v1.yaml b/static/resources/25.8.1/bridgedomaindeployments.services.eda.nokia.com/v1.yaml new file mode 100644 index 0000000..9abbe1a --- /dev/null +++ b/static/resources/25.8.1/bridgedomaindeployments.services.eda.nokia.com/v1.yaml @@ -0,0 +1,51 @@ +name: v1 +schema: + openAPIV3Schema: + description: BridgeDomainDeployment is the Schema for the bridgedomaindeployments API + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + description: BridgeDomainDeploymentSpec defines the desired state of BridgeDomainDeployment + properties: + bridgeDomain: + description: Reference to a BridgeDomain + type: string + node: + description: Reference to a Node on which to push the BridgeDomain + type: string + type: + default: DEFAULT + description: Specifies the Type of BridgeDomain to be deployed + enum: + - SIMPLE + - DEFAULT + type: string + required: + - bridgeDomain + - node + - type + type: object + status: + description: BridgeDomainDeploymentStatus defines the observed state of BridgeDomainDeployment + type: object + type: object +served: true +storage: true +subresources: + status: {} diff --git a/static/resources/25.8.1/bridgedomaindeployments.services.eda.nokia.com/v1alpha1.yaml b/static/resources/25.8.1/bridgedomaindeployments.services.eda.nokia.com/v1alpha1.yaml new file mode 100644 index 0000000..88eef0a --- /dev/null +++ b/static/resources/25.8.1/bridgedomaindeployments.services.eda.nokia.com/v1alpha1.yaml @@ -0,0 +1,53 @@ +deprecated: true +deprecationWarning: This version is deprecated and will no longer be supported in the next version. +name: v1alpha1 +schema: + openAPIV3Schema: + description: BridgeDomainDeployment is the Schema for the bridgedomaindeployments API + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + description: BridgeDomainDeploymentSpec defines the desired state of BridgeDomainDeployment + properties: + bridgeDomain: + description: Reference to a BridgeDomain + type: string + node: + description: Reference to a Node on which to push the BridgeDomain + type: string + type: + default: DEFAULT + description: Specifies the Type of BridgeDomain to be deployed + enum: + - SIMPLE + - DEFAULT + type: string + required: + - bridgeDomain + - node + - type + type: object + status: + description: BridgeDomainDeploymentStatus defines the observed state of BridgeDomainDeployment + type: object + type: object +served: true +storage: false +subresources: + status: {} diff --git a/static/resources/bridgedomains.services.eda.nokia.com/v1.yaml b/static/resources/25.8.1/bridgedomains.services.eda.nokia.com/v1.yaml similarity index 100% rename from static/resources/bridgedomains.services.eda.nokia.com/v1.yaml rename to static/resources/25.8.1/bridgedomains.services.eda.nokia.com/v1.yaml diff --git a/static/resources/25.8.1/bridgedomains.services.eda.nokia.com/v1alpha1.yaml b/static/resources/25.8.1/bridgedomains.services.eda.nokia.com/v1alpha1.yaml new file mode 100644 index 0000000..146c479 --- /dev/null +++ b/static/resources/25.8.1/bridgedomains.services.eda.nokia.com/v1alpha1.yaml @@ -0,0 +1,248 @@ +additionalPrinterColumns: + - jsonPath: .status.vni + name: VNI + type: string + - jsonPath: .status.evi + name: EVI + type: string + - jsonPath: .status.importTarget + name: Import Target + type: string + - jsonPath: .status.exportTarget + name: Export Target + type: string + - jsonPath: .status.numSubInterfacesOperDown + name: OperDown SubIf + type: string + - jsonPath: .status.numSubInterfaces + name: Total SubIf + type: string + - jsonPath: .status.operationalState + name: OperationalState + type: string + - jsonPath: .status.lastChange + name: LastChange + type: string +deprecated: true +deprecationWarning: This version is deprecated and will no longer be supported in the next version. +name: v1alpha1 +schema: + openAPIV3Schema: + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + description: The BridgeDomain enables the configuration and management of Layer 2 virtual networks. It includes settings for VNI, EVI, route targets for import and export, and tunnel index allocation. Additionally, the specification allows for advanced features such as MAC address table limits, aging, Proxy ARP and detection of MAC and IP duplication. + properties: + description: + description: The description of the BridgeDomain. + type: string + evi: + description: EVI to use for this BridgeDomain, can be optionally left blank to have it automatically allocated using the EVI Pool. + maximum: 65535 + minimum: 1 + type: integer + eviPool: + default: evi-pool + description: Reference to an EVI pool to use for allocations if EVI is left blank. + type: string + exportTarget: + description: Export route target in 'target:N:N' format, if not specified, the default value taken as "target:1:". + pattern: ^target.*$ + type: string + importTarget: + description: Import route target in 'target:N:N' format, if not specified, the default value taken as "target:1:". + pattern: ^target.*$ + type: string + l2proxyARPND: + description: Enables / Disabled Proxy ARP / Proxy ND. + properties: + dynamicLearning: + properties: + ageTime: + description: Aging timer value for the proxy entries in seconds. If not set, this indicates that the entries are never flushed. + maximum: 86400 + minimum: 60 + type: integer + enabled: + default: false + description: Enables or disables Dynamic Learning. + type: boolean + sendRefresh: + description: The interval determines the frequency at which the system generates three ARP Requests or Neighbor Solicitations with the intent to refresh the proxy entry. The refresh is sent within the age-time window. + maximum: 86400 + minimum: 120 + type: integer + type: object + ipDuplication: + properties: + enabled: + default: false + description: Enables or disables IP Duplication. + type: boolean + holdDownTime: + default: 9 + description: Time to wait in minutes from the moment an IP is declared duplicate to the time the IP is removed from the proxy ARP/ND table. + maximum: 60 + minimum: 2 + type: integer + monitoringWindow: + default: 3 + description: Monitoring window for detecting duplication on a given IP address in the proxy ARP/ND table. + maximum: 15 + minimum: 1 + type: integer + numMoves: + default: 5 + description: Number of moves in the proxy ARP/ND table that an IP is allowed within the monitoring-window. + maximum: 10 + minimum: 3 + type: integer + type: object + proxyARP: + default: false + description: Enables proxy ARP. + type: boolean + proxyND: + default: false + description: Enables proxy ND. + type: boolean + tableSize: + default: 250 + description: Maximum number of entries allowed in the proxy table of the bridge domain. + maximum: 8192 + minimum: 1 + type: integer + type: object + macAging: + default: 300 + description: Configurable aging time for dynamically learned mac addresses. + format: int32 + maximum: 86400 + minimum: 60 + type: integer + macDuplicationDetection: + description: Enable or disable MAC duplication detection and resolution mechanisms. + properties: + action: + default: StopLearning + description: Action to take on the subinterface upon detecting at least one mac addresses as duplicate on the subinterface. + enum: + - Blackhole + - OperDown + - StopLearning + type: string + enabled: + default: false + description: Enables or disables Mac Duplication Detection. + type: boolean + holdDownTime: + default: 9 + description: Time to wait in minutes from the moment a mac is declared duplicate to the mac is flushed from the bridge table. + maximum: 60 + minimum: 2 + type: integer + monitoringWindow: + default: 3 + description: Monitoring window in minutes for detecting duplication on a given mac address. + maximum: 15 + minimum: 1 + type: integer + numMoves: + default: 5 + description: Number of moves a mac is allowed within the monitoring-window, before it is declared duplicate. + minimum: 3 + type: integer + type: object + macLimit: + description: Sets the maximum number of MAC entries accepted in the bridge table. + format: int32 + type: integer + tunnelIndexPool: + default: tunnel-index-pool + description: Reference to a tunnel index pool to use for allocations. + type: string + type: + default: EVPNVXLAN + description: Select the type of BridgeDomain. Simple doesn't include any overlay control plane or dataplane properties (EVPN/VXLAN). EVPNVXLAN includes the properties needed to provision this BridgeDomain over an IP Fabric. + enum: + - SIMPLE + - EVPNVXLAN + type: string + vni: + description: VNI to use for this BridgeDomain, can be optionally left blank to have it allocated using the VNI Pool. + maximum: 16777215 + minimum: 1 + type: integer + vniPool: + default: vni-pool + description: Reference to a VNI pool to use for allocations if VNI is left blank. + type: string + type: object + status: + description: BridgeDomainStatus defines the observed state of BridgeDomain + properties: + evi: + description: EVI in use for this bridge domain. + type: integer + exportTarget: + description: Export route target for this bridge domain. + type: string + health: + description: Indicates the health score of the VNET. + type: integer + healthScoreReason: + description: Indicates the reason for the health score. + type: string + importTarget: + description: Import route target for this bridge domain. + type: string + lastChange: + description: The time when the state of the resource last changed. + type: string + nodes: + description: Nodes which have the BridgeDomain configured (min 1 sub-interface). + items: + type: string + type: array + numNodes: + description: Number of nodes which have the BridgeDomain configured (min 1 sub-interface). + type: integer + numSubInterfaces: + description: Number of sub-interfaces attached to the BridgeDomain. + format: int32 + type: integer + numSubInterfacesOperDown: + description: Number of oper-down sub-interfaces attached to the BridgeDomain. + format: int32 + type: integer + operationalState: + description: Operational state of the VNET. + type: string + tunnelIndex: + description: Vxlan tunnel index in use. + type: integer + vni: + description: VNI in use for this bridge domain. + type: integer + type: object + type: object +served: true +storage: false +subresources: + status: {} diff --git a/static/resources/bridgedomainstates.services.eda.nokia.com/v1.yaml b/static/resources/25.8.1/bridgedomainstates.services.eda.nokia.com/v1.yaml similarity index 100% rename from static/resources/bridgedomainstates.services.eda.nokia.com/v1.yaml rename to static/resources/25.8.1/bridgedomainstates.services.eda.nokia.com/v1.yaml diff --git a/static/resources/25.8.1/bridgedomainstates.services.eda.nokia.com/v1alpha1.yaml b/static/resources/25.8.1/bridgedomainstates.services.eda.nokia.com/v1alpha1.yaml new file mode 100644 index 0000000..866447f --- /dev/null +++ b/static/resources/25.8.1/bridgedomainstates.services.eda.nokia.com/v1alpha1.yaml @@ -0,0 +1,57 @@ +deprecated: true +deprecationWarning: This version is deprecated and will no longer be supported in the next version. +name: v1alpha1 +schema: + openAPIV3Schema: + description: BridgeDomainState is the Schema for the bridgedomainstates API + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + description: BridgeDomainStateSpec defines the desired state of BridgeDomainState + properties: + evi: + description: EVI in use for this BridgeDomain + maximum: 65535 + minimum: 1 + type: integer + exportTarget: + description: Export route target for this BridgeDomain, in the format 'target:N:N' + pattern: ^target.*$ + type: string + importTarget: + description: Import route target for this BridgeDomain, in the format 'target:N:N' + pattern: ^target.*$ + type: string + tunnelIndex: + description: Vxlan tunnel index in use + type: integer + vni: + description: VNI in use for this BridgeDomain + maximum: 16777215 + minimum: 1 + type: integer + type: object + status: + description: BridgeDomainStateStatus defines the observed state of BridgeDomainState + type: object + type: object +served: true +storage: false +subresources: + status: {} diff --git a/static/resources/bridgeinterfaces.services.eda.nokia.com/v1.yaml b/static/resources/25.8.1/bridgeinterfaces.services.eda.nokia.com/v1.yaml similarity index 100% rename from static/resources/bridgeinterfaces.services.eda.nokia.com/v1.yaml rename to static/resources/25.8.1/bridgeinterfaces.services.eda.nokia.com/v1.yaml diff --git a/static/resources/bridgeinterfaces.services.eda.nokia.com/v1alpha1.yaml b/static/resources/25.8.1/bridgeinterfaces.services.eda.nokia.com/v1alpha1.yaml similarity index 100% rename from static/resources/bridgeinterfaces.services.eda.nokia.com/v1alpha1.yaml rename to static/resources/25.8.1/bridgeinterfaces.services.eda.nokia.com/v1alpha1.yaml diff --git a/static/resources/bridgeinterfacestates.services.eda.nokia.com/v1.yaml b/static/resources/25.8.1/bridgeinterfacestates.services.eda.nokia.com/v1.yaml similarity index 100% rename from static/resources/bridgeinterfacestates.services.eda.nokia.com/v1.yaml rename to static/resources/25.8.1/bridgeinterfacestates.services.eda.nokia.com/v1.yaml diff --git a/static/resources/25.8.1/bridgeinterfacestates.services.eda.nokia.com/v1alpha1.yaml b/static/resources/25.8.1/bridgeinterfacestates.services.eda.nokia.com/v1alpha1.yaml new file mode 100644 index 0000000..62d08af --- /dev/null +++ b/static/resources/25.8.1/bridgeinterfacestates.services.eda.nokia.com/v1alpha1.yaml @@ -0,0 +1,75 @@ +deprecated: true +deprecationWarning: This version is deprecated and will no longer be supported in the next version. +name: v1alpha1 +schema: + openAPIV3Schema: + description: BridgeInterfaceState is the Schema for the bridgeinterfacestates API + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + description: BridgeInterfaceStateSpec defines the desired state of BridgeInterfaceState + properties: + bridgeDomain: + description: Node BridgeDomain name + type: string + subInterfaces: + items: + properties: + interface: + description: Normalized interface name + type: string + interfaceResource: + description: Eda interface resource + type: string + node: + description: Reference to Node object + type: string + nodeInterface: + description: Node specific interface name + type: string + nodeSubInterface: + description: Node specific subinterface name + type: string + operatingSystem: + description: Operating System of the Node + type: string + subInterfaceIndex: + description: Index allocated to the subinterface on the associated interface for the given VLAN + type: integer + vlanID: + description: vlan assigned to this subinterface + type: string + required: + - interface + - interfaceResource + - node + - nodeInterface + type: object + type: array + required: + - bridgeDomain + - subInterfaces + type: object + status: + type: object + type: object +served: true +storage: false +subresources: + status: {} diff --git a/static/resources/25.8.1/catalogs.appstore.eda.nokia.com/v1.yaml b/static/resources/25.8.1/catalogs.appstore.eda.nokia.com/v1.yaml new file mode 100644 index 0000000..26f5e62 --- /dev/null +++ b/static/resources/25.8.1/catalogs.appstore.eda.nokia.com/v1.yaml @@ -0,0 +1,91 @@ +additionalPrinterColumns: + - jsonPath: .spec.title + name: Title + type: string + - jsonPath: .spec.remoteType + name: Type + type: string + - jsonPath: .status.operational + name: Operational + type: string +name: v1 +schema: + openAPIV3Schema: + description: Catalog is the Schema for the catalogs API + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + description: CatalogSpec defines the desired state of a Catalog. + properties: + authSecretRef: + description: |- + AuthSecretRef is the authentication secret reference, used for authentication. + Must be in the same namespace as the catalog. + type: string + description: + description: Description is an optional short description of the catalog. + maxLength: 70 + type: string + refreshInterval: + default: 180 + description: |- + RefreshInterval tells the controller how often it should check the remote catalog for new updates, in seconds. + Default is 180 seconds. Minimum is 30 seconds for production environments; 10 seconds for test environments. + format: int32 + type: integer + remoteType: + default: git + description: RemoteType type of the catalog, only 'git' is supported at the moment. + enum: + - git + type: string + remoteURL: + description: |- + RemoteURL is the HTTP(S) remote URL of the catalog. Supported URI schemes: 'https://' and 'http://'. + Default is HTTPS if no scheme is given. + type: string + skipTLSVerify: + default: false + description: SkipTLSVerify skips the validity check for the server's certificate. This will make HTTPS connections insecure. + type: boolean + title: + description: Title is an UI-friendly name for the catalog. + maxLength: 50 + type: string + type: object + status: + description: CatalogStatus defines the observed state of a Catalog. + properties: + error: + description: Error denotes the last error that was encountered by the controller. + type: string + lastRefreshTime: + description: LastRefreshTime is the last attempt to refresh the catalog cache by the controller. + format: date-time + type: string + operational: + default: false + description: Operational reports whether the catalog remote is operational. + type: boolean + type: object + type: object +served: true +storage: true +subresources: + status: {} diff --git a/static/resources/25.8.1/certificatechecks.certcheck.eda.nokia.com/v1alpha1.yaml b/static/resources/25.8.1/certificatechecks.certcheck.eda.nokia.com/v1alpha1.yaml new file mode 100644 index 0000000..547d026 --- /dev/null +++ b/static/resources/25.8.1/certificatechecks.certcheck.eda.nokia.com/v1alpha1.yaml @@ -0,0 +1,256 @@ +name: v1alpha1 +schema: + openAPIV3Schema: + description: CertificateCheck is the Schema for the certificatechecks API + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + description: CertificateCheckSpec defines the desired state of CertificateCheck + properties: + address: + description: list of addresses to check + items: + type: string + type: array + interval: + default: 5m + description: Interval specifies the check interval + type: string + podSelector: + description: PodSelector defines a selector for the target Pods to check. + properties: + matchExpressions: + description: matchExpressions is a list of label selector requirements. The requirements are ANDed. + items: + description: |- + A label selector requirement is a selector that contains values, a key, and an operator that + relates the key and values. + properties: + key: + description: key is the label key that the selector applies to. + type: string + operator: + description: |- + operator represents a key's relationship to a set of values. + Valid operators are In, NotIn, Exists and DoesNotExist. + type: string + values: + description: |- + values is an array of string values. If the operator is In or NotIn, + the values array must be non-empty. If the operator is Exists or DoesNotExist, + the values array must be empty. This array is replaced during a strategic + merge patch. + items: + type: string + type: array + x-kubernetes-list-type: atomic + required: + - key + - operator + type: object + type: array + x-kubernetes-list-type: atomic + matchLabels: + additionalProperties: + type: string + description: |- + matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels + map is equivalent to an element of matchExpressions, whose key field is "key", the + operator is "In", and the values array contains only "value". The requirements are ANDed. + type: object + type: object + x-kubernetes-map-type: atomic + service: + description: Service defines the name of the Kubernetes Service to check. + items: + type: string + type: array + serviceSelector: + description: ServiceSelector defines a label selector for dynamically selecting the service + properties: + matchExpressions: + description: matchExpressions is a list of label selector requirements. The requirements are ANDed. + items: + description: |- + A label selector requirement is a selector that contains values, a key, and an operator that + relates the key and values. + properties: + key: + description: key is the label key that the selector applies to. + type: string + operator: + description: |- + operator represents a key's relationship to a set of values. + Valid operators are In, NotIn, Exists and DoesNotExist. + type: string + values: + description: |- + values is an array of string values. If the operator is In or NotIn, + the values array must be non-empty. If the operator is Exists or DoesNotExist, + the values array must be empty. This array is replaced during a strategic + merge patch. + items: + type: string + type: array + x-kubernetes-list-type: atomic + required: + - key + - operator + type: object + type: array + x-kubernetes-list-type: atomic + matchLabels: + additionalProperties: + type: string + description: |- + matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels + map is equivalent to an element of matchExpressions, whose key field is "key", the + operator is "In", and the values array contains only "value". The requirements are ANDed. + type: object + type: object + x-kubernetes-map-type: atomic + targetNode: + description: list of Targetnodes to check + items: + type: string + type: array + targetNodeSelector: + description: TargetNodeSelector defines a label selector for dynamically selecting targetNodes + properties: + matchExpressions: + description: matchExpressions is a list of label selector requirements. The requirements are ANDed. + items: + description: |- + A label selector requirement is a selector that contains values, a key, and an operator that + relates the key and values. + properties: + key: + description: key is the label key that the selector applies to. + type: string + operator: + description: |- + operator represents a key's relationship to a set of values. + Valid operators are In, NotIn, Exists and DoesNotExist. + type: string + values: + description: |- + values is an array of string values. If the operator is In or NotIn, + the values array must be non-empty. If the operator is Exists or DoesNotExist, + the values array must be empty. This array is replaced during a strategic + merge patch. + items: + type: string + type: array + x-kubernetes-list-type: atomic + required: + - key + - operator + type: object + type: array + x-kubernetes-list-type: atomic + matchLabels: + additionalProperties: + type: string + description: |- + matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels + map is equivalent to an element of matchExpressions, whose key field is "key", the + operator is "In", and the values array contains only "value". The requirements are ANDed. + type: object + type: object + x-kubernetes-map-type: atomic + thresholds: + description: Thresholds defines the certificate validity thresholds for raising alarms + properties: + critical: + description: Critical threshold in percentage + maximum: 100 + minimum: 0 + type: integer + major: + description: Major threshold in percentage + maximum: 100 + minimum: 0 + type: integer + minor: + description: Minor threshold in percentage + maximum: 100 + minimum: 0 + type: integer + warning: + description: Warning threshold in percentage + maximum: 100 + minimum: 0 + type: integer + type: object + timeout: + default: 5s + description: Timeout specifies the tls timeout + type: string + trustBundle: + description: |- + TrustBundle is a ConfigMap with a `trust-bundle.pem` key containing + certificate authorities to be used to verify the returned certificates. + type: string + type: object + status: + description: CertificateCheckStatus defines the observed state of CertificateCheck + properties: + endpointStatuses: + description: EndpointStatuses contains the certificate statuses for each target endpoint + items: + description: EndpointStatus defines the status of the certificate for a specific endpoint + properties: + address: + description: Address is the address of the endpoint (service or pod) + type: string + error: + description: Error provides any error message that occurred during the check + type: string + expiryDate: + description: ExpiryDate is the expiration date of the certificate + format: date-time + type: string + issueDate: + description: IssueDate is the date when certificate was issued + format: date-time + type: string + podName: + type: string + serviceName: + type: string + targetNodeName: + type: string + valid: + description: Valid indicates whether the certificate is valid or not + type: boolean + required: + - address + - valid + type: object + type: array + lastChecked: + description: LastChecked indicates the last time the certificate was checked + format: date-time + type: string + type: object + type: object +served: true +storage: true +subresources: + status: {} diff --git a/static/resources/25.8.1/chassis.components.eda.nokia.com/v1.yaml b/static/resources/25.8.1/chassis.components.eda.nokia.com/v1.yaml new file mode 100644 index 0000000..834cfd1 --- /dev/null +++ b/static/resources/25.8.1/chassis.components.eda.nokia.com/v1.yaml @@ -0,0 +1,97 @@ +name: v1 +schema: + openAPIV3Schema: + description: Chassis is the Schema for the chassis API + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + description: ChassisSpec defines the desired state of Chassis + type: object + status: + description: ChassisStatus defines the observed state of Chassis + properties: + chassisMacAddress: + description: MAC Address of the Chassis + type: string + children: + description: References to children components + items: + properties: + name: + description: Reference to a child component + type: string + type: + description: Type of the child component + enum: + - Fan + - FanTray + - PowerSupply + - PowerModule + - PowerShelf + - InterfaceModule + - ControlModule + - FabricModule + - Chassis + - Transceiver + type: string + type: object + type: array + commonLanguageEquipmentIdentifier: + description: The CLEI code of this component + type: string + lastBooted: + description: The date and time this component last booted + type: string + lastChange: + description: The date and time this component last changed operational state + type: string + manufacturedDate: + description: The date this component was manufactured + type: string + operationalState: + description: Indicates the current operational state of this component. + enum: + - Up + - Down + - Rebooting + - Unknown + - Starting + - Empty + type: string + partNumber: + description: The discovered part number of this component + type: string + removable: + description: Indicates if this component is removable + type: boolean + serialNumber: + description: The discovered serial number of this component + type: string + target: + description: Target this component resides on. + type: string + type: + description: Component type, as provided by the target + type: string + type: object + type: object +served: true +storage: true +subresources: + status: {} diff --git a/static/resources/checkdefaultbgppeerss.protocols.eda.nokia.com/v1.yaml b/static/resources/25.8.1/checkdefaultbgppeerss.protocols.eda.nokia.com/v1.yaml similarity index 100% rename from static/resources/checkdefaultbgppeerss.protocols.eda.nokia.com/v1.yaml rename to static/resources/25.8.1/checkdefaultbgppeerss.protocols.eda.nokia.com/v1.yaml diff --git a/static/resources/25.8.1/checkdefaultbgppeerss.protocols.eda.nokia.com/v1alpha1.yaml b/static/resources/25.8.1/checkdefaultbgppeerss.protocols.eda.nokia.com/v1alpha1.yaml new file mode 100644 index 0000000..e071538 --- /dev/null +++ b/static/resources/25.8.1/checkdefaultbgppeerss.protocols.eda.nokia.com/v1alpha1.yaml @@ -0,0 +1,63 @@ +additionalPrinterColumns: + - jsonPath: .status.id + name: ID + type: integer + - jsonPath: .status.result + name: Result + type: string + - jsonPath: .metadata.creationTimestamp + name: Age + type: date +deprecated: true +deprecationWarning: This version is deprecated and will no longer be supported in the next version. +name: v1alpha1 +schema: + openAPIV3Schema: + description: CheckDefaultBgpPeers is the Schema for the checkdefaultbgppeerss API + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + description: CheckDefaultBgpPeersSpec defines the desired state of CheckDefaultBgpPeers + properties: + nodeSelector: + items: + type: string + type: array + nodes: + items: + type: string + type: array + waitFor: + type: integer + type: object + status: + description: CheckDefaultBgpPeersStatus defines the observed state of CheckDefaultBgpPeers + properties: + id: + description: Id + type: integer + result: + description: Aggregate result of the Flow + type: string + type: object + type: object +served: true +storage: false +subresources: + status: {} diff --git a/static/resources/checkinterfacess.interfaces.eda.nokia.com/v1alpha1.yaml b/static/resources/25.8.1/checkinterfacess.interfaces.eda.nokia.com/v1alpha1.yaml similarity index 100% rename from static/resources/checkinterfacess.interfaces.eda.nokia.com/v1alpha1.yaml rename to static/resources/25.8.1/checkinterfacess.interfaces.eda.nokia.com/v1alpha1.yaml diff --git a/static/resources/cliplugins.environment.eda.nokia.com/v1alpha1.yaml b/static/resources/25.8.1/cliplugins.environment.eda.nokia.com/v1alpha1.yaml similarity index 100% rename from static/resources/cliplugins.environment.eda.nokia.com/v1alpha1.yaml rename to static/resources/25.8.1/cliplugins.environment.eda.nokia.com/v1alpha1.yaml diff --git a/static/resources/25.8.1/clusterdiscoveries.components.eda.nokia.com/v1.yaml b/static/resources/25.8.1/clusterdiscoveries.components.eda.nokia.com/v1.yaml new file mode 100644 index 0000000..80a2304 --- /dev/null +++ b/static/resources/25.8.1/clusterdiscoveries.components.eda.nokia.com/v1.yaml @@ -0,0 +1,49 @@ +name: v1 +schema: + openAPIV3Schema: + description: ClusterDiscovery is the Schema for the clusterdiscoveries API + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + description: ClusterDiscoverySpec defines the desired state of ClusterDiscovery + type: object + status: + description: ClusterDiscoveryStatus defines the observed state of ClusterDiscovery + properties: + targets: + description: List of targets component discovery is running for + items: + properties: + name: + description: Name of the target. + type: string + namespace: + description: Namespace of the target. + type: string + required: + - name + - namespace + type: object + type: array + type: object + type: object +served: true +storage: true +subresources: + status: {} diff --git a/static/resources/25.8.1/clusterroles.core.eda.nokia.com/v1.yaml b/static/resources/25.8.1/clusterroles.core.eda.nokia.com/v1.yaml new file mode 100644 index 0000000..81545ff --- /dev/null +++ b/static/resources/25.8.1/clusterroles.core.eda.nokia.com/v1.yaml @@ -0,0 +1,130 @@ +name: v1 +schema: + openAPIV3Schema: + description: ClusterRole is the Schema for the roles API + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + description: |- + ClusterRole defines a set of permissions to access EDA resources. + ClusterRoles and users are bound via groups, selecting a set of users and a set of ClusterRoles to bind. + properties: + description: + description: A description for the role. + type: string + resourceRules: + description: Rules for access to resources. + items: + description: A role rule controlling access to a kubernetes resource. + properties: + apiGroups: + description: |- + The API groups for the resources controlled by the rule. + An API group consists of an apiGroup and a version, e.g. "apigroup/version". + The API group can be a wildcard ("*"), in which case it will match any API group. + items: + minLength: 1 + type: string + minItems: 1 + type: array + permissions: + description: Permissions for resources specified by the rule. + enum: + - none + - read + - readWrite + type: string + resources: + description: |- + Names for the resources controlled by the rule. + It can be a wildcard ("*"), in which case it will match any resource + in the matching API groups. + items: + minLength: 1 + type: string + minItems: 1 + type: array + required: + - apiGroups + - permissions + - resources + type: object + type: array + tableRules: + description: Rules for access to EDB tables, including via EQL. + items: + description: |- + A role rule controlling access to a EDB table. Note that + there is never write access to EDB. + properties: + path: + description: |- + EDB path to which this rule applies. It can end in ".*" + in which case the final portion of the table path can be anything, if the + prefix matches. It can end in ".**" in which case the table path can be + anything if the prefix matches. + minLength: 1 + pattern: ^\..* + type: string + permissions: + description: Permissions for the given EDB path. + enum: + - none + - read + type: string + required: + - path + - permissions + type: object + type: array + urlRules: + description: Rules for access to APIServer proxied routes. + items: + description: A role rule controlling access to an API server proxy. + properties: + path: + description: |- + The API server URL path to which this rule applies. It can end in "/*" + in which case the final portion of the URL path can be anything, if the + prefix matches. It can end in "/**" in which case the URL path can be + anything if the prefix matches. + minLength: 1 + pattern: ^/.* + type: string + permissions: + description: The permissions for the API server URL for the rule. + enum: + - none + - read + - readWrite + type: string + required: + - path + - permissions + type: object + type: array + type: object + status: + description: RoleStatus defines the observed state of Role + type: object + type: object +served: true +storage: true +subresources: + status: {} diff --git a/static/resources/25.8.1/communitysetdeployments.routingpolicies.eda.nokia.com/v1alpha1.yaml b/static/resources/25.8.1/communitysetdeployments.routingpolicies.eda.nokia.com/v1alpha1.yaml new file mode 100644 index 0000000..9052874 --- /dev/null +++ b/static/resources/25.8.1/communitysetdeployments.routingpolicies.eda.nokia.com/v1alpha1.yaml @@ -0,0 +1,42 @@ +name: v1alpha1 +schema: + openAPIV3Schema: + description: CommunitySetDeployment is the schema for the communitysetdeployments API + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + description: CommunitySetDeploymentSpec defines the desired state of CommunitySetDeployment + properties: + communitySet: + description: Specifies a CommunitySet to deploy to the specified Node + type: string + node: + description: Specifies a Node to deploy this policy on + type: string + required: + - node + type: object + status: + description: CommunitySetDeploymentStatus defines the observed state of CommunitySetDeployment + type: object + type: object +served: true +storage: true +subresources: + status: {} diff --git a/static/resources/communitysets.routingpolicies.eda.nokia.com/v1alpha1.yaml b/static/resources/25.8.1/communitysets.routingpolicies.eda.nokia.com/v1alpha1.yaml similarity index 100% rename from static/resources/communitysets.routingpolicies.eda.nokia.com/v1alpha1.yaml rename to static/resources/25.8.1/communitysets.routingpolicies.eda.nokia.com/v1alpha1.yaml diff --git a/static/resources/25.8.1/components.components.eda.nokia.com/v1.yaml b/static/resources/25.8.1/components.components.eda.nokia.com/v1.yaml new file mode 100644 index 0000000..58fd218 --- /dev/null +++ b/static/resources/25.8.1/components.components.eda.nokia.com/v1.yaml @@ -0,0 +1,110 @@ +additionalPrinterColumns: + - jsonPath: .status.enabled + name: Enabled + type: boolean + - jsonPath: .status.operationalState + name: Operational State + type: string + - jsonPath: .status.type + name: Type + type: string + - jsonPath: .status.lastChange + name: Last Change + type: date + - jsonPath: .status.serialNumber + name: Part Number + type: string + - jsonPath: .status.partNumber + name: Serial Number + type: string + - jsonPath: .metadata.creationTimestamp + name: Age + type: date +name: v1 +schema: + openAPIV3Schema: + description: Component is the Schema for the components API + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + description: ComponentSpec defines the desired state of Component + properties: + node: + description: |- + TopologyNode this Component resides on. + Indicates the operation in which to apply the configuration + type: string + slot: + description: Slot this Component resides in, unset for Components that do not have a slot or ID. + type: string + type: + description: Type of Component. + enum: + - Fan + - FanTray + - PowerSupply + - PowerModule + - PowerShelf + - InterfaceModule + - ControlModule + - FabricModule + - Chassis + - Transceiver + type: string + required: + - node + - type + type: object + status: + description: ComponentStatus defines the observed state of Component + properties: + enabled: + description: The administrative status of this Component. + type: boolean + lastChange: + description: The date and time this Component last changed operational state + type: string + manufacturedDate: + description: The date this Component was manufactured + type: string + operationalState: + description: Indicates the current operational state of this Component. + enum: + - Up + - Down + - Rebooting + - Unknown + - Starting + - Empty + type: string + partNumber: + description: The discovered part number of this Component + type: string + serialNumber: + description: The discovered serial number of this Component + type: string + type: + description: Component type, as provided by the node. + type: string + type: object + type: object +served: true +storage: true +subresources: + status: {} diff --git a/static/resources/25.8.1/components.components.eda.nokia.com/v1alpha1.yaml b/static/resources/25.8.1/components.components.eda.nokia.com/v1alpha1.yaml new file mode 100644 index 0000000..a845192 --- /dev/null +++ b/static/resources/25.8.1/components.components.eda.nokia.com/v1alpha1.yaml @@ -0,0 +1,107 @@ +additionalPrinterColumns: + - jsonPath: .status.enabled + name: Enabled + type: boolean + - jsonPath: .status.operationalState + name: Operational State + type: string + - jsonPath: .status.type + name: Type + type: string + - jsonPath: .status.lastChange + name: Last Change + type: date + - jsonPath: .status.serialNumber + name: Part Number + type: string + - jsonPath: .status.partNumber + name: Serial Number + type: string + - jsonPath: .metadata.creationTimestamp + name: Age + type: date +name: v1alpha1 +schema: + openAPIV3Schema: + description: Component is the Schema for the components API + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + description: ComponentSpec defines the desired state of Component + properties: + node: + description: |- + TopologyNode this Component resides on. + Indicates the operation in which to apply the configuration + type: string + slot: + description: Slot this Component resides in, unset for Components that do not have a slot or ID. + type: string + type: + description: Type of Component. + enum: + - FanTray + - PowerSupply + - LineCard + - Control + - Fabric + - Chassis + - Transceiver + type: string + required: + - node + - type + type: object + status: + description: ComponentStatus defines the observed state of Component + properties: + enabled: + description: The administrative status of this Component. + type: boolean + lastChange: + description: The date and time this Component last changed operational state + type: string + manufacturedDate: + description: The date this Component was manufactured + type: string + operationalState: + description: Indicates the current operational state of this Component. + enum: + - Up + - Down + - Rebooting + - Unknown + - Starting + - Empty + type: string + partNumber: + description: The discovered part number of this Component + type: string + serialNumber: + description: The discovered serial number of this Component + type: string + type: + description: Component type, as provided by the node. + type: string + type: object + type: object +served: true +storage: false +subresources: + status: {} diff --git a/static/resources/25.8.1/configlets.config.eda.nokia.com/v1alpha1.yaml b/static/resources/25.8.1/configlets.config.eda.nokia.com/v1alpha1.yaml new file mode 100644 index 0000000..b4525d1 --- /dev/null +++ b/static/resources/25.8.1/configlets.config.eda.nokia.com/v1alpha1.yaml @@ -0,0 +1,95 @@ +name: v1alpha1 +schema: + openAPIV3Schema: + description: Configlet is the Schema for the configlets API + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + description: |- + Configlet is a configuration snippet that can be applied to a set of targets. + The path on the target is provided in jspath notation, and the configuration is provided as a JSON string. + Configlets can be applied to a set of targets based on a label selector, a list of targets, or a combination of both. + properties: + configs: + description: Configurations to apply, being sets of paths, operations and JSON configurations. + items: + properties: + config: + description: JSON-formatted string representing the configuration to apply. + type: string + operation: + default: Create + description: Indicates the operation in which to apply the configuration. + enum: + - Create + - Update + - Delete + type: string + path: + description: Path to apply the configuration in jspath notation, including any keys if relevant, e.g. .system.information. + type: string + required: + - config + - operation + - path + type: object + type: array + endpointSelector: + description: Label selector to use to match targets to deploy Configlet to. + items: + type: string + type: array + endpoints: + description: Reference to targets to deploy Configlet to. + items: + type: string + type: array + operatingSystem: + description: Operating system to match against when selecting targets. + enum: + - srl + - sros + type: string + priority: + default: 0 + description: Priority of this Configlet, between -100 and 100. Higher priorities overwrite lower priorities in the event of conflicts. + format: int32 + maximum: 100 + minimum: -100 + type: integer + version: + description: Version to match against when selecting targets. + type: string + required: + - configs + type: object + status: + description: Deployment status of this Configlet. + properties: + endpoints: + description: List of targets this configlet has been applied to. + items: + type: string + type: array + type: object + type: object +served: true +storage: true +subresources: + status: {} diff --git a/static/resources/25.8.1/configletstates.config.eda.nokia.com/v1alpha1.yaml b/static/resources/25.8.1/configletstates.config.eda.nokia.com/v1alpha1.yaml new file mode 100644 index 0000000..da2ee7c --- /dev/null +++ b/static/resources/25.8.1/configletstates.config.eda.nokia.com/v1alpha1.yaml @@ -0,0 +1,39 @@ +name: v1alpha1 +schema: + openAPIV3Schema: + description: ConfigletState is the Schema for the configletstates API + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + description: ConfigletStateSpec defines the desired state of ConfigletState + properties: + endpoints: + description: List of endpoints this configlet has been applied to + items: + type: string + type: array + type: object + status: + description: ConfigletStateStatus defines the observed state of ConfigletState + type: object + type: object +served: true +storage: true +subresources: + status: {} diff --git a/static/resources/25.8.1/controlmodules.components.eda.nokia.com/v1.yaml b/static/resources/25.8.1/controlmodules.components.eda.nokia.com/v1.yaml new file mode 100644 index 0000000..565839a --- /dev/null +++ b/static/resources/25.8.1/controlmodules.components.eda.nokia.com/v1.yaml @@ -0,0 +1,122 @@ +name: v1 +schema: + openAPIV3Schema: + description: ControlModule is the Schema for the controlmodules API + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + description: ControlModuleSpec defines the desired state of ControlModule + type: object + status: + description: ControlModuleStatus defines the observed state of ControlModule + properties: + commonLanguageEquipmentIdentifier: + description: The CLEI code of this component + type: string + lastBooted: + description: The date and time this component last booted + type: string + lastChange: + description: The date and time this component last changed operational state + type: string + locatorEnabled: + description: Indicates if the locator LED for the component is active + type: boolean + manufacturedDate: + description: The date this component was manufactured + type: string + operationalState: + description: Indicates the current operational state of this component. + enum: + - Up + - Down + - Rebooting + - Unknown + - Starting + - Empty + type: string + parent: + description: Reference to a parent component + type: string + parentType: + description: Type of the parent component + enum: + - Fan + - FanTray + - PowerSupply + - PowerModule + - PowerShelf + - InterfaceModule + - ControlModule + - FabricModule + - Chassis + - Transceiver + type: string + partNumber: + description: The discovered part number of this component + type: string + removable: + description: Indicates if this component is removable + type: boolean + role: + description: Role of the control module + enum: + - Active + - Standby + type: string + serialNumber: + description: The discovered serial number of this component + type: string + slot: + description: Slot this component resides in, unset for components that do not have a slot or ID + type: string + softwareVersion: + description: Version string of the software running on this component + type: string + target: + description: Target this component resides on. + type: string + temperature: + description: Temperature information for this component + properties: + alarmState: + description: The temperature alarm state, as reported by the component + type: boolean + instant: + description: The current temperature of this component + type: integer + margin: + description: The margin temperature of this component + type: integer + maximum: + description: The maximum temperature of this component + type: integer + threshold: + description: The threshold temperature of this component + type: integer + type: object + type: + description: Component type, as provided by the target + type: string + type: object + type: object +served: true +storage: true +subresources: + status: {} diff --git a/static/resources/controlplanefilters.filters.eda.nokia.com/v1alpha1.yaml b/static/resources/25.8.1/controlplanefilters.filters.eda.nokia.com/v1alpha1.yaml similarity index 100% rename from static/resources/controlplanefilters.filters.eda.nokia.com/v1alpha1.yaml rename to static/resources/25.8.1/controlplanefilters.filters.eda.nokia.com/v1alpha1.yaml diff --git a/static/resources/25.8.1/cpuoverlays.components.eda.nokia.com/v1.yaml b/static/resources/25.8.1/cpuoverlays.components.eda.nokia.com/v1.yaml new file mode 100644 index 0000000..7e556fe --- /dev/null +++ b/static/resources/25.8.1/cpuoverlays.components.eda.nokia.com/v1.yaml @@ -0,0 +1,69 @@ +name: v1 +schema: + openAPIV3Schema: + description: CPUOverlay is the Schema for the CPU overlay + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + description: CPUOverlaySpec defines the desired state of CPUOverlay + properties: + enabled: + description: Enable or disable the generation of the status of this overlay + type: boolean + topology: + description: Reference to the topology that this overlay is extending. + properties: + group: + description: The group of the application which published the topology this overlay is extending. + type: string + name: + description: The name of the resource which published the topology this overlay is extending. + type: string + version: + description: The version of the application which published the topology this overlay is extending. + type: string + required: + - group + - name + - version + type: object + uiDescription: + description: A description of the overlay to expose in the UI + type: string + uiDescriptionKey: + description: The translation key for the description of the overlay to expose in the UI + type: string + uiName: + description: The name of the overlay to expose in the UI + type: string + uiNameKey: + description: The translation key for the name of the overlay to expose in the UI + type: string + required: + - enabled + - topology + type: object + status: + description: CPUOverlayStatus defines the observed state of CPUOverlay + type: object + type: object +served: true +storage: true +subresources: + status: {} diff --git a/static/resources/cxclusters.cx.eda.nokia.com/v1alpha1.yaml b/static/resources/25.8.1/cxclusters.cx.eda.nokia.com/v1alpha1.yaml similarity index 100% rename from static/resources/cxclusters.cx.eda.nokia.com/v1alpha1.yaml rename to static/resources/25.8.1/cxclusters.cx.eda.nokia.com/v1alpha1.yaml diff --git a/static/resources/25.8.1/defaultaggregateroutes.protocols.eda.nokia.com/v1.yaml b/static/resources/25.8.1/defaultaggregateroutes.protocols.eda.nokia.com/v1.yaml new file mode 100644 index 0000000..70ad6f1 --- /dev/null +++ b/static/resources/25.8.1/defaultaggregateroutes.protocols.eda.nokia.com/v1.yaml @@ -0,0 +1,58 @@ +name: v1 +schema: + openAPIV3Schema: + description: DefaultAggregateRoute is the Schema for the defaultaggregateroutes API + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + description: DefaultAggregateRoute allows the configuration of aggregate routes on a DefaultRouter. It includes specifying destination prefixes, the DefaultRouter, and settings for generating ICMP unreachable messages or blocking route advertisement. Additionally, it configures the aggregator’s IP address and ASN for efficient route management. + properties: + aggregatorASN: + description: Specifies the aggregator's ASN. + format: int32 + type: integer + aggregatorIP: + description: Specifies the aggregator's IP address. + type: string + defaultRouter: + description: Reference to a Default Router on which to configure the aggregate routes. If no Nodes are provided then the aggregate routes will be provisioned on all Nodes on which the Router is provisioned. + type: string + generateICMP: + description: When set to true the router generares ICMP unreachable messages for packets matching the aggregate route (and not a more specific route). + type: boolean + prefixes: + description: List of destination prefixes for the aggregate routes. + items: + type: string + type: array + summaryOnly: + description: When set to true the router blocks the advertisement of all contributing routes of this aggregate route in dynamic protocols such as BGP. + type: boolean + required: + - defaultRouter + - prefixes + type: object + status: + description: DefaultAggregateRouteStatus defines the observed state of DefaultAggregateRoute + type: object + type: object +served: true +storage: true +subresources: + status: {} diff --git a/static/resources/25.8.1/defaultaggregateroutes.protocols.eda.nokia.com/v1alpha1.yaml b/static/resources/25.8.1/defaultaggregateroutes.protocols.eda.nokia.com/v1alpha1.yaml new file mode 100644 index 0000000..b41b191 --- /dev/null +++ b/static/resources/25.8.1/defaultaggregateroutes.protocols.eda.nokia.com/v1alpha1.yaml @@ -0,0 +1,60 @@ +deprecated: true +deprecationWarning: This version is deprecated and will no longer be supported in the next version. +name: v1alpha1 +schema: + openAPIV3Schema: + description: DefaultAggregateRoute is the Schema for the defaultaggregateroutes API + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + description: DefaultAggregateRoute allows the configuration of aggregate routes on a DefaultRouter. It includes specifying destination prefixes, the DefaultRouter, and settings for generating ICMP unreachable messages or blocking route advertisement. Additionally, it configures the aggregator’s IP address and ASN for efficient route management. + properties: + aggregatorASN: + description: Specifies the aggregator's ASN. + format: int32 + type: integer + aggregatorIP: + description: Specifies the aggregator's IP address. + type: string + defaultRouter: + description: Reference to a Default Router on which to configure the aggregate routes. If no Nodes are provided then the aggregate routes will be provisioned on all Nodes on which the Router is provisioned. + type: string + generateICMP: + description: When set to true the router generares ICMP unreachable messages for packets matching the aggregate route (and not a more specific route). + type: boolean + prefixes: + description: List of destination prefixes for the aggregate routes. + items: + type: string + type: array + summaryOnly: + description: When set to true the router blocks the advertisement of all contributing routes of this aggregate route in dynamic protocols such as BGP. + type: boolean + required: + - defaultRouter + - prefixes + type: object + status: + description: DefaultAggregateRouteStatus defines the observed state of DefaultAggregateRoute + type: object + type: object +served: true +storage: false +subresources: + status: {} diff --git a/static/resources/25.8.1/defaultbgpgroupdeployments.protocols.eda.nokia.com/v1.yaml b/static/resources/25.8.1/defaultbgpgroupdeployments.protocols.eda.nokia.com/v1.yaml new file mode 100644 index 0000000..ceb6520 --- /dev/null +++ b/static/resources/25.8.1/defaultbgpgroupdeployments.protocols.eda.nokia.com/v1.yaml @@ -0,0 +1,43 @@ +name: v1 +schema: + openAPIV3Schema: + description: DefaultBGPGroupDeployment is the Schema for the defaultbgpgroupdeployments API + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + description: DefaultBGPGroupDeploymentSpec defines the desired state of DefaultBGPGroupDeployment + properties: + defaultBGPGroup: + description: Reference to a DefaultBgpGroup + type: string + node: + description: Reference to a Node on which to push the BgpGroup + type: string + required: + - defaultBGPGroup + - node + type: object + status: + description: DefaultBGPGroupDeploymentStatus defines the observed state of DefaultBGPGroupDeployment + type: object + type: object +served: true +storage: true +subresources: + status: {} diff --git a/static/resources/25.8.1/defaultbgpgroupdeployments.protocols.eda.nokia.com/v1alpha1.yaml b/static/resources/25.8.1/defaultbgpgroupdeployments.protocols.eda.nokia.com/v1alpha1.yaml new file mode 100644 index 0000000..1f49bf6 --- /dev/null +++ b/static/resources/25.8.1/defaultbgpgroupdeployments.protocols.eda.nokia.com/v1alpha1.yaml @@ -0,0 +1,45 @@ +deprecated: true +deprecationWarning: This version is deprecated and will no longer be supported in the next version. +name: v1alpha1 +schema: + openAPIV3Schema: + description: DefaultBGPGroupDeployment is the Schema for the defaultbgpgroupdeployments API + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + description: DefaultBGPGroupDeploymentSpec defines the desired state of DefaultBGPGroupDeployment + properties: + defaultBGPGroup: + description: Reference to a DefaultBgpGroup + type: string + node: + description: Reference to a Node on which to push the BgpGroup + type: string + required: + - defaultBGPGroup + - node + type: object + status: + description: DefaultBGPGroupDeploymentStatus defines the observed state of DefaultBGPGroupDeployment + type: object + type: object +served: true +storage: false +subresources: + status: {} diff --git a/static/resources/defaultbgpgroups.protocols.eda.nokia.com/v1.yaml b/static/resources/25.8.1/defaultbgpgroups.protocols.eda.nokia.com/v1.yaml similarity index 100% rename from static/resources/defaultbgpgroups.protocols.eda.nokia.com/v1.yaml rename to static/resources/25.8.1/defaultbgpgroups.protocols.eda.nokia.com/v1.yaml diff --git a/static/resources/25.8.1/defaultbgpgroups.protocols.eda.nokia.com/v1alpha1.yaml b/static/resources/25.8.1/defaultbgpgroups.protocols.eda.nokia.com/v1alpha1.yaml new file mode 100644 index 0000000..ad6e6e4 --- /dev/null +++ b/static/resources/25.8.1/defaultbgpgroups.protocols.eda.nokia.com/v1alpha1.yaml @@ -0,0 +1,267 @@ +additionalPrinterColumns: + - jsonPath: .status.lastChange + name: Last Change + type: date + - jsonPath: .status.operationalState + name: Operational State + type: string +deprecated: true +deprecationWarning: This version is deprecated and will no longer be supported in the next version. +name: v1alpha1 +schema: + openAPIV3Schema: + description: DefaultBGPGroup is the Schema for the defaultbgpgroups API + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + description: The DefaultBGPGroup enables centralized management of BGP peer configurations within a DefaultRouter. This resource allows setting a description, common BGP settings, and peer-specific configurations, simplifying the consistent application of policies across multiple peers. It also includes transport settings, such as local TCP address configuration, passive mode, and TCP MSS. type DefaultBGPGroupSpec struct { + properties: + asPathOptions: + description: AS Path Options + properties: + allowOwnAS: + default: 0 + description: The maximum number of times the global AS number or a local AS number of the BGP instance can appear in any received AS_PATH before it is considered a loop and considered invalid. + maximum: 255 + minimum: 0 + type: integer + removePrivateAS: + description: Options for removing private AS numbers (2-byte and 4-byte) from the advertised AS path towards all peers. + properties: + ignorePeerAS: + default: false + description: If set to true then do not delete or replace a private AS number that is the same as the peer AS number. + type: boolean + leadingOnly: + default: false + description: If set to true then only delete or replace private AS numbers that appear before the first occurrence of a non-private ASN in the sequence of most recent ASNs in the AS path. + type: boolean + removePrivateASMode: + default: DISABLED + description: The method by which private AS numbers are removed from the advertised AS_PATH attribute. + enum: + - DISABLED + - REPLACE + - DELETE + type: string + required: + - ignorePeerAS + - leadingOnly + - removePrivateASMode + type: object + required: + - allowOwnAS + type: object + bfd: + description: Enable or disable Bi-forward Forwarding Detection (BFD) with fast failover. + type: boolean + client: + description: When set to true, all configured and dynamic BGP peers are considered RR clients. + type: boolean + clusterID: + description: Enables route reflect client and sets the cluster ID. + type: string + description: + description: Sets the description on the BGP group. + type: string + exportPolicy: + description: Reference to a Policy CR that will be used to filter routes advertised to peers. + items: + type: string + type: array + grStaleRouteTime: + description: Enables Graceful Restart on the peer and sets the stale route time. + maximum: 3600 + minimum: 1 + type: integer + importPolicy: + description: Reference to a Policy CR that will be used to filter routes received from peers. + items: + type: string + type: array + ipv4Unicast: + description: Parameters relating to the IPv4 unicast AFI/SAFI. + properties: + advertiseIPV6NextHops: + description: Enables advertisement of IPv4 Unicast routes with IPv6 next-hops to peers. + type: boolean + enabled: + description: Enables the IPv4 unicast AFISAFI. + type: boolean + maxReceivedRoutes: + description: Maximum number of IPv4 Unicast routes that will be accepted from the neighbor, counting routes accepted and rejected by import policies. + maximum: 4294967295 + minimum: 1 + type: integer + receiveIPV6NextHops: + description: Enables the advertisement of the RFC 5549 capability to receive IPv4 routes with IPv6 next-hops. + type: boolean + type: object + ipv6Unicast: + description: Parameters relating to the IPv6 unicast AFI/SAFI. + properties: + enabled: + description: Enables the IPv6 unicast AFISAFI + type: boolean + maxReceivedRoutes: + description: Maximum number of IPv6 Unicast routes that will be accepted from the neighbor, counting routes accepted and rejected by import policies. + maximum: 4294967295 + minimum: 1 + type: integer + type: object + keychain: + description: Reference to a Keychain resource that will be used for authentication with the BGP peer. + type: string + l2VPNEVPN: + description: Parameters relating to the EVPN AFI/SAFI. + properties: + advertiseIPV6NextHops: + description: Enables advertisement of EVPN routes with IPv6 next-hops to peers. + type: boolean + enabled: + description: Enables the L2VPN EVPN AFISAFI. + type: boolean + maxReceivedRoutes: + description: Maximum number of EVPN routes that will be accepted from the neighbor, counting routes accepted and rejected by import policies. + maximum: 4294967295 + minimum: 1 + type: integer + type: object + localAS: + description: The local autonomous system number advertised to peers. + properties: + autonomousSystem: + description: Local Autonomous System number. + maximum: 4294967295 + minimum: 1 + type: integer + prependGlobalAS: + description: When set to true, the global ASN value is prepended to the AS path in outbound routes towards each BGP peer. + type: boolean + prependLocalAS: + description: When set to true, the local AS value is prepended to the AS path of inbound routes from each EBGP peer. + type: boolean + required: + - autonomousSystem + type: object + localPreference: + description: Local Preference attribute added to received routes from the BGP peers, also sets local preference for generated routes. + maximum: 4294967295 + minimum: 0 + type: integer + multiHopMaxHop: + description: Enable multihop for eBGP peers and sets the maximum number of hops allowed. + maximum: 255 + minimum: 1 + type: integer + nextHopSelf: + description: When set to true, the next-hop in all IPv4-unicast, IPv6-unicast and EVPN BGP routes advertised to the peer is set to the local-address. + type: boolean + peerAS: + description: The autonomous system number expected from peers. + properties: + autonomousSystem: + description: Local Autonomous System number. + maximum: 4294967295 + minimum: 1 + type: integer + required: + - autonomousSystem + type: object + sendCommunityLarge: + description: When false, all large (12 byte) BGP communities from all outbound routes advertised to the peer are stripped. + type: boolean + sendCommunityStandard: + description: When false, all standard (4 byte) communities from all outbound routes advertised to the peer are stripped. + type: boolean + sendDefaultRoute: + description: Options for controlling the generation of default routes towards BGP peers. + properties: + addressFamily: + description: Enables the sending of a synthetically generated default IPv4 or IPV6 route to each peer. + items: + enum: + - IPV4-UNICAST + - IPV6-UNICAST + type: string + type: array + exportPolicy: + description: Reference to a Policy that should be applied to the advertised default routes, in order to set their attributes to non-default values. + type: string + required: + - addressFamily + type: object + timers: + description: Timer configurations + properties: + connectRetry: + description: The time interval in seconds between successive attempts to establish a session with a peer. + maximum: 65535 + minimum: 1 + type: integer + holdTime: + description: The hold-time interval in seconds that the router proposes to the peer in its OPEN message. + maximum: 65535 + minimum: 0 + type: integer + keepAlive: + description: The interval in seconds between successive keepalive messages sent to the peer. + maximum: 21845 + minimum: 0 + type: integer + minimumAdvertisementInterval: + description: The value assigned to the MinRouteAdvertisementIntervalTimer of RFC 4271, for both EBGP and IBGP sessions. + maximum: 255 + minimum: 1 + type: integer + type: object + type: object + status: + description: DefaultBGPGroupStatus defines the observed state of DefaultBGPGroup. + properties: + health: + description: Indicates the health score of the BGP group. + type: integer + healthScoreReason: + description: Indicates the reason for the health score. + type: string + lastChange: + description: The time when the state of the resource last changed. + type: string + numPeers: + description: Number of configured BGP peers within the BGP Group. + format: int32 + type: integer + numPeersOperDown: + description: Number of configured BGP peers which have an Operational State of down within the BGP Group. + format: int32 + type: integer + numPeersUnknown: + description: Number of configured BGP peers within the BGP Group which cannot be reached by npp. + format: int32 + type: integer + operationalState: + description: Operational state of the BGP group. + type: string + type: object + type: object +served: true +storage: false +subresources: + status: {} diff --git a/static/resources/defaultbgppeers.protocols.eda.nokia.com/v1.yaml b/static/resources/25.8.1/defaultbgppeers.protocols.eda.nokia.com/v1.yaml similarity index 100% rename from static/resources/defaultbgppeers.protocols.eda.nokia.com/v1.yaml rename to static/resources/25.8.1/defaultbgppeers.protocols.eda.nokia.com/v1.yaml diff --git a/static/resources/25.8.1/defaultbgppeers.protocols.eda.nokia.com/v1alpha1.yaml b/static/resources/25.8.1/defaultbgppeers.protocols.eda.nokia.com/v1alpha1.yaml new file mode 100644 index 0000000..fbddd9c --- /dev/null +++ b/static/resources/25.8.1/defaultbgppeers.protocols.eda.nokia.com/v1alpha1.yaml @@ -0,0 +1,325 @@ +additionalPrinterColumns: + - jsonPath: .status.sessionState + name: Session State + type: string + - jsonPath: .status.lastChange + name: Last Change + type: date + - jsonPath: .status.enabled + name: Enabled + type: boolean + - jsonPath: .status.operationalState + name: Operational State + type: string + - jsonPath: .status.peerAS + name: PeerAS + type: integer +deprecated: true +deprecationWarning: This version is deprecated and will no longer be supported in the next version. +name: v1alpha1 +schema: + openAPIV3Schema: + description: DefaultBGPPeer is the Schema for the defaultbgppeers API + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + description: DefaultBGPPeer enables the configuration of BGP sessions within a DefaultRouter. It allows specifying a description, a DefaultInterface reference, and the peer IP address. The resource also supports dynamic neighbors, common BGP settings, and peer-specific configurations. + properties: + asPathOptions: + description: AS Path Options + properties: + allowOwnAS: + default: 0 + description: The maximum number of times the global AS number or a local AS number of the BGP instance can appear in any received AS_PATH before it is considered a loop and considered invalid. + maximum: 255 + minimum: 0 + type: integer + removePrivateAS: + description: Options for removing private AS numbers (2-byte and 4-byte) from the advertised AS path towards all peers. + properties: + ignorePeerAS: + default: false + description: If set to true then do not delete or replace a private AS number that is the same as the peer AS number. + type: boolean + leadingOnly: + default: false + description: If set to true then only delete or replace private AS numbers that appear before the first occurrence of a non-private ASN in the sequence of most recent ASNs in the AS path. + type: boolean + removePrivateASMode: + default: DISABLED + description: The method by which private AS numbers are removed from the advertised AS_PATH attribute. + enum: + - DISABLED + - REPLACE + - DELETE + type: string + required: + - ignorePeerAS + - leadingOnly + - removePrivateASMode + type: object + required: + - allowOwnAS + type: object + bfd: + description: Enable or disable Bi-forward Forwarding Detection (BFD) with fast failover. + type: boolean + client: + description: When set to true, all configured and dynamic BGP peers are considered RR clients. + type: boolean + clusterID: + description: Enables route reflect client and sets the cluster ID. + type: string + description: + description: Sets the description on the BGP peer. + type: string + dynamicNeighbor: + default: false + description: When set to true the DefaultInterface is added to the dynamic-neighbor list for dynamic peering. + type: boolean + dynamicNeighborAllowedPeerAS: + description: The autonomous system numbers allowed from peers if dynamic peering is enabled. + items: + type: integer + type: array + exportPolicy: + description: Reference to a Policy CR that will be used to filter routes advertised to peers. + items: + type: string + type: array + grStaleRouteTime: + description: Enables Graceful Restart on the peer and sets the stale route time. + maximum: 3600 + minimum: 1 + type: integer + group: + description: Reference to a DefaultBGPGroup. + type: string + importPolicy: + description: Reference to a Policy CR that will be used to filter routes received from peers. + items: + type: string + type: array + interface: + description: Reference to either a DefaultInterface or SystemInterface whose IP will be used as a source IP for the BGP session. + type: string + interfaceKind: + description: Reference to a the Kind of interface whose IP will be used as a source IP for the BGP session. + enum: + - DEFAULTINTERFACE + - SYSTEMINTERFACE + type: string + ipv4Unicast: + description: Parameters relating to the IPv4 unicast AFI/SAFI. + properties: + advertiseIPV6NextHops: + description: Enables advertisement of IPv4 Unicast routes with IPv6 next-hops to peers. + type: boolean + enabled: + description: Enables the IPv4 unicast AFISAFI. + type: boolean + maxReceivedRoutes: + description: Maximum number of IPv4 Unicast routes that will be accepted from the neighbor, counting routes accepted and rejected by import policies. + maximum: 4294967295 + minimum: 1 + type: integer + receiveIPV6NextHops: + description: Enables the advertisement of the RFC 5549 capability to receive IPv4 routes with IPv6 next-hops. + type: boolean + type: object + ipv6Unicast: + description: Parameters relating to the IPv6 unicast AFI/SAFI. + properties: + enabled: + description: Enables the IPv6 unicast AFISAFI + type: boolean + maxReceivedRoutes: + description: Maximum number of IPv6 Unicast routes that will be accepted from the neighbor, counting routes accepted and rejected by import policies. + maximum: 4294967295 + minimum: 1 + type: integer + type: object + keychain: + description: Reference to a Keychain resource that will be used for authentication with the BGP peer. + type: string + l2VPNEVPN: + description: Parameters relating to the EVPN AFI/SAFI. + properties: + advertiseIPV6NextHops: + description: Enables advertisement of EVPN routes with IPv6 next-hops to peers. + type: boolean + enabled: + description: Enables the L2VPN EVPN AFISAFI. + type: boolean + maxReceivedRoutes: + description: Maximum number of EVPN routes that will be accepted from the neighbor, counting routes accepted and rejected by import policies. + maximum: 4294967295 + minimum: 1 + type: integer + type: object + localAS: + description: The local autonomous system number advertised to peers. + properties: + autonomousSystem: + description: Local Autonomous System number. + maximum: 4294967295 + minimum: 1 + type: integer + prependGlobalAS: + description: When set to true, the global ASN value is prepended to the AS path in outbound routes towards each BGP peer. + type: boolean + prependLocalAS: + description: When set to true, the local AS value is prepended to the AS path of inbound routes from each EBGP peer. + type: boolean + required: + - autonomousSystem + type: object + localPreference: + description: Local Preference attribute added to received routes from the BGP peers, also sets local preference for generated routes. + maximum: 4294967295 + minimum: 0 + type: integer + multiHopMaxHop: + description: Enable multihop for eBGP peers and sets the maximum number of hops allowed. + maximum: 255 + minimum: 1 + type: integer + nextHopSelf: + description: When set to true, the next-hop in all IPv4-unicast, IPv6-unicast and EVPN BGP routes advertised to the peer is set to the local-address. + type: boolean + peerAS: + description: The autonomous system number expected from peers. + properties: + autonomousSystem: + description: Local Autonomous System number. + maximum: 4294967295 + minimum: 1 + type: integer + required: + - autonomousSystem + type: object + peerIP: + description: Peer IP to which the peering session will be established. There cannot be both a PeerIp and PeerDefaultInterface property set. + type: string + peerInterface: + description: Reference to a DefaultInterface or SystemInterface resource to which the peering session will be established. There cannot be both a PeerIp and PeerDefaultInterface property set. + type: string + peerInterfaceKind: + description: Reference to a the Kind of interface to which to peer to. + enum: + - DEFAULTINTERFACE + - SYSTEMINTERFACE + type: string + sendCommunityLarge: + description: When false, all large (12 byte) BGP communities from all outbound routes advertised to the peer are stripped. + type: boolean + sendCommunityStandard: + description: When false, all standard (4 byte) communities from all outbound routes advertised to the peer are stripped. + type: boolean + sendDefaultRoute: + description: Options for controlling the generation of default routes towards BGP peers. + properties: + addressFamily: + description: Enables the sending of a synthetically generated default IPv4 or IPV6 route to each peer. + items: + enum: + - IPV4-UNICAST + - IPV6-UNICAST + type: string + type: array + exportPolicy: + description: Reference to a Policy that should be applied to the advertised default routes, in order to set their attributes to non-default values. + type: string + required: + - addressFamily + type: object + timers: + description: Timer configurations + properties: + connectRetry: + description: The time interval in seconds between successive attempts to establish a session with a peer. + maximum: 65535 + minimum: 1 + type: integer + holdTime: + description: The hold-time interval in seconds that the router proposes to the peer in its OPEN message. + maximum: 65535 + minimum: 0 + type: integer + keepAlive: + description: The interval in seconds between successive keepalive messages sent to the peer. + maximum: 21845 + minimum: 0 + type: integer + minimumAdvertisementInterval: + description: The value assigned to the MinRouteAdvertisementIntervalTimer of RFC 4271, for both EBGP and IBGP sessions. + maximum: 255 + minimum: 1 + type: integer + type: object + required: + - group + - interface + - interfaceKind + type: object + status: + description: DefaultBGPPeerStatus defines the observed state of DefaultBGPPeer + properties: + enabled: + description: Indicated whether the BGP Peer is administratively enabled. + type: boolean + health: + description: Indicates the health score of the BGP peer. + type: integer + healthScoreReason: + description: Indicates the reason for the health score. + type: string + lastChange: + description: The time when the state of the resource last changed. + type: string + lastEvent: + description: Last event of the BGP peer. + type: string + lastState: + description: Last state of the BGP peer. + type: string + negotiatedHoldTime: + description: Hold time negotiated with the BGP peer. + type: integer + negotiatedKeepaliveInterval: + description: Keepalive interval negotiated with the BGP peer. + type: integer + operationalState: + description: Operational state of the BGP peer + type: string + peerAS: + description: Peer AS of the BGP peer. + type: integer + sessionState: + description: The state of the BGP session. + type: string + underMaintenance: + description: Indicates if the BGP peer is under maintenance. + type: boolean + type: object + type: object +served: true +storage: false +subresources: + status: {} diff --git a/static/resources/defaultinterfaces.routing.eda.nokia.com/v1alpha1.yaml b/static/resources/25.8.1/defaultinterfaces.routing.eda.nokia.com/v1alpha1.yaml similarity index 100% rename from static/resources/defaultinterfaces.routing.eda.nokia.com/v1alpha1.yaml rename to static/resources/25.8.1/defaultinterfaces.routing.eda.nokia.com/v1alpha1.yaml diff --git a/static/resources/25.8.1/defaultinterfacestates.routing.eda.nokia.com/v1alpha1.yaml b/static/resources/25.8.1/defaultinterfacestates.routing.eda.nokia.com/v1alpha1.yaml new file mode 100644 index 0000000..05660ab --- /dev/null +++ b/static/resources/25.8.1/defaultinterfacestates.routing.eda.nokia.com/v1alpha1.yaml @@ -0,0 +1,105 @@ +name: v1alpha1 +schema: + openAPIV3Schema: + description: DefaultInterfaceState is the Schema for the defaultinterfacestates API + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + description: DefaultInterfaceStateSpec defines the desired state of DefaultInterfaceState + properties: + bfdEnabled: + description: Indicates if bfd is enabled or disabled + type: boolean + defaultNodeInterface: + description: Node specific default interface name, for example "ethernet-1/1.0", "if-1/1/c1/1" + type: string + defaultRouter: + description: Reference to a DefaultRouter + type: string + interface: + description: Reference to an interface + type: string + interfaceEnabled: + description: Indicates if the interface is enabled or disabled + type: boolean + ipv4Addresses: + description: List of IPv4 addresses + items: + properties: + ipPrefix: + description: Address and mask to use + type: string + primary: + description: Indicates which address to use as primary for broadcast + type: boolean + required: + - ipPrefix + type: object + type: array + ipv6Addresses: + description: List of IPv6 addresses + items: + properties: + ipPrefix: + description: Address and mask to use + type: string + primary: + description: Indicates which address to use as primary for broadcast + type: boolean + required: + - ipPrefix + type: object + type: array + networkInstanceName: + description: The name of the network-instance or base routing instance in which the DefaultInterface is configured + type: string + node: + description: Reference to Node object + type: string + nodeInterface: + description: Node specific interface name, for example "ethernet-1/1", "1/1/c1/1" + type: string + operatingSystem: + description: Operating System of the Node + type: string + subInterfaceIndex: + description: Index of the subinterface + type: integer + unnumbered: + description: Indicates if the interface is unnumbered + enum: + - IPV6 + type: string + required: + - defaultNodeInterface + - defaultRouter + - interface + - interfaceEnabled + - networkInstanceName + - node + - nodeInterface + type: object + status: + description: DefaultInterfaceStateStatus defines the observed state of DefaultInterfaceState + type: object + type: object +served: true +storage: true +subresources: + status: {} diff --git a/static/resources/defaultroutereflectorclients.protocols.eda.nokia.com/v1.yaml b/static/resources/25.8.1/defaultroutereflectorclients.protocols.eda.nokia.com/v1.yaml similarity index 100% rename from static/resources/defaultroutereflectorclients.protocols.eda.nokia.com/v1.yaml rename to static/resources/25.8.1/defaultroutereflectorclients.protocols.eda.nokia.com/v1.yaml diff --git a/static/resources/25.8.1/defaultroutereflectorclients.protocols.eda.nokia.com/v1alpha1.yaml b/static/resources/25.8.1/defaultroutereflectorclients.protocols.eda.nokia.com/v1alpha1.yaml new file mode 100644 index 0000000..b56ca46 --- /dev/null +++ b/static/resources/25.8.1/defaultroutereflectorclients.protocols.eda.nokia.com/v1alpha1.yaml @@ -0,0 +1,276 @@ +additionalPrinterColumns: + - jsonPath: .status.lastChange + name: Last Change + type: date + - jsonPath: .status.operationalState + name: OperationalState + type: string + - jsonPath: .status.numRouteReflectorClientBGPPeers + name: NumRouteReflectorClientBGPPeers + type: string + - jsonPath: .status.numRouteReflectorClientBGPPeersOperDown + name: NumRouteReflectorClientBGPPeersOperDown + type: string +deprecated: true +deprecationWarning: This version is deprecated and will no longer be supported in the next version. +name: v1alpha1 +schema: + openAPIV3Schema: + description: DefaultRouteReflectorClient is the Schema for the defaultroutereflectorclients API + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + description: DefaultRouteReflectorClient enables the configuration of iBGP sessions from a client to RouteReflectors. It includes settings for the DefaultInterface, BGP group, client selectors, and a list of Route Reflector IPs. Additionally, it allows for the configuration of L2VPN EVPN settings and applies common BGP configuration settings to manage routing efficiently within the network. + properties: + asPathOptions: + description: AS Path Options + properties: + allowOwnAS: + default: 0 + description: The maximum number of times the global AS number or a local AS number of the BGP instance can appear in any received AS_PATH before it is considered a loop and considered invalid. + maximum: 255 + minimum: 0 + type: integer + removePrivateAS: + description: Options for removing private AS numbers (2-byte and 4-byte) from the advertised AS path towards all peers. + properties: + ignorePeerAS: + default: false + description: If set to true then do not delete or replace a private AS number that is the same as the peer AS number. + type: boolean + leadingOnly: + default: false + description: If set to true then only delete or replace private AS numbers that appear before the first occurrence of a non-private ASN in the sequence of most recent ASNs in the AS path. + type: boolean + removePrivateASMode: + default: DISABLED + description: The method by which private AS numbers are removed from the advertised AS_PATH attribute. + enum: + - DISABLED + - REPLACE + - DELETE + type: string + required: + - ignorePeerAS + - leadingOnly + - removePrivateASMode + type: object + required: + - allowOwnAS + type: object + bfd: + description: Enable or disable Bi-forward Forwarding Detection (BFD) with fast failover. + type: boolean + defaultBgpClientGroup: + description: Reference to Default Bgp Group. + type: string + exportPolicy: + description: Reference to a Policy CR that will be used to filter routes advertised to peers. + items: + type: string + type: array + grStaleRouteTime: + description: Enables Graceful Restart on the peer and sets the stale route time. + maximum: 3600 + minimum: 1 + type: integer + importPolicy: + description: Reference to a Policy CR that will be used to filter routes received from peers. + items: + type: string + type: array + interface: + description: Reference to either a DefaultInterface or SystemInterface from which the session to the RR will be done from. + type: string + interfaceKind: + description: Reference to a the Kind of interface from which the session to the RR will be done from. + enum: + - DEFAULTINTERFACE + - SYSTEMINTERFACE + type: string + ipv4Unicast: + description: Parameters relating to the IPv4 unicast AFI/SAFI. + properties: + advertiseIPV6NextHops: + description: Enables advertisement of IPv4 Unicast routes with IPv6 next-hops to peers. + type: boolean + enabled: + description: Enables the IPv4 unicast AFISAFI. + type: boolean + maxReceivedRoutes: + description: Maximum number of IPv4 Unicast routes that will be accepted from the neighbor, counting routes accepted and rejected by import policies. + maximum: 4294967295 + minimum: 1 + type: integer + receiveIPV6NextHops: + description: Enables the advertisement of the RFC 5549 capability to receive IPv4 routes with IPv6 next-hops. + type: boolean + type: object + ipv6Unicast: + description: Parameters relating to the IPv6 unicast AFI/SAFI. + properties: + enabled: + description: Enables the IPv6 unicast AFISAFI + type: boolean + maxReceivedRoutes: + description: Maximum number of IPv6 Unicast routes that will be accepted from the neighbor, counting routes accepted and rejected by import policies. + maximum: 4294967295 + minimum: 1 + type: integer + type: object + keychain: + description: Reference to a Keychain resource that will be used for authentication with the BGP peer. + type: string + l2VPNEVPN: + description: Parameters relating to the EVPN AFI/SAFI. + properties: + advertiseIPV6NextHops: + description: Enables advertisement of EVPN routes with IPv6 next-hops to peers. + type: boolean + enabled: + description: Enables the L2VPN EVPN AFISAFI. + type: boolean + maxReceivedRoutes: + description: Maximum number of EVPN routes that will be accepted from the neighbor, counting routes accepted and rejected by import policies. + maximum: 4294967295 + minimum: 1 + type: integer + type: object + localAS: + description: The local autonomous system number advertised to peers. + properties: + autonomousSystem: + description: Local Autonomous System number. + maximum: 4294967295 + minimum: 1 + type: integer + prependGlobalAS: + description: When set to true, the global ASN value is prepended to the AS path in outbound routes towards each BGP peer. + type: boolean + prependLocalAS: + description: When set to true, the local AS value is prepended to the AS path of inbound routes from each EBGP peer. + type: boolean + required: + - autonomousSystem + type: object + peerAS: + description: The autonomous system number expected from peers. + properties: + autonomousSystem: + description: Local Autonomous System number. + maximum: 4294967295 + minimum: 1 + type: integer + required: + - autonomousSystem + type: object + routeReflectorIPs: + description: List of the peering IPs on the RRs to which peering session is established. + items: + type: string + type: array + routeReflectorSelector: + description: Label selector used to select the RouteReflectors to which the iBGP sessions are established. + items: + type: string + type: array + sendCommunityLarge: + description: When false, all large (12 byte) BGP communities from all outbound routes advertised to the peer are stripped. + type: boolean + sendCommunityStandard: + description: When false, all standard (4 byte) communities from all outbound routes advertised to the peer are stripped. + type: boolean + sendDefaultRoute: + description: Options for controlling the generation of default routes towards BGP peers. + properties: + addressFamily: + description: Enables the sending of a synthetically generated default IPv4 or IPV6 route to each peer. + items: + enum: + - IPV4-UNICAST + - IPV6-UNICAST + type: string + type: array + exportPolicy: + description: Reference to a Policy that should be applied to the advertised default routes, in order to set their attributes to non-default values. + type: string + required: + - addressFamily + type: object + timers: + description: Timer configurations + properties: + connectRetry: + description: The time interval in seconds between successive attempts to establish a session with a peer. + maximum: 65535 + minimum: 1 + type: integer + holdTime: + description: The hold-time interval in seconds that the router proposes to the peer in its OPEN message. + maximum: 65535 + minimum: 0 + type: integer + keepAlive: + description: The interval in seconds between successive keepalive messages sent to the peer. + maximum: 21845 + minimum: 0 + type: integer + minimumAdvertisementInterval: + description: The value assigned to the MinRouteAdvertisementIntervalTimer of RFC 4271, for both EBGP and IBGP sessions. + maximum: 255 + minimum: 1 + type: integer + type: object + required: + - defaultBgpClientGroup + - interface + - interfaceKind + type: object + status: + description: DefaultRouteReflectorClientStatus defines the observed state of DefaultRouteReflectorClient + properties: + health: + description: Indicates the health score of the DefaultRouteReflectorClient. + type: integer + healthScoreReason: + description: Indicates the reason for the health score. + type: string + lastChange: + description: The time when the state of the resource last changed. + type: string + numRouteReflectorClientBGPPeers: + description: Total number of configured route reflector peers on the route reflector client. + type: integer + numRouteReflectorClientBGPPeersOperDown: + description: Total number of configured route reflector peers on the route reflector client that are operationally down. + type: integer + operDownRouteReflectorClientPeers: + description: List of route reflector BGPPeers which are operationally down. + items: + type: string + type: array + operationalState: + description: Operational state of the DefaultRouteReflectorClient. + type: string + type: object + type: object +served: true +storage: false +subresources: + status: {} diff --git a/static/resources/defaultroutereflectors.protocols.eda.nokia.com/v1.yaml b/static/resources/25.8.1/defaultroutereflectors.protocols.eda.nokia.com/v1.yaml similarity index 100% rename from static/resources/defaultroutereflectors.protocols.eda.nokia.com/v1.yaml rename to static/resources/25.8.1/defaultroutereflectors.protocols.eda.nokia.com/v1.yaml diff --git a/static/resources/25.8.1/defaultroutereflectors.protocols.eda.nokia.com/v1alpha1.yaml b/static/resources/25.8.1/defaultroutereflectors.protocols.eda.nokia.com/v1alpha1.yaml new file mode 100644 index 0000000..e56d4dd --- /dev/null +++ b/static/resources/25.8.1/defaultroutereflectors.protocols.eda.nokia.com/v1alpha1.yaml @@ -0,0 +1,280 @@ +additionalPrinterColumns: + - jsonPath: .status.lastChange + name: Last Change + type: date + - jsonPath: .status.operationalState + name: Operational State + type: string + - jsonPath: .status.numRouteReflectorBGPPeers + name: NumRouteReflectorBGPPeers + type: string + - jsonPath: .status.numRouteReflectorBGPPeersOperDown + name: NumRouteReflectorBGPPeersOperDown + type: string +deprecated: true +deprecationWarning: This version is deprecated and will no longer be supported in the next version. +name: v1alpha1 +schema: + openAPIV3Schema: + description: DefaultRouteReflector is the Schema for the defaultroutereflectors API + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + description: DefaultRouteReflector enables the configuration of iBGP sessions to RouteReflectorClients. It includes settings for the DefaultInterface, BGP group, client selectors, and the Cluster ID. Additionally, it allows for the configuration of L2VPN EVPN settings and applies common BGP configuration settings to manage routing efficiently within the network. + properties: + asPathOptions: + description: AS Path Options + properties: + allowOwnAS: + default: 0 + description: The maximum number of times the global AS number or a local AS number of the BGP instance can appear in any received AS_PATH before it is considered a loop and considered invalid. + maximum: 255 + minimum: 0 + type: integer + removePrivateAS: + description: Options for removing private AS numbers (2-byte and 4-byte) from the advertised AS path towards all peers. + properties: + ignorePeerAS: + default: false + description: If set to true then do not delete or replace a private AS number that is the same as the peer AS number. + type: boolean + leadingOnly: + default: false + description: If set to true then only delete or replace private AS numbers that appear before the first occurrence of a non-private ASN in the sequence of most recent ASNs in the AS path. + type: boolean + removePrivateASMode: + default: DISABLED + description: The method by which private AS numbers are removed from the advertised AS_PATH attribute. + enum: + - DISABLED + - REPLACE + - DELETE + type: string + required: + - ignorePeerAS + - leadingOnly + - removePrivateASMode + type: object + required: + - allowOwnAS + type: object + bfd: + description: Enable or disable Bi-forward Forwarding Detection (BFD) with fast failover. + type: boolean + clientIPs: + description: List of RR client IPs to which the iBGP sessions are established. + items: + type: string + type: array + clientSelector: + description: Label selector used to select the RouteReflectorClients to which the iBGP sessions are established. + items: + type: string + type: array + clusterID: + description: Sets the cluster ID for route reflectors. + type: string + defaultBGPRRGroup: + description: Reference to a DefaultBGPGroup. + type: string + exportPolicy: + description: Reference to a Policy CR that will be used to filter routes advertised to peers. + items: + type: string + type: array + grStaleRouteTime: + description: Enables Graceful Restart on the peer and sets the stale route time. + maximum: 3600 + minimum: 1 + type: integer + importPolicy: + description: Reference to a Policy CR that will be used to filter routes received from peers. + items: + type: string + type: array + interface: + description: Reference to either a DefaultInterface or SystemInterface from which the session to the client will be done from. + type: string + interfaceKind: + description: Reference to a the Kind of interface from which the session to the client will be done from. + enum: + - DEFAULTINTERFACE + - SYSTEMINTERFACE + type: string + ipv4Unicast: + description: Parameters relating to the IPv4 unicast AFI/SAFI. + properties: + advertiseIPV6NextHops: + description: Enables advertisement of IPv4 Unicast routes with IPv6 next-hops to peers. + type: boolean + enabled: + description: Enables the IPv4 unicast AFISAFI. + type: boolean + maxReceivedRoutes: + description: Maximum number of IPv4 Unicast routes that will be accepted from the neighbor, counting routes accepted and rejected by import policies. + maximum: 4294967295 + minimum: 1 + type: integer + receiveIPV6NextHops: + description: Enables the advertisement of the RFC 5549 capability to receive IPv4 routes with IPv6 next-hops. + type: boolean + type: object + ipv6Unicast: + description: Parameters relating to the IPv6 unicast AFI/SAFI. + properties: + enabled: + description: Enables the IPv6 unicast AFISAFI + type: boolean + maxReceivedRoutes: + description: Maximum number of IPv6 Unicast routes that will be accepted from the neighbor, counting routes accepted and rejected by import policies. + maximum: 4294967295 + minimum: 1 + type: integer + type: object + keychain: + description: Reference to a Keychain resource that will be used for authentication with the BGP peer. + type: string + l2VPNEVPN: + description: Parameters relating to the EVPN AFI/SAFI. + properties: + advertiseIPV6NextHops: + description: Enables advertisement of EVPN routes with IPv6 next-hops to peers. + type: boolean + enabled: + description: Enables the L2VPN EVPN AFISAFI. + type: boolean + maxReceivedRoutes: + description: Maximum number of EVPN routes that will be accepted from the neighbor, counting routes accepted and rejected by import policies. + maximum: 4294967295 + minimum: 1 + type: integer + type: object + localAS: + description: The local autonomous system number advertised to peers. + properties: + autonomousSystem: + description: Local Autonomous System number. + maximum: 4294967295 + minimum: 1 + type: integer + prependGlobalAS: + description: When set to true, the global ASN value is prepended to the AS path in outbound routes towards each BGP peer. + type: boolean + prependLocalAS: + description: When set to true, the local AS value is prepended to the AS path of inbound routes from each EBGP peer. + type: boolean + required: + - autonomousSystem + type: object + peerAS: + description: The autonomous system number expected from peers. + properties: + autonomousSystem: + description: Local Autonomous System number. + maximum: 4294967295 + minimum: 1 + type: integer + required: + - autonomousSystem + type: object + sendCommunityLarge: + description: When false, all large (12 byte) BGP communities from all outbound routes advertised to the peer are stripped. + type: boolean + sendCommunityStandard: + description: When false, all standard (4 byte) communities from all outbound routes advertised to the peer are stripped. + type: boolean + sendDefaultRoute: + description: Options for controlling the generation of default routes towards BGP peers. + properties: + addressFamily: + description: Enables the sending of a synthetically generated default IPv4 or IPV6 route to each peer. + items: + enum: + - IPV4-UNICAST + - IPV6-UNICAST + type: string + type: array + exportPolicy: + description: Reference to a Policy that should be applied to the advertised default routes, in order to set their attributes to non-default values. + type: string + required: + - addressFamily + type: object + timers: + description: Timer configurations + properties: + connectRetry: + description: The time interval in seconds between successive attempts to establish a session with a peer. + maximum: 65535 + minimum: 1 + type: integer + holdTime: + description: The hold-time interval in seconds that the router proposes to the peer in its OPEN message. + maximum: 65535 + minimum: 0 + type: integer + keepAlive: + description: The interval in seconds between successive keepalive messages sent to the peer. + maximum: 21845 + minimum: 0 + type: integer + minimumAdvertisementInterval: + description: The value assigned to the MinRouteAdvertisementIntervalTimer of RFC 4271, for both EBGP and IBGP sessions. + maximum: 255 + minimum: 1 + type: integer + type: object + required: + - clusterID + - defaultBGPRRGroup + - interface + - interfaceKind + type: object + status: + description: DefaultRouteReflectorStatus defines the observed state of DefaultRouteReflector + properties: + health: + description: Indicates the health score of the Route Reflector. + type: integer + healthScoreReason: + description: Indicates the reason for the health score. + type: string + lastChange: + description: The time when the state of the resource last changed. + type: string + numRouteReflectorBGPPeers: + description: Total number of configured route reflector client peers on the route reflector. + type: integer + numRouteReflectorBGPPeersOperDown: + description: Total number of configured route reflector client peers on the route reflector that are operationally down. + type: integer + operDownRouteReflectorPeers: + description: List of route reflector BGPPeers which are operationally down. + items: + type: string + type: array + operationalState: + description: Operational state of the Route Reflector. + type: string + type: object + type: object +served: true +storage: false +subresources: + status: {} diff --git a/static/resources/25.8.1/defaultrouters.routing.eda.nokia.com/v1alpha1.yaml b/static/resources/25.8.1/defaultrouters.routing.eda.nokia.com/v1alpha1.yaml new file mode 100644 index 0000000..c855d05 --- /dev/null +++ b/static/resources/25.8.1/defaultrouters.routing.eda.nokia.com/v1alpha1.yaml @@ -0,0 +1,228 @@ +additionalPrinterColumns: + - jsonPath: .status.lastChange + name: Last Change + type: date + - jsonPath: .status.operationalState + name: Operational State + type: string +name: v1alpha1 +schema: + openAPIV3Schema: + description: DefaultRouter is the Schema for the defaultrouters API + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + description: DefaultRouter enables the configuration of default routing instances on a specified Node, including options for BGP configuration, import and export policies, and router IDs. + properties: + bgp: + description: BGP configuration. + properties: + autonomousSystem: + description: Autonomous System number for BGP. + maximum: 4294967295 + minimum: 1 + type: integer + ebgpPreference: + default: 170 + description: Preference to be set for eBGP. + maximum: 255 + minimum: 1 + type: integer + enabled: + default: false + description: Enables BGP in the default VRF. + type: boolean + ibgpPreference: + default: 170 + description: Preference to be set for iBGP. + maximum: 255 + minimum: 1 + type: integer + ipv4Unicast: + description: Parameters relating to the IPv4 unicast AFI/SAFI. + properties: + advertiseIPV6NextHops: + description: Enables advertisement of IPv4 Unicast routes with IPv6 next-hops to peers. + type: boolean + enabled: + description: Enables the IPv4 unicast AFISAFI. + type: boolean + multipath: + description: Enable multipath. + properties: + allowMultipleAS: + default: true + description: When set to true, BGP is allowed to build a multipath set using BGP routes with different neighbor AS (most recent AS in the AS_PATH), When set to false, BGP is only allowed to use non-best paths for ECMP if they meet the multipath criteria and they have the same neighbor AS as the best path. + type: boolean + maxAllowedPaths: + description: The maximum number of BGP ECMP next-hops for BGP routes with an NLRI belonging to the address family of this configuration context. + maximum: 256 + minimum: 1 + type: integer + required: + - allowMultipleAS + - maxAllowedPaths + type: object + rapidUpdate: + description: Enables rapid update. + type: boolean + receiveIPV6NextHops: + description: Enables the advertisement of the RFC 5549 capability to receive IPv4 routes with IPv6 next-hops. + type: boolean + type: object + ipv6Unicast: + description: Parameters relating to the IPv6 unicast AFI/SAFI. + properties: + enabled: + description: Enables the IPv6 unicast AFISAFI + type: boolean + multipath: + description: Enable multipath + properties: + allowMultipleAS: + default: true + description: When set to true, BGP is allowed to build a multipath set using BGP routes with different neighbor AS (most recent AS in the AS_PATH), When set to false, BGP is only allowed to use non-best paths for ECMP if they meet the multipath criteria and they have the same neighbor AS as the best path. + type: boolean + maxAllowedPaths: + description: The maximum number of BGP ECMP next-hops for BGP routes with an NLRI belonging to the address family of this configuration context. + maximum: 256 + minimum: 1 + type: integer + required: + - allowMultipleAS + - maxAllowedPaths + type: object + rapidUpdate: + description: Enables rapid update. + type: boolean + type: object + keychain: + description: Keychain to be used for authentication + type: string + l2VPNEVPN: + description: Parameters relating to the EVPN AFI/SAFI. + properties: + advertiseIPV6NextHops: + description: Enables advertisement of EVPN routes with IPv6 next-hops to peers. + type: boolean + enabled: + description: Enables the L2VPN EVPN AFISAFI. + type: boolean + interASVPN: + default: false + description: Enable inter-AS VPN for EVPN. + type: boolean + multipath: + description: Enable multipath + properties: + allowMultipleAS: + default: true + description: When set to true, BGP is allowed to build a multipath set using BGP routes with different neighbor AS (most recent AS in the AS_PATH), When set to false, BGP is only allowed to use non-best paths for ECMP if they meet the multipath criteria and they have the same neighbor AS as the best path. + type: boolean + maxAllowedPaths: + description: The maximum number of BGP ECMP next-hops for BGP routes with an NLRI belonging to the address family of this configuration context. + maximum: 256 + minimum: 1 + type: integer + required: + - allowMultipleAS + - maxAllowedPaths + type: object + rapidUpdate: + description: Enables rapid update. + type: boolean + type: object + minWaitToAdvertise: + default: 0 + description: Minimum wait time before advertising routes post BGP restart. + maximum: 3600 + minimum: 0 + type: integer + rapidWithdrawl: + default: false + description: Enable rapid withdrawal in BGP. + type: boolean + sendCommunityLarge: + description: When false, all large (12 byte) BGP communities from all outbound routes advertised to the peer are stripped. + type: boolean + sendCommunityStandard: + description: When false, all standard (4 byte) communities from all outbound routes advertised to the peer are stripped. + type: boolean + waitForFibInstall: + default: false + description: Wait for FIB installation before advertising routes. + type: boolean + type: object + description: + description: Sets the description on the Default router. + type: string + exportPolicy: + description: Reference to a Policy resource to use when evaluating route exports from the DefaultRouter. + items: + type: string + type: array + importPolicy: + description: Reference to a Policy resource to use when evaluating route imports into the DefaultRouter. + items: + type: string + type: array + node: + description: Reference to a TopoNode on which to configure the default routing instance. + type: string + routeLeaking: + description: Route leaking controlled by routing policies in and out of the DefaultRouter. + properties: + exportPolicy: + description: Reference to a Policy resource to use when evaluating route exports from the DefaultRouter. + type: string + importPolicy: + description: Reference to a Policy resource to use when evaluating route imports into the DefaultRouter. + type: string + required: + - exportPolicy + - importPolicy + type: object + routerID: + description: Router ID in dotted quad notation. + type: string + required: + - node + - routerID + type: object + status: + description: DefaultRouterStatus defines the observed state of DefaultRouter + properties: + health: + description: Indicates the health score of the Router. + type: integer + healthScoreReason: + description: Indicates the reason for the health score. + type: string + lastChange: + description: The time when the state of the resource last changed. + type: string + operationalState: + description: Operational state of the Router. + type: string + type: object + type: object +served: true +storage: true +subresources: + status: {} diff --git a/static/resources/25.8.1/defaultrouterstates.routing.eda.nokia.com/v1alpha1.yaml b/static/resources/25.8.1/defaultrouterstates.routing.eda.nokia.com/v1alpha1.yaml new file mode 100644 index 0000000..0606314 --- /dev/null +++ b/static/resources/25.8.1/defaultrouterstates.routing.eda.nokia.com/v1alpha1.yaml @@ -0,0 +1,42 @@ +name: v1alpha1 +schema: + openAPIV3Schema: + description: DefaultRouterState is the Schema for the defaultrouterstates API + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + description: DefaultRouterStateSpec defines the desired state of DefaultRouterState + properties: + node: + description: Node on which the DefaultRouter is deployed + type: string + operatingSystem: + description: Operating System of the Node + type: string + required: + - node + type: object + status: + description: DefaultRouterStateStatus defines the observed state of DefaultRouterState + type: object + type: object +served: true +storage: true +subresources: + status: {} diff --git a/static/resources/defaultstaticroutes.protocols.eda.nokia.com/v1.yaml b/static/resources/25.8.1/defaultstaticroutes.protocols.eda.nokia.com/v1.yaml similarity index 100% rename from static/resources/defaultstaticroutes.protocols.eda.nokia.com/v1.yaml rename to static/resources/25.8.1/defaultstaticroutes.protocols.eda.nokia.com/v1.yaml diff --git a/static/resources/25.8.1/defaultstaticroutes.protocols.eda.nokia.com/v1alpha1.yaml b/static/resources/25.8.1/defaultstaticroutes.protocols.eda.nokia.com/v1alpha1.yaml new file mode 100644 index 0000000..4c8774c --- /dev/null +++ b/static/resources/25.8.1/defaultstaticroutes.protocols.eda.nokia.com/v1alpha1.yaml @@ -0,0 +1,128 @@ +deprecated: true +deprecationWarning: This version is deprecated and will no longer be supported in the next version. +name: v1alpha1 +schema: + openAPIV3Schema: + description: DefaultStaticRoute is the Schema for the default static routes API + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + description: DefaultStaticRoute enables the configuration of static routes within a DefaultRouter. It allows specifying destination prefixes, route preference, and a nexthop group. This resource facilitates precise control over routing behavior, including options for BFD, route resolution, and blackholing traffic. + properties: + defaultRouter: + description: Reference to a DefaultRouter on which to configure the static routes. + type: string + nexthopGroup: + description: Group of nexthops for the list of prefixes. + properties: + bfd: + description: Enables BFD to the next-hops in the group. Local and Remote discriminator parameters have been deprecated at this level. Use Nexthop to set these parameters. + properties: + enabled: + default: false + description: Defines whether BFD should be enabled towards the nexthops. + type: boolean + localAddress: + description: Defines the local address to use when establishing the BFD session with the nexthop. + type: string + localDiscriminator: + description: Defines the local discriminator. + type: integer + remoteDiscriminator: + description: Defines the remote discriminator. + type: integer + type: object + blackhole: + default: false + description: If set to true all traffic destined to the prefixes will be blackholed. If enabled, next-hops are ignored and this takes precedence. + type: boolean + blackholeSendICMP: + description: When enabled, the router will generate ICMP Unreachable messages for packets destined to the blackhole route. + type: boolean + nexthops: + description: Ordered list of nexthops. + items: + properties: + bfd: + description: Enables BFD to the next-hops in the group. This overrides the configuration at the group. + properties: + enabled: + default: false + description: Defines whether BFD should be enabled towards the nexthops. + type: boolean + localAddress: + description: Defines the local address to use when establishing the BFD session with the nexthop. + type: string + localDiscriminator: + description: Defines the local discriminator. + type: integer + remoteDiscriminator: + description: Defines the remote discriminator. + type: integer + type: object + ipPrefix: + description: Address to use. + type: string + resolve: + default: false + description: If set to true the next-hops can be destinations which are resolved in the route table. This overrides the configuration at the group. + type: boolean + required: + - ipPrefix + type: object + type: array + resolve: + default: false + description: If set to true the next-hops can be destinations which are resolved in the route table. + type: boolean + type: object + preference: + description: Defines the route preference. + type: integer + prefixes: + description: List of destination prefixes and mask to use for the static routes. + items: + type: string + type: array + required: + - defaultRouter + - nexthopGroup + - prefixes + type: object + status: + description: DefaultStaticRouteStatus defines the observed state of default static route + properties: + health: + description: Indicates the health score of the static routes. + type: integer + healthScoreReason: + description: Indicates the reason for the health score. + type: string + lastChange: + description: The time when the state of the resource last changed. + type: string + operationalState: + description: Operational state of the static routes. + type: string + type: object + type: object +served: true +storage: false +subresources: + status: {} diff --git a/static/resources/deployimages.os.eda.nokia.com/v1alpha1.yaml b/static/resources/25.8.1/deployimages.os.eda.nokia.com/v1alpha1.yaml similarity index 100% rename from static/resources/deployimages.os.eda.nokia.com/v1alpha1.yaml rename to static/resources/25.8.1/deployimages.os.eda.nokia.com/v1alpha1.yaml diff --git a/static/resources/25.8.1/designers.core.eda.nokia.com/v1.yaml b/static/resources/25.8.1/designers.core.eda.nokia.com/v1.yaml new file mode 100644 index 0000000..9d3d2c0 --- /dev/null +++ b/static/resources/25.8.1/designers.core.eda.nokia.com/v1.yaml @@ -0,0 +1,98 @@ +name: v1 +schema: + openAPIV3Schema: + description: Designer is the Schema for the designers API + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + description: DesignerSpec defines the desired state of Designer + properties: + nodeTemplate: + description: A list of templates to use with nodes + items: + properties: + interfaceGroup: + description: A list of interfaceGroups + items: + properties: + interfaceTemplate: + description: The interfaceTemplate associated with the interfaceGroup + properties: + fec: + description: Set Forward Error Correction on interfaces + type: string + numberChannel: + description: When set > 0 breakouts are configured on the interfaces + type: integer + speed: + description: The speed set on each interface + type: string + required: + - numberChannel + - speed + type: object + interfaces: + description: List of interfaces within the interfaceGroup in the dut-1/1/1 format (check this format) + items: + type: string + type: array + labels: + description: List of labels to associate with the interfaces within this interface Gropu + items: + type: string + type: array + required: + - interfaceTemplate + - interfaces + type: object + type: array + name: + type: string + operatingSystem: + description: The OS running on this TopoNode, e.g. srl, sros + enum: + - srl + - sros + - eos + - sonic + type: string + platform: + description: Platform type of this Node, e.g. 7220 IXR-D3L + type: string + version: + description: Sets the software version of this TopoNode, e.g. 22.6.1, 22.10.R1 + type: string + required: + - name + - operatingSystem + - platform + - version + type: object + type: array + required: + - nodeTemplate + type: object + status: + description: DesignerStatus defines the observed state of Designer + type: object + type: object +served: true +storage: true +subresources: + status: {} diff --git a/static/resources/25.8.1/deviationactions.core.eda.nokia.com/v1.yaml b/static/resources/25.8.1/deviationactions.core.eda.nokia.com/v1.yaml new file mode 100644 index 0000000..0a9bd4c --- /dev/null +++ b/static/resources/25.8.1/deviationactions.core.eda.nokia.com/v1.yaml @@ -0,0 +1,81 @@ +additionalPrinterColumns: + - jsonPath: .status.result + name: Result + type: string + - jsonPath: .metadata.creationTimestamp + name: Age + type: date +name: v1 +schema: + openAPIV3Schema: + description: DeviationAction is the Schema for the deviationactions API + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + description: |- + DeviationAction allows manual and API-driven actions to be performed on Deviation resources. + They are the only means to which and end user can accept or reject deviations, as Deviation resources themselves are read only. + properties: + actions: + description: The set of actions to perform on the target. + items: + properties: + action: + description: Action to perform on matching Deviations. + enum: + - setAccept + - clearAccept + - reject + type: string + path: + description: Path to match Deviation resources on this target. Only one action is allowed per path. + type: string + recurse: + description: Recursively accept/reject Deviations from the specified path. + type: boolean + required: + - action + - path + type: object + type: array + nodeEndpoint: + description: The target on which this action is to be performed. + type: string + required: + - actions + - nodeEndpoint + type: object + status: + description: DeviationActionStatus defines the observed state of DeviationAction + properties: + result: + description: The result of the set of actions. + enum: + - OK + - Failed + type: string + transactionId: + description: The transaction id these actions were part of. + type: integer + type: object + type: object +served: true +storage: true +subresources: + status: {} diff --git a/static/resources/25.8.1/deviationoverlays.topologies.eda.nokia.com/v1alpha1.yaml b/static/resources/25.8.1/deviationoverlays.topologies.eda.nokia.com/v1alpha1.yaml new file mode 100644 index 0000000..801dc68 --- /dev/null +++ b/static/resources/25.8.1/deviationoverlays.topologies.eda.nokia.com/v1alpha1.yaml @@ -0,0 +1,69 @@ +name: v1alpha1 +schema: + openAPIV3Schema: + description: DeviationOverlay is the Schema for deviationoverlays + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + description: DeviationOverlaySpec defines the desired state of DeviationOverlay + properties: + enabled: + description: Enable or disable the generation of the status of this overlay + type: boolean + topology: + description: Reference to the topology that this overlay is extending. + properties: + group: + description: The group of the application which published the topology this overlay is extending. + type: string + name: + description: The name of the resource which published the topology this overlay is extending. + type: string + version: + description: The version of the application which published the topology this overlay is extending. + type: string + required: + - group + - name + - version + type: object + uiDescription: + description: A description of the overlay to expose in the UI + type: string + uiDescriptionKey: + description: The translation key for the description of the overlay to expose in the UI + type: string + uiName: + description: The name of the overlay to expose in the UI + type: string + uiNameKey: + description: The translation key for the name of the overlay to expose in the UI + type: string + required: + - enabled + - topology + type: object + status: + description: DeviationOverlayStatus defines the observed state of DeviationOverlay + type: object + type: object +served: true +storage: true +subresources: + status: {} diff --git a/static/resources/25.8.1/deviations.core.eda.nokia.com/v1.yaml b/static/resources/25.8.1/deviations.core.eda.nokia.com/v1.yaml new file mode 100644 index 0000000..d6ead7a --- /dev/null +++ b/static/resources/25.8.1/deviations.core.eda.nokia.com/v1.yaml @@ -0,0 +1,90 @@ +additionalPrinterColumns: + - jsonPath: .spec.operation + name: OPERATION + type: string + - jsonPath: .spec.path + name: JSPATH + type: string +name: v1 +schema: + openAPIV3Schema: + description: Deviation is the Schema for the nodeconfigs API + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + description: |- + Deviations are used to represent differences between the intended and actual state of a target. + They indicate the intended state - or the computed configuration EDA expects, and compare this to the actual or running state, or the configuration retrieved from the target. + Deviations are most often generated by out-of-band changes to a target by an external system or user, and + can be accepted or rejected. Rejecting a Deviation will result in the intended configuration being re-applied, undoing the out-of-band change. + Deviations are raised per table, meaning a single change on a target may result in more than one Deviation. + properties: + accepted: + description: Indicates whether this Deviation has been accepted. + type: boolean + associatedCrs: + description: Resources impacted by this Deviation. + items: + properties: + groupVersion: + description: Group and version of the resource. + type: string + kind: + description: Kind of the resource. + type: string + name: + description: Name of the resource. + type: string + required: + - groupVersion + - kind + - name + type: object + type: array + intendedValues: + description: JSON object containing intended values of fields at the specified path. + type: string + nodeEndpoint: + description: Target on which this Deviation is present. + type: string + operation: + description: Indicates the operation in this Deviation. + enum: + - create + - delete + type: string + path: + description: Path on the target this Deviation is present at. This path is relative to the target's root, without any EDA prefixes - for example ".system" rather than ".namespace.node.srl.system". + type: string + runningValues: + description: JSON object containing running values of fields at the specified path. + type: string + required: + - nodeEndpoint + - operation + - path + type: object + status: + description: DeviationStatus defines the observed state of Deviation + type: object + type: object +served: true +storage: true +subresources: + status: {} diff --git a/static/resources/25.8.1/dhcprelays.services.eda.nokia.com/v1.yaml b/static/resources/25.8.1/dhcprelays.services.eda.nokia.com/v1.yaml new file mode 100644 index 0000000..db5d73c --- /dev/null +++ b/static/resources/25.8.1/dhcprelays.services.eda.nokia.com/v1.yaml @@ -0,0 +1,63 @@ +name: v1 +schema: + openAPIV3Schema: + description: DHCPRelay is the Schema for the dhcprelays API + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + description: The DHCPRelay enables the forwarding of DHCP requests and responses between clients and servers across different networks. This resource allows for the configuration of various DHCP relay sub-options, such as CircuitID, RemoteID, and ClientLinkLayerAddress, to provide detailed client information. It also includes settings for specifying the router to reach the DHCP server, the list of DHCP servers to forward requests to, and selectors for Routed and IRB interfaces where the relay will be configured. Additionally, the GI Address option can be set to derive the Gateway IP address from the selected interface, ensuring correct routing of DHCP messages. + properties: + giAddress: + description: Set GI Address to the IP derived from the IRBInterface or RoutedInterface on which the DHCP relay is configured. + type: boolean + irbInterfaceSelector: + description: Label selector to select the IRBInterface on which to configure the DHCP relay. + items: + type: string + type: array + routedInterfaceSelector: + description: Label selector to select the RoutedInterface on which to configure the DHCP relay. + items: + type: string + type: array + router: + description: Router to be used to reach the DHCP server, if not specified the Router under which the source IRBInterface or RoutedInterface resides will be used. + type: string + servers: + description: List of servers to send the DHCP relayed packet to. These can be IP addresses or FQDN. + items: + type: string + minItems: 1 + type: array + subOptions: + description: DHCP Relay sub-options; available options are CircuitID, RemoteID, and ClientLinkLayerAddress. + items: + type: string + type: array + required: + - servers + type: object + status: + description: DHCPRelayStatus defines the observed state of DHCPRelay + type: object + type: object +served: true +storage: true +subresources: + status: {} diff --git a/static/resources/25.8.1/dhcprelays.services.eda.nokia.com/v1alpha1.yaml b/static/resources/25.8.1/dhcprelays.services.eda.nokia.com/v1alpha1.yaml new file mode 100644 index 0000000..9630748 --- /dev/null +++ b/static/resources/25.8.1/dhcprelays.services.eda.nokia.com/v1alpha1.yaml @@ -0,0 +1,65 @@ +deprecated: true +deprecationWarning: This version is deprecated and will no longer be supported in the next version. +name: v1alpha1 +schema: + openAPIV3Schema: + description: DHCPRelay is the Schema for the dhcprelays API + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + description: The DHCPRelay enables the forwarding of DHCP requests and responses between clients and servers across different networks. This resource allows for the configuration of various DHCP relay sub-options, such as CircuitID, RemoteID, and ClientLinkLayerAddress, to provide detailed client information. It also includes settings for specifying the router to reach the DHCP server, the list of DHCP servers to forward requests to, and selectors for Routed and IRB interfaces where the relay will be configured. Additionally, the GI Address option can be set to derive the Gateway IP address from the selected interface, ensuring correct routing of DHCP messages. + properties: + giAddress: + description: Set GI Address to the IP derived from the IRBInterface or RoutedInterface on which the DHCP relay is configured. + type: boolean + irbInterfaceSelector: + description: Label selector to select the IRBInterface on which to configure the DHCP relay. + items: + type: string + type: array + routedInterfaceSelector: + description: Label selector to select the RoutedInterface on which to configure the DHCP relay. + items: + type: string + type: array + router: + description: Router to be used to reach the DHCP server, if not specified the Router under which the source IRBInterface or RoutedInterface resides will be used. + type: string + servers: + description: List of servers to send the DHCP relayed packet to. These can be IP addresses or FQDN. + items: + type: string + minItems: 1 + type: array + subOptions: + description: DHCP Relay sub-options; available options are CircuitID, RemoteID, and ClientLinkLayerAddress. + items: + type: string + type: array + required: + - servers + type: object + status: + description: DHCPRelayStatus defines the observed state of DHCPRelay + type: object + type: object +served: true +storage: false +subresources: + status: {} diff --git a/static/resources/25.8.1/discoveries.components.eda.nokia.com/v1.yaml b/static/resources/25.8.1/discoveries.components.eda.nokia.com/v1.yaml new file mode 100644 index 0000000..fbdeb0b --- /dev/null +++ b/static/resources/25.8.1/discoveries.components.eda.nokia.com/v1.yaml @@ -0,0 +1,53 @@ +name: v1 +schema: + openAPIV3Schema: + description: Discovery is the Schema for the discoveries API + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + description: DiscoverySpec defines the desired state of Discovery + properties: + nodeSelector: + description: Selector to use when selecting TopoNodes to discover components for. + items: + type: string + type: array + nodes: + description: ' TopoNodes to discover components for.' + items: + type: string + type: array + operatingSystem: + description: Operating system to match against when selecting TopoNodes + type: string + type: object + status: + description: DiscoveryStatus defines the observed state of Discovery + properties: + nodes: + description: List of TopoNodes component discovery is running for + items: + type: string + type: array + type: object + type: object +served: true +storage: true +subresources: + status: {} diff --git a/static/resources/25.8.1/discoveries.components.eda.nokia.com/v1alpha1.yaml b/static/resources/25.8.1/discoveries.components.eda.nokia.com/v1alpha1.yaml new file mode 100644 index 0000000..f31a95e --- /dev/null +++ b/static/resources/25.8.1/discoveries.components.eda.nokia.com/v1alpha1.yaml @@ -0,0 +1,53 @@ +name: v1alpha1 +schema: + openAPIV3Schema: + description: Discovery is the Schema for the discoveries API + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + description: DiscoverySpec defines the desired state of Discovery + properties: + nodeSelector: + description: Selector to use when selecting TopoNodes to discover components for. + items: + type: string + type: array + nodes: + description: ' TopoNodes to discover components for.' + items: + type: string + type: array + operatingSystem: + description: Operating system to match against when selecting TopoNodes + type: string + type: object + status: + description: DiscoveryStatus defines the observed state of Discovery + properties: + nodes: + description: List of TopoNodes component discovery is running for + items: + type: string + type: array + type: object + type: object +served: true +storage: false +subresources: + status: {} diff --git a/static/resources/25.8.1/discoveryaggregatestates.components.eda.nokia.com/v1.yaml b/static/resources/25.8.1/discoveryaggregatestates.components.eda.nokia.com/v1.yaml new file mode 100644 index 0000000..96bfc05 --- /dev/null +++ b/static/resources/25.8.1/discoveryaggregatestates.components.eda.nokia.com/v1.yaml @@ -0,0 +1,39 @@ +name: v1 +schema: + openAPIV3Schema: + description: DiscoveryAggregateState is the Schema for the discoveryaggregatestates API + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + description: DiscoveryAggregateStateSpec defines the desired state of DiscoveryAggregateState + properties: + nodes: + description: List of TopoNodes this discovery is for. + items: + type: string + type: array + type: object + status: + description: DiscoveryAggregateStateStatus defines the observed state of DiscoveryAggregateState + type: object + type: object +served: true +storage: true +subresources: + status: {} diff --git a/static/resources/25.8.1/discoveryaggregatestates.components.eda.nokia.com/v1alpha1.yaml b/static/resources/25.8.1/discoveryaggregatestates.components.eda.nokia.com/v1alpha1.yaml new file mode 100644 index 0000000..0bbfbea --- /dev/null +++ b/static/resources/25.8.1/discoveryaggregatestates.components.eda.nokia.com/v1alpha1.yaml @@ -0,0 +1,39 @@ +name: v1alpha1 +schema: + openAPIV3Schema: + description: DiscoveryAggregateState is the Schema for the discoveryaggregatestates API + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + description: DiscoveryAggregateStateSpec defines the desired state of DiscoveryAggregateState + properties: + nodes: + description: List of TopoNodes this discovery is for. + items: + type: string + type: array + type: object + status: + description: DiscoveryAggregateStateStatus defines the observed state of DiscoveryAggregateState + type: object + type: object +served: true +storage: false +subresources: + status: {} diff --git a/static/resources/25.8.1/discoverystates.components.eda.nokia.com/v1.yaml b/static/resources/25.8.1/discoverystates.components.eda.nokia.com/v1.yaml new file mode 100644 index 0000000..6754ccd --- /dev/null +++ b/static/resources/25.8.1/discoverystates.components.eda.nokia.com/v1.yaml @@ -0,0 +1,47 @@ +name: v1 +schema: + openAPIV3Schema: + description: DiscoveryState is the Schema for the discoverystates API + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + description: DiscoveryStateSpec defines the desired state of DiscoveryState + properties: + node: + description: Reference to the TopoNode being discovered + type: string + operatingSystem: + description: The operating system of the TopoNode being discovered + type: string + version: + description: The version of the TopoNode being discovered + type: string + required: + - node + - operatingSystem + - version + type: object + status: + description: DiscoveryStateStatus defines the observed state of DiscoveryState + type: object + type: object +served: true +storage: true +subresources: + status: {} diff --git a/static/resources/25.8.1/discoverystates.components.eda.nokia.com/v1alpha1.yaml b/static/resources/25.8.1/discoverystates.components.eda.nokia.com/v1alpha1.yaml new file mode 100644 index 0000000..c43e4d3 --- /dev/null +++ b/static/resources/25.8.1/discoverystates.components.eda.nokia.com/v1alpha1.yaml @@ -0,0 +1,47 @@ +name: v1alpha1 +schema: + openAPIV3Schema: + description: DiscoveryState is the Schema for the discoverystates API + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + description: DiscoveryStateSpec defines the desired state of DiscoveryState + properties: + node: + description: Reference to the TopoNode being discovered + type: string + operatingSystem: + description: The operating system of the TopoNode being discovered + type: string + version: + description: The version of the TopoNode being discovered + type: string + required: + - node + - operatingSystem + - version + type: object + status: + description: DiscoveryStateStatus defines the observed state of DiscoveryState + type: object + type: object +served: true +storage: false +subresources: + status: {} diff --git a/static/resources/25.8.1/drains.routing.eda.nokia.com/v1alpha1.yaml b/static/resources/25.8.1/drains.routing.eda.nokia.com/v1alpha1.yaml new file mode 100644 index 0000000..f670dfd --- /dev/null +++ b/static/resources/25.8.1/drains.routing.eda.nokia.com/v1alpha1.yaml @@ -0,0 +1,58 @@ +additionalPrinterColumns: + - jsonPath: .spec.enabled + name: Enabled + type: string +name: v1alpha1 +schema: + openAPIV3Schema: + description: Drain is the Schema for the drains API + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + description: Drain allows for the controlled disabling or draining of specific DefaultRouters, either by selecting them through labels or directly referencing them, ensuring traffic is safely rerouted or dropped before the routers are decommissioned. + properties: + defaultRouterSelector: + description: Selector to use when selecting DefaultRouters to drain. + items: + type: string + type: array + defaultRouters: + description: Reference to DefaultRouters to drain. + items: + type: string + type: array + enabled: + default: true + description: Enable this Drain. + type: boolean + type: object + status: + description: DrainStatus defines the observed state of Drain. + properties: + defaultRouters: + description: List of DefaultRouters this Drain has been applied to + items: + type: string + type: array + type: object + type: object +served: true +storage: true +subresources: + status: {} diff --git a/static/resources/25.8.1/drainstates.routing.eda.nokia.com/v1alpha1.yaml b/static/resources/25.8.1/drainstates.routing.eda.nokia.com/v1alpha1.yaml new file mode 100644 index 0000000..d2746fd --- /dev/null +++ b/static/resources/25.8.1/drainstates.routing.eda.nokia.com/v1alpha1.yaml @@ -0,0 +1,39 @@ +name: v1alpha1 +schema: + openAPIV3Schema: + description: DrainState is the Schema for the drainstates API + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + description: DrainStateSpec defines the desired state of DrainState + properties: + defaultRouters: + description: List of DefaultRouters this drain has been applied to + items: + type: string + type: array + type: object + status: + description: DrainStateStatus defines the observed state of DrainState + type: object + type: object +served: true +storage: true +subresources: + status: {} diff --git a/static/resources/25.8.1/edgeinterfaces.core.eda.nokia.com/v1.yaml b/static/resources/25.8.1/edgeinterfaces.core.eda.nokia.com/v1.yaml new file mode 100644 index 0000000..0d467a5 --- /dev/null +++ b/static/resources/25.8.1/edgeinterfaces.core.eda.nokia.com/v1.yaml @@ -0,0 +1,86 @@ +name: v1 +schema: + openAPIV3Schema: + description: EdgeInterface is the Schema for the edgeinterfaces API + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + description: EdgeInterfaceSpec defines the desired state of EdgeInterface + properties: + bridgeDomain: + description: Reference to a Bridge Domain + type: string + encapType: + default: "null" + description: Indicates if the EdgeInterface uses VLAN tagging + enum: + - "null" + - dot1q + type: string + gatewayIPV4Addresses: + description: List of gateway IPv4 addresses in ip/mask form - e.g. 192.168.0.1/24 + items: + properties: + ipPrefix: + description: Address and mask to use + type: string + primary: + description: Indicates which address to use as primary for broadcast + type: boolean + required: + - ipPrefix + type: object + type: array + gatewayIPV6Addresses: + description: List of gateway IPv6 addresses in ip/mask form - e.g. fc00::1/120 + items: + properties: + ipPrefix: + description: Address and mask to use + type: string + primary: + description: Indicates which address to use as primary for broadcast + type: boolean + required: + - ipPrefix + type: object + type: array + interfaceResource: + description: Reference to an interface + type: string + router: + description: Reference to a Router + type: string + vlanID: + description: Single value between 0-4094 supported + maximum: 4094 + minimum: 0 + type: integer + required: + - encapType + - interfaceResource + type: object + status: + description: EdgeInterfaceStatus defines the observed state of EdgeInterface + type: object + type: object +served: true +storage: true +subresources: + status: {} diff --git a/static/resources/edgepings.services.eda.nokia.com/v1.yaml b/static/resources/25.8.1/edgepings.services.eda.nokia.com/v1.yaml similarity index 100% rename from static/resources/edgepings.services.eda.nokia.com/v1.yaml rename to static/resources/25.8.1/edgepings.services.eda.nokia.com/v1.yaml diff --git a/static/resources/25.8.1/edgepings.services.eda.nokia.com/v1alpha1.yaml b/static/resources/25.8.1/edgepings.services.eda.nokia.com/v1alpha1.yaml new file mode 100644 index 0000000..d3afcbb --- /dev/null +++ b/static/resources/25.8.1/edgepings.services.eda.nokia.com/v1alpha1.yaml @@ -0,0 +1,69 @@ +additionalPrinterColumns: + - jsonPath: .status.id + name: ID + type: integer + - jsonPath: .status.result + name: Result + type: string + - jsonPath: .metadata.creationTimestamp + name: Age + type: date +deprecated: true +deprecationWarning: This version is deprecated and will no longer be supported in the next version. +name: v1alpha1 +schema: + openAPIV3Schema: + description: EdgePing is the Schema for the edgepings API + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + description: EdgePingSpec defines the desired state of EdgePing + properties: + destination: + type: string + interfaceResource: + type: string + pingType: + enum: + - gateway + - edgemesh + - edge + type: string + virtualNetwork: + type: string + vlanID: + type: integer + required: + - pingType + type: object + status: + description: EdgePingStatus defines the observed state of EdgePing + properties: + id: + description: Id + type: integer + result: + description: Aggregate result of the Flow + type: string + type: object + type: object +served: true +storage: false +subresources: + status: {} diff --git a/static/resources/egresspolicys.qos.eda.nokia.com/v1.yaml b/static/resources/25.8.1/egresspolicys.qos.eda.nokia.com/v1.yaml similarity index 100% rename from static/resources/egresspolicys.qos.eda.nokia.com/v1.yaml rename to static/resources/25.8.1/egresspolicys.qos.eda.nokia.com/v1.yaml diff --git a/static/resources/egresspolicys.qos.eda.nokia.com/v1alpha1.yaml b/static/resources/25.8.1/egresspolicys.qos.eda.nokia.com/v1alpha1.yaml similarity index 100% rename from static/resources/egresspolicys.qos.eda.nokia.com/v1alpha1.yaml rename to static/resources/25.8.1/egresspolicys.qos.eda.nokia.com/v1alpha1.yaml diff --git a/static/resources/engineconfigs.core.eda.nokia.com/v1.yaml b/static/resources/25.8.1/engineconfigs.core.eda.nokia.com/v1.yaml similarity index 100% rename from static/resources/engineconfigs.core.eda.nokia.com/v1.yaml rename to static/resources/25.8.1/engineconfigs.core.eda.nokia.com/v1.yaml diff --git a/static/resources/25.8.1/fabricmodules.components.eda.nokia.com/v1.yaml b/static/resources/25.8.1/fabricmodules.components.eda.nokia.com/v1.yaml new file mode 100644 index 0000000..0a2460d --- /dev/null +++ b/static/resources/25.8.1/fabricmodules.components.eda.nokia.com/v1.yaml @@ -0,0 +1,116 @@ +name: v1 +schema: + openAPIV3Schema: + description: FabricModule is the Schema for the fabricmodules API + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + description: FabricModuleSpec defines the desired state of FabricModule + type: object + status: + description: FabricModuleStatus defines the observed state of FabricModule + properties: + commonLanguageEquipmentIdentifier: + description: The CLEI code of this component + type: string + lastBooted: + description: The date and time this component last booted + type: string + lastChange: + description: The date and time this component last changed operational state + type: string + locatorEnabled: + description: Indicates if the locator LED for the component is active + type: boolean + manufacturedDate: + description: The date this component was manufactured + type: string + operationalState: + description: Indicates the current operational state of this component. + enum: + - Up + - Down + - Rebooting + - Unknown + - Starting + - Empty + type: string + parent: + description: Reference to a parent component + type: string + parentType: + description: Type of the parent component + enum: + - Fan + - FanTray + - PowerSupply + - PowerModule + - PowerShelf + - InterfaceModule + - ControlModule + - FabricModule + - Chassis + - Transceiver + type: string + partNumber: + description: The discovered part number of this component + type: string + removable: + description: Indicates if this component is removable + type: boolean + serialNumber: + description: The discovered serial number of this component + type: string + slot: + description: Slot this component resides in, unset for components that do not have a slot or ID + type: string + softwareVersion: + description: Version string of the software running on this component + type: string + target: + description: Target this component resides on. + type: string + temperature: + description: Temperature information for this component + properties: + alarmState: + description: The temperature alarm state, as reported by the component + type: boolean + instant: + description: The current temperature of this component + type: integer + margin: + description: The margin temperature of this component + type: integer + maximum: + description: The maximum temperature of this component + type: integer + threshold: + description: The threshold temperature of this component + type: integer + type: object + type: + description: Component type, as provided by the target + type: string + type: object + type: object +served: true +storage: true +subresources: + status: {} diff --git a/static/resources/fabrics.fabrics.eda.nokia.com/v1alpha1.yaml b/static/resources/25.8.1/fabrics.fabrics.eda.nokia.com/v1alpha1.yaml similarity index 100% rename from static/resources/fabrics.fabrics.eda.nokia.com/v1alpha1.yaml rename to static/resources/25.8.1/fabrics.fabrics.eda.nokia.com/v1alpha1.yaml diff --git a/static/resources/25.8.1/fabricstates.fabrics.eda.nokia.com/v1alpha1.yaml b/static/resources/25.8.1/fabricstates.fabrics.eda.nokia.com/v1alpha1.yaml new file mode 100644 index 0000000..18933d6 --- /dev/null +++ b/static/resources/25.8.1/fabricstates.fabrics.eda.nokia.com/v1alpha1.yaml @@ -0,0 +1,120 @@ +name: v1alpha1 +schema: + openAPIV3Schema: + description: FabricState is the Schema for the fabricstates API + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + description: FabricStateSpec defines the desired state of FabricState + properties: + borderLeafNodes: + description: List of borderleaf nodes in the fabric + items: + properties: + node: + description: Name of the TopoNode. + type: string + operatingSystem: + description: Operating system running on the node. + type: string + operatingSystemVersion: + description: Operating system version running on the node. + type: string + underlayAutonomousSystem: + description: Underlay Autonomous System used for eBGP peering session, when protocol is set to eBGP this is required. + format: int32 + type: integer + type: object + type: array + defaultRouters: + description: List of DefaultRouters used within the fabric + items: + type: string + type: array + isls: + description: List of ISL used in the Fabric + items: + type: string + type: array + leafNodes: + description: List of leaf nodes in the fabric + items: + properties: + node: + description: Name of the TopoNode. + type: string + operatingSystem: + description: Operating system running on the node. + type: string + operatingSystemVersion: + description: Operating system version running on the node. + type: string + underlayAutonomousSystem: + description: Underlay Autonomous System used for eBGP peering session, when protocol is set to eBGP this is required. + format: int32 + type: integer + type: object + type: array + spineNodes: + description: List of spine nodes in the fabric + items: + properties: + node: + description: Name of the TopoNode. + type: string + operatingSystem: + description: Operating system running on the node. + type: string + operatingSystemVersion: + description: Operating system version running on the node. + type: string + underlayAutonomousSystem: + description: Underlay Autonomous System used for eBGP peering session, when protocol is set to eBGP this is required. + format: int32 + type: integer + type: object + type: array + superSpineNodes: + description: List of super spine nodes in the fabric + items: + properties: + node: + description: Name of the TopoNode. + type: string + operatingSystem: + description: Operating system running on the node. + type: string + operatingSystemVersion: + description: Operating system version running on the node. + type: string + underlayAutonomousSystem: + description: Underlay Autonomous System used for eBGP peering session, when protocol is set to eBGP this is required. + format: int32 + type: integer + type: object + type: array + type: object + status: + description: FabricStateStatus defines the observed state of FabricState + type: object + type: object +served: true +storage: true +subresources: + status: {} diff --git a/static/resources/25.8.1/fans.components.eda.nokia.com/v1.yaml b/static/resources/25.8.1/fans.components.eda.nokia.com/v1.yaml new file mode 100644 index 0000000..e925057 --- /dev/null +++ b/static/resources/25.8.1/fans.components.eda.nokia.com/v1.yaml @@ -0,0 +1,94 @@ +name: v1 +schema: + openAPIV3Schema: + description: Fan is the Schema for the fans API + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + description: FanSpec defines the desired state of Fan + type: object + status: + description: FanStatus defines the observed state of Fan + properties: + commonLanguageEquipmentIdentifier: + description: The CLEI code of this component + type: string + lastBooted: + description: The date and time this component last booted + type: string + lastChange: + description: The date and time this component last changed operational state + type: string + locatorEnabled: + description: Indicates if the locator LED for the component is active + type: boolean + manufacturedDate: + description: The date this component was manufactured + type: string + operationalState: + description: Indicates the current operational state of this component. + enum: + - Up + - Down + - Rebooting + - Unknown + - Starting + - Empty + type: string + parent: + description: Reference to a parent component + type: string + parentType: + description: Type of the parent component + enum: + - Fan + - FanTray + - PowerSupply + - PowerModule + - PowerShelf + - InterfaceModule + - ControlModule + - FabricModule + - Chassis + - Transceiver + type: string + partNumber: + description: The discovered part number of this component + type: string + removable: + description: Indicates if this component is removable + type: boolean + serialNumber: + description: The discovered serial number of this component + type: string + slot: + description: Slot this component resides in, unset for components that do not have a slot or ID + type: string + target: + description: Target this component resides on. + type: string + type: + description: Component type, as provided by the target + type: string + type: object + type: object +served: true +storage: true +subresources: + status: {} diff --git a/static/resources/25.8.1/filterdeployments.filters.eda.nokia.com/v1alpha1.yaml b/static/resources/25.8.1/filterdeployments.filters.eda.nokia.com/v1alpha1.yaml new file mode 100644 index 0000000..9931ed9 --- /dev/null +++ b/static/resources/25.8.1/filterdeployments.filters.eda.nokia.com/v1alpha1.yaml @@ -0,0 +1,50 @@ +name: v1alpha1 +schema: + openAPIV3Schema: + description: FilterDeployment is the Schema for the filterdeployments API + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + description: FilterDeploymentSpec defines the desired state of FilterDeployment + properties: + filter: + description: Specifies a filter to deploy on the specified Node + type: string + node: + description: Specifies a Node to deploy this filter on + type: string + type: + description: Specifies a filter type of the filter + enum: + - CPMFilter + - Filter + type: string + required: + - filter + - node + - type + type: object + status: + description: FilterDeploymentStatus defines the observed state of a FilterDeployment + type: object + type: object +served: true +storage: true +subresources: + status: {} diff --git a/static/resources/filters.filters.eda.nokia.com/v1alpha1.yaml b/static/resources/25.8.1/filters.filters.eda.nokia.com/v1alpha1.yaml similarity index 100% rename from static/resources/filters.filters.eda.nokia.com/v1alpha1.yaml rename to static/resources/25.8.1/filters.filters.eda.nokia.com/v1alpha1.yaml diff --git a/static/resources/25.8.1/forwardingclasss.qos.eda.nokia.com/v1.yaml b/static/resources/25.8.1/forwardingclasss.qos.eda.nokia.com/v1.yaml new file mode 100644 index 0000000..98fc481 --- /dev/null +++ b/static/resources/25.8.1/forwardingclasss.qos.eda.nokia.com/v1.yaml @@ -0,0 +1,33 @@ +name: v1 +schema: + openAPIV3Schema: + description: ForwardingClass is the Schema for the forwardingclasss API + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + description: The ForwaringClass is used as a placeholder for to allow multiple other resources to reference the same forwarding class. + type: object + status: + description: ForwardingClassStatus defines the observed state of ForwardingClass + type: object + type: object +served: true +storage: true +subresources: + status: {} diff --git a/static/resources/25.8.1/forwardingclasss.qos.eda.nokia.com/v1alpha1.yaml b/static/resources/25.8.1/forwardingclasss.qos.eda.nokia.com/v1alpha1.yaml new file mode 100644 index 0000000..6a94bfe --- /dev/null +++ b/static/resources/25.8.1/forwardingclasss.qos.eda.nokia.com/v1alpha1.yaml @@ -0,0 +1,35 @@ +deprecated: true +deprecationWarning: This version is deprecated and will no longer be supported in the next version. +name: v1alpha1 +schema: + openAPIV3Schema: + description: ForwardingClass is the Schema for the forwardingclasss API + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + description: The ForwaringClass is used as a placeholder for to allow multiple other resources to reference the same forwarding class. + type: object + status: + description: ForwardingClassStatus defines the observed state of ForwardingClass + type: object + type: object +served: true +storage: false +subresources: + status: {} diff --git a/static/resources/25.8.1/globalconfigs.core.eda.nokia.com/v1.yaml b/static/resources/25.8.1/globalconfigs.core.eda.nokia.com/v1.yaml new file mode 100644 index 0000000..d2aa468 --- /dev/null +++ b/static/resources/25.8.1/globalconfigs.core.eda.nokia.com/v1.yaml @@ -0,0 +1,59 @@ +name: v1 +schema: + openAPIV3Schema: + description: GlobalConfig is the Schema for the GlobalConfigs API + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + properties: + dhcp: + description: External reachability configuration for this cluster + properties: + domainName: + description: The external domain name of the cluster + type: string + httpPort: + description: HTTP port used to reach this cluster externally + format: int32 + type: integer + httpsPort: + description: HTTPS port used to reach this cluster externally + format: int32 + type: integer + ipv4Address: + description: The external IPv4 address of the cluster + type: string + ipv6Address: + description: The external IPv6 address of the cluster + type: string + relaxDomainNameEnforcement: + default: false + description: Relax enforcement of client origins from configured cluster.external.domainName + type: boolean + type: object + required: + - dhcp + type: object + required: + - spec + type: object +served: true +storage: true +subresources: + status: {} diff --git a/static/resources/25.8.1/httpproxies.core.eda.nokia.com/v1.yaml b/static/resources/25.8.1/httpproxies.core.eda.nokia.com/v1.yaml new file mode 100644 index 0000000..117df24 --- /dev/null +++ b/static/resources/25.8.1/httpproxies.core.eda.nokia.com/v1.yaml @@ -0,0 +1,53 @@ +additionalPrinterColumns: + - jsonPath: .spec.rootUrl + name: Root URL + type: string +name: v1 +schema: + openAPIV3Schema: + description: HttpProxy is the Schema for the proxy API + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + description: HttpProxySpec defines the desired state of HttpProxy + properties: + authType: + description: |- + Determines where authentication happens. + If "atDestination", then no authentication happens in API server and any auth tokens are forwarded as is. + If "inApiServer", then authentication happens within the API server and auth tokens are stripped prior to forwarding. + enum: + - atDestination + - inApiServer + type: string + rootUrl: + description: The proxy destination, including the protocol. + type: string + required: + - authType + - rootUrl + type: object + status: + description: HttpProxyStatus defines the observed state of HttpProxy + type: object + type: object +served: true +storage: true +subresources: + status: {} diff --git a/static/resources/25.8.1/indexallocationpools.core.eda.nokia.com/v1.yaml b/static/resources/25.8.1/indexallocationpools.core.eda.nokia.com/v1.yaml new file mode 100644 index 0000000..bc17995 --- /dev/null +++ b/static/resources/25.8.1/indexallocationpools.core.eda.nokia.com/v1.yaml @@ -0,0 +1,92 @@ +name: v1 +schema: + openAPIV3Schema: + description: IndexAllocationPool is the Schema for the indexallocationpools API + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + description: |- + IndexAllocationPool is a generic allocation pool supporting allocation of indexes from a set of segments. + It supports allocating things like VLANs, subinterface indexes, autonomous system numbers, or any other integer-based index. + properties: + publishAllocations: + description: If true, allocations in segments will be published to EDB, available to query via EQL and trigger state applications off of. + type: boolean + segments: + description: List of segments containing indexes to allocate. + items: + properties: + allocations: + description: List of reservations to exclude from allocations from this segment. + items: + properties: + name: + description: Name of this allocation. + type: string + value: + description: Index to reserve. + format: int32 + type: integer + required: + - name + - value + type: object + type: array + reservations: + description: Range of reservations to exclude from allocations from this segment. + items: + properties: + end: + description: Value to reserve to. + format: int32 + type: integer + start: + description: Value to start reserving. + format: int32 + type: integer + required: + - end + - start + type: object + type: array + size: + description: Number of elements in the segment. + format: int32 + type: integer + start: + description: Starting value of the segment. + format: int32 + type: integer + required: + - size + - start + type: object + minItems: 1 + type: array + required: + - segments + type: object + status: + description: IndexAllocationPoolStatus defines the observed state of IndexAllocationPool + type: object + type: object +served: true +storage: true +subresources: + status: {} diff --git a/static/resources/ingresspolicys.qos.eda.nokia.com/v1.yaml b/static/resources/25.8.1/ingresspolicys.qos.eda.nokia.com/v1.yaml similarity index 100% rename from static/resources/ingresspolicys.qos.eda.nokia.com/v1.yaml rename to static/resources/25.8.1/ingresspolicys.qos.eda.nokia.com/v1.yaml diff --git a/static/resources/25.8.1/ingresspolicys.qos.eda.nokia.com/v1alpha1.yaml b/static/resources/25.8.1/ingresspolicys.qos.eda.nokia.com/v1alpha1.yaml new file mode 100644 index 0000000..a95159c --- /dev/null +++ b/static/resources/25.8.1/ingresspolicys.qos.eda.nokia.com/v1alpha1.yaml @@ -0,0 +1,787 @@ +deprecated: true +deprecationWarning: This version is deprecated and will no longer be supported in the next version. +name: v1alpha1 +schema: + openAPIV3Schema: + description: IngressPolicy is the Schema for the ingresspolicys API + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + description: IngressPolicySpec defines the desired state of IngressPolicy + properties: + classifier: + description: Classifier manages the configuration of traffic classification policies in a network. It includes various entry types like IPv4, IPv6, Dot1p, and DSCP policies. Each entry specifies how traffic should be classified and what actions should be taken on the matched packets. + properties: + entries: + description: |- + Specifies the list of filter entries, in order. + A classifier containing multiple entry types may result in multiple classifiers being created on the target node. + IPV4 and IPV6 entries will create multifield classifier policies. + items: + properties: + dot1pPolicyEntry: + description: A Dot1p policy entry - only a single Dot1p entry is allowed per classifier resource. + properties: + directToPFCQueue: + description: In addition to creating a Dot1p PCP value to Forwarding Class mapping, this will map the PCP values directly to the PFC queue specified in the Forwarding Class to Queue mapping. + type: boolean + dropProbabilityLevel: + default: Low + description: Assign matching packets to the specified drop probability level. + enum: + - High + - Medium + - Low + type: string + forwardingClass: + description: Reference to a ForwardingClass resource to which the value is mapped. + type: string + pcpValues: + description: List of PCP values or ranges used to match packets to classify into Forwarding Classes. + items: + properties: + rangeEnd: + description: Optional end of PCP range (inclusive) which would start from the Value to the RangeEnd. + maximum: 7 + minimum: 0 + type: integer + value: + description: Single PCP value or start of range. + maximum: 7 + minimum: 0 + type: integer + required: + - value + type: object + minItems: 1 + type: array + required: + - pcpValues + type: object + dscpPolicyEntry: + description: A DSCP policy entry - only a single DSCP entry is allowed per classifier resource. + properties: + dropProbabilityLevel: + default: Low + description: Assign matching packets to the specified drop probability level. + enum: + - High + - Medium + - Low + type: string + dscpValues: + description: List of DSCP values or ranges used to match packets to classify into Forwarding Classes. + items: + properties: + rangeEnd: + description: Optional end of DSCP range (inclusive) which would start from the Value to the RangeEnd. + maximum: 63 + minimum: 0 + type: integer + value: + description: Single DSCP value or start of range. + maximum: 63 + minimum: 0 + type: integer + required: + - value + type: object + minItems: 1 + type: array + forwardingClass: + description: Reference to a ForwardingClass resource to which the value is mapped. + type: string + required: + - dscpValues + type: object + ipEntry: + description: An IPv4 or IPv6 multifield classifier entry. + properties: + action: + description: An action to take on the matched packets. + properties: + dropProbabilityLevel: + default: Low + description: Assign matching packets to the specified drop probability level. + enum: + - High + - Medium + - Low + type: string + dscpRewriteValue: + description: Rewrite actions associated with packets that match the classifier entry. + maximum: 63 + minimum: 0 + type: integer + forwardingClass: + description: Reference to a ForwardingClass resource to which the value is mapped. + type: string + type: object + destinationPortName: + description: Destination port to match by name. + enum: + - ACAP + - AFP-TCP + - ARNS + - ASF-RMCP + - ASHARE + - ATALK-RM + - AURP + - AUTH + - BFD + - BFD-ECHO + - BFTP + - BGMP + - BGP + - BOOTPC + - BOOTPS + - CCSO-NS + - CHARGEN + - CISCO-TDP + - CITADEL + - CLEARCASE + - COMMERCE + - COURIER + - DAYTIME + - DHCP-FAILOVER + - DHCPV6-CLIENT + - DHCPV6-SERVER + - DICOM + - DISCARD + - DNSIX + - DOMAIN + - DSP + - ECHO + - EPP + - ESRO + - EXEC + - FINGER + - FTP + - FTP-DATA + - FTPS + - FTPS-DATA + - GODI + - GOPHER + - GTP-C + - GTP-PRIME + - GTP-U + - HA-CLUSTER + - HOSTNAME + - HP-ALARM-MGR + - HTTP + - HTTP-ALT + - HTTP-MGMT + - HTTP-RPC + - HTTPS + - IEEE-MMS-SSL + - IMAP + - IMAP3 + - IMAPS + - IPP + - IPSEC + - IPX + - IRC + - IRIS-BEEP + - ISAKMP + - ISAKMP-NAT + - ISCSI + - ISO-TSAP + - KERBEROS + - KERBEROS-ADM + - KLOGIN + - KPASSWD + - KSHELL + - L2TP + - LDAP + - LDAPS + - LDP + - LMP + - LOGIN + - LPD + - LSP-PING + - MAC-SERVER-ADM + - MATIP-A + - MATIP-B + - MICRO-BFD + - MICROSOFT-DS + - MOBILE-IP + - MONITOR + - MPP + - MS-EXCHANGE + - MSDP + - MSP + - MSSQL-M + - MSSQL-S + - MULTIHOP-BFD + - NAS + - NCP + - NETBIOS-DATA + - NETBIOS-NS + - NETBIOS-SS + - NETNEWS + - NETRJS-1 + - NETRJS-2 + - NETRJS-3 + - NETRJS-4 + - NETWALL + - NEW-RWHO + - NFS + - NNTP + - NNTPS + - NTP + - ODMR + - OLSR + - OPENVPN + - PIM-AUTO-RP + - PKIX-TIMESTAMP + - POP2 + - POP3 + - POP3S + - PPTP + - PRINT-SRV + - PTP-EVENT + - PTP-GENERAL + - QMTP + - QOTD + - RADIUS + - RADIUS-ACCT + - REMOTE-MAIL + - REMOTEFS + - REMOTECMD + - RIP + - RJE + - RLP + - RLZDB + - RMC + - RMONITOR + - RPC2PORTMAP + - RSYNC + - RTELNET + - RTSP + - SGMP + - SILC + - SMUX + - SNA-GW + - SNMP + - SNMP-TRAP + - SNPP + - SMTP + - SQL-SVCS + - SQL + - SSH + - SUBMISSION + - SUNRPC + - SVCLOC + - SYSLOG + - SYSTAT + - TACACS + - TALK + - TCPMUX + - TCPNETHASPSRV + - TFTP + - TIME + - TIMED + - UPS + - XDMCP + - XNS-CH + - XNS-MAIL + - XNS-TIME + - Z3950 + type: string + destinationPortNumber: + description: Destination port to match by numerical value. + maximum: 65535 + minimum: 0 + type: integer + destinationPortOperator: + description: Operator to use when matching destinationPort, either Equals, GreaterOrEquals, or LessOrEquals. + enum: + - Equals + - GreaterOrEquals + - LessOrEquals + type: string + destinationPortRange: + description: Range of destination ports to match, in the format n-m, e.g. 100-200, The start and end of the range must be port numbers. + type: string + destinationPrefix: + description: Destination prefix to match. + type: string + firstFragment: + description: Match the first fragment only. + type: boolean + fragment: + description: Match any fragment. + type: boolean + icmpCode: + description: Match a specific ICMP code, as a number between 0-255, e.g. 0. + items: + type: integer + maxItems: 255 + minItems: 0 + type: array + icmpTypeName: + description: Match a specific ICMP type by name, e.g. dest-unreachable. + enum: + - DestUnreachable + - Echo + - EchoReply + - EchoRequest + - McastRtrAdv + - McastRtrSolicit + - McastRtrTerm + - MldDone + - MldQuery + - MldReport + - MldV2 + - NeighborAdvertise + - NeighborSolicit + - NodeInfoQuery + - NodeInfoResponse + - PacketTooBig + - ParamProblem + - Redirect + - RouterAdvertise + - RouterRenumber + - RouterSolicit + - SourceQuench + - TimeExceeded + - Timestamp + - TimestampReply + type: string + icmpTypeNumber: + description: Match a specific ICMP type by number. + maximum: 255 + minimum: 0 + type: integer + protocolName: + description: Match a specific IP protocol name (specified in the type field of the IP header). + enum: + - AH + - EGP + - EIGRP + - ESP + - GGP + - GRE + - ICMP + - ICMP6 + - IDRP + - IGMP + - IGP + - IPV4 + - IPV6 + - IPV6-DEST-OPTS + - IPV6-HOP + - L2TP + - MPLS-IN-IP + - NO-NEXT-HDR + - OSPF + - PIM + - ROHC + - RSVP + - SCTP + - ST + - TCP + - UDP + - VRRP + type: string + protocolNumber: + description: Match a specific IP protocol number (specified in the type field of the IP header). + maximum: 255 + minimum: 0 + type: integer + sourcePortName: + description: Source port to match by name. + enum: + - ACAP + - AFP-TCP + - ARNS + - ASF-RMCP + - ASHARE + - ATALK-RM + - AURP + - AUTH + - BFD + - BFD-ECHO + - BFTP + - BGMP + - BGP + - BOOTPC + - BOOTPS + - CCSO-NS + - CHARGEN + - CISCO-TDP + - CITADEL + - CLEARCASE + - COMMERCE + - COURIER + - DAYTIME + - DHCP-FAILOVER + - DHCPV6-CLIENT + - DHCPV6-SERVER + - DICOM + - DISCARD + - DNSIX + - DOMAIN + - DSP + - ECHO + - EPP + - ESRO + - EXEC + - FINGER + - FTP + - FTP-DATA + - FTPS + - FTPS-DATA + - GODI + - GOPHER + - GTP-C + - GTP-PRIME + - GTP-U + - HA-CLUSTER + - HOSTNAME + - HP-ALARM-MGR + - HTTP + - HTTP-ALT + - HTTP-MGMT + - HTTP-RPC + - HTTPS + - IEEE-MMS-SSL + - IMAP + - IMAP3 + - IMAPS + - IPP + - IPSEC + - IPX + - IRC + - IRIS-BEEP + - ISAKMP + - ISAKMP-NAT + - ISCSI + - ISO-TSAP + - KERBEROS + - KERBEROS-ADM + - KLOGIN + - KPASSWD + - KSHELL + - L2TP + - LDAP + - LDAPS + - LDP + - LMP + - LOGIN + - LPD + - LSP-PING + - MAC-SERVER-ADM + - MATIP-A + - MATIP-B + - MICRO-BFD + - MICROSOFT-DS + - MOBILE-IP + - MONITOR + - MPP + - MS-EXCHANGE + - MSDP + - MSP + - MSSQL-M + - MSSQL-S + - MULTIHOP-BFD + - NAS + - NCP + - NETBIOS-DATA + - NETBIOS-NS + - NETBIOS-SS + - NETNEWS + - NETRJS-1 + - NETRJS-2 + - NETRJS-3 + - NETRJS-4 + - NETWALL + - NEW-RWHO + - NFS + - NNTP + - NNTPS + - NTP + - ODMR + - OLSR + - OPENVPN + - PIM-AUTO-RP + - PKIX-TIMESTAMP + - POP2 + - POP3 + - POP3S + - PPTP + - PRINT-SRV + - PTP-EVENT + - PTP-GENERAL + - QMTP + - QOTD + - RADIUS + - RADIUS-ACCT + - REMOTE-MAIL + - REMOTEFS + - REMOTECMD + - RIP + - RJE + - RLP + - RLZDB + - RMC + - RMONITOR + - RPC2PORTMAP + - RSYNC + - RTELNET + - RTSP + - SGMP + - SILC + - SMUX + - SNA-GW + - SNMP + - SNMP-TRAP + - SNPP + - SMTP + - SQL-SVCS + - SQL + - SSH + - SUBMISSION + - SUNRPC + - SVCLOC + - SYSLOG + - SYSTAT + - TACACS + - TALK + - TCPMUX + - TCPNETHASPSRV + - TFTP + - TIME + - TIMED + - UPS + - XDMCP + - XNS-CH + - XNS-MAIL + - XNS-TIME + - Z3950 + type: string + sourcePortNumber: + description: Source port to match by numerical value. + maximum: 65535 + minimum: 0 + type: integer + sourcePortOperator: + description: Operator to use when matching sourcePort, either Equals, GreaterOrEquals, or LessOrEquals. + enum: + - Equals + - GreaterOrEquals + - LessOrEquals + type: string + sourcePortRange: + description: Range of source ports to match, in the format n-m, e.g. 100-200. The start and end of the range must be port numbers. + type: string + sourcePrefix: + description: Source prefix to match. + type: string + tcpFlags: + description: Match TCP flags, usable with !, &, | and the flags RST, SYN, and ACK. + type: string + required: + - action + type: object + type: + default: AUTO + description: Type of the entry which can be IPV4, IPV6, Dot1pPolicy, DSCPPolicy, or Auto. + enum: + - IPV4 + - IPV6 + - DOT1P + - DSCP + - AUTO + type: string + required: + - type + type: object + type: array + required: + - entries + type: object + forwardingClassToQueueMapping: + description: Forwarding class to queue mapping policy. + items: + properties: + forwardingClasses: + description: The forwarding classes to which the mapping applies, these are references to ForwardingClass resources. + items: + type: string + minItems: 1 + type: array + queue: + description: The queue to which the forwarding classes are mapped, this is a reference to a Queue resource. + type: string + required: + - forwardingClasses + - queue + type: object + type: array + policers: + description: Ordered list of policers where the first policer is evaluated first before proceeding to the next. + items: + properties: + committedBurstSize: + description: Maximum CIR bucket depth in bytes. + format: int32 + maximum: 4294967295 + minimum: 0 + type: integer + committedRate: + description: The committed information rate (CIR) of the policer, defined in kilobits (1024 bits) per second. + format: int32 + type: integer + committedRatePercent: + description: The committed information rate (CIR) of the policer, defined as a percentage of the Interface speed on which it is applied. + maximum: 100 + minimum: 0 + type: integer + exceedAction: + description: Applies a drop-probability to packets that the policer has determined are exceeding (yellow). + properties: + dropProbabilityLevel: + default: Medium + enum: + - High + - Medium + - Low + type: string + type: object + forwardingClasses: + description: The list of forwarding classes with traffic to be sent to the policer. Unless specified all traffic is matched for this policer. + items: + properties: + forwardingClasses: + description: The forwarding class of the packets on which to apply the Policer. To match all traffic set this to 'ALL'. + items: + type: string + type: array + forwardingTypes: + default: + - All + items: + enum: + - Broadcast + - Unicast + - Multicast + - UnknownMulticast + - UnknownUnicast + - All + type: string + type: array + required: + - forwardingTypes + type: object + type: array + maximumBurstSize: + description: Maximum PIR bucket depth in bytes. + format: int32 + maximum: 4294967295 + minimum: 0 + type: integer + minInterfaceSpeed: + description: Minimum interface speed (kbps) to calculate PeakRate and CommittedRate for devices where configuration is not supported in percentage. + format: int32 + type: integer + peakRate: + description: The peak information rate (PIR) of the policer, defined in kilobits (1024 bits) per second. + format: int32 + type: integer + peakRatePercent: + description: The peak information rate (PIR) of the policer, defined as a percentage of the Interface speed on which it is applied. + maximum: 100 + minimum: 0 + type: integer + violateAction: + description: Applies a drop-probability to packets that the policer has determined are exceeding (red). + properties: + dropProbabilityLevel: + default: High + enum: + - High + - Medium + - Low + - All + type: string + type: object + type: object + type: array + queueManagement: + description: Queue management policy for egress queues. + items: + properties: + pfcReservedBufferPercent: + description: 'Percentage of the linecard buffer reserved for accomodating incoming traffic while upstream node reacts to generated PFC-pause frames. Note: this percentage must be common across all EgressPolicies and QueuesSets used on the same linecard.' + maximum: 100 + minimum: 0 + type: integer + queues: + description: List of queues. + items: + properties: + committedBurstSize: + description: Committed Burst Size. + format: int32 + type: integer + maximumBurstSize: + description: Maximum amount of shared buffer memory available to the queue in bytes. + format: int32 + maximum: 4294967295 + minimum: 0 + type: integer + pfcOffThreshold: + description: PFC off threshold. + maximum: 100 + minimum: 0 + type: integer + pfcOnThreshold: + description: PFC on threshold. + maximum: 100 + minimum: 0 + type: integer + pfcPauseFramePriority: + description: PFC priorities indicated in generated pfc-pause-frame if congestion occurs in a given pfc-queue. + type: integer + pfcReservedShareBufferPercent: + description: Maximum level the pfc-queue can take from pfc-reserved buffer configured per given forwarding-complex. + maximum: 100 + minimum: 0 + type: integer + queue: + description: Reference to a Queue resource. + type: string + required: + - queue + type: object + type: array + required: + - queues + type: object + type: array + type: object + status: + description: IngressPolicyStatus defines the observed state of IngressPolicy + type: object + type: object +served: true +storage: false +subresources: + status: {} diff --git a/static/resources/25.8.1/inits.bootstrap.eda.nokia.com/v1alpha1.yaml b/static/resources/25.8.1/inits.bootstrap.eda.nokia.com/v1alpha1.yaml new file mode 100644 index 0000000..f892c03 --- /dev/null +++ b/static/resources/25.8.1/inits.bootstrap.eda.nokia.com/v1alpha1.yaml @@ -0,0 +1,72 @@ +name: v1alpha1 +schema: + openAPIV3Schema: + description: Init is the Schema for the inits API + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + description: InitSpec defines the desired state of Init + properties: + commitSave: + description: Save a startup configuration after each commit. + type: boolean + mgmt: + description: |- + Optional management interface settings. + Allows setting DHCP clients or static IPs as well as + the IP MTU. + properties: + ipMTU: + description: Set the management interface IP MTU. + type: integer + ipv4DHCP: + description: Enable IPv4 DHCP client. + type: boolean + ipv6DHCP: + description: Enable IPv6 DHCP client. + type: boolean + staticRoutes: + description: Optional list of static routes to add to the management network instance as part of the initial configuration. + items: + properties: + nextHop: + description: Static route next hop. + type: string + prefix: + description: Static route prefix. + type: string + type: object + type: array + type: object + nodeSelector: + description: |- + Optional node selectors to perform initial configuration for. + If not provided initialization is performed for all nodes. + items: + type: string + type: array + type: object + status: + description: InitStatus defines the observed state of Init + type: object + type: object +served: true +storage: true +subresources: + status: {} diff --git a/static/resources/25.8.1/interfacemodules.components.eda.nokia.com/v1.yaml b/static/resources/25.8.1/interfacemodules.components.eda.nokia.com/v1.yaml new file mode 100644 index 0000000..4c759fe --- /dev/null +++ b/static/resources/25.8.1/interfacemodules.components.eda.nokia.com/v1.yaml @@ -0,0 +1,116 @@ +name: v1 +schema: + openAPIV3Schema: + description: InterfaceModule is the Schema for the interfacemodules API + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + description: InterfaceModuleSpec defines the desired state of InterfaceModule + type: object + status: + description: InterfaceModuleStatus defines the observed state of InterfaceModule + properties: + commonLanguageEquipmentIdentifier: + description: The CLEI code of this component + type: string + lastBooted: + description: The date and time this component last booted + type: string + lastChange: + description: The date and time this component last changed operational state + type: string + locatorEnabled: + description: Indicates if the locator LED for the component is active + type: boolean + manufacturedDate: + description: The date this component was manufactured + type: string + operationalState: + description: Indicates the current operational state of this component. + enum: + - Up + - Down + - Rebooting + - Unknown + - Starting + - Empty + type: string + parent: + description: Reference to a parent component + type: string + parentType: + description: Type of the parent component + enum: + - Fan + - FanTray + - PowerSupply + - PowerModule + - PowerShelf + - InterfaceModule + - ControlModule + - FabricModule + - Chassis + - Transceiver + type: string + partNumber: + description: The discovered part number of this component + type: string + removable: + description: Indicates if this component is removable + type: boolean + serialNumber: + description: The discovered serial number of this component + type: string + slot: + description: Slot this component resides in, unset for components that do not have a slot or ID + type: string + softwareVersion: + description: Version string of the software running on this component + type: string + target: + description: Target this component resides on. + type: string + temperature: + description: Temperature information for this component + properties: + alarmState: + description: The temperature alarm state, as reported by the component + type: boolean + instant: + description: The current temperature of this component + type: integer + margin: + description: The margin temperature of this component + type: integer + maximum: + description: The maximum temperature of this component + type: integer + threshold: + description: The threshold temperature of this component + type: integer + type: object + type: + description: Component type, as provided by the target + type: string + type: object + type: object +served: true +storage: true +subresources: + status: {} diff --git a/static/resources/25.8.1/interfaces.interfaces.eda.nokia.com/v1alpha1.yaml b/static/resources/25.8.1/interfaces.interfaces.eda.nokia.com/v1alpha1.yaml new file mode 100644 index 0000000..f81b61b --- /dev/null +++ b/static/resources/25.8.1/interfaces.interfaces.eda.nokia.com/v1alpha1.yaml @@ -0,0 +1,363 @@ +additionalPrinterColumns: + - jsonPath: .status.enabled + name: Enabled + type: boolean + - jsonPath: .status.operationalState + name: Operational State + type: string + - jsonPath: .status.speed + name: Speed + type: string + - jsonPath: .status.lastChange + name: Last Change + type: date + - jsonPath: .metadata.creationTimestamp + name: Age + type: date +name: v1alpha1 +schema: + openAPIV3Schema: + description: Interface is the Schema for the interfaces API + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + description: Interface allows for the configuration of various interface properties such as enabling/disabling the interface, setting descriptions, specifying interface types (e.g., LAG, interface, loopback), configuring VLAN encapsulation, and setting Ethernet or LAG-specific options. + properties: + ddm: + description: Enables reporting of DDM events. + type: boolean + description: + description: Description of the interface. + type: string + enabled: + default: true + description: Enable or disable the interface. + type: boolean + encapType: + default: "null" + description: Enable or disable VLAN tagging on this interface. [default="null"] + enum: + - "null" + - dot1q + type: string + ethernet: + description: Ethernet configuration options. + properties: + fec: + description: Sets the Forward Error Correction (FEC) on the members of the interface. + enum: + - disabled + - rs528 + - rs544 + - baser + - rs108 + type: string + holdDownTimer: + description: The hold-time down behavior is triggered with events that try to bring the ethernet interface down and can change quickly. It is not triggered with an admin-state disable event or interface disable due to other internal reasons. Units in milliseconds. + format: int32 + maximum: 86400000 + minimum: 100 + type: integer + holdUpTimer: + description: The hold-time up behavior is triggered with any event that tries to bring up the ethernet interface. While the hold-time up is running, the transceiver laser will be enabled, however the higher layers will not be notified that the interface is operationally up until the timer expires. Units in milliseconds. + format: int32 + maximum: 86400000 + minimum: 100 + type: integer + reloadDelayTimer: + description: After the system boots, the reload-delay timer in seconds keeps an interface shut down with the laser off for a configured amount of time until connectivity with the rest of network is established. + maximum: 86400 + minimum: 1 + type: integer + speed: + description: The speed of this interface, in human-readable format - e.g. 25G, 100G. + enum: + - 100G + - 10G + - 1G + - 25G + - 40G + - 50G + - 400G + type: string + standbySignaling: + description: Indicates the standby-signaling used in the interface. + enum: + - lacp + - power-off + type: string + stormControl: + description: Enables storm control. + properties: + broadcastRate: + description: Sets the maximum rate allowed for ingress broadcast frames on the interface. + format: int32 + maximum: 100000000 + minimum: 0 + type: integer + enabled: + description: Enables storm control. + type: boolean + multicastRate: + description: Sets the maximum rate allowed for ingress multicast frames on the interface. + format: int32 + maximum: 100000000 + minimum: 0 + type: integer + units: + description: Set the units to be used for measurement. + enum: + - kbps + - percentage + type: string + unknownUnicastRate: + description: Sets the maximum rate allowed for ingress unknown unicast frames on the interface. + maximum: 100000000 + minimum: 0 + type: integer + type: object + transparentL2CPProtocols: + description: 'A list of L2CP protocols to tunnel. Options: LLDP, LACP, xSTP, Dot1x, PTP, All.' + items: + enum: + - LLDP + - LACP + - xSTP + - Dot1x + - PTP + - All + type: string + type: array + type: object + lag: + description: LAG configuration options. + properties: + lacp: + properties: + adminKey: + description: Configure the LACP admin-key to be advertised by the local system. + maximum: 65535 + minimum: 1 + type: integer + interval: + default: fast + description: Set the period between LACP messages, uses the lacp-period-type enumeration. [default="fast"] + enum: + - fast + - slow + type: string + lacpFallback: + description: LACP fallback allows one or more designated links of an LACP controlled LAG to go into forwarding mode if LACP is not yet operational after a configured timeout period. [default=disabled] + properties: + mode: + default: static + description: Specifies lacp-fallback mode if enabled. + enum: + - static + type: string + timeout: + default: 60 + description: Specifies the LACP-fallback timeout interval in seconds. [default=60] + maximum: 3600 + minimum: 4 + type: integer + type: object + mode: + default: active + description: Active is to initiate the transmission of LACP PDUs. Passive is to wait for peer to initiate the transmission of LACP PDUs.[default="active"] + enum: + - active + - passive + type: string + systemIdMac: + description: The MAC address portion of the Node's System ID. This is combined with the system priority to construct the 8-octet system-id. + type: string + systemPriority: + default: 32768 + description: System priority used by the Node on this LAG interface. Lower value is higher priority for determining which Node is the controlling system.[default=32768] + maximum: 65535 + minimum: 0 + type: integer + type: object + minLinks: + default: 1 + description: The min-link threshold specifies the minimum number of member links that must be active in order for the LAG to be operationally up. If the number of active links falls below this threshold, the entire LAG is brought operationally down.[default=1] + maximum: 64 + minimum: 1 + type: integer + multihoming: + properties: + esi: + default: auto + description: 10 byte Ethernet Segment Identifier, if not set a type 0 ESI is generated. [default=auto] + type: string + mode: + default: all-active + description: |- + "all-active": All interfaces are active. + "single-active": In a single active MH LAG, the active and standby function is handled at the sub-interface layer within a network-instance. That is, the physical interfaces within the same LAG all remain operationally up, however each sub-interface associated with a network-instance has its operational state up or down based on whether it is selected to be the active or standby sub-interface. + "port-active": When port active MH LAG is enabled, the active and standby function is handled at the interface level. + enum: + - all-active + - single-active + - port-active + type: string + preferredActiveNode: + description: To be used in single-active or port-active modes. This references the Node object and when set, the DF algorithm is configured to type preference and the selected Node is set with a higher preference value. All other Nodes have a lower value configured. + type: string + reloadDelayTimer: + default: 100 + description: After the system boots, the reload-delay timer in seconds keeps an interface shut down with the laser off for a configured amount of time until connectivity with the rest of network is established. [default=100] + maximum: 86400 + minimum: 1 + type: integer + revertive: + default: false + description: To be used in single-active or port-active modes. When true, if there is a switch of active interface in the LAG and the original interface comes back up, the LAG will switch back to using the original interface as active. [default=false] + type: boolean + type: object + type: + default: lacp + description: This type defines whether whether it is a static or LACP LAG. [default=lacp] + enum: + - lacp + - static + type: string + type: object + lldp: + default: true + description: Enable or disable LLDP on the members of the interface. + type: boolean + members: + description: List of members on which to apply properties, for single interface this would be a list of 1. + items: + properties: + aggregateId: + description: |- + When using a LAG, the aggregateId can be specified per set of interfaces on a node. + LAG interface with which this interface is associated. + type: string + description: + description: Description of the member, inherited from the interface if not provided. + type: string + enabled: + default: true + description: Enable or disable this member. + type: boolean + interface: + description: 'Reference to an interface in the normalized format. Ex: SRL ethernet-1/1 would be ethernet-1-1. SROS port 2/1/1 would be ethernet-2-1.' + type: string + lacpPortPriority: + default: 32768 + description: Configure the port priority for LACP. This value is used to determine which port should be activated with LACP fallback mode. Lower values are more preferred.[default=32768] + maximum: 65535 + minimum: 0 + type: integer + node: + description: Node name. + type: string + required: + - interface + - node + type: object + type: array + mtu: + description: MTU to apply on the interface(s). + maximum: 9500 + minimum: 1450 + type: integer + type: + default: interface + description: Type defines whether the interface is a Lag or Interface. + enum: + - lag + - interface + - loopback + type: string + required: + - members + type: object + status: + properties: + enabled: + description: The administrative status of the Interface. + type: boolean + lag: + properties: + adminKey: + type: integer + systemIdMac: + type: string + type: object + lastChange: + description: Indicates when this Interface last changed state. + type: string + members: + description: List of members in this Interface. + items: + properties: + enabled: + description: The administrative status of this member. + type: boolean + interface: + description: The name of the interface in normalized format. + type: string + lastChange: + description: Indicates when this member last changed state. + type: string + neighbors: + description: List of discovered neighbors on this member. + items: + properties: + interface: + description: The name of a neighbor interface of this member in node specific format. + type: string + node: + description: The name of a neighbor node of this member in node specific format. + type: string + type: object + type: array + node: + description: The node on which the interface is configured. + type: string + nodeInterface: + description: Node specific interface name, for example "ethernet-1/1", "1/1/c1/1". + type: string + operationalState: + description: Indicates the current operational state of this member. + type: string + speed: + description: Indicates the operational speed of the member. + type: string + required: + - nodeInterface + type: object + type: array + operationalState: + description: Indicates the current operational state of the Interface. + type: string + speed: + description: Indicates the operational speed of the Interface in aggregate. + type: string + type: object + type: object +served: true +storage: true +subresources: + status: {} diff --git a/static/resources/25.8.1/interfacestates.interfaces.eda.nokia.com/v1alpha1.yaml b/static/resources/25.8.1/interfacestates.interfaces.eda.nokia.com/v1alpha1.yaml new file mode 100644 index 0000000..d7df070 --- /dev/null +++ b/static/resources/25.8.1/interfacestates.interfaces.eda.nokia.com/v1alpha1.yaml @@ -0,0 +1,86 @@ +name: v1alpha1 +schema: + openAPIV3Schema: + description: InterfaceState is the Schema for the interfaces API + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + properties: + enabled: + description: Enable or disable the interface. + type: boolean + lag: + properties: + adminKey: + type: integer + systemIdMac: + type: string + type: object + members: + description: List of members on which to monitor state for + items: + properties: + aggregateId: + description: LAG interface with which this interface is associated + type: string + enabled: + description: Enable or disable this member. + type: boolean + interface: + description: Normalized interface name + type: string + node: + description: Reference to the TopoNode on which this member resides + type: string + nodeInterface: + description: Node specific interface name, for example "ethernet-1/1", "1/1/c1/1" + type: string + operatingSystem: + description: The operating system of the TopoNode on which this member resides + type: string + version: + description: The version of the TopoNode on which this interface resides + type: string + required: + - interface + - node + - nodeInterface + - operatingSystem + - version + type: object + type: array + role: + default: edge + description: Role of this interface. This is used to calculate severity of alarms. [default="edge"] + enum: + - isl + - edge + - loopback + type: string + required: + - members + type: object + status: + description: InterfaceStateStatus defines the observed state of Interface + type: object + type: object +served: true +storage: true +subresources: + status: {} diff --git a/static/resources/ipallocationpools.core.eda.nokia.com/v1.yaml b/static/resources/25.8.1/ipallocationpools.core.eda.nokia.com/v1.yaml similarity index 100% rename from static/resources/ipallocationpools.core.eda.nokia.com/v1.yaml rename to static/resources/25.8.1/ipallocationpools.core.eda.nokia.com/v1.yaml diff --git a/static/resources/ipinsubnetallocationpools.core.eda.nokia.com/v1.yaml b/static/resources/25.8.1/ipinsubnetallocationpools.core.eda.nokia.com/v1.yaml similarity index 100% rename from static/resources/ipinsubnetallocationpools.core.eda.nokia.com/v1.yaml rename to static/resources/25.8.1/ipinsubnetallocationpools.core.eda.nokia.com/v1.yaml diff --git a/static/resources/irbinterfaces.services.eda.nokia.com/v1.yaml b/static/resources/25.8.1/irbinterfaces.services.eda.nokia.com/v1.yaml similarity index 100% rename from static/resources/irbinterfaces.services.eda.nokia.com/v1.yaml rename to static/resources/25.8.1/irbinterfaces.services.eda.nokia.com/v1.yaml diff --git a/static/resources/irbinterfaces.services.eda.nokia.com/v1alpha1.yaml b/static/resources/25.8.1/irbinterfaces.services.eda.nokia.com/v1alpha1.yaml similarity index 100% rename from static/resources/irbinterfaces.services.eda.nokia.com/v1alpha1.yaml rename to static/resources/25.8.1/irbinterfaces.services.eda.nokia.com/v1alpha1.yaml diff --git a/static/resources/irbinterfacestates.services.eda.nokia.com/v1.yaml b/static/resources/25.8.1/irbinterfacestates.services.eda.nokia.com/v1.yaml similarity index 100% rename from static/resources/irbinterfacestates.services.eda.nokia.com/v1.yaml rename to static/resources/25.8.1/irbinterfacestates.services.eda.nokia.com/v1.yaml diff --git a/static/resources/25.8.1/irbinterfacestates.services.eda.nokia.com/v1alpha1.yaml b/static/resources/25.8.1/irbinterfacestates.services.eda.nokia.com/v1alpha1.yaml new file mode 100644 index 0000000..2d5e7e0 --- /dev/null +++ b/static/resources/25.8.1/irbinterfacestates.services.eda.nokia.com/v1alpha1.yaml @@ -0,0 +1,90 @@ +deprecated: true +deprecationWarning: This version is deprecated and will no longer be supported in the next version. +name: v1alpha1 +schema: + openAPIV3Schema: + description: IRBInterfaceState is the Schema for the irbinterfacestates API + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + description: IRBInterfaceStateSpec defines the desired state of IRBInterfaceState + properties: + bridgeDomain: + description: Router the IRBInterface is attached to + type: string + interfaces: + items: + properties: + ipv4Addresses: + description: List of IPv4 addresses + items: + properties: + ipPrefix: + description: Address and mask to use + type: string + primary: + description: Indicates which address to use as primary for broadcast + type: boolean + required: + - ipPrefix + type: object + type: array + ipv6Addresses: + description: List of IPv6 addresses + items: + properties: + ipPrefix: + description: Address and mask to use + type: string + primary: + description: Indicates which address to use as primary for broadcast + type: boolean + required: + - ipPrefix + type: object + type: array + node: + description: Reference to Node object. + type: string + nodeInterface: + description: Node specific interface name. + type: string + operatingSystem: + description: Operating System of the Node. + type: string + required: + - node + - nodeInterface + type: object + type: array + router: + description: Router the IRBInterface is attached to + type: string + required: + - bridgeDomain + - router + type: object + status: + description: IRBInterfaceStateStatus defines the observed state of IRBInterfaceState + type: object + type: object +served: true +storage: false +subresources: + status: {} diff --git a/static/resources/25.8.1/islpings.fabrics.eda.nokia.com/v1alpha1.yaml b/static/resources/25.8.1/islpings.fabrics.eda.nokia.com/v1alpha1.yaml new file mode 100644 index 0000000..1b0c3a1 --- /dev/null +++ b/static/resources/25.8.1/islpings.fabrics.eda.nokia.com/v1alpha1.yaml @@ -0,0 +1,122 @@ +name: v1alpha1 +schema: + openAPIV3Schema: + description: IslPing is the Schema for the islpings API + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + description: |- + This workflow is used to ping ISLs (Inter-Switch Links) to verify connectivity within a Fabric. + It accepts a list of fabrics, ISLs, or selectors for both to match ISLs, + and returns the results of the pings, including the status of each ISL. + properties: + count: + default: 1 + description: Count is the number of pings to send. + type: integer + islSelectors: + description: |- + Inter-Switch Link Selectors is a list of selectors to execute ISL pings for. + This is a list of label expressions, e.g. ["eda.nokia.com/role=leaf", "eda.nokia.com/region=us-west"]. + items: + type: string + type: array + isls: + description: Inter-Switch Links is a list of named ISL resources to execute ISL pings for. + items: + type: string + type: array + timeoutSeconds: + default: 5 + description: TimeoutSeconds is the timeout for the ping in seconds. + type: integer + type: object + status: + description: The result of the ISL ping + properties: + details: + description: |- + Details contains the results of the pings performed for each ISL. + Each entry in the list corresponds to an ISL that was pinged. + items: + properties: + details: + description: Details of the ping result, if available. + properties: + averageTimeNanoseconds: + description: Average time taken for a ping reply. + format: int64 + type: integer + maxTimeNanoseconds: + description: Maximum time taken for a ping reply. + format: int64 + type: integer + minTimeNanoseconds: + description: Minimum time taken for a ping reply. + format: int64 + type: integer + received: + description: Number of pings received. + type: integer + sent: + description: Number of pings sent. + type: integer + stdDevNanoseconds: + description: Standard deviation of time taken for all pings. + format: int64 + type: integer + totalTimeNanoseconds: + description: Total time taken for all pings. + format: int64 + type: integer + required: + - received + - sent + type: object + error: + description: Error message, if the ping failed. + type: string + name: + description: Name of the ping result. + type: string + success: + description: Indicates if the ping was successful. + type: boolean + required: + - success + type: object + type: array + result: + description: |- + Result is the overall result of the ping operation. + It can be one of the following values: + - "Success": All pings were successful. + - "Failed": No pings were successful. + - "PartialSuccess": Some pings were successful, but not all. + enum: + - Success + - Failed + - PartialSuccess + type: string + type: object + type: object +served: true +storage: true +subresources: + status: {} diff --git a/static/resources/isls.fabrics.eda.nokia.com/v1alpha1.yaml b/static/resources/25.8.1/isls.fabrics.eda.nokia.com/v1alpha1.yaml similarity index 100% rename from static/resources/isls.fabrics.eda.nokia.com/v1alpha1.yaml rename to static/resources/25.8.1/isls.fabrics.eda.nokia.com/v1alpha1.yaml diff --git a/static/resources/25.8.1/islstates.fabrics.eda.nokia.com/v1alpha1.yaml b/static/resources/25.8.1/islstates.fabrics.eda.nokia.com/v1alpha1.yaml new file mode 100644 index 0000000..567cb49 --- /dev/null +++ b/static/resources/25.8.1/islstates.fabrics.eda.nokia.com/v1alpha1.yaml @@ -0,0 +1,106 @@ +name: v1alpha1 +schema: + openAPIV3Schema: + description: ISLState is the Schema for the islstates API + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + description: ISLStateSpec defines the desired state of ISLState + properties: + localInterface: + properties: + BGPPeerIPV4: + description: Reference to the IPV4 BGPPeer created for the local peer + type: string + BGPPeerIPV6: + description: Reference to the IPV6 BGPPeer created for the local peer + type: string + IPv4Address: + description: Local Interface IPv4 address + type: string + IPv6Address: + description: Local Interface IPv4 address + type: string + defaultInterface: + description: Reference to the DefaultInterface configured on the local node + type: string + dynamicBGPPeerIPV6: + description: Reference to the dynamic IPV6 BGPPeer created for the local peer + type: string + node: + description: Reference to the TopoNode on which the local interface is configured + type: string + required: + - defaultInterface + type: object + poolIPV4Enabled: + description: Indicates if IPV4 pool is enabled on the isl interface + type: boolean + poolIPV6Enabled: + description: Indicates if IPV6 pool is enabled on the isl interface + type: boolean + protocols: + description: List of configured protocols on the BGP peer + items: + type: string + type: array + remoteInterface: + properties: + BGPPeerIPV4: + description: Reference to the IPV4 BGPPeer created for the remote peer + type: string + BGPPeerIPV6: + description: Reference to the IPV6 BGPPeer created for the remote peer + type: string + IPv4Address: + description: Remote Interface IPv4 address + type: string + IPv6Address: + description: Remote Interface IPv4 address + type: string + defaultInterface: + description: Reference to the DefaultInterface configured on the remote node + type: string + dynamicBGPPeerIPV6: + description: Reference to the dynamic IPV6 BGPPeer created for the remote peer + type: string + node: + description: Reference to the TopoNode on which the remote interface is configured + type: string + required: + - defaultInterface + type: object + unnumbered: + description: Indicates the dynamic peering type that is enabled on the isl interface. + type: string + required: + - localInterface + - poolIPV4Enabled + - poolIPV6Enabled + - protocols + - remoteInterface + type: object + status: + description: ISLStateStatus defines the observed state of ISLState + type: object + type: object +served: true +storage: true +subresources: + status: {} diff --git a/static/resources/25.8.1/keychaindeployments.security.eda.nokia.com/v1alpha1.yaml b/static/resources/25.8.1/keychaindeployments.security.eda.nokia.com/v1alpha1.yaml new file mode 100644 index 0000000..8c47ac9 --- /dev/null +++ b/static/resources/25.8.1/keychaindeployments.security.eda.nokia.com/v1alpha1.yaml @@ -0,0 +1,43 @@ +name: v1alpha1 +schema: + openAPIV3Schema: + description: KeychainDeployment is the Schema for the keychaindeployments API + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + description: KeychainDeploymentSpec defines the desired state of KeychainDeployment + properties: + keychain: + description: Reference to a Keychain + type: string + node: + description: Reference to a Node on which to push the BgpGroup + type: string + required: + - keychain + - node + type: object + status: + description: KeychainDeploymentStatus defines the observed state of KeychainDeployment + type: object + type: object +served: true +storage: true +subresources: + status: {} diff --git a/static/resources/25.8.1/keychains.security.eda.nokia.com/v1alpha1.yaml b/static/resources/25.8.1/keychains.security.eda.nokia.com/v1alpha1.yaml new file mode 100644 index 0000000..7cd16ba --- /dev/null +++ b/static/resources/25.8.1/keychains.security.eda.nokia.com/v1alpha1.yaml @@ -0,0 +1,48 @@ +name: v1alpha1 +schema: + openAPIV3Schema: + description: Keychain is the Schema for the keychains API + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + description: KeychainSpec defines the desired state of Keychain + properties: + key: + properties: + algorithm: + enum: + - MD5 + type: string + authenticationKey: + type: string + required: + - algorithm + - authenticationKey + type: object + required: + - key + type: object + status: + description: KeychainStatus defines the observed state of Keychain + type: object + type: object +served: true +storage: true +subresources: + status: {} diff --git a/static/resources/25.8.1/licenses.core.eda.nokia.com/v1.yaml b/static/resources/25.8.1/licenses.core.eda.nokia.com/v1.yaml new file mode 100644 index 0000000..7e7a041 --- /dev/null +++ b/static/resources/25.8.1/licenses.core.eda.nokia.com/v1.yaml @@ -0,0 +1,66 @@ +name: v1 +schema: + openAPIV3Schema: + description: License is the Schema for the licenses API + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + description: A License represents an application license providing functionality within EDA. A license providing the "base" feature must be provided/valid for transactions to be processed. + properties: + data: + description: The license key. This is a base64 encoded string. + type: string + enabled: + default: true + description: Indicates if this license is available for use. + type: boolean + required: + - data + type: object + status: + description: Status information for this license. + properties: + comment: + description: Any comment provided in the license. + type: string + expirationDate: + description: Date and time the license expires. + type: string + expired: + description: Indicates if the license has expired. + type: boolean + issuedDate: + description: Date and time the license was issued. + type: string + used: + description: Indicates if license has been used. + type: boolean + valid: + description: Indicates if the license is valid. + type: boolean + required: + - expired + - used + - valid + type: object + type: object +served: true +storage: true +subresources: + status: {} diff --git a/static/resources/25.8.1/lldpoverlays.topologies.eda.nokia.com/v1alpha1.yaml b/static/resources/25.8.1/lldpoverlays.topologies.eda.nokia.com/v1alpha1.yaml new file mode 100644 index 0000000..94f4813 --- /dev/null +++ b/static/resources/25.8.1/lldpoverlays.topologies.eda.nokia.com/v1alpha1.yaml @@ -0,0 +1,69 @@ +name: v1alpha1 +schema: + openAPIV3Schema: + description: LldpOverlay is the Schema for lldpoverlays + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + description: LldpOverlaySpec defines the desired state of lldp + properties: + enabled: + description: Enable or disable the generation of the status of this overlay + type: boolean + topology: + description: Reference to the topology that this overlay is extending. + properties: + group: + description: The group of the application which published the topology this overlay is extending. + type: string + name: + description: The name of the resource which published the topology this overlay is extending. + type: string + version: + description: The version of the application which published the topology this overlay is extending. + type: string + required: + - group + - name + - version + type: object + uiDescription: + description: A description of the overlay to expose in the UI + type: string + uiDescriptionKey: + description: The translation key for the description of the overlay to expose in the UI + type: string + uiName: + description: The name of the overlay to expose in the UI + type: string + uiNameKey: + description: The translation key for the name of the overlay to expose in the UI + type: string + required: + - enabled + - topology + type: object + status: + description: LldpOverlayStatus defines the observed state of LldpOverlay + type: object + type: object +served: true +storage: true +subresources: + status: {} diff --git a/static/resources/25.8.1/managementrouters.bootstrap.eda.nokia.com/v1alpha1.yaml b/static/resources/25.8.1/managementrouters.bootstrap.eda.nokia.com/v1alpha1.yaml new file mode 100644 index 0000000..18ea45c --- /dev/null +++ b/static/resources/25.8.1/managementrouters.bootstrap.eda.nokia.com/v1alpha1.yaml @@ -0,0 +1,44 @@ +name: v1alpha1 +schema: + openAPIV3Schema: + description: ManagementRouter is the Schema for the managementrouters API + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + description: ManagementRouterSpec defines the desired state of ManagementRouter + properties: + nodeSelector: + description: Selects TopoNodes on which to configure the management VRF. When left empty, all TopoNodes are selected. + items: + type: string + type: array + nodes: + description: List of TopoNodes on which to configure the management VRF. When left empty, all TopoNodes are selected. + items: + type: string + type: array + type: object + status: + description: ManagementRouterStatus defines the observed state of ManagementRouter + type: object + type: object +served: true +storage: true +subresources: + status: {} diff --git a/static/resources/25.8.1/managementrouterstates.bootstrap.eda.nokia.com/v1alpha1.yaml b/static/resources/25.8.1/managementrouterstates.bootstrap.eda.nokia.com/v1alpha1.yaml new file mode 100644 index 0000000..e16fda8 --- /dev/null +++ b/static/resources/25.8.1/managementrouterstates.bootstrap.eda.nokia.com/v1alpha1.yaml @@ -0,0 +1,54 @@ +name: v1alpha1 +schema: + openAPIV3Schema: + description: ManagementRouterState is the Schema for the managementrouterstates API + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + description: ManagementRouterStateSpec defines the desired state of ManagementRouterState + properties: + nodes: + description: Reference to Nodes on which the ManagementRouter is deployed + items: + properties: + networkInstanceName: + description: The name of the management network instance in the Node OS format. For example in SR Linux it would be 'mgmt' + type: string + node: + description: Reference to Node object + type: string + operatingSystem: + description: Operating System of the Node + type: string + required: + - networkInstanceName + - node + type: object + type: array + required: + - nodes + type: object + status: + description: ManagementRouterStateStatus defines the observed state of ManagementRouterState + type: object + type: object +served: true +storage: true +subresources: + status: {} diff --git a/static/resources/25.8.1/manifest.json b/static/resources/25.8.1/manifest.json new file mode 100644 index 0000000..634cd3b --- /dev/null +++ b/static/resources/25.8.1/manifest.json @@ -0,0 +1,1997 @@ +[ + { + "name": "aggregateroutes.protocols.eda.nokia.com", + "group": "protocols.eda.nokia.com", + "kind": "AggregateRoute", + "versions": [ + { + "name": "v1", + "appVersion": "v4.0.1" + }, + { + "name": "v1alpha1", + "deprecated": true, + "appVersion": "v3.0.2+25.4.3" + } + ] + }, + { + "name": "alarms.core.eda.nokia.com", + "group": "core.eda.nokia.com", + "kind": "Alarm", + "versions": [ + { + "name": "v1" + } + ] + }, + { + "name": "appinstallers.appstore.eda.nokia.com", + "group": "appstore.eda.nokia.com", + "kind": "AppInstaller", + "versions": [ + { + "name": "v1" + } + ] + }, + { + "name": "artifacts.artifacts.eda.nokia.com", + "group": "artifacts.eda.nokia.com", + "kind": "Artifact", + "versions": [ + { + "name": "v1" + } + ] + }, + { + "name": "aspathsetdeployments.routingpolicies.eda.nokia.com", + "group": "routingpolicies.eda.nokia.com", + "kind": "ASPathSetDeployment", + "versions": [ + { + "name": "v1alpha1", + "appVersion": "v4.0.1" + } + ] + }, + { + "name": "aspathsets.routingpolicies.eda.nokia.com", + "group": "routingpolicies.eda.nokia.com", + "kind": "ASPathSet", + "versions": [ + { + "name": "v1alpha1", + "appVersion": "v4.0.1" + } + ] + }, + { + "name": "attachmentlookups.routing.eda.nokia.com", + "group": "routing.eda.nokia.com", + "kind": "AttachmentLookup", + "versions": [ + { + "name": "v1alpha1", + "appVersion": "v4.0.1" + } + ] + }, + { + "name": "backends.aifabrics.eda.nokia.com", + "group": "aifabrics.eda.nokia.com", + "kind": "Backend", + "versions": [ + { + "name": "v1alpha1", + "appVersion": "v4.0.1" + } + ] + }, + { + "name": "backendstates.aifabrics.eda.nokia.com", + "group": "aifabrics.eda.nokia.com", + "kind": "", + "versions": [ + { + "name": "v1alpha1" + } + ] + }, + { + "name": "banners.siteinfo.eda.nokia.com", + "group": "siteinfo.eda.nokia.com", + "kind": "Banner", + "versions": [ + { + "name": "v1alpha1", + "appVersion": "v4.0.1" + } + ] + }, + { + "name": "bannerstates.siteinfo.eda.nokia.com", + "group": "siteinfo.eda.nokia.com", + "kind": "", + "versions": [ + { + "name": "v1alpha1" + } + ] + }, + { + "name": "bgpgroupdeployments.protocols.eda.nokia.com", + "group": "protocols.eda.nokia.com", + "kind": "BGPGroupDeployment", + "versions": [ + { + "name": "v1", + "appVersion": "v4.0.1" + }, + { + "name": "v1alpha1", + "deprecated": true, + "appVersion": "v3.0.2+25.4.3" + } + ] + }, + { + "name": "bgpgroups.protocols.eda.nokia.com", + "group": "protocols.eda.nokia.com", + "kind": "BGPGroup", + "versions": [ + { + "name": "v1", + "appVersion": "v4.0.1" + }, + { + "name": "v1alpha1", + "deprecated": true, + "appVersion": "v3.0.2+25.4.3" + } + ] + }, + { + "name": "bgpgroupstates.protocols.eda.nokia.com", + "group": "protocols.eda.nokia.com", + "kind": "", + "versions": [ + { + "name": "v1" + }, + { + "name": "v1alpha1", + "deprecated": true + } + ] + }, + { + "name": "bgppeers.protocols.eda.nokia.com", + "group": "protocols.eda.nokia.com", + "kind": "BGPPeer", + "versions": [ + { + "name": "v1", + "appVersion": "v4.0.1" + }, + { + "name": "v1alpha1", + "deprecated": true, + "appVersion": "v3.0.2+25.4.3" + } + ] + }, + { + "name": "bgppeerstates.protocols.eda.nokia.com", + "group": "protocols.eda.nokia.com", + "kind": "", + "versions": [ + { + "name": "v1" + }, + { + "name": "v1alpha1", + "deprecated": true + } + ] + }, + { + "name": "breakouts.interfaces.eda.nokia.com", + "group": "interfaces.eda.nokia.com", + "kind": "Breakout", + "versions": [ + { + "name": "v1alpha1", + "appVersion": "v4.0.1" + } + ] + }, + { + "name": "bridgedomaindeployments.services.eda.nokia.com", + "group": "services.eda.nokia.com", + "kind": "BridgeDomainDeployment", + "versions": [ + { + "name": "v1", + "appVersion": "v4.0.1" + }, + { + "name": "v1alpha1", + "deprecated": true, + "appVersion": "v3.0.2+25.4.3" + } + ] + }, + { + "name": "bridgedomains.services.eda.nokia.com", + "group": "services.eda.nokia.com", + "kind": "BridgeDomain", + "versions": [ + { + "name": "v1", + "appVersion": "v4.0.1" + }, + { + "name": "v1alpha1", + "deprecated": true, + "appVersion": "v3.0.2+25.4.3" + } + ] + }, + { + "name": "bridgedomainstates.services.eda.nokia.com", + "group": "services.eda.nokia.com", + "kind": "", + "versions": [ + { + "name": "v1" + }, + { + "name": "v1alpha1", + "deprecated": true + } + ] + }, + { + "name": "bridgeinterfaces.services.eda.nokia.com", + "group": "services.eda.nokia.com", + "kind": "BridgeInterface", + "versions": [ + { + "name": "v1", + "appVersion": "v4.0.1" + }, + { + "name": "v1alpha1", + "deprecated": true, + "appVersion": "v3.0.2+25.4.3" + } + ] + }, + { + "name": "bridgeinterfacestates.services.eda.nokia.com", + "group": "services.eda.nokia.com", + "kind": "", + "versions": [ + { + "name": "v1" + }, + { + "name": "v1alpha1", + "deprecated": true + } + ] + }, + { + "name": "catalogs.appstore.eda.nokia.com", + "group": "appstore.eda.nokia.com", + "kind": "Catalog", + "versions": [ + { + "name": "v1" + } + ] + }, + { + "name": "certificatechecks.certcheck.eda.nokia.com", + "group": "certcheck.eda.nokia.com", + "kind": "CertificateCheck", + "versions": [ + { + "name": "v1alpha1" + } + ] + }, + { + "name": "chassis.components.eda.nokia.com", + "group": "components.eda.nokia.com", + "kind": "Chassis", + "versions": [ + { + "name": "v1", + "appVersion": "v4.0.1" + } + ] + }, + { + "name": "checkdefaultbgppeerss.protocols.eda.nokia.com", + "group": "protocols.eda.nokia.com", + "kind": "CheckDefaultBgpPeers", + "versions": [ + { + "name": "v1", + "appVersion": "v4.0.1" + }, + { + "name": "v1alpha1", + "deprecated": true + } + ] + }, + { + "name": "checkinterfacess.interfaces.eda.nokia.com", + "group": "interfaces.eda.nokia.com", + "kind": "CheckInterfaces", + "versions": [ + { + "name": "v1alpha1", + "appVersion": "v4.0.1" + } + ] + }, + { + "name": "cliplugins.environment.eda.nokia.com", + "group": "environment.eda.nokia.com", + "kind": "CliPlugin", + "versions": [ + { + "name": "v1alpha1", + "appVersion": "v4.0.1" + } + ] + }, + { + "name": "clusterdiscoveries.components.eda.nokia.com", + "group": "components.eda.nokia.com", + "kind": "ClusterDiscovery", + "versions": [ + { + "name": "v1", + "appVersion": "v4.0.1" + } + ] + }, + { + "name": "clusterroles.core.eda.nokia.com", + "group": "core.eda.nokia.com", + "kind": "ClusterRole", + "versions": [ + { + "name": "v1" + } + ] + }, + { + "name": "communitysetdeployments.routingpolicies.eda.nokia.com", + "group": "routingpolicies.eda.nokia.com", + "kind": "CommunitySetDeployment", + "versions": [ + { + "name": "v1alpha1", + "appVersion": "v4.0.1" + } + ] + }, + { + "name": "communitysets.routingpolicies.eda.nokia.com", + "group": "routingpolicies.eda.nokia.com", + "kind": "CommunitySet", + "versions": [ + { + "name": "v1alpha1", + "appVersion": "v4.0.1" + } + ] + }, + { + "name": "components.components.eda.nokia.com", + "group": "components.eda.nokia.com", + "kind": "Component", + "versions": [ + { + "name": "v1", + "appVersion": "v4.0.1" + }, + { + "name": "v1alpha1" + } + ] + }, + { + "name": "configlets.config.eda.nokia.com", + "group": "config.eda.nokia.com", + "kind": "Configlet", + "versions": [ + { + "name": "v1alpha1", + "appVersion": "v4.0.1" + } + ] + }, + { + "name": "configletstates.config.eda.nokia.com", + "group": "config.eda.nokia.com", + "kind": "", + "versions": [ + { + "name": "v1alpha1" + } + ] + }, + { + "name": "controlmodules.components.eda.nokia.com", + "group": "components.eda.nokia.com", + "kind": "ControlModule", + "versions": [ + { + "name": "v1", + "appVersion": "v4.0.1" + } + ] + }, + { + "name": "controlplanefilters.filters.eda.nokia.com", + "group": "filters.eda.nokia.com", + "kind": "ControlPlaneFilter", + "versions": [ + { + "name": "v1alpha1", + "appVersion": "v4.0.1" + } + ] + }, + { + "name": "cpuoverlays.components.eda.nokia.com", + "group": "components.eda.nokia.com", + "kind": "CPUOverlay", + "versions": [ + { + "name": "v1", + "appVersion": "v4.0.1" + } + ] + }, + { + "name": "cxclusters.cx.eda.nokia.com", + "group": "cx.eda.nokia.com", + "kind": "CxCluster", + "versions": [ + { + "name": "v1alpha1" + } + ] + }, + { + "name": "defaultaggregateroutes.protocols.eda.nokia.com", + "group": "protocols.eda.nokia.com", + "kind": "DefaultAggregateRoute", + "versions": [ + { + "name": "v1", + "appVersion": "v4.0.1" + }, + { + "name": "v1alpha1", + "deprecated": true, + "appVersion": "v3.0.2+25.4.3" + } + ] + }, + { + "name": "defaultbgpgroupdeployments.protocols.eda.nokia.com", + "group": "protocols.eda.nokia.com", + "kind": "DefaultBGPGroupDeployment", + "versions": [ + { + "name": "v1", + "appVersion": "v4.0.1" + }, + { + "name": "v1alpha1", + "deprecated": true, + "appVersion": "v3.0.2+25.4.3" + } + ] + }, + { + "name": "defaultbgpgroups.protocols.eda.nokia.com", + "group": "protocols.eda.nokia.com", + "kind": "DefaultBGPGroup", + "versions": [ + { + "name": "v1", + "appVersion": "v4.0.1" + }, + { + "name": "v1alpha1", + "deprecated": true, + "appVersion": "v3.0.2+25.4.3" + } + ] + }, + { + "name": "defaultbgppeers.protocols.eda.nokia.com", + "group": "protocols.eda.nokia.com", + "kind": "DefaultBGPPeer", + "versions": [ + { + "name": "v1", + "appVersion": "v4.0.1" + }, + { + "name": "v1alpha1", + "deprecated": true, + "appVersion": "v3.0.2+25.4.3" + } + ] + }, + { + "name": "defaultinterfaces.routing.eda.nokia.com", + "group": "routing.eda.nokia.com", + "kind": "DefaultInterface", + "versions": [ + { + "name": "v1alpha1", + "appVersion": "v4.0.1" + } + ] + }, + { + "name": "defaultinterfacestates.routing.eda.nokia.com", + "group": "routing.eda.nokia.com", + "kind": "", + "versions": [ + { + "name": "v1alpha1" + } + ] + }, + { + "name": "defaultroutereflectorclients.protocols.eda.nokia.com", + "group": "protocols.eda.nokia.com", + "kind": "DefaultRouteReflectorClient", + "versions": [ + { + "name": "v1", + "appVersion": "v4.0.1" + }, + { + "name": "v1alpha1", + "deprecated": true, + "appVersion": "v3.0.2+25.4.3" + } + ] + }, + { + "name": "defaultroutereflectors.protocols.eda.nokia.com", + "group": "protocols.eda.nokia.com", + "kind": "DefaultRouteReflector", + "versions": [ + { + "name": "v1", + "appVersion": "v4.0.1" + }, + { + "name": "v1alpha1", + "deprecated": true, + "appVersion": "v3.0.2+25.4.3" + } + ] + }, + { + "name": "defaultrouters.routing.eda.nokia.com", + "group": "routing.eda.nokia.com", + "kind": "DefaultRouter", + "versions": [ + { + "name": "v1alpha1", + "appVersion": "v4.0.1" + } + ] + }, + { + "name": "defaultrouterstates.routing.eda.nokia.com", + "group": "routing.eda.nokia.com", + "kind": "", + "versions": [ + { + "name": "v1alpha1" + } + ] + }, + { + "name": "defaultstaticroutes.protocols.eda.nokia.com", + "group": "protocols.eda.nokia.com", + "kind": "DefaultStaticRoute", + "versions": [ + { + "name": "v1", + "appVersion": "v4.0.1" + }, + { + "name": "v1alpha1", + "deprecated": true, + "appVersion": "v3.0.2+25.4.3" + } + ] + }, + { + "name": "deployimages.os.eda.nokia.com", + "group": "os.eda.nokia.com", + "kind": "DeployImage", + "versions": [ + { + "name": "v1alpha1", + "appVersion": "v4.0.1" + } + ] + }, + { + "name": "designers.core.eda.nokia.com", + "group": "core.eda.nokia.com", + "kind": "Designer", + "versions": [ + { + "name": "v1" + } + ] + }, + { + "name": "deviationactions.core.eda.nokia.com", + "group": "core.eda.nokia.com", + "kind": "DeviationAction", + "versions": [ + { + "name": "v1" + } + ] + }, + { + "name": "deviationoverlays.topologies.eda.nokia.com", + "group": "topologies.eda.nokia.com", + "kind": "DeviationOverlay", + "versions": [ + { + "name": "v1alpha1", + "appVersion": "v4.0.1" + } + ] + }, + { + "name": "deviations.core.eda.nokia.com", + "group": "core.eda.nokia.com", + "kind": "Deviation", + "versions": [ + { + "name": "v1" + } + ] + }, + { + "name": "dhcprelays.services.eda.nokia.com", + "group": "services.eda.nokia.com", + "kind": "DHCPRelay", + "versions": [ + { + "name": "v1", + "appVersion": "v4.0.1" + }, + { + "name": "v1alpha1", + "deprecated": true, + "appVersion": "v3.0.2+25.4.3" + } + ] + }, + { + "name": "discoveries.components.eda.nokia.com", + "group": "components.eda.nokia.com", + "kind": "Discovery", + "versions": [ + { + "name": "v1", + "appVersion": "v4.0.1" + }, + { + "name": "v1alpha1" + } + ] + }, + { + "name": "discoveryaggregatestates.components.eda.nokia.com", + "group": "components.eda.nokia.com", + "kind": "", + "versions": [ + { + "name": "v1" + }, + { + "name": "v1alpha1" + } + ] + }, + { + "name": "discoverystates.components.eda.nokia.com", + "group": "components.eda.nokia.com", + "kind": "", + "versions": [ + { + "name": "v1" + }, + { + "name": "v1alpha1" + } + ] + }, + { + "name": "drains.routing.eda.nokia.com", + "group": "routing.eda.nokia.com", + "kind": "Drain", + "versions": [ + { + "name": "v1alpha1", + "appVersion": "v4.0.1" + } + ] + }, + { + "name": "drainstates.routing.eda.nokia.com", + "group": "routing.eda.nokia.com", + "kind": "", + "versions": [ + { + "name": "v1alpha1" + } + ] + }, + { + "name": "edgeinterfaces.core.eda.nokia.com", + "group": "core.eda.nokia.com", + "kind": "EdgeInterface", + "versions": [ + { + "name": "v1" + } + ] + }, + { + "name": "edgepings.services.eda.nokia.com", + "group": "services.eda.nokia.com", + "kind": "EdgePing", + "versions": [ + { + "name": "v1", + "appVersion": "v4.0.1" + }, + { + "name": "v1alpha1", + "deprecated": true + } + ] + }, + { + "name": "egresspolicys.qos.eda.nokia.com", + "group": "qos.eda.nokia.com", + "kind": "EgressPolicy", + "versions": [ + { + "name": "v1", + "appVersion": "v4.0.1" + }, + { + "name": "v1alpha1", + "deprecated": true, + "appVersion": "v3.0.2+25.4.3" + } + ] + }, + { + "name": "engineconfigs.core.eda.nokia.com", + "group": "core.eda.nokia.com", + "kind": "EngineConfig", + "versions": [ + { + "name": "v1" + } + ] + }, + { + "name": "fabricmodules.components.eda.nokia.com", + "group": "components.eda.nokia.com", + "kind": "FabricModule", + "versions": [ + { + "name": "v1", + "appVersion": "v4.0.1" + } + ] + }, + { + "name": "fabrics.fabrics.eda.nokia.com", + "group": "fabrics.eda.nokia.com", + "kind": "Fabric", + "versions": [ + { + "name": "v1alpha1", + "appVersion": "v4.0.1" + } + ] + }, + { + "name": "fabricstates.fabrics.eda.nokia.com", + "group": "fabrics.eda.nokia.com", + "kind": "", + "versions": [ + { + "name": "v1alpha1" + } + ] + }, + { + "name": "fans.components.eda.nokia.com", + "group": "components.eda.nokia.com", + "kind": "Fan", + "versions": [ + { + "name": "v1", + "appVersion": "v4.0.1" + } + ] + }, + { + "name": "filterdeployments.filters.eda.nokia.com", + "group": "filters.eda.nokia.com", + "kind": "FilterDeployment", + "versions": [ + { + "name": "v1alpha1", + "appVersion": "v4.0.1" + } + ] + }, + { + "name": "filters.filters.eda.nokia.com", + "group": "filters.eda.nokia.com", + "kind": "Filter", + "versions": [ + { + "name": "v1alpha1", + "appVersion": "v4.0.1" + } + ] + }, + { + "name": "forwardingclasss.qos.eda.nokia.com", + "group": "qos.eda.nokia.com", + "kind": "ForwardingClass", + "versions": [ + { + "name": "v1", + "appVersion": "v4.0.1" + }, + { + "name": "v1alpha1", + "deprecated": true, + "appVersion": "v3.0.2+25.4.3" + } + ] + }, + { + "name": "globalconfigs.core.eda.nokia.com", + "group": "core.eda.nokia.com", + "kind": "GlobalConfig", + "versions": [ + { + "name": "v1" + } + ] + }, + { + "name": "httpproxies.core.eda.nokia.com", + "group": "core.eda.nokia.com", + "kind": "HttpProxy", + "versions": [ + { + "name": "v1" + } + ] + }, + { + "name": "indexallocationpools.core.eda.nokia.com", + "group": "core.eda.nokia.com", + "kind": "IndexAllocationPool", + "versions": [ + { + "name": "v1" + } + ] + }, + { + "name": "ingresspolicys.qos.eda.nokia.com", + "group": "qos.eda.nokia.com", + "kind": "IngressPolicy", + "versions": [ + { + "name": "v1", + "appVersion": "v4.0.1" + }, + { + "name": "v1alpha1", + "deprecated": true, + "appVersion": "v3.0.2+25.4.3" + } + ] + }, + { + "name": "inits.bootstrap.eda.nokia.com", + "group": "bootstrap.eda.nokia.com", + "kind": "Init", + "versions": [ + { + "name": "v1alpha1", + "appVersion": "v4.0.1" + } + ] + }, + { + "name": "interfacemodules.components.eda.nokia.com", + "group": "components.eda.nokia.com", + "kind": "InterfaceModule", + "versions": [ + { + "name": "v1", + "appVersion": "v4.0.1" + } + ] + }, + { + "name": "interfaces.interfaces.eda.nokia.com", + "group": "interfaces.eda.nokia.com", + "kind": "Interface", + "versions": [ + { + "name": "v1alpha1", + "appVersion": "v4.0.1" + } + ] + }, + { + "name": "interfacestates.interfaces.eda.nokia.com", + "group": "interfaces.eda.nokia.com", + "kind": "", + "versions": [ + { + "name": "v1alpha1" + } + ] + }, + { + "name": "ipallocationpools.core.eda.nokia.com", + "group": "core.eda.nokia.com", + "kind": "IPAllocationPool", + "versions": [ + { + "name": "v1" + } + ] + }, + { + "name": "ipinsubnetallocationpools.core.eda.nokia.com", + "group": "core.eda.nokia.com", + "kind": "IPInSubnetAllocationPool", + "versions": [ + { + "name": "v1" + } + ] + }, + { + "name": "irbinterfaces.services.eda.nokia.com", + "group": "services.eda.nokia.com", + "kind": "IRBInterface", + "versions": [ + { + "name": "v1", + "appVersion": "v4.0.1" + }, + { + "name": "v1alpha1", + "deprecated": true, + "appVersion": "v3.0.2+25.4.3" + } + ] + }, + { + "name": "irbinterfacestates.services.eda.nokia.com", + "group": "services.eda.nokia.com", + "kind": "", + "versions": [ + { + "name": "v1" + }, + { + "name": "v1alpha1", + "deprecated": true + } + ] + }, + { + "name": "islpings.fabrics.eda.nokia.com", + "group": "fabrics.eda.nokia.com", + "kind": "IslPing", + "versions": [ + { + "name": "v1alpha1", + "appVersion": "v4.0.1" + } + ] + }, + { + "name": "isls.fabrics.eda.nokia.com", + "group": "fabrics.eda.nokia.com", + "kind": "ISL", + "versions": [ + { + "name": "v1alpha1", + "appVersion": "v4.0.1" + } + ] + }, + { + "name": "islstates.fabrics.eda.nokia.com", + "group": "fabrics.eda.nokia.com", + "kind": "", + "versions": [ + { + "name": "v1alpha1" + } + ] + }, + { + "name": "keychaindeployments.security.eda.nokia.com", + "group": "security.eda.nokia.com", + "kind": "KeychainDeployment", + "versions": [ + { + "name": "v1alpha1", + "appVersion": "v4.0.1" + } + ] + }, + { + "name": "keychains.security.eda.nokia.com", + "group": "security.eda.nokia.com", + "kind": "Keychain", + "versions": [ + { + "name": "v1alpha1", + "appVersion": "v4.0.1" + } + ] + }, + { + "name": "licenses.core.eda.nokia.com", + "group": "core.eda.nokia.com", + "kind": "License", + "versions": [ + { + "name": "v1" + } + ] + }, + { + "name": "lldpoverlays.topologies.eda.nokia.com", + "group": "topologies.eda.nokia.com", + "kind": "LldpOverlay", + "versions": [ + { + "name": "v1alpha1", + "appVersion": "v4.0.1" + } + ] + }, + { + "name": "managementrouters.bootstrap.eda.nokia.com", + "group": "bootstrap.eda.nokia.com", + "kind": "ManagementRouter", + "versions": [ + { + "name": "v1alpha1", + "appVersion": "v4.0.1" + } + ] + }, + { + "name": "managementrouterstates.bootstrap.eda.nokia.com", + "group": "bootstrap.eda.nokia.com", + "kind": "", + "versions": [ + { + "name": "v1alpha1" + } + ] + }, + { + "name": "manifests.core.eda.nokia.com", + "group": "core.eda.nokia.com", + "kind": "Manifest", + "versions": [ + { + "name": "v1" + } + ] + }, + { + "name": "memoryoverlays.components.eda.nokia.com", + "group": "components.eda.nokia.com", + "kind": "MemoryOverlay", + "versions": [ + { + "name": "v1", + "appVersion": "v4.0.1" + } + ] + }, + { + "name": "mirrorfilterdeployments.filters.eda.nokia.com", + "group": "filters.eda.nokia.com", + "kind": "MirrorFilterDeployment", + "versions": [ + { + "name": "v1alpha1", + "appVersion": "v4.0.1" + } + ] + }, + { + "name": "mirrorfilters.filters.eda.nokia.com", + "group": "filters.eda.nokia.com", + "kind": "MirrorFilter", + "versions": [ + { + "name": "v1alpha1", + "appVersion": "v4.0.1" + } + ] + }, + { + "name": "mirrors.oam.eda.nokia.com", + "group": "oam.eda.nokia.com", + "kind": "Mirror", + "versions": [ + { + "name": "v1alpha1", + "appVersion": "v4.0.1" + } + ] + }, + { + "name": "mirrorstates.oam.eda.nokia.com", + "group": "oam.eda.nokia.com", + "kind": "", + "versions": [ + { + "name": "v1alpha1" + } + ] + }, + { + "name": "monitoraggregatestates.components.eda.nokia.com", + "group": "components.eda.nokia.com", + "kind": "", + "versions": [ + { + "name": "v1" + } + ] + }, + { + "name": "monitoraggregatestates.system.eda.nokia.com", + "group": "system.eda.nokia.com", + "kind": "", + "versions": [ + { + "name": "v1alpha1" + } + ] + }, + { + "name": "monitors.components.eda.nokia.com", + "group": "components.eda.nokia.com", + "kind": "Monitor", + "versions": [ + { + "name": "v1", + "appVersion": "v4.0.1" + } + ] + }, + { + "name": "monitors.system.eda.nokia.com", + "group": "system.eda.nokia.com", + "kind": "Monitor", + "versions": [ + { + "name": "v1alpha1", + "appVersion": "v4.0.1" + } + ] + }, + { + "name": "monitorstates.components.eda.nokia.com", + "group": "components.eda.nokia.com", + "kind": "", + "versions": [ + { + "name": "v1" + } + ] + }, + { + "name": "monitorstates.system.eda.nokia.com", + "group": "system.eda.nokia.com", + "kind": "", + "versions": [ + { + "name": "v1alpha1" + } + ] + }, + { + "name": "namespaces.core.eda.nokia.com", + "group": "core.eda.nokia.com", + "kind": "Namespace", + "versions": [ + { + "name": "v1" + } + ] + }, + { + "name": "nodeconfigs.core.eda.nokia.com", + "group": "core.eda.nokia.com", + "kind": "NodeConfig", + "versions": [ + { + "name": "v1" + } + ] + }, + { + "name": "nodegroupdeployments.aaa.eda.nokia.com", + "group": "aaa.eda.nokia.com", + "kind": "NodeGroupDeployment", + "versions": [ + { + "name": "v1alpha1", + "appVersion": "v4.0.1" + } + ] + }, + { + "name": "nodegroups.aaa.eda.nokia.com", + "group": "aaa.eda.nokia.com", + "kind": "NodeGroup", + "versions": [ + { + "name": "v1alpha1", + "appVersion": "v4.0.1" + } + ] + }, + { + "name": "nodeprofiles.core.eda.nokia.com", + "group": "core.eda.nokia.com", + "kind": "NodeProfile", + "versions": [ + { + "name": "v1" + } + ] + }, + { + "name": "nodesecurityprofiles.core.eda.nokia.com", + "group": "core.eda.nokia.com", + "kind": "NodeSecurityProfile", + "versions": [ + { + "name": "v1" + } + ] + }, + { + "name": "nodeusers.core.eda.nokia.com", + "group": "core.eda.nokia.com", + "kind": "NodeUser", + "versions": [ + { + "name": "v1" + } + ] + }, + { + "name": "nodeuserstates.aaa.eda.nokia.com", + "group": "aaa.eda.nokia.com", + "kind": "", + "versions": [ + { + "name": "v1alpha1" + } + ] + }, + { + "name": "ntpclients.timing.eda.nokia.com", + "group": "timing.eda.nokia.com", + "kind": "NTPClient", + "versions": [ + { + "name": "v1alpha1", + "appVersion": "v4.0.1" + } + ] + }, + { + "name": "ntpclientstates.timing.eda.nokia.com", + "group": "timing.eda.nokia.com", + "kind": "", + "versions": [ + { + "name": "v1alpha1" + } + ] + }, + { + "name": "pings.oam.eda.nokia.com", + "group": "oam.eda.nokia.com", + "kind": "Ping", + "versions": [ + { + "name": "v1alpha1", + "appVersion": "v4.0.1" + } + ] + }, + { + "name": "policyattachments.qos.eda.nokia.com", + "group": "qos.eda.nokia.com", + "kind": "PolicyAttachment", + "versions": [ + { + "name": "v1", + "appVersion": "v4.0.1" + }, + { + "name": "v1alpha1", + "deprecated": true, + "appVersion": "v3.0.2+25.4.3" + } + ] + }, + { + "name": "policydeployments.qos.eda.nokia.com", + "group": "qos.eda.nokia.com", + "kind": "PolicyDeployment", + "versions": [ + { + "name": "v1", + "appVersion": "v4.0.1" + }, + { + "name": "v1alpha1", + "deprecated": true, + "appVersion": "v3.0.2+25.4.3" + } + ] + }, + { + "name": "policydeployments.routingpolicies.eda.nokia.com", + "group": "routingpolicies.eda.nokia.com", + "kind": "PolicyDeployment", + "versions": [ + { + "name": "v1alpha1", + "appVersion": "v4.0.1" + } + ] + }, + { + "name": "policys.routingpolicies.eda.nokia.com", + "group": "routingpolicies.eda.nokia.com", + "kind": "Policy", + "versions": [ + { + "name": "v1alpha1", + "appVersion": "v4.0.1" + } + ] + }, + { + "name": "powersupplies.components.eda.nokia.com", + "group": "components.eda.nokia.com", + "kind": "PowerSupply", + "versions": [ + { + "name": "v1", + "appVersion": "v4.0.1" + } + ] + }, + { + "name": "prefixsetdeployments.routingpolicies.eda.nokia.com", + "group": "routingpolicies.eda.nokia.com", + "kind": "PrefixSetDeployment", + "versions": [ + { + "name": "v1alpha1", + "appVersion": "v4.0.1" + } + ] + }, + { + "name": "prefixsets.routingpolicies.eda.nokia.com", + "group": "routingpolicies.eda.nokia.com", + "kind": "PrefixSet", + "versions": [ + { + "name": "v1alpha1", + "appVersion": "v4.0.1" + } + ] + }, + { + "name": "queues.qos.eda.nokia.com", + "group": "qos.eda.nokia.com", + "kind": "Queue", + "versions": [ + { + "name": "v1", + "appVersion": "v4.0.1" + }, + { + "name": "v1alpha1", + "deprecated": true, + "appVersion": "v3.0.2+25.4.3" + } + ] + }, + { + "name": "registries.appstore.eda.nokia.com", + "group": "appstore.eda.nokia.com", + "kind": "Registry", + "versions": [ + { + "name": "v1" + } + ] + }, + { + "name": "roles.core.eda.nokia.com", + "group": "core.eda.nokia.com", + "kind": "Role", + "versions": [ + { + "name": "v1" + } + ] + }, + { + "name": "routedinterfaces.services.eda.nokia.com", + "group": "services.eda.nokia.com", + "kind": "RoutedInterface", + "versions": [ + { + "name": "v1", + "appVersion": "v4.0.1" + }, + { + "name": "v1alpha1", + "deprecated": true, + "appVersion": "v3.0.2+25.4.3" + } + ] + }, + { + "name": "routedinterfacestates.services.eda.nokia.com", + "group": "services.eda.nokia.com", + "kind": "", + "versions": [ + { + "name": "v1" + }, + { + "name": "v1alpha1", + "deprecated": true + } + ] + }, + { + "name": "routelookups.routing.eda.nokia.com", + "group": "routing.eda.nokia.com", + "kind": "RouteLookup", + "versions": [ + { + "name": "v1alpha1", + "appVersion": "v4.0.1" + } + ] + }, + { + "name": "routerdeployments.services.eda.nokia.com", + "group": "services.eda.nokia.com", + "kind": "RouterDeployment", + "versions": [ + { + "name": "v1", + "appVersion": "v4.0.1" + }, + { + "name": "v1alpha1", + "deprecated": true, + "appVersion": "v3.0.2+25.4.3" + } + ] + }, + { + "name": "routereflectorclients.protocols.eda.nokia.com", + "group": "protocols.eda.nokia.com", + "kind": "RouteReflectorClient", + "versions": [ + { + "name": "v1", + "appVersion": "v4.0.1" + }, + { + "name": "v1alpha1", + "deprecated": true, + "appVersion": "v3.0.2+25.4.3" + } + ] + }, + { + "name": "routereflectorclientstates.protocols.eda.nokia.com", + "group": "protocols.eda.nokia.com", + "kind": "", + "versions": [ + { + "name": "v1" + }, + { + "name": "v1alpha1", + "deprecated": true + } + ] + }, + { + "name": "routereflectors.protocols.eda.nokia.com", + "group": "protocols.eda.nokia.com", + "kind": "RouteReflector", + "versions": [ + { + "name": "v1", + "appVersion": "v4.0.1" + }, + { + "name": "v1alpha1", + "deprecated": true, + "appVersion": "v3.0.2+25.4.3" + } + ] + }, + { + "name": "routereflectorstates.protocols.eda.nokia.com", + "group": "protocols.eda.nokia.com", + "kind": "", + "versions": [ + { + "name": "v1" + }, + { + "name": "v1alpha1", + "deprecated": true + } + ] + }, + { + "name": "routers.services.eda.nokia.com", + "group": "services.eda.nokia.com", + "kind": "Router", + "versions": [ + { + "name": "v1", + "appVersion": "v4.0.1" + }, + { + "name": "v1alpha1", + "deprecated": true, + "appVersion": "v3.0.2+25.4.3" + } + ] + }, + { + "name": "routerstates.services.eda.nokia.com", + "group": "services.eda.nokia.com", + "kind": "", + "versions": [ + { + "name": "v1" + }, + { + "name": "v1alpha1", + "deprecated": true + } + ] + }, + { + "name": "setupenvs.environment.eda.nokia.com", + "group": "environment.eda.nokia.com", + "kind": "SetupEnv", + "versions": [ + { + "name": "v1alpha1", + "appVersion": "v4.0.1" + } + ] + }, + { + "name": "simlinks.core.eda.nokia.com", + "group": "core.eda.nokia.com", + "kind": "SimLink", + "versions": [ + { + "name": "v1" + } + ] + }, + { + "name": "simnodes.core.eda.nokia.com", + "group": "core.eda.nokia.com", + "kind": "SimNode", + "versions": [ + { + "name": "v1" + } + ] + }, + { + "name": "stateconfigs.services.eda.nokia.com", + "group": "services.eda.nokia.com", + "kind": "StateConfig", + "versions": [ + { + "name": "v1", + "appVersion": "v4.0.1" + }, + { + "name": "v1alpha1", + "deprecated": true, + "appVersion": "v3.0.2+25.4.3" + } + ] + }, + { + "name": "staticroutes.protocols.eda.nokia.com", + "group": "protocols.eda.nokia.com", + "kind": "StaticRoute", + "versions": [ + { + "name": "v1", + "appVersion": "v4.0.1" + }, + { + "name": "v1alpha1", + "deprecated": true, + "appVersion": "v3.0.2+25.4.3" + } + ] + }, + { + "name": "subnetallocationpools.core.eda.nokia.com", + "group": "core.eda.nokia.com", + "kind": "SubnetAllocationPool", + "versions": [ + { + "name": "v1" + } + ] + }, + { + "name": "systeminterfaces.routing.eda.nokia.com", + "group": "routing.eda.nokia.com", + "kind": "SystemInterface", + "versions": [ + { + "name": "v1alpha1", + "appVersion": "v4.0.1" + } + ] + }, + { + "name": "systeminterfacestates.routing.eda.nokia.com", + "group": "routing.eda.nokia.com", + "kind": "", + "versions": [ + { + "name": "v1alpha1" + } + ] + }, + { + "name": "targetnodes.core.eda.nokia.com", + "group": "core.eda.nokia.com", + "kind": "TargetNode", + "versions": [ + { + "name": "v1" + } + ] + }, + { + "name": "techsupports.oam.eda.nokia.com", + "group": "oam.eda.nokia.com", + "kind": "TechSupport", + "versions": [ + { + "name": "v1alpha1", + "appVersion": "v4.0.1" + } + ] + }, + { + "name": "thresholds.oam.eda.nokia.com", + "group": "oam.eda.nokia.com", + "kind": "Threshold", + "versions": [ + { + "name": "v1alpha1", + "appVersion": "v4.0.1" + } + ] + }, + { + "name": "thresholds.platformmetrics.eda.nokia.com", + "group": "platformmetrics.eda.nokia.com", + "kind": "Threshold", + "versions": [ + { + "name": "v1" + } + ] + }, + { + "name": "topobreakouts.core.eda.nokia.com", + "group": "core.eda.nokia.com", + "kind": "TopoBreakout", + "versions": [ + { + "name": "v1" + } + ] + }, + { + "name": "topolinkmonitors.topologies.eda.nokia.com", + "group": "topologies.eda.nokia.com", + "kind": "TopoLinkMonitor", + "versions": [ + { + "name": "v1alpha1", + "appVersion": "v4.0.1" + } + ] + }, + { + "name": "topolinks.core.eda.nokia.com", + "group": "core.eda.nokia.com", + "kind": "TopoLink", + "versions": [ + { + "name": "v1" + } + ] + }, + { + "name": "topolinkstates.topologies.eda.nokia.com", + "group": "topologies.eda.nokia.com", + "kind": "", + "versions": [ + { + "name": "v1alpha1" + } + ] + }, + { + "name": "topologies.topologies.eda.nokia.com", + "group": "topologies.eda.nokia.com", + "kind": "Topology", + "versions": [ + { + "name": "v1alpha1", + "appVersion": "v4.0.1" + } + ] + }, + { + "name": "topologygroupings.topologies.eda.nokia.com", + "group": "topologies.eda.nokia.com", + "kind": "TopologyGrouping", + "versions": [ + { + "name": "v1alpha1", + "appVersion": "v4.0.1" + } + ] + }, + { + "name": "toponodes.core.eda.nokia.com", + "group": "core.eda.nokia.com", + "kind": "TopoNode", + "versions": [ + { + "name": "v1" + } + ] + }, + { + "name": "trafficrateoverlays.topologies.eda.nokia.com", + "group": "topologies.eda.nokia.com", + "kind": "TrafficRateOverlay", + "versions": [ + { + "name": "v1alpha1", + "appVersion": "v4.0.1" + } + ] + }, + { + "name": "transactionresults.core.eda.nokia.com", + "group": "core.eda.nokia.com", + "kind": "TransactionResult", + "versions": [ + { + "name": "v1" + } + ] + }, + { + "name": "transactions.core.eda.nokia.com", + "group": "core.eda.nokia.com", + "kind": "Transaction", + "versions": [ + { + "name": "v1" + } + ] + }, + { + "name": "udpproxies.core.eda.nokia.com", + "group": "core.eda.nokia.com", + "kind": "UdpProxy", + "versions": [ + { + "name": "v1" + } + ] + }, + { + "name": "userdeployments.aaa.eda.nokia.com", + "group": "aaa.eda.nokia.com", + "kind": "UserDeployment", + "versions": [ + { + "name": "v1alpha1", + "appVersion": "v4.0.1" + } + ] + }, + { + "name": "virtualnetworks.services.eda.nokia.com", + "group": "services.eda.nokia.com", + "kind": "VirtualNetwork", + "versions": [ + { + "name": "v1", + "appVersion": "v4.0.1" + }, + { + "name": "v1alpha1", + "deprecated": true, + "appVersion": "v3.0.2+25.4.3" + } + ] + }, + { + "name": "virtualnetworkstates.services.eda.nokia.com", + "group": "services.eda.nokia.com", + "kind": "", + "versions": [ + { + "name": "v1" + }, + { + "name": "v1alpha1", + "deprecated": true + } + ] + }, + { + "name": "vlans.services.eda.nokia.com", + "group": "services.eda.nokia.com", + "kind": "VLAN", + "versions": [ + { + "name": "v1", + "appVersion": "v4.0.1" + }, + { + "name": "v1alpha1", + "deprecated": true, + "appVersion": "v3.0.2+25.4.3" + } + ] + }, + { + "name": "vlanstates.services.eda.nokia.com", + "group": "services.eda.nokia.com", + "kind": "", + "versions": [ + { + "name": "v1" + }, + { + "name": "v1alpha1", + "deprecated": true + } + ] + }, + { + "name": "volumeoverlays.components.eda.nokia.com", + "group": "components.eda.nokia.com", + "kind": "VolumeOverlay", + "versions": [ + { + "name": "v1", + "appVersion": "v4.0.1" + } + ] + }, + { + "name": "waitforinputs.core.eda.nokia.com", + "group": "core.eda.nokia.com", + "kind": "WaitForInput", + "versions": [ + { + "name": "v1" + } + ] + }, + { + "name": "workflowdefinitions.core.eda.nokia.com", + "group": "core.eda.nokia.com", + "kind": "WorkflowDefinition", + "versions": [ + { + "name": "v1" + } + ] + }, + { + "name": "workflows.core.eda.nokia.com", + "group": "core.eda.nokia.com", + "kind": "Workflow", + "versions": [ + { + "name": "v1" + } + ] + } +] \ No newline at end of file diff --git a/static/resources/manifests.core.eda.nokia.com/v1.yaml b/static/resources/25.8.1/manifests.core.eda.nokia.com/v1.yaml similarity index 100% rename from static/resources/manifests.core.eda.nokia.com/v1.yaml rename to static/resources/25.8.1/manifests.core.eda.nokia.com/v1.yaml diff --git a/static/resources/25.8.1/memoryoverlays.components.eda.nokia.com/v1.yaml b/static/resources/25.8.1/memoryoverlays.components.eda.nokia.com/v1.yaml new file mode 100644 index 0000000..8ed1aaa --- /dev/null +++ b/static/resources/25.8.1/memoryoverlays.components.eda.nokia.com/v1.yaml @@ -0,0 +1,69 @@ +name: v1 +schema: + openAPIV3Schema: + description: MemoryOverlay is the Schema for memoryoverlays + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + description: MemoryOverlaySpec defines the desired state of MemoryOverlay + properties: + enabled: + description: Enable or disable the generation of the status of this overlay + type: boolean + topology: + description: Reference to the topology that this overlay is extending. + properties: + group: + description: The group of the application which published the topology this overlay is extending. + type: string + name: + description: The name of the resource which published the topology this overlay is extending. + type: string + version: + description: The version of the application which published the topology this overlay is extending. + type: string + required: + - group + - name + - version + type: object + uiDescription: + description: A description of the overlay to expose in the UI + type: string + uiDescriptionKey: + description: The translation key for the description of the overlay to expose in the UI + type: string + uiName: + description: The name of the overlay to expose in the UI + type: string + uiNameKey: + description: The translation key for the name of the overlay to expose in the UI + type: string + required: + - enabled + - topology + type: object + status: + description: MemoryOverlayStatus defines the observed state of MemoryOverlay + type: object + type: object +served: true +storage: true +subresources: + status: {} diff --git a/static/resources/25.8.1/mirrorfilterdeployments.filters.eda.nokia.com/v1alpha1.yaml b/static/resources/25.8.1/mirrorfilterdeployments.filters.eda.nokia.com/v1alpha1.yaml new file mode 100644 index 0000000..cd68b80 --- /dev/null +++ b/static/resources/25.8.1/mirrorfilterdeployments.filters.eda.nokia.com/v1alpha1.yaml @@ -0,0 +1,43 @@ +name: v1alpha1 +schema: + openAPIV3Schema: + description: MirrorFilterDeployment is the Schema for the mirrorfilterdeployments API + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + description: MirrorFilterDeploymentSpec defines the desired state of MirrorFilterDeployment + properties: + filter: + description: Specifies a filter to deploy on the specified Node + type: string + node: + description: Specifies a Node to deploy this filter on + type: string + required: + - filter + - node + type: object + status: + description: MirrorFilterDeploymentStatus defines the observed state of MirrorFilterDeployment + type: object + type: object +served: true +storage: true +subresources: + status: {} diff --git a/static/resources/mirrorfilters.filters.eda.nokia.com/v1alpha1.yaml b/static/resources/25.8.1/mirrorfilters.filters.eda.nokia.com/v1alpha1.yaml similarity index 100% rename from static/resources/mirrorfilters.filters.eda.nokia.com/v1alpha1.yaml rename to static/resources/25.8.1/mirrorfilters.filters.eda.nokia.com/v1alpha1.yaml diff --git a/static/resources/mirrors.oam.eda.nokia.com/v1alpha1.yaml b/static/resources/25.8.1/mirrors.oam.eda.nokia.com/v1alpha1.yaml similarity index 100% rename from static/resources/mirrors.oam.eda.nokia.com/v1alpha1.yaml rename to static/resources/25.8.1/mirrors.oam.eda.nokia.com/v1alpha1.yaml diff --git a/static/resources/25.8.1/mirrorstates.oam.eda.nokia.com/v1alpha1.yaml b/static/resources/25.8.1/mirrorstates.oam.eda.nokia.com/v1alpha1.yaml new file mode 100644 index 0000000..091e18c --- /dev/null +++ b/static/resources/25.8.1/mirrorstates.oam.eda.nokia.com/v1alpha1.yaml @@ -0,0 +1,73 @@ +name: v1alpha1 +schema: + openAPIV3Schema: + description: MirrorState is the Schema for the mirrorstates API + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + description: MirrorStateSpec defines the desired state of MirrorState + properties: + mirrorID: + description: Mirror Identifier used as the name of the mirror + type: string + subinterfaces: + description: List of members in this Interface + items: + properties: + configuredSource: + description: Indicates what is driving the particular subinterface to be selected as a mirror source. + enum: + - VLAN + - BridgeInterface + - Subinterface + - Interface + - FilterV4 + - FilterV6 + type: string + interface: + description: Node specific interface name. + type: string + node: + description: Reference to Node object. + type: string + operatingSystem: + description: Operating System of the Node. + type: string + subinterfaceIndex: + description: Index allocated to the subinterface which is being mirrored. If an interface is used as a source, this will not be set. + type: integer + vlanID: + description: vlan assigned to this subinterface. + type: string + required: + - configuredSource + - interface + - node + - operatingSystem + type: object + type: array + type: object + status: + description: MirrorStateStatus defines the observed state of MirrorState + type: object + type: object +served: true +storage: true +subresources: + status: {} diff --git a/static/resources/25.8.1/monitoraggregatestates.components.eda.nokia.com/v1.yaml b/static/resources/25.8.1/monitoraggregatestates.components.eda.nokia.com/v1.yaml new file mode 100644 index 0000000..b74454e --- /dev/null +++ b/static/resources/25.8.1/monitoraggregatestates.components.eda.nokia.com/v1.yaml @@ -0,0 +1,39 @@ +name: v1 +schema: + openAPIV3Schema: + description: MonitorAggregateState is the Schema for the monitoraggregatestates API + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + description: MonitorAggregateStateSpec defines the desired state of MonitorAggregateState + properties: + targets: + description: List of targets monitored by this instance + items: + type: string + type: array + type: object + status: + description: MonitorAggregateStateStatus defines the observed state of MonitorAggregateState + type: object + type: object +served: true +storage: true +subresources: + status: {} diff --git a/static/resources/25.8.1/monitoraggregatestates.system.eda.nokia.com/v1alpha1.yaml b/static/resources/25.8.1/monitoraggregatestates.system.eda.nokia.com/v1alpha1.yaml new file mode 100644 index 0000000..0189420 --- /dev/null +++ b/static/resources/25.8.1/monitoraggregatestates.system.eda.nokia.com/v1alpha1.yaml @@ -0,0 +1,39 @@ +name: v1alpha1 +schema: + openAPIV3Schema: + description: MonitorAggregateState is the Schema for the monitoraggregatestates API + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + description: MonitorAggregateStateSpec defines the desired state of MonitorAggregateState + properties: + nodes: + description: List of TopoNodes monitored by this instance + items: + type: string + type: array + type: object + status: + description: MonitorAggregateStateStatus defines the observed state of MonitorAggregateState + type: object + type: object +served: true +storage: true +subresources: + status: {} diff --git a/static/resources/25.8.1/monitors.components.eda.nokia.com/v1.yaml b/static/resources/25.8.1/monitors.components.eda.nokia.com/v1.yaml new file mode 100644 index 0000000..eb5e3dc --- /dev/null +++ b/static/resources/25.8.1/monitors.components.eda.nokia.com/v1.yaml @@ -0,0 +1,182 @@ +name: v1 +schema: + openAPIV3Schema: + description: Monitor is the Schema for the monitors API + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + description: MonitorSpec defines the desired state of Monitor + properties: + cpu: + description: CPU monitoring for targets matching this Monitor. + properties: + enabled: + default: true + description: Enable or disable CPU monitoring. + type: boolean + utilization: + description: Parameters relating to CPU utilization monitoring. + properties: + criticalThreshold: + default: 95 + description: |- + The minimum average utilization over the last 1 minute to trigger a critical alarm. + This value must be greater than the majorThreshold. + maximum: 100 + minimum: 1 + type: integer + fallingDelta: + default: 5 + description: |- + The delta in which a triggered threshold must drop below to clear an alarm. + For example, with a criticalThreshold of 90 and a fallingDelta of 5, the critical alarm will clear when the utilization drops below 85. + maximum: 25 + minimum: 1 + type: integer + majorThreshold: + default: 90 + description: |- + The minimum average utilization over the last 1 minute to trigger a major alarm. + This value must be greater than the minorThreshold. + maximum: 100 + minimum: 1 + type: integer + minorThreshold: + default: 80 + description: The minimum average utilization over the last 1 minute to trigger a minor alarm. + maximum: 100 + minimum: 1 + type: integer + type: object + required: + - enabled + type: object + memory: + description: Memory monitoring for targets matching this Monitor. + properties: + enabled: + default: true + description: Enable or disable memory monitoring. + type: boolean + utilization: + description: Parameters relating to memory utilization monitoring. + properties: + criticalThreshold: + default: 95 + description: |- + The minimum average utilization over the last 1 minute to trigger a critical alarm. + This value must be greater than the majorThreshold. + maximum: 100 + minimum: 1 + type: integer + fallingDelta: + default: 5 + description: |- + The delta in which a triggered threshold must drop below to clear an alarm. + For example, with a criticalThreshold of 90 and a fallingDelta of 5, the critical alarm will clear when the utilization drops below 85. + maximum: 25 + minimum: 1 + type: integer + majorThreshold: + default: 90 + description: |- + The minimum average utilization over the last 1 minute to trigger a major alarm. + This value must be greater than the minorThreshold. + maximum: 100 + minimum: 1 + type: integer + minorThreshold: + default: 80 + description: The minimum average utilization over the last 1 minute to trigger a minor alarm. + maximum: 100 + minimum: 1 + type: integer + type: object + required: + - enabled + type: object + targetSelector: + description: Selector to use when including targets to monitor. + items: + type: string + type: array + targets: + description: References to targets to monitor. + items: + type: string + type: array + volume: + description: Volume monitoring for targets matching this Monitor. + properties: + enabled: + default: true + description: Enable or disable volume monitoring. + type: boolean + utilization: + description: Parameters relating to volume utilization monitoring. + properties: + criticalThreshold: + default: 95 + description: |- + The minimum average utilization over the last 1 minute to trigger a critical alarm. + This value must be greater than the majorThreshold. + maximum: 100 + minimum: 1 + type: integer + fallingDelta: + default: 5 + description: |- + The delta in which a triggered threshold must drop below to clear an alarm. + For example, with a criticalThreshold of 90 and a fallingDelta of 5, the critical alarm will clear when the utilization drops below 85. + maximum: 25 + minimum: 1 + type: integer + majorThreshold: + default: 90 + description: |- + The minimum average utilization over the last 1 minute to trigger a major alarm. + This value must be greater than the minorThreshold. + maximum: 100 + minimum: 1 + type: integer + minorThreshold: + default: 80 + description: The minimum average utilization over the last 1 minute to trigger a minor alarm. + maximum: 100 + minimum: 1 + type: integer + type: object + required: + - enabled + type: object + type: object + status: + description: MonitorStatus defines the observed state of Monitor + properties: + targets: + description: Targets being monitored. + items: + type: string + type: array + type: object + type: object +served: true +storage: true +subresources: + status: {} diff --git a/static/resources/25.8.1/monitors.system.eda.nokia.com/v1alpha1.yaml b/static/resources/25.8.1/monitors.system.eda.nokia.com/v1alpha1.yaml new file mode 100644 index 0000000..7b22ea8 --- /dev/null +++ b/static/resources/25.8.1/monitors.system.eda.nokia.com/v1alpha1.yaml @@ -0,0 +1,182 @@ +name: v1alpha1 +schema: + openAPIV3Schema: + description: Monitor is the Schema for the monitors API + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + description: MonitorSpec defines the desired state of Monitor + properties: + cpu: + description: CPU monitoring for targets matching this Monitor. + properties: + enabled: + default: true + description: Enable or disable CPU monitoring. + type: boolean + utilization: + description: Parameters relating to CPU utilization monitoring. + properties: + criticalThreshold: + default: 95 + description: |- + The minimum average utilization over the last 1 minute to trigger a critical alarm. + This value must be greater than the majorThreshold. + maximum: 100 + minimum: 1 + type: integer + fallingDelta: + default: 5 + description: |- + The delta in which a triggered threshold must drop below to clear an alarm. + For example, with a criticalThreshold of 90 and a fallingDelta of 5, the critical alarm will clear when the utilization drops below 85. + maximum: 25 + minimum: 1 + type: integer + majorThreshold: + default: 90 + description: |- + The minimum average utilization over the last 1 minute to trigger a major alarm. + This value must be greater than the minorThreshold. + maximum: 100 + minimum: 1 + type: integer + minorThreshold: + default: 80 + description: The minimum average utilization over the last 1 minute to trigger a minor alarm. + maximum: 100 + minimum: 1 + type: integer + type: object + required: + - enabled + type: object + disk: + description: Disk monitoring for targets matching this Monitor. + properties: + enabled: + default: true + description: Enable or disable disk monitoring. + type: boolean + utilization: + description: Parameters relating to disk utilization monitoring. + properties: + criticalThreshold: + default: 95 + description: |- + The minimum average utilization over the last 1 minute to trigger a critical alarm. + This value must be greater than the majorThreshold. + maximum: 100 + minimum: 1 + type: integer + fallingDelta: + default: 5 + description: |- + The delta in which a triggered threshold must drop below to clear an alarm. + For example, with a criticalThreshold of 90 and a fallingDelta of 5, the critical alarm will clear when the utilization drops below 85. + maximum: 25 + minimum: 1 + type: integer + majorThreshold: + default: 90 + description: |- + The minimum average utilization over the last 1 minute to trigger a major alarm. + This value must be greater than the minorThreshold. + maximum: 100 + minimum: 1 + type: integer + minorThreshold: + default: 80 + description: The minimum average utilization over the last 1 minute to trigger a minor alarm. + maximum: 100 + minimum: 1 + type: integer + type: object + required: + - enabled + type: object + memory: + description: Memory monitoring for targets matching this Monitor. + properties: + enabled: + default: true + description: Enable or disable memory monitoring. + type: boolean + utilization: + description: Parameters relating to memory utilization monitoring. + properties: + criticalThreshold: + default: 95 + description: |- + The minimum average utilization over the last 1 minute to trigger a critical alarm. + This value must be greater than the majorThreshold. + maximum: 100 + minimum: 1 + type: integer + fallingDelta: + default: 5 + description: |- + The delta in which a triggered threshold must drop below to clear an alarm. + For example, with a criticalThreshold of 90 and a fallingDelta of 5, the critical alarm will clear when the utilization drops below 85. + maximum: 25 + minimum: 1 + type: integer + majorThreshold: + default: 90 + description: |- + The minimum average utilization over the last 1 minute to trigger a major alarm. + This value must be greater than the minorThreshold. + maximum: 100 + minimum: 1 + type: integer + minorThreshold: + default: 80 + description: The minimum average utilization over the last 1 minute to trigger a minor alarm. + maximum: 100 + minimum: 1 + type: integer + type: object + required: + - enabled + type: object + nodeSelector: + description: Selector to use when including TopoNodes to monitor. + items: + type: string + type: array + nodes: + description: References to TopoNodes to monitor. + items: + type: string + type: array + type: object + status: + description: MonitorStatus defines the observed state of Monitor + properties: + nodes: + description: TopoNodes being monitored. + items: + type: string + type: array + type: object + type: object +served: true +storage: true +subresources: + status: {} diff --git a/static/resources/25.8.1/monitorstates.components.eda.nokia.com/v1.yaml b/static/resources/25.8.1/monitorstates.components.eda.nokia.com/v1.yaml new file mode 100644 index 0000000..36ff5e5 --- /dev/null +++ b/static/resources/25.8.1/monitorstates.components.eda.nokia.com/v1.yaml @@ -0,0 +1,194 @@ +name: v1 +schema: + openAPIV3Schema: + description: MonitorState is the Schema for the monitorstates API + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + description: MonitorStateSpec defines the desired state of MonitorState + properties: + monitorSpec: + description: The spec of the input Monitor + properties: + cpu: + description: CPU monitoring for targets matching this Monitor. + properties: + enabled: + default: true + description: Enable or disable CPU monitoring. + type: boolean + utilization: + description: Parameters relating to CPU utilization monitoring. + properties: + criticalThreshold: + default: 95 + description: |- + The minimum average utilization over the last 1 minute to trigger a critical alarm. + This value must be greater than the majorThreshold. + maximum: 100 + minimum: 1 + type: integer + fallingDelta: + default: 5 + description: |- + The delta in which a triggered threshold must drop below to clear an alarm. + For example, with a criticalThreshold of 90 and a fallingDelta of 5, the critical alarm will clear when the utilization drops below 85. + maximum: 25 + minimum: 1 + type: integer + majorThreshold: + default: 90 + description: |- + The minimum average utilization over the last 1 minute to trigger a major alarm. + This value must be greater than the minorThreshold. + maximum: 100 + minimum: 1 + type: integer + minorThreshold: + default: 80 + description: The minimum average utilization over the last 1 minute to trigger a minor alarm. + maximum: 100 + minimum: 1 + type: integer + type: object + required: + - enabled + type: object + memory: + description: Memory monitoring for targets matching this Monitor. + properties: + enabled: + default: true + description: Enable or disable memory monitoring. + type: boolean + utilization: + description: Parameters relating to memory utilization monitoring. + properties: + criticalThreshold: + default: 95 + description: |- + The minimum average utilization over the last 1 minute to trigger a critical alarm. + This value must be greater than the majorThreshold. + maximum: 100 + minimum: 1 + type: integer + fallingDelta: + default: 5 + description: |- + The delta in which a triggered threshold must drop below to clear an alarm. + For example, with a criticalThreshold of 90 and a fallingDelta of 5, the critical alarm will clear when the utilization drops below 85. + maximum: 25 + minimum: 1 + type: integer + majorThreshold: + default: 90 + description: |- + The minimum average utilization over the last 1 minute to trigger a major alarm. + This value must be greater than the minorThreshold. + maximum: 100 + minimum: 1 + type: integer + minorThreshold: + default: 80 + description: The minimum average utilization over the last 1 minute to trigger a minor alarm. + maximum: 100 + minimum: 1 + type: integer + type: object + required: + - enabled + type: object + targetSelector: + description: Selector to use when including targets to monitor. + items: + type: string + type: array + targets: + description: References to targets to monitor. + items: + type: string + type: array + volume: + description: Volume monitoring for targets matching this Monitor. + properties: + enabled: + default: true + description: Enable or disable volume monitoring. + type: boolean + utilization: + description: Parameters relating to volume utilization monitoring. + properties: + criticalThreshold: + default: 95 + description: |- + The minimum average utilization over the last 1 minute to trigger a critical alarm. + This value must be greater than the majorThreshold. + maximum: 100 + minimum: 1 + type: integer + fallingDelta: + default: 5 + description: |- + The delta in which a triggered threshold must drop below to clear an alarm. + For example, with a criticalThreshold of 90 and a fallingDelta of 5, the critical alarm will clear when the utilization drops below 85. + maximum: 25 + minimum: 1 + type: integer + majorThreshold: + default: 90 + description: |- + The minimum average utilization over the last 1 minute to trigger a major alarm. + This value must be greater than the minorThreshold. + maximum: 100 + minimum: 1 + type: integer + minorThreshold: + default: 80 + description: The minimum average utilization over the last 1 minute to trigger a minor alarm. + maximum: 100 + minimum: 1 + type: integer + type: object + required: + - enabled + type: object + type: object + operatingSystem: + description: The operating system of the target being monitored + type: string + target: + description: Reference to the target being monitored + type: string + version: + description: The version of the target being monitored + type: string + required: + - monitorSpec + - operatingSystem + - target + - version + type: object + status: + description: MonitorStateStatus defines the observed state of MonitorState + type: object + type: object +served: true +storage: true +subresources: + status: {} diff --git a/static/resources/25.8.1/monitorstates.system.eda.nokia.com/v1alpha1.yaml b/static/resources/25.8.1/monitorstates.system.eda.nokia.com/v1alpha1.yaml new file mode 100644 index 0000000..7281cd4 --- /dev/null +++ b/static/resources/25.8.1/monitorstates.system.eda.nokia.com/v1alpha1.yaml @@ -0,0 +1,194 @@ +name: v1alpha1 +schema: + openAPIV3Schema: + description: MonitorState is the Schema for the monitorstates API + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + description: MonitorStateSpec defines the desired state of MonitorState + properties: + monitorSpec: + description: The spec of the input Monitor + properties: + cpu: + description: CPU monitoring for targets matching this Monitor. + properties: + enabled: + default: true + description: Enable or disable CPU monitoring. + type: boolean + utilization: + description: Parameters relating to CPU utilization monitoring. + properties: + criticalThreshold: + default: 95 + description: |- + The minimum average utilization over the last 1 minute to trigger a critical alarm. + This value must be greater than the majorThreshold. + maximum: 100 + minimum: 1 + type: integer + fallingDelta: + default: 5 + description: |- + The delta in which a triggered threshold must drop below to clear an alarm. + For example, with a criticalThreshold of 90 and a fallingDelta of 5, the critical alarm will clear when the utilization drops below 85. + maximum: 25 + minimum: 1 + type: integer + majorThreshold: + default: 90 + description: |- + The minimum average utilization over the last 1 minute to trigger a major alarm. + This value must be greater than the minorThreshold. + maximum: 100 + minimum: 1 + type: integer + minorThreshold: + default: 80 + description: The minimum average utilization over the last 1 minute to trigger a minor alarm. + maximum: 100 + minimum: 1 + type: integer + type: object + required: + - enabled + type: object + disk: + description: Disk monitoring for targets matching this Monitor. + properties: + enabled: + default: true + description: Enable or disable disk monitoring. + type: boolean + utilization: + description: Parameters relating to disk utilization monitoring. + properties: + criticalThreshold: + default: 95 + description: |- + The minimum average utilization over the last 1 minute to trigger a critical alarm. + This value must be greater than the majorThreshold. + maximum: 100 + minimum: 1 + type: integer + fallingDelta: + default: 5 + description: |- + The delta in which a triggered threshold must drop below to clear an alarm. + For example, with a criticalThreshold of 90 and a fallingDelta of 5, the critical alarm will clear when the utilization drops below 85. + maximum: 25 + minimum: 1 + type: integer + majorThreshold: + default: 90 + description: |- + The minimum average utilization over the last 1 minute to trigger a major alarm. + This value must be greater than the minorThreshold. + maximum: 100 + minimum: 1 + type: integer + minorThreshold: + default: 80 + description: The minimum average utilization over the last 1 minute to trigger a minor alarm. + maximum: 100 + minimum: 1 + type: integer + type: object + required: + - enabled + type: object + memory: + description: Memory monitoring for targets matching this Monitor. + properties: + enabled: + default: true + description: Enable or disable memory monitoring. + type: boolean + utilization: + description: Parameters relating to memory utilization monitoring. + properties: + criticalThreshold: + default: 95 + description: |- + The minimum average utilization over the last 1 minute to trigger a critical alarm. + This value must be greater than the majorThreshold. + maximum: 100 + minimum: 1 + type: integer + fallingDelta: + default: 5 + description: |- + The delta in which a triggered threshold must drop below to clear an alarm. + For example, with a criticalThreshold of 90 and a fallingDelta of 5, the critical alarm will clear when the utilization drops below 85. + maximum: 25 + minimum: 1 + type: integer + majorThreshold: + default: 90 + description: |- + The minimum average utilization over the last 1 minute to trigger a major alarm. + This value must be greater than the minorThreshold. + maximum: 100 + minimum: 1 + type: integer + minorThreshold: + default: 80 + description: The minimum average utilization over the last 1 minute to trigger a minor alarm. + maximum: 100 + minimum: 1 + type: integer + type: object + required: + - enabled + type: object + nodeSelector: + description: Selector to use when including TopoNodes to monitor. + items: + type: string + type: array + nodes: + description: References to TopoNodes to monitor. + items: + type: string + type: array + type: object + node: + description: Reference to the TopoNode being monitored + type: string + operatingSystem: + description: The operating system of the TopoNode being monitored + type: string + version: + description: The version of the TopoNode being monitored + type: string + required: + - monitorSpec + - node + - operatingSystem + - version + type: object + status: + description: MonitorStateStatus defines the observed state of MonitorState + type: object + type: object +served: true +storage: true +subresources: + status: {} diff --git a/static/resources/25.8.1/namespaces.core.eda.nokia.com/v1.yaml b/static/resources/25.8.1/namespaces.core.eda.nokia.com/v1.yaml new file mode 100644 index 0000000..fbd19f9 --- /dev/null +++ b/static/resources/25.8.1/namespaces.core.eda.nokia.com/v1.yaml @@ -0,0 +1,39 @@ +name: v1 +schema: + openAPIV3Schema: + description: Namespace is the Schema for the namespaces API + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + description: |- + A Namespace is a logical partition within the cluster that provides a mechanism for isolating resources. + Namespaces allow for resource segmentation, enabling multiple teams or applications to share the same cluster without conflict. + properties: + description: + description: An optional description of the use of the namespace. + type: string + type: object + status: + description: NamespaceStatus defines the observed state of Namespace + type: object + type: object +served: true +storage: true +subresources: + status: {} diff --git a/static/resources/25.8.1/nodeconfigs.core.eda.nokia.com/v1.yaml b/static/resources/25.8.1/nodeconfigs.core.eda.nokia.com/v1.yaml new file mode 100644 index 0000000..36330fa --- /dev/null +++ b/static/resources/25.8.1/nodeconfigs.core.eda.nokia.com/v1.yaml @@ -0,0 +1,78 @@ +name: v1 +schema: + openAPIV3Schema: + description: NodeConfig is the Schema for the nodeconfigs API + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + description: NodeConfigSpec defines the desired state of NodeConfig + properties: + configs: + description: An array of configurations (paths and corresponding configs) applied in this NodeConfig + items: + properties: + config: + description: |- + For Create/Update operations, this is a mandatory json object representing the configuration. + For Delete operation, this is an optional json array representing the fields to delete + type: string + encrypt: + description: |- + Encrypt the payload of the config. + For Delete operation, this does not apply. + type: boolean + operation: + description: Operation to perform on the configuration + enum: + - Create + - Update + - Delete + type: string + path: + description: Path to place the configuration on the node, in json path format + type: string + required: + - operation + - path + type: object + type: array + node-endpoint: + description: Reference to a TopoNode to which this config is applied + type: string + priority: + default: 0 + description: |- + Sets the priority of this NodeConfig, with lower priorities being overwritten by higher priorities. + Negative priorities may be used to indicate a lower-than-default priority. + format: int32 + maximum: 100 + minimum: -100 + type: integer + required: + - configs + - node-endpoint + type: object + status: + description: NodeConfigStatus defines the observed state of NodeConfig + type: object + type: object +served: true +storage: true +subresources: + status: {} diff --git a/static/resources/25.8.1/nodegroupdeployments.aaa.eda.nokia.com/v1alpha1.yaml b/static/resources/25.8.1/nodegroupdeployments.aaa.eda.nokia.com/v1alpha1.yaml new file mode 100644 index 0000000..06636ba --- /dev/null +++ b/static/resources/25.8.1/nodegroupdeployments.aaa.eda.nokia.com/v1alpha1.yaml @@ -0,0 +1,43 @@ +name: v1alpha1 +schema: + openAPIV3Schema: + description: NodeGroupDeployment is the Schema for the nodegroupdeployments API + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + description: NodeGroupDeploymentSpec defines the desired state of NodeGroupDeployment + properties: + group: + description: Specifies a group to deploy on the specified Node + type: string + node: + description: Specifies a Node to deploy this group on + type: string + required: + - group + - node + type: object + status: + description: NodeGroupDeploymentStatus defines the observed state of a NodeGroupDeployment + type: object + type: object +served: true +storage: true +subresources: + status: {} diff --git a/static/resources/25.8.1/nodegroups.aaa.eda.nokia.com/v1alpha1.yaml b/static/resources/25.8.1/nodegroups.aaa.eda.nokia.com/v1alpha1.yaml new file mode 100644 index 0000000..7bf41f5 --- /dev/null +++ b/static/resources/25.8.1/nodegroups.aaa.eda.nokia.com/v1alpha1.yaml @@ -0,0 +1,105 @@ +name: v1alpha1 +schema: + openAPIV3Schema: + description: NodeGroup is the Schema for the nodegroups API + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + description: |- + NodeGroup is a representation of a group on a node, including the services it has access to, any RBAC, and TACACS configuration. + NodeGroups are deployed to nodes by NodeUser or other permission-consuming resources. + properties: + groupName: + description: Set the local name for this group. If not provided, the resource name will be used. + type: string + rules: + description: Rules for this group. + items: + properties: + action: + default: ReadWrite + description: Set the action for this entry. + enum: + - Deny + - ReadWrite + - Read + type: string + match: + description: |- + Set the match for this entry. This is a string to match input against - for example "interface" for srl or "configure port" for sros. + Rules here should be specified in the target specific format. + type: string + operatingSystem: + default: srl + description: |- + Operating system to match against for this rule. + Operating system to deploy this rule to. + enum: + - srl + - sros + type: string + required: + - action + - operatingSystem + type: object + type: array + services: + description: Enabled services for this group + items: + enum: + - CLI + - FTP + - GNMI + - GNOI + - GNSI + - GRIBI + - Reflection + - JSON-RPC + - NETCONF + type: string + type: array + superuser: + description: Make members of this group superusers. + type: boolean + tacacs: + description: TACACS configuration. + properties: + privilegeLevel: + description: Set the privilege level for this group. + maximum: 15 + minimum: 0 + type: integer + type: object + required: + - services + type: object + status: + description: Deployment status of this NodeGroup. + properties: + nodes: + description: List of TopoNodes group has been deployed to. + items: + type: string + type: array + type: object + type: object +served: true +storage: true +subresources: + status: {} diff --git a/static/resources/25.8.1/nodeprofiles.core.eda.nokia.com/v1.yaml b/static/resources/25.8.1/nodeprofiles.core.eda.nokia.com/v1.yaml new file mode 100644 index 0000000..7f55d0c --- /dev/null +++ b/static/resources/25.8.1/nodeprofiles.core.eda.nokia.com/v1.yaml @@ -0,0 +1,366 @@ +additionalPrinterColumns: + - jsonPath: .spec.operatingSystem + name: OS + type: string + - jsonPath: .spec.version + name: Version + type: string + - jsonPath: .spec.nodeUser + name: Node User + type: string + - jsonPath: .spec.transport + name: Transport + type: string + - jsonPath: .spec.port + name: Port + type: string +name: v1 +schema: + openAPIV3Schema: + description: NodeProfile is the Schema for the toponodes API + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + description: NodeProfileSpec defines the desired state of NodeProfile + properties: + annotate: + default: false + description: Indicates if NPP should annotate sent configuration. + type: boolean + containerImage: + description: Container image to use when simulating TopoNodes referencing this NodeProfile, e.g. ghcr.io/nokia/srlinux:24.7.1. + type: string + dhcp: + description: DHCP options to use when onboarding the TopoNode. Optional if not bootstrapping using EDA. + properties: + dhcp4Options: + description: DHCPv4 options to return to TopoNodes referencing this NodeProfile. + items: + properties: + option: + description: DHCPv4 option to return to the TopoNode. + enum: + - 1-SubnetMask + - 2-TimeOffset + - 3-Router + - 4-TimeServer + - 5-NameServer + - 6-DomainNameServer + - 7-LogServer + - 8-QuoteServer + - 9-LPRServer + - 10-ImpressServer + - 11-ResourceLocationServer + - 12-HostName + - 13-BootFileSize + - 14-MeritDumpFile + - 15-DomainName + - 16-SwapServer + - 17-RootPath + - 18-ExtensionsPath + - 19-IPForwarding + - 20-NonLocalSourceRouting + - 21-PolicyFilter + - 22-MaximumDatagramAssemblySize + - 23-DefaultIPTTL + - 24-PathMTUAgingTimeout + - 25-PathMTUPlateauTable + - 26-InterfaceMTU + - 27-AllSubnetsAreLocal + - 28-BroadcastAddress + - 29-PerformMaskDiscovery + - 30-MaskSupplier + - 31-PerformRouterDiscovery + - 32-RouterSolicitationAddress + - 33-StaticRoutingTable + - 34-TrailerEncapsulation + - 35-ArpCacheTimeout + - 36-EthernetEncapsulation + - 37-DefaulTCPTTL + - 38-TCPKeepaliveInterval + - 39-TCPKeepaliveGarbage + - 40-NetworkInformationServiceDomain + - 41-NetworkInformationServers + - 42-NTPServers + - 43-VendorSpecificInformation + - 44-NetBIOSOverTCPIPNameServer + - 45-NetBIOSOverTCPIPDatagramDistributionServer + - 46-NetBIOSOverTCPIPNodeType + - 47-NetBIOSOverTCPIPScope + - 48-XWindowSystemFontServer + - 49-XWindowSystemDisplayManager + - 50-RequestedIPAddress + - 51-IPAddressLeaseTime + - 52-OptionOverload + - 53-DHCPMessageType + - 54-ServerIdentifier + - 55-ParameterRequestList + - 56-Message + - 57-MaximumDHCPMessageSize + - 58-RenewTimeValue + - 59-RebindingTimeValue + - 60-ClassIdentifier + - 61-ClientIdentifier + - 62-NetWareIPDomainName + - 63-NetWareIPInformation + - 64-NetworkInformationServicePlusDomain + - 65-NetworkInformationServicePlusServers + - 66-TFTPServerName + - 67-BootfileName + - 68-MobileIPHomeAgent + - 69-SimpleMailTransportProtocolServer + - 70-PostOfficeProtocolServer + - 71-NetworkNewsTransportProtocolServer + - 72-DefaultWorldWideWebServer + - 73-DefaultFingerServer + - 74-DefaultInternetRelayChatServer + - 75-StreetTalkServer + - 76-StreetTalkDirectoryAssistanceServer + - 77-UserClassInformation + - 78-SLPDirectoryAgent + - 79-SLPServiceScope + - 80-RapidCommit + - 81-FQDN + - 82-RelayAgentInformation + - 83-InternetStorageNameService + - 85-NDSServers + - 86-NDSTreeName + - 87-NDSContext + - 88-BCMCSControllerDomainNameList + - 89-BCMCSControllerIPv4AddressList + - 90-Authentication + - 91-ClientLastTransactionTime + - 92-AssociatedIP + - 93-ClientSystemArchitectureType + - 94-ClientNetworkInterfaceIdentifier + - 95-LDAP + - 97-ClientMachineIdentifier + - 98-OpenGroupUserAuthentication + - 99-GeoConfCivic + - 100-IEEE10031TZString + - 101-ReferenceToTZDatabase + - 112-NetInfoParentServerAddress + - 113-NetInfoParentServerTag + - 114-URL + - 116-AutoConfigure + - 117-NameServiceSearch + - 118-SubnetSelection + - 119-DNSDomainSearchList + - 120-SIPServers + - 121-ClasslessStaticRoute + - 122-CCC + - 123-GeoConf + - 124-VendorIdentifyingVendorClass + - 125-VendorIdentifyingVendorSpecific + - 128-TFTPServerIPAddress + - 129-CallServerIPAddress + - 130-DiscriminationString + - 131-RemoteStatisticsServerIPAddress + - 132-8021PVLANID + - 133-8021QL2Priority + - 134-DiffservCodePoint + - 135-HTTPProxyForPhoneSpecificApplications + - 136-PANAAuthenticationAgent + - 137-LoSTServer + - 138-CAPWAPAccessControllerAddresses + - 139-OPTIONIPv4AddressMoS + - 140-OPTIONIPv4FQDNMoS + - 141-SIPUAConfigurationServiceDomains + - 142-OPTIONIPv4AddressANDSF + - 143-OPTIONIPv6AddressANDSF + - 150-TFTPServerAddress + - 151-StatusCode + - 152-BaseTime + - 153-StartTimeOfState + - 154-QueryStartTime + - 155-QueryEndTime + - 156-DHCPState + - 157-DataSource + - 175-Etherboot + - 176-IPTelephone + - 177-EtherbootPacketCableAndCableHome + - 208-PXELinuxMagicString + - 209-PXELinuxConfigFile + - 210-PXELinuxPathPrefix + - 211-PXELinuxRebootTime + - 212-OPTION6RD + - 213-OPTIONv4AccessDomain + - 220-SubnetAllocation + - 221-VirtualSubnetAllocation + - 224-Reserved + - 225-Reserved + - 226-Reserved + - 227-Reserved + - 228-Reserved + - 229-Reserved + - 230-Reserved + - 231-Reserved + - 232-Reserved + - 233-Reserved + - 234-Reserved + - 235-Reserved + - 236-Reserved + - 237-Reserved + - 238-Reserved + - 239-Reserved + - 240-Reserved + - 241-Reserved + - 242-Reserved + - 243-Reserved + - 244-Reserved + - 245-Reserved + - 246-Reserved + - 247-Reserved + - 248-Reserved + - 249-Reserved + - 250-Reserved + - 251-Reserved + - 252-Reserved + - 253-Reserved + - 254-Reserved + - 255-End + type: string + value: + description: Value to return to the TopoNode for the specified option. + items: + type: string + minItems: 1 + type: array + required: + - option + - value + type: object + type: array + dhcp6Options: + description: DHCPv6 options to return to TopoNodes referencing this NodeProfile. + items: + properties: + option: + description: DHCPv6 option to return to the TopoNode. + enum: + - 59-BootfileUrl + type: string + value: + description: Value to return to the TopoNode for the specified option. + items: + type: string + minItems: 1 + type: array + required: + - option + - value + type: object + type: array + managementPoolv4: + description: IPInSubnetAllocationPool to use for IPv4 allocations of the management address for TopoNodes referencing this NodeProfile. + type: string + managementPoolv6: + description: IPInSubnetAllocationPool to use for IPv6 allocations of the management address for TopoNodes referencing this NodeProfile. + type: string + preferredAddressFamily: + description: Preferred IP address family + enum: + - IPv4 + - IPv6 + type: string + type: object + imagePullSecret: + description: Secret used to authenticate to the container registry where the container image is hosted. + type: string + images: + description: URLs hosting software images for bootstrapping TopoNodes referencing this NodeProfile. + items: + properties: + image: + description: URL hosting the software image, e.g. srlimages/srlinux-24.7.1.bin. + type: string + imageMd5: + description: URL hosting the software image md5 hash. e.g. srlimages/srlinux-24.7.1.bin.md5. + type: string + required: + - image + type: object + type: array + license: + description: ConfigMap containing a license for TopoNodes referencing this NodeProfile. + type: string + llmDb: + description: URL containing LLDB to use when interacting with LLM-DB and OpenAI for query autocompletion, e.g. http://eda-asvr/llmdb/ce-llm-db-srlinux-24.7.1.tar.gz. + type: string + nodeUser: + description: Reference to a NodeUser to use for authentication to TopoNodes referencing this NodeProfile. + type: string + onboardingPassword: + default: NokiaSrl1! + description: The password to use when onboarding TopoNodes referencing this NodeProfile, e.g. admin. + type: string + onboardingUsername: + default: admin + description: The username to use when onboarding TopoNodes referencing this NodeProfile, e.g. admin. + type: string + operatingSystem: + description: Sets the operating system of this NodeProfile, e.g. srl. + enum: + - srl + - sros + - eos + - sonic + - ios-xr + - nxos + - linux + type: string + platformPath: + description: JSPath to use for retrieving the version string from TopoNodes referencing this NodeProfile, e.g. .platform.chassis.type. + type: string + port: + default: 57400 + description: Port used to establish a connection to the TopoNode, e.g. 57400. + maximum: 65535 + minimum: 1 + type: integer + serialNumberPath: + description: JSPath to use for retrieving the serial number string from TopoNodes referencing this NodeProfile, e.g. .platform.chassis.serial-number. + type: string + version: + description: Sets the software version of this NodeProfile, e.g. 24.7.1 (for srl), or 24.7.r1 (for sros). + type: string + versionMatch: + description: Regular expression to match the node-retrieved version string to TopoNode version, e.g. v0\.0\.0.*. + type: string + versionPath: + description: JSPath to use for retrieving the version string from TopoNodes referencing this NodeProfile, e.g. .system.information.version. + type: string + yang: + description: URL containing YANG modules and schema profile to use when interacting with TopoNodes referencing this NodeProfile, e.g. http://eda-asvr/schemaprofiles/srlinux-24.7.1.zip. + type: string + required: + - nodeUser + - onboardingPassword + - onboardingUsername + - operatingSystem + - version + - yang + type: object + status: + type: object + type: object +served: true +storage: true +subresources: + status: {} diff --git a/static/resources/25.8.1/nodesecurityprofiles.core.eda.nokia.com/v1.yaml b/static/resources/25.8.1/nodesecurityprofiles.core.eda.nokia.com/v1.yaml new file mode 100644 index 0000000..acad983 --- /dev/null +++ b/static/resources/25.8.1/nodesecurityprofiles.core.eda.nokia.com/v1.yaml @@ -0,0 +1,135 @@ +name: v1 +schema: + openAPIV3Schema: + description: NodeSecurityProfile is the Schema for the nodeSecurityProfile API + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + description: NodeSecurityProfileSpec defines the desired state of NodeSecurityProfile + properties: + namespace: + description: Namespace of toponodes to be used to apply this security profile to. + type: string + nodeSelector: + description: Selector to use when selecting TopoNodes to apply this security profile to. + items: + type: string + type: array + nodes: + description: ' TopoNodes to apply this security profile to.' + items: + type: string + type: array + tls: + description: Set of TLS related attributes + properties: + csrParams: + description: A set of certificate signing request parameters used when asking for a CSR from the toponode. + properties: + certificateValidity: + default: 2160h + description: CertificateValidity defines the duration for which the certificate is considered valid after issuance. + type: string + city: + description: City denotes the city where the organization is based. + type: string + commonName: + description: CommonName specifies the common name field of the CSR, typically representing the domain name. + type: string + country: + description: Country indicates the country in which the organization is legally registered. + type: string + csrSuite: + default: CSRSUITE_X509_KEY_TYPE_RSA_2048_SIGNATURE_ALGORITHM_SHA_2_256 + description: The CSRSuite value used when asking for a CSR from the toponode + enum: + - CSRSUITE_X509_KEY_TYPE_RSA_2048_SIGNATURE_ALGORITHM_SHA_2_256 + - CSRSUITE_X509_KEY_TYPE_RSA_2048_SIGNATURE_ALGORITHM_SHA_2_384 + - CSRSUITE_X509_KEY_TYPE_RSA_2048_SIGNATURE_ALGORITHM_SHA_2_512 + - CSRSUITE_X509_KEY_TYPE_RSA_3072_SIGNATURE_ALGORITHM_SHA_2_256 + - CSRSUITE_X509_KEY_TYPE_RSA_3072_SIGNATURE_ALGORITHM_SHA_2_384 + - CSRSUITE_X509_KEY_TYPE_RSA_3072_SIGNATURE_ALGORITHM_SHA_2_512 + - CSRSUITE_X509_KEY_TYPE_RSA_4096_SIGNATURE_ALGORITHM_SHA_2_256 + - CSRSUITE_X509_KEY_TYPE_RSA_4096_SIGNATURE_ALGORITHM_SHA_2_384 + - CSRSUITE_X509_KEY_TYPE_RSA_4096_SIGNATURE_ALGORITHM_SHA_2_512 + - CSRSUITE_X509_KEY_TYPE_ECDSA_PRIME256V1_SIGNATURE_ALGORITHM_SHA_2_256 + - CSRSUITE_X509_KEY_TYPE_ECDSA_PRIME256V1_SIGNATURE_ALGORITHM_SHA_2_384 + - CSRSUITE_X509_KEY_TYPE_ECDSA_PRIME256V1_SIGNATURE_ALGORITHM_SHA_2_512 + - CSRSUITE_X509_KEY_TYPE_ECDSA_SECP384R1_SIGNATURE_ALGORITHM_SHA_2_256 + - CSRSUITE_X509_KEY_TYPE_ECDSA_SECP384R1_SIGNATURE_ALGORITHM_SHA_2_384 + - CSRSUITE_X509_KEY_TYPE_ECDSA_SECP384R1_SIGNATURE_ALGORITHM_SHA_2_512 + - CSRSUITE_X509_KEY_TYPE_ECDSA_SECP521R1_SIGNATURE_ALGORITHM_SHA_2_256 + - CSRSUITE_X509_KEY_TYPE_ECDSA_SECP521R1_SIGNATURE_ALGORITHM_SHA_2_384 + - CSRSUITE_X509_KEY_TYPE_ECDSA_SECP521R1_SIGNATURE_ALGORITHM_SHA_2_512 + - CSRSUITE_X509_KEY_TYPE_EDDSA_ED25519 + type: string + org: + description: Org is the name of the organization requesting the CSR. + type: string + orgUnit: + description: OrgUnit specifies the organizational unit (like department or division) within the organization. + type: string + san: + description: Subject Alternative Names contains additional hostnames or IP addresses covered by the CSR. + properties: + dns: + description: Dns contains a list of DNS names that can be used to access the server. + items: + type: string + type: array + emails: + description: Emails consists of email addresses that should be associated with the certificate. + items: + type: string + type: array + ips: + description: Ips includes IP addresses that the certificate should validate. + items: + type: string + type: array + uris: + description: Uris lists specific URIs that the certificate will authenticate. + items: + type: string + type: array + type: object + state: + description: State represents the state or province where the organization is located. + type: string + type: object + issuerRef: + description: Reference to a CertManager issuer that must be used to sign nodes certificates. + type: string + skipVerify: + description: Skip certificate verification. + type: boolean + trustBundle: + description: |- + Reference to configMap that contains a CA certificate that is used to verify the node certificate + when certificates are not managed by EDA. + type: string + type: object + type: object + status: + type: object + type: object +served: true +storage: true +subresources: + status: {} diff --git a/static/resources/25.8.1/nodeusers.core.eda.nokia.com/v1.yaml b/static/resources/25.8.1/nodeusers.core.eda.nokia.com/v1.yaml new file mode 100644 index 0000000..1781ecb --- /dev/null +++ b/static/resources/25.8.1/nodeusers.core.eda.nokia.com/v1.yaml @@ -0,0 +1,96 @@ +additionalPrinterColumns: + - jsonPath: .spec.username + name: Username + type: string + - jsonPath: .metadata.creationTimestamp + name: Age + type: date +name: v1 +schema: + openAPIV3Schema: + description: NodeUser is the Schemal for the nodeusers API + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + description: |- + The NodeUser resource represents a user that can be deployed to a set of TopoNodes. It supports managing the user's password, SSH keys, and group bindings. + Additionally a NodeUser is referenced by a NodeProfile to indicate how NPP should connect to TopoNodes. + properties: + groupBindings: + description: Matching of this user to node-specific permissions via groups. + items: + properties: + groups: + description: Assigned groups for this user. + items: + type: string + type: array + nodeSelector: + description: Selector to use when selecting TopoNodes to deploy this user to. + items: + type: string + type: array + nodes: + description: ' TopoNodes to deploy this user to.' + items: + type: string + type: array + required: + - groups + type: object + type: array + password: + description: Password for this user. + type: string + sshPublicKeys: + description: SSH public keys to deploy for the user. + items: + type: string + type: array + username: + description: Name of this user. If not provided, the name of the resource will be used. + maxLength: 32 + type: string + required: + - groupBindings + - password + type: object + status: + description: Deployment status of this NodeUser. + properties: + groupBindings: + description: List of TopoNodes user has been deployed to, along with corresponding groups. + items: + properties: + groups: + description: Groups this user is a member of on this node. + items: + type: string + type: array + node: + description: Node this user is deployed to. + type: string + type: object + type: array + type: object + type: object +served: true +storage: true +subresources: + status: {} diff --git a/static/resources/25.8.1/nodeuserstates.aaa.eda.nokia.com/v1alpha1.yaml b/static/resources/25.8.1/nodeuserstates.aaa.eda.nokia.com/v1alpha1.yaml new file mode 100644 index 0000000..2a012cf --- /dev/null +++ b/static/resources/25.8.1/nodeuserstates.aaa.eda.nokia.com/v1alpha1.yaml @@ -0,0 +1,48 @@ +name: v1alpha1 +schema: + openAPIV3Schema: + description: NodeUserState is the Schema for the nodeuserstates API + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + description: NodeUserStateSpec defines the desired state of NodeUserState + properties: + groupBindings: + description: List of TopoNodes user has been deployed to, along with corresponding groups. + items: + properties: + groups: + description: Groups this user is a member of on this node. + items: + type: string + type: array + node: + description: Node this user is deployed to. + type: string + type: object + type: array + type: object + status: + description: NodeUserStateStatus defines the observed state of NodeUserState + type: object + type: object +served: true +storage: true +subresources: + status: {} diff --git a/static/resources/25.8.1/ntpclients.timing.eda.nokia.com/v1alpha1.yaml b/static/resources/25.8.1/ntpclients.timing.eda.nokia.com/v1alpha1.yaml new file mode 100644 index 0000000..d7559a0 --- /dev/null +++ b/static/resources/25.8.1/ntpclients.timing.eda.nokia.com/v1alpha1.yaml @@ -0,0 +1,118 @@ +additionalPrinterColumns: + - jsonPath: .status.lastChange + name: Last Change + type: date + - jsonPath: .status.operationalState + name: Operational State + type: string +name: v1alpha1 +schema: + openAPIV3Schema: + description: NTPClient is the Schema for the ntpclients API + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + description: The NTP client allows for configuring NTP servers and the source of NTP traffic in order for the devices to synchronize their clocks. + properties: + router: + description: Router used to reach the NTP servers. + type: string + routerKind: + description: the Kind of the router used to reach the NTP servers. + enum: + - MANAGEMENTROUTER + - ROUTER + - DEFAULTROUTER + type: string + routerSelector: + description: Selects router resources based on the defined KIND. Applies to DefaultRouter only. Not supported for Router and ManagementRouter. + items: + type: string + type: array + servers: + description: A list of NTP servers, each entry in the list can either be an IP address or an FQDN. + items: + properties: + iBurst: + description: Indicates whether this server should enable burst synchronization or not + type: boolean + preferred: + description: Indicates whether this server should be preferred or not + type: boolean + server: + description: An NTP server can either be an IP address or an FQDN + type: string + required: + - server + type: object + type: array + sourceInterface: + description: Specifies a Interface resource to use as a source of NTP traffic. If none is specified the Node default behavior is used. + type: string + sourceInterfaceKind: + description: Specifies the source interface Kind to use as a source of NTP traffic. + enum: + - IRB + - ROUTED + - DEFAULT + - SYSTEM + type: string + required: + - routerKind + - servers + type: object + status: + description: NTPClientStatus defines the observed state of NTPClient + properties: + health: + description: Indicates the health score of the NTPClient + type: integer + healthScoreReason: + description: Indicates the reason for the health score + type: string + lastChange: + description: The time when the state of the resource last changed + type: string + nodes: + description: List of nodes which are not synchronized + items: + properties: + node: + description: Reference to Node object + type: string + operatingSystem: + description: Operating System of the Node + type: string + synchronized: + description: Synchronized state of the Node + type: string + required: + - node + - operatingSystem + type: object + type: array + operationalState: + description: Operational state of the NTPClient + type: string + type: object + type: object +served: true +storage: true +subresources: + status: {} diff --git a/static/resources/25.8.1/ntpclientstates.timing.eda.nokia.com/v1alpha1.yaml b/static/resources/25.8.1/ntpclientstates.timing.eda.nokia.com/v1alpha1.yaml new file mode 100644 index 0000000..004c817 --- /dev/null +++ b/static/resources/25.8.1/ntpclientstates.timing.eda.nokia.com/v1alpha1.yaml @@ -0,0 +1,52 @@ +name: v1alpha1 +schema: + openAPIV3Schema: + description: NTPClientState is the Schema for the ntpclientstates API + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + description: NTPClientStateSpec defines the desired state of NTPClientState + properties: + nodes: + description: List of Nodes on which was configured the NTPClient + items: + properties: + node: + description: Reference to Node object + type: string + operatingSystem: + description: Operating System of the Node + type: string + synchronized: + description: Synchronized state of the Node + type: string + required: + - node + - operatingSystem + type: object + type: array + type: object + status: + description: NTPClientStateStatus defines the observed state of NTPClientState + type: object + type: object +served: true +storage: true +subresources: + status: {} diff --git a/static/resources/25.8.1/pings.oam.eda.nokia.com/v1alpha1.yaml b/static/resources/25.8.1/pings.oam.eda.nokia.com/v1alpha1.yaml new file mode 100644 index 0000000..fe8e960 --- /dev/null +++ b/static/resources/25.8.1/pings.oam.eda.nokia.com/v1alpha1.yaml @@ -0,0 +1,150 @@ +additionalPrinterColumns: + - jsonPath: .spec.address + name: Address + type: string + - jsonPath: .spec.networkInstance + name: Network Instance + type: string + - jsonPath: .status.result + name: Result + type: string + - jsonPath: .metadata.creationTimestamp + name: Age + type: date +name: v1alpha1 +schema: + openAPIV3Schema: + description: Ping is the Schema for the pings API + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + description: Ping allows a ping to be initiated to a specific address on node/set of nodes. + properties: + address: + description: |- + Address to ping. + This is a single IP address (IPv4 or IPv6) or a hostname that resolves to an IP address. + type: string + count: + default: 1 + description: Count is the number of pings to send. + type: integer + networkInstance: + description: |- + The network instance to use for the ping. This is the named network instance on the node, typically "default" or some other base name. + If not specified, the default network instance will be used, which is typically the main/default/global network interface on the node. + type: string + nodeSelectors: + description: |- + List of selectors to select nodes to perform pings on. + This matches labels on TopoNode resources, including those TopoNodes in the list of nodes that pings will be performed on. + If no nodes are specified, and no node selectors are specified, all nodes in the given namespace will be selected. + items: + type: string + type: array + nodes: + description: |- + List of nodes to perform pings from. + Items in the list should be the names of the nodes, where each node will have a ping performed on it. + If no nodes are specified, and no node selectors are specified, all nodes in the given namespace will be selected. + items: + type: string + type: array + timeoutSeconds: + default: 5 + description: TimeoutSeconds is the timeout for the ping in seconds. + type: integer + required: + - address + type: object + status: + description: PingStatus defines the observed state of Ping + properties: + details: + description: |- + Details contains the results of the pings performed on each node. + Each entry in the list corresponds to a node that was pinged. + items: + properties: + details: + description: Details of the ping result, if available. + properties: + averageTimeNanoseconds: + description: Average time taken for a ping reply. + format: int64 + type: integer + maxTimeNanoseconds: + description: Maximum time taken for a ping reply. + format: int64 + type: integer + minTimeNanoseconds: + description: Minimum time taken for a ping reply. + format: int64 + type: integer + received: + description: Number of pings received. + type: integer + sent: + description: Number of pings sent. + type: integer + stdDevNanoseconds: + description: Standard deviation of time taken for all pings. + format: int64 + type: integer + totalTimeNanoseconds: + description: Total time taken for all pings. + format: int64 + type: integer + required: + - received + - sent + type: object + error: + description: Error message, if the ping failed. + type: string + networkInstance: + description: Network instance used to source the ping from. + type: string + node: + description: Node the ping was sourced from. + type: string + success: + description: Indicates if the ping was successful. + type: boolean + type: object + type: array + result: + default: Success + description: |- + Result is the overall result of the ping operation. + It can be one of the following values: + - "Success": All pings were successful. + - "Failed": No pings were successful. + - "PartialSuccess": Some pings were successful, but not all. + enum: + - Success + - Failed + - PartialSuccess + type: string + type: object + type: object +served: true +storage: true +subresources: + status: {} diff --git a/static/resources/25.8.1/policyattachments.qos.eda.nokia.com/v1.yaml b/static/resources/25.8.1/policyattachments.qos.eda.nokia.com/v1.yaml new file mode 100644 index 0000000..2cf0ad6 --- /dev/null +++ b/static/resources/25.8.1/policyattachments.qos.eda.nokia.com/v1.yaml @@ -0,0 +1,60 @@ +name: v1 +schema: + openAPIV3Schema: + description: PolicyAttachment is the Schema for the policyattachments API + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + description: PolicyAttachmentSpec defines the desired state of PolicyAttachment + properties: + attachments: + description: Specifies a list of Interfaces and subinterfaces on which to deploy the policies. + items: + properties: + interface: + description: Specifies the Interface on which to deploy the policies. + type: string + interfaceType: + description: Used for platforms that differentiate between access/service interfaces and network interface. These platforms may require different classifiers depending on whether they are applied on access/service interfaces or network interfaces. Specifies whether the classifier should be configured as a service Egress classifier or network Egress classifier + enum: + - ACCESS + - NETWORK + type: string + subInterfaceIndex: + description: Specifies the SubInterfaceIndex on which to deploy the policies. + type: integer + type: object + type: array + egressPolicy: + description: Specifies an EgressPolicy to deploy on the specified Node. + type: string + ingressPolicy: + description: Specifies the IngressPolicy to deploy on the specified Node. + type: string + required: + - attachments + type: object + status: + description: PolicyAttachmentStatus defines the observed state of PolicyAttachment + type: object + type: object +served: true +storage: true +subresources: + status: {} diff --git a/static/resources/25.8.1/policyattachments.qos.eda.nokia.com/v1alpha1.yaml b/static/resources/25.8.1/policyattachments.qos.eda.nokia.com/v1alpha1.yaml new file mode 100644 index 0000000..5bce521 --- /dev/null +++ b/static/resources/25.8.1/policyattachments.qos.eda.nokia.com/v1alpha1.yaml @@ -0,0 +1,62 @@ +deprecated: true +deprecationWarning: This version is deprecated and will no longer be supported in the next version. +name: v1alpha1 +schema: + openAPIV3Schema: + description: PolicyAttachment is the Schema for the policyattachments API + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + description: PolicyAttachmentSpec defines the desired state of PolicyAttachment + properties: + attachments: + description: Specifies a list of Interfaces and subinterfaces on which to deploy the policies. + items: + properties: + interface: + description: Specifies the Interface on which to deploy the policies. + type: string + interfaceType: + description: Used for platforms that differentiate between access/service interfaces and network interface. These platforms may require different classifiers depending on whether they are applied on access/service interfaces or network interfaces. Specifies whether the classifier should be configured as a service Egress classifier or network Egress classifier + enum: + - ACCESS + - NETWORK + type: string + subInterfaceIndex: + description: Specifies the SubInterfaceIndex on which to deploy the policies. + type: integer + type: object + type: array + egressPolicy: + description: Specifies an EgressPolicy to deploy on the specified Node. + type: string + ingressPolicy: + description: Specifies the IngressPolicy to deploy on the specified Node. + type: string + required: + - attachments + type: object + status: + description: PolicyAttachmentStatus defines the observed state of PolicyAttachment + type: object + type: object +served: true +storage: false +subresources: + status: {} diff --git a/static/resources/25.8.1/policydeployments.qos.eda.nokia.com/v1.yaml b/static/resources/25.8.1/policydeployments.qos.eda.nokia.com/v1.yaml new file mode 100644 index 0000000..86164b9 --- /dev/null +++ b/static/resources/25.8.1/policydeployments.qos.eda.nokia.com/v1.yaml @@ -0,0 +1,64 @@ +name: v1 +schema: + openAPIV3Schema: + description: PolicyDeployment is the Schema for the policydeployments API + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + description: PolicyDeploymentSpec defines the desired state of PolicyDeployment + properties: + egressPolicy: + description: Specifies an EgressPolicy to deploy on the specified Node. + type: string + ingressPolicy: + description: Specifies the IngressPolicy to deploy on the specified Node. + type: string + interfaceSelector: + description: Specifies a label selector to filter the interfaces on which to deploy the policies. + items: + type: string + type: array + interfaceType: + description: Used for platforms that differentiate between access/service interfaces and network interface. These platforms may require different classifiers depending on whether they are applied on access/service interfaces or network interfaces. Specifies whether the classifier should be configured as a service Egress classifier or network Egress classifier + enum: + - ACCESS + - NETWORK + type: string + interfaces: + description: Specifies a list of Interfaces on which to deploy the policies. + items: + type: string + type: array + node: + description: Specifies a Node to deploy the policies on. + type: string + nodeSelector: + description: Specifies a label selector to filter the nodes on which to deploy the policies. + items: + type: string + type: array + type: object + status: + description: PolicyDeploymentStatus defines the observed state of PolicyDeployment + type: object + type: object +served: true +storage: true +subresources: + status: {} diff --git a/static/resources/25.8.1/policydeployments.qos.eda.nokia.com/v1alpha1.yaml b/static/resources/25.8.1/policydeployments.qos.eda.nokia.com/v1alpha1.yaml new file mode 100644 index 0000000..2611869 --- /dev/null +++ b/static/resources/25.8.1/policydeployments.qos.eda.nokia.com/v1alpha1.yaml @@ -0,0 +1,62 @@ +deprecated: true +deprecationWarning: This version is deprecated and will no longer be supported in the next version. +name: v1alpha1 +schema: + openAPIV3Schema: + description: PolicyDeployment is the Schema for the policydeployments API + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + description: PolicyDeploymentSpec defines the desired state of PolicyDeployment + properties: + egressPolicy: + description: Specifies an EgressPolicy to deploy on the specified Node. + type: string + ingressPolicy: + description: Specifies the IngressPolicy to deploy on the specified Node. + type: string + interfaceSelector: + description: Specifies a label selector to filter the interfaces on which to deploy the policies. + type: string + interfaceType: + description: Used for platforms that differentiate between access/service interfaces and network interface. These platforms may require different classifiers depending on whether they are applied on access/service interfaces or network interfaces. Specifies whether the classifier should be configured as a service Egress classifier or network Egress classifier + enum: + - ACCESS + - NETWORK + type: string + interfaces: + description: Specifies a list of Interfaces on which to deploy the policies. + items: + type: string + type: array + node: + description: Specifies a Node to deploy the policies on. + type: string + nodeSelector: + description: Specifies a label selector to filter the nodes on which to deploy the policies. + type: string + type: object + status: + description: PolicyDeploymentStatus defines the observed state of PolicyDeployment + type: object + type: object +served: true +storage: false +subresources: + status: {} diff --git a/static/resources/25.8.1/policydeployments.routingpolicies.eda.nokia.com/v1alpha1.yaml b/static/resources/25.8.1/policydeployments.routingpolicies.eda.nokia.com/v1alpha1.yaml new file mode 100644 index 0000000..cedf3ae --- /dev/null +++ b/static/resources/25.8.1/policydeployments.routingpolicies.eda.nokia.com/v1alpha1.yaml @@ -0,0 +1,42 @@ +name: v1alpha1 +schema: + openAPIV3Schema: + description: PolicyDeployment is the Schema for the policydeployments API + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + description: PolicyDeploymentSpec defines the desired state of PolicyDeployment + properties: + node: + description: Specifies a Node to deploy this policy on + type: string + policy: + description: Specifies a Policy to deploy on the specified Node + type: string + required: + - node + type: object + status: + description: PolicyDeploymentStatus defines the observed state of PolicyDeployment + type: object + type: object +served: true +storage: true +subresources: + status: {} diff --git a/static/resources/policys.routingpolicies.eda.nokia.com/v1alpha1.yaml b/static/resources/25.8.1/policys.routingpolicies.eda.nokia.com/v1alpha1.yaml similarity index 100% rename from static/resources/policys.routingpolicies.eda.nokia.com/v1alpha1.yaml rename to static/resources/25.8.1/policys.routingpolicies.eda.nokia.com/v1alpha1.yaml diff --git a/static/resources/25.8.1/powersupplies.components.eda.nokia.com/v1.yaml b/static/resources/25.8.1/powersupplies.components.eda.nokia.com/v1.yaml new file mode 100644 index 0000000..067e111 --- /dev/null +++ b/static/resources/25.8.1/powersupplies.components.eda.nokia.com/v1.yaml @@ -0,0 +1,124 @@ +name: v1 +schema: + openAPIV3Schema: + description: PowerSupply is the Schema for the powersupplies API + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + description: PowerSupplySpec defines the desired state of PowerSupply + properties: + foo: + description: |- + INSERT ADDITIONAL SPEC FIELDS - define desired state of cluster + Important: Run "edabuilder generate" to regenerate code after modifying this file + type: string + required: + - foo + type: object + status: + description: PowerSupplyStatus defines the observed state of PowerSupply + properties: + commonLanguageEquipmentIdentifier: + description: The CLEI code of this component + type: string + lastBooted: + description: The date and time this component last booted + type: string + lastChange: + description: The date and time this component last changed operational state + type: string + locatorEnabled: + description: Indicates if the locator LED for the component is active + type: boolean + manufacturedDate: + description: The date this component was manufactured + type: string + operationalState: + description: Indicates the current operational state of this component. + enum: + - Up + - Down + - Rebooting + - Unknown + - Starting + - Empty + type: string + parent: + description: Reference to a parent component + type: string + parentType: + description: Type of the parent component + enum: + - Fan + - FanTray + - PowerSupply + - PowerModule + - PowerShelf + - InterfaceModule + - ControlModule + - FabricModule + - Chassis + - Transceiver + type: string + partNumber: + description: The discovered part number of this component + type: string + removable: + description: Indicates if this component is removable + type: boolean + serialNumber: + description: The discovered serial number of this component + type: string + slot: + description: Slot this component resides in, unset for components that do not have a slot or ID + type: string + softwareVersion: + description: Version string of the software running on this component + type: string + target: + description: Target this component resides on. + type: string + temperature: + description: Temperature information for this component + properties: + alarmState: + description: The temperature alarm state, as reported by the component + type: boolean + instant: + description: The current temperature of this component + type: integer + margin: + description: The margin temperature of this component + type: integer + maximum: + description: The maximum temperature of this component + type: integer + threshold: + description: The threshold temperature of this component + type: integer + type: object + type: + description: Component type, as provided by the target + type: string + type: object + type: object +served: true +storage: true +subresources: + status: {} diff --git a/static/resources/25.8.1/prefixsetdeployments.routingpolicies.eda.nokia.com/v1alpha1.yaml b/static/resources/25.8.1/prefixsetdeployments.routingpolicies.eda.nokia.com/v1alpha1.yaml new file mode 100644 index 0000000..b886afa --- /dev/null +++ b/static/resources/25.8.1/prefixsetdeployments.routingpolicies.eda.nokia.com/v1alpha1.yaml @@ -0,0 +1,42 @@ +name: v1alpha1 +schema: + openAPIV3Schema: + description: PrefixSetDeployment is the Schema for the prefixsetdeployments API + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + description: PrefixSetDeploymentSpec defines the desired state of PrefixSetDeployment + properties: + node: + description: Specifies a Node to deploy this policy on + type: string + prefixSet: + description: Specifies a PrefixSet to deploy to the specified Node + type: string + required: + - node + type: object + status: + description: PrefixSetDeploymentStatus defines the observed state of PrefixSetDeployment + type: object + type: object +served: true +storage: true +subresources: + status: {} diff --git a/static/resources/25.8.1/prefixsets.routingpolicies.eda.nokia.com/v1alpha1.yaml b/static/resources/25.8.1/prefixsets.routingpolicies.eda.nokia.com/v1alpha1.yaml new file mode 100644 index 0000000..8b1577f --- /dev/null +++ b/static/resources/25.8.1/prefixsets.routingpolicies.eda.nokia.com/v1alpha1.yaml @@ -0,0 +1,60 @@ +name: v1alpha1 +schema: + openAPIV3Schema: + description: PrefixSet is the Schema for the prefixsets API + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + description: PrefixSet defines a collection of IP prefixes, which may include specific CIDR blocks or a range of prefixes. This set is typically used for matching routes or implementing routing policies. + properties: + prefix: + description: List of IPv4 or IPv6 prefixes in CIDR notation. + items: + properties: + endRange: + description: The end range when using a range to match prefixes. + maximum: 128 + minimum: 0 + type: integer + exact: + description: Indicates if it is an exact match. Ignores the StartRange and EndRange if this param is set. + type: boolean + prefix: + description: The IPv4 or IPv6 prefix in CIDR notation with mask. + type: string + startRange: + description: If specifying a range, this is the start of the range. + maximum: 128 + minimum: 0 + type: integer + required: + - prefix + type: object + type: array + required: + - prefix + type: object + status: + description: PrefixSetStatus defines the observed state of PrefixSet. + type: object + type: object +served: true +storage: true +subresources: + status: {} diff --git a/static/resources/25.8.1/queues.qos.eda.nokia.com/v1.yaml b/static/resources/25.8.1/queues.qos.eda.nokia.com/v1.yaml new file mode 100644 index 0000000..df58f8e --- /dev/null +++ b/static/resources/25.8.1/queues.qos.eda.nokia.com/v1.yaml @@ -0,0 +1,52 @@ +name: v1 +schema: + openAPIV3Schema: + description: Queue is the Schema for the queues API + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + description: The Queue resource is used to define the properties of a queue, which can then be referenced by other resources. + properties: + queueID: + description: The ID of the queue on which to apply the properties. This is mandatory for usage of queus on SROS and is ignored on other operating systems. + type: integer + queueType: + description: QueueType specifies whether this is a normal queue or a PFC queue + enum: + - Normal + - Pfc + type: string + trafficType: + description: The traffic type of the queue, either unicast or multicast. + enum: + - Unicast + - Multicast + type: string + required: + - queueType + - trafficType + type: object + status: + description: QueueStatus defines the observed state of Queue + type: object + type: object +served: true +storage: true +subresources: + status: {} diff --git a/static/resources/25.8.1/queues.qos.eda.nokia.com/v1alpha1.yaml b/static/resources/25.8.1/queues.qos.eda.nokia.com/v1alpha1.yaml new file mode 100644 index 0000000..7739d1c --- /dev/null +++ b/static/resources/25.8.1/queues.qos.eda.nokia.com/v1alpha1.yaml @@ -0,0 +1,54 @@ +deprecated: true +deprecationWarning: This version is deprecated and will no longer be supported in the next version. +name: v1alpha1 +schema: + openAPIV3Schema: + description: Queue is the Schema for the queues API + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + description: The Queue resource is used to define the properties of a queue, which can then be referenced by other resources. + properties: + queueID: + description: The ID of the queue on which to apply the properties. This is mandatory for usage of queus on SROS and is ignored on other operating systems. + type: integer + queueType: + description: QueueType specifies whether this is a normal queue or a PFC queue + enum: + - Normal + - Pfc + type: string + trafficType: + description: The traffic type of the queue, either unicast or multicast. + enum: + - Unicast + - Multicast + type: string + required: + - queueType + - trafficType + type: object + status: + description: QueueStatus defines the observed state of Queue + type: object + type: object +served: true +storage: false +subresources: + status: {} diff --git a/static/resources/25.8.1/registries.appstore.eda.nokia.com/v1.yaml b/static/resources/25.8.1/registries.appstore.eda.nokia.com/v1.yaml new file mode 100644 index 0000000..676fc8b --- /dev/null +++ b/static/resources/25.8.1/registries.appstore.eda.nokia.com/v1.yaml @@ -0,0 +1,79 @@ +additionalPrinterColumns: + - jsonPath: .spec.remoteURL + name: RemoteURL + type: string + - jsonPath: .spec.mirror + name: Mirror + type: string + - jsonPath: .status.reachable + name: Reachable + type: string +name: v1 +schema: + openAPIV3Schema: + description: Registry is the Schema for the Registry API + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + description: RegistrySpec defines the desired state of a Registry + properties: + authSecretRef: + description: |- + AuthSecretRef is the authentication secret reference, used for authentication. + Must be in the same namespace as the catalog. + type: string + mirror: + description: |- + Mirror registry of the original remote registry. + App store will use the mirror instead of the original registry that is referenced by a catalog. + type: string + remoteURL: + description: |- + RemoteURL is the remote URL of the registry. Supported URI schemes: 'https://' and 'http://'. + Default is HTTPS if no scheme is given. + type: string + skipTLSVerify: + default: false + description: Skip TLS Verification on connection + type: boolean + title: + description: Title is an UI-friendly name for the catalog. + maxLength: 50 + type: string + required: + - remoteURL + type: object + status: + description: RegistryStatus defines the observed state of Registry + properties: + error: + description: Error denotes the last error that was encountered by the controller. + type: string + reachable: + default: false + description: Reachable indicates if the registry is reachable. + type: boolean + required: + - error + type: object + type: object +served: true +storage: true +subresources: + status: {} diff --git a/static/resources/25.8.1/roles.core.eda.nokia.com/v1.yaml b/static/resources/25.8.1/roles.core.eda.nokia.com/v1.yaml new file mode 100644 index 0000000..f1e2566 --- /dev/null +++ b/static/resources/25.8.1/roles.core.eda.nokia.com/v1.yaml @@ -0,0 +1,128 @@ +name: v1 +schema: + openAPIV3Schema: + description: Role is the Schema for the roles API + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + description: RoleSpec defines the desired state of Role + properties: + description: + description: A description for the role. + type: string + resourceRules: + description: The rules for access to kubernetes resources + items: + description: A role rule controlling access to a kubernetes resource. + properties: + apiGroups: + description: |- + The API groups for the resources controlled by the rule. + An API group consists of an apiGroup and a version, e.g. "apigroup/version". + The API group can be a wildcard ("*"), in which case it will match any API group. + items: + minLength: 1 + type: string + minItems: 1 + type: array + permissions: + description: Permissions for resources specified by the rule. + enum: + - none + - read + - readWrite + type: string + resources: + description: |- + Names for the resources controlled by the rule. + It can be a wildcard ("*"), in which case it will match any resource + in the matching API groups. + items: + minLength: 1 + type: string + minItems: 1 + type: array + required: + - apiGroups + - permissions + - resources + type: object + type: array + tableRules: + description: The rules for access to the database tables. + items: + description: |- + A role rule controlling access to a EDB table. Note that + there is never write access to EDB. + properties: + path: + description: |- + EDB path to which this rule applies. It can end in ".*" + in which case the final portion of the table path can be anything, if the + prefix matches. It can end in ".**" in which case the table path can be + anything if the prefix matches. + minLength: 1 + pattern: ^\..* + type: string + permissions: + description: Permissions for the given EDB path. + enum: + - none + - read + type: string + required: + - path + - permissions + type: object + type: array + urlRules: + description: The rules for access to api-server proxied routes. + items: + description: A role rule controlling access to an API server proxy. + properties: + path: + description: |- + The API server URL path to which this rule applies. It can end in "/*" + in which case the final portion of the URL path can be anything, if the + prefix matches. It can end in "/**" in which case the URL path can be + anything if the prefix matches. + minLength: 1 + pattern: ^/.* + type: string + permissions: + description: The permissions for the API server URL for the rule. + enum: + - none + - read + - readWrite + type: string + required: + - path + - permissions + type: object + type: array + type: object + status: + description: RoleStatus defines the observed state of Role + type: object + type: object +served: true +storage: true +subresources: + status: {} diff --git a/static/resources/routedinterfaces.services.eda.nokia.com/v1.yaml b/static/resources/25.8.1/routedinterfaces.services.eda.nokia.com/v1.yaml similarity index 100% rename from static/resources/routedinterfaces.services.eda.nokia.com/v1.yaml rename to static/resources/25.8.1/routedinterfaces.services.eda.nokia.com/v1.yaml diff --git a/static/resources/routedinterfaces.services.eda.nokia.com/v1alpha1.yaml b/static/resources/25.8.1/routedinterfaces.services.eda.nokia.com/v1alpha1.yaml similarity index 100% rename from static/resources/routedinterfaces.services.eda.nokia.com/v1alpha1.yaml rename to static/resources/25.8.1/routedinterfaces.services.eda.nokia.com/v1alpha1.yaml diff --git a/static/resources/routedinterfacestates.services.eda.nokia.com/v1.yaml b/static/resources/25.8.1/routedinterfacestates.services.eda.nokia.com/v1.yaml similarity index 100% rename from static/resources/routedinterfacestates.services.eda.nokia.com/v1.yaml rename to static/resources/25.8.1/routedinterfacestates.services.eda.nokia.com/v1.yaml diff --git a/static/resources/25.8.1/routedinterfacestates.services.eda.nokia.com/v1alpha1.yaml b/static/resources/25.8.1/routedinterfacestates.services.eda.nokia.com/v1alpha1.yaml new file mode 100644 index 0000000..0c7b7bf --- /dev/null +++ b/static/resources/25.8.1/routedinterfacestates.services.eda.nokia.com/v1alpha1.yaml @@ -0,0 +1,104 @@ +deprecated: true +deprecationWarning: This version is deprecated and will no longer be supported in the next version. +name: v1alpha1 +schema: + openAPIV3Schema: + description: RoutedInterfaceState is the Schema for the routedinterfacestates API + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + description: RoutedInterfaceStateSpec defines the desired state of RoutedInterfaceState + properties: + interfaces: + items: + properties: + interface: + description: Normalized interface name + type: string + interfaceResource: + description: Eda interface resource + type: string + node: + description: Reference to Node object + type: string + nodeInterface: + description: Node specific interface name + type: string + nodeSubInterface: + description: Node specific subinterface name + type: string + operatingSystem: + description: Operating System of the Node + type: string + subInterfaceIndex: + description: Index allocated to the subinterface on the associated interface for the given VLAN + type: integer + vlanID: + description: vlan assigned to this subinterface + type: string + required: + - interface + - interfaceResource + - node + - nodeInterface + type: object + type: array + ipv4Addresses: + description: List of IPv4 addresses + items: + properties: + ipPrefix: + description: Address and mask to use + type: string + primary: + description: Indicates which address to use as primary for broadcast + type: boolean + required: + - ipPrefix + type: object + type: array + ipv6Addresses: + description: List of IPv6 addresses + items: + properties: + ipPrefix: + description: Address and mask to use + type: string + primary: + description: Indicates which address to use as primary for broadcast + type: boolean + required: + - ipPrefix + type: object + type: array + router: + description: Router the RoutedInterface is attached to + type: string + required: + - interfaces + - router + type: object + status: + description: RoutedInterfaceStateStatus defines the observed state of RoutedInterfaceState + type: object + type: object +served: true +storage: false +subresources: + status: {} diff --git a/static/resources/routelookups.routing.eda.nokia.com/v1alpha1.yaml b/static/resources/25.8.1/routelookups.routing.eda.nokia.com/v1alpha1.yaml similarity index 100% rename from static/resources/routelookups.routing.eda.nokia.com/v1alpha1.yaml rename to static/resources/25.8.1/routelookups.routing.eda.nokia.com/v1alpha1.yaml diff --git a/static/resources/25.8.1/routerdeployments.services.eda.nokia.com/v1.yaml b/static/resources/25.8.1/routerdeployments.services.eda.nokia.com/v1.yaml new file mode 100644 index 0000000..57971de --- /dev/null +++ b/static/resources/25.8.1/routerdeployments.services.eda.nokia.com/v1.yaml @@ -0,0 +1,43 @@ +name: v1 +schema: + openAPIV3Schema: + description: RouterDeployment is the Schema for the routerdeployments API + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + description: RouterDeploymentSpec defines the desired state of RouterDeployment + properties: + node: + description: Reference to a Node on which to push the Router + type: string + router: + description: Reference to a Router + type: string + required: + - node + - router + type: object + status: + description: RouterDeploymentStatus defines the observed state of RouterDeployment + type: object + type: object +served: true +storage: true +subresources: + status: {} diff --git a/static/resources/25.8.1/routerdeployments.services.eda.nokia.com/v1alpha1.yaml b/static/resources/25.8.1/routerdeployments.services.eda.nokia.com/v1alpha1.yaml new file mode 100644 index 0000000..69e7ec2 --- /dev/null +++ b/static/resources/25.8.1/routerdeployments.services.eda.nokia.com/v1alpha1.yaml @@ -0,0 +1,45 @@ +deprecated: true +deprecationWarning: This version is deprecated and will no longer be supported in the next version. +name: v1alpha1 +schema: + openAPIV3Schema: + description: RouterDeployment is the Schema for the routerdeployments API + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + description: RouterDeploymentSpec defines the desired state of RouterDeployment + properties: + node: + description: Reference to a Node on which to push the Router + type: string + router: + description: Reference to a Router + type: string + required: + - node + - router + type: object + status: + description: RouterDeploymentStatus defines the observed state of RouterDeployment + type: object + type: object +served: true +storage: false +subresources: + status: {} diff --git a/static/resources/25.8.1/routereflectorclients.protocols.eda.nokia.com/v1.yaml b/static/resources/25.8.1/routereflectorclients.protocols.eda.nokia.com/v1.yaml new file mode 100644 index 0000000..fe36b61 --- /dev/null +++ b/static/resources/25.8.1/routereflectorclients.protocols.eda.nokia.com/v1.yaml @@ -0,0 +1,328 @@ +additionalPrinterColumns: + - jsonPath: .status.lastChange + name: Last Change + type: date + - jsonPath: .status.operationalState + name: Operational State + type: string + - jsonPath: .status.numRouteReflectorClientBGPPeers + name: NumRouteReflectorClientBGPPeers + type: string + - jsonPath: .status.numRouteReflectorClientBGPPeersOperDown + name: NumRouteReflectorClientBGPPeersOperDown + type: string +name: v1 +schema: + openAPIV3Schema: + description: RouteReflectorClient is the Schema for the routereflectorclients API + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + description: RouteReflectorClient manages the configuration of iBGP sessions between a client and RouteReflectors. This resource allows you to specify the Interface for BGP sessions, set selectors for RouteReflectors, and configure common BGP settings. + properties: + asPathOptions: + description: AS Path Options + properties: + allowOwnAS: + default: 0 + description: The maximum number of times the global AS number or a local AS number of the BGP instance can appear in any received AS_PATH before it is considered a loop and considered invalid. + maximum: 255 + minimum: 0 + type: integer + removePrivateAS: + description: Options for removing private AS numbers (2-byte and 4-byte) from the advertised AS path towards all peers. + properties: + ignorePeerAS: + default: false + description: If set to true then do not delete or replace a private AS number that is the same as the peer AS number. + type: boolean + leadingOnly: + default: false + description: If set to true then only delete or replace private AS numbers that appear before the first occurrence of a non-private ASN in the sequence of most recent ASNs in the AS path. + type: boolean + removePrivateASMode: + default: DISABLED + description: The method by which private AS numbers are removed from the advertised AS_PATH attribute. + enum: + - DISABLED + - REPLACE + - DELETE + type: string + required: + - ignorePeerAS + - leadingOnly + - removePrivateASMode + type: object + required: + - allowOwnAS + type: object + bfd: + description: Enable or disable Bi-forward Forwarding Detection (BFD) with fast failover. + type: boolean + bgpGroup: + description: Reference to BgpGroup. + type: string + exportPolicy: + description: Reference to a Policy CR that will be used to filter routes advertised to peers. + items: + type: string + type: array + grStaleRouteTime: + description: Enables Graceful Restart on the peer and sets the stale route time. + maximum: 3600 + minimum: 1 + type: integer + importPolicy: + description: Reference to a Policy CR that will be used to filter routes received from peers. + items: + type: string + type: array + interface: + description: Reference to a RoutedInterface or IrbInterface resource whose IP will be used as a source IP for the BGP session. + type: string + interfaceKind: + description: InterfaceReference type defines whether the provided Reference is a RoutedInterface or IrbInterface. + enum: + - ROUTEDINTERFACE + - IRBINTERFACE + type: string + ipv4RouteReflectorSelector: + description: Label selector used to select the RouteReflectors to which the iBGP sessions are established for IPv4. + items: + type: string + type: array + ipv4Unicast: + description: Parameters relating to the IPv4 unicast AFI/SAFI. + properties: + advertiseIPV6NextHops: + description: Enables advertisement of IPv4 Unicast routes with IPv6 next-hops to peers. + type: boolean + enabled: + description: Enables the IPv4 unicast AFISAFI. + type: boolean + prefixLimit: + properties: + prefixLimitAccepted: + properties: + logOnly: + description: Defines the action to take when the maximum number of prefixes is exceeded. Session is reset if set to false, otherwise only a warning is logged. + type: boolean + maxReceivedRoutes: + description: Maximum number of prefixes allowed to be received from the neighbor, counting only accepted routes. + format: int32 + maximum: 4294967295 + minimum: 1 + type: integer + warningThreshold: + description: A percentage of the maximum number of prefixes that can be accepted before a warning is logged. + maximum: 100 + minimum: 1 + type: integer + type: object + prefixLimitReceived: + properties: + logOnly: + description: Defines the action to take when the maximum number of prefixes is exceeded. Session is reset if set to false, otherwise only a warning is logged. + type: boolean + maxReceivedRoutes: + description: Maximum number of prefixes allowed to be received from the neighbor, counting all routes (accepted and rejected by import policies). + format: int32 + maximum: 4294967295 + minimum: 1 + type: integer + warningThreshold: + description: A percentage of the maximum number of prefixes that can be received before a warning is logged. + maximum: 100 + minimum: 1 + type: integer + type: object + type: object + receiveIPV6NextHops: + description: Enables the advertisement of the RFC 5549 capability to receive IPv4 routes with IPv6 next-hops. + type: boolean + type: object + ipv6RouteReflectorSelector: + description: Label selector used to select the RouteReflectors to which the iBGP sessions are established for IPv6. + items: + type: string + type: array + ipv6Unicast: + description: Parameters relating to the IPv6 unicast AFI/SAFI. + properties: + enabled: + description: Enables the IPv6 unicast AFISAFI + type: boolean + prefixLimit: + properties: + prefixLimitAccepted: + properties: + logOnly: + description: Defines the action to take when the maximum number of prefixes is exceeded. Session is reset if set to false, otherwise only a warning is logged. + type: boolean + maxReceivedRoutes: + description: Maximum number of prefixes allowed to be received from the neighbor, counting only accepted routes. + format: int32 + maximum: 4294967295 + minimum: 1 + type: integer + warningThreshold: + description: A percentage of the maximum number of prefixes that can be accepted before a warning is logged. + maximum: 100 + minimum: 1 + type: integer + type: object + prefixLimitReceived: + properties: + logOnly: + description: Defines the action to take when the maximum number of prefixes is exceeded. Session is reset if set to false, otherwise only a warning is logged. + type: boolean + maxReceivedRoutes: + description: Maximum number of prefixes allowed to be received from the neighbor, counting all routes (accepted and rejected by import policies). + format: int32 + maximum: 4294967295 + minimum: 1 + type: integer + warningThreshold: + description: A percentage of the maximum number of prefixes that can be received before a warning is logged. + maximum: 100 + minimum: 1 + type: integer + type: object + type: object + type: object + keychain: + description: Reference to a Keychain resource that will be used for authentication with the BGP peer. + type: string + localAS: + description: The local autonomous system number advertised to peers. + properties: + autonomousSystem: + description: Local Autonomous System number. + maximum: 4294967295 + minimum: 1 + type: integer + prependGlobalAS: + description: When set to true, the global ASN value is prepended to the AS path in outbound routes towards each BGP peer. + type: boolean + prependLocalAS: + description: When set to true, the local AS value is prepended to the AS path of inbound routes from each EBGP peer. + type: boolean + required: + - autonomousSystem + type: object + peerAS: + description: The autonomous system number expected from peers. + properties: + autonomousSystem: + description: Local Autonomous System number. + maximum: 4294967295 + minimum: 1 + type: integer + required: + - autonomousSystem + type: object + routeReflectorIPs: + description: List of the peering IPs on the RRs to which peering session is established. + items: + type: string + type: array + sendCommunityLarge: + description: When false, all large (12 byte) BGP communities from all outbound routes advertised to the peer are stripped. + type: boolean + sendCommunityStandard: + description: When false, all standard (4 byte) communities from all outbound routes advertised to the peer are stripped. + type: boolean + sendDefaultRoute: + description: Options for controlling the generation of default routes towards BGP peers. + properties: + addressFamily: + description: Enables the sending of a synthetically generated default IPv4 or IPV6 route to each peer. + items: + enum: + - IPV4-UNICAST + - IPV6-UNICAST + type: string + type: array + exportPolicy: + description: Reference to a Policy that should be applied to the advertised default routes, in order to set their attributes to non-default values. + type: string + required: + - addressFamily + type: object + timers: + description: Timer configurations + properties: + connectRetry: + description: The time interval in seconds between successive attempts to establish a session with a peer. + maximum: 65535 + minimum: 1 + type: integer + holdTime: + description: The hold-time interval in seconds that the router proposes to the peer in its OPEN message. + maximum: 65535 + minimum: 0 + type: integer + keepAlive: + description: The interval in seconds between successive keepalive messages sent to the peer. + maximum: 21845 + minimum: 0 + type: integer + minimumAdvertisementInterval: + description: The value assigned to the MinRouteAdvertisementIntervalTimer of RFC 4271, for both EBGP and IBGP sessions. + maximum: 255 + minimum: 1 + type: integer + type: object + required: + - bgpGroup + - interface + - interfaceKind + type: object + status: + description: RouteReflectorClientStatus defines the observed state of RouteReflectorClient + properties: + health: + description: Indicates the health score of the RouteReflectorClient. + type: integer + healthScoreReason: + description: Indicates the reason for the health score. + type: string + lastChange: + description: The time when the state of the resource last changed. + type: string + numRouteReflectorClientBGPPeers: + description: Total number of configured route reflector peers on the route reflector client. + type: integer + numRouteReflectorClientBGPPeersOperDown: + description: Total number of configured route reflector peers on the route reflector client that are operationally down. + type: integer + operDownRouteReflectorClientPeers: + description: List of route reflector BGPPeers which are operationally down. + items: + type: string + type: array + operationalState: + description: Operational state of the RouteReflectorClient. + type: string + type: object + type: object +served: true +storage: true +subresources: + status: {} diff --git a/static/resources/25.8.1/routereflectorclients.protocols.eda.nokia.com/v1alpha1.yaml b/static/resources/25.8.1/routereflectorclients.protocols.eda.nokia.com/v1alpha1.yaml new file mode 100644 index 0000000..b9fbd90 --- /dev/null +++ b/static/resources/25.8.1/routereflectorclients.protocols.eda.nokia.com/v1alpha1.yaml @@ -0,0 +1,266 @@ +additionalPrinterColumns: + - jsonPath: .status.lastChange + name: Last Change + type: date + - jsonPath: .status.operationalState + name: Operational State + type: string + - jsonPath: .status.numRouteReflectorClientBGPPeers + name: NumRouteReflectorClientBGPPeers + type: string + - jsonPath: .status.numRouteReflectorClientBGPPeersOperDown + name: NumRouteReflectorClientBGPPeersOperDown + type: string +deprecated: true +deprecationWarning: This version is deprecated and will no longer be supported in the next version. +name: v1alpha1 +schema: + openAPIV3Schema: + description: RouteReflectorClient is the Schema for the routereflectorclients API + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + description: RouteReflectorClient manages the configuration of iBGP sessions between a client and RouteReflectors. This resource allows you to specify the Interface for BGP sessions, set selectors for RouteReflectors, and configure common BGP settings. + properties: + asPathOptions: + description: AS Path Options + properties: + allowOwnAS: + default: 0 + description: The maximum number of times the global AS number or a local AS number of the BGP instance can appear in any received AS_PATH before it is considered a loop and considered invalid. + maximum: 255 + minimum: 0 + type: integer + removePrivateAS: + description: Options for removing private AS numbers (2-byte and 4-byte) from the advertised AS path towards all peers. + properties: + ignorePeerAS: + default: false + description: If set to true then do not delete or replace a private AS number that is the same as the peer AS number. + type: boolean + leadingOnly: + default: false + description: If set to true then only delete or replace private AS numbers that appear before the first occurrence of a non-private ASN in the sequence of most recent ASNs in the AS path. + type: boolean + removePrivateASMode: + default: DISABLED + description: The method by which private AS numbers are removed from the advertised AS_PATH attribute. + enum: + - DISABLED + - REPLACE + - DELETE + type: string + required: + - ignorePeerAS + - leadingOnly + - removePrivateASMode + type: object + required: + - allowOwnAS + type: object + bfd: + description: Enable or disable Bi-forward Forwarding Detection (BFD) with fast failover. + type: boolean + bgpGroup: + description: Reference to BgpGroup. + type: string + exportPolicy: + description: Reference to a Policy CR that will be used to filter routes advertised to peers. + items: + type: string + type: array + grStaleRouteTime: + description: Enables Graceful Restart on the peer and sets the stale route time. + maximum: 3600 + minimum: 1 + type: integer + importPolicy: + description: Reference to a Policy CR that will be used to filter routes received from peers. + items: + type: string + type: array + interface: + description: Reference to a RoutedInterface or IrbInterface resource whose IP will be used as a source IP for the BGP session. + type: string + interfaceKind: + description: InterfaceReference type defines whether the provided Reference is a RoutedInterface or IrbInterface. + enum: + - ROUTEDINTERFACE + - IRBINTERFACE + type: string + ipv4RouteReflectorSelector: + description: Label selector used to select the RouteReflectors to which the iBGP sessions are established for IPv4. + items: + type: string + type: array + ipv4Unicast: + description: Parameters relating to the IPv4 unicast AFI/SAFI. + properties: + advertiseIPV6NextHops: + description: Enables advertisement of IPv4 Unicast routes with IPv6 next-hops to peers. + type: boolean + enabled: + description: Enables the IPv4 unicast AFISAFI. + type: boolean + maxReceivedRoutes: + description: Maximum number of IPv4 Unicast routes that will be accepted from the neighbor, counting routes accepted and rejected by import policies. + maximum: 4294967295 + minimum: 1 + type: integer + receiveIPV6NextHops: + description: Enables the advertisement of the RFC 5549 capability to receive IPv4 routes with IPv6 next-hops. + type: boolean + type: object + ipv6RouteReflectorSelector: + description: Label selector used to select the RouteReflectors to which the iBGP sessions are established for IPv6. + items: + type: string + type: array + ipv6Unicast: + description: Parameters relating to the IPv6 unicast AFI/SAFI. + properties: + enabled: + description: Enables the IPv6 unicast AFISAFI + type: boolean + maxReceivedRoutes: + description: Maximum number of IPv6 Unicast routes that will be accepted from the neighbor, counting routes accepted and rejected by import policies. + maximum: 4294967295 + minimum: 1 + type: integer + type: object + keychain: + description: Reference to a Keychain resource that will be used for authentication with the BGP peer. + type: string + localAS: + description: The local autonomous system number advertised to peers. + properties: + autonomousSystem: + description: Local Autonomous System number. + maximum: 4294967295 + minimum: 1 + type: integer + prependGlobalAS: + description: When set to true, the global ASN value is prepended to the AS path in outbound routes towards each BGP peer. + type: boolean + prependLocalAS: + description: When set to true, the local AS value is prepended to the AS path of inbound routes from each EBGP peer. + type: boolean + required: + - autonomousSystem + type: object + peerAS: + description: The autonomous system number expected from peers. + properties: + autonomousSystem: + description: Local Autonomous System number. + maximum: 4294967295 + minimum: 1 + type: integer + required: + - autonomousSystem + type: object + routeReflectorIPs: + description: List of the peering IPs on the RRs to which peering session is established. + items: + type: string + type: array + sendCommunityLarge: + description: When false, all large (12 byte) BGP communities from all outbound routes advertised to the peer are stripped. + type: boolean + sendCommunityStandard: + description: When false, all standard (4 byte) communities from all outbound routes advertised to the peer are stripped. + type: boolean + sendDefaultRoute: + description: Options for controlling the generation of default routes towards BGP peers. + properties: + addressFamily: + description: Enables the sending of a synthetically generated default IPv4 or IPV6 route to each peer. + items: + enum: + - IPV4-UNICAST + - IPV6-UNICAST + type: string + type: array + exportPolicy: + description: Reference to a Policy that should be applied to the advertised default routes, in order to set their attributes to non-default values. + type: string + required: + - addressFamily + type: object + timers: + description: Timer configurations + properties: + connectRetry: + description: The time interval in seconds between successive attempts to establish a session with a peer. + maximum: 65535 + minimum: 1 + type: integer + holdTime: + description: The hold-time interval in seconds that the router proposes to the peer in its OPEN message. + maximum: 65535 + minimum: 0 + type: integer + keepAlive: + description: The interval in seconds between successive keepalive messages sent to the peer. + maximum: 21845 + minimum: 0 + type: integer + minimumAdvertisementInterval: + description: The value assigned to the MinRouteAdvertisementIntervalTimer of RFC 4271, for both EBGP and IBGP sessions. + maximum: 255 + minimum: 1 + type: integer + type: object + required: + - bgpGroup + - interface + - interfaceKind + type: object + status: + description: RouteReflectorClientStatus defines the observed state of RouteReflectorClient + properties: + health: + description: Indicates the health score of the RouteReflectorClient. + type: integer + healthScoreReason: + description: Indicates the reason for the health score. + type: string + lastChange: + description: The time when the state of the resource last changed. + type: string + numRouteReflectorClientBGPPeers: + description: Total number of configured route reflector peers on the route reflector client. + type: integer + numRouteReflectorClientBGPPeersOperDown: + description: Total number of configured route reflector peers on the route reflector client that are operationally down. + type: integer + operDownRouteReflectorClientPeers: + description: List of route reflector BGPPeers which are operationally down. + items: + type: string + type: array + operationalState: + description: Operational state of the RouteReflectorClient. + type: string + type: object + type: object +served: true +storage: false +subresources: + status: {} diff --git a/static/resources/25.8.1/routereflectorclientstates.protocols.eda.nokia.com/v1.yaml b/static/resources/25.8.1/routereflectorclientstates.protocols.eda.nokia.com/v1.yaml new file mode 100644 index 0000000..6de6759 --- /dev/null +++ b/static/resources/25.8.1/routereflectorclientstates.protocols.eda.nokia.com/v1.yaml @@ -0,0 +1,42 @@ +name: v1 +schema: + openAPIV3Schema: + description: RouteReflectorClientState is the Schema for the routereflectorclientstates API + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + description: RouteReflectorClientStateSpec defines the desired state of RouteReflectorClientState + properties: + defaultRouteReflectorClient: + description: Denotes if the route reflector client is a DefaultRouteReflectorClient or RouteReflectorClient + type: boolean + routeReflectorClientBGPPeers: + description: A list of BGPPeers configured on the route reflector client to peer with route reflectors + items: + type: string + type: array + type: object + status: + description: RouteReflectorClientStateStatus defines the observed state of RouteReflectorClientState + type: object + type: object +served: true +storage: true +subresources: + status: {} diff --git a/static/resources/25.8.1/routereflectorclientstates.protocols.eda.nokia.com/v1alpha1.yaml b/static/resources/25.8.1/routereflectorclientstates.protocols.eda.nokia.com/v1alpha1.yaml new file mode 100644 index 0000000..003bc8e --- /dev/null +++ b/static/resources/25.8.1/routereflectorclientstates.protocols.eda.nokia.com/v1alpha1.yaml @@ -0,0 +1,44 @@ +deprecated: true +deprecationWarning: This version is deprecated and will no longer be supported in the next version. +name: v1alpha1 +schema: + openAPIV3Schema: + description: RouteReflectorClientState is the Schema for the routereflectorclientstates API + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + description: RouteReflectorClientStateSpec defines the desired state of RouteReflectorClientState + properties: + defaultRouteReflectorClient: + description: Denotes if the route reflector client is a DefaultRouteReflectorClient or RouteReflectorClient + type: boolean + routeReflectorClientBGPPeers: + description: A list of BGPPeers configured on the route reflector client to peer with route reflectors + items: + type: string + type: array + type: object + status: + description: RouteReflectorClientStateStatus defines the observed state of RouteReflectorClientState + type: object + type: object +served: true +storage: false +subresources: + status: {} diff --git a/static/resources/25.8.1/routereflectors.protocols.eda.nokia.com/v1.yaml b/static/resources/25.8.1/routereflectors.protocols.eda.nokia.com/v1.yaml new file mode 100644 index 0000000..5bf757c --- /dev/null +++ b/static/resources/25.8.1/routereflectors.protocols.eda.nokia.com/v1.yaml @@ -0,0 +1,332 @@ +additionalPrinterColumns: + - jsonPath: .status.lastChange + name: Last Change + type: date + - jsonPath: .status.operationalState + name: Operational State + type: string + - jsonPath: .status.numRouteReflectorBGPPeers + name: NumRouteReflectorBGPPeers + type: string + - jsonPath: .status.numRouteReflectorBGPPeersOperDown + name: NumRouteReflectorBGPPeersOperDown + type: string +name: v1 +schema: + openAPIV3Schema: + description: RouteReflector is the Schema for the routereflectors API + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + description: RouteReflector enables the configuration of iBGP sessions with RouteReflectorClients. It includes settings for selecting Interfaces, client selectors for IPv4 and IPv6, and the option to specify a BGP group and cluster ID. + properties: + asPathOptions: + description: AS Path Options + properties: + allowOwnAS: + default: 0 + description: The maximum number of times the global AS number or a local AS number of the BGP instance can appear in any received AS_PATH before it is considered a loop and considered invalid. + maximum: 255 + minimum: 0 + type: integer + removePrivateAS: + description: Options for removing private AS numbers (2-byte and 4-byte) from the advertised AS path towards all peers. + properties: + ignorePeerAS: + default: false + description: If set to true then do not delete or replace a private AS number that is the same as the peer AS number. + type: boolean + leadingOnly: + default: false + description: If set to true then only delete or replace private AS numbers that appear before the first occurrence of a non-private ASN in the sequence of most recent ASNs in the AS path. + type: boolean + removePrivateASMode: + default: DISABLED + description: The method by which private AS numbers are removed from the advertised AS_PATH attribute. + enum: + - DISABLED + - REPLACE + - DELETE + type: string + required: + - ignorePeerAS + - leadingOnly + - removePrivateASMode + type: object + required: + - allowOwnAS + type: object + bfd: + description: Enable or disable Bi-forward Forwarding Detection (BFD) with fast failover. + type: boolean + bgpGroup: + description: Reference to BgpGroup + type: string + clientIPs: + description: List of RR client IPs to which the iBGP sessions are established. + items: + type: string + type: array + clusterID: + description: Sets the cluster ID for route reflectors. + type: string + exportPolicy: + description: Reference to a Policy CR that will be used to filter routes advertised to peers. + items: + type: string + type: array + grStaleRouteTime: + description: Enables Graceful Restart on the peer and sets the stale route time. + maximum: 3600 + minimum: 1 + type: integer + importPolicy: + description: Reference to a Policy CR that will be used to filter routes received from peers. + items: + type: string + type: array + interface: + description: Reference to a RoutedInterface or IrbInterface resource whose IP will be used as a source IP for the BGP session. + type: string + interfaceKind: + description: InterfaceReference type defines whether the provided Reference is a RoutedInterface or IrbInterface. + enum: + - ROUTEDINTERFACE + - IRBINTERFACE + type: string + ipv4ClientSelector: + description: Label selector used to select the RouteReflectorClients to which the iBGP sessions are established for IPv4. + items: + type: string + type: array + ipv4Unicast: + description: Parameters relating to the IPv4 unicast AFI/SAFI. + properties: + advertiseIPV6NextHops: + description: Enables advertisement of IPv4 Unicast routes with IPv6 next-hops to peers. + type: boolean + enabled: + description: Enables the IPv4 unicast AFISAFI. + type: boolean + prefixLimit: + properties: + prefixLimitAccepted: + properties: + logOnly: + description: Defines the action to take when the maximum number of prefixes is exceeded. Session is reset if set to false, otherwise only a warning is logged. + type: boolean + maxReceivedRoutes: + description: Maximum number of prefixes allowed to be received from the neighbor, counting only accepted routes. + format: int32 + maximum: 4294967295 + minimum: 1 + type: integer + warningThreshold: + description: A percentage of the maximum number of prefixes that can be accepted before a warning is logged. + maximum: 100 + minimum: 1 + type: integer + type: object + prefixLimitReceived: + properties: + logOnly: + description: Defines the action to take when the maximum number of prefixes is exceeded. Session is reset if set to false, otherwise only a warning is logged. + type: boolean + maxReceivedRoutes: + description: Maximum number of prefixes allowed to be received from the neighbor, counting all routes (accepted and rejected by import policies). + format: int32 + maximum: 4294967295 + minimum: 1 + type: integer + warningThreshold: + description: A percentage of the maximum number of prefixes that can be received before a warning is logged. + maximum: 100 + minimum: 1 + type: integer + type: object + type: object + receiveIPV6NextHops: + description: Enables the advertisement of the RFC 5549 capability to receive IPv4 routes with IPv6 next-hops. + type: boolean + type: object + ipv6ClientSelector: + description: Label selector used to select the RouteReflectorClients to which the iBGP sessions are established for IPv6. + items: + type: string + type: array + ipv6Unicast: + description: Parameters relating to the IPv6 unicast AFI/SAFI. + properties: + enabled: + description: Enables the IPv6 unicast AFISAFI + type: boolean + prefixLimit: + properties: + prefixLimitAccepted: + properties: + logOnly: + description: Defines the action to take when the maximum number of prefixes is exceeded. Session is reset if set to false, otherwise only a warning is logged. + type: boolean + maxReceivedRoutes: + description: Maximum number of prefixes allowed to be received from the neighbor, counting only accepted routes. + format: int32 + maximum: 4294967295 + minimum: 1 + type: integer + warningThreshold: + description: A percentage of the maximum number of prefixes that can be accepted before a warning is logged. + maximum: 100 + minimum: 1 + type: integer + type: object + prefixLimitReceived: + properties: + logOnly: + description: Defines the action to take when the maximum number of prefixes is exceeded. Session is reset if set to false, otherwise only a warning is logged. + type: boolean + maxReceivedRoutes: + description: Maximum number of prefixes allowed to be received from the neighbor, counting all routes (accepted and rejected by import policies). + format: int32 + maximum: 4294967295 + minimum: 1 + type: integer + warningThreshold: + description: A percentage of the maximum number of prefixes that can be received before a warning is logged. + maximum: 100 + minimum: 1 + type: integer + type: object + type: object + type: object + keychain: + description: Reference to a Keychain resource that will be used for authentication with the BGP peer. + type: string + localAS: + description: The local autonomous system number advertised to peers. + properties: + autonomousSystem: + description: Local Autonomous System number. + maximum: 4294967295 + minimum: 1 + type: integer + prependGlobalAS: + description: When set to true, the global ASN value is prepended to the AS path in outbound routes towards each BGP peer. + type: boolean + prependLocalAS: + description: When set to true, the local AS value is prepended to the AS path of inbound routes from each EBGP peer. + type: boolean + required: + - autonomousSystem + type: object + peerAS: + description: The autonomous system number expected from peers. + properties: + autonomousSystem: + description: Local Autonomous System number. + maximum: 4294967295 + minimum: 1 + type: integer + required: + - autonomousSystem + type: object + sendCommunityLarge: + description: When false, all large (12 byte) BGP communities from all outbound routes advertised to the peer are stripped. + type: boolean + sendCommunityStandard: + description: When false, all standard (4 byte) communities from all outbound routes advertised to the peer are stripped. + type: boolean + sendDefaultRoute: + description: Options for controlling the generation of default routes towards BGP peers. + properties: + addressFamily: + description: Enables the sending of a synthetically generated default IPv4 or IPV6 route to each peer. + items: + enum: + - IPV4-UNICAST + - IPV6-UNICAST + type: string + type: array + exportPolicy: + description: Reference to a Policy that should be applied to the advertised default routes, in order to set their attributes to non-default values. + type: string + required: + - addressFamily + type: object + timers: + description: Timer configurations + properties: + connectRetry: + description: The time interval in seconds between successive attempts to establish a session with a peer. + maximum: 65535 + minimum: 1 + type: integer + holdTime: + description: The hold-time interval in seconds that the router proposes to the peer in its OPEN message. + maximum: 65535 + minimum: 0 + type: integer + keepAlive: + description: The interval in seconds between successive keepalive messages sent to the peer. + maximum: 21845 + minimum: 0 + type: integer + minimumAdvertisementInterval: + description: The value assigned to the MinRouteAdvertisementIntervalTimer of RFC 4271, for both EBGP and IBGP sessions. + maximum: 255 + minimum: 1 + type: integer + type: object + required: + - bgpGroup + - clusterID + - interface + - interfaceKind + type: object + status: + description: RouteReflectorStatus defines the observed state of RouteReflector + properties: + health: + description: Indicates the health score of the RouteReflector. + type: integer + healthScoreReason: + description: Indicates the reason for the health score. + type: string + lastChange: + description: The time when the state of the resource last changed. + type: string + numRouteReflectorBGPPeers: + description: Total number of configured route reflector client peers on the route reflector. + type: integer + numRouteReflectorBGPPeersOperDown: + description: Total number of configured route reflector client peers on the route reflector that are operationally down. + type: integer + operDownRouteReflectorPeers: + description: List of route reflector BGPPeers which are operationally down. + items: + type: string + type: array + operationalState: + description: Operational state of the RouteReflector. + type: string + type: object + type: object +served: true +storage: true +subresources: + status: {} diff --git a/static/resources/25.8.1/routereflectors.protocols.eda.nokia.com/v1alpha1.yaml b/static/resources/25.8.1/routereflectors.protocols.eda.nokia.com/v1alpha1.yaml new file mode 100644 index 0000000..475a05a --- /dev/null +++ b/static/resources/25.8.1/routereflectors.protocols.eda.nokia.com/v1alpha1.yaml @@ -0,0 +1,270 @@ +additionalPrinterColumns: + - jsonPath: .status.lastChange + name: Last Change + type: date + - jsonPath: .status.operationalState + name: Operational State + type: string + - jsonPath: .status.numRouteReflectorBGPPeers + name: NumRouteReflectorBGPPeers + type: string + - jsonPath: .status.numRouteReflectorBGPPeersOperDown + name: NumRouteReflectorBGPPeersOperDown + type: string +deprecated: true +deprecationWarning: This version is deprecated and will no longer be supported in the next version. +name: v1alpha1 +schema: + openAPIV3Schema: + description: RouteReflector is the Schema for the routereflectors API + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + description: RouteReflector enables the configuration of iBGP sessions with RouteReflectorClients. It includes settings for selecting Interfaces, client selectors for IPv4 and IPv6, and the option to specify a BGP group and cluster ID. + properties: + asPathOptions: + description: AS Path Options + properties: + allowOwnAS: + default: 0 + description: The maximum number of times the global AS number or a local AS number of the BGP instance can appear in any received AS_PATH before it is considered a loop and considered invalid. + maximum: 255 + minimum: 0 + type: integer + removePrivateAS: + description: Options for removing private AS numbers (2-byte and 4-byte) from the advertised AS path towards all peers. + properties: + ignorePeerAS: + default: false + description: If set to true then do not delete or replace a private AS number that is the same as the peer AS number. + type: boolean + leadingOnly: + default: false + description: If set to true then only delete or replace private AS numbers that appear before the first occurrence of a non-private ASN in the sequence of most recent ASNs in the AS path. + type: boolean + removePrivateASMode: + default: DISABLED + description: The method by which private AS numbers are removed from the advertised AS_PATH attribute. + enum: + - DISABLED + - REPLACE + - DELETE + type: string + required: + - ignorePeerAS + - leadingOnly + - removePrivateASMode + type: object + required: + - allowOwnAS + type: object + bfd: + description: Enable or disable Bi-forward Forwarding Detection (BFD) with fast failover. + type: boolean + bgpGroup: + description: Reference to BgpGroup + type: string + clientIPs: + description: List of RR client IPs to which the iBGP sessions are established. + items: + type: string + type: array + clusterID: + description: Sets the cluster ID for route reflectors. + type: string + exportPolicy: + description: Reference to a Policy CR that will be used to filter routes advertised to peers. + items: + type: string + type: array + grStaleRouteTime: + description: Enables Graceful Restart on the peer and sets the stale route time. + maximum: 3600 + minimum: 1 + type: integer + importPolicy: + description: Reference to a Policy CR that will be used to filter routes received from peers. + items: + type: string + type: array + interface: + description: Reference to a RoutedInterface or IrbInterface resource whose IP will be used as a source IP for the BGP session. + type: string + interfaceKind: + description: InterfaceReference type defines whether the provided Reference is a RoutedInterface or IrbInterface. + enum: + - ROUTEDINTERFACE + - IRBINTERFACE + type: string + ipv4ClientSelector: + description: Label selector used to select the RouteReflectorClients to which the iBGP sessions are established for IPv4. + items: + type: string + type: array + ipv4Unicast: + description: Parameters relating to the IPv4 unicast AFI/SAFI. + properties: + advertiseIPV6NextHops: + description: Enables advertisement of IPv4 Unicast routes with IPv6 next-hops to peers. + type: boolean + enabled: + description: Enables the IPv4 unicast AFISAFI. + type: boolean + maxReceivedRoutes: + description: Maximum number of IPv4 Unicast routes that will be accepted from the neighbor, counting routes accepted and rejected by import policies. + maximum: 4294967295 + minimum: 1 + type: integer + receiveIPV6NextHops: + description: Enables the advertisement of the RFC 5549 capability to receive IPv4 routes with IPv6 next-hops. + type: boolean + type: object + ipv6ClientSelector: + description: Label selector used to select the RouteReflectorClients to which the iBGP sessions are established for IPv6. + items: + type: string + type: array + ipv6Unicast: + description: Parameters relating to the IPv6 unicast AFI/SAFI. + properties: + enabled: + description: Enables the IPv6 unicast AFISAFI + type: boolean + maxReceivedRoutes: + description: Maximum number of IPv6 Unicast routes that will be accepted from the neighbor, counting routes accepted and rejected by import policies. + maximum: 4294967295 + minimum: 1 + type: integer + type: object + keychain: + description: Reference to a Keychain resource that will be used for authentication with the BGP peer. + type: string + localAS: + description: The local autonomous system number advertised to peers. + properties: + autonomousSystem: + description: Local Autonomous System number. + maximum: 4294967295 + minimum: 1 + type: integer + prependGlobalAS: + description: When set to true, the global ASN value is prepended to the AS path in outbound routes towards each BGP peer. + type: boolean + prependLocalAS: + description: When set to true, the local AS value is prepended to the AS path of inbound routes from each EBGP peer. + type: boolean + required: + - autonomousSystem + type: object + peerAS: + description: The autonomous system number expected from peers. + properties: + autonomousSystem: + description: Local Autonomous System number. + maximum: 4294967295 + minimum: 1 + type: integer + required: + - autonomousSystem + type: object + sendCommunityLarge: + description: When false, all large (12 byte) BGP communities from all outbound routes advertised to the peer are stripped. + type: boolean + sendCommunityStandard: + description: When false, all standard (4 byte) communities from all outbound routes advertised to the peer are stripped. + type: boolean + sendDefaultRoute: + description: Options for controlling the generation of default routes towards BGP peers. + properties: + addressFamily: + description: Enables the sending of a synthetically generated default IPv4 or IPV6 route to each peer. + items: + enum: + - IPV4-UNICAST + - IPV6-UNICAST + type: string + type: array + exportPolicy: + description: Reference to a Policy that should be applied to the advertised default routes, in order to set their attributes to non-default values. + type: string + required: + - addressFamily + type: object + timers: + description: Timer configurations + properties: + connectRetry: + description: The time interval in seconds between successive attempts to establish a session with a peer. + maximum: 65535 + minimum: 1 + type: integer + holdTime: + description: The hold-time interval in seconds that the router proposes to the peer in its OPEN message. + maximum: 65535 + minimum: 0 + type: integer + keepAlive: + description: The interval in seconds between successive keepalive messages sent to the peer. + maximum: 21845 + minimum: 0 + type: integer + minimumAdvertisementInterval: + description: The value assigned to the MinRouteAdvertisementIntervalTimer of RFC 4271, for both EBGP and IBGP sessions. + maximum: 255 + minimum: 1 + type: integer + type: object + required: + - bgpGroup + - clusterID + - interface + - interfaceKind + type: object + status: + description: RouteReflectorStatus defines the observed state of RouteReflector + properties: + health: + description: Indicates the health score of the RouteReflector. + type: integer + healthScoreReason: + description: Indicates the reason for the health score. + type: string + lastChange: + description: The time when the state of the resource last changed. + type: string + numRouteReflectorBGPPeers: + description: Total number of configured route reflector client peers on the route reflector. + type: integer + numRouteReflectorBGPPeersOperDown: + description: Total number of configured route reflector client peers on the route reflector that are operationally down. + type: integer + operDownRouteReflectorPeers: + description: List of route reflector BGPPeers which are operationally down. + items: + type: string + type: array + operationalState: + description: Operational state of the RouteReflector. + type: string + type: object + type: object +served: true +storage: false +subresources: + status: {} diff --git a/static/resources/25.8.1/routereflectorstates.protocols.eda.nokia.com/v1.yaml b/static/resources/25.8.1/routereflectorstates.protocols.eda.nokia.com/v1.yaml new file mode 100644 index 0000000..d403f40 --- /dev/null +++ b/static/resources/25.8.1/routereflectorstates.protocols.eda.nokia.com/v1.yaml @@ -0,0 +1,42 @@ +name: v1 +schema: + openAPIV3Schema: + description: RouteReflectorState is the Schema for the routereflectorstates API + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + description: RouteReflectorStateSpec defines the desired state of RouteReflectorState + properties: + defaultRouteReflector: + description: Denotes if the route reflector is a DefaultRouteReflector or RouteReflector + type: boolean + routeReflectorBGPPeers: + description: A list of BGPPeers configured on the route reflector to peer with clients + items: + type: string + type: array + type: object + status: + description: RouteReflectorStateStatus defines the observed state of RouteReflectorState + type: object + type: object +served: true +storage: true +subresources: + status: {} diff --git a/static/resources/25.8.1/routereflectorstates.protocols.eda.nokia.com/v1alpha1.yaml b/static/resources/25.8.1/routereflectorstates.protocols.eda.nokia.com/v1alpha1.yaml new file mode 100644 index 0000000..0e0db59 --- /dev/null +++ b/static/resources/25.8.1/routereflectorstates.protocols.eda.nokia.com/v1alpha1.yaml @@ -0,0 +1,44 @@ +deprecated: true +deprecationWarning: This version is deprecated and will no longer be supported in the next version. +name: v1alpha1 +schema: + openAPIV3Schema: + description: RouteReflectorState is the Schema for the routereflectorstates API + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + description: RouteReflectorStateSpec defines the desired state of RouteReflectorState + properties: + defaultRouteReflector: + description: Denotes if the route reflector is a DefaultRouteReflector or RouteReflector + type: boolean + routeReflectorBGPPeers: + description: A list of BGPPeers configured on the route reflector to peer with clients + items: + type: string + type: array + type: object + status: + description: RouteReflectorStateStatus defines the observed state of RouteReflectorState + type: object + type: object +served: true +storage: false +subresources: + status: {} diff --git a/static/resources/routers.services.eda.nokia.com/v1.yaml b/static/resources/25.8.1/routers.services.eda.nokia.com/v1.yaml similarity index 100% rename from static/resources/routers.services.eda.nokia.com/v1.yaml rename to static/resources/25.8.1/routers.services.eda.nokia.com/v1.yaml diff --git a/static/resources/routers.services.eda.nokia.com/v1alpha1.yaml b/static/resources/25.8.1/routers.services.eda.nokia.com/v1alpha1.yaml similarity index 100% rename from static/resources/routers.services.eda.nokia.com/v1alpha1.yaml rename to static/resources/25.8.1/routers.services.eda.nokia.com/v1alpha1.yaml diff --git a/static/resources/routerstates.services.eda.nokia.com/v1.yaml b/static/resources/25.8.1/routerstates.services.eda.nokia.com/v1.yaml similarity index 100% rename from static/resources/routerstates.services.eda.nokia.com/v1.yaml rename to static/resources/25.8.1/routerstates.services.eda.nokia.com/v1.yaml diff --git a/static/resources/25.8.1/routerstates.services.eda.nokia.com/v1alpha1.yaml b/static/resources/25.8.1/routerstates.services.eda.nokia.com/v1alpha1.yaml new file mode 100644 index 0000000..021e462 --- /dev/null +++ b/static/resources/25.8.1/routerstates.services.eda.nokia.com/v1alpha1.yaml @@ -0,0 +1,57 @@ +deprecated: true +deprecationWarning: This version is deprecated and will no longer be supported in the next version. +name: v1alpha1 +schema: + openAPIV3Schema: + description: RouterState is the Schema for the routerstates API + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + description: RouterStateSpec defines the desired state of RouterState + properties: + evi: + description: EVI in use for this Router + maximum: 65535 + minimum: 1 + type: integer + exportTarget: + description: Export route target for this Router, in the format 'target:N:N' + pattern: ^target.*$ + type: string + importTarget: + description: Import route target for this Router, in the format 'target:N:N' + pattern: ^target.*$ + type: string + tunnelIndex: + description: Vxlan tunnel index in use + type: integer + vni: + description: VNI in use for this Router + maximum: 16777215 + minimum: 1 + type: integer + type: object + status: + description: RouterStateStatus defines the observed state of RouterState + type: object + type: object +served: true +storage: false +subresources: + status: {} diff --git a/static/resources/setupenvs.environment.eda.nokia.com/v1alpha1.yaml b/static/resources/25.8.1/setupenvs.environment.eda.nokia.com/v1alpha1.yaml similarity index 100% rename from static/resources/setupenvs.environment.eda.nokia.com/v1alpha1.yaml rename to static/resources/25.8.1/setupenvs.environment.eda.nokia.com/v1alpha1.yaml diff --git a/static/resources/25.8.1/simlinks.core.eda.nokia.com/v1.yaml b/static/resources/25.8.1/simlinks.core.eda.nokia.com/v1.yaml new file mode 100644 index 0000000..07565ca --- /dev/null +++ b/static/resources/25.8.1/simlinks.core.eda.nokia.com/v1.yaml @@ -0,0 +1,87 @@ +name: v1 +schema: + openAPIV3Schema: + description: SimLink is the Schema for the simlinks API + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + description: SimLinkSpec defines the desired state of SimLink + properties: + bondName: + description: |- + When creating a SimLink with more than one member, the bondName is used to create a bond on the SimNode side. + This field must not be used when creating a single member SimLink. + type: string + links: + description: |- + To create a point to point link with a single interface on both sides use a single link object. + To create a point to point link with a LAG configured on both side, use two links with matching nodes. + A multihommed lag is created by using two or more links where the remoteNode and/or localNode can be different. + Creating a link with only localNode specified will create an edge interface. + items: + properties: + local: + properties: + interface: + description: Normalized name of the interface/port, e.g. ethernet-1-1. + type: string + interfaceResource: + description: Reference to a Interface. + type: string + node: + description: Reference to a TopoNode. + type: string + required: + - interfaceResource + - node + type: object + sim: + properties: + interface: + description: Normalized name of the interface/port, e.g. ethernet-1-1. + type: string + interfaceResource: + description: Reference to a Interface. + type: string + node: + description: Reference to a TopoNode. + type: string + required: + - interfaceResource + - node + type: object + speed: + type: string + required: + - local + - sim + type: object + minItems: 1 + type: array + required: + - links + type: object + status: + description: SimLinkStatus defines the observed state of SimLink + type: object + type: object +served: true +storage: true +subresources: + status: {} diff --git a/static/resources/simnodes.core.eda.nokia.com/v1.yaml b/static/resources/25.8.1/simnodes.core.eda.nokia.com/v1.yaml similarity index 100% rename from static/resources/simnodes.core.eda.nokia.com/v1.yaml rename to static/resources/25.8.1/simnodes.core.eda.nokia.com/v1.yaml diff --git a/static/resources/25.8.1/stateconfigs.services.eda.nokia.com/v1.yaml b/static/resources/25.8.1/stateconfigs.services.eda.nokia.com/v1.yaml new file mode 100644 index 0000000..11e9cf1 --- /dev/null +++ b/static/resources/25.8.1/stateconfigs.services.eda.nokia.com/v1.yaml @@ -0,0 +1,47 @@ +name: v1 +schema: + openAPIV3Schema: + description: StateConfig is the Schema for the StateConfigs API + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + properties: + configs: + items: + properties: + config: + type: string + path: + type: string + required: + - path + type: object + type: array + required: + - configs + type: object + status: + type: object + required: + - spec + type: object +served: true +storage: true +subresources: + status: {} diff --git a/static/resources/25.8.1/stateconfigs.services.eda.nokia.com/v1alpha1.yaml b/static/resources/25.8.1/stateconfigs.services.eda.nokia.com/v1alpha1.yaml new file mode 100644 index 0000000..fc9774c --- /dev/null +++ b/static/resources/25.8.1/stateconfigs.services.eda.nokia.com/v1alpha1.yaml @@ -0,0 +1,49 @@ +deprecated: true +deprecationWarning: This version is deprecated and will no longer be supported in the next version. +name: v1alpha1 +schema: + openAPIV3Schema: + description: StateConfig is the Schema for the StateConfigs API + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + properties: + configs: + items: + properties: + config: + type: string + path: + type: string + required: + - path + type: object + type: array + required: + - configs + type: object + status: + type: object + required: + - spec + type: object +served: true +storage: false +subresources: + status: {} diff --git a/static/resources/staticroutes.protocols.eda.nokia.com/v1.yaml b/static/resources/25.8.1/staticroutes.protocols.eda.nokia.com/v1.yaml similarity index 100% rename from static/resources/staticroutes.protocols.eda.nokia.com/v1.yaml rename to static/resources/25.8.1/staticroutes.protocols.eda.nokia.com/v1.yaml diff --git a/static/resources/25.8.1/staticroutes.protocols.eda.nokia.com/v1alpha1.yaml b/static/resources/25.8.1/staticroutes.protocols.eda.nokia.com/v1alpha1.yaml new file mode 100644 index 0000000..f65e6e8 --- /dev/null +++ b/static/resources/25.8.1/staticroutes.protocols.eda.nokia.com/v1alpha1.yaml @@ -0,0 +1,138 @@ +deprecated: true +deprecationWarning: This version is deprecated and will no longer be supported in the next version. +name: v1alpha1 +schema: + openAPIV3Schema: + description: StaticRoute is the Schema for the static routes API + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + description: StaticRoute allows for the specification of destination prefixes, route preferences, and the associated Router. It also supports configuring nexthop groups and specifying the nodes where the static routes should be provisioned. + properties: + nexthopGroup: + description: Group of nexthops for the list of prefixes. + properties: + bfd: + description: Enables BFD to the next-hops in the group. Local and Remote discriminator parameters have been deprecated at this level. Use Nexthop to set these parameters. + properties: + enabled: + default: false + description: Defines whether BFD should be enabled towards the nexthops. + type: boolean + localAddress: + description: Defines the local address to use when establishing the BFD session with the nexthop. + type: string + localDiscriminator: + description: Defines the local discriminator. + type: integer + remoteDiscriminator: + description: Defines the remote discriminator. + type: integer + type: object + blackhole: + default: false + description: If set to true all traffic destined to the prefixes will be blackholed. If enabled, next-hops are ignored and this takes precedence. + type: boolean + blackholeSendICMP: + description: When enabled, the router will generate ICMP Unreachable messages for packets destined to the blackhole route. + type: boolean + nexthops: + description: Ordered list of nexthops. + items: + properties: + bfd: + description: Enables BFD to the next-hops in the group. This overrides the configuration at the group. + properties: + enabled: + default: false + description: Defines whether BFD should be enabled towards the nexthops. + type: boolean + localAddress: + description: Defines the local address to use when establishing the BFD session with the nexthop. + type: string + localDiscriminator: + description: Defines the local discriminator. + type: integer + remoteDiscriminator: + description: Defines the remote discriminator. + type: integer + type: object + ipPrefix: + description: Address to use. + type: string + resolve: + default: false + description: If set to true the next-hops can be destinations which are resolved in the route table. This overrides the configuration at the group. + type: boolean + required: + - ipPrefix + type: object + type: array + resolve: + default: false + description: If set to true the next-hops can be destinations which are resolved in the route table. + type: boolean + type: object + nodes: + description: List of nodes on which to configure the static routes. An AND operation is executed against the nodes in this list and the nodes on which the Router is configured to determine the Nodes on which to configure the static routes. + items: + type: string + type: array + preference: + description: Defines the route preference. + type: integer + prefixes: + description: List of destination prefixes and mask to use for the static routes. + items: + type: string + type: array + router: + description: Reference to a Router on which to configure the static routes. If no Nodes are provided then the static routes will be provisioned on all Nodes on which the Router is provisioned. + type: string + required: + - nexthopGroup + - prefixes + - router + type: object + status: + description: StaticRouteStatus defines the observed state of Static Route + properties: + health: + description: Indicates the health score of the static routes. + type: integer + healthScoreReason: + description: Indicates the reason for the health score. + type: string + lastChange: + description: The time when the state of the resource last changed. + type: string + nodes: + description: List of Nodes on which the static routes are configured. + items: + type: string + type: array + operationalState: + description: Operational state of the static routes. + type: string + type: object + type: object +served: true +storage: false +subresources: + status: {} diff --git a/static/resources/25.8.1/subnetallocationpools.core.eda.nokia.com/v1.yaml b/static/resources/25.8.1/subnetallocationpools.core.eda.nokia.com/v1.yaml new file mode 100644 index 0000000..839785c --- /dev/null +++ b/static/resources/25.8.1/subnetallocationpools.core.eda.nokia.com/v1.yaml @@ -0,0 +1,90 @@ +name: v1 +schema: + openAPIV3Schema: + description: SubnetAllocationPool is the Schema for the subnetallocationpools API + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + description: |- + SubnetAllocationPool is a generic subnet allocation pool supporting allocation of IPv4 and/or IPv6 child subnets from a list of parent subnet segments. + It allocates a subnet of the configured length from the provided parent subnet. + For example a pool could return 10.1.0.8/29 when a segment is defined as subnet 10.1.0.0/16 with subnet length 29. + Consult application documentation to know which pool type to use for a given use case. + properties: + publishAllocations: + description: If true, allocations in segments will be published to EDB, available to query via EQL and trigger state applications off of. + type: boolean + segments: + description: List of segments containing subnets to allocate. + items: + properties: + allocations: + description: List of reservations to exclude from allocations from this segment. + items: + properties: + name: + description: Name of this allocation. + type: string + value: + description: Allocation to reserve. + type: string + required: + - name + - value + type: object + type: array + reservations: + description: List of ranges to exclude from allocations from this segment. + items: + properties: + end: + description: Value to reserve to. + type: string + start: + description: Value to start reserving. + type: string + required: + - end + - start + type: object + type: array + subnet: + description: IPv4 or IPv6 subnet to allocate subnets from, e.g. 10.1.0.0/16. + type: string + subnetLength: + description: The size of the subnets to be allocated from within the parent subnet, e.g. 29 (which could allocate 10.1.0.8/29, for example). + format: int32 + type: integer + required: + - subnet + - subnetLength + type: object + minItems: 1 + type: array + required: + - segments + type: object + status: + description: SubnetAllocationPoolStatus defines the observed state of SubnetAllocationPool + type: object + type: object +served: true +storage: true +subresources: + status: {} diff --git a/static/resources/systeminterfaces.routing.eda.nokia.com/v1alpha1.yaml b/static/resources/25.8.1/systeminterfaces.routing.eda.nokia.com/v1alpha1.yaml similarity index 100% rename from static/resources/systeminterfaces.routing.eda.nokia.com/v1alpha1.yaml rename to static/resources/25.8.1/systeminterfaces.routing.eda.nokia.com/v1alpha1.yaml diff --git a/static/resources/25.8.1/systeminterfacestates.routing.eda.nokia.com/v1alpha1.yaml b/static/resources/25.8.1/systeminterfacestates.routing.eda.nokia.com/v1alpha1.yaml new file mode 100644 index 0000000..095e3ed --- /dev/null +++ b/static/resources/25.8.1/systeminterfacestates.routing.eda.nokia.com/v1alpha1.yaml @@ -0,0 +1,68 @@ +name: v1alpha1 +schema: + openAPIV3Schema: + description: SystemInterfaceState is the Schema for the systeminterfacestates API + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + description: SystemInterfaceStateSpec defines the desired state of SystemInterfaceState + properties: + defaultRouter: + description: Reference to a DefaultRouter + type: string + interface: + description: Reference to an interface + type: string + ipv4Address: + description: IPv4 address of the system interface + type: string + ipv6Address: + description: IPv6 addresses of the system interface + type: string + networkInstanceName: + description: The name of the network-instance or base routing instance in which the SystemInterface is configured + type: string + node: + description: Reference to Node object + type: string + nodeInterface: + description: Node specific interface name, for example "ethernet-1/1", "1/1/c1/1" + type: string + operatingSystem: + description: Operating System of the Node + type: string + subInterfaceIndex: + description: Index of the subinterface + type: integer + required: + - defaultRouter + - interface + - ipv4Address + - networkInstanceName + - node + - nodeInterface + type: object + status: + description: SystemInterfaceStateStatus defines the observed state of SystemInterfaceState + type: object + type: object +served: true +storage: true +subresources: + status: {} diff --git a/static/resources/25.8.1/targetnodes.core.eda.nokia.com/v1.yaml b/static/resources/25.8.1/targetnodes.core.eda.nokia.com/v1.yaml new file mode 100644 index 0000000..c40500a --- /dev/null +++ b/static/resources/25.8.1/targetnodes.core.eda.nokia.com/v1.yaml @@ -0,0 +1,443 @@ +additionalPrinterColumns: + - jsonPath: .status.tlsStatus.nodeSecurityProfile + name: NodeSecurityProfile + type: string + - jsonPath: .status.bootstrapStatus + name: Status + type: string + - jsonPath: .status.dhcpStatus + name: DHCP + type: string + - jsonPath: .spec.address + name: Address + type: string + - jsonPath: .spec.port + name: Port + type: string +name: v1 +schema: + openAPIV3Schema: + description: TargetNode is the Schema for the targetnodes API + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + description: TargetNodeSpec defines the desired state of TargetNode + properties: + address: + description: Addressed used to connect to TopoNode + type: string + dhcp4: + description: DHCPv4 configuration + properties: + address: + description: Assigned address in DHCP4 reply + type: string + options: + description: DHCP4 Options + items: + properties: + option: + description: DHCPv4 option to return to the TopoNode. + enum: + - 1-SubnetMask + - 2-TimeOffset + - 3-Router + - 4-TimeServer + - 5-NameServer + - 6-DomainNameServer + - 7-LogServer + - 8-QuoteServer + - 9-LPRServer + - 10-ImpressServer + - 11-ResourceLocationServer + - 12-HostName + - 13-BootFileSize + - 14-MeritDumpFile + - 15-DomainName + - 16-SwapServer + - 17-RootPath + - 18-ExtensionsPath + - 19-IPForwarding + - 20-NonLocalSourceRouting + - 21-PolicyFilter + - 22-MaximumDatagramAssemblySize + - 23-DefaultIPTTL + - 24-PathMTUAgingTimeout + - 25-PathMTUPlateauTable + - 26-InterfaceMTU + - 27-AllSubnetsAreLocal + - 28-BroadcastAddress + - 29-PerformMaskDiscovery + - 30-MaskSupplier + - 31-PerformRouterDiscovery + - 32-RouterSolicitationAddress + - 33-StaticRoutingTable + - 34-TrailerEncapsulation + - 35-ArpCacheTimeout + - 36-EthernetEncapsulation + - 37-DefaulTCPTTL + - 38-TCPKeepaliveInterval + - 39-TCPKeepaliveGarbage + - 40-NetworkInformationServiceDomain + - 41-NetworkInformationServers + - 42-NTPServers + - 43-VendorSpecificInformation + - 44-NetBIOSOverTCPIPNameServer + - 45-NetBIOSOverTCPIPDatagramDistributionServer + - 46-NetBIOSOverTCPIPNodeType + - 47-NetBIOSOverTCPIPScope + - 48-XWindowSystemFontServer + - 49-XWindowSystemDisplayManager + - 50-RequestedIPAddress + - 51-IPAddressLeaseTime + - 52-OptionOverload + - 53-DHCPMessageType + - 54-ServerIdentifier + - 55-ParameterRequestList + - 56-Message + - 57-MaximumDHCPMessageSize + - 58-RenewTimeValue + - 59-RebindingTimeValue + - 60-ClassIdentifier + - 61-ClientIdentifier + - 62-NetWareIPDomainName + - 63-NetWareIPInformation + - 64-NetworkInformationServicePlusDomain + - 65-NetworkInformationServicePlusServers + - 66-TFTPServerName + - 67-BootfileName + - 68-MobileIPHomeAgent + - 69-SimpleMailTransportProtocolServer + - 70-PostOfficeProtocolServer + - 71-NetworkNewsTransportProtocolServer + - 72-DefaultWorldWideWebServer + - 73-DefaultFingerServer + - 74-DefaultInternetRelayChatServer + - 75-StreetTalkServer + - 76-StreetTalkDirectoryAssistanceServer + - 77-UserClassInformation + - 78-SLPDirectoryAgent + - 79-SLPServiceScope + - 80-RapidCommit + - 81-FQDN + - 82-RelayAgentInformation + - 83-InternetStorageNameService + - 85-NDSServers + - 86-NDSTreeName + - 87-NDSContext + - 88-BCMCSControllerDomainNameList + - 89-BCMCSControllerIPv4AddressList + - 90-Authentication + - 91-ClientLastTransactionTime + - 92-AssociatedIP + - 93-ClientSystemArchitectureType + - 94-ClientNetworkInterfaceIdentifier + - 95-LDAP + - 97-ClientMachineIdentifier + - 98-OpenGroupUserAuthentication + - 99-GeoConfCivic + - 100-IEEE10031TZString + - 101-ReferenceToTZDatabase + - 112-NetInfoParentServerAddress + - 113-NetInfoParentServerTag + - 114-URL + - 116-AutoConfigure + - 117-NameServiceSearch + - 118-SubnetSelection + - 119-DNSDomainSearchList + - 120-SIPServers + - 121-ClasslessStaticRoute + - 122-CCC + - 123-GeoConf + - 124-VendorIdentifyingVendorClass + - 125-VendorIdentifyingVendorSpecific + - 128-TFTPServerIPAddress + - 129-CallServerIPAddress + - 130-DiscriminationString + - 131-RemoteStatisticsServerIPAddress + - 132-8021PVLANID + - 133-8021QL2Priority + - 134-DiffservCodePoint + - 135-HTTPProxyForPhoneSpecificApplications + - 136-PANAAuthenticationAgent + - 137-LoSTServer + - 138-CAPWAPAccessControllerAddresses + - 139-OPTIONIPv4AddressMoS + - 140-OPTIONIPv4FQDNMoS + - 141-SIPUAConfigurationServiceDomains + - 142-OPTIONIPv4AddressANDSF + - 143-OPTIONIPv6AddressANDSF + - 150-TFTPServerAddress + - 151-StatusCode + - 152-BaseTime + - 153-StartTimeOfState + - 154-QueryStartTime + - 155-QueryEndTime + - 156-DHCPState + - 157-DataSource + - 175-Etherboot + - 176-IPTelephone + - 177-EtherbootPacketCableAndCableHome + - 208-PXELinuxMagicString + - 209-PXELinuxConfigFile + - 210-PXELinuxPathPrefix + - 211-PXELinuxRebootTime + - 212-OPTION6RD + - 213-OPTIONv4AccessDomain + - 220-SubnetAllocation + - 221-VirtualSubnetAllocation + - 224-Reserved + - 225-Reserved + - 226-Reserved + - 227-Reserved + - 228-Reserved + - 229-Reserved + - 230-Reserved + - 231-Reserved + - 232-Reserved + - 233-Reserved + - 234-Reserved + - 235-Reserved + - 236-Reserved + - 237-Reserved + - 238-Reserved + - 239-Reserved + - 240-Reserved + - 241-Reserved + - 242-Reserved + - 243-Reserved + - 244-Reserved + - 245-Reserved + - 246-Reserved + - 247-Reserved + - 248-Reserved + - 249-Reserved + - 250-Reserved + - 251-Reserved + - 252-Reserved + - 253-Reserved + - 254-Reserved + - 255-End + type: string + value: + description: Value to return to the TopoNode for the specified option. + items: + type: string + minItems: 1 + type: array + required: + - option + - value + type: object + type: array + required: + - address + - options + type: object + dhcp6: + description: DHCPv6 configuration + properties: + address: + description: Assigned address in DHCP6 reply + type: string + options: + description: DHCP6 Options + items: + properties: + option: + description: DHCPv6 option to return to the TopoNode. + enum: + - 59-BootfileUrl + type: string + value: + description: Value to return to the TopoNode for the specified option. + items: + type: string + minItems: 1 + type: array + required: + - option + - value + type: object + type: array + required: + - address + - options + type: object + macAddress: + description: ' MAC address of the TopoNode' + type: string + operatingSystem: + description: The OS matching this NodeProfile + enum: + - srl + - sros + - eos + - sonic + - ios-xr + - nxos + type: string + platform: + description: Platform type of this Node, e.g. 7220 IXR-D3L + type: string + platformPath: + description: JSPath to use for retrieving the chassis string from the node + type: string + port: + description: Port used to connect to the TopoNode + type: integer + serialNumber: + description: Serial number of the TopoNode + type: string + serialNumberPath: + description: JSPath to use for retrieving the serial number string from the node + type: string + versionMatch: + description: |- + Match the node-retrieved version string to TargetNode version + The value should be a regular expression matching the version string that would appear on the node + type: string + versionPath: + description: JSPath to use for retrieving the version string from the node + type: string + required: + - address + - operatingSystem + type: object + status: + description: TargetNodeStatus defines the observed state of TargetNode + properties: + bootstrapStatus: + description: Bootstrap status of the Target + enum: + - Init + - Ready + - Failed + type: string + bootstrapStatusReason: + description: Human-readable message indicating details about the bootstrapStatus's Failed state + type: string + dhcpStatus: + description: DHCP status of the Target + enum: + - Offered + - Acknowledged + type: string + tlsStatus: + description: TLS status of the Target + properties: + nodeSecurityProfile: + description: NodeSecurity Profile Used + type: string + tls: + description: NodeSecurity Profile Used + properties: + csrParams: + description: A set of certificate signing request parameters used when asking for a CSR from the toponode. + properties: + certificateValidity: + default: 2160h + description: CertificateValidity defines the duration for which the certificate is considered valid after issuance. + type: string + city: + description: City denotes the city where the organization is based. + type: string + commonName: + description: CommonName specifies the common name field of the CSR, typically representing the domain name. + type: string + country: + description: Country indicates the country in which the organization is legally registered. + type: string + csrSuite: + default: CSRSUITE_X509_KEY_TYPE_RSA_2048_SIGNATURE_ALGORITHM_SHA_2_256 + description: The CSRSuite value used when asking for a CSR from the toponode + enum: + - CSRSUITE_X509_KEY_TYPE_RSA_2048_SIGNATURE_ALGORITHM_SHA_2_256 + - CSRSUITE_X509_KEY_TYPE_RSA_2048_SIGNATURE_ALGORITHM_SHA_2_384 + - CSRSUITE_X509_KEY_TYPE_RSA_2048_SIGNATURE_ALGORITHM_SHA_2_512 + - CSRSUITE_X509_KEY_TYPE_RSA_3072_SIGNATURE_ALGORITHM_SHA_2_256 + - CSRSUITE_X509_KEY_TYPE_RSA_3072_SIGNATURE_ALGORITHM_SHA_2_384 + - CSRSUITE_X509_KEY_TYPE_RSA_3072_SIGNATURE_ALGORITHM_SHA_2_512 + - CSRSUITE_X509_KEY_TYPE_RSA_4096_SIGNATURE_ALGORITHM_SHA_2_256 + - CSRSUITE_X509_KEY_TYPE_RSA_4096_SIGNATURE_ALGORITHM_SHA_2_384 + - CSRSUITE_X509_KEY_TYPE_RSA_4096_SIGNATURE_ALGORITHM_SHA_2_512 + - CSRSUITE_X509_KEY_TYPE_ECDSA_PRIME256V1_SIGNATURE_ALGORITHM_SHA_2_256 + - CSRSUITE_X509_KEY_TYPE_ECDSA_PRIME256V1_SIGNATURE_ALGORITHM_SHA_2_384 + - CSRSUITE_X509_KEY_TYPE_ECDSA_PRIME256V1_SIGNATURE_ALGORITHM_SHA_2_512 + - CSRSUITE_X509_KEY_TYPE_ECDSA_SECP384R1_SIGNATURE_ALGORITHM_SHA_2_256 + - CSRSUITE_X509_KEY_TYPE_ECDSA_SECP384R1_SIGNATURE_ALGORITHM_SHA_2_384 + - CSRSUITE_X509_KEY_TYPE_ECDSA_SECP384R1_SIGNATURE_ALGORITHM_SHA_2_512 + - CSRSUITE_X509_KEY_TYPE_ECDSA_SECP521R1_SIGNATURE_ALGORITHM_SHA_2_256 + - CSRSUITE_X509_KEY_TYPE_ECDSA_SECP521R1_SIGNATURE_ALGORITHM_SHA_2_384 + - CSRSUITE_X509_KEY_TYPE_ECDSA_SECP521R1_SIGNATURE_ALGORITHM_SHA_2_512 + - CSRSUITE_X509_KEY_TYPE_EDDSA_ED25519 + type: string + org: + description: Org is the name of the organization requesting the CSR. + type: string + orgUnit: + description: OrgUnit specifies the organizational unit (like department or division) within the organization. + type: string + san: + description: Subject Alternative Names contains additional hostnames or IP addresses covered by the CSR. + properties: + dns: + description: Dns contains a list of DNS names that can be used to access the server. + items: + type: string + type: array + emails: + description: Emails consists of email addresses that should be associated with the certificate. + items: + type: string + type: array + ips: + description: Ips includes IP addresses that the certificate should validate. + items: + type: string + type: array + uris: + description: Uris lists specific URIs that the certificate will authenticate. + items: + type: string + type: array + type: object + state: + description: State represents the state or province where the organization is located. + type: string + type: object + issuerRef: + description: Reference to a CertManager issuer that must be used to sign nodes certificates. + type: string + skipVerify: + description: Skip certificate verification. + type: boolean + trustBundle: + description: |- + Reference to configMap that contains a CA certificate that is used to verify the node certificate + when certificates are not managed by EDA. + type: string + type: object + type: object + type: object + type: object +served: true +storage: true +subresources: + status: {} diff --git a/static/resources/techsupports.oam.eda.nokia.com/v1alpha1.yaml b/static/resources/25.8.1/techsupports.oam.eda.nokia.com/v1alpha1.yaml similarity index 100% rename from static/resources/techsupports.oam.eda.nokia.com/v1alpha1.yaml rename to static/resources/25.8.1/techsupports.oam.eda.nokia.com/v1alpha1.yaml diff --git a/static/resources/25.8.1/thresholds.oam.eda.nokia.com/v1alpha1.yaml b/static/resources/25.8.1/thresholds.oam.eda.nokia.com/v1alpha1.yaml new file mode 100644 index 0000000..67242c3 --- /dev/null +++ b/static/resources/25.8.1/thresholds.oam.eda.nokia.com/v1alpha1.yaml @@ -0,0 +1,127 @@ +name: v1alpha1 +schema: + openAPIV3Schema: + description: Threshold is the Schema for the thresholds API + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + description: |- + A Threshold allows you to monitor a field in EDB and trigger severity-correct alarms based on the value of that field. + By using EDB as a source you are able to trigger thresholds on any published field from a TopoNode, or any other EDB source. + properties: + alarm: + description: Alarm details for this threshold. + properties: + description: + description: The description of the alarm. + type: string + probableCause: + description: The probable cause of the alarm. + type: string + remedialAction: + description: The remedial action for the alarm. + type: string + type: object + enabled: + default: true + description: Enable or disable this threshold. + type: boolean + field: + description: Field to monitor for this threshold, for example `utilization`. + type: string + generateOverlay: + default: false + description: Enable or disable generation of a topology overlay for this threshold. + type: boolean + name: + description: The name of this threshold. This name will be used to generate the alarm name, so should follow CamelCase conventions, e.g. VolumeUtilization. + type: string + path: + description: |- + Path to monitor for this threshold. This should be the full EDB path to the table containing the field you wish to trigger a threshold on. + For example, to monitor the utilization field of the component volume table, you would use `.namespace.node.normal.components_eda_nokia_com.v1.controlmodule.volume`, and set field to `utilization`. + type: string + resource: + description: |- + Which resource to associate with this threshold. This overrides the destination resource in alarms raised as a result of threshold breaches. + By default a resource will attempt to be derived based on the monitored path. + properties: + group: + description: The group of the resource to monitor. + type: string + kind: + description: The kind of resource to monitor. + type: string + name: + description: The name of the resource to monitor. + type: string + required: + - group + - kind + - name + type: object + thresholds: + description: Severities and their associated values. + properties: + criticalThreshold: + description: |- + The minimum average utilization over the last 1 minute to trigger a critical alarm. + This value must be greater than the majorThreshold. + type: integer + delta: + default: 5 + description: |- + The delta value for clearing a threshold. + For example, with a critical threshold of 90, direction of Rising and a delta of 5, the critical alarm will clear when the utilization drops below 85. + type: integer + direction: + default: Rising + description: 'Direction of the threshold: "Rising" or "Falling".' + enum: + - Rising + - Falling + type: string + majorThreshold: + description: |- + The minimum average utilization over the last 1 minute to trigger a major alarm. + This value must be greater than the minorThreshold. + type: integer + minorThreshold: + description: The minimum average utilization over the last 1 minute to trigger a minor alarm. + type: integer + warningThreshold: + description: The minimum average utilization over the last 1 minute to trigger a warning alarm. + type: integer + required: + - direction + type: object + required: + - field + - name + - path + - thresholds + type: object + status: + description: ThresholdStatus defines the observed state of Threshold + type: object + type: object +served: true +storage: true +subresources: + status: {} diff --git a/static/resources/25.8.1/thresholds.platformmetrics.eda.nokia.com/v1.yaml b/static/resources/25.8.1/thresholds.platformmetrics.eda.nokia.com/v1.yaml new file mode 100644 index 0000000..0693102 --- /dev/null +++ b/static/resources/25.8.1/thresholds.platformmetrics.eda.nokia.com/v1.yaml @@ -0,0 +1,37 @@ +name: v1 +schema: + openAPIV3Schema: + description: Threshold is the Schema for the thresholds API + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + description: ThresholdSpec defines the desired state of Threshold + properties: + foo: + description: Foo is an example field of Threshold. Edit threshold_types.go to remove/update + type: string + type: object + status: + description: ThresholdStatus defines the observed state of Threshold + type: object + type: object +served: true +storage: true +subresources: + status: {} diff --git a/static/resources/25.8.1/topobreakouts.core.eda.nokia.com/v1.yaml b/static/resources/25.8.1/topobreakouts.core.eda.nokia.com/v1.yaml new file mode 100644 index 0000000..47dc96b --- /dev/null +++ b/static/resources/25.8.1/topobreakouts.core.eda.nokia.com/v1.yaml @@ -0,0 +1,65 @@ +name: v1 +schema: + openAPIV3Schema: + description: TopoBreakout is the Schema for the topobreakouts API + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + description: TopoBreakoutSpec defines the desired state of TopoBreakout + properties: + channels: + description: The number of breakout channels to create + maximum: 8 + minimum: 1 + type: integer + interface: + description: A list of normalized parent interface/port + items: + type: string + type: array + node: + description: Reference to a list of TopoNodes where the parent interfaces are to be broken out + items: + type: string + type: array + speed: + description: The speed of each breakout channel + enum: + - 800G + - 400G + - 200G + - 100G + - 50G + - 40G + - 25G + - 10G + type: string + required: + - channels + - node + - speed + type: object + status: + description: TopoBreakoutStatus defines the observed state of TopoBreakout + type: object + type: object +served: true +storage: true +subresources: + status: {} diff --git a/static/resources/25.8.1/topolinkmonitors.topologies.eda.nokia.com/v1alpha1.yaml b/static/resources/25.8.1/topolinkmonitors.topologies.eda.nokia.com/v1alpha1.yaml new file mode 100644 index 0000000..9a8aaa1 --- /dev/null +++ b/static/resources/25.8.1/topolinkmonitors.topologies.eda.nokia.com/v1alpha1.yaml @@ -0,0 +1,33 @@ +name: v1alpha1 +schema: + openAPIV3Schema: + description: TopoLinkMonitor is the Schema for the topolinkmonitors API + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + description: TopoLinkMonitorSpec triggers the monitoring of TopoLinks. + type: object + status: + description: TopoLinkMonitorStatus defines the observed state of TopoLinkMonitor. + type: object + type: object +served: true +storage: true +subresources: + status: {} diff --git a/static/resources/25.8.1/topolinks.core.eda.nokia.com/v1.yaml b/static/resources/25.8.1/topolinks.core.eda.nokia.com/v1.yaml new file mode 100644 index 0000000..de70203 --- /dev/null +++ b/static/resources/25.8.1/topolinks.core.eda.nokia.com/v1.yaml @@ -0,0 +1,132 @@ +name: v1 +schema: + openAPIV3Schema: + description: TopoLink is the Schema for the topolinks API + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + description: |- + TopoLink represents a logical link between two TopoNodes. It may include more than one physical link, being used to represent a LAG or multihomed link. + To create a point to point link with a single interface on both sides use a single link property. + To create a point to point link with a LAG configured on both side, use two links with matching nodes. + A multihomed LAG is created by using two or more links where the A side and/or B side can be different. + Creating a link with only A specified will create an edge interface. + properties: + links: + description: Define the set of physical links making up this TopoLink. + items: + properties: + local: + description: Local, or "A" endpoint of the link. + properties: + interface: + description: Normalized name of the interface/port, e.g. ethernet-1-1. + type: string + interfaceResource: + description: Reference to a Interface. + type: string + node: + description: Reference to a TopoNode. + type: string + required: + - interfaceResource + - node + type: object + remote: + description: Remote, or "B" endpoint of the link. + properties: + interface: + description: Normalized name of the interface/port, e.g. ethernet-1-1. + type: string + interfaceResource: + description: Reference to a Interface. + type: string + node: + description: Reference to a TopoNode. + type: string + required: + - interfaceResource + - node + type: object + speed: + description: Speed of the link. + enum: + - 800G + - 400G + - 200G + - 100G + - 50G + - 40G + - 25G + - 10G + - 2.5G + - 1G + - 100M + type: string + type: + description: |- + Specify the type of link. + If type is set to edge, topology information for the remote device can be set; when doing so the Remote Node can be set as the hostname of the remote device and Remote Interface as the remote interface name in the device specific format, e.g. eth0. + enum: + - edge + - interSwitch + - loopback + type: string + required: + - local + - type + type: object + minItems: 1 + type: array + required: + - links + type: object + status: + description: TopoLinkStatus defines the observed state of TopoLink + properties: + members: + description: List of members present on the TopoLink. + items: + description: MemberStatus defines the state of each member of a TopoLink + properties: + interface: + description: Reference to an Interface + type: string + node: + description: Reference to a TopoNode + type: string + operationalState: + description: Indicates the operational state of the TopoLink member. + type: string + required: + - node + - operationalState + type: object + type: array + operationalState: + description: Indicates the aggregate operational state of the TopoLink. + type: string + required: + - operationalState + type: object + type: object +served: true +storage: true +subresources: + status: {} diff --git a/static/resources/25.8.1/topolinkstates.topologies.eda.nokia.com/v1alpha1.yaml b/static/resources/25.8.1/topolinkstates.topologies.eda.nokia.com/v1alpha1.yaml new file mode 100644 index 0000000..60f86d7 --- /dev/null +++ b/static/resources/25.8.1/topolinkstates.topologies.eda.nokia.com/v1alpha1.yaml @@ -0,0 +1,107 @@ +name: v1alpha1 +schema: + openAPIV3Schema: + description: TopoLinkState is the Schema for the topolinkstates API + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + description: |- + TopoLinkStateSpec represents a logical link between two TopoNodes. It may include more than one physical link, being used to represent a LAG or multihomed link. + To create a point to point link with a single interface on both sides use a single link property. + To create a point to point link with a LAG configured on both side, use two links with matching nodes. + A multihomed LAG is created by using two or more links where the A side and/or B side can be different. + Creating a link with only A specified will create an edge interface. + properties: + links: + description: Define the set of physical links making up this TopoLink. + items: + properties: + local: + description: Local, or "A" endpoint of the link. + properties: + interface: + description: Normalized name of the interface/port, e.g. ethernet-1-1. + type: string + interfaceResource: + description: Reference to a Interface. + type: string + node: + description: Reference to a TopoNode. + type: string + required: + - interfaceResource + - node + type: object + remote: + description: Remote, or "B" endpoint of the link. + properties: + interface: + description: Normalized name of the interface/port, e.g. ethernet-1-1. + type: string + interfaceResource: + description: Reference to a Interface. + type: string + node: + description: Reference to a TopoNode. + type: string + required: + - interfaceResource + - node + type: object + speed: + description: Speed of the link. + enum: + - 800G + - 400G + - 200G + - 100G + - 50G + - 40G + - 25G + - 10G + - 2.5G + - 1G + - 100M + type: string + type: + description: |- + Specify the type of link. + If type is set to edge, topology information for the remote device can be set; when doing so the Remote Node can be set as the hostname of the remote device and Remote Interface as the remote interface name in the device specific format, e.g. eth0. + enum: + - edge + - interSwitch + - loopback + type: string + required: + - local + - type + type: object + minItems: 1 + type: array + required: + - links + type: object + status: + description: TopoLinkStatus defines the observed state of TopoLink + type: object + type: object +served: true +storage: true +subresources: + status: {} diff --git a/static/resources/25.8.1/topologies.topologies.eda.nokia.com/v1alpha1.yaml b/static/resources/25.8.1/topologies.topologies.eda.nokia.com/v1alpha1.yaml new file mode 100644 index 0000000..19a65db --- /dev/null +++ b/static/resources/25.8.1/topologies.topologies.eda.nokia.com/v1alpha1.yaml @@ -0,0 +1,78 @@ +name: v1alpha1 +schema: + openAPIV3Schema: + description: Topology is the Schema for the topology state API + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + description: TopologySpec defines the desired state of Topology + properties: + enabled: + description: Enable or disable the generation of the status of this topology + type: boolean + endpointSubtitle: + description: Override the subtitle to show for endpoints in the topology + type: string + linkSubtitle: + description: Override the subtitle to show for links in the topology + type: string + nodeSubtitle: + description: Override the subtitle to show for nodes in the topology + type: string + overlays: + description: The set of overlays supported with this topology + items: + properties: + enabled: + description: Enable or disable the generation of the status of this overlay + type: boolean + key: + description: |- + A unique key for identifying this overlay within the topology. This is used internally + only. + type: string + required: + - enabled + - key + type: object + type: array + uiDescription: + description: A description of the topology to expose in the UI + type: string + uiDescriptionKey: + description: The translation key for the description of the topology to expose in the UI + type: string + uiName: + description: The name of the topology to expose in the UI + type: string + uiNameKey: + description: The translation key for the name of the topology to expose in the UI + type: string + required: + - enabled + - overlays + type: object + status: + description: TopologyStatus defines the observed state of Topology + type: object + type: object +served: true +storage: true +subresources: + status: {} diff --git a/static/resources/25.8.1/topologygroupings.topologies.eda.nokia.com/v1alpha1.yaml b/static/resources/25.8.1/topologygroupings.topologies.eda.nokia.com/v1alpha1.yaml new file mode 100644 index 0000000..22853ac --- /dev/null +++ b/static/resources/25.8.1/topologygroupings.topologies.eda.nokia.com/v1alpha1.yaml @@ -0,0 +1,79 @@ +name: v1alpha1 +schema: + openAPIV3Schema: + description: TopologyGrouping is the Schema for the topology grouping API + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + description: TopologyGroupingSpec defines the desired state of TopologyGrouping + properties: + groupSelectors: + description: The set of selectors for assigning nodes to groups + items: + properties: + group: + description: The group to assign to nodes that match the selector. + type: string + nodeSelector: + description: Label selector to use to match nodes that should be assigned to this group. + items: + type: string + type: array + required: + - group + type: object + type: array + tierSelectors: + description: The set of selectors for assigning nodes to tiers + items: + properties: + nodeSelector: + description: Label selector to use to match nodes that should be assigned to this tier. + items: + type: string + type: array + tier: + description: The tier to assign to nodes that match the selector. + format: int32 + type: integer + required: + - tier + type: object + type: array + uiDescription: + description: A description of the topology grouping to expose in the UI + type: string + uiDescriptionKey: + description: The translation key for the description of the topology grouping to expose in the UI + type: string + uiName: + description: The name of the topology grouping to expose in the UI + type: string + uiNameKey: + description: The translation key for the name of the topology grouping to expose in the UI + type: string + type: object + status: + description: TopologyGroupingStatus defines the observed state of TopologyGrouping + type: object + type: object +served: true +storage: true +subresources: + status: {} diff --git a/static/resources/toponodes.core.eda.nokia.com/v1.yaml b/static/resources/25.8.1/toponodes.core.eda.nokia.com/v1.yaml similarity index 100% rename from static/resources/toponodes.core.eda.nokia.com/v1.yaml rename to static/resources/25.8.1/toponodes.core.eda.nokia.com/v1.yaml diff --git a/static/resources/25.8.1/trafficrateoverlays.topologies.eda.nokia.com/v1alpha1.yaml b/static/resources/25.8.1/trafficrateoverlays.topologies.eda.nokia.com/v1alpha1.yaml new file mode 100644 index 0000000..0670216 --- /dev/null +++ b/static/resources/25.8.1/trafficrateoverlays.topologies.eda.nokia.com/v1alpha1.yaml @@ -0,0 +1,69 @@ +name: v1alpha1 +schema: + openAPIV3Schema: + description: TrafficRateOverlay is the Schema for trafficrateoverlays + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + description: TrafficRateOverlaySpec defines the desired state of TrafficRateOverlay + properties: + enabled: + description: Enable or disable the generation of the status of this overlay + type: boolean + topology: + description: Reference to the topology that this overlay is extending. + properties: + group: + description: The group of the application which published the topology this overlay is extending. + type: string + name: + description: The name of the resource which published the topology this overlay is extending. + type: string + version: + description: The version of the application which published the topology this overlay is extending. + type: string + required: + - group + - name + - version + type: object + uiDescription: + description: A description of the overlay to expose in the UI + type: string + uiDescriptionKey: + description: The translation key for the description of the overlay to expose in the UI + type: string + uiName: + description: The name of the overlay to expose in the UI + type: string + uiNameKey: + description: The translation key for the name of the overlay to expose in the UI + type: string + required: + - enabled + - topology + type: object + status: + description: TrafficRateOverlayStatus defines the observed state of TrafficRateOverlay + type: object + type: object +served: true +storage: true +subresources: + status: {} diff --git a/static/resources/25.8.1/transactionresults.core.eda.nokia.com/v1.yaml b/static/resources/25.8.1/transactionresults.core.eda.nokia.com/v1.yaml new file mode 100644 index 0000000..7eac55e --- /dev/null +++ b/static/resources/25.8.1/transactionresults.core.eda.nokia.com/v1.yaml @@ -0,0 +1,210 @@ +additionalPrinterColumns: + - jsonPath: .spec.result + name: Result + type: string + - jsonPath: .metadata.creationTimestamp + name: Age + type: date + - jsonPath: .spec.dryRun + name: DryRun + type: string + - jsonPath: .spec.description + name: Description + type: string +name: v1 +schema: + openAPIV3Schema: + description: TransactionResult is the Schema for the transactionresults API + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + description: TransactionResultSpec defines the desired state of TransactionResult + properties: + applicationErrors: + description: Any errors generated by applications run in this transaction. + items: + properties: + errors: + description: Errors returned by this application, if any. + items: + type: string + type: array + gvk: + description: Group, version, kind of the application. + type: string + name: + description: Name of the application. + type: string + namespace: + description: Namespace of the application. + type: string + script: + description: Application execution information. + properties: + executionTimeUs: + description: Execution time in microseconds. + type: integer + output: + description: Any output from the application. + type: string + type: object + required: + - gvk + - name + - namespace + - script + type: object + type: array + bundledTransactionId: + description: The transaction Id of the transaction that this transaction is bundled with, if any. + type: integer + commit: + description: The git commit hash of the transaction + type: string + description: + description: The description passed through from the input transaction, if any. + type: string + dryRun: + description: Indicates if the transaction was a dry run. + type: boolean + executionSummary: + description: A summary of this transaction + properties: + appSummary: + description: Summary of applications run in this transaction. + items: + properties: + gvk: + description: Group, version, kind of the application. + type: string + instancesRun: + description: The number of resources of this kind that were processed. + type: integer + totalExecutionTimeMs: + description: Total execution time in milliseconds. + type: integer + required: + - gvk + - instancesRun + - totalExecutionTimeMs + type: object + type: array + engineTimeMs: + description: The time spent in the engine computing the transaction in milliseconds. + type: integer + inputResourceCount: + description: The number of input resources processed in this transaction. + type: integer + publishTimeMs: + description: The time spent publishing changes to Kubernetes. + type: integer + pushTimeMs: + description: The time spent pushing changes to targets. + type: integer + saveTimeMs: + description: The time spent saving changes to git. + type: integer + targetsModified: + description: Targets with configuration changes in this transaction. + items: + properties: + name: + description: The name of a target that generated an error. + type: string + namespace: + description: Namespace of the application. + type: string + required: + - name + - namespace + type: object + type: array + targetsModifiedCount: + description: The number of targets with configuration changes in this transaction. + type: integer + totalTimeMs: + description: The total time spent executing the transaction. Due to parallelism, this may be less than the sum of the other times. + type: integer + type: object + generalErrors: + description: Any errors that aren't specific or can't be mapped to an individual application. + items: + type: string + type: array + inputResources: + description: The set of input resources that were processed in the transaction. + items: + properties: + action: + description: Action on the resource. + type: string + gvk: + description: Group, version, kind of the resource. + type: string + name: + description: Name of the resource. + type: string + namespace: + description: Namespace of the resource. + type: string + required: + - gvk + - name + - namespace + type: object + type: array + result: + description: The transaction result. + type: string + targetErrors: + description: Any errors generated by targets in this transaction. + items: + properties: + errors: + description: Errors returned by this target. + items: + type: string + type: array + name: + description: The name of a target that generated an error. + type: string + namespace: + description: Namespace of the application. + type: string + required: + - name + - namespace + type: object + type: array + timestamp: + description: The timestamp when the transaction finished + format: date-time + type: string + username: + description: The username of the user that initiated the transaction + type: string + type: object + status: + description: TransactionResultStatus defines the observed state of TransactionResult + type: object + type: object +served: true +storage: true +subresources: + status: {} diff --git a/static/resources/25.8.1/transactions.core.eda.nokia.com/v1.yaml b/static/resources/25.8.1/transactions.core.eda.nokia.com/v1.yaml new file mode 100644 index 0000000..82032b5 --- /dev/null +++ b/static/resources/25.8.1/transactions.core.eda.nokia.com/v1.yaml @@ -0,0 +1,102 @@ +additionalPrinterColumns: + - jsonPath: .metadata.creationTimestamp + name: Age + type: date + - jsonPath: .status.result + name: Result + type: string +name: v1 +schema: + openAPIV3Schema: + description: Transaction is the Schema for the transactions API + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + description: TransactionSpec defines the desired state of Transaction + properties: + description: + description: A user provided description of the transaction. + type: string + dryRun: + description: Indicates the system should dry run the transaction without actually performing it. A transaction that is dry run will perform all steps other than pushing changes to endpoints. + type: boolean + items: + description: Items to include in this transaction. + items: + properties: + delete: + description: Delete is a reference to a GVK and name of a resource to delete. + properties: + gvk: + description: GVK is the Group, Version, Kind of the resource to delete. + properties: + group: + type: string + kind: + type: string + version: + type: string + required: + - kind + - version + type: object + name: + description: Name is the name of the resource to delete. + type: string + namespace: + description: Namespace is the namespace of the resource to delete. + type: string + required: + - gvk + - name + type: object + replace: + description: Replace is an unstructured, "free-form" Kubernetes resource, complete with GVK, metadata and spec. + type: object + x-kubernetes-embedded-resource: true + x-kubernetes-preserve-unknown-fields: true + type: object + minItems: 1 + type: array + keepDetailedLog: + description: Indicates the system should keep a detailed log of the transaction. + type: boolean + required: + - items + type: object + status: + description: TransactionStatus defines the observed state of Transaction + properties: + errors: + description: Errors is a list of error messages encountered during the transaction, if any. + items: + type: string + type: array + result: + description: Result is the overall status of the transaction. + type: string + transactionId: + description: Reference to the transaction id storing detailed information about the transaction. + type: integer + type: object + type: object +served: true +storage: true +subresources: + status: {} diff --git a/static/resources/25.8.1/udpproxies.core.eda.nokia.com/v1.yaml b/static/resources/25.8.1/udpproxies.core.eda.nokia.com/v1.yaml new file mode 100644 index 0000000..c8ade48 --- /dev/null +++ b/static/resources/25.8.1/udpproxies.core.eda.nokia.com/v1.yaml @@ -0,0 +1,76 @@ +additionalPrinterColumns: + - jsonPath: .spec.proxyPort + name: Proxy Port + type: integer + - jsonPath: .spec.destHost + name: Dest Host + type: string + - jsonPath: .spec.destPort + name: Dest Port + type: integer +name: v1 +schema: + openAPIV3Schema: + description: UdpProxy is the Schema for the UDP proxy API + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + description: UdpProxySpec defines the desired state of UdpProxy + properties: + bufferSize: + description: |- + The proxy will use a buffer of this size for all datagrams it receives and this must be sized + to accommodate the largest datagrams expected + maximum: 65535 + minimum: 64 + type: integer + destHost: + description: The destination hostname or IP address to forward the datagrams to + type: string + destPort: + description: The destination UDP port to forward the datagrams to + maximum: 65535 + minimum: 1 + type: integer + idleTimeout: + description: |- + The proxy will listen for responses from the destination and forward it back to the source + of the datagram until there is no traffic at all for at least the idle timeout in seconds + minimum: 1 + type: integer + proxyPort: + description: The UDP port on which to listen for datagrams and then proxy to the destination + maximum: 65535 + minimum: 1 + type: integer + required: + - bufferSize + - destHost + - destPort + - idleTimeout + - proxyPort + type: object + status: + description: UdpProxyStatus defines the observed state of UdpProxy + type: object + type: object +served: true +storage: true +subresources: + status: {} diff --git a/static/resources/25.8.1/userdeployments.aaa.eda.nokia.com/v1alpha1.yaml b/static/resources/25.8.1/userdeployments.aaa.eda.nokia.com/v1alpha1.yaml new file mode 100644 index 0000000..8a4c374 --- /dev/null +++ b/static/resources/25.8.1/userdeployments.aaa.eda.nokia.com/v1alpha1.yaml @@ -0,0 +1,33 @@ +name: v1alpha1 +schema: + openAPIV3Schema: + description: UserDeployment is the Schema for the userdeployments API + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + description: UserDeploymentSpec defines the desired state of UserDeployment + type: object + status: + description: UserDeploymentStatus defines the observed state of UserDeployment + type: object + type: object +served: true +storage: true +subresources: + status: {} diff --git a/static/resources/virtualnetworks.services.eda.nokia.com/v1.yaml b/static/resources/25.8.1/virtualnetworks.services.eda.nokia.com/v1.yaml similarity index 100% rename from static/resources/virtualnetworks.services.eda.nokia.com/v1.yaml rename to static/resources/25.8.1/virtualnetworks.services.eda.nokia.com/v1.yaml diff --git a/static/resources/virtualnetworks.services.eda.nokia.com/v1alpha1.yaml b/static/resources/25.8.1/virtualnetworks.services.eda.nokia.com/v1alpha1.yaml similarity index 100% rename from static/resources/virtualnetworks.services.eda.nokia.com/v1alpha1.yaml rename to static/resources/25.8.1/virtualnetworks.services.eda.nokia.com/v1alpha1.yaml diff --git a/static/resources/virtualnetworkstates.services.eda.nokia.com/v1.yaml b/static/resources/25.8.1/virtualnetworkstates.services.eda.nokia.com/v1.yaml similarity index 100% rename from static/resources/virtualnetworkstates.services.eda.nokia.com/v1.yaml rename to static/resources/25.8.1/virtualnetworkstates.services.eda.nokia.com/v1.yaml diff --git a/static/resources/25.8.1/virtualnetworkstates.services.eda.nokia.com/v1alpha1.yaml b/static/resources/25.8.1/virtualnetworkstates.services.eda.nokia.com/v1alpha1.yaml new file mode 100644 index 0000000..9cdab03 --- /dev/null +++ b/static/resources/25.8.1/virtualnetworkstates.services.eda.nokia.com/v1alpha1.yaml @@ -0,0 +1,71 @@ +deprecated: true +deprecationWarning: This version is deprecated and will no longer be supported in the next version. +name: v1alpha1 +schema: + openAPIV3Schema: + description: VirtualNetworkState is the Schema for the virtualnetworkstates API + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + description: VirtualNetworkStateSpec defines the desired state of VirtualNetworkState + properties: + bgpPeers: + description: List of BGPPeers created by the VNET + items: + type: string + type: array + bridgeDomains: + description: List of BridgeDomains created by the VNET + items: + type: string + type: array + bridgeInterfaces: + description: List of Bridgeinterfaces created by the VNET + items: + type: string + type: array + irbInterfaces: + description: List of IRBInterfaces created by the VNET + items: + type: string + type: array + routedInterfaces: + description: List of RoutedInterface created by the VNET + items: + type: string + type: array + routers: + description: List of Routers created by the VNET + items: + type: string + type: array + vlans: + description: List of VLANs created by the VNET + items: + type: string + type: array + type: object + status: + description: VirtualNetworkStateStatus defines the observed state of VirtualNetworkState + type: object + type: object +served: true +storage: false +subresources: + status: {} diff --git a/static/resources/vlans.services.eda.nokia.com/v1.yaml b/static/resources/25.8.1/vlans.services.eda.nokia.com/v1.yaml similarity index 100% rename from static/resources/vlans.services.eda.nokia.com/v1.yaml rename to static/resources/25.8.1/vlans.services.eda.nokia.com/v1.yaml diff --git a/static/resources/vlans.services.eda.nokia.com/v1alpha1.yaml b/static/resources/25.8.1/vlans.services.eda.nokia.com/v1alpha1.yaml similarity index 100% rename from static/resources/vlans.services.eda.nokia.com/v1alpha1.yaml rename to static/resources/25.8.1/vlans.services.eda.nokia.com/v1alpha1.yaml diff --git a/static/resources/vlanstates.services.eda.nokia.com/v1.yaml b/static/resources/25.8.1/vlanstates.services.eda.nokia.com/v1.yaml similarity index 100% rename from static/resources/vlanstates.services.eda.nokia.com/v1.yaml rename to static/resources/25.8.1/vlanstates.services.eda.nokia.com/v1.yaml diff --git a/static/resources/25.8.1/vlanstates.services.eda.nokia.com/v1alpha1.yaml b/static/resources/25.8.1/vlanstates.services.eda.nokia.com/v1alpha1.yaml new file mode 100644 index 0000000..90fa651 --- /dev/null +++ b/static/resources/25.8.1/vlanstates.services.eda.nokia.com/v1alpha1.yaml @@ -0,0 +1,80 @@ +deprecated: true +deprecationWarning: This version is deprecated and will no longer be supported in the next version. +name: v1alpha1 +schema: + openAPIV3Schema: + description: VLANState is the Schema for the vlanstates API + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + description: VLANStateSpec defines the desired state of VLANState + properties: + bridgeDomain: + description: Node BridgeDomain name + type: string + subInterfaces: + items: + properties: + interface: + description: Normalized interface name + type: string + interfaceResource: + description: Eda interface resource + type: string + node: + description: Reference to Node object + type: string + nodeInterface: + description: Node specific interface name + type: string + nodeSubInterface: + description: Node specific subinterface name + type: string + operatingSystem: + description: Operating System of the Node + type: string + subInterfaceIndex: + description: Index allocated to the subinterface on the associated interface for the given VLAN + type: integer + vlanID: + description: vlan assigned to this subinterface + type: string + required: + - interface + - interfaceResource + - node + - nodeInterface + type: object + type: array + vlanID: + description: Single value between 0-4094 support, ranges supported in the format x-y,x-y, or the special keyword any or untagged or pool for auto allocation + type: string + required: + - bridgeDomain + - subInterfaces + - vlanID + type: object + status: + description: VLANStateStatus defines the observed state of VLANState + type: object + type: object +served: true +storage: false +subresources: + status: {} diff --git a/static/resources/25.8.1/volumeoverlays.components.eda.nokia.com/v1.yaml b/static/resources/25.8.1/volumeoverlays.components.eda.nokia.com/v1.yaml new file mode 100644 index 0000000..d794973 --- /dev/null +++ b/static/resources/25.8.1/volumeoverlays.components.eda.nokia.com/v1.yaml @@ -0,0 +1,69 @@ +name: v1 +schema: + openAPIV3Schema: + description: VolumeOverlay is the Schema for volumeoverlays + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + description: VolumeOverlaySpec defines the desired state of VolumeOverlay + properties: + enabled: + description: Enable or disable the generation of the status of this overlay + type: boolean + topology: + description: Reference to the topology that this overlay is extending. + properties: + group: + description: The group of the application which published the topology this overlay is extending. + type: string + name: + description: The name of the resource which published the topology this overlay is extending. + type: string + version: + description: The version of the application which published the topology this overlay is extending. + type: string + required: + - group + - name + - version + type: object + uiDescription: + description: A description of the overlay to expose in the UI + type: string + uiDescriptionKey: + description: The translation key for the description of the overlay to expose in the UI + type: string + uiName: + description: The name of the overlay to expose in the UI + type: string + uiNameKey: + description: The translation key for the name of the overlay to expose in the UI + type: string + required: + - enabled + - topology + type: object + status: + description: VolumeOverlayStatus defines the observed state of VolumeOverlay + type: object + type: object +served: true +storage: true +subresources: + status: {} diff --git a/static/resources/25.8.1/waitforinputs.core.eda.nokia.com/v1.yaml b/static/resources/25.8.1/waitforinputs.core.eda.nokia.com/v1.yaml new file mode 100644 index 0000000..19dd660 --- /dev/null +++ b/static/resources/25.8.1/waitforinputs.core.eda.nokia.com/v1.yaml @@ -0,0 +1,42 @@ +name: v1 +schema: + openAPIV3Schema: + description: WaitForInput is the Schema for the waitforinputs API + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + description: WaitForInputSpec defines the desired state of WaitForInput + properties: + id: + type: integer + prompt: + description: Foo is an example field of WaitForInput. Edit waitforinput_types.go to remove/update + type: string + type: object + status: + description: WaitForInputStatus defines the observed state of WaitForInput + properties: + prompt: + type: boolean + type: object + type: object +served: true +storage: true +subresources: + status: {} diff --git a/static/resources/25.8.1/workflowdefinitions.core.eda.nokia.com/v1.yaml b/static/resources/25.8.1/workflowdefinitions.core.eda.nokia.com/v1.yaml new file mode 100644 index 0000000..9b9eefd --- /dev/null +++ b/static/resources/25.8.1/workflowdefinitions.core.eda.nokia.com/v1.yaml @@ -0,0 +1,78 @@ +additionalPrinterColumns: + - jsonPath: .spec.image + name: Image + type: string + - jsonPath: .metadata.creationTimestamp + name: Age + type: date +name: v1 +schema: + openAPIV3Schema: + description: WorkflowDefinition is the Schema for the workflowdefinitions API + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + description: WorkflowDefinitionSpec defines the desired state of FlowDefinition + properties: + flowDefinitionResource: + description: the resource type to be used for this flow, can only be set if Schema is not set + properties: + group: + type: string + kind: + type: string + version: + type: string + required: + - kind + - version + type: object + flowDefinitionSchema: + description: the schema for the flow, can only be set if Resource is not set + properties: + jsonSchemaSpec: + description: A string containing the JSON schema the workflow accepts as input. + type: string + jsonSchemaStatus: + description: A string containing the JSON schema the workflow will populate as output. + type: string + type: object + image: + description: Container image containing the flow. For example "ghcr.io/nokia-eda/apps/operatingsystem:v1.0.0". + type: string + imagePullSecrets: + description: Secrets to use to pull the image for this workflow. + items: + type: string + type: array + namespaced: + default: true + description: If set, resources of this CRD are namespace scoped + type: boolean + required: + - image + type: object + status: + description: WorkflowDefinitionStatus defines the observed state of FlowDefinition + type: object + type: object +served: true +storage: true +subresources: + status: {} diff --git a/static/resources/25.8.1/workflows.core.eda.nokia.com/v1.yaml b/static/resources/25.8.1/workflows.core.eda.nokia.com/v1.yaml new file mode 100644 index 0000000..39e50ad --- /dev/null +++ b/static/resources/25.8.1/workflows.core.eda.nokia.com/v1.yaml @@ -0,0 +1,53 @@ +additionalPrinterColumns: + - jsonPath: .spec.type + name: Type + type: string + - jsonPath: .metadata.creationTimestamp + name: Age + type: date +name: v1 +schema: + openAPIV3Schema: + description: Workflow is the Schema for the workflows API + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + description: WorkflowSpec defines the desired state of Flow + properties: + input: + description: Input to this flow, adhering to the JSON schema defined in the referenced WorkflowDefinition. + x-kubernetes-preserve-unknown-fields: true + type: + description: Select the WorkflowDefinition to execute. + type: string + required: + - type + type: object + status: + description: WorkflowStatus defines the observed state of Flow + properties: + output: + description: Output from this flow, adhering to the JSON schema defined in the referenced FlowDefinition + x-kubernetes-preserve-unknown-fields: true + type: object + type: object +served: true +storage: true +subresources: + status: {} diff --git a/static/resources/25.8.2/aggregateroutes.protocols.eda.nokia.com/v1.yaml b/static/resources/25.8.2/aggregateroutes.protocols.eda.nokia.com/v1.yaml new file mode 100644 index 0000000..c6e6fa7 --- /dev/null +++ b/static/resources/25.8.2/aggregateroutes.protocols.eda.nokia.com/v1.yaml @@ -0,0 +1,63 @@ +name: v1 +schema: + openAPIV3Schema: + description: AggregateRoute is the Schema for the aggregateroutes API + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + description: The AggregateRoute enables the configuration of aggregated routes on a specified Router. This resource allows for the definition of destination prefixes, the selection of a router, and optionally, specific nodes where the aggregate routes should be configured. Advanced options include the ability to generate ICMP unreachable messages for packets matching the aggregate route, and the ability to block the advertisement of all contributing routes in dynamic protocols like BGP. + properties: + aggregatorASN: + description: Specifies the aggregator's ASN. + format: int32 + type: integer + aggregatorIP: + description: Specifies the aggregator's IP address. + type: string + generateICMP: + description: When set to true the router generares ICMP unreachable messages for packets matching the aggregate route (and not a more specific route). + type: boolean + nodes: + description: List of nodes on which to configure the aggregate routes. An AND operation is executed against the nodes in this list and the nodes on which the Router is configured to determine the Nodes on which to configure the aggregate routes. + items: + type: string + type: array + prefixes: + description: List of destination prefixes for the aggregate routes. + items: + type: string + type: array + router: + description: Reference to a Router on which to configure the aggregate routes. If no Nodes are provided then the aggregate routes will be provisioned on all Nodes on which the Router is provisioned. + type: string + summaryOnly: + description: When set to true the router blocks the advertisement of all contributing routes of this aggregate route in dynamic protocols such as BGP. + type: boolean + required: + - prefixes + - router + type: object + status: + description: AggregateRouteStatus defines the observed state of AggregateRoute + type: object + type: object +served: true +storage: true +subresources: + status: {} diff --git a/static/resources/25.8.2/aggregateroutes.protocols.eda.nokia.com/v1alpha1.yaml b/static/resources/25.8.2/aggregateroutes.protocols.eda.nokia.com/v1alpha1.yaml new file mode 100644 index 0000000..055f7b5 --- /dev/null +++ b/static/resources/25.8.2/aggregateroutes.protocols.eda.nokia.com/v1alpha1.yaml @@ -0,0 +1,65 @@ +deprecated: true +deprecationWarning: This version is deprecated and will no longer be supported in the next version. +name: v1alpha1 +schema: + openAPIV3Schema: + description: AggregateRoute is the Schema for the aggregateroutes API + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + description: The AggregateRoute enables the configuration of aggregated routes on a specified Router. This resource allows for the definition of destination prefixes, the selection of a router, and optionally, specific nodes where the aggregate routes should be configured. Advanced options include the ability to generate ICMP unreachable messages for packets matching the aggregate route, and the ability to block the advertisement of all contributing routes in dynamic protocols like BGP. + properties: + aggregatorASN: + description: Specifies the aggregator's ASN. + format: int32 + type: integer + aggregatorIP: + description: Specifies the aggregator's IP address. + type: string + generateICMP: + description: When set to true the router generares ICMP unreachable messages for packets matching the aggregate route (and not a more specific route). + type: boolean + nodes: + description: List of nodes on which to configure the aggregate routes. An AND operation is executed against the nodes in this list and the nodes on which the Router is configured to determine the Nodes on which to configure the aggregate routes. + items: + type: string + type: array + prefixes: + description: List of destination prefixes for the aggregate routes. + items: + type: string + type: array + router: + description: Reference to a Router on which to configure the aggregate routes. If no Nodes are provided then the aggregate routes will be provisioned on all Nodes on which the Router is provisioned. + type: string + summaryOnly: + description: When set to true the router blocks the advertisement of all contributing routes of this aggregate route in dynamic protocols such as BGP. + type: boolean + required: + - prefixes + - router + type: object + status: + description: AggregateRouteStatus defines the observed state of AggregateRoute + type: object + type: object +served: true +storage: false +subresources: + status: {} diff --git a/static/resources/25.8.2/alarms.core.eda.nokia.com/v1.yaml b/static/resources/25.8.2/alarms.core.eda.nokia.com/v1.yaml new file mode 100644 index 0000000..b985673 --- /dev/null +++ b/static/resources/25.8.2/alarms.core.eda.nokia.com/v1.yaml @@ -0,0 +1,104 @@ +name: v1 +schema: + openAPIV3Schema: + description: Alarm is the Schema for the alarms API + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + description: AlarmSpec defines the desired state of Alarm + properties: + clusterSpecific: + description: Specifies if the alarm is within cluster, such as pod issue, or external issue, such as with BGP session on node + type: boolean + description: + description: Description of the alarm + minLength: 1 + type: string + group: + description: The group of the resouce the alarm is associated with, for example core.eda.nokia.com + minLength: 1 + type: string + jsPath: + description: Provide a JSON path to the resource or object that the alarm is associated with, for example .node{.name=='leaf-1-1'}.srl{.version=='24.7.1'}.interface{.name=='ethernet-1-11' + type: string + kind: + description: The kind of the resource the alarm is associated with, for example TopoNode + minLength: 1 + type: string + name: + description: Name of the alarm, this is typically the alarm Kind followed by a unique identifier such as InterfaceDown-leaf-1-1-ethernet-1-11 + minLength: 1 + type: string + parentAlarm: + description: ParentAlarm is the name of the parent alarm, if any, for example LinecardDown-leaf-1-1-Linecard1 + type: string + probableCause: + description: ProbableCause is the probable cause of the alarm + type: string + remedialAction: + description: RemedialAction is the proposed remedial action for the alarm + type: string + resource: + description: The name of the resouce the alarm is associated with, for example leaf-1-1 + minLength: 1 + type: string + severity: + description: Severity for this alarm + enum: + - warning + - minor + - major + - critical + type: string + sourceGroup: + description: The group of the resource that raise the alarm, for example core.eda.nokia.com + minLength: 1 + type: string + sourceKind: + description: The kind of the resource that raised the alarm, for example InterfaceState + minLength: 1 + type: string + sourceResource: + description: The resource that raised the alarm, for example + minLength: 1 + type: string + type: + description: Type of the alarm, for example InterfaceDown + minLength: 1 + type: string + required: + - description + - group + - kind + - name + - resource + - severity + - sourceGroup + - sourceKind + - sourceResource + - type + type: object + status: + description: AlarmStatus defines the observed state of Alarm + type: object + type: object +served: true +storage: true +subresources: + status: {} diff --git a/static/resources/25.8.2/appinstallers.appstore.eda.nokia.com/v1.yaml b/static/resources/25.8.2/appinstallers.appstore.eda.nokia.com/v1.yaml new file mode 100644 index 0000000..63cd0ec --- /dev/null +++ b/static/resources/25.8.2/appinstallers.appstore.eda.nokia.com/v1.yaml @@ -0,0 +1,113 @@ +additionalPrinterColumns: + - jsonPath: .spec.operation + name: Operation + type: string + - jsonPath: .status.result + name: Result + type: string +name: v1 +schema: + openAPIV3Schema: + description: AppInstaller + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + properties: + apps: + description: Apps are the input apps to the installer. + items: + properties: + appId: + description: AppID of the app, which is the unique identifier of an app. It should be equal to the group of the app. + type: string + appSettings: + description: |- + AppSettings defines a list of variables and their value. Only variables that are customised need to be mentioned. + If AppSettings are not again mentioned on upgrade, values will remain as is. + x-kubernetes-preserve-unknown-fields: true + catalog: + description: |- + Catalog of the app to be installed. + This is where app manifest is retrieved from, along with some other metadata. + type: string + version: + description: Version of the App that is to be installed. + properties: + type: + default: semver + description: |- + The version type of the App. Currently supported: semver, commit. + Default is semver. + enum: + - semver + - commit + type: string + value: + description: |- + The version of the App. + If the VersionType is set to semver, + then the semantic version of the git tag in the form of "apps//" is used. + If the VersionType is set to commit, + then the commit reference (e.g. git hash) is expected. + type: string + required: + - value + type: object + required: + - appId + - catalog + - version + type: object + type: array + autoProcessRequirements: + description: |- + AutoProcessRequirements tells the installer what it can do w.r.t. the requirements of an app. + Currently only 'strict' is supported. + items: + type: string + type: array + operation: + description: |- + Operation is the installing operation. + Currently supported are 'install', 'delete'. + enum: + - install + - delete + type: string + required: + - apps + - operation + type: object + status: + properties: + error: + type: string + id: + description: ID is the workflow ID that can be used to get more information on. + type: integer + result: + type: string + required: + - result + type: object + type: object +served: true +storage: true +subresources: + status: {} diff --git a/static/resources/25.8.2/artifacts.artifacts.eda.nokia.com/v1.yaml b/static/resources/25.8.2/artifacts.artifacts.eda.nokia.com/v1.yaml new file mode 100644 index 0000000..8f40090 --- /dev/null +++ b/static/resources/25.8.2/artifacts.artifacts.eda.nokia.com/v1.yaml @@ -0,0 +1,183 @@ +additionalPrinterColumns: + - jsonPath: .status.downloadStatus + name: Status + type: string +name: v1 +schema: + openAPIV3Schema: + description: Artifact is the Schema for the artifacts API + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + description: ArtifactSpec defines the desired state of Artifact + properties: + filePath: + description: |- + Provide the file path, including an optional file name + For Artifacts that are directories themselves a file name is not required + minLength: 1 + type: string + fromConfigMap: + description: The secret from which the file is to be hosted in the artifact server + properties: + key: + description: Key of the data field + minLength: 1 + type: string + name: + description: The name of the configMap + minLength: 1 + type: string + namespace: + description: The namespace of the configMap + type: string + required: + - key + - name + - namespace + type: object + fromSecret: + description: The secret from which the file is to be hosted in the artifact server + properties: + key: + description: Key of the data field + minLength: 1 + type: string + name: + description: The name of the secret + minLength: 1 + type: string + namespace: + description: The namespace of the secret + type: string + required: + - key + - name + - namespace + type: object + git: + description: A git hash can be used to pull down the file from git + properties: + filePath: + description: The file path within the git repository to pull down + type: string + gitHash: + description: Git hash of the file to pull down. + pattern: ^[0-9a-fA-F]+$ + type: string + repoUrl: + description: The remote URL of the git repository from which to pull down the file + format: uri + type: string + required: + - filePath + - gitHash + - repoUrl + type: object + oci: + description: The container and registry to pull down and host in the artifact server registry + properties: + digest: + description: Digest of the file blob which needs to be downloaded + pattern: ^sha256:[a-fA-F0-9]{64}$ + type: string + registry: + description: The remote registry from which to pull down the OCI artifact + minLength: 1 + type: string + repository: + description: The name of the repository to pull down into the artifact server + minLength: 1 + type: string + tag: + description: Tag of the image which need to be pulled + type: string + required: + - registry + - repository + type: object + remoteFileUrl: + description: the remote URL from which to download the file to host in the artifact server + properties: + fileUrl: + description: This is the remote URL from which to download the file to store in the artifact server. Supported protocols are HTTPS and SFTP, URL format should include the protocol. + type: string + md5Url: + description: This is the remote URL from which to download a text file containing the MD5 hash against which the artifact server will validate the artifact before hosting + type: string + required: + - fileUrl + type: object + repo: + description: |- + Provide the repo + Multiple artifacts can have same repo + minLength: 1 + type: string + x-kubernetes-validations: + - message: repo is immutable + rule: self == oldSelf + secret: + description: If provided the secret to use for authenticating + type: string + textFile: + properties: + content: + description: Content of the text file + type: string + required: + - content + type: object + trustBundle: + description: If provided the configmap contains the trust bundle for https upstream + type: string + required: + - filePath + - repo + type: object + status: + description: ArtifactStatus defines the observed state of Artifact + properties: + downloadStatus: + enum: + - InProgress + - Error + - Failed + - Available + type: string + externalUrl: + description: External (outside of cluster) URL where this Artifact is reachable + type: string + internalUrl: + description: Internal (in cluster) URL where this Artifact is reachable + type: string + lastExternalAddress: + type: string + observedGeneration: + format: int64 + type: integer + statusReason: + description: Human-readable message indicating details about the downloadStatus's Error|Failed state + type: string + type: object + type: object +served: true +storage: true +subresources: + status: {} diff --git a/static/resources/25.8.2/aspathsetdeployments.routingpolicies.eda.nokia.com/v1alpha1.yaml b/static/resources/25.8.2/aspathsetdeployments.routingpolicies.eda.nokia.com/v1alpha1.yaml new file mode 100644 index 0000000..474011c --- /dev/null +++ b/static/resources/25.8.2/aspathsetdeployments.routingpolicies.eda.nokia.com/v1alpha1.yaml @@ -0,0 +1,42 @@ +name: v1alpha1 +schema: + openAPIV3Schema: + description: ASPathSetDeployment is the Schema for the aspathsetdeployments API + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + description: ASPathSetDeploymentSpec defines the desired state of ASPathSetDeployment + properties: + asPathSet: + description: Specifies an ASPathSet to deploy to the specified Node + type: string + node: + description: Specifies a Node to deploy this policy on + type: string + required: + - node + type: object + status: + description: ASPathSetDeploymentStatus defines the observed state of ASPathSetDeployment + type: object + type: object +served: true +storage: true +subresources: + status: {} diff --git a/static/resources/25.8.2/aspathsets.routingpolicies.eda.nokia.com/v1alpha1.yaml b/static/resources/25.8.2/aspathsets.routingpolicies.eda.nokia.com/v1alpha1.yaml new file mode 100644 index 0000000..7e0cdd5 --- /dev/null +++ b/static/resources/25.8.2/aspathsets.routingpolicies.eda.nokia.com/v1alpha1.yaml @@ -0,0 +1,45 @@ +name: v1alpha1 +schema: + openAPIV3Schema: + description: ASPathSet is the Schema for the aspathsets API + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + description: ASPathSetSpec defines the desired state of ASPathSet + properties: + members: + description: Members is a list of AS path regular expressions. + items: + type: string + type: array + regexMode: + description: Defines how AS_PATH attribute is converted into a string for regex matching. + enum: + - ASN + - Character + type: string + type: object + status: + description: ASPathSetStatus defines the observed state of ASPathSet + type: object + type: object +served: true +storage: true +subresources: + status: {} diff --git a/static/resources/25.8.2/attachmentlookups.routing.eda.nokia.com/v1alpha1.yaml b/static/resources/25.8.2/attachmentlookups.routing.eda.nokia.com/v1alpha1.yaml new file mode 100644 index 0000000..76f90e2 --- /dev/null +++ b/static/resources/25.8.2/attachmentlookups.routing.eda.nokia.com/v1alpha1.yaml @@ -0,0 +1,83 @@ +name: v1alpha1 +schema: + openAPIV3Schema: + description: AttachmentLookup is the Schema for the attachmentlookups API + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + description: |- + This workflow is used to look up attachments (where an address is attached in the network) on a set of nodes. + It takes an address, and an optional list of nodes (or node selectors - a list of label expressions) to perform the lookup on, + and returns the matching attachments, including the node, + network instance, prefix, interface, and next hop group ID. + properties: + address: + description: |- + Address to perform a lookup for. + This is a standard IPv4 or IPv6 address, excluding mask or prefix length, e.g. 12.0.0.1. + type: string + networkInstance: + description: |- + Network Instance is the locally named network instance to use for the lookup. + Can be omitted if the default network instance is to be used. + type: string + nodeSelectors: + description: |- + NodeSelectors is a list of node selectors to execute lookups on. + This is a list of label expressions, e.g. ["eda.nokia.com/role=leaf", "eda.nokia.com/region=us-west"]. + items: + type: string + type: array + nodes: + description: Nodes is a list of node names to execute lookups on. + items: + type: string + type: array + required: + - address + type: object + status: + description: AttachmentLookupStatus defines the observed state of AttachmentLookup + properties: + found: + type: boolean + results: + items: + properties: + interface: + type: string + networkInstance: + type: string + nextHopGroupId: + format: int64 + type: integer + node: + type: string + prefix: + type: string + type: object + type: array + required: + - found + type: object + type: object +served: true +storage: true +subresources: + status: {} diff --git a/static/resources/25.8.2/backends.aifabrics.eda.nokia.com/v1alpha1.yaml b/static/resources/25.8.2/backends.aifabrics.eda.nokia.com/v1alpha1.yaml new file mode 100644 index 0000000..8b7da72 --- /dev/null +++ b/static/resources/25.8.2/backends.aifabrics.eda.nokia.com/v1alpha1.yaml @@ -0,0 +1,222 @@ +additionalPrinterColumns: + - jsonPath: .status.lastChange + name: Last Change + type: date + - jsonPath: .status.operationalState + name: Operational State + type: string +name: v1alpha1 +schema: + openAPIV3Schema: + description: Backend is the Schema for the backends API + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + description: BackendSpec defines the desired state of Backend + properties: + asnPool: + description: Reference to an IndexAllocationPool pool to use for Autonomous System Number allocations. Used when eBGP is configured as an underlay protocol. + type: string + gpuIsolationGroups: + description: GPU Isolation Groups are used to isolate GPU traffic over the network, GPUs in different GPU isolation groups will not be able to communicate with each other. If all GPUs across all stripes need to be able to communicate with each other, create a single GPUIsolationGroup selecting all GPU facing interfaces. + items: + properties: + interfaceSelector: + items: + type: string + type: array + name: + description: Name of the IsolationGroup. + type: string + required: + - interfaceSelector + - name + type: object + type: array + rocev2QoS: + description: Set of properties to configure the RoCEv2 QoS. + properties: + ecnMaxDropProbabilityPercent: + default: 100 + description: If the queue depth is between min and max threshold then this the probability with which packets are dropped or marked. + type: integer + ecnSlopeMaxThresholdPercent: + default: 80 + description: The maximum threshold parameter for a RED-managed queue in percent. When the average queue length exceeds the max value, all packets are dropped (or marked if ECN is enabled). Mutually exclusive with min-threshold and max-threshold. + type: integer + ecnSlopeMinThresholdPercent: + default: 5 + description: The mininum threshold parameter for a RED-managed queue in percent. When the average queue length is less than min, all packets are admitted to the queue. Mutually exclusive with min-threshold and max-threshold. + type: integer + pfcDeadlockDetectionTimer: + default: 750 + description: Number of milliseconds during which outgoing interface is receiving pfc-pause-frames before triggering recovery-timer. + type: integer + pfcDeadlockRecoveryTimer: + default: 750 + description: Number of milliseconds during which the pfc-pause-frames will be ignored. + type: integer + queueMaximumBurstSize: + default: 52110640 + description: Maximum amount of shared buffer memory available to the queue in bytes. + format: int32 + maximum: 4294967295 + minimum: 0 + type: integer + required: + - ecnMaxDropProbabilityPercent + - ecnSlopeMaxThresholdPercent + - ecnSlopeMinThresholdPercent + - pfcDeadlockDetectionTimer + - pfcDeadlockRecoveryTimer + - queueMaximumBurstSize + type: object + stripeConnector: + description: StripeConnector is the spine layer interconnecting multiple stripes. + properties: + asnPool: + description: Reference to an IndexAllocationPool pool to use for Autonomous System Number allocations. + type: string + linkSelector: + description: Selects TopoLinks to include in this AI Fabric, the selected TopoLinks will be used to create ISLs between the stripe connector devices and the leaf devices. + items: + type: string + type: array + name: + description: The name of the Stripe Connector. + type: string + nodeSelector: + description: Node selector to select the nodes to be used for this stripe connector. + items: + type: string + type: array + systemPoolIPV4: + description: Reference to an IPAllocationPool used to dynamically allocate an IPv4 address to system/lo0 interfaces for the stripe connector devices. If not specified, the system will use the default IPAllocationPool. + type: string + required: + - linkSelector + - name + - nodeSelector + type: object + stripes: + description: A list of stripes, stripes contain a set of nodes (rails). + items: + properties: + asnPool: + description: Optional reference to an IndexAllocationPool pool to use for Autonomous System Number allocations. If left blank, ASN allocation will be done from the ASNAllocationRange. + type: string + gpuVlan: + description: The VLAN used on interfaces facing the GPU servers. + type: integer + name: + description: The name of the Stripe. + type: string + nodeSelector: + description: Node selector to select the nodes to be used for this stripe. + items: + type: string + type: array + stripeID: + description: Unique ID for a stripe + type: integer + systemPoolIPV4: + description: Optional reference to an IPAllocationPool used to dynamically allocate an IPv4 address to system/lo0 interfaces. If left blank, system IP allocation will be done from the SystemIPV4Subnet. + type: string + required: + - gpuVlan + - name + - nodeSelector + - stripeID + type: object + type: array + systemPoolIPV4: + description: Reference to an IPAllocationPool used to dynamically allocate an IPv4 address to system/lo0 interfaces. If specified under the Leaf/Spine/Superspine/Borderleaf those will take precedence. + type: string + required: + - gpuIsolationGroups + - rocev2QoS + - stripes + type: object + status: + description: BackendStatus defines the observed state of Backend + properties: + health: + description: Indicates the health score of the Fabric. The health score of the Fabric is determined by the aggregate health score of the resources emited by the Fabric such as ISL, DefaultRouteReflectors etc. + type: integer + healthScoreReason: + description: Indicates the reason for the health score. + type: string + lastChange: + description: The time when the state of the resource last changed. + type: string + operationalState: + description: 'Operational state of the Fabric. The operational state of the fabric is determined by monitoring the operational state of the following resources (if applicable): DefaultRouters, ISLs.' + type: string + stripeConnector: + description: Stripe connector in the Backend. + properties: + name: + description: The name of the Stripe Connector. + type: string + stripeConnectorNodes: + description: List of stripe connector nodes in the Stripe. + items: + properties: + node: + description: Name of the TopoNode. + type: string + operatingSystem: + description: Operating system running on the node. + type: string + operatingSystemVersion: + description: Operating system version running on the node. + type: string + type: object + type: array + type: object + stripes: + description: List of stripes in the Backend. + items: + properties: + leafNodes: + description: List of leaf nodes in the Stripe. + items: + properties: + node: + description: Name of the TopoNode. + type: string + operatingSystem: + description: Operating system running on the node. + type: string + operatingSystemVersion: + description: Operating system version running on the node. + type: string + type: object + type: array + name: + description: The name of the Stripe. + type: string + type: object + type: array + type: object + type: object +served: true +storage: true +subresources: + status: {} diff --git a/static/resources/25.8.2/backendstates.aifabrics.eda.nokia.com/v1alpha1.yaml b/static/resources/25.8.2/backendstates.aifabrics.eda.nokia.com/v1alpha1.yaml new file mode 100644 index 0000000..6a7b585 --- /dev/null +++ b/static/resources/25.8.2/backendstates.aifabrics.eda.nokia.com/v1alpha1.yaml @@ -0,0 +1,94 @@ +name: v1alpha1 +schema: + openAPIV3Schema: + description: BackendState is the Schema for the backendstates API + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + description: BackendStateSpec defines the desired state of BackendState + properties: + gpuIsolationGroups: + description: IsolationGroups in the Backend. + items: + properties: + interfaces: + description: List of interfaces mapped to the IsolationGroup. + items: + type: string + type: array + name: + description: The name of the IsolationGroup. + type: string + type: object + type: array + stripeConnector: + description: Stripe connector in the Backend. + properties: + name: + description: The name of the Stripe Connector. + type: string + stripeConnectorNodes: + description: List of stripe connector nodes in the Stripe. + items: + properties: + node: + description: Name of the TopoNode. + type: string + operatingSystem: + description: Operating system running on the node. + type: string + operatingSystemVersion: + description: Operating system version running on the node. + type: string + type: object + type: array + type: object + stripes: + description: List of stripes in the Backend. + items: + properties: + leafNodes: + description: List of leaf nodes in the Stripe. + items: + properties: + node: + description: Name of the TopoNode. + type: string + operatingSystem: + description: Operating system running on the node. + type: string + operatingSystemVersion: + description: Operating system version running on the node. + type: string + type: object + type: array + name: + description: The name of the Stripe. + type: string + type: object + type: array + type: object + status: + description: BackendStateStatus defines the observed state of BackendState + type: object + type: object +served: true +storage: true +subresources: + status: {} diff --git a/static/resources/25.8.2/banners.siteinfo.eda.nokia.com/v1alpha1.yaml b/static/resources/25.8.2/banners.siteinfo.eda.nokia.com/v1alpha1.yaml new file mode 100644 index 0000000..96fcedd --- /dev/null +++ b/static/resources/25.8.2/banners.siteinfo.eda.nokia.com/v1alpha1.yaml @@ -0,0 +1,56 @@ +name: v1alpha1 +schema: + openAPIV3Schema: + description: Banner is the Schema for the banners API + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + description: BannerSpec allows the configuration of login and MOTD (Message of the Day) banners on selected nodes. The banners can be applied to specific nodes or selected using label selectors. + properties: + loginBanner: + description: This is the login banner displayed before a user has logged into the Node. + type: string + motd: + description: This is the MOTD banner displayed after a user has logged into the Node. + type: string + nodeSelector: + description: Labe selector to select nodes on which to configure the banners. + items: + type: string + type: array + nodes: + description: List of nodes on which to configure the banners. + items: + type: string + type: array + type: object + status: + description: BannerStatus defines the observed state of Banner + properties: + nodes: + description: List of nodes this banner has been applied to + items: + type: string + type: array + type: object + type: object +served: true +storage: true +subresources: + status: {} diff --git a/static/resources/25.8.2/bannerstates.siteinfo.eda.nokia.com/v1alpha1.yaml b/static/resources/25.8.2/bannerstates.siteinfo.eda.nokia.com/v1alpha1.yaml new file mode 100644 index 0000000..95ef8f2 --- /dev/null +++ b/static/resources/25.8.2/bannerstates.siteinfo.eda.nokia.com/v1alpha1.yaml @@ -0,0 +1,39 @@ +name: v1alpha1 +schema: + openAPIV3Schema: + description: BannerState is the Schema for the bannerstates API + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + description: BannerStateSpec defines the desired state of BannerState + properties: + nodes: + description: List of TopoNodes this banner has been applied to + items: + type: string + type: array + type: object + status: + description: BannerStateStatus defines the observed state of BannerState + type: object + type: object +served: true +storage: true +subresources: + status: {} diff --git a/static/resources/25.8.2/bgpgroupdeployments.protocols.eda.nokia.com/v1.yaml b/static/resources/25.8.2/bgpgroupdeployments.protocols.eda.nokia.com/v1.yaml new file mode 100644 index 0000000..470b027 --- /dev/null +++ b/static/resources/25.8.2/bgpgroupdeployments.protocols.eda.nokia.com/v1.yaml @@ -0,0 +1,47 @@ +name: v1 +schema: + openAPIV3Schema: + description: BGPGroupDeployment is the Schema for the bgpgroupdeployments API + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + description: BGPGroupDeploymentSpec defines the desired state of BGPGroupDeployment + properties: + bgpGroup: + description: Reference to a BgpGroup + type: string + node: + description: Reference to a Node on which to push the BgpGroup + type: string + router: + description: Reference to a Router + type: string + required: + - bgpGroup + - node + - router + type: object + status: + description: BGPGroupDeploymentStatus defines the observed state of BGPGroupDeployment + type: object + type: object +served: true +storage: true +subresources: + status: {} diff --git a/static/resources/25.8.2/bgpgroupdeployments.protocols.eda.nokia.com/v1alpha1.yaml b/static/resources/25.8.2/bgpgroupdeployments.protocols.eda.nokia.com/v1alpha1.yaml new file mode 100644 index 0000000..e2b5fb3 --- /dev/null +++ b/static/resources/25.8.2/bgpgroupdeployments.protocols.eda.nokia.com/v1alpha1.yaml @@ -0,0 +1,49 @@ +deprecated: true +deprecationWarning: This version is deprecated and will no longer be supported in the next version. +name: v1alpha1 +schema: + openAPIV3Schema: + description: BGPGroupDeployment is the Schema for the bgpgroupdeployments API + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + description: BGPGroupDeploymentSpec defines the desired state of BGPGroupDeployment + properties: + bgpGroup: + description: Reference to a BgpGroup + type: string + node: + description: Reference to a Node on which to push the BgpGroup + type: string + router: + description: Reference to a Router + type: string + required: + - bgpGroup + - node + - router + type: object + status: + description: BGPGroupDeploymentStatus defines the observed state of BGPGroupDeployment + type: object + type: object +served: true +storage: false +subresources: + status: {} diff --git a/static/resources/25.8.2/bgpgroups.protocols.eda.nokia.com/v1.yaml b/static/resources/25.8.2/bgpgroups.protocols.eda.nokia.com/v1.yaml new file mode 100644 index 0000000..7c1415e --- /dev/null +++ b/static/resources/25.8.2/bgpgroups.protocols.eda.nokia.com/v1.yaml @@ -0,0 +1,314 @@ +additionalPrinterColumns: + - jsonPath: .status.lastChange + name: Last Change + type: date + - jsonPath: .status.operationalState + name: Operational State + type: string +name: v1 +schema: + openAPIV3Schema: + description: BGPGroup is the Schema for the bgpgroups API + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + description: The BGPGroup enables centralized management of BGP peer configurations. This resource allows setting a description, common BGP settings, and peer-specific configurations, simplifying the consistent application of policies across multiple peers. It also includes transport settings, such as local TCP address configuration, passive mode, and TCP MSS. + properties: + asPathOptions: + description: AS Path Options + properties: + allowOwnAS: + default: 0 + description: The maximum number of times the global AS number or a local AS number of the BGP instance can appear in any received AS_PATH before it is considered a loop and considered invalid. + maximum: 255 + minimum: 0 + type: integer + removePrivateAS: + description: Options for removing private AS numbers (2-byte and 4-byte) from the advertised AS path towards all peers. + properties: + ignorePeerAS: + default: false + description: If set to true then do not delete or replace a private AS number that is the same as the peer AS number. + type: boolean + leadingOnly: + default: false + description: If set to true then only delete or replace private AS numbers that appear before the first occurrence of a non-private ASN in the sequence of most recent ASNs in the AS path. + type: boolean + removePrivateASMode: + default: DISABLED + description: The method by which private AS numbers are removed from the advertised AS_PATH attribute. + enum: + - DISABLED + - REPLACE + - DELETE + type: string + required: + - ignorePeerAS + - leadingOnly + - removePrivateASMode + type: object + required: + - allowOwnAS + type: object + bfd: + description: Enable or disable Bi-forward Forwarding Detection (BFD) with fast failover. + type: boolean + client: + description: When set to true, all configured and dynamic BGP peers are considered RR clients. + type: boolean + clusterID: + description: Enables route reflect client and sets the cluster ID. + type: string + description: + description: Sets the description on the BGP group. + type: string + exportPolicy: + description: Reference to a Policy CR that will be used to filter routes advertised to peers. + items: + type: string + type: array + grStaleRouteTime: + description: Enables Graceful Restart on the peer and sets the stale route time. + maximum: 3600 + minimum: 1 + type: integer + importPolicy: + description: Reference to a Policy CR that will be used to filter routes received from peers. + items: + type: string + type: array + ipv4Unicast: + description: Parameters relating to the IPv4 unicast AFI/SAFI. + properties: + advertiseIPV6NextHops: + description: Enables advertisement of IPv4 Unicast routes with IPv6 next-hops to peers. + type: boolean + enabled: + description: Enables the IPv4 unicast AFISAFI. + type: boolean + prefixLimit: + properties: + prefixLimitAccepted: + properties: + logOnly: + description: Defines the action to take when the maximum number of prefixes is exceeded. Session is reset if set to false, otherwise only a warning is logged. + type: boolean + maxReceivedRoutes: + description: Maximum number of prefixes allowed to be received from the neighbor, counting only accepted routes. + format: int32 + maximum: 4294967295 + minimum: 1 + type: integer + warningThreshold: + description: A percentage of the maximum number of prefixes that can be accepted before a warning is logged. + maximum: 100 + minimum: 1 + type: integer + type: object + prefixLimitReceived: + properties: + logOnly: + description: Defines the action to take when the maximum number of prefixes is exceeded. Session is reset if set to false, otherwise only a warning is logged. + type: boolean + maxReceivedRoutes: + description: Maximum number of prefixes allowed to be received from the neighbor, counting all routes (accepted and rejected by import policies). + format: int32 + maximum: 4294967295 + minimum: 1 + type: integer + warningThreshold: + description: A percentage of the maximum number of prefixes that can be received before a warning is logged. + maximum: 100 + minimum: 1 + type: integer + type: object + type: object + receiveIPV6NextHops: + description: Enables the advertisement of the RFC 5549 capability to receive IPv4 routes with IPv6 next-hops. + type: boolean + type: object + ipv6Unicast: + description: Parameters relating to the IPv6 unicast AFI/SAFI. + properties: + enabled: + description: Enables the IPv6 unicast AFISAFI + type: boolean + prefixLimit: + properties: + prefixLimitAccepted: + properties: + logOnly: + description: Defines the action to take when the maximum number of prefixes is exceeded. Session is reset if set to false, otherwise only a warning is logged. + type: boolean + maxReceivedRoutes: + description: Maximum number of prefixes allowed to be received from the neighbor, counting only accepted routes. + format: int32 + maximum: 4294967295 + minimum: 1 + type: integer + warningThreshold: + description: A percentage of the maximum number of prefixes that can be accepted before a warning is logged. + maximum: 100 + minimum: 1 + type: integer + type: object + prefixLimitReceived: + properties: + logOnly: + description: Defines the action to take when the maximum number of prefixes is exceeded. Session is reset if set to false, otherwise only a warning is logged. + type: boolean + maxReceivedRoutes: + description: Maximum number of prefixes allowed to be received from the neighbor, counting all routes (accepted and rejected by import policies). + format: int32 + maximum: 4294967295 + minimum: 1 + type: integer + warningThreshold: + description: A percentage of the maximum number of prefixes that can be received before a warning is logged. + maximum: 100 + minimum: 1 + type: integer + type: object + type: object + type: object + keychain: + description: Reference to a Keychain resource that will be used for authentication with the BGP peer. + type: string + localAS: + description: The local autonomous system number advertised to peers. + properties: + autonomousSystem: + description: Local Autonomous System number. + maximum: 4294967295 + minimum: 1 + type: integer + prependGlobalAS: + description: When set to true, the global ASN value is prepended to the AS path in outbound routes towards each BGP peer. + type: boolean + prependLocalAS: + description: When set to true, the local AS value is prepended to the AS path of inbound routes from each EBGP peer. + type: boolean + required: + - autonomousSystem + type: object + localPreference: + description: Local Preference attribute added to received routes from the BGP peers, also sets local preference for generated routes. + maximum: 4294967295 + minimum: 0 + type: integer + multiHopMaxHop: + description: Enable multihop for eBGP peers and sets the maximum number of hops allowed. + maximum: 255 + minimum: 1 + type: integer + nextHopSelf: + description: When set to true, the next-hop in all IPv4-unicast, IPv6-unicast and EVPN BGP routes advertised to the peer is set to the local-address. + type: boolean + peerAS: + description: The autonomous system number expected from peers. + properties: + autonomousSystem: + description: Local Autonomous System number. + maximum: 4294967295 + minimum: 1 + type: integer + required: + - autonomousSystem + type: object + sendCommunityLarge: + description: When false, all large (12 byte) BGP communities from all outbound routes advertised to the peer are stripped. + type: boolean + sendCommunityStandard: + description: When false, all standard (4 byte) communities from all outbound routes advertised to the peer are stripped. + type: boolean + sendDefaultRoute: + description: Options for controlling the generation of default routes towards BGP peers. + properties: + addressFamily: + description: Enables the sending of a synthetically generated default IPv4 or IPV6 route to each peer. + items: + enum: + - IPV4-UNICAST + - IPV6-UNICAST + type: string + type: array + exportPolicy: + description: Reference to a Policy that should be applied to the advertised default routes, in order to set their attributes to non-default values. + type: string + required: + - addressFamily + type: object + timers: + description: Timer configurations + properties: + connectRetry: + description: The time interval in seconds between successive attempts to establish a session with a peer. + maximum: 65535 + minimum: 1 + type: integer + holdTime: + description: The hold-time interval in seconds that the router proposes to the peer in its OPEN message. + maximum: 65535 + minimum: 0 + type: integer + keepAlive: + description: The interval in seconds between successive keepalive messages sent to the peer. + maximum: 21845 + minimum: 0 + type: integer + minimumAdvertisementInterval: + description: The value assigned to the MinRouteAdvertisementIntervalTimer of RFC 4271, for both EBGP and IBGP sessions. + maximum: 255 + minimum: 1 + type: integer + type: object + type: object + status: + description: BGPGroupStatus defines the observed state of BGPGroup + properties: + health: + description: Indicates the health score of the BGP group. + type: integer + healthScoreReason: + description: Indicates the reason for the health score. + type: string + lastChange: + description: The time when the state of the resource last changed. + type: string + numPeers: + description: Number of configured BGP peers within the BGP Group. + format: int32 + type: integer + numPeersOperDown: + description: Number of configured BGP peers which have an Operational State of down within the BGP Group. + format: int32 + type: integer + numPeersUnknown: + description: Number of configured BGP peers within the BGP Group which cannot be reached by npp. + format: int32 + type: integer + operationalState: + description: Operational state of the BGP group. + type: string + type: object + type: object +served: true +storage: true +subresources: + status: {} diff --git a/static/resources/25.8.2/bgpgroups.protocols.eda.nokia.com/v1alpha1.yaml b/static/resources/25.8.2/bgpgroups.protocols.eda.nokia.com/v1alpha1.yaml new file mode 100644 index 0000000..5111fe2 --- /dev/null +++ b/static/resources/25.8.2/bgpgroups.protocols.eda.nokia.com/v1alpha1.yaml @@ -0,0 +1,252 @@ +additionalPrinterColumns: + - jsonPath: .status.lastChange + name: Last Change + type: date + - jsonPath: .status.operationalState + name: Operational State + type: string +deprecated: true +deprecationWarning: This version is deprecated and will no longer be supported in the next version. +name: v1alpha1 +schema: + openAPIV3Schema: + description: BGPGroup is the Schema for the bgpgroups API + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + description: The BGPGroup enables centralized management of BGP peer configurations. This resource allows setting a description, common BGP settings, and peer-specific configurations, simplifying the consistent application of policies across multiple peers. It also includes transport settings, such as local TCP address configuration, passive mode, and TCP MSS. + properties: + asPathOptions: + description: AS Path Options + properties: + allowOwnAS: + default: 0 + description: The maximum number of times the global AS number or a local AS number of the BGP instance can appear in any received AS_PATH before it is considered a loop and considered invalid. + maximum: 255 + minimum: 0 + type: integer + removePrivateAS: + description: Options for removing private AS numbers (2-byte and 4-byte) from the advertised AS path towards all peers. + properties: + ignorePeerAS: + default: false + description: If set to true then do not delete or replace a private AS number that is the same as the peer AS number. + type: boolean + leadingOnly: + default: false + description: If set to true then only delete or replace private AS numbers that appear before the first occurrence of a non-private ASN in the sequence of most recent ASNs in the AS path. + type: boolean + removePrivateASMode: + default: DISABLED + description: The method by which private AS numbers are removed from the advertised AS_PATH attribute. + enum: + - DISABLED + - REPLACE + - DELETE + type: string + required: + - ignorePeerAS + - leadingOnly + - removePrivateASMode + type: object + required: + - allowOwnAS + type: object + bfd: + description: Enable or disable Bi-forward Forwarding Detection (BFD) with fast failover. + type: boolean + client: + description: When set to true, all configured and dynamic BGP peers are considered RR clients. + type: boolean + clusterID: + description: Enables route reflect client and sets the cluster ID. + type: string + description: + description: Sets the description on the BGP group. + type: string + exportPolicy: + description: Reference to a Policy CR that will be used to filter routes advertised to peers. + items: + type: string + type: array + grStaleRouteTime: + description: Enables Graceful Restart on the peer and sets the stale route time. + maximum: 3600 + minimum: 1 + type: integer + importPolicy: + description: Reference to a Policy CR that will be used to filter routes received from peers. + items: + type: string + type: array + ipv4Unicast: + description: Parameters relating to the IPv4 unicast AFI/SAFI. + properties: + advertiseIPV6NextHops: + description: Enables advertisement of IPv4 Unicast routes with IPv6 next-hops to peers. + type: boolean + enabled: + description: Enables the IPv4 unicast AFISAFI. + type: boolean + maxReceivedRoutes: + description: Maximum number of IPv4 Unicast routes that will be accepted from the neighbor, counting routes accepted and rejected by import policies. + maximum: 4294967295 + minimum: 1 + type: integer + receiveIPV6NextHops: + description: Enables the advertisement of the RFC 5549 capability to receive IPv4 routes with IPv6 next-hops. + type: boolean + type: object + ipv6Unicast: + description: Parameters relating to the IPv6 unicast AFI/SAFI. + properties: + enabled: + description: Enables the IPv6 unicast AFISAFI + type: boolean + maxReceivedRoutes: + description: Maximum number of IPv6 Unicast routes that will be accepted from the neighbor, counting routes accepted and rejected by import policies. + maximum: 4294967295 + minimum: 1 + type: integer + type: object + keychain: + description: Reference to a Keychain resource that will be used for authentication with the BGP peer. + type: string + localAS: + description: The local autonomous system number advertised to peers. + properties: + autonomousSystem: + description: Local Autonomous System number. + maximum: 4294967295 + minimum: 1 + type: integer + prependGlobalAS: + description: When set to true, the global ASN value is prepended to the AS path in outbound routes towards each BGP peer. + type: boolean + prependLocalAS: + description: When set to true, the local AS value is prepended to the AS path of inbound routes from each EBGP peer. + type: boolean + required: + - autonomousSystem + type: object + localPreference: + description: Local Preference attribute added to received routes from the BGP peers, also sets local preference for generated routes. + maximum: 4294967295 + minimum: 0 + type: integer + multiHopMaxHop: + description: Enable multihop for eBGP peers and sets the maximum number of hops allowed. + maximum: 255 + minimum: 1 + type: integer + nextHopSelf: + description: When set to true, the next-hop in all IPv4-unicast, IPv6-unicast and EVPN BGP routes advertised to the peer is set to the local-address. + type: boolean + peerAS: + description: The autonomous system number expected from peers. + properties: + autonomousSystem: + description: Local Autonomous System number. + maximum: 4294967295 + minimum: 1 + type: integer + required: + - autonomousSystem + type: object + sendCommunityLarge: + description: When false, all large (12 byte) BGP communities from all outbound routes advertised to the peer are stripped. + type: boolean + sendCommunityStandard: + description: When false, all standard (4 byte) communities from all outbound routes advertised to the peer are stripped. + type: boolean + sendDefaultRoute: + description: Options for controlling the generation of default routes towards BGP peers. + properties: + addressFamily: + description: Enables the sending of a synthetically generated default IPv4 or IPV6 route to each peer. + items: + enum: + - IPV4-UNICAST + - IPV6-UNICAST + type: string + type: array + exportPolicy: + description: Reference to a Policy that should be applied to the advertised default routes, in order to set their attributes to non-default values. + type: string + required: + - addressFamily + type: object + timers: + description: Timer configurations + properties: + connectRetry: + description: The time interval in seconds between successive attempts to establish a session with a peer. + maximum: 65535 + minimum: 1 + type: integer + holdTime: + description: The hold-time interval in seconds that the router proposes to the peer in its OPEN message. + maximum: 65535 + minimum: 0 + type: integer + keepAlive: + description: The interval in seconds between successive keepalive messages sent to the peer. + maximum: 21845 + minimum: 0 + type: integer + minimumAdvertisementInterval: + description: The value assigned to the MinRouteAdvertisementIntervalTimer of RFC 4271, for both EBGP and IBGP sessions. + maximum: 255 + minimum: 1 + type: integer + type: object + type: object + status: + description: BGPGroupStatus defines the observed state of BGPGroup + properties: + health: + description: Indicates the health score of the BGP group. + type: integer + healthScoreReason: + description: Indicates the reason for the health score. + type: string + lastChange: + description: The time when the state of the resource last changed. + type: string + numPeers: + description: Number of configured BGP peers within the BGP Group. + format: int32 + type: integer + numPeersOperDown: + description: Number of configured BGP peers which have an Operational State of down within the BGP Group. + format: int32 + type: integer + numPeersUnknown: + description: Number of configured BGP peers within the BGP Group which cannot be reached by npp. + format: int32 + type: integer + operationalState: + description: Operational state of the BGP group. + type: string + type: object + type: object +served: true +storage: false +subresources: + status: {} diff --git a/static/resources/25.8.2/bgpgroupstates.protocols.eda.nokia.com/v1.yaml b/static/resources/25.8.2/bgpgroupstates.protocols.eda.nokia.com/v1.yaml new file mode 100644 index 0000000..0ec71d0 --- /dev/null +++ b/static/resources/25.8.2/bgpgroupstates.protocols.eda.nokia.com/v1.yaml @@ -0,0 +1,42 @@ +name: v1 +schema: + openAPIV3Schema: + description: BGPGroupState is the Schema for the bgpgroupstates API + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + description: BGPGroupStateSpec defines the desired state of BGPGroupState + properties: + defaultBGPGroup: + description: Denotes if the group is a DefaultBGPGroup or BGPGroup + type: boolean + group: + type: string + required: + - defaultBGPGroup + - group + type: object + status: + description: BGPGroupStateStatus defines the observed state of BGPGroupState + type: object + type: object +served: true +storage: true +subresources: + status: {} diff --git a/static/resources/25.8.2/bgpgroupstates.protocols.eda.nokia.com/v1alpha1.yaml b/static/resources/25.8.2/bgpgroupstates.protocols.eda.nokia.com/v1alpha1.yaml new file mode 100644 index 0000000..d6c17dc --- /dev/null +++ b/static/resources/25.8.2/bgpgroupstates.protocols.eda.nokia.com/v1alpha1.yaml @@ -0,0 +1,44 @@ +deprecated: true +deprecationWarning: This version is deprecated and will no longer be supported in the next version. +name: v1alpha1 +schema: + openAPIV3Schema: + description: BGPGroupState is the Schema for the bgpgroupstates API + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + description: BGPGroupStateSpec defines the desired state of BGPGroupState + properties: + defaultBGPGroup: + description: Denotes if the group is a DefaultBGPGroup or BGPGroup + type: boolean + group: + type: string + required: + - defaultBGPGroup + - group + type: object + status: + description: BGPGroupStateStatus defines the observed state of BGPGroupState + type: object + type: object +served: true +storage: false +subresources: + status: {} diff --git a/static/resources/25.8.2/bgppeers.protocols.eda.nokia.com/v1.yaml b/static/resources/25.8.2/bgppeers.protocols.eda.nokia.com/v1.yaml new file mode 100644 index 0000000..cda8f76 --- /dev/null +++ b/static/resources/25.8.2/bgppeers.protocols.eda.nokia.com/v1.yaml @@ -0,0 +1,366 @@ +additionalPrinterColumns: + - jsonPath: .status.sessionState + name: Session State + type: string + - jsonPath: .status.lastChange + name: Last Change + type: date + - jsonPath: .status.enabled + name: Enabled + type: boolean + - jsonPath: .status.operationalState + name: Operational State + type: string + - jsonPath: .status.peerAS + name: PeerAS + type: integer +name: v1 +schema: + openAPIV3Schema: + description: BGPPeer is the Schema for the bgppeers API + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + description: BGPPeer enables the configuration of BGP sessions. It allows specifying a description, an interface reference (either RoutedInterface or IrbInterface), and the peer IP address. The resource also supports dynamic neighbors, common BGP settings, and peer-specific configurations. + properties: + asPathOptions: + description: AS Path Options + properties: + allowOwnAS: + default: 0 + description: The maximum number of times the global AS number or a local AS number of the BGP instance can appear in any received AS_PATH before it is considered a loop and considered invalid. + maximum: 255 + minimum: 0 + type: integer + removePrivateAS: + description: Options for removing private AS numbers (2-byte and 4-byte) from the advertised AS path towards all peers. + properties: + ignorePeerAS: + default: false + description: If set to true then do not delete or replace a private AS number that is the same as the peer AS number. + type: boolean + leadingOnly: + default: false + description: If set to true then only delete or replace private AS numbers that appear before the first occurrence of a non-private ASN in the sequence of most recent ASNs in the AS path. + type: boolean + removePrivateASMode: + default: DISABLED + description: The method by which private AS numbers are removed from the advertised AS_PATH attribute. + enum: + - DISABLED + - REPLACE + - DELETE + type: string + required: + - ignorePeerAS + - leadingOnly + - removePrivateASMode + type: object + required: + - allowOwnAS + type: object + bfd: + description: Enable or disable Bi-forward Forwarding Detection (BFD) with fast failover. + type: boolean + client: + description: When set to true, all configured and dynamic BGP peers are considered RR clients. + type: boolean + clusterID: + description: Enables route reflect client and sets the cluster ID. + type: string + description: + description: Sets the description on the BGP peer + type: string + dynamicNeighbor: + default: false + description: When set to true the Interface is added to the dynamic-neighbor list for dynamic peering. + type: boolean + dynamicNeighborAllowedPeerAS: + description: The autonomous system numbers allowed from peers if dynamic peering is enabled. + items: + type: integer + type: array + exportPolicy: + description: Reference to a Policy CR that will be used to filter routes advertised to peers. + items: + type: string + type: array + grStaleRouteTime: + description: Enables Graceful Restart on the peer and sets the stale route time. + maximum: 3600 + minimum: 1 + type: integer + group: + description: Reference to a BGPGroup. When present this BGP peer will be added to the BGP group + type: string + importPolicy: + description: Reference to a Policy CR that will be used to filter routes received from peers. + items: + type: string + type: array + interface: + description: Reference to a RoutedInterface or IrbInterface resource whose IP will be used as a source IP for the BGP session. + type: string + interfaceKind: + description: InterfaceReference type defines whether the provided Reference is a RoutedInterface or IrbInterface. + enum: + - ROUTEDINTERFACE + - IRBINTERFACE + type: string + ipv4Unicast: + description: Parameters relating to the IPv4 unicast AFI/SAFI. + properties: + advertiseIPV6NextHops: + description: Enables advertisement of IPv4 Unicast routes with IPv6 next-hops to peers. + type: boolean + enabled: + description: Enables the IPv4 unicast AFISAFI. + type: boolean + prefixLimit: + properties: + prefixLimitAccepted: + properties: + logOnly: + description: Defines the action to take when the maximum number of prefixes is exceeded. Session is reset if set to false, otherwise only a warning is logged. + type: boolean + maxReceivedRoutes: + description: Maximum number of prefixes allowed to be received from the neighbor, counting only accepted routes. + format: int32 + maximum: 4294967295 + minimum: 1 + type: integer + warningThreshold: + description: A percentage of the maximum number of prefixes that can be accepted before a warning is logged. + maximum: 100 + minimum: 1 + type: integer + type: object + prefixLimitReceived: + properties: + logOnly: + description: Defines the action to take when the maximum number of prefixes is exceeded. Session is reset if set to false, otherwise only a warning is logged. + type: boolean + maxReceivedRoutes: + description: Maximum number of prefixes allowed to be received from the neighbor, counting all routes (accepted and rejected by import policies). + format: int32 + maximum: 4294967295 + minimum: 1 + type: integer + warningThreshold: + description: A percentage of the maximum number of prefixes that can be received before a warning is logged. + maximum: 100 + minimum: 1 + type: integer + type: object + type: object + receiveIPV6NextHops: + description: Enables the advertisement of the RFC 5549 capability to receive IPv4 routes with IPv6 next-hops. + type: boolean + type: object + ipv6Unicast: + description: Parameters relating to the IPv6 unicast AFI/SAFI. + properties: + enabled: + description: Enables the IPv6 unicast AFISAFI + type: boolean + prefixLimit: + properties: + prefixLimitAccepted: + properties: + logOnly: + description: Defines the action to take when the maximum number of prefixes is exceeded. Session is reset if set to false, otherwise only a warning is logged. + type: boolean + maxReceivedRoutes: + description: Maximum number of prefixes allowed to be received from the neighbor, counting only accepted routes. + format: int32 + maximum: 4294967295 + minimum: 1 + type: integer + warningThreshold: + description: A percentage of the maximum number of prefixes that can be accepted before a warning is logged. + maximum: 100 + minimum: 1 + type: integer + type: object + prefixLimitReceived: + properties: + logOnly: + description: Defines the action to take when the maximum number of prefixes is exceeded. Session is reset if set to false, otherwise only a warning is logged. + type: boolean + maxReceivedRoutes: + description: Maximum number of prefixes allowed to be received from the neighbor, counting all routes (accepted and rejected by import policies). + format: int32 + maximum: 4294967295 + minimum: 1 + type: integer + warningThreshold: + description: A percentage of the maximum number of prefixes that can be received before a warning is logged. + maximum: 100 + minimum: 1 + type: integer + type: object + type: object + type: object + keychain: + description: Reference to a Keychain resource that will be used for authentication with the BGP peer. + type: string + localAS: + description: The local autonomous system number advertised to peers. + properties: + autonomousSystem: + description: Local Autonomous System number. + maximum: 4294967295 + minimum: 1 + type: integer + prependGlobalAS: + description: When set to true, the global ASN value is prepended to the AS path in outbound routes towards each BGP peer. + type: boolean + prependLocalAS: + description: When set to true, the local AS value is prepended to the AS path of inbound routes from each EBGP peer. + type: boolean + required: + - autonomousSystem + type: object + localPreference: + description: Local Preference attribute added to received routes from the BGP peers, also sets local preference for generated routes. + maximum: 4294967295 + minimum: 0 + type: integer + multiHopMaxHop: + description: Enable multihop for eBGP peers and sets the maximum number of hops allowed. + maximum: 255 + minimum: 1 + type: integer + nextHopSelf: + description: When set to true, the next-hop in all IPv4-unicast, IPv6-unicast and EVPN BGP routes advertised to the peer is set to the local-address. + type: boolean + node: + description: Node on which to configure the BGP peer. This node must be one of the nodes on which the IRBInterface is configured. When left blank or if the node is not part of the IRBInterface, the peer will not be deployed. Ignored for RoutedInterfaces. + type: string + peerAS: + description: The autonomous system number expected from peers. + properties: + autonomousSystem: + description: Local Autonomous System number. + maximum: 4294967295 + minimum: 1 + type: integer + required: + - autonomousSystem + type: object + peerIP: + description: Peer IP to which the peering session will be established. + type: string + sendCommunityLarge: + description: When false, all large (12 byte) BGP communities from all outbound routes advertised to the peer are stripped. + type: boolean + sendCommunityStandard: + description: When false, all standard (4 byte) communities from all outbound routes advertised to the peer are stripped. + type: boolean + sendDefaultRoute: + description: Options for controlling the generation of default routes towards BGP peers. + properties: + addressFamily: + description: Enables the sending of a synthetically generated default IPv4 or IPV6 route to each peer. + items: + enum: + - IPV4-UNICAST + - IPV6-UNICAST + type: string + type: array + exportPolicy: + description: Reference to a Policy that should be applied to the advertised default routes, in order to set their attributes to non-default values. + type: string + required: + - addressFamily + type: object + timers: + description: Timer configurations + properties: + connectRetry: + description: The time interval in seconds between successive attempts to establish a session with a peer. + maximum: 65535 + minimum: 1 + type: integer + holdTime: + description: The hold-time interval in seconds that the router proposes to the peer in its OPEN message. + maximum: 65535 + minimum: 0 + type: integer + keepAlive: + description: The interval in seconds between successive keepalive messages sent to the peer. + maximum: 21845 + minimum: 0 + type: integer + minimumAdvertisementInterval: + description: The value assigned to the MinRouteAdvertisementIntervalTimer of RFC 4271, for both EBGP and IBGP sessions. + maximum: 255 + minimum: 1 + type: integer + type: object + required: + - group + - interface + - interfaceKind + type: object + status: + description: BGPPeerStatus defines the observed state of BGPPeer + properties: + enabled: + description: Indicated whether the BGP Peer is administratively enabled. + type: boolean + health: + description: Indicates the health score of the BGP peer. + type: integer + healthScoreReason: + description: Indicates the reason for the health score. + type: string + lastChange: + description: The time when the state of the resource last changed. + type: string + lastEvent: + description: Last event of the BGP peer. + type: string + lastState: + description: Last state of the BGP peer. + type: string + negotiatedHoldTime: + description: Hold time negotiated with the BGP peer. + type: integer + negotiatedKeepaliveInterval: + description: Keepalive interval negotiated with the BGP peer. + type: integer + operationalState: + description: Operational state of the BGP peer + type: string + peerAS: + description: Peer AS of the BGP peer. + type: integer + sessionState: + description: The state of the BGP session. + type: string + underMaintenance: + description: Indicates if the BGP peer is under maintenance. + type: boolean + type: object + type: object +served: true +storage: true +subresources: + status: {} diff --git a/static/resources/25.8.2/bgppeers.protocols.eda.nokia.com/v1alpha1.yaml b/static/resources/25.8.2/bgppeers.protocols.eda.nokia.com/v1alpha1.yaml new file mode 100644 index 0000000..0304ecb --- /dev/null +++ b/static/resources/25.8.2/bgppeers.protocols.eda.nokia.com/v1alpha1.yaml @@ -0,0 +1,304 @@ +additionalPrinterColumns: + - jsonPath: .status.sessionState + name: Session State + type: string + - jsonPath: .status.lastChange + name: Last Change + type: date + - jsonPath: .status.enabled + name: Enabled + type: boolean + - jsonPath: .status.operationalState + name: Operational State + type: string + - jsonPath: .status.peerAS + name: PeerAS + type: integer +deprecated: true +deprecationWarning: This version is deprecated and will no longer be supported in the next version. +name: v1alpha1 +schema: + openAPIV3Schema: + description: BGPPeer is the Schema for the bgppeers API + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + description: BGPPeer enables the configuration of BGP sessions. It allows specifying a description, an interface reference (either RoutedInterface or IrbInterface), and the peer IP address. The resource also supports dynamic neighbors, common BGP settings, and peer-specific configurations. + properties: + asPathOptions: + description: AS Path Options + properties: + allowOwnAS: + default: 0 + description: The maximum number of times the global AS number or a local AS number of the BGP instance can appear in any received AS_PATH before it is considered a loop and considered invalid. + maximum: 255 + minimum: 0 + type: integer + removePrivateAS: + description: Options for removing private AS numbers (2-byte and 4-byte) from the advertised AS path towards all peers. + properties: + ignorePeerAS: + default: false + description: If set to true then do not delete or replace a private AS number that is the same as the peer AS number. + type: boolean + leadingOnly: + default: false + description: If set to true then only delete or replace private AS numbers that appear before the first occurrence of a non-private ASN in the sequence of most recent ASNs in the AS path. + type: boolean + removePrivateASMode: + default: DISABLED + description: The method by which private AS numbers are removed from the advertised AS_PATH attribute. + enum: + - DISABLED + - REPLACE + - DELETE + type: string + required: + - ignorePeerAS + - leadingOnly + - removePrivateASMode + type: object + required: + - allowOwnAS + type: object + bfd: + description: Enable or disable Bi-forward Forwarding Detection (BFD) with fast failover. + type: boolean + client: + description: When set to true, all configured and dynamic BGP peers are considered RR clients. + type: boolean + clusterID: + description: Enables route reflect client and sets the cluster ID. + type: string + description: + description: Sets the description on the BGP peer + type: string + dynamicNeighbor: + default: false + description: When set to true the Interface is added to the dynamic-neighbor list for dynamic peering. + type: boolean + dynamicNeighborAllowedPeerAS: + description: The autonomous system numbers allowed from peers if dynamic peering is enabled. + items: + type: integer + type: array + exportPolicy: + description: Reference to a Policy CR that will be used to filter routes advertised to peers. + items: + type: string + type: array + grStaleRouteTime: + description: Enables Graceful Restart on the peer and sets the stale route time. + maximum: 3600 + minimum: 1 + type: integer + group: + description: Reference to a BGPGroup. When present this BGP peer will be added to the BGP group + type: string + importPolicy: + description: Reference to a Policy CR that will be used to filter routes received from peers. + items: + type: string + type: array + interface: + description: Reference to a RoutedInterface or IrbInterface resource whose IP will be used as a source IP for the BGP session. + type: string + interfaceKind: + description: InterfaceReference type defines whether the provided Reference is a RoutedInterface or IrbInterface. + enum: + - ROUTEDINTERFACE + - IRBINTERFACE + type: string + ipv4Unicast: + description: Parameters relating to the IPv4 unicast AFI/SAFI. + properties: + advertiseIPV6NextHops: + description: Enables advertisement of IPv4 Unicast routes with IPv6 next-hops to peers. + type: boolean + enabled: + description: Enables the IPv4 unicast AFISAFI. + type: boolean + maxReceivedRoutes: + description: Maximum number of IPv4 Unicast routes that will be accepted from the neighbor, counting routes accepted and rejected by import policies. + maximum: 4294967295 + minimum: 1 + type: integer + receiveIPV6NextHops: + description: Enables the advertisement of the RFC 5549 capability to receive IPv4 routes with IPv6 next-hops. + type: boolean + type: object + ipv6Unicast: + description: Parameters relating to the IPv6 unicast AFI/SAFI. + properties: + enabled: + description: Enables the IPv6 unicast AFISAFI + type: boolean + maxReceivedRoutes: + description: Maximum number of IPv6 Unicast routes that will be accepted from the neighbor, counting routes accepted and rejected by import policies. + maximum: 4294967295 + minimum: 1 + type: integer + type: object + keychain: + description: Reference to a Keychain resource that will be used for authentication with the BGP peer. + type: string + localAS: + description: The local autonomous system number advertised to peers. + properties: + autonomousSystem: + description: Local Autonomous System number. + maximum: 4294967295 + minimum: 1 + type: integer + prependGlobalAS: + description: When set to true, the global ASN value is prepended to the AS path in outbound routes towards each BGP peer. + type: boolean + prependLocalAS: + description: When set to true, the local AS value is prepended to the AS path of inbound routes from each EBGP peer. + type: boolean + required: + - autonomousSystem + type: object + localPreference: + description: Local Preference attribute added to received routes from the BGP peers, also sets local preference for generated routes. + maximum: 4294967295 + minimum: 0 + type: integer + multiHopMaxHop: + description: Enable multihop for eBGP peers and sets the maximum number of hops allowed. + maximum: 255 + minimum: 1 + type: integer + nextHopSelf: + description: When set to true, the next-hop in all IPv4-unicast, IPv6-unicast and EVPN BGP routes advertised to the peer is set to the local-address. + type: boolean + node: + description: Node on which to configure the BGP peer. This node must be one of the nodes on which the IRBInterface is configured. When left blank or if the node is not part of the IRBInterface, the peer will not be deployed. Ignored for RoutedInterfaces. + type: string + peerAS: + description: The autonomous system number expected from peers. + properties: + autonomousSystem: + description: Local Autonomous System number. + maximum: 4294967295 + minimum: 1 + type: integer + required: + - autonomousSystem + type: object + peerIP: + description: Peer IP to which the peering session will be established. + type: string + sendCommunityLarge: + description: When false, all large (12 byte) BGP communities from all outbound routes advertised to the peer are stripped. + type: boolean + sendCommunityStandard: + description: When false, all standard (4 byte) communities from all outbound routes advertised to the peer are stripped. + type: boolean + sendDefaultRoute: + description: Options for controlling the generation of default routes towards BGP peers. + properties: + addressFamily: + description: Enables the sending of a synthetically generated default IPv4 or IPV6 route to each peer. + items: + enum: + - IPV4-UNICAST + - IPV6-UNICAST + type: string + type: array + exportPolicy: + description: Reference to a Policy that should be applied to the advertised default routes, in order to set their attributes to non-default values. + type: string + required: + - addressFamily + type: object + timers: + description: Timer configurations + properties: + connectRetry: + description: The time interval in seconds between successive attempts to establish a session with a peer. + maximum: 65535 + minimum: 1 + type: integer + holdTime: + description: The hold-time interval in seconds that the router proposes to the peer in its OPEN message. + maximum: 65535 + minimum: 0 + type: integer + keepAlive: + description: The interval in seconds between successive keepalive messages sent to the peer. + maximum: 21845 + minimum: 0 + type: integer + minimumAdvertisementInterval: + description: The value assigned to the MinRouteAdvertisementIntervalTimer of RFC 4271, for both EBGP and IBGP sessions. + maximum: 255 + minimum: 1 + type: integer + type: object + required: + - group + - interface + - interfaceKind + type: object + status: + description: BGPPeerStatus defines the observed state of BGPPeer + properties: + enabled: + description: Indicated whether the BGP Peer is administratively enabled. + type: boolean + health: + description: Indicates the health score of the BGP peer. + type: integer + healthScoreReason: + description: Indicates the reason for the health score. + type: string + lastChange: + description: The time when the state of the resource last changed. + type: string + lastEvent: + description: Last event of the BGP peer. + type: string + lastState: + description: Last state of the BGP peer. + type: string + negotiatedHoldTime: + description: Hold time negotiated with the BGP peer. + type: integer + negotiatedKeepaliveInterval: + description: Keepalive interval negotiated with the BGP peer. + type: integer + operationalState: + description: Operational state of the BGP peer + type: string + peerAS: + description: Peer AS of the BGP peer. + type: integer + sessionState: + description: The state of the BGP session. + type: string + underMaintenance: + description: Indicates if the BGP peer is under maintenance. + type: boolean + type: object + type: object +served: true +storage: false +subresources: + status: {} diff --git a/static/resources/25.8.2/bgppeerstates.protocols.eda.nokia.com/v1.yaml b/static/resources/25.8.2/bgppeerstates.protocols.eda.nokia.com/v1.yaml new file mode 100644 index 0000000..f9ac91d --- /dev/null +++ b/static/resources/25.8.2/bgppeerstates.protocols.eda.nokia.com/v1.yaml @@ -0,0 +1,75 @@ +name: v1 +schema: + openAPIV3Schema: + description: BGPPeerState is the Schema for the bgppeerstates API + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + description: BGPPeerStateSpec defines the desired state of BGPPeerState + properties: + afiSAFI: + description: List of configured AFI-SAFI on the BGP peer + items: + type: string + type: array + defaultNetworkInstance: + description: Denotes if the router is a DefaultRouter or Router + type: boolean + dynamicNeighbor: + default: false + description: When set to true the PeerDefaultInterface is added to the dynamic-neighbor list for dynamic peering. + type: boolean + group: + description: Reference to a BGPGroup + type: string + networkInstanceName: + description: The name of the network-instance or VPRN in which the BGP peer is configured + type: string + node: + description: The Node on which the BGP peer configuration resides + type: string + nodeInterface: + description: Node interface of the default interface which is configured to peer as a dynamic neighbor + type: string + operatingSystem: + description: Operating System of the Node + type: string + peerIP: + description: The IP of the BGP peer + type: string + router: + description: Router to which the BGP peer is attached + type: string + subInterfaceIndex: + description: Sub interface index of the default interface which is configured to peer as a dynamic neighbor + type: integer + required: + - defaultNetworkInstance + - dynamicNeighbor + - networkInstanceName + - router + type: object + status: + description: BGPPeerStateStatus defines the observed state of BGPPeerState + type: object + type: object +served: true +storage: true +subresources: + status: {} diff --git a/static/resources/25.8.2/bgppeerstates.protocols.eda.nokia.com/v1alpha1.yaml b/static/resources/25.8.2/bgppeerstates.protocols.eda.nokia.com/v1alpha1.yaml new file mode 100644 index 0000000..7252857 --- /dev/null +++ b/static/resources/25.8.2/bgppeerstates.protocols.eda.nokia.com/v1alpha1.yaml @@ -0,0 +1,77 @@ +deprecated: true +deprecationWarning: This version is deprecated and will no longer be supported in the next version. +name: v1alpha1 +schema: + openAPIV3Schema: + description: BGPPeerState is the Schema for the bgppeerstates API + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + description: BGPPeerStateSpec defines the desired state of BGPPeerState + properties: + afiSAFI: + description: List of configured AFI-SAFI on the BGP peer + items: + type: string + type: array + defaultNetworkInstance: + description: Denotes if the router is a DefaultRouter or Router + type: boolean + dynamicNeighbor: + default: false + description: When set to true the PeerDefaultInterface is added to the dynamic-neighbor list for dynamic peering. + type: boolean + group: + description: Reference to a BGPGroup + type: string + networkInstanceName: + description: The name of the network-instance or VPRN in which the BGP peer is configured + type: string + node: + description: The Node on which the BGP peer configuration resides + type: string + nodeInterface: + description: Node interface of the default interface which is configured to peer as a dynamic neighbor + type: string + operatingSystem: + description: Operating System of the Node + type: string + peerIP: + description: The IP of the BGP peer + type: string + router: + description: Router to which the BGP peer is attached + type: string + subInterfaceIndex: + description: Sub interface index of the default interface which is configured to peer as a dynamic neighbor + type: integer + required: + - defaultNetworkInstance + - dynamicNeighbor + - networkInstanceName + - router + type: object + status: + description: BGPPeerStateStatus defines the observed state of BGPPeerState + type: object + type: object +served: true +storage: false +subresources: + status: {} diff --git a/static/resources/25.8.2/breakouts.interfaces.eda.nokia.com/v1alpha1.yaml b/static/resources/25.8.2/breakouts.interfaces.eda.nokia.com/v1alpha1.yaml new file mode 100644 index 0000000..8d7f8d9 --- /dev/null +++ b/static/resources/25.8.2/breakouts.interfaces.eda.nokia.com/v1alpha1.yaml @@ -0,0 +1,70 @@ +name: v1alpha1 +schema: + openAPIV3Schema: + description: Breakout is the Schema for the breakouts API + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + description: Breakout allows for the configuration of interface breakouts on specified Nodes. This resource specifies the Nodes, parent Interfaces, the number of breakout channels, and the speed of each channel. + properties: + channels: + description: The number of breakout channels to create. + maximum: 8 + minimum: 1 + type: integer + interface: + description: A list of normalized parent interface/port. + items: + type: string + type: array + node: + description: Reference to a list of TopoNodes where the parent interfaces are to be broken out. + items: + type: string + type: array + nodeSelector: + description: TopoNode where the parent interfaces are to be broken out. + items: + type: string + type: array + speed: + description: The speed of each breakout channel. + enum: + - 800G + - 400G + - 200G + - 100G + - 50G + - 40G + - 25G + - 10G + type: string + required: + - channels + - node + - speed + type: object + status: + description: BreakoutStatus defines the observed state of Breakout + type: object + type: object +served: true +storage: true +subresources: + status: {} diff --git a/static/resources/25.8.2/bridgedomaindeployments.services.eda.nokia.com/v1.yaml b/static/resources/25.8.2/bridgedomaindeployments.services.eda.nokia.com/v1.yaml new file mode 100644 index 0000000..9abbe1a --- /dev/null +++ b/static/resources/25.8.2/bridgedomaindeployments.services.eda.nokia.com/v1.yaml @@ -0,0 +1,51 @@ +name: v1 +schema: + openAPIV3Schema: + description: BridgeDomainDeployment is the Schema for the bridgedomaindeployments API + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + description: BridgeDomainDeploymentSpec defines the desired state of BridgeDomainDeployment + properties: + bridgeDomain: + description: Reference to a BridgeDomain + type: string + node: + description: Reference to a Node on which to push the BridgeDomain + type: string + type: + default: DEFAULT + description: Specifies the Type of BridgeDomain to be deployed + enum: + - SIMPLE + - DEFAULT + type: string + required: + - bridgeDomain + - node + - type + type: object + status: + description: BridgeDomainDeploymentStatus defines the observed state of BridgeDomainDeployment + type: object + type: object +served: true +storage: true +subresources: + status: {} diff --git a/static/resources/25.8.2/bridgedomaindeployments.services.eda.nokia.com/v1alpha1.yaml b/static/resources/25.8.2/bridgedomaindeployments.services.eda.nokia.com/v1alpha1.yaml new file mode 100644 index 0000000..88eef0a --- /dev/null +++ b/static/resources/25.8.2/bridgedomaindeployments.services.eda.nokia.com/v1alpha1.yaml @@ -0,0 +1,53 @@ +deprecated: true +deprecationWarning: This version is deprecated and will no longer be supported in the next version. +name: v1alpha1 +schema: + openAPIV3Schema: + description: BridgeDomainDeployment is the Schema for the bridgedomaindeployments API + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + description: BridgeDomainDeploymentSpec defines the desired state of BridgeDomainDeployment + properties: + bridgeDomain: + description: Reference to a BridgeDomain + type: string + node: + description: Reference to a Node on which to push the BridgeDomain + type: string + type: + default: DEFAULT + description: Specifies the Type of BridgeDomain to be deployed + enum: + - SIMPLE + - DEFAULT + type: string + required: + - bridgeDomain + - node + - type + type: object + status: + description: BridgeDomainDeploymentStatus defines the observed state of BridgeDomainDeployment + type: object + type: object +served: true +storage: false +subresources: + status: {} diff --git a/static/resources/25.8.2/bridgedomains.services.eda.nokia.com/v1.yaml b/static/resources/25.8.2/bridgedomains.services.eda.nokia.com/v1.yaml new file mode 100644 index 0000000..ae00e98 --- /dev/null +++ b/static/resources/25.8.2/bridgedomains.services.eda.nokia.com/v1.yaml @@ -0,0 +1,251 @@ +additionalPrinterColumns: + - jsonPath: .status.vni + name: VNI + type: string + - jsonPath: .status.evi + name: EVI + type: string + - jsonPath: .status.importTarget + name: Import Target + type: string + - jsonPath: .status.exportTarget + name: Export Target + type: string + - jsonPath: .status.numSubInterfacesOperDown + name: OperDown SubIf + type: string + - jsonPath: .status.numSubInterfaces + name: Total SubIf + type: string + - jsonPath: .status.operationalState + name: OperationalState + type: string + - jsonPath: .status.lastChange + name: LastChange + type: string +name: v1 +schema: + openAPIV3Schema: + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + description: The BridgeDomain enables the configuration and management of Layer 2 virtual networks. It includes settings for VNI, EVI, route targets for import and export, and tunnel index allocation. Additionally, the specification allows for advanced features such as MAC address table limits, aging, Proxy ARP and detection of MAC and IP duplication. + properties: + description: + description: The description of the BridgeDomain. + type: string + evi: + description: EVI to use for this BridgeDomain, can be optionally left blank to have it automatically allocated using the EVI Pool. + maximum: 65535 + minimum: 1 + type: integer + eviPool: + default: evi-pool + description: Reference to an EVI pool to use for allocations if EVI is left blank. + type: string + exportTarget: + description: Export route target in 'target:N:N' format, if not specified, the default value taken as "target:1:". + pattern: ^target.*$ + type: string + importTarget: + description: Import route target in 'target:N:N' format, if not specified, the default value taken as "target:1:". + pattern: ^target.*$ + type: string + l2proxyARPND: + description: Enables / Disabled Proxy ARP / Proxy ND. + properties: + dynamicLearning: + properties: + ageTime: + description: Aging timer value for the proxy entries in seconds. If not set, this indicates that the entries are never flushed. + maximum: 86400 + minimum: 60 + type: integer + enabled: + default: false + description: Enables or disables Dynamic Learning. + type: boolean + sendRefresh: + description: The interval determines the frequency at which the system generates three ARP Requests or Neighbor Solicitations with the intent to refresh the proxy entry. The refresh is sent within the age-time window. + maximum: 86400 + minimum: 120 + type: integer + type: object + ipDuplication: + properties: + enabled: + default: false + description: Enables or disables IP Duplication. + type: boolean + holdDownTime: + default: 9 + description: Time to wait in minutes from the moment an IP is declared duplicate to the time the IP is removed from the proxy ARP/ND table. + maximum: 60 + minimum: 2 + type: integer + monitoringWindow: + default: 3 + description: Monitoring window for detecting duplication on a given IP address in the proxy ARP/ND table. + maximum: 15 + minimum: 1 + type: integer + numMoves: + default: 5 + description: Number of moves in the proxy ARP/ND table that an IP is allowed within the monitoring-window. + maximum: 10 + minimum: 3 + type: integer + type: object + proxyARP: + default: false + description: Enables proxy ARP. + type: boolean + proxyND: + default: false + description: Enables proxy ND. + type: boolean + tableSize: + default: 250 + description: Maximum number of entries allowed in the proxy table of the bridge domain. + maximum: 8192 + minimum: 1 + type: integer + type: object + macAging: + default: 300 + description: Configurable aging time for dynamically learned mac addresses. + format: int32 + maximum: 86400 + minimum: 60 + type: integer + macDuplicationDetection: + description: Enable or disable MAC duplication detection and resolution mechanisms. + properties: + action: + default: StopLearning + description: Action to take on the subinterface upon detecting at least one mac addresses as duplicate on the subinterface. + enum: + - Blackhole + - OperDown + - StopLearning + type: string + enabled: + default: false + description: Enables or disables Mac Duplication Detection. + type: boolean + holdDownTime: + default: 9 + description: Time to wait in minutes from the moment a mac is declared duplicate to the mac is flushed from the bridge table. + maximum: 60 + minimum: 2 + type: integer + monitoringWindow: + default: 3 + description: Monitoring window in minutes for detecting duplication on a given mac address. + maximum: 15 + minimum: 1 + type: integer + numMoves: + default: 5 + description: Number of moves a mac is allowed within the monitoring-window, before it is declared duplicate. + minimum: 3 + type: integer + type: object + macLearning: + default: true + description: Enable MAC learning for this BridgeDomain. + type: boolean + macLimit: + description: Sets the maximum number of MAC entries accepted in the bridge table. + format: int32 + minimum: 1 + type: integer + tunnelIndexPool: + default: tunnel-index-pool + description: Reference to a tunnel index pool to use for allocations. + type: string + type: + default: EVPNVXLAN + description: Select the type of BridgeDomain. Simple doesn't include any overlay control plane or dataplane properties (EVPN/VXLAN). EVPNVXLAN includes the properties needed to provision this BridgeDomain over an IP Fabric. + enum: + - SIMPLE + - EVPNVXLAN + type: string + vni: + description: VNI to use for this BridgeDomain, can be optionally left blank to have it allocated using the VNI Pool. + maximum: 16777215 + minimum: 1 + type: integer + vniPool: + default: vni-pool + description: Reference to a VNI pool to use for allocations if VNI is left blank. + type: string + type: object + status: + description: BridgeDomainStatus defines the observed state of BridgeDomain + properties: + evi: + description: EVI in use for this bridge domain. + type: integer + exportTarget: + description: Export route target for this bridge domain. + type: string + health: + description: Indicates the health score of the VNET. + type: integer + healthScoreReason: + description: Indicates the reason for the health score. + type: string + importTarget: + description: Import route target for this bridge domain. + type: string + lastChange: + description: The time when the state of the resource last changed. + type: string + nodes: + description: Nodes which have the BridgeDomain configured (min 1 sub-interface). + items: + type: string + type: array + numNodes: + description: Number of nodes which have the BridgeDomain configured (min 1 sub-interface). + type: integer + numSubInterfaces: + description: Number of sub-interfaces attached to the BridgeDomain. + format: int32 + type: integer + numSubInterfacesOperDown: + description: Number of oper-down sub-interfaces attached to the BridgeDomain. + format: int32 + type: integer + operationalState: + description: Operational state of the VNET. + type: string + tunnelIndex: + description: Vxlan tunnel index in use. + type: integer + vni: + description: VNI in use for this bridge domain. + type: integer + type: object + type: object +served: true +storage: true +subresources: + status: {} diff --git a/static/resources/25.8.2/bridgedomains.services.eda.nokia.com/v1alpha1.yaml b/static/resources/25.8.2/bridgedomains.services.eda.nokia.com/v1alpha1.yaml new file mode 100644 index 0000000..146c479 --- /dev/null +++ b/static/resources/25.8.2/bridgedomains.services.eda.nokia.com/v1alpha1.yaml @@ -0,0 +1,248 @@ +additionalPrinterColumns: + - jsonPath: .status.vni + name: VNI + type: string + - jsonPath: .status.evi + name: EVI + type: string + - jsonPath: .status.importTarget + name: Import Target + type: string + - jsonPath: .status.exportTarget + name: Export Target + type: string + - jsonPath: .status.numSubInterfacesOperDown + name: OperDown SubIf + type: string + - jsonPath: .status.numSubInterfaces + name: Total SubIf + type: string + - jsonPath: .status.operationalState + name: OperationalState + type: string + - jsonPath: .status.lastChange + name: LastChange + type: string +deprecated: true +deprecationWarning: This version is deprecated and will no longer be supported in the next version. +name: v1alpha1 +schema: + openAPIV3Schema: + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + description: The BridgeDomain enables the configuration and management of Layer 2 virtual networks. It includes settings for VNI, EVI, route targets for import and export, and tunnel index allocation. Additionally, the specification allows for advanced features such as MAC address table limits, aging, Proxy ARP and detection of MAC and IP duplication. + properties: + description: + description: The description of the BridgeDomain. + type: string + evi: + description: EVI to use for this BridgeDomain, can be optionally left blank to have it automatically allocated using the EVI Pool. + maximum: 65535 + minimum: 1 + type: integer + eviPool: + default: evi-pool + description: Reference to an EVI pool to use for allocations if EVI is left blank. + type: string + exportTarget: + description: Export route target in 'target:N:N' format, if not specified, the default value taken as "target:1:". + pattern: ^target.*$ + type: string + importTarget: + description: Import route target in 'target:N:N' format, if not specified, the default value taken as "target:1:". + pattern: ^target.*$ + type: string + l2proxyARPND: + description: Enables / Disabled Proxy ARP / Proxy ND. + properties: + dynamicLearning: + properties: + ageTime: + description: Aging timer value for the proxy entries in seconds. If not set, this indicates that the entries are never flushed. + maximum: 86400 + minimum: 60 + type: integer + enabled: + default: false + description: Enables or disables Dynamic Learning. + type: boolean + sendRefresh: + description: The interval determines the frequency at which the system generates three ARP Requests or Neighbor Solicitations with the intent to refresh the proxy entry. The refresh is sent within the age-time window. + maximum: 86400 + minimum: 120 + type: integer + type: object + ipDuplication: + properties: + enabled: + default: false + description: Enables or disables IP Duplication. + type: boolean + holdDownTime: + default: 9 + description: Time to wait in minutes from the moment an IP is declared duplicate to the time the IP is removed from the proxy ARP/ND table. + maximum: 60 + minimum: 2 + type: integer + monitoringWindow: + default: 3 + description: Monitoring window for detecting duplication on a given IP address in the proxy ARP/ND table. + maximum: 15 + minimum: 1 + type: integer + numMoves: + default: 5 + description: Number of moves in the proxy ARP/ND table that an IP is allowed within the monitoring-window. + maximum: 10 + minimum: 3 + type: integer + type: object + proxyARP: + default: false + description: Enables proxy ARP. + type: boolean + proxyND: + default: false + description: Enables proxy ND. + type: boolean + tableSize: + default: 250 + description: Maximum number of entries allowed in the proxy table of the bridge domain. + maximum: 8192 + minimum: 1 + type: integer + type: object + macAging: + default: 300 + description: Configurable aging time for dynamically learned mac addresses. + format: int32 + maximum: 86400 + minimum: 60 + type: integer + macDuplicationDetection: + description: Enable or disable MAC duplication detection and resolution mechanisms. + properties: + action: + default: StopLearning + description: Action to take on the subinterface upon detecting at least one mac addresses as duplicate on the subinterface. + enum: + - Blackhole + - OperDown + - StopLearning + type: string + enabled: + default: false + description: Enables or disables Mac Duplication Detection. + type: boolean + holdDownTime: + default: 9 + description: Time to wait in minutes from the moment a mac is declared duplicate to the mac is flushed from the bridge table. + maximum: 60 + minimum: 2 + type: integer + monitoringWindow: + default: 3 + description: Monitoring window in minutes for detecting duplication on a given mac address. + maximum: 15 + minimum: 1 + type: integer + numMoves: + default: 5 + description: Number of moves a mac is allowed within the monitoring-window, before it is declared duplicate. + minimum: 3 + type: integer + type: object + macLimit: + description: Sets the maximum number of MAC entries accepted in the bridge table. + format: int32 + type: integer + tunnelIndexPool: + default: tunnel-index-pool + description: Reference to a tunnel index pool to use for allocations. + type: string + type: + default: EVPNVXLAN + description: Select the type of BridgeDomain. Simple doesn't include any overlay control plane or dataplane properties (EVPN/VXLAN). EVPNVXLAN includes the properties needed to provision this BridgeDomain over an IP Fabric. + enum: + - SIMPLE + - EVPNVXLAN + type: string + vni: + description: VNI to use for this BridgeDomain, can be optionally left blank to have it allocated using the VNI Pool. + maximum: 16777215 + minimum: 1 + type: integer + vniPool: + default: vni-pool + description: Reference to a VNI pool to use for allocations if VNI is left blank. + type: string + type: object + status: + description: BridgeDomainStatus defines the observed state of BridgeDomain + properties: + evi: + description: EVI in use for this bridge domain. + type: integer + exportTarget: + description: Export route target for this bridge domain. + type: string + health: + description: Indicates the health score of the VNET. + type: integer + healthScoreReason: + description: Indicates the reason for the health score. + type: string + importTarget: + description: Import route target for this bridge domain. + type: string + lastChange: + description: The time when the state of the resource last changed. + type: string + nodes: + description: Nodes which have the BridgeDomain configured (min 1 sub-interface). + items: + type: string + type: array + numNodes: + description: Number of nodes which have the BridgeDomain configured (min 1 sub-interface). + type: integer + numSubInterfaces: + description: Number of sub-interfaces attached to the BridgeDomain. + format: int32 + type: integer + numSubInterfacesOperDown: + description: Number of oper-down sub-interfaces attached to the BridgeDomain. + format: int32 + type: integer + operationalState: + description: Operational state of the VNET. + type: string + tunnelIndex: + description: Vxlan tunnel index in use. + type: integer + vni: + description: VNI in use for this bridge domain. + type: integer + type: object + type: object +served: true +storage: false +subresources: + status: {} diff --git a/static/resources/25.8.2/bridgedomainstates.services.eda.nokia.com/v1.yaml b/static/resources/25.8.2/bridgedomainstates.services.eda.nokia.com/v1.yaml new file mode 100644 index 0000000..95f3755 --- /dev/null +++ b/static/resources/25.8.2/bridgedomainstates.services.eda.nokia.com/v1.yaml @@ -0,0 +1,55 @@ +name: v1 +schema: + openAPIV3Schema: + description: BridgeDomainState is the Schema for the bridgedomainstates API + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + description: BridgeDomainStateSpec defines the desired state of BridgeDomainState + properties: + evi: + description: EVI in use for this BridgeDomain + maximum: 65535 + minimum: 1 + type: integer + exportTarget: + description: Export route target for this BridgeDomain, in the format 'target:N:N' + pattern: ^target.*$ + type: string + importTarget: + description: Import route target for this BridgeDomain, in the format 'target:N:N' + pattern: ^target.*$ + type: string + tunnelIndex: + description: Vxlan tunnel index in use + type: integer + vni: + description: VNI in use for this BridgeDomain + maximum: 16777215 + minimum: 1 + type: integer + type: object + status: + description: BridgeDomainStateStatus defines the observed state of BridgeDomainState + type: object + type: object +served: true +storage: true +subresources: + status: {} diff --git a/static/resources/25.8.2/bridgedomainstates.services.eda.nokia.com/v1alpha1.yaml b/static/resources/25.8.2/bridgedomainstates.services.eda.nokia.com/v1alpha1.yaml new file mode 100644 index 0000000..866447f --- /dev/null +++ b/static/resources/25.8.2/bridgedomainstates.services.eda.nokia.com/v1alpha1.yaml @@ -0,0 +1,57 @@ +deprecated: true +deprecationWarning: This version is deprecated and will no longer be supported in the next version. +name: v1alpha1 +schema: + openAPIV3Schema: + description: BridgeDomainState is the Schema for the bridgedomainstates API + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + description: BridgeDomainStateSpec defines the desired state of BridgeDomainState + properties: + evi: + description: EVI in use for this BridgeDomain + maximum: 65535 + minimum: 1 + type: integer + exportTarget: + description: Export route target for this BridgeDomain, in the format 'target:N:N' + pattern: ^target.*$ + type: string + importTarget: + description: Import route target for this BridgeDomain, in the format 'target:N:N' + pattern: ^target.*$ + type: string + tunnelIndex: + description: Vxlan tunnel index in use + type: integer + vni: + description: VNI in use for this BridgeDomain + maximum: 16777215 + minimum: 1 + type: integer + type: object + status: + description: BridgeDomainStateStatus defines the observed state of BridgeDomainState + type: object + type: object +served: true +storage: false +subresources: + status: {} diff --git a/static/resources/25.8.2/bridgeinterfaces.services.eda.nokia.com/v1.yaml b/static/resources/25.8.2/bridgeinterfaces.services.eda.nokia.com/v1.yaml new file mode 100644 index 0000000..74b0c42 --- /dev/null +++ b/static/resources/25.8.2/bridgeinterfaces.services.eda.nokia.com/v1.yaml @@ -0,0 +1,198 @@ +additionalPrinterColumns: + - jsonPath: .status.operationalState + name: OperationalState + type: string + - jsonPath: .status.lastChange + name: LastChange + type: string +name: v1 +schema: + openAPIV3Schema: + description: BridgeInterface is the Schema for the bridgeinterfaces API + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + description: The BridgeInterface enables the attachment of network interfaces to a Bridge Domain. It includes settings for VLAN ID allocation, interface attachment, and actions on ingress and egress traffic. The specification supports integration with other network resources, such as Bridge Domains and Interfaces, and provides advanced features like MAC Duplication Detection with configurable actions. + properties: + bridgeDomain: + description: Reference to a BridgeDomain in which to attach the BridgeInterface. + type: string + description: + description: The description of the BridgeInterface. + type: string + egress: + description: Manages actions on traffic at Egress. + properties: + filters: + description: List of Filter references to use at egress. + items: + type: string + type: array + qosPolicy: + description: List of QoS Egress policy references to use at egress. + items: + type: string + type: array + type: object + ingress: + description: Manages actions on traffic at Ingress. + properties: + filters: + description: List of Filter references to use at ingress. + items: + type: string + type: array + qosPolicy: + description: List of QoS Ingress policy references to use at ingress. + items: + type: string + type: array + type: object + interface: + description: Reference to an Interface resource to attach this BridgeInterface. + type: string + l2MTU: + description: L2 MTU specifies the maximum sized Ethernet frame that can be transmitted on the subinterface. If a frame exceeds this size it is discarded. If the l2-mtu of the subinterface exceeds the port-mtu of the associated interface, the subinterface will remain operationally down. + maximum: 9500 + minimum: 1450 + type: integer + macDuplicationDetectionAction: + description: Override for Mac Duplication Detection action if enabled in the associated BridgeDomain. + enum: + - Blackhole + - OperDown + - StopLearning + - UseBridgeDomainAction + type: string + splitHorizonGroup: + description: Split Horizon Group to be used for this BridgeInterface. The subinterface within this BridgeInterface will be a member of this Split Horizon Group. + type: string + uplink: + description: The Uplink between your access breakout switch and your leaf switch. + properties: + egress: + description: Manages actions on traffic at Egress of the Local enpoint of the Uplink. + properties: + filters: + description: List of Filter references to use at egress. + items: + type: string + type: array + qosPolicy: + description: List of QoS Egress policy references to use at egress. + items: + type: string + type: array + type: object + ingress: + description: Manages actions on traffic at Ingress of the Local enpoint of the Uplink. + properties: + filters: + description: List of Filter references to use at ingress. + items: + type: string + type: array + qosPolicy: + description: List of QoS Ingress policy references to use at ingress. + items: + type: string + type: array + type: object + uplinkSelector: + description: Selects TopoLinks which connect a leaf switch to a breakout switch. This is the uplink between your access breakout switch and your leaf switch. There can only be a single TopoLink between the access breakout switch and the leaf switch, if more than one TopoLink is present between two devices the transaction will fail. + items: + type: string + type: array + uplinkVLANID: + default: pool + description: The VLAN ID to be utilized to isolate traffic from the VLAN on the access breakout switch to the leaf switch on the selected uplink TopoLink. + type: string + uplinkVLANPool: + description: A VLAN from this pool will be utilized to isolate traffic from the VLAN on the access breakout switch to the leaf switch on the selected uplink TopoLink. + type: string + type: object + vlanID: + description: Single value between 1-4094 support, ranges supported in the format x-y,x-y, or the special keyword null, any, untagged or pool for auto allocation. + type: string + required: + - bridgeDomain + - interface + - vlanID + type: object + status: + properties: + health: + description: Indicates the health score of the BridgeInterface. + type: integer + healthScoreReason: + description: Indicates the reason for the health score. + type: string + lastChange: + description: The time when the state of the resource last changed. + type: string + operationalState: + description: Operational state of the BridgeInterface. + type: string + subInterfaces: + description: Sub-interfaces status within the BridgeInterface. + items: + properties: + enabled: + description: The administrative status of the SubInterface. + type: boolean + interface: + description: Normalized interface name. + type: string + interfaceResource: + description: Eda interface resource. + type: string + lastChange: + description: Indicates when this SubInterface last changed state. + type: string + node: + description: Reference to Node object. + type: string + nodeInterface: + description: Node specific interface name. + type: string + operatingSystem: + description: Operating System of the Node. + type: string + operationalState: + description: Indicates the current operational state of the SubInterface. + type: string + subInterfaceIndex: + description: Index allocated to the subinterface on the associated interface for the given VLAN. + type: integer + vlanID: + description: vlan assigned to this subinterface. + type: string + required: + - interface + - interfaceResource + - node + - nodeInterface + type: object + type: array + type: object + type: object +served: true +storage: true +subresources: + status: {} diff --git a/static/resources/25.8.2/bridgeinterfaces.services.eda.nokia.com/v1alpha1.yaml b/static/resources/25.8.2/bridgeinterfaces.services.eda.nokia.com/v1alpha1.yaml new file mode 100644 index 0000000..b2365df --- /dev/null +++ b/static/resources/25.8.2/bridgeinterfaces.services.eda.nokia.com/v1alpha1.yaml @@ -0,0 +1,200 @@ +additionalPrinterColumns: + - jsonPath: .status.operationalState + name: OperationalState + type: string + - jsonPath: .status.lastChange + name: LastChange + type: string +deprecated: true +deprecationWarning: This version is deprecated and will no longer be supported in the next version. +name: v1alpha1 +schema: + openAPIV3Schema: + description: BridgeInterface is the Schema for the bridgeinterfaces API + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + description: The BridgeInterface enables the attachment of network interfaces to a Bridge Domain. It includes settings for VLAN ID allocation, interface attachment, and actions on ingress and egress traffic. The specification supports integration with other network resources, such as Bridge Domains and Interfaces, and provides advanced features like MAC Duplication Detection with configurable actions. + properties: + bridgeDomain: + description: Reference to a BridgeDomain in which to attach the BridgeInterface. + type: string + description: + description: The description of the BridgeInterface. + type: string + egress: + description: Manages actions on traffic at Egress. + properties: + filters: + description: List of Filter references to use at egress. + items: + type: string + type: array + qosPolicy: + description: List of QoS Egress policy references to use at egress. + items: + type: string + type: array + type: object + ingress: + description: Manages actions on traffic at Ingress. + properties: + filters: + description: List of Filter references to use at ingress. + items: + type: string + type: array + qosPolicy: + description: List of QoS Ingress policy references to use at ingress. + items: + type: string + type: array + type: object + interface: + description: Reference to an Interface resource to attach this BridgeInterface. + type: string + l2MTU: + description: L2 MTU specifies the maximum sized Ethernet frame that can be transmitted on the subinterface. If a frame exceeds this size it is discarded. If the l2-mtu of the subinterface exceeds the port-mtu of the associated interface, the subinterface will remain operationally down. + maximum: 9500 + minimum: 1450 + type: integer + macDuplicationDetectionAction: + description: Override for Mac Duplication Detection action if enabled in the associated BridgeDomain. + enum: + - Blackhole + - OperDown + - StopLearning + - UseBridgeDomainAction + type: string + splitHorizonGroup: + description: Split Horizon Group to be used for this BridgeInterface. The subinterface within this BridgeInterface will be a member of this Split Horizon Group. + type: string + uplink: + description: The Uplink between your access breakout switch and your leaf switch. + properties: + egress: + description: Manages actions on traffic at Egress of the Local enpoint of the Uplink. + properties: + filters: + description: List of Filter references to use at egress. + items: + type: string + type: array + qosPolicy: + description: List of QoS Egress policy references to use at egress. + items: + type: string + type: array + type: object + ingress: + description: Manages actions on traffic at Ingress of the Local enpoint of the Uplink. + properties: + filters: + description: List of Filter references to use at ingress. + items: + type: string + type: array + qosPolicy: + description: List of QoS Ingress policy references to use at ingress. + items: + type: string + type: array + type: object + uplinkSelector: + description: Selects TopoLinks which connect a leaf switch to a breakout switch. This is the uplink between your access breakout switch and your leaf switch. There can only be a single TopoLink between the access breakout switch and the leaf switch, if more than one TopoLink is present between two devices the transaction will fail. + items: + type: string + type: array + uplinkVLANID: + default: pool + description: The VLAN ID to be utilized to isolate traffic from the VLAN on the access breakout switch to the leaf switch on the selected uplink TopoLink. + type: string + uplinkVLANPool: + description: A VLAN from this pool will be utilized to isolate traffic from the VLAN on the access breakout switch to the leaf switch on the selected uplink TopoLink. + type: string + type: object + vlanID: + description: Single value between 1-4094 support, ranges supported in the format x-y,x-y, or the special keyword null, any, untagged or pool for auto allocation. + type: string + required: + - bridgeDomain + - interface + - vlanID + type: object + status: + properties: + health: + description: Indicates the health score of the BridgeInterface. + type: integer + healthScoreReason: + description: Indicates the reason for the health score. + type: string + lastChange: + description: The time when the state of the resource last changed. + type: string + operationalState: + description: Operational state of the BridgeInterface. + type: string + subInterfaces: + description: Sub-interfaces status within the BridgeInterface. + items: + properties: + enabled: + description: The administrative status of the SubInterface. + type: boolean + interface: + description: Normalized interface name. + type: string + interfaceResource: + description: Eda interface resource. + type: string + lastChange: + description: Indicates when this SubInterface last changed state. + type: string + node: + description: Reference to Node object. + type: string + nodeInterface: + description: Node specific interface name. + type: string + operatingSystem: + description: Operating System of the Node. + type: string + operationalState: + description: Indicates the current operational state of the SubInterface. + type: string + subInterfaceIndex: + description: Index allocated to the subinterface on the associated interface for the given VLAN. + type: integer + vlanID: + description: vlan assigned to this subinterface. + type: string + required: + - interface + - interfaceResource + - node + - nodeInterface + type: object + type: array + type: object + type: object +served: true +storage: false +subresources: + status: {} diff --git a/static/resources/25.8.2/bridgeinterfacestates.services.eda.nokia.com/v1.yaml b/static/resources/25.8.2/bridgeinterfacestates.services.eda.nokia.com/v1.yaml new file mode 100644 index 0000000..7d5f764 --- /dev/null +++ b/static/resources/25.8.2/bridgeinterfacestates.services.eda.nokia.com/v1.yaml @@ -0,0 +1,73 @@ +name: v1 +schema: + openAPIV3Schema: + description: BridgeInterfaceState is the Schema for the bridgeinterfacestates API + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + description: BridgeInterfaceStateSpec defines the desired state of BridgeInterfaceState + properties: + bridgeDomain: + description: Node BridgeDomain name + type: string + subInterfaces: + items: + properties: + interface: + description: Normalized interface name + type: string + interfaceResource: + description: Eda interface resource + type: string + node: + description: Reference to Node object + type: string + nodeInterface: + description: Node specific interface name + type: string + nodeSubInterface: + description: Node specific subinterface name + type: string + operatingSystem: + description: Operating System of the Node + type: string + subInterfaceIndex: + description: Index allocated to the subinterface on the associated interface for the given VLAN + type: integer + vlanID: + description: vlan assigned to this subinterface + type: string + required: + - interface + - interfaceResource + - node + - nodeInterface + type: object + type: array + required: + - bridgeDomain + - subInterfaces + type: object + status: + type: object + type: object +served: true +storage: true +subresources: + status: {} diff --git a/static/resources/25.8.2/bridgeinterfacestates.services.eda.nokia.com/v1alpha1.yaml b/static/resources/25.8.2/bridgeinterfacestates.services.eda.nokia.com/v1alpha1.yaml new file mode 100644 index 0000000..62d08af --- /dev/null +++ b/static/resources/25.8.2/bridgeinterfacestates.services.eda.nokia.com/v1alpha1.yaml @@ -0,0 +1,75 @@ +deprecated: true +deprecationWarning: This version is deprecated and will no longer be supported in the next version. +name: v1alpha1 +schema: + openAPIV3Schema: + description: BridgeInterfaceState is the Schema for the bridgeinterfacestates API + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + description: BridgeInterfaceStateSpec defines the desired state of BridgeInterfaceState + properties: + bridgeDomain: + description: Node BridgeDomain name + type: string + subInterfaces: + items: + properties: + interface: + description: Normalized interface name + type: string + interfaceResource: + description: Eda interface resource + type: string + node: + description: Reference to Node object + type: string + nodeInterface: + description: Node specific interface name + type: string + nodeSubInterface: + description: Node specific subinterface name + type: string + operatingSystem: + description: Operating System of the Node + type: string + subInterfaceIndex: + description: Index allocated to the subinterface on the associated interface for the given VLAN + type: integer + vlanID: + description: vlan assigned to this subinterface + type: string + required: + - interface + - interfaceResource + - node + - nodeInterface + type: object + type: array + required: + - bridgeDomain + - subInterfaces + type: object + status: + type: object + type: object +served: true +storage: false +subresources: + status: {} diff --git a/static/resources/25.8.2/catalogs.appstore.eda.nokia.com/v1.yaml b/static/resources/25.8.2/catalogs.appstore.eda.nokia.com/v1.yaml new file mode 100644 index 0000000..26f5e62 --- /dev/null +++ b/static/resources/25.8.2/catalogs.appstore.eda.nokia.com/v1.yaml @@ -0,0 +1,91 @@ +additionalPrinterColumns: + - jsonPath: .spec.title + name: Title + type: string + - jsonPath: .spec.remoteType + name: Type + type: string + - jsonPath: .status.operational + name: Operational + type: string +name: v1 +schema: + openAPIV3Schema: + description: Catalog is the Schema for the catalogs API + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + description: CatalogSpec defines the desired state of a Catalog. + properties: + authSecretRef: + description: |- + AuthSecretRef is the authentication secret reference, used for authentication. + Must be in the same namespace as the catalog. + type: string + description: + description: Description is an optional short description of the catalog. + maxLength: 70 + type: string + refreshInterval: + default: 180 + description: |- + RefreshInterval tells the controller how often it should check the remote catalog for new updates, in seconds. + Default is 180 seconds. Minimum is 30 seconds for production environments; 10 seconds for test environments. + format: int32 + type: integer + remoteType: + default: git + description: RemoteType type of the catalog, only 'git' is supported at the moment. + enum: + - git + type: string + remoteURL: + description: |- + RemoteURL is the HTTP(S) remote URL of the catalog. Supported URI schemes: 'https://' and 'http://'. + Default is HTTPS if no scheme is given. + type: string + skipTLSVerify: + default: false + description: SkipTLSVerify skips the validity check for the server's certificate. This will make HTTPS connections insecure. + type: boolean + title: + description: Title is an UI-friendly name for the catalog. + maxLength: 50 + type: string + type: object + status: + description: CatalogStatus defines the observed state of a Catalog. + properties: + error: + description: Error denotes the last error that was encountered by the controller. + type: string + lastRefreshTime: + description: LastRefreshTime is the last attempt to refresh the catalog cache by the controller. + format: date-time + type: string + operational: + default: false + description: Operational reports whether the catalog remote is operational. + type: boolean + type: object + type: object +served: true +storage: true +subresources: + status: {} diff --git a/static/resources/25.8.2/certificatechecks.certcheck.eda.nokia.com/v1alpha1.yaml b/static/resources/25.8.2/certificatechecks.certcheck.eda.nokia.com/v1alpha1.yaml new file mode 100644 index 0000000..547d026 --- /dev/null +++ b/static/resources/25.8.2/certificatechecks.certcheck.eda.nokia.com/v1alpha1.yaml @@ -0,0 +1,256 @@ +name: v1alpha1 +schema: + openAPIV3Schema: + description: CertificateCheck is the Schema for the certificatechecks API + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + description: CertificateCheckSpec defines the desired state of CertificateCheck + properties: + address: + description: list of addresses to check + items: + type: string + type: array + interval: + default: 5m + description: Interval specifies the check interval + type: string + podSelector: + description: PodSelector defines a selector for the target Pods to check. + properties: + matchExpressions: + description: matchExpressions is a list of label selector requirements. The requirements are ANDed. + items: + description: |- + A label selector requirement is a selector that contains values, a key, and an operator that + relates the key and values. + properties: + key: + description: key is the label key that the selector applies to. + type: string + operator: + description: |- + operator represents a key's relationship to a set of values. + Valid operators are In, NotIn, Exists and DoesNotExist. + type: string + values: + description: |- + values is an array of string values. If the operator is In or NotIn, + the values array must be non-empty. If the operator is Exists or DoesNotExist, + the values array must be empty. This array is replaced during a strategic + merge patch. + items: + type: string + type: array + x-kubernetes-list-type: atomic + required: + - key + - operator + type: object + type: array + x-kubernetes-list-type: atomic + matchLabels: + additionalProperties: + type: string + description: |- + matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels + map is equivalent to an element of matchExpressions, whose key field is "key", the + operator is "In", and the values array contains only "value". The requirements are ANDed. + type: object + type: object + x-kubernetes-map-type: atomic + service: + description: Service defines the name of the Kubernetes Service to check. + items: + type: string + type: array + serviceSelector: + description: ServiceSelector defines a label selector for dynamically selecting the service + properties: + matchExpressions: + description: matchExpressions is a list of label selector requirements. The requirements are ANDed. + items: + description: |- + A label selector requirement is a selector that contains values, a key, and an operator that + relates the key and values. + properties: + key: + description: key is the label key that the selector applies to. + type: string + operator: + description: |- + operator represents a key's relationship to a set of values. + Valid operators are In, NotIn, Exists and DoesNotExist. + type: string + values: + description: |- + values is an array of string values. If the operator is In or NotIn, + the values array must be non-empty. If the operator is Exists or DoesNotExist, + the values array must be empty. This array is replaced during a strategic + merge patch. + items: + type: string + type: array + x-kubernetes-list-type: atomic + required: + - key + - operator + type: object + type: array + x-kubernetes-list-type: atomic + matchLabels: + additionalProperties: + type: string + description: |- + matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels + map is equivalent to an element of matchExpressions, whose key field is "key", the + operator is "In", and the values array contains only "value". The requirements are ANDed. + type: object + type: object + x-kubernetes-map-type: atomic + targetNode: + description: list of Targetnodes to check + items: + type: string + type: array + targetNodeSelector: + description: TargetNodeSelector defines a label selector for dynamically selecting targetNodes + properties: + matchExpressions: + description: matchExpressions is a list of label selector requirements. The requirements are ANDed. + items: + description: |- + A label selector requirement is a selector that contains values, a key, and an operator that + relates the key and values. + properties: + key: + description: key is the label key that the selector applies to. + type: string + operator: + description: |- + operator represents a key's relationship to a set of values. + Valid operators are In, NotIn, Exists and DoesNotExist. + type: string + values: + description: |- + values is an array of string values. If the operator is In or NotIn, + the values array must be non-empty. If the operator is Exists or DoesNotExist, + the values array must be empty. This array is replaced during a strategic + merge patch. + items: + type: string + type: array + x-kubernetes-list-type: atomic + required: + - key + - operator + type: object + type: array + x-kubernetes-list-type: atomic + matchLabels: + additionalProperties: + type: string + description: |- + matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels + map is equivalent to an element of matchExpressions, whose key field is "key", the + operator is "In", and the values array contains only "value". The requirements are ANDed. + type: object + type: object + x-kubernetes-map-type: atomic + thresholds: + description: Thresholds defines the certificate validity thresholds for raising alarms + properties: + critical: + description: Critical threshold in percentage + maximum: 100 + minimum: 0 + type: integer + major: + description: Major threshold in percentage + maximum: 100 + minimum: 0 + type: integer + minor: + description: Minor threshold in percentage + maximum: 100 + minimum: 0 + type: integer + warning: + description: Warning threshold in percentage + maximum: 100 + minimum: 0 + type: integer + type: object + timeout: + default: 5s + description: Timeout specifies the tls timeout + type: string + trustBundle: + description: |- + TrustBundle is a ConfigMap with a `trust-bundle.pem` key containing + certificate authorities to be used to verify the returned certificates. + type: string + type: object + status: + description: CertificateCheckStatus defines the observed state of CertificateCheck + properties: + endpointStatuses: + description: EndpointStatuses contains the certificate statuses for each target endpoint + items: + description: EndpointStatus defines the status of the certificate for a specific endpoint + properties: + address: + description: Address is the address of the endpoint (service or pod) + type: string + error: + description: Error provides any error message that occurred during the check + type: string + expiryDate: + description: ExpiryDate is the expiration date of the certificate + format: date-time + type: string + issueDate: + description: IssueDate is the date when certificate was issued + format: date-time + type: string + podName: + type: string + serviceName: + type: string + targetNodeName: + type: string + valid: + description: Valid indicates whether the certificate is valid or not + type: boolean + required: + - address + - valid + type: object + type: array + lastChecked: + description: LastChecked indicates the last time the certificate was checked + format: date-time + type: string + type: object + type: object +served: true +storage: true +subresources: + status: {} diff --git a/static/resources/25.8.2/chassis.components.eda.nokia.com/v1.yaml b/static/resources/25.8.2/chassis.components.eda.nokia.com/v1.yaml new file mode 100644 index 0000000..834cfd1 --- /dev/null +++ b/static/resources/25.8.2/chassis.components.eda.nokia.com/v1.yaml @@ -0,0 +1,97 @@ +name: v1 +schema: + openAPIV3Schema: + description: Chassis is the Schema for the chassis API + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + description: ChassisSpec defines the desired state of Chassis + type: object + status: + description: ChassisStatus defines the observed state of Chassis + properties: + chassisMacAddress: + description: MAC Address of the Chassis + type: string + children: + description: References to children components + items: + properties: + name: + description: Reference to a child component + type: string + type: + description: Type of the child component + enum: + - Fan + - FanTray + - PowerSupply + - PowerModule + - PowerShelf + - InterfaceModule + - ControlModule + - FabricModule + - Chassis + - Transceiver + type: string + type: object + type: array + commonLanguageEquipmentIdentifier: + description: The CLEI code of this component + type: string + lastBooted: + description: The date and time this component last booted + type: string + lastChange: + description: The date and time this component last changed operational state + type: string + manufacturedDate: + description: The date this component was manufactured + type: string + operationalState: + description: Indicates the current operational state of this component. + enum: + - Up + - Down + - Rebooting + - Unknown + - Starting + - Empty + type: string + partNumber: + description: The discovered part number of this component + type: string + removable: + description: Indicates if this component is removable + type: boolean + serialNumber: + description: The discovered serial number of this component + type: string + target: + description: Target this component resides on. + type: string + type: + description: Component type, as provided by the target + type: string + type: object + type: object +served: true +storage: true +subresources: + status: {} diff --git a/static/resources/25.8.2/checkdefaultbgppeerss.protocols.eda.nokia.com/v1.yaml b/static/resources/25.8.2/checkdefaultbgppeerss.protocols.eda.nokia.com/v1.yaml new file mode 100644 index 0000000..bfbec2a --- /dev/null +++ b/static/resources/25.8.2/checkdefaultbgppeerss.protocols.eda.nokia.com/v1.yaml @@ -0,0 +1,61 @@ +additionalPrinterColumns: + - jsonPath: .status.id + name: ID + type: integer + - jsonPath: .status.result + name: Result + type: string + - jsonPath: .metadata.creationTimestamp + name: Age + type: date +name: v1 +schema: + openAPIV3Schema: + description: CheckDefaultBgpPeers is the Schema for the checkdefaultbgppeerss API + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + description: CheckDefaultBgpPeersSpec defines the desired state of CheckDefaultBgpPeers + properties: + nodeSelector: + items: + type: string + type: array + nodes: + items: + type: string + type: array + waitFor: + type: integer + type: object + status: + description: CheckDefaultBgpPeersStatus defines the observed state of CheckDefaultBgpPeers + properties: + id: + description: Id + type: integer + result: + description: Aggregate result of the Flow + type: string + type: object + type: object +served: true +storage: true +subresources: + status: {} diff --git a/static/resources/25.8.2/checkdefaultbgppeerss.protocols.eda.nokia.com/v1alpha1.yaml b/static/resources/25.8.2/checkdefaultbgppeerss.protocols.eda.nokia.com/v1alpha1.yaml new file mode 100644 index 0000000..e071538 --- /dev/null +++ b/static/resources/25.8.2/checkdefaultbgppeerss.protocols.eda.nokia.com/v1alpha1.yaml @@ -0,0 +1,63 @@ +additionalPrinterColumns: + - jsonPath: .status.id + name: ID + type: integer + - jsonPath: .status.result + name: Result + type: string + - jsonPath: .metadata.creationTimestamp + name: Age + type: date +deprecated: true +deprecationWarning: This version is deprecated and will no longer be supported in the next version. +name: v1alpha1 +schema: + openAPIV3Schema: + description: CheckDefaultBgpPeers is the Schema for the checkdefaultbgppeerss API + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + description: CheckDefaultBgpPeersSpec defines the desired state of CheckDefaultBgpPeers + properties: + nodeSelector: + items: + type: string + type: array + nodes: + items: + type: string + type: array + waitFor: + type: integer + type: object + status: + description: CheckDefaultBgpPeersStatus defines the observed state of CheckDefaultBgpPeers + properties: + id: + description: Id + type: integer + result: + description: Aggregate result of the Flow + type: string + type: object + type: object +served: true +storage: false +subresources: + status: {} diff --git a/static/resources/25.8.2/checkinterfacess.interfaces.eda.nokia.com/v1alpha1.yaml b/static/resources/25.8.2/checkinterfacess.interfaces.eda.nokia.com/v1alpha1.yaml new file mode 100644 index 0000000..72e62cf --- /dev/null +++ b/static/resources/25.8.2/checkinterfacess.interfaces.eda.nokia.com/v1alpha1.yaml @@ -0,0 +1,64 @@ +additionalPrinterColumns: + - jsonPath: .status.id + name: ID + type: integer + - jsonPath: .status.result + name: Result + type: string + - jsonPath: .metadata.creationTimestamp + name: Age + type: date +name: v1alpha1 +schema: + openAPIV3Schema: + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + description: CheckInterfacesSpec defines the desired state of CheckInterfaces + properties: + interfaceSelector: + items: + type: string + type: array + nodeSelector: + items: + type: string + type: array + nodes: + items: + type: string + type: array + waitFor: + type: integer + type: object + status: + description: CheckInterfacesStatus defines the observed state of CheckInterfaces + properties: + id: + description: Id + type: integer + result: + description: Aggregate result of the Flow + type: string + type: object + type: object +served: true +storage: true +subresources: + status: {} diff --git a/static/resources/25.8.2/cliplugins.environment.eda.nokia.com/v1alpha1.yaml b/static/resources/25.8.2/cliplugins.environment.eda.nokia.com/v1alpha1.yaml new file mode 100644 index 0000000..cef5453 --- /dev/null +++ b/static/resources/25.8.2/cliplugins.environment.eda.nokia.com/v1alpha1.yaml @@ -0,0 +1,59 @@ +additionalPrinterColumns: + - jsonPath: .status.id + name: ID + type: integer + - jsonPath: .status.result + name: Result + type: string + - jsonPath: .metadata.creationTimestamp + name: Age + type: date +name: v1alpha1 +schema: + openAPIV3Schema: + description: CliPlugin is the Schema for the cliplugins API + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + description: This workflow is used to push a CLI plugin to a node. + properties: + content: + description: Content of the plugin to push. + type: string + fileName: + description: |- + Name of the plugin to push. For SR Linux this should include the .py extension, without leading slashes. + e.g. "myplugin.py". + type: string + type: object + status: + description: CliPluginStatus defines the observed state of CliPlugin + properties: + id: + description: Id + type: integer + result: + description: Aggregate result of the Flow + type: string + type: object + type: object +served: true +storage: true +subresources: + status: {} diff --git a/static/resources/25.8.2/clusterdiscoveries.components.eda.nokia.com/v1.yaml b/static/resources/25.8.2/clusterdiscoveries.components.eda.nokia.com/v1.yaml new file mode 100644 index 0000000..80a2304 --- /dev/null +++ b/static/resources/25.8.2/clusterdiscoveries.components.eda.nokia.com/v1.yaml @@ -0,0 +1,49 @@ +name: v1 +schema: + openAPIV3Schema: + description: ClusterDiscovery is the Schema for the clusterdiscoveries API + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + description: ClusterDiscoverySpec defines the desired state of ClusterDiscovery + type: object + status: + description: ClusterDiscoveryStatus defines the observed state of ClusterDiscovery + properties: + targets: + description: List of targets component discovery is running for + items: + properties: + name: + description: Name of the target. + type: string + namespace: + description: Namespace of the target. + type: string + required: + - name + - namespace + type: object + type: array + type: object + type: object +served: true +storage: true +subresources: + status: {} diff --git a/static/resources/25.8.2/clusterroles.core.eda.nokia.com/v1.yaml b/static/resources/25.8.2/clusterroles.core.eda.nokia.com/v1.yaml new file mode 100644 index 0000000..81545ff --- /dev/null +++ b/static/resources/25.8.2/clusterroles.core.eda.nokia.com/v1.yaml @@ -0,0 +1,130 @@ +name: v1 +schema: + openAPIV3Schema: + description: ClusterRole is the Schema for the roles API + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + description: |- + ClusterRole defines a set of permissions to access EDA resources. + ClusterRoles and users are bound via groups, selecting a set of users and a set of ClusterRoles to bind. + properties: + description: + description: A description for the role. + type: string + resourceRules: + description: Rules for access to resources. + items: + description: A role rule controlling access to a kubernetes resource. + properties: + apiGroups: + description: |- + The API groups for the resources controlled by the rule. + An API group consists of an apiGroup and a version, e.g. "apigroup/version". + The API group can be a wildcard ("*"), in which case it will match any API group. + items: + minLength: 1 + type: string + minItems: 1 + type: array + permissions: + description: Permissions for resources specified by the rule. + enum: + - none + - read + - readWrite + type: string + resources: + description: |- + Names for the resources controlled by the rule. + It can be a wildcard ("*"), in which case it will match any resource + in the matching API groups. + items: + minLength: 1 + type: string + minItems: 1 + type: array + required: + - apiGroups + - permissions + - resources + type: object + type: array + tableRules: + description: Rules for access to EDB tables, including via EQL. + items: + description: |- + A role rule controlling access to a EDB table. Note that + there is never write access to EDB. + properties: + path: + description: |- + EDB path to which this rule applies. It can end in ".*" + in which case the final portion of the table path can be anything, if the + prefix matches. It can end in ".**" in which case the table path can be + anything if the prefix matches. + minLength: 1 + pattern: ^\..* + type: string + permissions: + description: Permissions for the given EDB path. + enum: + - none + - read + type: string + required: + - path + - permissions + type: object + type: array + urlRules: + description: Rules for access to APIServer proxied routes. + items: + description: A role rule controlling access to an API server proxy. + properties: + path: + description: |- + The API server URL path to which this rule applies. It can end in "/*" + in which case the final portion of the URL path can be anything, if the + prefix matches. It can end in "/**" in which case the URL path can be + anything if the prefix matches. + minLength: 1 + pattern: ^/.* + type: string + permissions: + description: The permissions for the API server URL for the rule. + enum: + - none + - read + - readWrite + type: string + required: + - path + - permissions + type: object + type: array + type: object + status: + description: RoleStatus defines the observed state of Role + type: object + type: object +served: true +storage: true +subresources: + status: {} diff --git a/static/resources/25.8.2/communitysetdeployments.routingpolicies.eda.nokia.com/v1alpha1.yaml b/static/resources/25.8.2/communitysetdeployments.routingpolicies.eda.nokia.com/v1alpha1.yaml new file mode 100644 index 0000000..9052874 --- /dev/null +++ b/static/resources/25.8.2/communitysetdeployments.routingpolicies.eda.nokia.com/v1alpha1.yaml @@ -0,0 +1,42 @@ +name: v1alpha1 +schema: + openAPIV3Schema: + description: CommunitySetDeployment is the schema for the communitysetdeployments API + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + description: CommunitySetDeploymentSpec defines the desired state of CommunitySetDeployment + properties: + communitySet: + description: Specifies a CommunitySet to deploy to the specified Node + type: string + node: + description: Specifies a Node to deploy this policy on + type: string + required: + - node + type: object + status: + description: CommunitySetDeploymentStatus defines the observed state of CommunitySetDeployment + type: object + type: object +served: true +storage: true +subresources: + status: {} diff --git a/static/resources/25.8.2/communitysets.routingpolicies.eda.nokia.com/v1alpha1.yaml b/static/resources/25.8.2/communitysets.routingpolicies.eda.nokia.com/v1alpha1.yaml new file mode 100644 index 0000000..c937bc6 --- /dev/null +++ b/static/resources/25.8.2/communitysets.routingpolicies.eda.nokia.com/v1alpha1.yaml @@ -0,0 +1,49 @@ +name: v1alpha1 +schema: + openAPIV3Schema: + description: CommunitySet is the Schema for the communitysets API + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + description: CommunitySetSpec defines the desired state of CommunitySet + properties: + expressionMatch: + description: Options that determine the matching criteria that applies to the list of community members. + type: string + matchSetOptions: + description: The matching criteria that applies to the Members list. + enum: + - All + - Any + - Invert + type: string + members: + description: A standard BGP community value, regular expression or well-known name or else a large BGP community value or regular expression. + items: + type: string + type: array + type: object + status: + description: CommunitySetStatus defines the observed state of CommunitySet + type: object + type: object +served: true +storage: true +subresources: + status: {} diff --git a/static/resources/25.8.2/components.components.eda.nokia.com/v1.yaml b/static/resources/25.8.2/components.components.eda.nokia.com/v1.yaml new file mode 100644 index 0000000..58fd218 --- /dev/null +++ b/static/resources/25.8.2/components.components.eda.nokia.com/v1.yaml @@ -0,0 +1,110 @@ +additionalPrinterColumns: + - jsonPath: .status.enabled + name: Enabled + type: boolean + - jsonPath: .status.operationalState + name: Operational State + type: string + - jsonPath: .status.type + name: Type + type: string + - jsonPath: .status.lastChange + name: Last Change + type: date + - jsonPath: .status.serialNumber + name: Part Number + type: string + - jsonPath: .status.partNumber + name: Serial Number + type: string + - jsonPath: .metadata.creationTimestamp + name: Age + type: date +name: v1 +schema: + openAPIV3Schema: + description: Component is the Schema for the components API + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + description: ComponentSpec defines the desired state of Component + properties: + node: + description: |- + TopologyNode this Component resides on. + Indicates the operation in which to apply the configuration + type: string + slot: + description: Slot this Component resides in, unset for Components that do not have a slot or ID. + type: string + type: + description: Type of Component. + enum: + - Fan + - FanTray + - PowerSupply + - PowerModule + - PowerShelf + - InterfaceModule + - ControlModule + - FabricModule + - Chassis + - Transceiver + type: string + required: + - node + - type + type: object + status: + description: ComponentStatus defines the observed state of Component + properties: + enabled: + description: The administrative status of this Component. + type: boolean + lastChange: + description: The date and time this Component last changed operational state + type: string + manufacturedDate: + description: The date this Component was manufactured + type: string + operationalState: + description: Indicates the current operational state of this Component. + enum: + - Up + - Down + - Rebooting + - Unknown + - Starting + - Empty + type: string + partNumber: + description: The discovered part number of this Component + type: string + serialNumber: + description: The discovered serial number of this Component + type: string + type: + description: Component type, as provided by the node. + type: string + type: object + type: object +served: true +storage: true +subresources: + status: {} diff --git a/static/resources/25.8.2/components.components.eda.nokia.com/v1alpha1.yaml b/static/resources/25.8.2/components.components.eda.nokia.com/v1alpha1.yaml new file mode 100644 index 0000000..a845192 --- /dev/null +++ b/static/resources/25.8.2/components.components.eda.nokia.com/v1alpha1.yaml @@ -0,0 +1,107 @@ +additionalPrinterColumns: + - jsonPath: .status.enabled + name: Enabled + type: boolean + - jsonPath: .status.operationalState + name: Operational State + type: string + - jsonPath: .status.type + name: Type + type: string + - jsonPath: .status.lastChange + name: Last Change + type: date + - jsonPath: .status.serialNumber + name: Part Number + type: string + - jsonPath: .status.partNumber + name: Serial Number + type: string + - jsonPath: .metadata.creationTimestamp + name: Age + type: date +name: v1alpha1 +schema: + openAPIV3Schema: + description: Component is the Schema for the components API + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + description: ComponentSpec defines the desired state of Component + properties: + node: + description: |- + TopologyNode this Component resides on. + Indicates the operation in which to apply the configuration + type: string + slot: + description: Slot this Component resides in, unset for Components that do not have a slot or ID. + type: string + type: + description: Type of Component. + enum: + - FanTray + - PowerSupply + - LineCard + - Control + - Fabric + - Chassis + - Transceiver + type: string + required: + - node + - type + type: object + status: + description: ComponentStatus defines the observed state of Component + properties: + enabled: + description: The administrative status of this Component. + type: boolean + lastChange: + description: The date and time this Component last changed operational state + type: string + manufacturedDate: + description: The date this Component was manufactured + type: string + operationalState: + description: Indicates the current operational state of this Component. + enum: + - Up + - Down + - Rebooting + - Unknown + - Starting + - Empty + type: string + partNumber: + description: The discovered part number of this Component + type: string + serialNumber: + description: The discovered serial number of this Component + type: string + type: + description: Component type, as provided by the node. + type: string + type: object + type: object +served: true +storage: false +subresources: + status: {} diff --git a/static/resources/25.8.2/configlets.config.eda.nokia.com/v1alpha1.yaml b/static/resources/25.8.2/configlets.config.eda.nokia.com/v1alpha1.yaml new file mode 100644 index 0000000..b4525d1 --- /dev/null +++ b/static/resources/25.8.2/configlets.config.eda.nokia.com/v1alpha1.yaml @@ -0,0 +1,95 @@ +name: v1alpha1 +schema: + openAPIV3Schema: + description: Configlet is the Schema for the configlets API + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + description: |- + Configlet is a configuration snippet that can be applied to a set of targets. + The path on the target is provided in jspath notation, and the configuration is provided as a JSON string. + Configlets can be applied to a set of targets based on a label selector, a list of targets, or a combination of both. + properties: + configs: + description: Configurations to apply, being sets of paths, operations and JSON configurations. + items: + properties: + config: + description: JSON-formatted string representing the configuration to apply. + type: string + operation: + default: Create + description: Indicates the operation in which to apply the configuration. + enum: + - Create + - Update + - Delete + type: string + path: + description: Path to apply the configuration in jspath notation, including any keys if relevant, e.g. .system.information. + type: string + required: + - config + - operation + - path + type: object + type: array + endpointSelector: + description: Label selector to use to match targets to deploy Configlet to. + items: + type: string + type: array + endpoints: + description: Reference to targets to deploy Configlet to. + items: + type: string + type: array + operatingSystem: + description: Operating system to match against when selecting targets. + enum: + - srl + - sros + type: string + priority: + default: 0 + description: Priority of this Configlet, between -100 and 100. Higher priorities overwrite lower priorities in the event of conflicts. + format: int32 + maximum: 100 + minimum: -100 + type: integer + version: + description: Version to match against when selecting targets. + type: string + required: + - configs + type: object + status: + description: Deployment status of this Configlet. + properties: + endpoints: + description: List of targets this configlet has been applied to. + items: + type: string + type: array + type: object + type: object +served: true +storage: true +subresources: + status: {} diff --git a/static/resources/25.8.2/configletstates.config.eda.nokia.com/v1alpha1.yaml b/static/resources/25.8.2/configletstates.config.eda.nokia.com/v1alpha1.yaml new file mode 100644 index 0000000..da2ee7c --- /dev/null +++ b/static/resources/25.8.2/configletstates.config.eda.nokia.com/v1alpha1.yaml @@ -0,0 +1,39 @@ +name: v1alpha1 +schema: + openAPIV3Schema: + description: ConfigletState is the Schema for the configletstates API + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + description: ConfigletStateSpec defines the desired state of ConfigletState + properties: + endpoints: + description: List of endpoints this configlet has been applied to + items: + type: string + type: array + type: object + status: + description: ConfigletStateStatus defines the observed state of ConfigletState + type: object + type: object +served: true +storage: true +subresources: + status: {} diff --git a/static/resources/25.8.2/controlmodules.components.eda.nokia.com/v1.yaml b/static/resources/25.8.2/controlmodules.components.eda.nokia.com/v1.yaml new file mode 100644 index 0000000..565839a --- /dev/null +++ b/static/resources/25.8.2/controlmodules.components.eda.nokia.com/v1.yaml @@ -0,0 +1,122 @@ +name: v1 +schema: + openAPIV3Schema: + description: ControlModule is the Schema for the controlmodules API + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + description: ControlModuleSpec defines the desired state of ControlModule + type: object + status: + description: ControlModuleStatus defines the observed state of ControlModule + properties: + commonLanguageEquipmentIdentifier: + description: The CLEI code of this component + type: string + lastBooted: + description: The date and time this component last booted + type: string + lastChange: + description: The date and time this component last changed operational state + type: string + locatorEnabled: + description: Indicates if the locator LED for the component is active + type: boolean + manufacturedDate: + description: The date this component was manufactured + type: string + operationalState: + description: Indicates the current operational state of this component. + enum: + - Up + - Down + - Rebooting + - Unknown + - Starting + - Empty + type: string + parent: + description: Reference to a parent component + type: string + parentType: + description: Type of the parent component + enum: + - Fan + - FanTray + - PowerSupply + - PowerModule + - PowerShelf + - InterfaceModule + - ControlModule + - FabricModule + - Chassis + - Transceiver + type: string + partNumber: + description: The discovered part number of this component + type: string + removable: + description: Indicates if this component is removable + type: boolean + role: + description: Role of the control module + enum: + - Active + - Standby + type: string + serialNumber: + description: The discovered serial number of this component + type: string + slot: + description: Slot this component resides in, unset for components that do not have a slot or ID + type: string + softwareVersion: + description: Version string of the software running on this component + type: string + target: + description: Target this component resides on. + type: string + temperature: + description: Temperature information for this component + properties: + alarmState: + description: The temperature alarm state, as reported by the component + type: boolean + instant: + description: The current temperature of this component + type: integer + margin: + description: The margin temperature of this component + type: integer + maximum: + description: The maximum temperature of this component + type: integer + threshold: + description: The threshold temperature of this component + type: integer + type: object + type: + description: Component type, as provided by the target + type: string + type: object + type: object +served: true +storage: true +subresources: + status: {} diff --git a/static/resources/25.8.2/controlplanefilters.filters.eda.nokia.com/v1alpha1.yaml b/static/resources/25.8.2/controlplanefilters.filters.eda.nokia.com/v1alpha1.yaml new file mode 100644 index 0000000..49ca962 --- /dev/null +++ b/static/resources/25.8.2/controlplanefilters.filters.eda.nokia.com/v1alpha1.yaml @@ -0,0 +1,652 @@ +name: v1alpha1 +schema: + openAPIV3Schema: + description: ControlPlaneFilter is the Schema for the controlplanefilters API + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + description: ControlPlaneFilter allows for specifying a list of Nodes or Node selectors where the filter should be applied and managing filter entries in order. + properties: + entries: + description: Specifies the list of filter entries, in order. + items: + properties: + description: + description: Description of the FilterEntry. + type: string + ipEntry: + properties: + action: + description: An action to take, either 'Accept','Drop', or 'RateLimit'. + enum: + - Drop + - Accept + - RateLimit + type: string + destinationPortName: + description: Destination port to match by name. + enum: + - ACAP + - AFP-TCP + - ARNS + - ASF-RMCP + - ASHARE + - ATALK-RM + - AURP + - AUTH + - BFD + - BFD-ECHO + - BFTP + - BGMP + - BGP + - BOOTPC + - BOOTPS + - CCSO-NS + - CHARGEN + - CISCO-TDP + - CITADEL + - CLEARCASE + - COMMERCE + - COURIER + - DAYTIME + - DHCP-FAILOVER + - DHCPV6-CLIENT + - DHCPV6-SERVER + - DICOM + - DISCARD + - DNSIX + - DOMAIN + - DSP + - ECHO + - EPP + - ESRO + - EXEC + - FINGER + - FTP + - FTP-DATA + - FTPS + - FTPS-DATA + - GODI + - GOPHER + - GTP-C + - GTP-PRIME + - GTP-U + - HA-CLUSTER + - HOSTNAME + - HP-ALARM-MGR + - HTTP + - HTTP-ALT + - HTTP-MGMT + - HTTP-RPC + - HTTPS + - IEEE-MMS-SSL + - IMAP + - IMAP3 + - IMAPS + - IPP + - IPSEC + - IPX + - IRC + - IRIS-BEEP + - ISAKMP + - ISAKMP-NAT + - ISCSI + - ISO-TSAP + - KERBEROS + - KERBEROS-ADM + - KLOGIN + - KPASSWD + - KSHELL + - L2TP + - LDAP + - LDAPS + - LDP + - LMP + - LOGIN + - LPD + - LSP-PING + - MAC-SERVER-ADM + - MATIP-A + - MATIP-B + - MICRO-BFD + - MICROSOFT-DS + - MOBILE-IP + - MONITOR + - MPP + - MS-EXCHANGE + - MSDP + - MSP + - MSSQL-M + - MSSQL-S + - MULTIHOP-BFD + - NAS + - NCP + - NETBIOS-DATA + - NETBIOS-NS + - NETBIOS-SS + - NETNEWS + - NETRJS-1 + - NETRJS-2 + - NETRJS-3 + - NETRJS-4 + - NETWALL + - NEW-RWHO + - NFS + - NNTP + - NNTPS + - NTP + - ODMR + - OLSR + - OPENVPN + - PIM-AUTO-RP + - PKIX-TIMESTAMP + - POP2 + - POP3 + - POP3S + - PPTP + - PRINT-SRV + - PTP-EVENT + - PTP-GENERAL + - QMTP + - QOTD + - RADIUS + - RADIUS-ACCT + - REMOTE-MAIL + - REMOTEFS + - REMOTECMD + - RIP + - RJE + - RLP + - RLZDB + - RMC + - RMONITOR + - RPC2PORTMAP + - RSYNC + - RTELNET + - RTSP + - SGMP + - SILC + - SMUX + - SNA-GW + - SNMP + - SNMP-TRAP + - SNPP + - SMTP + - SQL-SVCS + - SQL + - SSH + - SUBMISSION + - SUNRPC + - SVCLOC + - SYSLOG + - SYSTAT + - TACACS + - TALK + - TCPMUX + - TCPNETHASPSRV + - TFTP + - TIME + - TIMED + - UPS + - XDMCP + - XNS-CH + - XNS-MAIL + - XNS-TIME + - Z3950 + type: string + destinationPortNumber: + description: Destination port to match by numerical value. + maximum: 65535 + minimum: 0 + type: integer + destinationPortOperator: + description: Operator to use when matching destinationPort, either Equals, GreaterOrEquals, or LessOrEquals. + enum: + - Equals + - GreaterOrEquals + - LessOrEquals + type: string + destinationPortRange: + description: Range of destination ports to match, in the format n-m, e.g. 100-200, The start and end of the range must be port numbers. + type: string + destinationPrefix: + description: Destination prefix to match. + type: string + firstFragment: + description: Match the first fragment only. + type: boolean + fragment: + description: Match any fragment. + type: boolean + icmpCode: + description: Match a specific ICMP code, as a number between 0-255, e.g. 0. + items: + type: integer + maxItems: 255 + minItems: 0 + type: array + icmpTypeName: + description: Match a specific ICMP type by name, e.g. dest-unreachable. + enum: + - DestUnreachable + - Echo + - EchoReply + - EchoRequest + - McastRtrAdv + - McastRtrSolicit + - McastRtrTerm + - MldDone + - MldQuery + - MldReport + - MldV2 + - NeighborAdvertise + - NeighborSolicit + - NodeInfoQuery + - NodeInfoResponse + - PacketTooBig + - ParamProblem + - Redirect + - RouterAdvertise + - RouterRenumber + - RouterSolicit + - SourceQuench + - TimeExceeded + - Timestamp + - TimestampReply + type: string + icmpTypeNumber: + description: Match a specific ICMP type by number. + maximum: 255 + minimum: 0 + type: integer + log: + description: Log the matches for this entry. + type: boolean + protocolName: + description: Match a specific IP protocol name (specified in the type field of the IP header). + enum: + - AH + - EGP + - EIGRP + - ESP + - GGP + - GRE + - ICMP + - ICMP6 + - IDRP + - IGMP + - IGP + - IPV4 + - IPV6 + - IPV6-DEST-OPTS + - IPV6-HOP + - L2TP + - MPLS-IN-IP + - NO-NEXT-HDR + - OSPF + - PIM + - ROHC + - RSVP + - SCTP + - ST + - TCP + - UDP + - VRRP + type: string + protocolNumber: + description: Match a specific IP protocol number (specified in the type field of the IP header). + maximum: 255 + minimum: 0 + type: integer + rateLimit: + description: Rate limit to apply when the action is 'RateLimit'. + properties: + burstSize: + description: The maximum burst size in bytes. + format: int32 + type: integer + entrySpecificPolicer: + default: false + description: 'Controls policer instantiation: false for shared instance, true for per-entry instances' + type: boolean + peakRate: + description: The peak rate in kilobytes per second. + format: int32 + type: integer + scope: + default: Global + description: Determines how the policer is applied across subinterfaces. Global applies the policer across all subinterfaces, while Subinterface applies it individually to each subinterface. + enum: + - Global + - Subinterface + type: string + type: object + sourcePortName: + description: Source port to match by name. + enum: + - ACAP + - AFP-TCP + - ARNS + - ASF-RMCP + - ASHARE + - ATALK-RM + - AURP + - AUTH + - BFD + - BFD-ECHO + - BFTP + - BGMP + - BGP + - BOOTPC + - BOOTPS + - CCSO-NS + - CHARGEN + - CISCO-TDP + - CITADEL + - CLEARCASE + - COMMERCE + - COURIER + - DAYTIME + - DHCP-FAILOVER + - DHCPV6-CLIENT + - DHCPV6-SERVER + - DICOM + - DISCARD + - DNSIX + - DOMAIN + - DSP + - ECHO + - EPP + - ESRO + - EXEC + - FINGER + - FTP + - FTP-DATA + - FTPS + - FTPS-DATA + - GODI + - GOPHER + - GTP-C + - GTP-PRIME + - GTP-U + - HA-CLUSTER + - HOSTNAME + - HP-ALARM-MGR + - HTTP + - HTTP-ALT + - HTTP-MGMT + - HTTP-RPC + - HTTPS + - IEEE-MMS-SSL + - IMAP + - IMAP3 + - IMAPS + - IPP + - IPSEC + - IPX + - IRC + - IRIS-BEEP + - ISAKMP + - ISAKMP-NAT + - ISCSI + - ISO-TSAP + - KERBEROS + - KERBEROS-ADM + - KLOGIN + - KPASSWD + - KSHELL + - L2TP + - LDAP + - LDAPS + - LDP + - LMP + - LOGIN + - LPD + - LSP-PING + - MAC-SERVER-ADM + - MATIP-A + - MATIP-B + - MICRO-BFD + - MICROSOFT-DS + - MOBILE-IP + - MONITOR + - MPP + - MS-EXCHANGE + - MSDP + - MSP + - MSSQL-M + - MSSQL-S + - MULTIHOP-BFD + - NAS + - NCP + - NETBIOS-DATA + - NETBIOS-NS + - NETBIOS-SS + - NETNEWS + - NETRJS-1 + - NETRJS-2 + - NETRJS-3 + - NETRJS-4 + - NETWALL + - NEW-RWHO + - NFS + - NNTP + - NNTPS + - NTP + - ODMR + - OLSR + - OPENVPN + - PIM-AUTO-RP + - PKIX-TIMESTAMP + - POP2 + - POP3 + - POP3S + - PPTP + - PRINT-SRV + - PTP-EVENT + - PTP-GENERAL + - QMTP + - QOTD + - RADIUS + - RADIUS-ACCT + - REMOTE-MAIL + - REMOTEFS + - REMOTECMD + - RIP + - RJE + - RLP + - RLZDB + - RMC + - RMONITOR + - RPC2PORTMAP + - RSYNC + - RTELNET + - RTSP + - SGMP + - SILC + - SMUX + - SNA-GW + - SNMP + - SNMP-TRAP + - SNPP + - SMTP + - SQL-SVCS + - SQL + - SSH + - SUBMISSION + - SUNRPC + - SVCLOC + - SYSLOG + - SYSTAT + - TACACS + - TALK + - TCPMUX + - TCPNETHASPSRV + - TFTP + - TIME + - TIMED + - UPS + - XDMCP + - XNS-CH + - XNS-MAIL + - XNS-TIME + - Z3950 + type: string + sourcePortNumber: + description: Source port to match by numerical value. + maximum: 65535 + minimum: 0 + type: integer + sourcePortOperator: + description: Operator to use when matching sourcePort, either Equals, GreaterOrEquals, or LessOrEquals. + enum: + - Equals + - GreaterOrEquals + - LessOrEquals + type: string + sourcePortRange: + description: Range of source ports to match, in the format n-m, e.g. 100-200. The start and end of the range must be port numbers. + type: string + sourcePrefix: + description: Source prefix to match. + type: string + tcpFlags: + description: Match TCP flags, usable with !, &, | and the flags RST, SYN, and ACK. + type: string + type: object + macEntry: + properties: + action: + description: An action to take, either 'Accept','Drop', or 'RateLimit'. + enum: + - Drop + - Accept + - RateLimit + type: string + destinationMAC: + description: Match an Ethernet frame if its destination MAC address logically anded with the mask equals this MAC address. + type: string + destinationMACMask: + description: Match an Ethernet frame if its destination MAC address logically anded with the mask equals the configured MAC address. + type: string + ethertype: + description: An Ethernet frame matches this condition if its ethertype value (after 802.1Q VLAN tags) matches the specified value. + enum: + - ARP + - AUTHENTICATION8021X + - ETHOAM + - FCOE + - FCOEINITIALIZATION + - FLOWCONTROL + - IPV4 + - IPV6 + - LACP + - LLDP + - MACSEC + - MPLSMULTICAST + - MPLSUNICAST + - PBB + - PPPOEDISCOVERY + - PPPOESESSION + - PTP + - ROCE + type: string + log: + description: Log the matches for this entry. + type: boolean + outerVLANIDOperator: + description: Operator to use when matching OuterVlanIdValue, either Equals, GreaterOrEquals, or LessOrEquals. + enum: + - Equals + - GreaterOrEquals + - LessOrEquals + type: string + outerVLANIDRange: + description: Range of Outer vlan IDs to match, in the format n-m, e.g. 100-200 + type: string + outerVLANIDValue: + description: Ethernet frame matching criteria based on the outermost VLAN ID found before the subinterface-defining VLAN tag (if any) is removed. A value of 'none' will match only untagged frames. + type: string + rateLimit: + description: Rate limit to apply when the action is 'RateLimit'. + properties: + burstSize: + description: The maximum burst size in bytes. + format: int32 + type: integer + entrySpecificPolicer: + default: false + description: 'Controls policer instantiation: false for shared instance, true for per-entry instances' + type: boolean + peakRate: + description: The peak rate in kilobytes per second. + format: int32 + type: integer + scope: + default: Global + description: Determines how the policer is applied across subinterfaces. Global applies the policer across all subinterfaces, while Subinterface applies it individually to each subinterface. + enum: + - Global + - Subinterface + type: string + type: object + sourceMAC: + description: Match an Ethernet frame if its source MAC address logically anded with the mask equals this MAC address. + type: string + sourceMACMask: + description: Match an Ethernet frame if its source MAC address logically anded with the mask equals the configured MAC address. + type: string + type: object + type: + default: Auto + description: Type of the entry which can be IPV4, IPV6, MAC or Auto. + enum: + - IPV4 + - IPV6 + - MAC + - Auto + type: string + required: + - type + type: object + type: array + nodeSelector: + description: Label selector used to select Toponodes on which to deploy the CPM filter. + items: + type: string + type: array + nodes: + description: Reference to a list of TopoNodes on which to deploy the CPM filter. + items: + type: string + type: array + statisticsPerEntry: + description: Enable or disable per-entry counters. + type: boolean + required: + - entries + type: object + status: + description: ControlPlaneFilterStatus defines the observed state of ControlPlaneFilter + type: object + type: object +served: true +storage: true +subresources: + status: {} diff --git a/static/resources/25.8.2/cpuoverlays.components.eda.nokia.com/v1.yaml b/static/resources/25.8.2/cpuoverlays.components.eda.nokia.com/v1.yaml new file mode 100644 index 0000000..7e556fe --- /dev/null +++ b/static/resources/25.8.2/cpuoverlays.components.eda.nokia.com/v1.yaml @@ -0,0 +1,69 @@ +name: v1 +schema: + openAPIV3Schema: + description: CPUOverlay is the Schema for the CPU overlay + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + description: CPUOverlaySpec defines the desired state of CPUOverlay + properties: + enabled: + description: Enable or disable the generation of the status of this overlay + type: boolean + topology: + description: Reference to the topology that this overlay is extending. + properties: + group: + description: The group of the application which published the topology this overlay is extending. + type: string + name: + description: The name of the resource which published the topology this overlay is extending. + type: string + version: + description: The version of the application which published the topology this overlay is extending. + type: string + required: + - group + - name + - version + type: object + uiDescription: + description: A description of the overlay to expose in the UI + type: string + uiDescriptionKey: + description: The translation key for the description of the overlay to expose in the UI + type: string + uiName: + description: The name of the overlay to expose in the UI + type: string + uiNameKey: + description: The translation key for the name of the overlay to expose in the UI + type: string + required: + - enabled + - topology + type: object + status: + description: CPUOverlayStatus defines the observed state of CPUOverlay + type: object + type: object +served: true +storage: true +subresources: + status: {} diff --git a/static/resources/25.8.2/cxclusters.cx.eda.nokia.com/v1alpha1.yaml b/static/resources/25.8.2/cxclusters.cx.eda.nokia.com/v1alpha1.yaml new file mode 100644 index 0000000..c3c6eec --- /dev/null +++ b/static/resources/25.8.2/cxclusters.cx.eda.nokia.com/v1alpha1.yaml @@ -0,0 +1,3713 @@ +name: v1alpha1 +schema: + openAPIV3Schema: + properties: + apiVersion: + type: string + kind: + type: string + metadata: + type: object + spec: + properties: + configMap: + properties: + apiVersion: + type: string + binaryData: + additionalProperties: + format: byte + type: string + type: object + data: + additionalProperties: + type: string + type: object + immutable: + type: boolean + kind: + type: string + metadata: + type: object + type: object + env: + items: + properties: + name: + type: string + value: + type: string + valueFrom: + properties: + configMapKeyRef: + properties: + key: + type: string + name: + default: "" + type: string + optional: + type: boolean + required: + - key + type: object + x-kubernetes-map-type: atomic + fieldRef: + properties: + apiVersion: + type: string + fieldPath: + type: string + required: + - fieldPath + type: object + x-kubernetes-map-type: atomic + resourceFieldRef: + properties: + containerName: + type: string + divisor: + anyOf: + - type: integer + - type: string + pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$ + x-kubernetes-int-or-string: true + resource: + type: string + required: + - resource + type: object + x-kubernetes-map-type: atomic + secretKeyRef: + properties: + key: + type: string + name: + default: "" + type: string + optional: + type: boolean + required: + - key + type: object + x-kubernetes-map-type: atomic + type: object + required: + - name + type: object + type: array + labels: + additionalProperties: + type: string + type: object + links: + x-kubernetes-preserve-unknown-fields: true + name: + type: string + skip: + default: false + type: boolean + topology: + properties: + nodes: + items: + properties: + chassisConfiguration: + properties: + chassisType: + type: integer + macAddress: + type: string + pdType: + type: string + required: + - chassisType + - macAddress + - pdType + type: object + combinedmode: + type: boolean + kind: + default: srl + enum: + - srl + - linux + - srux + - srltest + type: string + name: + type: string + podSpec: + properties: + affinity: + properties: + nodeAffinity: + properties: + preferredDuringSchedulingIgnoredDuringExecution: + items: + properties: + preference: + properties: + matchExpressions: + items: + properties: + key: + type: string + operator: + type: string + values: + items: + type: string + type: array + x-kubernetes-list-type: atomic + required: + - key + - operator + type: object + type: array + x-kubernetes-list-type: atomic + matchFields: + items: + properties: + key: + type: string + operator: + type: string + values: + items: + type: string + type: array + x-kubernetes-list-type: atomic + required: + - key + - operator + type: object + type: array + x-kubernetes-list-type: atomic + type: object + x-kubernetes-map-type: atomic + weight: + format: int32 + type: integer + required: + - preference + - weight + type: object + type: array + x-kubernetes-list-type: atomic + requiredDuringSchedulingIgnoredDuringExecution: + properties: + nodeSelectorTerms: + items: + properties: + matchExpressions: + items: + properties: + key: + type: string + operator: + type: string + values: + items: + type: string + type: array + x-kubernetes-list-type: atomic + required: + - key + - operator + type: object + type: array + x-kubernetes-list-type: atomic + matchFields: + items: + properties: + key: + type: string + operator: + type: string + values: + items: + type: string + type: array + x-kubernetes-list-type: atomic + required: + - key + - operator + type: object + type: array + x-kubernetes-list-type: atomic + type: object + x-kubernetes-map-type: atomic + type: array + x-kubernetes-list-type: atomic + required: + - nodeSelectorTerms + type: object + x-kubernetes-map-type: atomic + type: object + podAffinity: + properties: + preferredDuringSchedulingIgnoredDuringExecution: + items: + properties: + podAffinityTerm: + properties: + labelSelector: + properties: + matchExpressions: + items: + properties: + key: + type: string + operator: + type: string + values: + items: + type: string + type: array + x-kubernetes-list-type: atomic + required: + - key + - operator + type: object + type: array + x-kubernetes-list-type: atomic + matchLabels: + additionalProperties: + type: string + type: object + type: object + x-kubernetes-map-type: atomic + matchLabelKeys: + items: + type: string + type: array + x-kubernetes-list-type: atomic + mismatchLabelKeys: + items: + type: string + type: array + x-kubernetes-list-type: atomic + namespaceSelector: + properties: + matchExpressions: + items: + properties: + key: + type: string + operator: + type: string + values: + items: + type: string + type: array + x-kubernetes-list-type: atomic + required: + - key + - operator + type: object + type: array + x-kubernetes-list-type: atomic + matchLabels: + additionalProperties: + type: string + type: object + type: object + x-kubernetes-map-type: atomic + namespaces: + items: + type: string + type: array + x-kubernetes-list-type: atomic + topologyKey: + type: string + required: + - topologyKey + type: object + weight: + format: int32 + type: integer + required: + - podAffinityTerm + - weight + type: object + type: array + x-kubernetes-list-type: atomic + requiredDuringSchedulingIgnoredDuringExecution: + items: + properties: + labelSelector: + properties: + matchExpressions: + items: + properties: + key: + type: string + operator: + type: string + values: + items: + type: string + type: array + x-kubernetes-list-type: atomic + required: + - key + - operator + type: object + type: array + x-kubernetes-list-type: atomic + matchLabels: + additionalProperties: + type: string + type: object + type: object + x-kubernetes-map-type: atomic + matchLabelKeys: + items: + type: string + type: array + x-kubernetes-list-type: atomic + mismatchLabelKeys: + items: + type: string + type: array + x-kubernetes-list-type: atomic + namespaceSelector: + properties: + matchExpressions: + items: + properties: + key: + type: string + operator: + type: string + values: + items: + type: string + type: array + x-kubernetes-list-type: atomic + required: + - key + - operator + type: object + type: array + x-kubernetes-list-type: atomic + matchLabels: + additionalProperties: + type: string + type: object + type: object + x-kubernetes-map-type: atomic + namespaces: + items: + type: string + type: array + x-kubernetes-list-type: atomic + topologyKey: + type: string + required: + - topologyKey + type: object + type: array + x-kubernetes-list-type: atomic + type: object + podAntiAffinity: + properties: + preferredDuringSchedulingIgnoredDuringExecution: + items: + properties: + podAffinityTerm: + properties: + labelSelector: + properties: + matchExpressions: + items: + properties: + key: + type: string + operator: + type: string + values: + items: + type: string + type: array + x-kubernetes-list-type: atomic + required: + - key + - operator + type: object + type: array + x-kubernetes-list-type: atomic + matchLabels: + additionalProperties: + type: string + type: object + type: object + x-kubernetes-map-type: atomic + matchLabelKeys: + items: + type: string + type: array + x-kubernetes-list-type: atomic + mismatchLabelKeys: + items: + type: string + type: array + x-kubernetes-list-type: atomic + namespaceSelector: + properties: + matchExpressions: + items: + properties: + key: + type: string + operator: + type: string + values: + items: + type: string + type: array + x-kubernetes-list-type: atomic + required: + - key + - operator + type: object + type: array + x-kubernetes-list-type: atomic + matchLabels: + additionalProperties: + type: string + type: object + type: object + x-kubernetes-map-type: atomic + namespaces: + items: + type: string + type: array + x-kubernetes-list-type: atomic + topologyKey: + type: string + required: + - topologyKey + type: object + weight: + format: int32 + type: integer + required: + - podAffinityTerm + - weight + type: object + type: array + x-kubernetes-list-type: atomic + requiredDuringSchedulingIgnoredDuringExecution: + items: + properties: + labelSelector: + properties: + matchExpressions: + items: + properties: + key: + type: string + operator: + type: string + values: + items: + type: string + type: array + x-kubernetes-list-type: atomic + required: + - key + - operator + type: object + type: array + x-kubernetes-list-type: atomic + matchLabels: + additionalProperties: + type: string + type: object + type: object + x-kubernetes-map-type: atomic + matchLabelKeys: + items: + type: string + type: array + x-kubernetes-list-type: atomic + mismatchLabelKeys: + items: + type: string + type: array + x-kubernetes-list-type: atomic + namespaceSelector: + properties: + matchExpressions: + items: + properties: + key: + type: string + operator: + type: string + values: + items: + type: string + type: array + x-kubernetes-list-type: atomic + required: + - key + - operator + type: object + type: array + x-kubernetes-list-type: atomic + matchLabels: + additionalProperties: + type: string + type: object + type: object + x-kubernetes-map-type: atomic + namespaces: + items: + type: string + type: array + x-kubernetes-list-type: atomic + topologyKey: + type: string + required: + - topologyKey + type: object + type: array + x-kubernetes-list-type: atomic + type: object + type: object + annotations: + additionalProperties: + type: string + type: object + containerSpec: + properties: + args: + items: + type: string + type: array + x-kubernetes-list-type: atomic + command: + items: + type: string + type: array + x-kubernetes-list-type: atomic + env: + items: + properties: + name: + type: string + value: + type: string + valueFrom: + properties: + configMapKeyRef: + properties: + key: + type: string + name: + default: "" + type: string + optional: + type: boolean + required: + - key + type: object + x-kubernetes-map-type: atomic + fieldRef: + properties: + apiVersion: + type: string + fieldPath: + type: string + required: + - fieldPath + type: object + x-kubernetes-map-type: atomic + resourceFieldRef: + properties: + containerName: + type: string + divisor: + anyOf: + - type: integer + - type: string + pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$ + x-kubernetes-int-or-string: true + resource: + type: string + required: + - resource + type: object + x-kubernetes-map-type: atomic + secretKeyRef: + properties: + key: + type: string + name: + default: "" + type: string + optional: + type: boolean + required: + - key + type: object + x-kubernetes-map-type: atomic + type: object + required: + - name + type: object + type: array + x-kubernetes-list-map-keys: + - name + x-kubernetes-list-type: map + envFrom: + items: + properties: + configMapRef: + properties: + name: + default: "" + type: string + optional: + type: boolean + type: object + x-kubernetes-map-type: atomic + prefix: + type: string + secretRef: + properties: + name: + default: "" + type: string + optional: + type: boolean + type: object + x-kubernetes-map-type: atomic + type: object + type: array + x-kubernetes-list-type: atomic + image: + type: string + imagePullPolicy: + type: string + lifecycle: + properties: + postStart: + properties: + exec: + properties: + command: + items: + type: string + type: array + x-kubernetes-list-type: atomic + type: object + httpGet: + properties: + host: + type: string + httpHeaders: + items: + properties: + name: + type: string + value: + type: string + required: + - name + - value + type: object + type: array + x-kubernetes-list-type: atomic + path: + type: string + port: + anyOf: + - type: integer + - type: string + x-kubernetes-int-or-string: true + scheme: + type: string + required: + - port + type: object + sleep: + properties: + seconds: + format: int64 + type: integer + required: + - seconds + type: object + tcpSocket: + properties: + host: + type: string + port: + anyOf: + - type: integer + - type: string + x-kubernetes-int-or-string: true + required: + - port + type: object + type: object + preStop: + properties: + exec: + properties: + command: + items: + type: string + type: array + x-kubernetes-list-type: atomic + type: object + httpGet: + properties: + host: + type: string + httpHeaders: + items: + properties: + name: + type: string + value: + type: string + required: + - name + - value + type: object + type: array + x-kubernetes-list-type: atomic + path: + type: string + port: + anyOf: + - type: integer + - type: string + x-kubernetes-int-or-string: true + scheme: + type: string + required: + - port + type: object + sleep: + properties: + seconds: + format: int64 + type: integer + required: + - seconds + type: object + tcpSocket: + properties: + host: + type: string + port: + anyOf: + - type: integer + - type: string + x-kubernetes-int-or-string: true + required: + - port + type: object + type: object + stopSignal: + type: string + type: object + livenessProbe: + properties: + exec: + properties: + command: + items: + type: string + type: array + x-kubernetes-list-type: atomic + type: object + failureThreshold: + format: int32 + type: integer + grpc: + properties: + port: + format: int32 + type: integer + service: + default: "" + type: string + required: + - port + type: object + httpGet: + properties: + host: + type: string + httpHeaders: + items: + properties: + name: + type: string + value: + type: string + required: + - name + - value + type: object + type: array + x-kubernetes-list-type: atomic + path: + type: string + port: + anyOf: + - type: integer + - type: string + x-kubernetes-int-or-string: true + scheme: + type: string + required: + - port + type: object + initialDelaySeconds: + format: int32 + type: integer + periodSeconds: + format: int32 + type: integer + successThreshold: + format: int32 + type: integer + tcpSocket: + properties: + host: + type: string + port: + anyOf: + - type: integer + - type: string + x-kubernetes-int-or-string: true + required: + - port + type: object + terminationGracePeriodSeconds: + format: int64 + type: integer + timeoutSeconds: + format: int32 + type: integer + type: object + name: + type: string + ports: + items: + properties: + containerPort: + format: int32 + type: integer + hostIP: + type: string + hostPort: + format: int32 + type: integer + name: + type: string + protocol: + default: TCP + type: string + required: + - containerPort + type: object + type: array + x-kubernetes-list-map-keys: + - containerPort + - protocol + x-kubernetes-list-type: map + readinessProbe: + properties: + exec: + properties: + command: + items: + type: string + type: array + x-kubernetes-list-type: atomic + type: object + failureThreshold: + format: int32 + type: integer + grpc: + properties: + port: + format: int32 + type: integer + service: + default: "" + type: string + required: + - port + type: object + httpGet: + properties: + host: + type: string + httpHeaders: + items: + properties: + name: + type: string + value: + type: string + required: + - name + - value + type: object + type: array + x-kubernetes-list-type: atomic + path: + type: string + port: + anyOf: + - type: integer + - type: string + x-kubernetes-int-or-string: true + scheme: + type: string + required: + - port + type: object + initialDelaySeconds: + format: int32 + type: integer + periodSeconds: + format: int32 + type: integer + successThreshold: + format: int32 + type: integer + tcpSocket: + properties: + host: + type: string + port: + anyOf: + - type: integer + - type: string + x-kubernetes-int-or-string: true + required: + - port + type: object + terminationGracePeriodSeconds: + format: int64 + type: integer + timeoutSeconds: + format: int32 + type: integer + type: object + resizePolicy: + items: + properties: + resourceName: + type: string + restartPolicy: + type: string + required: + - resourceName + - restartPolicy + type: object + type: array + x-kubernetes-list-type: atomic + resources: + properties: + claims: + items: + properties: + name: + type: string + request: + type: string + required: + - name + type: object + type: array + x-kubernetes-list-map-keys: + - name + x-kubernetes-list-type: map + limits: + additionalProperties: + anyOf: + - type: integer + - type: string + pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$ + x-kubernetes-int-or-string: true + type: object + requests: + additionalProperties: + anyOf: + - type: integer + - type: string + pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$ + x-kubernetes-int-or-string: true + type: object + type: object + restartPolicy: + type: string + securityContext: + properties: + allowPrivilegeEscalation: + type: boolean + appArmorProfile: + properties: + localhostProfile: + type: string + type: + type: string + required: + - type + type: object + capabilities: + properties: + add: + items: + type: string + type: array + x-kubernetes-list-type: atomic + drop: + items: + type: string + type: array + x-kubernetes-list-type: atomic + type: object + privileged: + type: boolean + procMount: + type: string + readOnlyRootFilesystem: + type: boolean + runAsGroup: + format: int64 + type: integer + runAsNonRoot: + type: boolean + runAsUser: + format: int64 + type: integer + seLinuxOptions: + properties: + level: + type: string + role: + type: string + type: + type: string + user: + type: string + type: object + seccompProfile: + properties: + localhostProfile: + type: string + type: + type: string + required: + - type + type: object + windowsOptions: + properties: + gmsaCredentialSpec: + type: string + gmsaCredentialSpecName: + type: string + hostProcess: + type: boolean + runAsUserName: + type: string + type: object + type: object + startupProbe: + properties: + exec: + properties: + command: + items: + type: string + type: array + x-kubernetes-list-type: atomic + type: object + failureThreshold: + format: int32 + type: integer + grpc: + properties: + port: + format: int32 + type: integer + service: + default: "" + type: string + required: + - port + type: object + httpGet: + properties: + host: + type: string + httpHeaders: + items: + properties: + name: + type: string + value: + type: string + required: + - name + - value + type: object + type: array + x-kubernetes-list-type: atomic + path: + type: string + port: + anyOf: + - type: integer + - type: string + x-kubernetes-int-or-string: true + scheme: + type: string + required: + - port + type: object + initialDelaySeconds: + format: int32 + type: integer + periodSeconds: + format: int32 + type: integer + successThreshold: + format: int32 + type: integer + tcpSocket: + properties: + host: + type: string + port: + anyOf: + - type: integer + - type: string + x-kubernetes-int-or-string: true + required: + - port + type: object + terminationGracePeriodSeconds: + format: int64 + type: integer + timeoutSeconds: + format: int32 + type: integer + type: object + stdin: + type: boolean + stdinOnce: + type: boolean + terminationMessagePath: + type: string + terminationMessagePolicy: + type: string + tty: + type: boolean + volumeDevices: + items: + properties: + devicePath: + type: string + name: + type: string + required: + - devicePath + - name + type: object + type: array + x-kubernetes-list-map-keys: + - devicePath + x-kubernetes-list-type: map + volumeMounts: + items: + properties: + mountPath: + type: string + mountPropagation: + type: string + name: + type: string + readOnly: + type: boolean + recursiveReadOnly: + type: string + subPath: + type: string + subPathExpr: + type: string + required: + - mountPath + - name + type: object + type: array + x-kubernetes-list-map-keys: + - mountPath + x-kubernetes-list-type: map + workingDir: + type: string + required: + - name + type: object + env: + items: + properties: + name: + type: string + value: + type: string + valueFrom: + properties: + configMapKeyRef: + properties: + key: + type: string + name: + default: "" + type: string + optional: + type: boolean + required: + - key + type: object + x-kubernetes-map-type: atomic + fieldRef: + properties: + apiVersion: + type: string + fieldPath: + type: string + required: + - fieldPath + type: object + x-kubernetes-map-type: atomic + resourceFieldRef: + properties: + containerName: + type: string + divisor: + anyOf: + - type: integer + - type: string + pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$ + x-kubernetes-int-or-string: true + resource: + type: string + required: + - resource + type: object + x-kubernetes-map-type: atomic + secretKeyRef: + properties: + key: + type: string + name: + default: "" + type: string + optional: + type: boolean + required: + - key + type: object + x-kubernetes-map-type: atomic + type: object + required: + - name + type: object + type: array + image: + type: string + imagePullSecrets: + items: + properties: + name: + default: "" + type: string + type: object + x-kubernetes-map-type: atomic + type: array + initContainers: + items: + properties: + args: + items: + type: string + type: array + x-kubernetes-list-type: atomic + command: + items: + type: string + type: array + x-kubernetes-list-type: atomic + env: + items: + properties: + name: + type: string + value: + type: string + valueFrom: + properties: + configMapKeyRef: + properties: + key: + type: string + name: + default: "" + type: string + optional: + type: boolean + required: + - key + type: object + x-kubernetes-map-type: atomic + fieldRef: + properties: + apiVersion: + type: string + fieldPath: + type: string + required: + - fieldPath + type: object + x-kubernetes-map-type: atomic + resourceFieldRef: + properties: + containerName: + type: string + divisor: + anyOf: + - type: integer + - type: string + pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$ + x-kubernetes-int-or-string: true + resource: + type: string + required: + - resource + type: object + x-kubernetes-map-type: atomic + secretKeyRef: + properties: + key: + type: string + name: + default: "" + type: string + optional: + type: boolean + required: + - key + type: object + x-kubernetes-map-type: atomic + type: object + required: + - name + type: object + type: array + x-kubernetes-list-map-keys: + - name + x-kubernetes-list-type: map + envFrom: + items: + properties: + configMapRef: + properties: + name: + default: "" + type: string + optional: + type: boolean + type: object + x-kubernetes-map-type: atomic + prefix: + type: string + secretRef: + properties: + name: + default: "" + type: string + optional: + type: boolean + type: object + x-kubernetes-map-type: atomic + type: object + type: array + x-kubernetes-list-type: atomic + image: + type: string + imagePullPolicy: + type: string + lifecycle: + properties: + postStart: + properties: + exec: + properties: + command: + items: + type: string + type: array + x-kubernetes-list-type: atomic + type: object + httpGet: + properties: + host: + type: string + httpHeaders: + items: + properties: + name: + type: string + value: + type: string + required: + - name + - value + type: object + type: array + x-kubernetes-list-type: atomic + path: + type: string + port: + anyOf: + - type: integer + - type: string + x-kubernetes-int-or-string: true + scheme: + type: string + required: + - port + type: object + sleep: + properties: + seconds: + format: int64 + type: integer + required: + - seconds + type: object + tcpSocket: + properties: + host: + type: string + port: + anyOf: + - type: integer + - type: string + x-kubernetes-int-or-string: true + required: + - port + type: object + type: object + preStop: + properties: + exec: + properties: + command: + items: + type: string + type: array + x-kubernetes-list-type: atomic + type: object + httpGet: + properties: + host: + type: string + httpHeaders: + items: + properties: + name: + type: string + value: + type: string + required: + - name + - value + type: object + type: array + x-kubernetes-list-type: atomic + path: + type: string + port: + anyOf: + - type: integer + - type: string + x-kubernetes-int-or-string: true + scheme: + type: string + required: + - port + type: object + sleep: + properties: + seconds: + format: int64 + type: integer + required: + - seconds + type: object + tcpSocket: + properties: + host: + type: string + port: + anyOf: + - type: integer + - type: string + x-kubernetes-int-or-string: true + required: + - port + type: object + type: object + stopSignal: + type: string + type: object + livenessProbe: + properties: + exec: + properties: + command: + items: + type: string + type: array + x-kubernetes-list-type: atomic + type: object + failureThreshold: + format: int32 + type: integer + grpc: + properties: + port: + format: int32 + type: integer + service: + default: "" + type: string + required: + - port + type: object + httpGet: + properties: + host: + type: string + httpHeaders: + items: + properties: + name: + type: string + value: + type: string + required: + - name + - value + type: object + type: array + x-kubernetes-list-type: atomic + path: + type: string + port: + anyOf: + - type: integer + - type: string + x-kubernetes-int-or-string: true + scheme: + type: string + required: + - port + type: object + initialDelaySeconds: + format: int32 + type: integer + periodSeconds: + format: int32 + type: integer + successThreshold: + format: int32 + type: integer + tcpSocket: + properties: + host: + type: string + port: + anyOf: + - type: integer + - type: string + x-kubernetes-int-or-string: true + required: + - port + type: object + terminationGracePeriodSeconds: + format: int64 + type: integer + timeoutSeconds: + format: int32 + type: integer + type: object + name: + type: string + ports: + items: + properties: + containerPort: + format: int32 + type: integer + hostIP: + type: string + hostPort: + format: int32 + type: integer + name: + type: string + protocol: + default: TCP + type: string + required: + - containerPort + type: object + type: array + x-kubernetes-list-map-keys: + - containerPort + - protocol + x-kubernetes-list-type: map + readinessProbe: + properties: + exec: + properties: + command: + items: + type: string + type: array + x-kubernetes-list-type: atomic + type: object + failureThreshold: + format: int32 + type: integer + grpc: + properties: + port: + format: int32 + type: integer + service: + default: "" + type: string + required: + - port + type: object + httpGet: + properties: + host: + type: string + httpHeaders: + items: + properties: + name: + type: string + value: + type: string + required: + - name + - value + type: object + type: array + x-kubernetes-list-type: atomic + path: + type: string + port: + anyOf: + - type: integer + - type: string + x-kubernetes-int-or-string: true + scheme: + type: string + required: + - port + type: object + initialDelaySeconds: + format: int32 + type: integer + periodSeconds: + format: int32 + type: integer + successThreshold: + format: int32 + type: integer + tcpSocket: + properties: + host: + type: string + port: + anyOf: + - type: integer + - type: string + x-kubernetes-int-or-string: true + required: + - port + type: object + terminationGracePeriodSeconds: + format: int64 + type: integer + timeoutSeconds: + format: int32 + type: integer + type: object + resizePolicy: + items: + properties: + resourceName: + type: string + restartPolicy: + type: string + required: + - resourceName + - restartPolicy + type: object + type: array + x-kubernetes-list-type: atomic + resources: + properties: + claims: + items: + properties: + name: + type: string + request: + type: string + required: + - name + type: object + type: array + x-kubernetes-list-map-keys: + - name + x-kubernetes-list-type: map + limits: + additionalProperties: + anyOf: + - type: integer + - type: string + pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$ + x-kubernetes-int-or-string: true + type: object + requests: + additionalProperties: + anyOf: + - type: integer + - type: string + pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$ + x-kubernetes-int-or-string: true + type: object + type: object + restartPolicy: + type: string + securityContext: + properties: + allowPrivilegeEscalation: + type: boolean + appArmorProfile: + properties: + localhostProfile: + type: string + type: + type: string + required: + - type + type: object + capabilities: + properties: + add: + items: + type: string + type: array + x-kubernetes-list-type: atomic + drop: + items: + type: string + type: array + x-kubernetes-list-type: atomic + type: object + privileged: + type: boolean + procMount: + type: string + readOnlyRootFilesystem: + type: boolean + runAsGroup: + format: int64 + type: integer + runAsNonRoot: + type: boolean + runAsUser: + format: int64 + type: integer + seLinuxOptions: + properties: + level: + type: string + role: + type: string + type: + type: string + user: + type: string + type: object + seccompProfile: + properties: + localhostProfile: + type: string + type: + type: string + required: + - type + type: object + windowsOptions: + properties: + gmsaCredentialSpec: + type: string + gmsaCredentialSpecName: + type: string + hostProcess: + type: boolean + runAsUserName: + type: string + type: object + type: object + startupProbe: + properties: + exec: + properties: + command: + items: + type: string + type: array + x-kubernetes-list-type: atomic + type: object + failureThreshold: + format: int32 + type: integer + grpc: + properties: + port: + format: int32 + type: integer + service: + default: "" + type: string + required: + - port + type: object + httpGet: + properties: + host: + type: string + httpHeaders: + items: + properties: + name: + type: string + value: + type: string + required: + - name + - value + type: object + type: array + x-kubernetes-list-type: atomic + path: + type: string + port: + anyOf: + - type: integer + - type: string + x-kubernetes-int-or-string: true + scheme: + type: string + required: + - port + type: object + initialDelaySeconds: + format: int32 + type: integer + periodSeconds: + format: int32 + type: integer + successThreshold: + format: int32 + type: integer + tcpSocket: + properties: + host: + type: string + port: + anyOf: + - type: integer + - type: string + x-kubernetes-int-or-string: true + required: + - port + type: object + terminationGracePeriodSeconds: + format: int64 + type: integer + timeoutSeconds: + format: int32 + type: integer + type: object + stdin: + type: boolean + stdinOnce: + type: boolean + terminationMessagePath: + type: string + terminationMessagePolicy: + type: string + tty: + type: boolean + volumeDevices: + items: + properties: + devicePath: + type: string + name: + type: string + required: + - devicePath + - name + type: object + type: array + x-kubernetes-list-map-keys: + - devicePath + x-kubernetes-list-type: map + volumeMounts: + items: + properties: + mountPath: + type: string + mountPropagation: + type: string + name: + type: string + readOnly: + type: boolean + recursiveReadOnly: + type: string + subPath: + type: string + subPathExpr: + type: string + required: + - mountPath + - name + type: object + type: array + x-kubernetes-list-map-keys: + - mountPath + x-kubernetes-list-type: map + workingDir: + type: string + required: + - name + type: object + type: array + labels: + additionalProperties: + type: string + type: object + nodeSelector: + additionalProperties: + type: string + type: object + pullPolicy: + enum: + - Always + - Never + - IfNotPresent + type: string + restartPolicy: + type: string + securityContext: + properties: + appArmorProfile: + properties: + localhostProfile: + type: string + type: + type: string + required: + - type + type: object + fsGroup: + format: int64 + type: integer + fsGroupChangePolicy: + type: string + runAsGroup: + format: int64 + type: integer + runAsNonRoot: + type: boolean + runAsUser: + format: int64 + type: integer + seLinuxChangePolicy: + type: string + seLinuxOptions: + properties: + level: + type: string + role: + type: string + type: + type: string + user: + type: string + type: object + seccompProfile: + properties: + localhostProfile: + type: string + type: + type: string + required: + - type + type: object + supplementalGroups: + items: + format: int64 + type: integer + type: array + x-kubernetes-list-type: atomic + supplementalGroupsPolicy: + type: string + sysctls: + items: + properties: + name: + type: string + value: + type: string + required: + - name + - value + type: object + type: array + x-kubernetes-list-type: atomic + windowsOptions: + properties: + gmsaCredentialSpec: + type: string + gmsaCredentialSpecName: + type: string + hostProcess: + type: boolean + runAsUserName: + type: string + type: object + type: object + sidecars: + items: + properties: + args: + items: + type: string + type: array + x-kubernetes-list-type: atomic + command: + items: + type: string + type: array + x-kubernetes-list-type: atomic + env: + items: + properties: + name: + type: string + value: + type: string + valueFrom: + properties: + configMapKeyRef: + properties: + key: + type: string + name: + default: "" + type: string + optional: + type: boolean + required: + - key + type: object + x-kubernetes-map-type: atomic + fieldRef: + properties: + apiVersion: + type: string + fieldPath: + type: string + required: + - fieldPath + type: object + x-kubernetes-map-type: atomic + resourceFieldRef: + properties: + containerName: + type: string + divisor: + anyOf: + - type: integer + - type: string + pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$ + x-kubernetes-int-or-string: true + resource: + type: string + required: + - resource + type: object + x-kubernetes-map-type: atomic + secretKeyRef: + properties: + key: + type: string + name: + default: "" + type: string + optional: + type: boolean + required: + - key + type: object + x-kubernetes-map-type: atomic + type: object + required: + - name + type: object + type: array + x-kubernetes-list-map-keys: + - name + x-kubernetes-list-type: map + envFrom: + items: + properties: + configMapRef: + properties: + name: + default: "" + type: string + optional: + type: boolean + type: object + x-kubernetes-map-type: atomic + prefix: + type: string + secretRef: + properties: + name: + default: "" + type: string + optional: + type: boolean + type: object + x-kubernetes-map-type: atomic + type: object + type: array + x-kubernetes-list-type: atomic + image: + type: string + imagePullPolicy: + type: string + lifecycle: + properties: + postStart: + properties: + exec: + properties: + command: + items: + type: string + type: array + x-kubernetes-list-type: atomic + type: object + httpGet: + properties: + host: + type: string + httpHeaders: + items: + properties: + name: + type: string + value: + type: string + required: + - name + - value + type: object + type: array + x-kubernetes-list-type: atomic + path: + type: string + port: + anyOf: + - type: integer + - type: string + x-kubernetes-int-or-string: true + scheme: + type: string + required: + - port + type: object + sleep: + properties: + seconds: + format: int64 + type: integer + required: + - seconds + type: object + tcpSocket: + properties: + host: + type: string + port: + anyOf: + - type: integer + - type: string + x-kubernetes-int-or-string: true + required: + - port + type: object + type: object + preStop: + properties: + exec: + properties: + command: + items: + type: string + type: array + x-kubernetes-list-type: atomic + type: object + httpGet: + properties: + host: + type: string + httpHeaders: + items: + properties: + name: + type: string + value: + type: string + required: + - name + - value + type: object + type: array + x-kubernetes-list-type: atomic + path: + type: string + port: + anyOf: + - type: integer + - type: string + x-kubernetes-int-or-string: true + scheme: + type: string + required: + - port + type: object + sleep: + properties: + seconds: + format: int64 + type: integer + required: + - seconds + type: object + tcpSocket: + properties: + host: + type: string + port: + anyOf: + - type: integer + - type: string + x-kubernetes-int-or-string: true + required: + - port + type: object + type: object + stopSignal: + type: string + type: object + livenessProbe: + properties: + exec: + properties: + command: + items: + type: string + type: array + x-kubernetes-list-type: atomic + type: object + failureThreshold: + format: int32 + type: integer + grpc: + properties: + port: + format: int32 + type: integer + service: + default: "" + type: string + required: + - port + type: object + httpGet: + properties: + host: + type: string + httpHeaders: + items: + properties: + name: + type: string + value: + type: string + required: + - name + - value + type: object + type: array + x-kubernetes-list-type: atomic + path: + type: string + port: + anyOf: + - type: integer + - type: string + x-kubernetes-int-or-string: true + scheme: + type: string + required: + - port + type: object + initialDelaySeconds: + format: int32 + type: integer + periodSeconds: + format: int32 + type: integer + successThreshold: + format: int32 + type: integer + tcpSocket: + properties: + host: + type: string + port: + anyOf: + - type: integer + - type: string + x-kubernetes-int-or-string: true + required: + - port + type: object + terminationGracePeriodSeconds: + format: int64 + type: integer + timeoutSeconds: + format: int32 + type: integer + type: object + name: + type: string + ports: + items: + properties: + containerPort: + format: int32 + type: integer + hostIP: + type: string + hostPort: + format: int32 + type: integer + name: + type: string + protocol: + default: TCP + type: string + required: + - containerPort + type: object + type: array + x-kubernetes-list-map-keys: + - containerPort + - protocol + x-kubernetes-list-type: map + readinessProbe: + properties: + exec: + properties: + command: + items: + type: string + type: array + x-kubernetes-list-type: atomic + type: object + failureThreshold: + format: int32 + type: integer + grpc: + properties: + port: + format: int32 + type: integer + service: + default: "" + type: string + required: + - port + type: object + httpGet: + properties: + host: + type: string + httpHeaders: + items: + properties: + name: + type: string + value: + type: string + required: + - name + - value + type: object + type: array + x-kubernetes-list-type: atomic + path: + type: string + port: + anyOf: + - type: integer + - type: string + x-kubernetes-int-or-string: true + scheme: + type: string + required: + - port + type: object + initialDelaySeconds: + format: int32 + type: integer + periodSeconds: + format: int32 + type: integer + successThreshold: + format: int32 + type: integer + tcpSocket: + properties: + host: + type: string + port: + anyOf: + - type: integer + - type: string + x-kubernetes-int-or-string: true + required: + - port + type: object + terminationGracePeriodSeconds: + format: int64 + type: integer + timeoutSeconds: + format: int32 + type: integer + type: object + resizePolicy: + items: + properties: + resourceName: + type: string + restartPolicy: + type: string + required: + - resourceName + - restartPolicy + type: object + type: array + x-kubernetes-list-type: atomic + resources: + properties: + claims: + items: + properties: + name: + type: string + request: + type: string + required: + - name + type: object + type: array + x-kubernetes-list-map-keys: + - name + x-kubernetes-list-type: map + limits: + additionalProperties: + anyOf: + - type: integer + - type: string + pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$ + x-kubernetes-int-or-string: true + type: object + requests: + additionalProperties: + anyOf: + - type: integer + - type: string + pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$ + x-kubernetes-int-or-string: true + type: object + type: object + restartPolicy: + type: string + securityContext: + properties: + allowPrivilegeEscalation: + type: boolean + appArmorProfile: + properties: + localhostProfile: + type: string + type: + type: string + required: + - type + type: object + capabilities: + properties: + add: + items: + type: string + type: array + x-kubernetes-list-type: atomic + drop: + items: + type: string + type: array + x-kubernetes-list-type: atomic + type: object + privileged: + type: boolean + procMount: + type: string + readOnlyRootFilesystem: + type: boolean + runAsGroup: + format: int64 + type: integer + runAsNonRoot: + type: boolean + runAsUser: + format: int64 + type: integer + seLinuxOptions: + properties: + level: + type: string + role: + type: string + type: + type: string + user: + type: string + type: object + seccompProfile: + properties: + localhostProfile: + type: string + type: + type: string + required: + - type + type: object + windowsOptions: + properties: + gmsaCredentialSpec: + type: string + gmsaCredentialSpecName: + type: string + hostProcess: + type: boolean + runAsUserName: + type: string + type: object + type: object + startupProbe: + properties: + exec: + properties: + command: + items: + type: string + type: array + x-kubernetes-list-type: atomic + type: object + failureThreshold: + format: int32 + type: integer + grpc: + properties: + port: + format: int32 + type: integer + service: + default: "" + type: string + required: + - port + type: object + httpGet: + properties: + host: + type: string + httpHeaders: + items: + properties: + name: + type: string + value: + type: string + required: + - name + - value + type: object + type: array + x-kubernetes-list-type: atomic + path: + type: string + port: + anyOf: + - type: integer + - type: string + x-kubernetes-int-or-string: true + scheme: + type: string + required: + - port + type: object + initialDelaySeconds: + format: int32 + type: integer + periodSeconds: + format: int32 + type: integer + successThreshold: + format: int32 + type: integer + tcpSocket: + properties: + host: + type: string + port: + anyOf: + - type: integer + - type: string + x-kubernetes-int-or-string: true + required: + - port + type: object + terminationGracePeriodSeconds: + format: int64 + type: integer + timeoutSeconds: + format: int32 + type: integer + type: object + stdin: + type: boolean + stdinOnce: + type: boolean + terminationMessagePath: + type: string + terminationMessagePolicy: + type: string + tty: + type: boolean + volumeDevices: + items: + properties: + devicePath: + type: string + name: + type: string + required: + - devicePath + - name + type: object + type: array + x-kubernetes-list-map-keys: + - devicePath + x-kubernetes-list-type: map + volumeMounts: + items: + properties: + mountPath: + type: string + mountPropagation: + type: string + name: + type: string + readOnly: + type: boolean + recursiveReadOnly: + type: string + subPath: + type: string + subPathExpr: + type: string + required: + - mountPath + - name + type: object + type: array + x-kubernetes-list-map-keys: + - mountPath + x-kubernetes-list-type: map + workingDir: + type: string + required: + - name + type: object + type: array + terminationGracePeriodSeconds: + format: int64 + minimum: 0 + type: integer + volumeMounts: + items: + properties: + mountPath: + type: string + mountPropagation: + type: string + name: + type: string + readOnly: + type: boolean + recursiveReadOnly: + type: string + subPath: + type: string + subPathExpr: + type: string + required: + - mountPath + - name + type: object + type: array + volumes: + items: + properties: + awsElasticBlockStore: + properties: + fsType: + type: string + partition: + format: int32 + type: integer + readOnly: + type: boolean + volumeID: + type: string + required: + - volumeID + type: object + azureDisk: + properties: + cachingMode: + type: string + diskName: + type: string + diskURI: + type: string + fsType: + default: ext4 + type: string + kind: + type: string + readOnly: + default: false + type: boolean + required: + - diskName + - diskURI + type: object + azureFile: + properties: + readOnly: + type: boolean + secretName: + type: string + shareName: + type: string + required: + - secretName + - shareName + type: object + cephfs: + properties: + monitors: + items: + type: string + type: array + x-kubernetes-list-type: atomic + path: + type: string + readOnly: + type: boolean + secretFile: + type: string + secretRef: + properties: + name: + default: "" + type: string + type: object + x-kubernetes-map-type: atomic + user: + type: string + required: + - monitors + type: object + cinder: + properties: + fsType: + type: string + readOnly: + type: boolean + secretRef: + properties: + name: + default: "" + type: string + type: object + x-kubernetes-map-type: atomic + volumeID: + type: string + required: + - volumeID + type: object + configMap: + properties: + defaultMode: + format: int32 + type: integer + items: + items: + properties: + key: + type: string + mode: + format: int32 + type: integer + path: + type: string + required: + - key + - path + type: object + type: array + x-kubernetes-list-type: atomic + name: + default: "" + type: string + optional: + type: boolean + type: object + x-kubernetes-map-type: atomic + csi: + properties: + driver: + type: string + fsType: + type: string + nodePublishSecretRef: + properties: + name: + default: "" + type: string + type: object + x-kubernetes-map-type: atomic + readOnly: + type: boolean + volumeAttributes: + additionalProperties: + type: string + type: object + required: + - driver + type: object + downwardAPI: + properties: + defaultMode: + format: int32 + type: integer + items: + items: + properties: + fieldRef: + properties: + apiVersion: + type: string + fieldPath: + type: string + required: + - fieldPath + type: object + x-kubernetes-map-type: atomic + mode: + format: int32 + type: integer + path: + type: string + resourceFieldRef: + properties: + containerName: + type: string + divisor: + anyOf: + - type: integer + - type: string + pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$ + x-kubernetes-int-or-string: true + resource: + type: string + required: + - resource + type: object + x-kubernetes-map-type: atomic + required: + - path + type: object + type: array + x-kubernetes-list-type: atomic + type: object + emptyDir: + properties: + medium: + type: string + sizeLimit: + anyOf: + - type: integer + - type: string + pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$ + x-kubernetes-int-or-string: true + type: object + ephemeral: + properties: + volumeClaimTemplate: + properties: + metadata: + type: object + spec: + properties: + accessModes: + items: + type: string + type: array + x-kubernetes-list-type: atomic + dataSource: + properties: + apiGroup: + type: string + kind: + type: string + name: + type: string + required: + - kind + - name + type: object + x-kubernetes-map-type: atomic + dataSourceRef: + properties: + apiGroup: + type: string + kind: + type: string + name: + type: string + namespace: + type: string + required: + - kind + - name + type: object + resources: + properties: + limits: + additionalProperties: + anyOf: + - type: integer + - type: string + pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$ + x-kubernetes-int-or-string: true + type: object + requests: + additionalProperties: + anyOf: + - type: integer + - type: string + pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$ + x-kubernetes-int-or-string: true + type: object + type: object + selector: + properties: + matchExpressions: + items: + properties: + key: + type: string + operator: + type: string + values: + items: + type: string + type: array + x-kubernetes-list-type: atomic + required: + - key + - operator + type: object + type: array + x-kubernetes-list-type: atomic + matchLabels: + additionalProperties: + type: string + type: object + type: object + x-kubernetes-map-type: atomic + storageClassName: + type: string + volumeAttributesClassName: + type: string + volumeMode: + type: string + volumeName: + type: string + type: object + required: + - spec + type: object + type: object + fc: + properties: + fsType: + type: string + lun: + format: int32 + type: integer + readOnly: + type: boolean + targetWWNs: + items: + type: string + type: array + x-kubernetes-list-type: atomic + wwids: + items: + type: string + type: array + x-kubernetes-list-type: atomic + type: object + flexVolume: + properties: + driver: + type: string + fsType: + type: string + options: + additionalProperties: + type: string + type: object + readOnly: + type: boolean + secretRef: + properties: + name: + default: "" + type: string + type: object + x-kubernetes-map-type: atomic + required: + - driver + type: object + flocker: + properties: + datasetName: + type: string + datasetUUID: + type: string + type: object + gcePersistentDisk: + properties: + fsType: + type: string + partition: + format: int32 + type: integer + pdName: + type: string + readOnly: + type: boolean + required: + - pdName + type: object + gitRepo: + properties: + directory: + type: string + repository: + type: string + revision: + type: string + required: + - repository + type: object + glusterfs: + properties: + endpoints: + type: string + path: + type: string + readOnly: + type: boolean + required: + - endpoints + - path + type: object + hostPath: + properties: + path: + type: string + type: + type: string + required: + - path + type: object + image: + properties: + pullPolicy: + type: string + reference: + type: string + type: object + iscsi: + properties: + chapAuthDiscovery: + type: boolean + chapAuthSession: + type: boolean + fsType: + type: string + initiatorName: + type: string + iqn: + type: string + iscsiInterface: + default: default + type: string + lun: + format: int32 + type: integer + portals: + items: + type: string + type: array + x-kubernetes-list-type: atomic + readOnly: + type: boolean + secretRef: + properties: + name: + default: "" + type: string + type: object + x-kubernetes-map-type: atomic + targetPortal: + type: string + required: + - iqn + - lun + - targetPortal + type: object + name: + type: string + nfs: + properties: + path: + type: string + readOnly: + type: boolean + server: + type: string + required: + - path + - server + type: object + persistentVolumeClaim: + properties: + claimName: + type: string + readOnly: + type: boolean + required: + - claimName + type: object + photonPersistentDisk: + properties: + fsType: + type: string + pdID: + type: string + required: + - pdID + type: object + portworxVolume: + properties: + fsType: + type: string + readOnly: + type: boolean + volumeID: + type: string + required: + - volumeID + type: object + projected: + properties: + defaultMode: + format: int32 + type: integer + sources: + items: + properties: + clusterTrustBundle: + properties: + labelSelector: + properties: + matchExpressions: + items: + properties: + key: + type: string + operator: + type: string + values: + items: + type: string + type: array + x-kubernetes-list-type: atomic + required: + - key + - operator + type: object + type: array + x-kubernetes-list-type: atomic + matchLabels: + additionalProperties: + type: string + type: object + type: object + x-kubernetes-map-type: atomic + name: + type: string + optional: + type: boolean + path: + type: string + signerName: + type: string + required: + - path + type: object + configMap: + properties: + items: + items: + properties: + key: + type: string + mode: + format: int32 + type: integer + path: + type: string + required: + - key + - path + type: object + type: array + x-kubernetes-list-type: atomic + name: + default: "" + type: string + optional: + type: boolean + type: object + x-kubernetes-map-type: atomic + downwardAPI: + properties: + items: + items: + properties: + fieldRef: + properties: + apiVersion: + type: string + fieldPath: + type: string + required: + - fieldPath + type: object + x-kubernetes-map-type: atomic + mode: + format: int32 + type: integer + path: + type: string + resourceFieldRef: + properties: + containerName: + type: string + divisor: + anyOf: + - type: integer + - type: string + pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$ + x-kubernetes-int-or-string: true + resource: + type: string + required: + - resource + type: object + x-kubernetes-map-type: atomic + required: + - path + type: object + type: array + x-kubernetes-list-type: atomic + type: object + secret: + properties: + items: + items: + properties: + key: + type: string + mode: + format: int32 + type: integer + path: + type: string + required: + - key + - path + type: object + type: array + x-kubernetes-list-type: atomic + name: + default: "" + type: string + optional: + type: boolean + type: object + x-kubernetes-map-type: atomic + serviceAccountToken: + properties: + audience: + type: string + expirationSeconds: + format: int64 + type: integer + path: + type: string + required: + - path + type: object + type: object + type: array + x-kubernetes-list-type: atomic + type: object + quobyte: + properties: + group: + type: string + readOnly: + type: boolean + registry: + type: string + tenant: + type: string + user: + type: string + volume: + type: string + required: + - registry + - volume + type: object + rbd: + properties: + fsType: + type: string + image: + type: string + keyring: + default: /etc/ceph/keyring + type: string + monitors: + items: + type: string + type: array + x-kubernetes-list-type: atomic + pool: + default: rbd + type: string + readOnly: + type: boolean + secretRef: + properties: + name: + default: "" + type: string + type: object + x-kubernetes-map-type: atomic + user: + default: admin + type: string + required: + - image + - monitors + type: object + scaleIO: + properties: + fsType: + default: xfs + type: string + gateway: + type: string + protectionDomain: + type: string + readOnly: + type: boolean + secretRef: + properties: + name: + default: "" + type: string + type: object + x-kubernetes-map-type: atomic + sslEnabled: + type: boolean + storageMode: + default: ThinProvisioned + type: string + storagePool: + type: string + system: + type: string + volumeName: + type: string + required: + - gateway + - secretRef + - system + type: object + secret: + properties: + defaultMode: + format: int32 + type: integer + items: + items: + properties: + key: + type: string + mode: + format: int32 + type: integer + path: + type: string + required: + - key + - path + type: object + type: array + x-kubernetes-list-type: atomic + optional: + type: boolean + secretName: + type: string + type: object + storageos: + properties: + fsType: + type: string + readOnly: + type: boolean + secretRef: + properties: + name: + default: "" + type: string + type: object + x-kubernetes-map-type: atomic + volumeName: + type: string + volumeNamespace: + type: string + type: object + vsphereVolume: + properties: + fsType: + type: string + storagePolicyID: + type: string + storagePolicyName: + type: string + volumePath: + type: string + required: + - volumePath + type: object + required: + - name + type: object + type: array + type: object + preferredAddressFamily: + type: string + profile: + type: string + slotConfigurations: + items: + properties: + cardStr: + type: string + cardType: + maximum: 255 + type: integer + mdaStr: + items: + type: string + type: array + mdaType: + maximum: 255 + type: integer + sfmStr: + type: string + slotNumber: + maximum: 60 + type: integer + slotStr: + type: string + xiomStr: + items: + type: string + type: array + required: + - cardType + - slotNumber + type: object + maxItems: 20 + minItems: 1 + type: array + type: + type: string + version: + type: string + required: + - combinedmode + - kind + - name + - profile + - type + - version + type: object + type: array + required: + - nodes + type: object + version: + type: string + required: + - topology + type: object + status: + properties: + generations: + properties: + reconciled: + format: int64 + type: integer + type: object + name: + type: string + pods: + additionalProperties: + properties: + chassisName: + type: string + clusterName: + type: string + cxInfo: + properties: + endpoints: + items: + items: + type: string + type: array + type: array + type: object + image: + type: string + podIP: + type: string + required: + - chassisName + - clusterName + - image + - podIP + type: object + type: object + version: + type: string + required: + - pods + type: object + type: object +served: true +storage: true +subresources: + status: {} diff --git a/static/resources/25.8.2/defaultaggregateroutes.protocols.eda.nokia.com/v1.yaml b/static/resources/25.8.2/defaultaggregateroutes.protocols.eda.nokia.com/v1.yaml new file mode 100644 index 0000000..70ad6f1 --- /dev/null +++ b/static/resources/25.8.2/defaultaggregateroutes.protocols.eda.nokia.com/v1.yaml @@ -0,0 +1,58 @@ +name: v1 +schema: + openAPIV3Schema: + description: DefaultAggregateRoute is the Schema for the defaultaggregateroutes API + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + description: DefaultAggregateRoute allows the configuration of aggregate routes on a DefaultRouter. It includes specifying destination prefixes, the DefaultRouter, and settings for generating ICMP unreachable messages or blocking route advertisement. Additionally, it configures the aggregator’s IP address and ASN for efficient route management. + properties: + aggregatorASN: + description: Specifies the aggregator's ASN. + format: int32 + type: integer + aggregatorIP: + description: Specifies the aggregator's IP address. + type: string + defaultRouter: + description: Reference to a Default Router on which to configure the aggregate routes. If no Nodes are provided then the aggregate routes will be provisioned on all Nodes on which the Router is provisioned. + type: string + generateICMP: + description: When set to true the router generares ICMP unreachable messages for packets matching the aggregate route (and not a more specific route). + type: boolean + prefixes: + description: List of destination prefixes for the aggregate routes. + items: + type: string + type: array + summaryOnly: + description: When set to true the router blocks the advertisement of all contributing routes of this aggregate route in dynamic protocols such as BGP. + type: boolean + required: + - defaultRouter + - prefixes + type: object + status: + description: DefaultAggregateRouteStatus defines the observed state of DefaultAggregateRoute + type: object + type: object +served: true +storage: true +subresources: + status: {} diff --git a/static/resources/25.8.2/defaultaggregateroutes.protocols.eda.nokia.com/v1alpha1.yaml b/static/resources/25.8.2/defaultaggregateroutes.protocols.eda.nokia.com/v1alpha1.yaml new file mode 100644 index 0000000..b41b191 --- /dev/null +++ b/static/resources/25.8.2/defaultaggregateroutes.protocols.eda.nokia.com/v1alpha1.yaml @@ -0,0 +1,60 @@ +deprecated: true +deprecationWarning: This version is deprecated and will no longer be supported in the next version. +name: v1alpha1 +schema: + openAPIV3Schema: + description: DefaultAggregateRoute is the Schema for the defaultaggregateroutes API + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + description: DefaultAggregateRoute allows the configuration of aggregate routes on a DefaultRouter. It includes specifying destination prefixes, the DefaultRouter, and settings for generating ICMP unreachable messages or blocking route advertisement. Additionally, it configures the aggregator’s IP address and ASN for efficient route management. + properties: + aggregatorASN: + description: Specifies the aggregator's ASN. + format: int32 + type: integer + aggregatorIP: + description: Specifies the aggregator's IP address. + type: string + defaultRouter: + description: Reference to a Default Router on which to configure the aggregate routes. If no Nodes are provided then the aggregate routes will be provisioned on all Nodes on which the Router is provisioned. + type: string + generateICMP: + description: When set to true the router generares ICMP unreachable messages for packets matching the aggregate route (and not a more specific route). + type: boolean + prefixes: + description: List of destination prefixes for the aggregate routes. + items: + type: string + type: array + summaryOnly: + description: When set to true the router blocks the advertisement of all contributing routes of this aggregate route in dynamic protocols such as BGP. + type: boolean + required: + - defaultRouter + - prefixes + type: object + status: + description: DefaultAggregateRouteStatus defines the observed state of DefaultAggregateRoute + type: object + type: object +served: true +storage: false +subresources: + status: {} diff --git a/static/resources/25.8.2/defaultbgpgroupdeployments.protocols.eda.nokia.com/v1.yaml b/static/resources/25.8.2/defaultbgpgroupdeployments.protocols.eda.nokia.com/v1.yaml new file mode 100644 index 0000000..ceb6520 --- /dev/null +++ b/static/resources/25.8.2/defaultbgpgroupdeployments.protocols.eda.nokia.com/v1.yaml @@ -0,0 +1,43 @@ +name: v1 +schema: + openAPIV3Schema: + description: DefaultBGPGroupDeployment is the Schema for the defaultbgpgroupdeployments API + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + description: DefaultBGPGroupDeploymentSpec defines the desired state of DefaultBGPGroupDeployment + properties: + defaultBGPGroup: + description: Reference to a DefaultBgpGroup + type: string + node: + description: Reference to a Node on which to push the BgpGroup + type: string + required: + - defaultBGPGroup + - node + type: object + status: + description: DefaultBGPGroupDeploymentStatus defines the observed state of DefaultBGPGroupDeployment + type: object + type: object +served: true +storage: true +subresources: + status: {} diff --git a/static/resources/25.8.2/defaultbgpgroupdeployments.protocols.eda.nokia.com/v1alpha1.yaml b/static/resources/25.8.2/defaultbgpgroupdeployments.protocols.eda.nokia.com/v1alpha1.yaml new file mode 100644 index 0000000..1f49bf6 --- /dev/null +++ b/static/resources/25.8.2/defaultbgpgroupdeployments.protocols.eda.nokia.com/v1alpha1.yaml @@ -0,0 +1,45 @@ +deprecated: true +deprecationWarning: This version is deprecated and will no longer be supported in the next version. +name: v1alpha1 +schema: + openAPIV3Schema: + description: DefaultBGPGroupDeployment is the Schema for the defaultbgpgroupdeployments API + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + description: DefaultBGPGroupDeploymentSpec defines the desired state of DefaultBGPGroupDeployment + properties: + defaultBGPGroup: + description: Reference to a DefaultBgpGroup + type: string + node: + description: Reference to a Node on which to push the BgpGroup + type: string + required: + - defaultBGPGroup + - node + type: object + status: + description: DefaultBGPGroupDeploymentStatus defines the observed state of DefaultBGPGroupDeployment + type: object + type: object +served: true +storage: false +subresources: + status: {} diff --git a/static/resources/25.8.2/defaultbgpgroups.protocols.eda.nokia.com/v1.yaml b/static/resources/25.8.2/defaultbgpgroups.protocols.eda.nokia.com/v1.yaml new file mode 100644 index 0000000..052e087 --- /dev/null +++ b/static/resources/25.8.2/defaultbgpgroups.protocols.eda.nokia.com/v1.yaml @@ -0,0 +1,361 @@ +additionalPrinterColumns: + - jsonPath: .status.lastChange + name: Last Change + type: date + - jsonPath: .status.operationalState + name: Operational State + type: string +name: v1 +schema: + openAPIV3Schema: + description: DefaultBGPGroup is the Schema for the defaultbgpgroups API + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + description: The DefaultBGPGroup enables centralized management of BGP peer configurations within a DefaultRouter. This resource allows setting a description, common BGP settings, and peer-specific configurations, simplifying the consistent application of policies across multiple peers. It also includes transport settings, such as local TCP address configuration, passive mode, and TCP MSS. type DefaultBGPGroupSpec struct { + properties: + asPathOptions: + description: AS Path Options + properties: + allowOwnAS: + default: 0 + description: The maximum number of times the global AS number or a local AS number of the BGP instance can appear in any received AS_PATH before it is considered a loop and considered invalid. + maximum: 255 + minimum: 0 + type: integer + removePrivateAS: + description: Options for removing private AS numbers (2-byte and 4-byte) from the advertised AS path towards all peers. + properties: + ignorePeerAS: + default: false + description: If set to true then do not delete or replace a private AS number that is the same as the peer AS number. + type: boolean + leadingOnly: + default: false + description: If set to true then only delete or replace private AS numbers that appear before the first occurrence of a non-private ASN in the sequence of most recent ASNs in the AS path. + type: boolean + removePrivateASMode: + default: DISABLED + description: The method by which private AS numbers are removed from the advertised AS_PATH attribute. + enum: + - DISABLED + - REPLACE + - DELETE + type: string + required: + - ignorePeerAS + - leadingOnly + - removePrivateASMode + type: object + required: + - allowOwnAS + type: object + bfd: + description: Enable or disable Bi-forward Forwarding Detection (BFD) with fast failover. + type: boolean + client: + description: When set to true, all configured and dynamic BGP peers are considered RR clients. + type: boolean + clusterID: + description: Enables route reflect client and sets the cluster ID. + type: string + description: + description: Sets the description on the BGP group. + type: string + exportPolicy: + description: Reference to a Policy CR that will be used to filter routes advertised to peers. + items: + type: string + type: array + grStaleRouteTime: + description: Enables Graceful Restart on the peer and sets the stale route time. + maximum: 3600 + minimum: 1 + type: integer + importPolicy: + description: Reference to a Policy CR that will be used to filter routes received from peers. + items: + type: string + type: array + ipv4Unicast: + description: Parameters relating to the IPv4 unicast AFI/SAFI. + properties: + advertiseIPV6NextHops: + description: Enables advertisement of IPv4 Unicast routes with IPv6 next-hops to peers. + type: boolean + enabled: + description: Enables the IPv4 unicast AFISAFI. + type: boolean + prefixLimit: + properties: + prefixLimitAccepted: + properties: + logOnly: + description: Defines the action to take when the maximum number of prefixes is exceeded. Session is reset if set to false, otherwise only a warning is logged. + type: boolean + maxReceivedRoutes: + description: Maximum number of prefixes allowed to be received from the neighbor, counting only accepted routes. + format: int32 + maximum: 4294967295 + minimum: 1 + type: integer + warningThreshold: + description: A percentage of the maximum number of prefixes that can be accepted before a warning is logged. + maximum: 100 + minimum: 1 + type: integer + type: object + prefixLimitReceived: + properties: + logOnly: + description: Defines the action to take when the maximum number of prefixes is exceeded. Session is reset if set to false, otherwise only a warning is logged. + type: boolean + maxReceivedRoutes: + description: Maximum number of prefixes allowed to be received from the neighbor, counting all routes (accepted and rejected by import policies). + format: int32 + maximum: 4294967295 + minimum: 1 + type: integer + warningThreshold: + description: A percentage of the maximum number of prefixes that can be received before a warning is logged. + maximum: 100 + minimum: 1 + type: integer + type: object + type: object + receiveIPV6NextHops: + description: Enables the advertisement of the RFC 5549 capability to receive IPv4 routes with IPv6 next-hops. + type: boolean + type: object + ipv6Unicast: + description: Parameters relating to the IPv6 unicast AFI/SAFI. + properties: + enabled: + description: Enables the IPv6 unicast AFISAFI + type: boolean + prefixLimit: + properties: + prefixLimitAccepted: + properties: + logOnly: + description: Defines the action to take when the maximum number of prefixes is exceeded. Session is reset if set to false, otherwise only a warning is logged. + type: boolean + maxReceivedRoutes: + description: Maximum number of prefixes allowed to be received from the neighbor, counting only accepted routes. + format: int32 + maximum: 4294967295 + minimum: 1 + type: integer + warningThreshold: + description: A percentage of the maximum number of prefixes that can be accepted before a warning is logged. + maximum: 100 + minimum: 1 + type: integer + type: object + prefixLimitReceived: + properties: + logOnly: + description: Defines the action to take when the maximum number of prefixes is exceeded. Session is reset if set to false, otherwise only a warning is logged. + type: boolean + maxReceivedRoutes: + description: Maximum number of prefixes allowed to be received from the neighbor, counting all routes (accepted and rejected by import policies). + format: int32 + maximum: 4294967295 + minimum: 1 + type: integer + warningThreshold: + description: A percentage of the maximum number of prefixes that can be received before a warning is logged. + maximum: 100 + minimum: 1 + type: integer + type: object + type: object + type: object + keychain: + description: Reference to a Keychain resource that will be used for authentication with the BGP peer. + type: string + l2VPNEVPN: + description: Parameters relating to the EVPN AFI/SAFI. + properties: + advertiseIPV6NextHops: + description: Enables advertisement of EVPN routes with IPv6 next-hops to peers. + type: boolean + enabled: + description: Enables the L2VPN EVPN AFISAFI. + type: boolean + prefixLimit: + properties: + prefixLimitAccepted: + properties: + logOnly: + description: Defines the action to take when the maximum number of prefixes is exceeded. Session is reset if set to false, otherwise only a warning is logged. + type: boolean + maxReceivedRoutes: + description: Maximum number of prefixes allowed to be received from the neighbor, counting only accepted routes. + format: int32 + maximum: 4294967295 + minimum: 1 + type: integer + warningThreshold: + description: A percentage of the maximum number of prefixes that can be accepted before a warning is logged. + maximum: 100 + minimum: 1 + type: integer + type: object + prefixLimitReceived: + properties: + logOnly: + description: Defines the action to take when the maximum number of prefixes is exceeded. Session is reset if set to false, otherwise only a warning is logged. + type: boolean + maxReceivedRoutes: + description: Maximum number of prefixes allowed to be received from the neighbor, counting all routes (accepted and rejected by import policies). + format: int32 + maximum: 4294967295 + minimum: 1 + type: integer + warningThreshold: + description: A percentage of the maximum number of prefixes that can be received before a warning is logged. + maximum: 100 + minimum: 1 + type: integer + type: object + type: object + type: object + localAS: + description: The local autonomous system number advertised to peers. + properties: + autonomousSystem: + description: Local Autonomous System number. + maximum: 4294967295 + minimum: 1 + type: integer + prependGlobalAS: + description: When set to true, the global ASN value is prepended to the AS path in outbound routes towards each BGP peer. + type: boolean + prependLocalAS: + description: When set to true, the local AS value is prepended to the AS path of inbound routes from each EBGP peer. + type: boolean + required: + - autonomousSystem + type: object + localPreference: + description: Local Preference attribute added to received routes from the BGP peers, also sets local preference for generated routes. + maximum: 4294967295 + minimum: 0 + type: integer + multiHopMaxHop: + description: Enable multihop for eBGP peers and sets the maximum number of hops allowed. + maximum: 255 + minimum: 1 + type: integer + nextHopSelf: + description: When set to true, the next-hop in all IPv4-unicast, IPv6-unicast and EVPN BGP routes advertised to the peer is set to the local-address. + type: boolean + peerAS: + description: The autonomous system number expected from peers. + properties: + autonomousSystem: + description: Local Autonomous System number. + maximum: 4294967295 + minimum: 1 + type: integer + required: + - autonomousSystem + type: object + sendCommunityLarge: + description: When false, all large (12 byte) BGP communities from all outbound routes advertised to the peer are stripped. + type: boolean + sendCommunityStandard: + description: When false, all standard (4 byte) communities from all outbound routes advertised to the peer are stripped. + type: boolean + sendDefaultRoute: + description: Options for controlling the generation of default routes towards BGP peers. + properties: + addressFamily: + description: Enables the sending of a synthetically generated default IPv4 or IPV6 route to each peer. + items: + enum: + - IPV4-UNICAST + - IPV6-UNICAST + type: string + type: array + exportPolicy: + description: Reference to a Policy that should be applied to the advertised default routes, in order to set their attributes to non-default values. + type: string + required: + - addressFamily + type: object + timers: + description: Timer configurations + properties: + connectRetry: + description: The time interval in seconds between successive attempts to establish a session with a peer. + maximum: 65535 + minimum: 1 + type: integer + holdTime: + description: The hold-time interval in seconds that the router proposes to the peer in its OPEN message. + maximum: 65535 + minimum: 0 + type: integer + keepAlive: + description: The interval in seconds between successive keepalive messages sent to the peer. + maximum: 21845 + minimum: 0 + type: integer + minimumAdvertisementInterval: + description: The value assigned to the MinRouteAdvertisementIntervalTimer of RFC 4271, for both EBGP and IBGP sessions. + maximum: 255 + minimum: 1 + type: integer + type: object + type: object + status: + description: DefaultBGPGroupStatus defines the observed state of DefaultBGPGroup. + properties: + health: + description: Indicates the health score of the BGP group. + type: integer + healthScoreReason: + description: Indicates the reason for the health score. + type: string + lastChange: + description: The time when the state of the resource last changed. + type: string + numPeers: + description: Number of configured BGP peers within the BGP Group. + format: int32 + type: integer + numPeersOperDown: + description: Number of configured BGP peers which have an Operational State of down within the BGP Group. + format: int32 + type: integer + numPeersUnknown: + description: Number of configured BGP peers within the BGP Group which cannot be reached by npp. + format: int32 + type: integer + operationalState: + description: Operational state of the BGP group. + type: string + type: object + type: object +served: true +storage: true +subresources: + status: {} diff --git a/static/resources/25.8.2/defaultbgpgroups.protocols.eda.nokia.com/v1alpha1.yaml b/static/resources/25.8.2/defaultbgpgroups.protocols.eda.nokia.com/v1alpha1.yaml new file mode 100644 index 0000000..ad6e6e4 --- /dev/null +++ b/static/resources/25.8.2/defaultbgpgroups.protocols.eda.nokia.com/v1alpha1.yaml @@ -0,0 +1,267 @@ +additionalPrinterColumns: + - jsonPath: .status.lastChange + name: Last Change + type: date + - jsonPath: .status.operationalState + name: Operational State + type: string +deprecated: true +deprecationWarning: This version is deprecated and will no longer be supported in the next version. +name: v1alpha1 +schema: + openAPIV3Schema: + description: DefaultBGPGroup is the Schema for the defaultbgpgroups API + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + description: The DefaultBGPGroup enables centralized management of BGP peer configurations within a DefaultRouter. This resource allows setting a description, common BGP settings, and peer-specific configurations, simplifying the consistent application of policies across multiple peers. It also includes transport settings, such as local TCP address configuration, passive mode, and TCP MSS. type DefaultBGPGroupSpec struct { + properties: + asPathOptions: + description: AS Path Options + properties: + allowOwnAS: + default: 0 + description: The maximum number of times the global AS number or a local AS number of the BGP instance can appear in any received AS_PATH before it is considered a loop and considered invalid. + maximum: 255 + minimum: 0 + type: integer + removePrivateAS: + description: Options for removing private AS numbers (2-byte and 4-byte) from the advertised AS path towards all peers. + properties: + ignorePeerAS: + default: false + description: If set to true then do not delete or replace a private AS number that is the same as the peer AS number. + type: boolean + leadingOnly: + default: false + description: If set to true then only delete or replace private AS numbers that appear before the first occurrence of a non-private ASN in the sequence of most recent ASNs in the AS path. + type: boolean + removePrivateASMode: + default: DISABLED + description: The method by which private AS numbers are removed from the advertised AS_PATH attribute. + enum: + - DISABLED + - REPLACE + - DELETE + type: string + required: + - ignorePeerAS + - leadingOnly + - removePrivateASMode + type: object + required: + - allowOwnAS + type: object + bfd: + description: Enable or disable Bi-forward Forwarding Detection (BFD) with fast failover. + type: boolean + client: + description: When set to true, all configured and dynamic BGP peers are considered RR clients. + type: boolean + clusterID: + description: Enables route reflect client and sets the cluster ID. + type: string + description: + description: Sets the description on the BGP group. + type: string + exportPolicy: + description: Reference to a Policy CR that will be used to filter routes advertised to peers. + items: + type: string + type: array + grStaleRouteTime: + description: Enables Graceful Restart on the peer and sets the stale route time. + maximum: 3600 + minimum: 1 + type: integer + importPolicy: + description: Reference to a Policy CR that will be used to filter routes received from peers. + items: + type: string + type: array + ipv4Unicast: + description: Parameters relating to the IPv4 unicast AFI/SAFI. + properties: + advertiseIPV6NextHops: + description: Enables advertisement of IPv4 Unicast routes with IPv6 next-hops to peers. + type: boolean + enabled: + description: Enables the IPv4 unicast AFISAFI. + type: boolean + maxReceivedRoutes: + description: Maximum number of IPv4 Unicast routes that will be accepted from the neighbor, counting routes accepted and rejected by import policies. + maximum: 4294967295 + minimum: 1 + type: integer + receiveIPV6NextHops: + description: Enables the advertisement of the RFC 5549 capability to receive IPv4 routes with IPv6 next-hops. + type: boolean + type: object + ipv6Unicast: + description: Parameters relating to the IPv6 unicast AFI/SAFI. + properties: + enabled: + description: Enables the IPv6 unicast AFISAFI + type: boolean + maxReceivedRoutes: + description: Maximum number of IPv6 Unicast routes that will be accepted from the neighbor, counting routes accepted and rejected by import policies. + maximum: 4294967295 + minimum: 1 + type: integer + type: object + keychain: + description: Reference to a Keychain resource that will be used for authentication with the BGP peer. + type: string + l2VPNEVPN: + description: Parameters relating to the EVPN AFI/SAFI. + properties: + advertiseIPV6NextHops: + description: Enables advertisement of EVPN routes with IPv6 next-hops to peers. + type: boolean + enabled: + description: Enables the L2VPN EVPN AFISAFI. + type: boolean + maxReceivedRoutes: + description: Maximum number of EVPN routes that will be accepted from the neighbor, counting routes accepted and rejected by import policies. + maximum: 4294967295 + minimum: 1 + type: integer + type: object + localAS: + description: The local autonomous system number advertised to peers. + properties: + autonomousSystem: + description: Local Autonomous System number. + maximum: 4294967295 + minimum: 1 + type: integer + prependGlobalAS: + description: When set to true, the global ASN value is prepended to the AS path in outbound routes towards each BGP peer. + type: boolean + prependLocalAS: + description: When set to true, the local AS value is prepended to the AS path of inbound routes from each EBGP peer. + type: boolean + required: + - autonomousSystem + type: object + localPreference: + description: Local Preference attribute added to received routes from the BGP peers, also sets local preference for generated routes. + maximum: 4294967295 + minimum: 0 + type: integer + multiHopMaxHop: + description: Enable multihop for eBGP peers and sets the maximum number of hops allowed. + maximum: 255 + minimum: 1 + type: integer + nextHopSelf: + description: When set to true, the next-hop in all IPv4-unicast, IPv6-unicast and EVPN BGP routes advertised to the peer is set to the local-address. + type: boolean + peerAS: + description: The autonomous system number expected from peers. + properties: + autonomousSystem: + description: Local Autonomous System number. + maximum: 4294967295 + minimum: 1 + type: integer + required: + - autonomousSystem + type: object + sendCommunityLarge: + description: When false, all large (12 byte) BGP communities from all outbound routes advertised to the peer are stripped. + type: boolean + sendCommunityStandard: + description: When false, all standard (4 byte) communities from all outbound routes advertised to the peer are stripped. + type: boolean + sendDefaultRoute: + description: Options for controlling the generation of default routes towards BGP peers. + properties: + addressFamily: + description: Enables the sending of a synthetically generated default IPv4 or IPV6 route to each peer. + items: + enum: + - IPV4-UNICAST + - IPV6-UNICAST + type: string + type: array + exportPolicy: + description: Reference to a Policy that should be applied to the advertised default routes, in order to set their attributes to non-default values. + type: string + required: + - addressFamily + type: object + timers: + description: Timer configurations + properties: + connectRetry: + description: The time interval in seconds between successive attempts to establish a session with a peer. + maximum: 65535 + minimum: 1 + type: integer + holdTime: + description: The hold-time interval in seconds that the router proposes to the peer in its OPEN message. + maximum: 65535 + minimum: 0 + type: integer + keepAlive: + description: The interval in seconds between successive keepalive messages sent to the peer. + maximum: 21845 + minimum: 0 + type: integer + minimumAdvertisementInterval: + description: The value assigned to the MinRouteAdvertisementIntervalTimer of RFC 4271, for both EBGP and IBGP sessions. + maximum: 255 + minimum: 1 + type: integer + type: object + type: object + status: + description: DefaultBGPGroupStatus defines the observed state of DefaultBGPGroup. + properties: + health: + description: Indicates the health score of the BGP group. + type: integer + healthScoreReason: + description: Indicates the reason for the health score. + type: string + lastChange: + description: The time when the state of the resource last changed. + type: string + numPeers: + description: Number of configured BGP peers within the BGP Group. + format: int32 + type: integer + numPeersOperDown: + description: Number of configured BGP peers which have an Operational State of down within the BGP Group. + format: int32 + type: integer + numPeersUnknown: + description: Number of configured BGP peers within the BGP Group which cannot be reached by npp. + format: int32 + type: integer + operationalState: + description: Operational state of the BGP group. + type: string + type: object + type: object +served: true +storage: false +subresources: + status: {} diff --git a/static/resources/25.8.2/defaultbgppeers.protocols.eda.nokia.com/v1.yaml b/static/resources/25.8.2/defaultbgppeers.protocols.eda.nokia.com/v1.yaml new file mode 100644 index 0000000..61ddde7 --- /dev/null +++ b/static/resources/25.8.2/defaultbgppeers.protocols.eda.nokia.com/v1.yaml @@ -0,0 +1,419 @@ +additionalPrinterColumns: + - jsonPath: .status.sessionState + name: Session State + type: string + - jsonPath: .status.lastChange + name: Last Change + type: date + - jsonPath: .status.enabled + name: Enabled + type: boolean + - jsonPath: .status.operationalState + name: Operational State + type: string + - jsonPath: .status.peerAS + name: PeerAS + type: integer +name: v1 +schema: + openAPIV3Schema: + description: DefaultBGPPeer is the Schema for the defaultbgppeers API + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + description: DefaultBGPPeer enables the configuration of BGP sessions within a DefaultRouter. It allows specifying a description, a DefaultInterface reference, and the peer IP address. The resource also supports dynamic neighbors, common BGP settings, and peer-specific configurations. + properties: + asPathOptions: + description: AS Path Options + properties: + allowOwnAS: + default: 0 + description: The maximum number of times the global AS number or a local AS number of the BGP instance can appear in any received AS_PATH before it is considered a loop and considered invalid. + maximum: 255 + minimum: 0 + type: integer + removePrivateAS: + description: Options for removing private AS numbers (2-byte and 4-byte) from the advertised AS path towards all peers. + properties: + ignorePeerAS: + default: false + description: If set to true then do not delete or replace a private AS number that is the same as the peer AS number. + type: boolean + leadingOnly: + default: false + description: If set to true then only delete or replace private AS numbers that appear before the first occurrence of a non-private ASN in the sequence of most recent ASNs in the AS path. + type: boolean + removePrivateASMode: + default: DISABLED + description: The method by which private AS numbers are removed from the advertised AS_PATH attribute. + enum: + - DISABLED + - REPLACE + - DELETE + type: string + required: + - ignorePeerAS + - leadingOnly + - removePrivateASMode + type: object + required: + - allowOwnAS + type: object + bfd: + description: Enable or disable Bi-forward Forwarding Detection (BFD) with fast failover. + type: boolean + client: + description: When set to true, all configured and dynamic BGP peers are considered RR clients. + type: boolean + clusterID: + description: Enables route reflect client and sets the cluster ID. + type: string + description: + description: Sets the description on the BGP peer. + type: string + dynamicNeighbor: + default: false + description: When set to true the DefaultInterface is added to the dynamic-neighbor list for dynamic peering. + type: boolean + dynamicNeighborAllowedPeerAS: + description: The autonomous system numbers allowed from peers if dynamic peering is enabled. + items: + type: integer + type: array + exportPolicy: + description: Reference to a Policy CR that will be used to filter routes advertised to peers. + items: + type: string + type: array + grStaleRouteTime: + description: Enables Graceful Restart on the peer and sets the stale route time. + maximum: 3600 + minimum: 1 + type: integer + group: + description: Reference to a DefaultBGPGroup. + type: string + importPolicy: + description: Reference to a Policy CR that will be used to filter routes received from peers. + items: + type: string + type: array + interface: + description: Reference to either a DefaultInterface or SystemInterface whose IP will be used as a source IP for the BGP session. + type: string + interfaceKind: + description: Reference to a the Kind of interface whose IP will be used as a source IP for the BGP session. + enum: + - DEFAULTINTERFACE + - SYSTEMINTERFACE + type: string + ipv4Unicast: + description: Parameters relating to the IPv4 unicast AFI/SAFI. + properties: + advertiseIPV6NextHops: + description: Enables advertisement of IPv4 Unicast routes with IPv6 next-hops to peers. + type: boolean + enabled: + description: Enables the IPv4 unicast AFISAFI. + type: boolean + prefixLimit: + properties: + prefixLimitAccepted: + properties: + logOnly: + description: Defines the action to take when the maximum number of prefixes is exceeded. Session is reset if set to false, otherwise only a warning is logged. + type: boolean + maxReceivedRoutes: + description: Maximum number of prefixes allowed to be received from the neighbor, counting only accepted routes. + format: int32 + maximum: 4294967295 + minimum: 1 + type: integer + warningThreshold: + description: A percentage of the maximum number of prefixes that can be accepted before a warning is logged. + maximum: 100 + minimum: 1 + type: integer + type: object + prefixLimitReceived: + properties: + logOnly: + description: Defines the action to take when the maximum number of prefixes is exceeded. Session is reset if set to false, otherwise only a warning is logged. + type: boolean + maxReceivedRoutes: + description: Maximum number of prefixes allowed to be received from the neighbor, counting all routes (accepted and rejected by import policies). + format: int32 + maximum: 4294967295 + minimum: 1 + type: integer + warningThreshold: + description: A percentage of the maximum number of prefixes that can be received before a warning is logged. + maximum: 100 + minimum: 1 + type: integer + type: object + type: object + receiveIPV6NextHops: + description: Enables the advertisement of the RFC 5549 capability to receive IPv4 routes with IPv6 next-hops. + type: boolean + type: object + ipv6Unicast: + description: Parameters relating to the IPv6 unicast AFI/SAFI. + properties: + enabled: + description: Enables the IPv6 unicast AFISAFI + type: boolean + prefixLimit: + properties: + prefixLimitAccepted: + properties: + logOnly: + description: Defines the action to take when the maximum number of prefixes is exceeded. Session is reset if set to false, otherwise only a warning is logged. + type: boolean + maxReceivedRoutes: + description: Maximum number of prefixes allowed to be received from the neighbor, counting only accepted routes. + format: int32 + maximum: 4294967295 + minimum: 1 + type: integer + warningThreshold: + description: A percentage of the maximum number of prefixes that can be accepted before a warning is logged. + maximum: 100 + minimum: 1 + type: integer + type: object + prefixLimitReceived: + properties: + logOnly: + description: Defines the action to take when the maximum number of prefixes is exceeded. Session is reset if set to false, otherwise only a warning is logged. + type: boolean + maxReceivedRoutes: + description: Maximum number of prefixes allowed to be received from the neighbor, counting all routes (accepted and rejected by import policies). + format: int32 + maximum: 4294967295 + minimum: 1 + type: integer + warningThreshold: + description: A percentage of the maximum number of prefixes that can be received before a warning is logged. + maximum: 100 + minimum: 1 + type: integer + type: object + type: object + type: object + keychain: + description: Reference to a Keychain resource that will be used for authentication with the BGP peer. + type: string + l2VPNEVPN: + description: Parameters relating to the EVPN AFI/SAFI. + properties: + advertiseIPV6NextHops: + description: Enables advertisement of EVPN routes with IPv6 next-hops to peers. + type: boolean + enabled: + description: Enables the L2VPN EVPN AFISAFI. + type: boolean + prefixLimit: + properties: + prefixLimitAccepted: + properties: + logOnly: + description: Defines the action to take when the maximum number of prefixes is exceeded. Session is reset if set to false, otherwise only a warning is logged. + type: boolean + maxReceivedRoutes: + description: Maximum number of prefixes allowed to be received from the neighbor, counting only accepted routes. + format: int32 + maximum: 4294967295 + minimum: 1 + type: integer + warningThreshold: + description: A percentage of the maximum number of prefixes that can be accepted before a warning is logged. + maximum: 100 + minimum: 1 + type: integer + type: object + prefixLimitReceived: + properties: + logOnly: + description: Defines the action to take when the maximum number of prefixes is exceeded. Session is reset if set to false, otherwise only a warning is logged. + type: boolean + maxReceivedRoutes: + description: Maximum number of prefixes allowed to be received from the neighbor, counting all routes (accepted and rejected by import policies). + format: int32 + maximum: 4294967295 + minimum: 1 + type: integer + warningThreshold: + description: A percentage of the maximum number of prefixes that can be received before a warning is logged. + maximum: 100 + minimum: 1 + type: integer + type: object + type: object + type: object + localAS: + description: The local autonomous system number advertised to peers. + properties: + autonomousSystem: + description: Local Autonomous System number. + maximum: 4294967295 + minimum: 1 + type: integer + prependGlobalAS: + description: When set to true, the global ASN value is prepended to the AS path in outbound routes towards each BGP peer. + type: boolean + prependLocalAS: + description: When set to true, the local AS value is prepended to the AS path of inbound routes from each EBGP peer. + type: boolean + required: + - autonomousSystem + type: object + localPreference: + description: Local Preference attribute added to received routes from the BGP peers, also sets local preference for generated routes. + maximum: 4294967295 + minimum: 0 + type: integer + multiHopMaxHop: + description: Enable multihop for eBGP peers and sets the maximum number of hops allowed. + maximum: 255 + minimum: 1 + type: integer + nextHopSelf: + description: When set to true, the next-hop in all IPv4-unicast, IPv6-unicast and EVPN BGP routes advertised to the peer is set to the local-address. + type: boolean + peerAS: + description: The autonomous system number expected from peers. + properties: + autonomousSystem: + description: Local Autonomous System number. + maximum: 4294967295 + minimum: 1 + type: integer + required: + - autonomousSystem + type: object + peerIP: + description: Peer IP to which the peering session will be established. There cannot be both a PeerIp and PeerDefaultInterface property set. + type: string + peerInterface: + description: Reference to a DefaultInterface or SystemInterface resource to which the peering session will be established. There cannot be both a PeerIp and PeerDefaultInterface property set. + type: string + peerInterfaceKind: + description: Reference to a the Kind of interface to which to peer to. + enum: + - DEFAULTINTERFACE + - SYSTEMINTERFACE + type: string + sendCommunityLarge: + description: When false, all large (12 byte) BGP communities from all outbound routes advertised to the peer are stripped. + type: boolean + sendCommunityStandard: + description: When false, all standard (4 byte) communities from all outbound routes advertised to the peer are stripped. + type: boolean + sendDefaultRoute: + description: Options for controlling the generation of default routes towards BGP peers. + properties: + addressFamily: + description: Enables the sending of a synthetically generated default IPv4 or IPV6 route to each peer. + items: + enum: + - IPV4-UNICAST + - IPV6-UNICAST + type: string + type: array + exportPolicy: + description: Reference to a Policy that should be applied to the advertised default routes, in order to set their attributes to non-default values. + type: string + required: + - addressFamily + type: object + timers: + description: Timer configurations + properties: + connectRetry: + description: The time interval in seconds between successive attempts to establish a session with a peer. + maximum: 65535 + minimum: 1 + type: integer + holdTime: + description: The hold-time interval in seconds that the router proposes to the peer in its OPEN message. + maximum: 65535 + minimum: 0 + type: integer + keepAlive: + description: The interval in seconds between successive keepalive messages sent to the peer. + maximum: 21845 + minimum: 0 + type: integer + minimumAdvertisementInterval: + description: The value assigned to the MinRouteAdvertisementIntervalTimer of RFC 4271, for both EBGP and IBGP sessions. + maximum: 255 + minimum: 1 + type: integer + type: object + required: + - group + - interface + - interfaceKind + type: object + status: + description: DefaultBGPPeerStatus defines the observed state of DefaultBGPPeer + properties: + enabled: + description: Indicated whether the BGP Peer is administratively enabled. + type: boolean + health: + description: Indicates the health score of the BGP peer. + type: integer + healthScoreReason: + description: Indicates the reason for the health score. + type: string + lastChange: + description: The time when the state of the resource last changed. + type: string + lastEvent: + description: Last event of the BGP peer. + type: string + lastState: + description: Last state of the BGP peer. + type: string + negotiatedHoldTime: + description: Hold time negotiated with the BGP peer. + type: integer + negotiatedKeepaliveInterval: + description: Keepalive interval negotiated with the BGP peer. + type: integer + operationalState: + description: Operational state of the BGP peer + type: string + peerAS: + description: Peer AS of the BGP peer. + type: integer + sessionState: + description: The state of the BGP session. + type: string + underMaintenance: + description: Indicates if the BGP peer is under maintenance. + type: boolean + type: object + type: object +served: true +storage: true +subresources: + status: {} diff --git a/static/resources/25.8.2/defaultbgppeers.protocols.eda.nokia.com/v1alpha1.yaml b/static/resources/25.8.2/defaultbgppeers.protocols.eda.nokia.com/v1alpha1.yaml new file mode 100644 index 0000000..fbddd9c --- /dev/null +++ b/static/resources/25.8.2/defaultbgppeers.protocols.eda.nokia.com/v1alpha1.yaml @@ -0,0 +1,325 @@ +additionalPrinterColumns: + - jsonPath: .status.sessionState + name: Session State + type: string + - jsonPath: .status.lastChange + name: Last Change + type: date + - jsonPath: .status.enabled + name: Enabled + type: boolean + - jsonPath: .status.operationalState + name: Operational State + type: string + - jsonPath: .status.peerAS + name: PeerAS + type: integer +deprecated: true +deprecationWarning: This version is deprecated and will no longer be supported in the next version. +name: v1alpha1 +schema: + openAPIV3Schema: + description: DefaultBGPPeer is the Schema for the defaultbgppeers API + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + description: DefaultBGPPeer enables the configuration of BGP sessions within a DefaultRouter. It allows specifying a description, a DefaultInterface reference, and the peer IP address. The resource also supports dynamic neighbors, common BGP settings, and peer-specific configurations. + properties: + asPathOptions: + description: AS Path Options + properties: + allowOwnAS: + default: 0 + description: The maximum number of times the global AS number or a local AS number of the BGP instance can appear in any received AS_PATH before it is considered a loop and considered invalid. + maximum: 255 + minimum: 0 + type: integer + removePrivateAS: + description: Options for removing private AS numbers (2-byte and 4-byte) from the advertised AS path towards all peers. + properties: + ignorePeerAS: + default: false + description: If set to true then do not delete or replace a private AS number that is the same as the peer AS number. + type: boolean + leadingOnly: + default: false + description: If set to true then only delete or replace private AS numbers that appear before the first occurrence of a non-private ASN in the sequence of most recent ASNs in the AS path. + type: boolean + removePrivateASMode: + default: DISABLED + description: The method by which private AS numbers are removed from the advertised AS_PATH attribute. + enum: + - DISABLED + - REPLACE + - DELETE + type: string + required: + - ignorePeerAS + - leadingOnly + - removePrivateASMode + type: object + required: + - allowOwnAS + type: object + bfd: + description: Enable or disable Bi-forward Forwarding Detection (BFD) with fast failover. + type: boolean + client: + description: When set to true, all configured and dynamic BGP peers are considered RR clients. + type: boolean + clusterID: + description: Enables route reflect client and sets the cluster ID. + type: string + description: + description: Sets the description on the BGP peer. + type: string + dynamicNeighbor: + default: false + description: When set to true the DefaultInterface is added to the dynamic-neighbor list for dynamic peering. + type: boolean + dynamicNeighborAllowedPeerAS: + description: The autonomous system numbers allowed from peers if dynamic peering is enabled. + items: + type: integer + type: array + exportPolicy: + description: Reference to a Policy CR that will be used to filter routes advertised to peers. + items: + type: string + type: array + grStaleRouteTime: + description: Enables Graceful Restart on the peer and sets the stale route time. + maximum: 3600 + minimum: 1 + type: integer + group: + description: Reference to a DefaultBGPGroup. + type: string + importPolicy: + description: Reference to a Policy CR that will be used to filter routes received from peers. + items: + type: string + type: array + interface: + description: Reference to either a DefaultInterface or SystemInterface whose IP will be used as a source IP for the BGP session. + type: string + interfaceKind: + description: Reference to a the Kind of interface whose IP will be used as a source IP for the BGP session. + enum: + - DEFAULTINTERFACE + - SYSTEMINTERFACE + type: string + ipv4Unicast: + description: Parameters relating to the IPv4 unicast AFI/SAFI. + properties: + advertiseIPV6NextHops: + description: Enables advertisement of IPv4 Unicast routes with IPv6 next-hops to peers. + type: boolean + enabled: + description: Enables the IPv4 unicast AFISAFI. + type: boolean + maxReceivedRoutes: + description: Maximum number of IPv4 Unicast routes that will be accepted from the neighbor, counting routes accepted and rejected by import policies. + maximum: 4294967295 + minimum: 1 + type: integer + receiveIPV6NextHops: + description: Enables the advertisement of the RFC 5549 capability to receive IPv4 routes with IPv6 next-hops. + type: boolean + type: object + ipv6Unicast: + description: Parameters relating to the IPv6 unicast AFI/SAFI. + properties: + enabled: + description: Enables the IPv6 unicast AFISAFI + type: boolean + maxReceivedRoutes: + description: Maximum number of IPv6 Unicast routes that will be accepted from the neighbor, counting routes accepted and rejected by import policies. + maximum: 4294967295 + minimum: 1 + type: integer + type: object + keychain: + description: Reference to a Keychain resource that will be used for authentication with the BGP peer. + type: string + l2VPNEVPN: + description: Parameters relating to the EVPN AFI/SAFI. + properties: + advertiseIPV6NextHops: + description: Enables advertisement of EVPN routes with IPv6 next-hops to peers. + type: boolean + enabled: + description: Enables the L2VPN EVPN AFISAFI. + type: boolean + maxReceivedRoutes: + description: Maximum number of EVPN routes that will be accepted from the neighbor, counting routes accepted and rejected by import policies. + maximum: 4294967295 + minimum: 1 + type: integer + type: object + localAS: + description: The local autonomous system number advertised to peers. + properties: + autonomousSystem: + description: Local Autonomous System number. + maximum: 4294967295 + minimum: 1 + type: integer + prependGlobalAS: + description: When set to true, the global ASN value is prepended to the AS path in outbound routes towards each BGP peer. + type: boolean + prependLocalAS: + description: When set to true, the local AS value is prepended to the AS path of inbound routes from each EBGP peer. + type: boolean + required: + - autonomousSystem + type: object + localPreference: + description: Local Preference attribute added to received routes from the BGP peers, also sets local preference for generated routes. + maximum: 4294967295 + minimum: 0 + type: integer + multiHopMaxHop: + description: Enable multihop for eBGP peers and sets the maximum number of hops allowed. + maximum: 255 + minimum: 1 + type: integer + nextHopSelf: + description: When set to true, the next-hop in all IPv4-unicast, IPv6-unicast and EVPN BGP routes advertised to the peer is set to the local-address. + type: boolean + peerAS: + description: The autonomous system number expected from peers. + properties: + autonomousSystem: + description: Local Autonomous System number. + maximum: 4294967295 + minimum: 1 + type: integer + required: + - autonomousSystem + type: object + peerIP: + description: Peer IP to which the peering session will be established. There cannot be both a PeerIp and PeerDefaultInterface property set. + type: string + peerInterface: + description: Reference to a DefaultInterface or SystemInterface resource to which the peering session will be established. There cannot be both a PeerIp and PeerDefaultInterface property set. + type: string + peerInterfaceKind: + description: Reference to a the Kind of interface to which to peer to. + enum: + - DEFAULTINTERFACE + - SYSTEMINTERFACE + type: string + sendCommunityLarge: + description: When false, all large (12 byte) BGP communities from all outbound routes advertised to the peer are stripped. + type: boolean + sendCommunityStandard: + description: When false, all standard (4 byte) communities from all outbound routes advertised to the peer are stripped. + type: boolean + sendDefaultRoute: + description: Options for controlling the generation of default routes towards BGP peers. + properties: + addressFamily: + description: Enables the sending of a synthetically generated default IPv4 or IPV6 route to each peer. + items: + enum: + - IPV4-UNICAST + - IPV6-UNICAST + type: string + type: array + exportPolicy: + description: Reference to a Policy that should be applied to the advertised default routes, in order to set their attributes to non-default values. + type: string + required: + - addressFamily + type: object + timers: + description: Timer configurations + properties: + connectRetry: + description: The time interval in seconds between successive attempts to establish a session with a peer. + maximum: 65535 + minimum: 1 + type: integer + holdTime: + description: The hold-time interval in seconds that the router proposes to the peer in its OPEN message. + maximum: 65535 + minimum: 0 + type: integer + keepAlive: + description: The interval in seconds between successive keepalive messages sent to the peer. + maximum: 21845 + minimum: 0 + type: integer + minimumAdvertisementInterval: + description: The value assigned to the MinRouteAdvertisementIntervalTimer of RFC 4271, for both EBGP and IBGP sessions. + maximum: 255 + minimum: 1 + type: integer + type: object + required: + - group + - interface + - interfaceKind + type: object + status: + description: DefaultBGPPeerStatus defines the observed state of DefaultBGPPeer + properties: + enabled: + description: Indicated whether the BGP Peer is administratively enabled. + type: boolean + health: + description: Indicates the health score of the BGP peer. + type: integer + healthScoreReason: + description: Indicates the reason for the health score. + type: string + lastChange: + description: The time when the state of the resource last changed. + type: string + lastEvent: + description: Last event of the BGP peer. + type: string + lastState: + description: Last state of the BGP peer. + type: string + negotiatedHoldTime: + description: Hold time negotiated with the BGP peer. + type: integer + negotiatedKeepaliveInterval: + description: Keepalive interval negotiated with the BGP peer. + type: integer + operationalState: + description: Operational state of the BGP peer + type: string + peerAS: + description: Peer AS of the BGP peer. + type: integer + sessionState: + description: The state of the BGP session. + type: string + underMaintenance: + description: Indicates if the BGP peer is under maintenance. + type: boolean + type: object + type: object +served: true +storage: false +subresources: + status: {} diff --git a/static/resources/25.8.2/defaultinterfaces.routing.eda.nokia.com/v1alpha1.yaml b/static/resources/25.8.2/defaultinterfaces.routing.eda.nokia.com/v1alpha1.yaml new file mode 100644 index 0000000..475feb8 --- /dev/null +++ b/static/resources/25.8.2/defaultinterfaces.routing.eda.nokia.com/v1alpha1.yaml @@ -0,0 +1,152 @@ +additionalPrinterColumns: + - jsonPath: .status.lastChange + name: Last Change + type: date + - jsonPath: .status.operationalState + name: Operational State + type: string +name: v1alpha1 +schema: + openAPIV3Schema: + description: DefaultInterface is the Schema for the defaultinterfaces API + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + description: DefaultInterface enables the configuration of default interfaces, including Interface references, DefaultRouter, VLAN IDs, IP MTU settings, and options for IPv4 and IPv6 addresses. It also supports unnumbered interfaces and BFD (Bidirectional Forwarding Detection) configuration. + properties: + bfd: + description: Enable or disable BFD on this DefaultInterface. + properties: + desiredMinTransmitInt: + default: 1000000 + description: The minimum interval in microseconds between transmission of BFD control packets[default=1000000]. + maximum: 100000000 + minimum: 10000 + type: integer + detectionMultiplier: + default: 3 + description: The number of packets that must be missed to declare this session as down. [default=3] + maximum: 20 + minimum: 3 + type: integer + enabled: + default: false + description: Enable Biforward Detection[default=false]. + type: boolean + minEchoReceiveInterval: + default: 1000000 + description: The minimum interval between echo packets the local node can receive in microseconds + maximum: 100000000 + minimum: 0 + type: integer + requiredMinReceive: + default: 1000000 + description: The minimum interval in microseconds between received BFD control packets that this system should support.[default=1000000]. + maximum: 100000000 + minimum: 10000 + type: integer + ttl: + description: Sets custom IP TTL or Hop Limit for multi-hop BFD sessions packets. Not appllicable to single-hop BFD sessions. + maximum: 255 + minimum: 2 + type: integer + required: + - desiredMinTransmitInt + - detectionMultiplier + - enabled + - minEchoReceiveInterval + - requiredMinReceive + type: object + defaultRouter: + description: Reference to a DefaultRouter. + type: string + description: + description: The description of the DefaultInterface. + type: string + interface: + description: Reference to an Interface to use for attachment. + type: string + ipMTU: + description: Set the IP MTU for the DefaultInterface. + maximum: 9486 + minimum: 1280 + type: integer + ipv4Addresses: + description: List of IPv4 addresses in ip/mask form, e.g., 192.168.0.1/24. + items: + properties: + ipPrefix: + description: Address and mask to use + type: string + primary: + description: Indicates which address to use as primary for broadcast + type: boolean + required: + - ipPrefix + type: object + type: array + ipv6Addresses: + description: List of IPv6 addresses in ip/mask form, e.g., fc00::1/120. + items: + properties: + ipPrefix: + description: Address and mask to use + type: string + primary: + description: Indicates which address to use as primary for broadcast + type: boolean + required: + - ipPrefix + type: object + type: array + unnumbered: + description: Enables the use of unnumbered interfaces on the ISL. For IPv6, no IP address are configured on the sub-interface and only the link local address will be used. If any allocation pool is specified for IPv6 that will take precedence and IPs will be assigned to the interfaces. When using eBGP for an underlay protocol, the DefaultInterfaces which are a part of the ISL will be added to the BGP dynamic neighbor list. + enum: + - IPV6 + type: string + vlanID: + description: VLAN to use with this DefaultInterface. + maximum: 4094 + minimum: 1 + type: integer + required: + - defaultRouter + - interface + type: object + status: + description: DefaultInterfaceStatus defines the observed state of DefaultInterface + properties: + health: + description: Indicates the health score of the DefaultInterface. + type: integer + healthScoreReason: + description: Indicates the reason for the health score. + type: string + lastChange: + description: Indicates when this Interface last changed state. + type: string + operationalState: + description: Indicates the current operational state of the DefaultInterface. + type: string + type: object + type: object +served: true +storage: true +subresources: + status: {} diff --git a/static/resources/25.8.2/defaultinterfacestates.routing.eda.nokia.com/v1alpha1.yaml b/static/resources/25.8.2/defaultinterfacestates.routing.eda.nokia.com/v1alpha1.yaml new file mode 100644 index 0000000..05660ab --- /dev/null +++ b/static/resources/25.8.2/defaultinterfacestates.routing.eda.nokia.com/v1alpha1.yaml @@ -0,0 +1,105 @@ +name: v1alpha1 +schema: + openAPIV3Schema: + description: DefaultInterfaceState is the Schema for the defaultinterfacestates API + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + description: DefaultInterfaceStateSpec defines the desired state of DefaultInterfaceState + properties: + bfdEnabled: + description: Indicates if bfd is enabled or disabled + type: boolean + defaultNodeInterface: + description: Node specific default interface name, for example "ethernet-1/1.0", "if-1/1/c1/1" + type: string + defaultRouter: + description: Reference to a DefaultRouter + type: string + interface: + description: Reference to an interface + type: string + interfaceEnabled: + description: Indicates if the interface is enabled or disabled + type: boolean + ipv4Addresses: + description: List of IPv4 addresses + items: + properties: + ipPrefix: + description: Address and mask to use + type: string + primary: + description: Indicates which address to use as primary for broadcast + type: boolean + required: + - ipPrefix + type: object + type: array + ipv6Addresses: + description: List of IPv6 addresses + items: + properties: + ipPrefix: + description: Address and mask to use + type: string + primary: + description: Indicates which address to use as primary for broadcast + type: boolean + required: + - ipPrefix + type: object + type: array + networkInstanceName: + description: The name of the network-instance or base routing instance in which the DefaultInterface is configured + type: string + node: + description: Reference to Node object + type: string + nodeInterface: + description: Node specific interface name, for example "ethernet-1/1", "1/1/c1/1" + type: string + operatingSystem: + description: Operating System of the Node + type: string + subInterfaceIndex: + description: Index of the subinterface + type: integer + unnumbered: + description: Indicates if the interface is unnumbered + enum: + - IPV6 + type: string + required: + - defaultNodeInterface + - defaultRouter + - interface + - interfaceEnabled + - networkInstanceName + - node + - nodeInterface + type: object + status: + description: DefaultInterfaceStateStatus defines the observed state of DefaultInterfaceState + type: object + type: object +served: true +storage: true +subresources: + status: {} diff --git a/static/resources/25.8.2/defaultroutereflectorclients.protocols.eda.nokia.com/v1.yaml b/static/resources/25.8.2/defaultroutereflectorclients.protocols.eda.nokia.com/v1.yaml new file mode 100644 index 0000000..e8d4e90 --- /dev/null +++ b/static/resources/25.8.2/defaultroutereflectorclients.protocols.eda.nokia.com/v1.yaml @@ -0,0 +1,370 @@ +additionalPrinterColumns: + - jsonPath: .status.lastChange + name: Last Change + type: date + - jsonPath: .status.operationalState + name: OperationalState + type: string + - jsonPath: .status.numRouteReflectorClientBGPPeers + name: NumRouteReflectorClientBGPPeers + type: string + - jsonPath: .status.numRouteReflectorClientBGPPeersOperDown + name: NumRouteReflectorClientBGPPeersOperDown + type: string +name: v1 +schema: + openAPIV3Schema: + description: DefaultRouteReflectorClient is the Schema for the defaultroutereflectorclients API + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + description: DefaultRouteReflectorClient enables the configuration of iBGP sessions from a client to RouteReflectors. It includes settings for the DefaultInterface, BGP group, client selectors, and a list of Route Reflector IPs. Additionally, it allows for the configuration of L2VPN EVPN settings and applies common BGP configuration settings to manage routing efficiently within the network. + properties: + asPathOptions: + description: AS Path Options + properties: + allowOwnAS: + default: 0 + description: The maximum number of times the global AS number or a local AS number of the BGP instance can appear in any received AS_PATH before it is considered a loop and considered invalid. + maximum: 255 + minimum: 0 + type: integer + removePrivateAS: + description: Options for removing private AS numbers (2-byte and 4-byte) from the advertised AS path towards all peers. + properties: + ignorePeerAS: + default: false + description: If set to true then do not delete or replace a private AS number that is the same as the peer AS number. + type: boolean + leadingOnly: + default: false + description: If set to true then only delete or replace private AS numbers that appear before the first occurrence of a non-private ASN in the sequence of most recent ASNs in the AS path. + type: boolean + removePrivateASMode: + default: DISABLED + description: The method by which private AS numbers are removed from the advertised AS_PATH attribute. + enum: + - DISABLED + - REPLACE + - DELETE + type: string + required: + - ignorePeerAS + - leadingOnly + - removePrivateASMode + type: object + required: + - allowOwnAS + type: object + bfd: + description: Enable or disable Bi-forward Forwarding Detection (BFD) with fast failover. + type: boolean + defaultBgpClientGroup: + description: Reference to Default Bgp Group. + type: string + exportPolicy: + description: Reference to a Policy CR that will be used to filter routes advertised to peers. + items: + type: string + type: array + grStaleRouteTime: + description: Enables Graceful Restart on the peer and sets the stale route time. + maximum: 3600 + minimum: 1 + type: integer + importPolicy: + description: Reference to a Policy CR that will be used to filter routes received from peers. + items: + type: string + type: array + interface: + description: Reference to either a DefaultInterface or SystemInterface from which the session to the RR will be done from. + type: string + interfaceKind: + description: Reference to a the Kind of interface from which the session to the RR will be done from. + enum: + - DEFAULTINTERFACE + - SYSTEMINTERFACE + type: string + ipv4Unicast: + description: Parameters relating to the IPv4 unicast AFI/SAFI. + properties: + advertiseIPV6NextHops: + description: Enables advertisement of IPv4 Unicast routes with IPv6 next-hops to peers. + type: boolean + enabled: + description: Enables the IPv4 unicast AFISAFI. + type: boolean + prefixLimit: + properties: + prefixLimitAccepted: + properties: + logOnly: + description: Defines the action to take when the maximum number of prefixes is exceeded. Session is reset if set to false, otherwise only a warning is logged. + type: boolean + maxReceivedRoutes: + description: Maximum number of prefixes allowed to be received from the neighbor, counting only accepted routes. + format: int32 + maximum: 4294967295 + minimum: 1 + type: integer + warningThreshold: + description: A percentage of the maximum number of prefixes that can be accepted before a warning is logged. + maximum: 100 + minimum: 1 + type: integer + type: object + prefixLimitReceived: + properties: + logOnly: + description: Defines the action to take when the maximum number of prefixes is exceeded. Session is reset if set to false, otherwise only a warning is logged. + type: boolean + maxReceivedRoutes: + description: Maximum number of prefixes allowed to be received from the neighbor, counting all routes (accepted and rejected by import policies). + format: int32 + maximum: 4294967295 + minimum: 1 + type: integer + warningThreshold: + description: A percentage of the maximum number of prefixes that can be received before a warning is logged. + maximum: 100 + minimum: 1 + type: integer + type: object + type: object + receiveIPV6NextHops: + description: Enables the advertisement of the RFC 5549 capability to receive IPv4 routes with IPv6 next-hops. + type: boolean + type: object + ipv6Unicast: + description: Parameters relating to the IPv6 unicast AFI/SAFI. + properties: + enabled: + description: Enables the IPv6 unicast AFISAFI + type: boolean + prefixLimit: + properties: + prefixLimitAccepted: + properties: + logOnly: + description: Defines the action to take when the maximum number of prefixes is exceeded. Session is reset if set to false, otherwise only a warning is logged. + type: boolean + maxReceivedRoutes: + description: Maximum number of prefixes allowed to be received from the neighbor, counting only accepted routes. + format: int32 + maximum: 4294967295 + minimum: 1 + type: integer + warningThreshold: + description: A percentage of the maximum number of prefixes that can be accepted before a warning is logged. + maximum: 100 + minimum: 1 + type: integer + type: object + prefixLimitReceived: + properties: + logOnly: + description: Defines the action to take when the maximum number of prefixes is exceeded. Session is reset if set to false, otherwise only a warning is logged. + type: boolean + maxReceivedRoutes: + description: Maximum number of prefixes allowed to be received from the neighbor, counting all routes (accepted and rejected by import policies). + format: int32 + maximum: 4294967295 + minimum: 1 + type: integer + warningThreshold: + description: A percentage of the maximum number of prefixes that can be received before a warning is logged. + maximum: 100 + minimum: 1 + type: integer + type: object + type: object + type: object + keychain: + description: Reference to a Keychain resource that will be used for authentication with the BGP peer. + type: string + l2VPNEVPN: + description: Parameters relating to the EVPN AFI/SAFI. + properties: + advertiseIPV6NextHops: + description: Enables advertisement of EVPN routes with IPv6 next-hops to peers. + type: boolean + enabled: + description: Enables the L2VPN EVPN AFISAFI. + type: boolean + prefixLimit: + properties: + prefixLimitAccepted: + properties: + logOnly: + description: Defines the action to take when the maximum number of prefixes is exceeded. Session is reset if set to false, otherwise only a warning is logged. + type: boolean + maxReceivedRoutes: + description: Maximum number of prefixes allowed to be received from the neighbor, counting only accepted routes. + format: int32 + maximum: 4294967295 + minimum: 1 + type: integer + warningThreshold: + description: A percentage of the maximum number of prefixes that can be accepted before a warning is logged. + maximum: 100 + minimum: 1 + type: integer + type: object + prefixLimitReceived: + properties: + logOnly: + description: Defines the action to take when the maximum number of prefixes is exceeded. Session is reset if set to false, otherwise only a warning is logged. + type: boolean + maxReceivedRoutes: + description: Maximum number of prefixes allowed to be received from the neighbor, counting all routes (accepted and rejected by import policies). + format: int32 + maximum: 4294967295 + minimum: 1 + type: integer + warningThreshold: + description: A percentage of the maximum number of prefixes that can be received before a warning is logged. + maximum: 100 + minimum: 1 + type: integer + type: object + type: object + type: object + localAS: + description: The local autonomous system number advertised to peers. + properties: + autonomousSystem: + description: Local Autonomous System number. + maximum: 4294967295 + minimum: 1 + type: integer + prependGlobalAS: + description: When set to true, the global ASN value is prepended to the AS path in outbound routes towards each BGP peer. + type: boolean + prependLocalAS: + description: When set to true, the local AS value is prepended to the AS path of inbound routes from each EBGP peer. + type: boolean + required: + - autonomousSystem + type: object + peerAS: + description: The autonomous system number expected from peers. + properties: + autonomousSystem: + description: Local Autonomous System number. + maximum: 4294967295 + minimum: 1 + type: integer + required: + - autonomousSystem + type: object + routeReflectorIPs: + description: List of the peering IPs on the RRs to which peering session is established. + items: + type: string + type: array + routeReflectorSelector: + description: Label selector used to select the RouteReflectors to which the iBGP sessions are established. + items: + type: string + type: array + sendCommunityLarge: + description: When false, all large (12 byte) BGP communities from all outbound routes advertised to the peer are stripped. + type: boolean + sendCommunityStandard: + description: When false, all standard (4 byte) communities from all outbound routes advertised to the peer are stripped. + type: boolean + sendDefaultRoute: + description: Options for controlling the generation of default routes towards BGP peers. + properties: + addressFamily: + description: Enables the sending of a synthetically generated default IPv4 or IPV6 route to each peer. + items: + enum: + - IPV4-UNICAST + - IPV6-UNICAST + type: string + type: array + exportPolicy: + description: Reference to a Policy that should be applied to the advertised default routes, in order to set their attributes to non-default values. + type: string + required: + - addressFamily + type: object + timers: + description: Timer configurations + properties: + connectRetry: + description: The time interval in seconds between successive attempts to establish a session with a peer. + maximum: 65535 + minimum: 1 + type: integer + holdTime: + description: The hold-time interval in seconds that the router proposes to the peer in its OPEN message. + maximum: 65535 + minimum: 0 + type: integer + keepAlive: + description: The interval in seconds between successive keepalive messages sent to the peer. + maximum: 21845 + minimum: 0 + type: integer + minimumAdvertisementInterval: + description: The value assigned to the MinRouteAdvertisementIntervalTimer of RFC 4271, for both EBGP and IBGP sessions. + maximum: 255 + minimum: 1 + type: integer + type: object + required: + - defaultBgpClientGroup + - interface + - interfaceKind + type: object + status: + description: DefaultRouteReflectorClientStatus defines the observed state of DefaultRouteReflectorClient + properties: + health: + description: Indicates the health score of the DefaultRouteReflectorClient. + type: integer + healthScoreReason: + description: Indicates the reason for the health score. + type: string + lastChange: + description: The time when the state of the resource last changed. + type: string + numRouteReflectorClientBGPPeers: + description: Total number of configured route reflector peers on the route reflector client. + type: integer + numRouteReflectorClientBGPPeersOperDown: + description: Total number of configured route reflector peers on the route reflector client that are operationally down. + type: integer + operDownRouteReflectorClientPeers: + description: List of route reflector BGPPeers which are operationally down. + items: + type: string + type: array + operationalState: + description: Operational state of the DefaultRouteReflectorClient. + type: string + type: object + type: object +served: true +storage: true +subresources: + status: {} diff --git a/static/resources/25.8.2/defaultroutereflectorclients.protocols.eda.nokia.com/v1alpha1.yaml b/static/resources/25.8.2/defaultroutereflectorclients.protocols.eda.nokia.com/v1alpha1.yaml new file mode 100644 index 0000000..b56ca46 --- /dev/null +++ b/static/resources/25.8.2/defaultroutereflectorclients.protocols.eda.nokia.com/v1alpha1.yaml @@ -0,0 +1,276 @@ +additionalPrinterColumns: + - jsonPath: .status.lastChange + name: Last Change + type: date + - jsonPath: .status.operationalState + name: OperationalState + type: string + - jsonPath: .status.numRouteReflectorClientBGPPeers + name: NumRouteReflectorClientBGPPeers + type: string + - jsonPath: .status.numRouteReflectorClientBGPPeersOperDown + name: NumRouteReflectorClientBGPPeersOperDown + type: string +deprecated: true +deprecationWarning: This version is deprecated and will no longer be supported in the next version. +name: v1alpha1 +schema: + openAPIV3Schema: + description: DefaultRouteReflectorClient is the Schema for the defaultroutereflectorclients API + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + description: DefaultRouteReflectorClient enables the configuration of iBGP sessions from a client to RouteReflectors. It includes settings for the DefaultInterface, BGP group, client selectors, and a list of Route Reflector IPs. Additionally, it allows for the configuration of L2VPN EVPN settings and applies common BGP configuration settings to manage routing efficiently within the network. + properties: + asPathOptions: + description: AS Path Options + properties: + allowOwnAS: + default: 0 + description: The maximum number of times the global AS number or a local AS number of the BGP instance can appear in any received AS_PATH before it is considered a loop and considered invalid. + maximum: 255 + minimum: 0 + type: integer + removePrivateAS: + description: Options for removing private AS numbers (2-byte and 4-byte) from the advertised AS path towards all peers. + properties: + ignorePeerAS: + default: false + description: If set to true then do not delete or replace a private AS number that is the same as the peer AS number. + type: boolean + leadingOnly: + default: false + description: If set to true then only delete or replace private AS numbers that appear before the first occurrence of a non-private ASN in the sequence of most recent ASNs in the AS path. + type: boolean + removePrivateASMode: + default: DISABLED + description: The method by which private AS numbers are removed from the advertised AS_PATH attribute. + enum: + - DISABLED + - REPLACE + - DELETE + type: string + required: + - ignorePeerAS + - leadingOnly + - removePrivateASMode + type: object + required: + - allowOwnAS + type: object + bfd: + description: Enable or disable Bi-forward Forwarding Detection (BFD) with fast failover. + type: boolean + defaultBgpClientGroup: + description: Reference to Default Bgp Group. + type: string + exportPolicy: + description: Reference to a Policy CR that will be used to filter routes advertised to peers. + items: + type: string + type: array + grStaleRouteTime: + description: Enables Graceful Restart on the peer and sets the stale route time. + maximum: 3600 + minimum: 1 + type: integer + importPolicy: + description: Reference to a Policy CR that will be used to filter routes received from peers. + items: + type: string + type: array + interface: + description: Reference to either a DefaultInterface or SystemInterface from which the session to the RR will be done from. + type: string + interfaceKind: + description: Reference to a the Kind of interface from which the session to the RR will be done from. + enum: + - DEFAULTINTERFACE + - SYSTEMINTERFACE + type: string + ipv4Unicast: + description: Parameters relating to the IPv4 unicast AFI/SAFI. + properties: + advertiseIPV6NextHops: + description: Enables advertisement of IPv4 Unicast routes with IPv6 next-hops to peers. + type: boolean + enabled: + description: Enables the IPv4 unicast AFISAFI. + type: boolean + maxReceivedRoutes: + description: Maximum number of IPv4 Unicast routes that will be accepted from the neighbor, counting routes accepted and rejected by import policies. + maximum: 4294967295 + minimum: 1 + type: integer + receiveIPV6NextHops: + description: Enables the advertisement of the RFC 5549 capability to receive IPv4 routes with IPv6 next-hops. + type: boolean + type: object + ipv6Unicast: + description: Parameters relating to the IPv6 unicast AFI/SAFI. + properties: + enabled: + description: Enables the IPv6 unicast AFISAFI + type: boolean + maxReceivedRoutes: + description: Maximum number of IPv6 Unicast routes that will be accepted from the neighbor, counting routes accepted and rejected by import policies. + maximum: 4294967295 + minimum: 1 + type: integer + type: object + keychain: + description: Reference to a Keychain resource that will be used for authentication with the BGP peer. + type: string + l2VPNEVPN: + description: Parameters relating to the EVPN AFI/SAFI. + properties: + advertiseIPV6NextHops: + description: Enables advertisement of EVPN routes with IPv6 next-hops to peers. + type: boolean + enabled: + description: Enables the L2VPN EVPN AFISAFI. + type: boolean + maxReceivedRoutes: + description: Maximum number of EVPN routes that will be accepted from the neighbor, counting routes accepted and rejected by import policies. + maximum: 4294967295 + minimum: 1 + type: integer + type: object + localAS: + description: The local autonomous system number advertised to peers. + properties: + autonomousSystem: + description: Local Autonomous System number. + maximum: 4294967295 + minimum: 1 + type: integer + prependGlobalAS: + description: When set to true, the global ASN value is prepended to the AS path in outbound routes towards each BGP peer. + type: boolean + prependLocalAS: + description: When set to true, the local AS value is prepended to the AS path of inbound routes from each EBGP peer. + type: boolean + required: + - autonomousSystem + type: object + peerAS: + description: The autonomous system number expected from peers. + properties: + autonomousSystem: + description: Local Autonomous System number. + maximum: 4294967295 + minimum: 1 + type: integer + required: + - autonomousSystem + type: object + routeReflectorIPs: + description: List of the peering IPs on the RRs to which peering session is established. + items: + type: string + type: array + routeReflectorSelector: + description: Label selector used to select the RouteReflectors to which the iBGP sessions are established. + items: + type: string + type: array + sendCommunityLarge: + description: When false, all large (12 byte) BGP communities from all outbound routes advertised to the peer are stripped. + type: boolean + sendCommunityStandard: + description: When false, all standard (4 byte) communities from all outbound routes advertised to the peer are stripped. + type: boolean + sendDefaultRoute: + description: Options for controlling the generation of default routes towards BGP peers. + properties: + addressFamily: + description: Enables the sending of a synthetically generated default IPv4 or IPV6 route to each peer. + items: + enum: + - IPV4-UNICAST + - IPV6-UNICAST + type: string + type: array + exportPolicy: + description: Reference to a Policy that should be applied to the advertised default routes, in order to set their attributes to non-default values. + type: string + required: + - addressFamily + type: object + timers: + description: Timer configurations + properties: + connectRetry: + description: The time interval in seconds between successive attempts to establish a session with a peer. + maximum: 65535 + minimum: 1 + type: integer + holdTime: + description: The hold-time interval in seconds that the router proposes to the peer in its OPEN message. + maximum: 65535 + minimum: 0 + type: integer + keepAlive: + description: The interval in seconds between successive keepalive messages sent to the peer. + maximum: 21845 + minimum: 0 + type: integer + minimumAdvertisementInterval: + description: The value assigned to the MinRouteAdvertisementIntervalTimer of RFC 4271, for both EBGP and IBGP sessions. + maximum: 255 + minimum: 1 + type: integer + type: object + required: + - defaultBgpClientGroup + - interface + - interfaceKind + type: object + status: + description: DefaultRouteReflectorClientStatus defines the observed state of DefaultRouteReflectorClient + properties: + health: + description: Indicates the health score of the DefaultRouteReflectorClient. + type: integer + healthScoreReason: + description: Indicates the reason for the health score. + type: string + lastChange: + description: The time when the state of the resource last changed. + type: string + numRouteReflectorClientBGPPeers: + description: Total number of configured route reflector peers on the route reflector client. + type: integer + numRouteReflectorClientBGPPeersOperDown: + description: Total number of configured route reflector peers on the route reflector client that are operationally down. + type: integer + operDownRouteReflectorClientPeers: + description: List of route reflector BGPPeers which are operationally down. + items: + type: string + type: array + operationalState: + description: Operational state of the DefaultRouteReflectorClient. + type: string + type: object + type: object +served: true +storage: false +subresources: + status: {} diff --git a/static/resources/25.8.2/defaultroutereflectors.protocols.eda.nokia.com/v1.yaml b/static/resources/25.8.2/defaultroutereflectors.protocols.eda.nokia.com/v1.yaml new file mode 100644 index 0000000..efbae8a --- /dev/null +++ b/static/resources/25.8.2/defaultroutereflectors.protocols.eda.nokia.com/v1.yaml @@ -0,0 +1,374 @@ +additionalPrinterColumns: + - jsonPath: .status.lastChange + name: Last Change + type: date + - jsonPath: .status.operationalState + name: Operational State + type: string + - jsonPath: .status.numRouteReflectorBGPPeers + name: NumRouteReflectorBGPPeers + type: string + - jsonPath: .status.numRouteReflectorBGPPeersOperDown + name: NumRouteReflectorBGPPeersOperDown + type: string +name: v1 +schema: + openAPIV3Schema: + description: DefaultRouteReflector is the Schema for the defaultroutereflectors API + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + description: DefaultRouteReflector enables the configuration of iBGP sessions to RouteReflectorClients. It includes settings for the DefaultInterface, BGP group, client selectors, and the Cluster ID. Additionally, it allows for the configuration of L2VPN EVPN settings and applies common BGP configuration settings to manage routing efficiently within the network. + properties: + asPathOptions: + description: AS Path Options + properties: + allowOwnAS: + default: 0 + description: The maximum number of times the global AS number or a local AS number of the BGP instance can appear in any received AS_PATH before it is considered a loop and considered invalid. + maximum: 255 + minimum: 0 + type: integer + removePrivateAS: + description: Options for removing private AS numbers (2-byte and 4-byte) from the advertised AS path towards all peers. + properties: + ignorePeerAS: + default: false + description: If set to true then do not delete or replace a private AS number that is the same as the peer AS number. + type: boolean + leadingOnly: + default: false + description: If set to true then only delete or replace private AS numbers that appear before the first occurrence of a non-private ASN in the sequence of most recent ASNs in the AS path. + type: boolean + removePrivateASMode: + default: DISABLED + description: The method by which private AS numbers are removed from the advertised AS_PATH attribute. + enum: + - DISABLED + - REPLACE + - DELETE + type: string + required: + - ignorePeerAS + - leadingOnly + - removePrivateASMode + type: object + required: + - allowOwnAS + type: object + bfd: + description: Enable or disable Bi-forward Forwarding Detection (BFD) with fast failover. + type: boolean + clientIPs: + description: List of RR client IPs to which the iBGP sessions are established. + items: + type: string + type: array + clientSelector: + description: Label selector used to select the RouteReflectorClients to which the iBGP sessions are established. + items: + type: string + type: array + clusterID: + description: Sets the cluster ID for route reflectors. + type: string + defaultBGPRRGroup: + description: Reference to a DefaultBGPGroup. + type: string + exportPolicy: + description: Reference to a Policy CR that will be used to filter routes advertised to peers. + items: + type: string + type: array + grStaleRouteTime: + description: Enables Graceful Restart on the peer and sets the stale route time. + maximum: 3600 + minimum: 1 + type: integer + importPolicy: + description: Reference to a Policy CR that will be used to filter routes received from peers. + items: + type: string + type: array + interface: + description: Reference to either a DefaultInterface or SystemInterface from which the session to the client will be done from. + type: string + interfaceKind: + description: Reference to a the Kind of interface from which the session to the client will be done from. + enum: + - DEFAULTINTERFACE + - SYSTEMINTERFACE + type: string + ipv4Unicast: + description: Parameters relating to the IPv4 unicast AFI/SAFI. + properties: + advertiseIPV6NextHops: + description: Enables advertisement of IPv4 Unicast routes with IPv6 next-hops to peers. + type: boolean + enabled: + description: Enables the IPv4 unicast AFISAFI. + type: boolean + prefixLimit: + properties: + prefixLimitAccepted: + properties: + logOnly: + description: Defines the action to take when the maximum number of prefixes is exceeded. Session is reset if set to false, otherwise only a warning is logged. + type: boolean + maxReceivedRoutes: + description: Maximum number of prefixes allowed to be received from the neighbor, counting only accepted routes. + format: int32 + maximum: 4294967295 + minimum: 1 + type: integer + warningThreshold: + description: A percentage of the maximum number of prefixes that can be accepted before a warning is logged. + maximum: 100 + minimum: 1 + type: integer + type: object + prefixLimitReceived: + properties: + logOnly: + description: Defines the action to take when the maximum number of prefixes is exceeded. Session is reset if set to false, otherwise only a warning is logged. + type: boolean + maxReceivedRoutes: + description: Maximum number of prefixes allowed to be received from the neighbor, counting all routes (accepted and rejected by import policies). + format: int32 + maximum: 4294967295 + minimum: 1 + type: integer + warningThreshold: + description: A percentage of the maximum number of prefixes that can be received before a warning is logged. + maximum: 100 + minimum: 1 + type: integer + type: object + type: object + receiveIPV6NextHops: + description: Enables the advertisement of the RFC 5549 capability to receive IPv4 routes with IPv6 next-hops. + type: boolean + type: object + ipv6Unicast: + description: Parameters relating to the IPv6 unicast AFI/SAFI. + properties: + enabled: + description: Enables the IPv6 unicast AFISAFI + type: boolean + prefixLimit: + properties: + prefixLimitAccepted: + properties: + logOnly: + description: Defines the action to take when the maximum number of prefixes is exceeded. Session is reset if set to false, otherwise only a warning is logged. + type: boolean + maxReceivedRoutes: + description: Maximum number of prefixes allowed to be received from the neighbor, counting only accepted routes. + format: int32 + maximum: 4294967295 + minimum: 1 + type: integer + warningThreshold: + description: A percentage of the maximum number of prefixes that can be accepted before a warning is logged. + maximum: 100 + minimum: 1 + type: integer + type: object + prefixLimitReceived: + properties: + logOnly: + description: Defines the action to take when the maximum number of prefixes is exceeded. Session is reset if set to false, otherwise only a warning is logged. + type: boolean + maxReceivedRoutes: + description: Maximum number of prefixes allowed to be received from the neighbor, counting all routes (accepted and rejected by import policies). + format: int32 + maximum: 4294967295 + minimum: 1 + type: integer + warningThreshold: + description: A percentage of the maximum number of prefixes that can be received before a warning is logged. + maximum: 100 + minimum: 1 + type: integer + type: object + type: object + type: object + keychain: + description: Reference to a Keychain resource that will be used for authentication with the BGP peer. + type: string + l2VPNEVPN: + description: Parameters relating to the EVPN AFI/SAFI. + properties: + advertiseIPV6NextHops: + description: Enables advertisement of EVPN routes with IPv6 next-hops to peers. + type: boolean + enabled: + description: Enables the L2VPN EVPN AFISAFI. + type: boolean + prefixLimit: + properties: + prefixLimitAccepted: + properties: + logOnly: + description: Defines the action to take when the maximum number of prefixes is exceeded. Session is reset if set to false, otherwise only a warning is logged. + type: boolean + maxReceivedRoutes: + description: Maximum number of prefixes allowed to be received from the neighbor, counting only accepted routes. + format: int32 + maximum: 4294967295 + minimum: 1 + type: integer + warningThreshold: + description: A percentage of the maximum number of prefixes that can be accepted before a warning is logged. + maximum: 100 + minimum: 1 + type: integer + type: object + prefixLimitReceived: + properties: + logOnly: + description: Defines the action to take when the maximum number of prefixes is exceeded. Session is reset if set to false, otherwise only a warning is logged. + type: boolean + maxReceivedRoutes: + description: Maximum number of prefixes allowed to be received from the neighbor, counting all routes (accepted and rejected by import policies). + format: int32 + maximum: 4294967295 + minimum: 1 + type: integer + warningThreshold: + description: A percentage of the maximum number of prefixes that can be received before a warning is logged. + maximum: 100 + minimum: 1 + type: integer + type: object + type: object + type: object + localAS: + description: The local autonomous system number advertised to peers. + properties: + autonomousSystem: + description: Local Autonomous System number. + maximum: 4294967295 + minimum: 1 + type: integer + prependGlobalAS: + description: When set to true, the global ASN value is prepended to the AS path in outbound routes towards each BGP peer. + type: boolean + prependLocalAS: + description: When set to true, the local AS value is prepended to the AS path of inbound routes from each EBGP peer. + type: boolean + required: + - autonomousSystem + type: object + peerAS: + description: The autonomous system number expected from peers. + properties: + autonomousSystem: + description: Local Autonomous System number. + maximum: 4294967295 + minimum: 1 + type: integer + required: + - autonomousSystem + type: object + sendCommunityLarge: + description: When false, all large (12 byte) BGP communities from all outbound routes advertised to the peer are stripped. + type: boolean + sendCommunityStandard: + description: When false, all standard (4 byte) communities from all outbound routes advertised to the peer are stripped. + type: boolean + sendDefaultRoute: + description: Options for controlling the generation of default routes towards BGP peers. + properties: + addressFamily: + description: Enables the sending of a synthetically generated default IPv4 or IPV6 route to each peer. + items: + enum: + - IPV4-UNICAST + - IPV6-UNICAST + type: string + type: array + exportPolicy: + description: Reference to a Policy that should be applied to the advertised default routes, in order to set their attributes to non-default values. + type: string + required: + - addressFamily + type: object + timers: + description: Timer configurations + properties: + connectRetry: + description: The time interval in seconds between successive attempts to establish a session with a peer. + maximum: 65535 + minimum: 1 + type: integer + holdTime: + description: The hold-time interval in seconds that the router proposes to the peer in its OPEN message. + maximum: 65535 + minimum: 0 + type: integer + keepAlive: + description: The interval in seconds between successive keepalive messages sent to the peer. + maximum: 21845 + minimum: 0 + type: integer + minimumAdvertisementInterval: + description: The value assigned to the MinRouteAdvertisementIntervalTimer of RFC 4271, for both EBGP and IBGP sessions. + maximum: 255 + minimum: 1 + type: integer + type: object + required: + - clusterID + - defaultBGPRRGroup + - interface + - interfaceKind + type: object + status: + description: DefaultRouteReflectorStatus defines the observed state of DefaultRouteReflector + properties: + health: + description: Indicates the health score of the Route Reflector. + type: integer + healthScoreReason: + description: Indicates the reason for the health score. + type: string + lastChange: + description: The time when the state of the resource last changed. + type: string + numRouteReflectorBGPPeers: + description: Total number of configured route reflector client peers on the route reflector. + type: integer + numRouteReflectorBGPPeersOperDown: + description: Total number of configured route reflector client peers on the route reflector that are operationally down. + type: integer + operDownRouteReflectorPeers: + description: List of route reflector BGPPeers which are operationally down. + items: + type: string + type: array + operationalState: + description: Operational state of the Route Reflector. + type: string + type: object + type: object +served: true +storage: true +subresources: + status: {} diff --git a/static/resources/25.8.2/defaultroutereflectors.protocols.eda.nokia.com/v1alpha1.yaml b/static/resources/25.8.2/defaultroutereflectors.protocols.eda.nokia.com/v1alpha1.yaml new file mode 100644 index 0000000..e56d4dd --- /dev/null +++ b/static/resources/25.8.2/defaultroutereflectors.protocols.eda.nokia.com/v1alpha1.yaml @@ -0,0 +1,280 @@ +additionalPrinterColumns: + - jsonPath: .status.lastChange + name: Last Change + type: date + - jsonPath: .status.operationalState + name: Operational State + type: string + - jsonPath: .status.numRouteReflectorBGPPeers + name: NumRouteReflectorBGPPeers + type: string + - jsonPath: .status.numRouteReflectorBGPPeersOperDown + name: NumRouteReflectorBGPPeersOperDown + type: string +deprecated: true +deprecationWarning: This version is deprecated and will no longer be supported in the next version. +name: v1alpha1 +schema: + openAPIV3Schema: + description: DefaultRouteReflector is the Schema for the defaultroutereflectors API + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + description: DefaultRouteReflector enables the configuration of iBGP sessions to RouteReflectorClients. It includes settings for the DefaultInterface, BGP group, client selectors, and the Cluster ID. Additionally, it allows for the configuration of L2VPN EVPN settings and applies common BGP configuration settings to manage routing efficiently within the network. + properties: + asPathOptions: + description: AS Path Options + properties: + allowOwnAS: + default: 0 + description: The maximum number of times the global AS number or a local AS number of the BGP instance can appear in any received AS_PATH before it is considered a loop and considered invalid. + maximum: 255 + minimum: 0 + type: integer + removePrivateAS: + description: Options for removing private AS numbers (2-byte and 4-byte) from the advertised AS path towards all peers. + properties: + ignorePeerAS: + default: false + description: If set to true then do not delete or replace a private AS number that is the same as the peer AS number. + type: boolean + leadingOnly: + default: false + description: If set to true then only delete or replace private AS numbers that appear before the first occurrence of a non-private ASN in the sequence of most recent ASNs in the AS path. + type: boolean + removePrivateASMode: + default: DISABLED + description: The method by which private AS numbers are removed from the advertised AS_PATH attribute. + enum: + - DISABLED + - REPLACE + - DELETE + type: string + required: + - ignorePeerAS + - leadingOnly + - removePrivateASMode + type: object + required: + - allowOwnAS + type: object + bfd: + description: Enable or disable Bi-forward Forwarding Detection (BFD) with fast failover. + type: boolean + clientIPs: + description: List of RR client IPs to which the iBGP sessions are established. + items: + type: string + type: array + clientSelector: + description: Label selector used to select the RouteReflectorClients to which the iBGP sessions are established. + items: + type: string + type: array + clusterID: + description: Sets the cluster ID for route reflectors. + type: string + defaultBGPRRGroup: + description: Reference to a DefaultBGPGroup. + type: string + exportPolicy: + description: Reference to a Policy CR that will be used to filter routes advertised to peers. + items: + type: string + type: array + grStaleRouteTime: + description: Enables Graceful Restart on the peer and sets the stale route time. + maximum: 3600 + minimum: 1 + type: integer + importPolicy: + description: Reference to a Policy CR that will be used to filter routes received from peers. + items: + type: string + type: array + interface: + description: Reference to either a DefaultInterface or SystemInterface from which the session to the client will be done from. + type: string + interfaceKind: + description: Reference to a the Kind of interface from which the session to the client will be done from. + enum: + - DEFAULTINTERFACE + - SYSTEMINTERFACE + type: string + ipv4Unicast: + description: Parameters relating to the IPv4 unicast AFI/SAFI. + properties: + advertiseIPV6NextHops: + description: Enables advertisement of IPv4 Unicast routes with IPv6 next-hops to peers. + type: boolean + enabled: + description: Enables the IPv4 unicast AFISAFI. + type: boolean + maxReceivedRoutes: + description: Maximum number of IPv4 Unicast routes that will be accepted from the neighbor, counting routes accepted and rejected by import policies. + maximum: 4294967295 + minimum: 1 + type: integer + receiveIPV6NextHops: + description: Enables the advertisement of the RFC 5549 capability to receive IPv4 routes with IPv6 next-hops. + type: boolean + type: object + ipv6Unicast: + description: Parameters relating to the IPv6 unicast AFI/SAFI. + properties: + enabled: + description: Enables the IPv6 unicast AFISAFI + type: boolean + maxReceivedRoutes: + description: Maximum number of IPv6 Unicast routes that will be accepted from the neighbor, counting routes accepted and rejected by import policies. + maximum: 4294967295 + minimum: 1 + type: integer + type: object + keychain: + description: Reference to a Keychain resource that will be used for authentication with the BGP peer. + type: string + l2VPNEVPN: + description: Parameters relating to the EVPN AFI/SAFI. + properties: + advertiseIPV6NextHops: + description: Enables advertisement of EVPN routes with IPv6 next-hops to peers. + type: boolean + enabled: + description: Enables the L2VPN EVPN AFISAFI. + type: boolean + maxReceivedRoutes: + description: Maximum number of EVPN routes that will be accepted from the neighbor, counting routes accepted and rejected by import policies. + maximum: 4294967295 + minimum: 1 + type: integer + type: object + localAS: + description: The local autonomous system number advertised to peers. + properties: + autonomousSystem: + description: Local Autonomous System number. + maximum: 4294967295 + minimum: 1 + type: integer + prependGlobalAS: + description: When set to true, the global ASN value is prepended to the AS path in outbound routes towards each BGP peer. + type: boolean + prependLocalAS: + description: When set to true, the local AS value is prepended to the AS path of inbound routes from each EBGP peer. + type: boolean + required: + - autonomousSystem + type: object + peerAS: + description: The autonomous system number expected from peers. + properties: + autonomousSystem: + description: Local Autonomous System number. + maximum: 4294967295 + minimum: 1 + type: integer + required: + - autonomousSystem + type: object + sendCommunityLarge: + description: When false, all large (12 byte) BGP communities from all outbound routes advertised to the peer are stripped. + type: boolean + sendCommunityStandard: + description: When false, all standard (4 byte) communities from all outbound routes advertised to the peer are stripped. + type: boolean + sendDefaultRoute: + description: Options for controlling the generation of default routes towards BGP peers. + properties: + addressFamily: + description: Enables the sending of a synthetically generated default IPv4 or IPV6 route to each peer. + items: + enum: + - IPV4-UNICAST + - IPV6-UNICAST + type: string + type: array + exportPolicy: + description: Reference to a Policy that should be applied to the advertised default routes, in order to set their attributes to non-default values. + type: string + required: + - addressFamily + type: object + timers: + description: Timer configurations + properties: + connectRetry: + description: The time interval in seconds between successive attempts to establish a session with a peer. + maximum: 65535 + minimum: 1 + type: integer + holdTime: + description: The hold-time interval in seconds that the router proposes to the peer in its OPEN message. + maximum: 65535 + minimum: 0 + type: integer + keepAlive: + description: The interval in seconds between successive keepalive messages sent to the peer. + maximum: 21845 + minimum: 0 + type: integer + minimumAdvertisementInterval: + description: The value assigned to the MinRouteAdvertisementIntervalTimer of RFC 4271, for both EBGP and IBGP sessions. + maximum: 255 + minimum: 1 + type: integer + type: object + required: + - clusterID + - defaultBGPRRGroup + - interface + - interfaceKind + type: object + status: + description: DefaultRouteReflectorStatus defines the observed state of DefaultRouteReflector + properties: + health: + description: Indicates the health score of the Route Reflector. + type: integer + healthScoreReason: + description: Indicates the reason for the health score. + type: string + lastChange: + description: The time when the state of the resource last changed. + type: string + numRouteReflectorBGPPeers: + description: Total number of configured route reflector client peers on the route reflector. + type: integer + numRouteReflectorBGPPeersOperDown: + description: Total number of configured route reflector client peers on the route reflector that are operationally down. + type: integer + operDownRouteReflectorPeers: + description: List of route reflector BGPPeers which are operationally down. + items: + type: string + type: array + operationalState: + description: Operational state of the Route Reflector. + type: string + type: object + type: object +served: true +storage: false +subresources: + status: {} diff --git a/static/resources/25.8.2/defaultrouters.routing.eda.nokia.com/v1alpha1.yaml b/static/resources/25.8.2/defaultrouters.routing.eda.nokia.com/v1alpha1.yaml new file mode 100644 index 0000000..c855d05 --- /dev/null +++ b/static/resources/25.8.2/defaultrouters.routing.eda.nokia.com/v1alpha1.yaml @@ -0,0 +1,228 @@ +additionalPrinterColumns: + - jsonPath: .status.lastChange + name: Last Change + type: date + - jsonPath: .status.operationalState + name: Operational State + type: string +name: v1alpha1 +schema: + openAPIV3Schema: + description: DefaultRouter is the Schema for the defaultrouters API + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + description: DefaultRouter enables the configuration of default routing instances on a specified Node, including options for BGP configuration, import and export policies, and router IDs. + properties: + bgp: + description: BGP configuration. + properties: + autonomousSystem: + description: Autonomous System number for BGP. + maximum: 4294967295 + minimum: 1 + type: integer + ebgpPreference: + default: 170 + description: Preference to be set for eBGP. + maximum: 255 + minimum: 1 + type: integer + enabled: + default: false + description: Enables BGP in the default VRF. + type: boolean + ibgpPreference: + default: 170 + description: Preference to be set for iBGP. + maximum: 255 + minimum: 1 + type: integer + ipv4Unicast: + description: Parameters relating to the IPv4 unicast AFI/SAFI. + properties: + advertiseIPV6NextHops: + description: Enables advertisement of IPv4 Unicast routes with IPv6 next-hops to peers. + type: boolean + enabled: + description: Enables the IPv4 unicast AFISAFI. + type: boolean + multipath: + description: Enable multipath. + properties: + allowMultipleAS: + default: true + description: When set to true, BGP is allowed to build a multipath set using BGP routes with different neighbor AS (most recent AS in the AS_PATH), When set to false, BGP is only allowed to use non-best paths for ECMP if they meet the multipath criteria and they have the same neighbor AS as the best path. + type: boolean + maxAllowedPaths: + description: The maximum number of BGP ECMP next-hops for BGP routes with an NLRI belonging to the address family of this configuration context. + maximum: 256 + minimum: 1 + type: integer + required: + - allowMultipleAS + - maxAllowedPaths + type: object + rapidUpdate: + description: Enables rapid update. + type: boolean + receiveIPV6NextHops: + description: Enables the advertisement of the RFC 5549 capability to receive IPv4 routes with IPv6 next-hops. + type: boolean + type: object + ipv6Unicast: + description: Parameters relating to the IPv6 unicast AFI/SAFI. + properties: + enabled: + description: Enables the IPv6 unicast AFISAFI + type: boolean + multipath: + description: Enable multipath + properties: + allowMultipleAS: + default: true + description: When set to true, BGP is allowed to build a multipath set using BGP routes with different neighbor AS (most recent AS in the AS_PATH), When set to false, BGP is only allowed to use non-best paths for ECMP if they meet the multipath criteria and they have the same neighbor AS as the best path. + type: boolean + maxAllowedPaths: + description: The maximum number of BGP ECMP next-hops for BGP routes with an NLRI belonging to the address family of this configuration context. + maximum: 256 + minimum: 1 + type: integer + required: + - allowMultipleAS + - maxAllowedPaths + type: object + rapidUpdate: + description: Enables rapid update. + type: boolean + type: object + keychain: + description: Keychain to be used for authentication + type: string + l2VPNEVPN: + description: Parameters relating to the EVPN AFI/SAFI. + properties: + advertiseIPV6NextHops: + description: Enables advertisement of EVPN routes with IPv6 next-hops to peers. + type: boolean + enabled: + description: Enables the L2VPN EVPN AFISAFI. + type: boolean + interASVPN: + default: false + description: Enable inter-AS VPN for EVPN. + type: boolean + multipath: + description: Enable multipath + properties: + allowMultipleAS: + default: true + description: When set to true, BGP is allowed to build a multipath set using BGP routes with different neighbor AS (most recent AS in the AS_PATH), When set to false, BGP is only allowed to use non-best paths for ECMP if they meet the multipath criteria and they have the same neighbor AS as the best path. + type: boolean + maxAllowedPaths: + description: The maximum number of BGP ECMP next-hops for BGP routes with an NLRI belonging to the address family of this configuration context. + maximum: 256 + minimum: 1 + type: integer + required: + - allowMultipleAS + - maxAllowedPaths + type: object + rapidUpdate: + description: Enables rapid update. + type: boolean + type: object + minWaitToAdvertise: + default: 0 + description: Minimum wait time before advertising routes post BGP restart. + maximum: 3600 + minimum: 0 + type: integer + rapidWithdrawl: + default: false + description: Enable rapid withdrawal in BGP. + type: boolean + sendCommunityLarge: + description: When false, all large (12 byte) BGP communities from all outbound routes advertised to the peer are stripped. + type: boolean + sendCommunityStandard: + description: When false, all standard (4 byte) communities from all outbound routes advertised to the peer are stripped. + type: boolean + waitForFibInstall: + default: false + description: Wait for FIB installation before advertising routes. + type: boolean + type: object + description: + description: Sets the description on the Default router. + type: string + exportPolicy: + description: Reference to a Policy resource to use when evaluating route exports from the DefaultRouter. + items: + type: string + type: array + importPolicy: + description: Reference to a Policy resource to use when evaluating route imports into the DefaultRouter. + items: + type: string + type: array + node: + description: Reference to a TopoNode on which to configure the default routing instance. + type: string + routeLeaking: + description: Route leaking controlled by routing policies in and out of the DefaultRouter. + properties: + exportPolicy: + description: Reference to a Policy resource to use when evaluating route exports from the DefaultRouter. + type: string + importPolicy: + description: Reference to a Policy resource to use when evaluating route imports into the DefaultRouter. + type: string + required: + - exportPolicy + - importPolicy + type: object + routerID: + description: Router ID in dotted quad notation. + type: string + required: + - node + - routerID + type: object + status: + description: DefaultRouterStatus defines the observed state of DefaultRouter + properties: + health: + description: Indicates the health score of the Router. + type: integer + healthScoreReason: + description: Indicates the reason for the health score. + type: string + lastChange: + description: The time when the state of the resource last changed. + type: string + operationalState: + description: Operational state of the Router. + type: string + type: object + type: object +served: true +storage: true +subresources: + status: {} diff --git a/static/resources/25.8.2/defaultrouterstates.routing.eda.nokia.com/v1alpha1.yaml b/static/resources/25.8.2/defaultrouterstates.routing.eda.nokia.com/v1alpha1.yaml new file mode 100644 index 0000000..0606314 --- /dev/null +++ b/static/resources/25.8.2/defaultrouterstates.routing.eda.nokia.com/v1alpha1.yaml @@ -0,0 +1,42 @@ +name: v1alpha1 +schema: + openAPIV3Schema: + description: DefaultRouterState is the Schema for the defaultrouterstates API + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + description: DefaultRouterStateSpec defines the desired state of DefaultRouterState + properties: + node: + description: Node on which the DefaultRouter is deployed + type: string + operatingSystem: + description: Operating System of the Node + type: string + required: + - node + type: object + status: + description: DefaultRouterStateStatus defines the observed state of DefaultRouterState + type: object + type: object +served: true +storage: true +subresources: + status: {} diff --git a/static/resources/25.8.2/defaultstaticroutes.protocols.eda.nokia.com/v1.yaml b/static/resources/25.8.2/defaultstaticroutes.protocols.eda.nokia.com/v1.yaml new file mode 100644 index 0000000..fe909b4 --- /dev/null +++ b/static/resources/25.8.2/defaultstaticroutes.protocols.eda.nokia.com/v1.yaml @@ -0,0 +1,120 @@ +name: v1 +schema: + openAPIV3Schema: + description: DefaultStaticRoute is the Schema for the default static routes API + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + description: DefaultStaticRoute enables the configuration of static routes within a DefaultRouter. It allows specifying destination prefixes, route preference, and a nexthop group. This resource facilitates precise control over routing behavior, including options for BFD, route resolution, and blackholing traffic. + properties: + defaultRouter: + description: Reference to a DefaultRouter on which to configure the static routes. + type: string + nexthopGroup: + description: Group of nexthops for the list of prefixes. + properties: + bfd: + description: Enables BFD to the next-hops in the group. Local and Remote discriminator parameters have been deprecated at this level. Use Nexthop to set these parameters. + properties: + enabled: + default: false + description: Defines whether BFD should be enabled towards the nexthops. + type: boolean + localAddress: + description: Defines the local address to use when establishing the BFD session with the nexthop. + type: string + type: object + blackhole: + default: false + description: If set to true all traffic destined to the prefixes will be blackholed. If enabled, next-hops are ignored and this takes precedence. + type: boolean + blackholeSendICMP: + description: When enabled, the router will generate ICMP Unreachable messages for packets destined to the blackhole route. + type: boolean + nexthops: + description: Ordered list of nexthops. + items: + properties: + bfd: + description: Enables BFD to the next-hops in the group. This overrides the configuration at the group. + properties: + enabled: + default: false + description: Defines whether BFD should be enabled towards the nexthops. + type: boolean + localAddress: + description: Defines the local address to use when establishing the BFD session with the nexthop. + type: string + localDiscriminator: + description: Defines the local discriminator. + type: integer + remoteDiscriminator: + description: Defines the remote discriminator. + type: integer + type: object + ipPrefix: + description: Address to use. + type: string + resolve: + default: false + description: If set to true the next-hops can be destinations which are resolved in the route table. This overrides the configuration at the group. + type: boolean + required: + - ipPrefix + type: object + type: array + resolve: + default: false + description: If set to true the next-hops can be destinations which are resolved in the route table. + type: boolean + type: object + preference: + description: Defines the route preference. + type: integer + prefixes: + description: List of destination prefixes and mask to use for the static routes. + items: + type: string + type: array + required: + - defaultRouter + - nexthopGroup + - prefixes + type: object + status: + description: DefaultStaticRouteStatus defines the observed state of default static route + properties: + health: + description: Indicates the health score of the static routes. + type: integer + healthScoreReason: + description: Indicates the reason for the health score. + type: string + lastChange: + description: The time when the state of the resource last changed. + type: string + operationalState: + description: Operational state of the static routes. + type: string + type: object + type: object +served: true +storage: true +subresources: + status: {} diff --git a/static/resources/25.8.2/defaultstaticroutes.protocols.eda.nokia.com/v1alpha1.yaml b/static/resources/25.8.2/defaultstaticroutes.protocols.eda.nokia.com/v1alpha1.yaml new file mode 100644 index 0000000..4c8774c --- /dev/null +++ b/static/resources/25.8.2/defaultstaticroutes.protocols.eda.nokia.com/v1alpha1.yaml @@ -0,0 +1,128 @@ +deprecated: true +deprecationWarning: This version is deprecated and will no longer be supported in the next version. +name: v1alpha1 +schema: + openAPIV3Schema: + description: DefaultStaticRoute is the Schema for the default static routes API + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + description: DefaultStaticRoute enables the configuration of static routes within a DefaultRouter. It allows specifying destination prefixes, route preference, and a nexthop group. This resource facilitates precise control over routing behavior, including options for BFD, route resolution, and blackholing traffic. + properties: + defaultRouter: + description: Reference to a DefaultRouter on which to configure the static routes. + type: string + nexthopGroup: + description: Group of nexthops for the list of prefixes. + properties: + bfd: + description: Enables BFD to the next-hops in the group. Local and Remote discriminator parameters have been deprecated at this level. Use Nexthop to set these parameters. + properties: + enabled: + default: false + description: Defines whether BFD should be enabled towards the nexthops. + type: boolean + localAddress: + description: Defines the local address to use when establishing the BFD session with the nexthop. + type: string + localDiscriminator: + description: Defines the local discriminator. + type: integer + remoteDiscriminator: + description: Defines the remote discriminator. + type: integer + type: object + blackhole: + default: false + description: If set to true all traffic destined to the prefixes will be blackholed. If enabled, next-hops are ignored and this takes precedence. + type: boolean + blackholeSendICMP: + description: When enabled, the router will generate ICMP Unreachable messages for packets destined to the blackhole route. + type: boolean + nexthops: + description: Ordered list of nexthops. + items: + properties: + bfd: + description: Enables BFD to the next-hops in the group. This overrides the configuration at the group. + properties: + enabled: + default: false + description: Defines whether BFD should be enabled towards the nexthops. + type: boolean + localAddress: + description: Defines the local address to use when establishing the BFD session with the nexthop. + type: string + localDiscriminator: + description: Defines the local discriminator. + type: integer + remoteDiscriminator: + description: Defines the remote discriminator. + type: integer + type: object + ipPrefix: + description: Address to use. + type: string + resolve: + default: false + description: If set to true the next-hops can be destinations which are resolved in the route table. This overrides the configuration at the group. + type: boolean + required: + - ipPrefix + type: object + type: array + resolve: + default: false + description: If set to true the next-hops can be destinations which are resolved in the route table. + type: boolean + type: object + preference: + description: Defines the route preference. + type: integer + prefixes: + description: List of destination prefixes and mask to use for the static routes. + items: + type: string + type: array + required: + - defaultRouter + - nexthopGroup + - prefixes + type: object + status: + description: DefaultStaticRouteStatus defines the observed state of default static route + properties: + health: + description: Indicates the health score of the static routes. + type: integer + healthScoreReason: + description: Indicates the reason for the health score. + type: string + lastChange: + description: The time when the state of the resource last changed. + type: string + operationalState: + description: Operational state of the static routes. + type: string + type: object + type: object +served: true +storage: false +subresources: + status: {} diff --git a/static/resources/25.8.2/deployimages.os.eda.nokia.com/v1alpha1.yaml b/static/resources/25.8.2/deployimages.os.eda.nokia.com/v1alpha1.yaml new file mode 100644 index 0000000..68086d1 --- /dev/null +++ b/static/resources/25.8.2/deployimages.os.eda.nokia.com/v1alpha1.yaml @@ -0,0 +1,238 @@ +additionalPrinterColumns: + - jsonPath: .status.result + name: Result + type: string + - jsonPath: .metadata.creationTimestamp + name: Age + type: date +name: v1alpha1 +schema: + openAPIV3Schema: + description: DeployImage is the Schema for the deployimages API + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + description: |- + Upgrade / downgrade images on targets. + This workflow can be used directly on a target or list of targets, or with selectors to select targets through labels. + It also supports tranches, which are groups of targets that can be upgraded together. + By default a set of checks are run before and after the image change, but this can be controlled via the checks field. + It also supports canaries, which are upgraded before any other targets. + properties: + canaries: + description: |- + List of node selectors to use to match canary nodes. + This matches labels on TopoNode resources, including those TopoNodes in the list of nodes that will be imaged. + Canary nodes are upgraded before any other nodes, and are used to test images before broader roll out. + This is a list of label expressions, e.g. ["eda.nokia.com/role=canary"]. + items: + type: string + type: array + checks: + description: Configure pre and post checks. + properties: + checks: + description: |- + Checks to run before (pre) and after (post) any image changes. + If none are specified, a default set of checks will be run. + items: + enum: + - Interface + - DefaultBGP + - PingISL + - PingSystem + type: string + type: array + force: + description: Ignore result of pre and post checks, do not prompt on failure. + type: boolean + skip: + description: Do not run any checks pre or post image change. + type: boolean + type: object + drains: + description: Configure drains to gracefully drain traffic away from nodes before imaging. + properties: + minimumWaitTimeSeconds: + default: 60 + description: |- + Seconds to wait before rebooting a node after it has been drained. + This is used to allow time for any traffic to drain away from the node before reboot. + type: integer + skip: + description: Do not run any drain operations. Nodes will be rebooted without attempting to gracefully drain them. + type: boolean + type: object + nodeProfile: + description: |- + Destination profile to use for imaging. + This profile contains the image to deploy, and other configuration for the node. + type: string + nodeSelectors: + description: |- + List of node selectors to select nodes to deploy images on. + This matches labels on TopoNode resources, including those TopoNodes in the list of nodes that will be imaged. + If no nodes are specified, and no node selectors are specified, all nodes in the given namespace will be selected. + This is a list of label expressions, e.g. ["eda.nokia.com/role=leaf"]. + items: + type: string + type: array + nodes: + description: List of nodes to deploy images on. + items: + type: string + type: array + prompt: + description: |- + Control when to prompt the user for input. + If any pre or post checks fail, the user will be prompted for input, but this may be used to prompt even if they're successful. + items: + enum: + - AfterPreChecks + - AfterPostChecks + type: string + type: array + tranches: + description: |- + List of tranches to use for imaging. + A tranche is a list of node selectors, and a name. + Tranches are upgraded in order, sequentially. + items: + properties: + name: + description: |- + Name of the tranche. + This is used to identify the tranche in the UI and in logs. + type: string + nodeSelectors: + description: |- + Node Selectors is a list of node selectors to select nodes to deploy images on in this tranche. + This matches labels on TopoNode resources, including those TopoNodes in the list of nodes that will be imaged. + This is a list of label expressions, e.g. ["eda.nokia.com/role=leaf"]. + items: + type: string + type: array + type: object + type: array + required: + - nodeProfile + type: object + status: + description: Status of the imaging operation. + properties: + details: + description: Per-node image deployment details. + items: + properties: + drainedTime: + description: |- + The time when the node was drained. + This is the time when the node was drained before the imaging operation. + format: date-time + type: string + newNodeProfile: + description: The new profile of the node. + type: string + newVersion: + description: The new version of the node. + type: string + node: + description: The name of the node this result is for. + type: string + postCheckSuccessful: + description: |- + Indicates if post checks were successful for this node. + This is true if all post checks passed, false if any post checks failed. + type: boolean + preCheckSuccessful: + description: |- + Indicates if pre checks were successful for this node. + This is true if all pre checks passed, false if any pre checks failed. + type: boolean + previousNodeProfile: + description: |- + The previous profile of the node. + This is the node profile that was running before the imaging operation. + type: string + previousVersion: + description: |- + The previous version of the node. + This is the version of the image that was running before the imaging operation. + type: string + rebootRecoveryTime: + description: |- + The time when the node was recovered after reboot. + This is the time when the node was recovered after the imaging operation. + format: date-time + type: string + rebootTime: + description: |- + The time when the node was rebooted. + This is the time when the node was rebooted during the imaging operation. + format: date-time + type: string + success: + description: |- + Indicates if the imaging operation was successful for this node. + This is true if the imaging operation was successful, false if it failed. + type: boolean + undrainedTime: + description: |- + The time when the node was undrained. + This is the time when the node was undrained after the imaging operation. + format: date-time + type: string + type: object + type: array + firstNodeDrained: + description: The time when the first node was drained. + format: date-time + type: string + firstNodeRebooted: + description: The time when the first node was rebooted. + format: date-time + type: string + lastNodeRebootRecovered: + description: The time when the last node recovered post reboot. + format: date-time + type: string + lastNodeUndrained: + description: The time when the last node was undrained. + format: date-time + type: string + result: + description: |- + Result is the overall result of the image operation. + It can be one of the following values: + - "Success": All images were successfully deployed. + - "Failed": No images were successfully deployed. + - "PartialSuccess": Some images were successfully deployed, but not all. + enum: + - Success + - Failed + - PartialSuccess + type: string + required: + - result + type: object + type: object +served: true +storage: true +subresources: + status: {} diff --git a/static/resources/25.8.2/designers.core.eda.nokia.com/v1.yaml b/static/resources/25.8.2/designers.core.eda.nokia.com/v1.yaml new file mode 100644 index 0000000..9d3d2c0 --- /dev/null +++ b/static/resources/25.8.2/designers.core.eda.nokia.com/v1.yaml @@ -0,0 +1,98 @@ +name: v1 +schema: + openAPIV3Schema: + description: Designer is the Schema for the designers API + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + description: DesignerSpec defines the desired state of Designer + properties: + nodeTemplate: + description: A list of templates to use with nodes + items: + properties: + interfaceGroup: + description: A list of interfaceGroups + items: + properties: + interfaceTemplate: + description: The interfaceTemplate associated with the interfaceGroup + properties: + fec: + description: Set Forward Error Correction on interfaces + type: string + numberChannel: + description: When set > 0 breakouts are configured on the interfaces + type: integer + speed: + description: The speed set on each interface + type: string + required: + - numberChannel + - speed + type: object + interfaces: + description: List of interfaces within the interfaceGroup in the dut-1/1/1 format (check this format) + items: + type: string + type: array + labels: + description: List of labels to associate with the interfaces within this interface Gropu + items: + type: string + type: array + required: + - interfaceTemplate + - interfaces + type: object + type: array + name: + type: string + operatingSystem: + description: The OS running on this TopoNode, e.g. srl, sros + enum: + - srl + - sros + - eos + - sonic + type: string + platform: + description: Platform type of this Node, e.g. 7220 IXR-D3L + type: string + version: + description: Sets the software version of this TopoNode, e.g. 22.6.1, 22.10.R1 + type: string + required: + - name + - operatingSystem + - platform + - version + type: object + type: array + required: + - nodeTemplate + type: object + status: + description: DesignerStatus defines the observed state of Designer + type: object + type: object +served: true +storage: true +subresources: + status: {} diff --git a/static/resources/25.8.2/deviationactions.core.eda.nokia.com/v1.yaml b/static/resources/25.8.2/deviationactions.core.eda.nokia.com/v1.yaml new file mode 100644 index 0000000..0a9bd4c --- /dev/null +++ b/static/resources/25.8.2/deviationactions.core.eda.nokia.com/v1.yaml @@ -0,0 +1,81 @@ +additionalPrinterColumns: + - jsonPath: .status.result + name: Result + type: string + - jsonPath: .metadata.creationTimestamp + name: Age + type: date +name: v1 +schema: + openAPIV3Schema: + description: DeviationAction is the Schema for the deviationactions API + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + description: |- + DeviationAction allows manual and API-driven actions to be performed on Deviation resources. + They are the only means to which and end user can accept or reject deviations, as Deviation resources themselves are read only. + properties: + actions: + description: The set of actions to perform on the target. + items: + properties: + action: + description: Action to perform on matching Deviations. + enum: + - setAccept + - clearAccept + - reject + type: string + path: + description: Path to match Deviation resources on this target. Only one action is allowed per path. + type: string + recurse: + description: Recursively accept/reject Deviations from the specified path. + type: boolean + required: + - action + - path + type: object + type: array + nodeEndpoint: + description: The target on which this action is to be performed. + type: string + required: + - actions + - nodeEndpoint + type: object + status: + description: DeviationActionStatus defines the observed state of DeviationAction + properties: + result: + description: The result of the set of actions. + enum: + - OK + - Failed + type: string + transactionId: + description: The transaction id these actions were part of. + type: integer + type: object + type: object +served: true +storage: true +subresources: + status: {} diff --git a/static/resources/25.8.2/deviationoverlays.topologies.eda.nokia.com/v1alpha1.yaml b/static/resources/25.8.2/deviationoverlays.topologies.eda.nokia.com/v1alpha1.yaml new file mode 100644 index 0000000..801dc68 --- /dev/null +++ b/static/resources/25.8.2/deviationoverlays.topologies.eda.nokia.com/v1alpha1.yaml @@ -0,0 +1,69 @@ +name: v1alpha1 +schema: + openAPIV3Schema: + description: DeviationOverlay is the Schema for deviationoverlays + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + description: DeviationOverlaySpec defines the desired state of DeviationOverlay + properties: + enabled: + description: Enable or disable the generation of the status of this overlay + type: boolean + topology: + description: Reference to the topology that this overlay is extending. + properties: + group: + description: The group of the application which published the topology this overlay is extending. + type: string + name: + description: The name of the resource which published the topology this overlay is extending. + type: string + version: + description: The version of the application which published the topology this overlay is extending. + type: string + required: + - group + - name + - version + type: object + uiDescription: + description: A description of the overlay to expose in the UI + type: string + uiDescriptionKey: + description: The translation key for the description of the overlay to expose in the UI + type: string + uiName: + description: The name of the overlay to expose in the UI + type: string + uiNameKey: + description: The translation key for the name of the overlay to expose in the UI + type: string + required: + - enabled + - topology + type: object + status: + description: DeviationOverlayStatus defines the observed state of DeviationOverlay + type: object + type: object +served: true +storage: true +subresources: + status: {} diff --git a/static/resources/25.8.2/deviations.core.eda.nokia.com/v1.yaml b/static/resources/25.8.2/deviations.core.eda.nokia.com/v1.yaml new file mode 100644 index 0000000..d6ead7a --- /dev/null +++ b/static/resources/25.8.2/deviations.core.eda.nokia.com/v1.yaml @@ -0,0 +1,90 @@ +additionalPrinterColumns: + - jsonPath: .spec.operation + name: OPERATION + type: string + - jsonPath: .spec.path + name: JSPATH + type: string +name: v1 +schema: + openAPIV3Schema: + description: Deviation is the Schema for the nodeconfigs API + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + description: |- + Deviations are used to represent differences between the intended and actual state of a target. + They indicate the intended state - or the computed configuration EDA expects, and compare this to the actual or running state, or the configuration retrieved from the target. + Deviations are most often generated by out-of-band changes to a target by an external system or user, and + can be accepted or rejected. Rejecting a Deviation will result in the intended configuration being re-applied, undoing the out-of-band change. + Deviations are raised per table, meaning a single change on a target may result in more than one Deviation. + properties: + accepted: + description: Indicates whether this Deviation has been accepted. + type: boolean + associatedCrs: + description: Resources impacted by this Deviation. + items: + properties: + groupVersion: + description: Group and version of the resource. + type: string + kind: + description: Kind of the resource. + type: string + name: + description: Name of the resource. + type: string + required: + - groupVersion + - kind + - name + type: object + type: array + intendedValues: + description: JSON object containing intended values of fields at the specified path. + type: string + nodeEndpoint: + description: Target on which this Deviation is present. + type: string + operation: + description: Indicates the operation in this Deviation. + enum: + - create + - delete + type: string + path: + description: Path on the target this Deviation is present at. This path is relative to the target's root, without any EDA prefixes - for example ".system" rather than ".namespace.node.srl.system". + type: string + runningValues: + description: JSON object containing running values of fields at the specified path. + type: string + required: + - nodeEndpoint + - operation + - path + type: object + status: + description: DeviationStatus defines the observed state of Deviation + type: object + type: object +served: true +storage: true +subresources: + status: {} diff --git a/static/resources/25.8.2/dhcprelays.services.eda.nokia.com/v1.yaml b/static/resources/25.8.2/dhcprelays.services.eda.nokia.com/v1.yaml new file mode 100644 index 0000000..db5d73c --- /dev/null +++ b/static/resources/25.8.2/dhcprelays.services.eda.nokia.com/v1.yaml @@ -0,0 +1,63 @@ +name: v1 +schema: + openAPIV3Schema: + description: DHCPRelay is the Schema for the dhcprelays API + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + description: The DHCPRelay enables the forwarding of DHCP requests and responses between clients and servers across different networks. This resource allows for the configuration of various DHCP relay sub-options, such as CircuitID, RemoteID, and ClientLinkLayerAddress, to provide detailed client information. It also includes settings for specifying the router to reach the DHCP server, the list of DHCP servers to forward requests to, and selectors for Routed and IRB interfaces where the relay will be configured. Additionally, the GI Address option can be set to derive the Gateway IP address from the selected interface, ensuring correct routing of DHCP messages. + properties: + giAddress: + description: Set GI Address to the IP derived from the IRBInterface or RoutedInterface on which the DHCP relay is configured. + type: boolean + irbInterfaceSelector: + description: Label selector to select the IRBInterface on which to configure the DHCP relay. + items: + type: string + type: array + routedInterfaceSelector: + description: Label selector to select the RoutedInterface on which to configure the DHCP relay. + items: + type: string + type: array + router: + description: Router to be used to reach the DHCP server, if not specified the Router under which the source IRBInterface or RoutedInterface resides will be used. + type: string + servers: + description: List of servers to send the DHCP relayed packet to. These can be IP addresses or FQDN. + items: + type: string + minItems: 1 + type: array + subOptions: + description: DHCP Relay sub-options; available options are CircuitID, RemoteID, and ClientLinkLayerAddress. + items: + type: string + type: array + required: + - servers + type: object + status: + description: DHCPRelayStatus defines the observed state of DHCPRelay + type: object + type: object +served: true +storage: true +subresources: + status: {} diff --git a/static/resources/25.8.2/dhcprelays.services.eda.nokia.com/v1alpha1.yaml b/static/resources/25.8.2/dhcprelays.services.eda.nokia.com/v1alpha1.yaml new file mode 100644 index 0000000..9630748 --- /dev/null +++ b/static/resources/25.8.2/dhcprelays.services.eda.nokia.com/v1alpha1.yaml @@ -0,0 +1,65 @@ +deprecated: true +deprecationWarning: This version is deprecated and will no longer be supported in the next version. +name: v1alpha1 +schema: + openAPIV3Schema: + description: DHCPRelay is the Schema for the dhcprelays API + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + description: The DHCPRelay enables the forwarding of DHCP requests and responses between clients and servers across different networks. This resource allows for the configuration of various DHCP relay sub-options, such as CircuitID, RemoteID, and ClientLinkLayerAddress, to provide detailed client information. It also includes settings for specifying the router to reach the DHCP server, the list of DHCP servers to forward requests to, and selectors for Routed and IRB interfaces where the relay will be configured. Additionally, the GI Address option can be set to derive the Gateway IP address from the selected interface, ensuring correct routing of DHCP messages. + properties: + giAddress: + description: Set GI Address to the IP derived from the IRBInterface or RoutedInterface on which the DHCP relay is configured. + type: boolean + irbInterfaceSelector: + description: Label selector to select the IRBInterface on which to configure the DHCP relay. + items: + type: string + type: array + routedInterfaceSelector: + description: Label selector to select the RoutedInterface on which to configure the DHCP relay. + items: + type: string + type: array + router: + description: Router to be used to reach the DHCP server, if not specified the Router under which the source IRBInterface or RoutedInterface resides will be used. + type: string + servers: + description: List of servers to send the DHCP relayed packet to. These can be IP addresses or FQDN. + items: + type: string + minItems: 1 + type: array + subOptions: + description: DHCP Relay sub-options; available options are CircuitID, RemoteID, and ClientLinkLayerAddress. + items: + type: string + type: array + required: + - servers + type: object + status: + description: DHCPRelayStatus defines the observed state of DHCPRelay + type: object + type: object +served: true +storage: false +subresources: + status: {} diff --git a/static/resources/25.8.2/discoveries.components.eda.nokia.com/v1.yaml b/static/resources/25.8.2/discoveries.components.eda.nokia.com/v1.yaml new file mode 100644 index 0000000..fbdeb0b --- /dev/null +++ b/static/resources/25.8.2/discoveries.components.eda.nokia.com/v1.yaml @@ -0,0 +1,53 @@ +name: v1 +schema: + openAPIV3Schema: + description: Discovery is the Schema for the discoveries API + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + description: DiscoverySpec defines the desired state of Discovery + properties: + nodeSelector: + description: Selector to use when selecting TopoNodes to discover components for. + items: + type: string + type: array + nodes: + description: ' TopoNodes to discover components for.' + items: + type: string + type: array + operatingSystem: + description: Operating system to match against when selecting TopoNodes + type: string + type: object + status: + description: DiscoveryStatus defines the observed state of Discovery + properties: + nodes: + description: List of TopoNodes component discovery is running for + items: + type: string + type: array + type: object + type: object +served: true +storage: true +subresources: + status: {} diff --git a/static/resources/25.8.2/discoveries.components.eda.nokia.com/v1alpha1.yaml b/static/resources/25.8.2/discoveries.components.eda.nokia.com/v1alpha1.yaml new file mode 100644 index 0000000..f31a95e --- /dev/null +++ b/static/resources/25.8.2/discoveries.components.eda.nokia.com/v1alpha1.yaml @@ -0,0 +1,53 @@ +name: v1alpha1 +schema: + openAPIV3Schema: + description: Discovery is the Schema for the discoveries API + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + description: DiscoverySpec defines the desired state of Discovery + properties: + nodeSelector: + description: Selector to use when selecting TopoNodes to discover components for. + items: + type: string + type: array + nodes: + description: ' TopoNodes to discover components for.' + items: + type: string + type: array + operatingSystem: + description: Operating system to match against when selecting TopoNodes + type: string + type: object + status: + description: DiscoveryStatus defines the observed state of Discovery + properties: + nodes: + description: List of TopoNodes component discovery is running for + items: + type: string + type: array + type: object + type: object +served: true +storage: false +subresources: + status: {} diff --git a/static/resources/25.8.2/discoveryaggregatestates.components.eda.nokia.com/v1.yaml b/static/resources/25.8.2/discoveryaggregatestates.components.eda.nokia.com/v1.yaml new file mode 100644 index 0000000..96bfc05 --- /dev/null +++ b/static/resources/25.8.2/discoveryaggregatestates.components.eda.nokia.com/v1.yaml @@ -0,0 +1,39 @@ +name: v1 +schema: + openAPIV3Schema: + description: DiscoveryAggregateState is the Schema for the discoveryaggregatestates API + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + description: DiscoveryAggregateStateSpec defines the desired state of DiscoveryAggregateState + properties: + nodes: + description: List of TopoNodes this discovery is for. + items: + type: string + type: array + type: object + status: + description: DiscoveryAggregateStateStatus defines the observed state of DiscoveryAggregateState + type: object + type: object +served: true +storage: true +subresources: + status: {} diff --git a/static/resources/25.8.2/discoveryaggregatestates.components.eda.nokia.com/v1alpha1.yaml b/static/resources/25.8.2/discoveryaggregatestates.components.eda.nokia.com/v1alpha1.yaml new file mode 100644 index 0000000..0bbfbea --- /dev/null +++ b/static/resources/25.8.2/discoveryaggregatestates.components.eda.nokia.com/v1alpha1.yaml @@ -0,0 +1,39 @@ +name: v1alpha1 +schema: + openAPIV3Schema: + description: DiscoveryAggregateState is the Schema for the discoveryaggregatestates API + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + description: DiscoveryAggregateStateSpec defines the desired state of DiscoveryAggregateState + properties: + nodes: + description: List of TopoNodes this discovery is for. + items: + type: string + type: array + type: object + status: + description: DiscoveryAggregateStateStatus defines the observed state of DiscoveryAggregateState + type: object + type: object +served: true +storage: false +subresources: + status: {} diff --git a/static/resources/25.8.2/discoverystates.components.eda.nokia.com/v1.yaml b/static/resources/25.8.2/discoverystates.components.eda.nokia.com/v1.yaml new file mode 100644 index 0000000..6754ccd --- /dev/null +++ b/static/resources/25.8.2/discoverystates.components.eda.nokia.com/v1.yaml @@ -0,0 +1,47 @@ +name: v1 +schema: + openAPIV3Schema: + description: DiscoveryState is the Schema for the discoverystates API + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + description: DiscoveryStateSpec defines the desired state of DiscoveryState + properties: + node: + description: Reference to the TopoNode being discovered + type: string + operatingSystem: + description: The operating system of the TopoNode being discovered + type: string + version: + description: The version of the TopoNode being discovered + type: string + required: + - node + - operatingSystem + - version + type: object + status: + description: DiscoveryStateStatus defines the observed state of DiscoveryState + type: object + type: object +served: true +storage: true +subresources: + status: {} diff --git a/static/resources/25.8.2/discoverystates.components.eda.nokia.com/v1alpha1.yaml b/static/resources/25.8.2/discoverystates.components.eda.nokia.com/v1alpha1.yaml new file mode 100644 index 0000000..c43e4d3 --- /dev/null +++ b/static/resources/25.8.2/discoverystates.components.eda.nokia.com/v1alpha1.yaml @@ -0,0 +1,47 @@ +name: v1alpha1 +schema: + openAPIV3Schema: + description: DiscoveryState is the Schema for the discoverystates API + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + description: DiscoveryStateSpec defines the desired state of DiscoveryState + properties: + node: + description: Reference to the TopoNode being discovered + type: string + operatingSystem: + description: The operating system of the TopoNode being discovered + type: string + version: + description: The version of the TopoNode being discovered + type: string + required: + - node + - operatingSystem + - version + type: object + status: + description: DiscoveryStateStatus defines the observed state of DiscoveryState + type: object + type: object +served: true +storage: false +subresources: + status: {} diff --git a/static/resources/25.8.2/drains.routing.eda.nokia.com/v1alpha1.yaml b/static/resources/25.8.2/drains.routing.eda.nokia.com/v1alpha1.yaml new file mode 100644 index 0000000..f670dfd --- /dev/null +++ b/static/resources/25.8.2/drains.routing.eda.nokia.com/v1alpha1.yaml @@ -0,0 +1,58 @@ +additionalPrinterColumns: + - jsonPath: .spec.enabled + name: Enabled + type: string +name: v1alpha1 +schema: + openAPIV3Schema: + description: Drain is the Schema for the drains API + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + description: Drain allows for the controlled disabling or draining of specific DefaultRouters, either by selecting them through labels or directly referencing them, ensuring traffic is safely rerouted or dropped before the routers are decommissioned. + properties: + defaultRouterSelector: + description: Selector to use when selecting DefaultRouters to drain. + items: + type: string + type: array + defaultRouters: + description: Reference to DefaultRouters to drain. + items: + type: string + type: array + enabled: + default: true + description: Enable this Drain. + type: boolean + type: object + status: + description: DrainStatus defines the observed state of Drain. + properties: + defaultRouters: + description: List of DefaultRouters this Drain has been applied to + items: + type: string + type: array + type: object + type: object +served: true +storage: true +subresources: + status: {} diff --git a/static/resources/25.8.2/drainstates.routing.eda.nokia.com/v1alpha1.yaml b/static/resources/25.8.2/drainstates.routing.eda.nokia.com/v1alpha1.yaml new file mode 100644 index 0000000..d2746fd --- /dev/null +++ b/static/resources/25.8.2/drainstates.routing.eda.nokia.com/v1alpha1.yaml @@ -0,0 +1,39 @@ +name: v1alpha1 +schema: + openAPIV3Schema: + description: DrainState is the Schema for the drainstates API + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + description: DrainStateSpec defines the desired state of DrainState + properties: + defaultRouters: + description: List of DefaultRouters this drain has been applied to + items: + type: string + type: array + type: object + status: + description: DrainStateStatus defines the observed state of DrainState + type: object + type: object +served: true +storage: true +subresources: + status: {} diff --git a/static/resources/25.8.2/edgeinterfaces.core.eda.nokia.com/v1.yaml b/static/resources/25.8.2/edgeinterfaces.core.eda.nokia.com/v1.yaml new file mode 100644 index 0000000..0d467a5 --- /dev/null +++ b/static/resources/25.8.2/edgeinterfaces.core.eda.nokia.com/v1.yaml @@ -0,0 +1,86 @@ +name: v1 +schema: + openAPIV3Schema: + description: EdgeInterface is the Schema for the edgeinterfaces API + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + description: EdgeInterfaceSpec defines the desired state of EdgeInterface + properties: + bridgeDomain: + description: Reference to a Bridge Domain + type: string + encapType: + default: "null" + description: Indicates if the EdgeInterface uses VLAN tagging + enum: + - "null" + - dot1q + type: string + gatewayIPV4Addresses: + description: List of gateway IPv4 addresses in ip/mask form - e.g. 192.168.0.1/24 + items: + properties: + ipPrefix: + description: Address and mask to use + type: string + primary: + description: Indicates which address to use as primary for broadcast + type: boolean + required: + - ipPrefix + type: object + type: array + gatewayIPV6Addresses: + description: List of gateway IPv6 addresses in ip/mask form - e.g. fc00::1/120 + items: + properties: + ipPrefix: + description: Address and mask to use + type: string + primary: + description: Indicates which address to use as primary for broadcast + type: boolean + required: + - ipPrefix + type: object + type: array + interfaceResource: + description: Reference to an interface + type: string + router: + description: Reference to a Router + type: string + vlanID: + description: Single value between 0-4094 supported + maximum: 4094 + minimum: 0 + type: integer + required: + - encapType + - interfaceResource + type: object + status: + description: EdgeInterfaceStatus defines the observed state of EdgeInterface + type: object + type: object +served: true +storage: true +subresources: + status: {} diff --git a/static/resources/25.8.2/edgepings.services.eda.nokia.com/v1.yaml b/static/resources/25.8.2/edgepings.services.eda.nokia.com/v1.yaml new file mode 100644 index 0000000..12b9633 --- /dev/null +++ b/static/resources/25.8.2/edgepings.services.eda.nokia.com/v1.yaml @@ -0,0 +1,67 @@ +additionalPrinterColumns: + - jsonPath: .status.id + name: ID + type: integer + - jsonPath: .status.result + name: Result + type: string + - jsonPath: .metadata.creationTimestamp + name: Age + type: date +name: v1 +schema: + openAPIV3Schema: + description: EdgePing is the Schema for the edgepings API + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + description: EdgePingSpec defines the desired state of EdgePing + properties: + destination: + type: string + interfaceResource: + type: string + pingType: + enum: + - gateway + - edgemesh + - edge + type: string + virtualNetwork: + type: string + vlanID: + type: integer + required: + - pingType + type: object + status: + description: EdgePingStatus defines the observed state of EdgePing + properties: + id: + description: Id + type: integer + result: + description: Aggregate result of the Flow + type: string + type: object + type: object +served: true +storage: true +subresources: + status: {} diff --git a/static/resources/25.8.2/edgepings.services.eda.nokia.com/v1alpha1.yaml b/static/resources/25.8.2/edgepings.services.eda.nokia.com/v1alpha1.yaml new file mode 100644 index 0000000..d3afcbb --- /dev/null +++ b/static/resources/25.8.2/edgepings.services.eda.nokia.com/v1alpha1.yaml @@ -0,0 +1,69 @@ +additionalPrinterColumns: + - jsonPath: .status.id + name: ID + type: integer + - jsonPath: .status.result + name: Result + type: string + - jsonPath: .metadata.creationTimestamp + name: Age + type: date +deprecated: true +deprecationWarning: This version is deprecated and will no longer be supported in the next version. +name: v1alpha1 +schema: + openAPIV3Schema: + description: EdgePing is the Schema for the edgepings API + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + description: EdgePingSpec defines the desired state of EdgePing + properties: + destination: + type: string + interfaceResource: + type: string + pingType: + enum: + - gateway + - edgemesh + - edge + type: string + virtualNetwork: + type: string + vlanID: + type: integer + required: + - pingType + type: object + status: + description: EdgePingStatus defines the observed state of EdgePing + properties: + id: + description: Id + type: integer + result: + description: Aggregate result of the Flow + type: string + type: object + type: object +served: true +storage: false +subresources: + status: {} diff --git a/static/resources/25.8.2/egresspolicys.qos.eda.nokia.com/v1.yaml b/static/resources/25.8.2/egresspolicys.qos.eda.nokia.com/v1.yaml new file mode 100644 index 0000000..85c610a --- /dev/null +++ b/static/resources/25.8.2/egresspolicys.qos.eda.nokia.com/v1.yaml @@ -0,0 +1,262 @@ +name: v1 +schema: + openAPIV3Schema: + description: EgressPolicy is the Schema for the egresspolicys API + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + description: EgressPolicySpec defines the desired state of EgressPolicy + properties: + dot1pRewritePolicy: + description: Dot1pRewritePolicy enables the configuration of rewrite policies for Dot1p values. It includes mappings of forwarding classes to Dot1p values, with options for drop probability-specific overrides within each forwarding class. + properties: + dot1pMap: + description: Map of forwarding classes to PCP values + items: + properties: + dropProbability: + description: Drop probability specific overrides within the forwarding class + items: + properties: + level: + description: A drop probability level within the forwarding class for which a different remarking is desired + enum: + - High + - Medium + - Low + type: string + pcpValue: + description: The PCP value to be used for packets associated with the forwarding class and the specific drop probability. This overrides the general PCP value. + maximum: 7 + minimum: 0 + type: integer + type: object + type: array + forwardingClasses: + description: The forwarding class matched to apply the rewrite policy + items: + type: string + type: array + pcpValue: + description: The PCP value to be used for all packets associated with the forwarding class, except those with a drop-probability-specific or profile-specific override + maximum: 7 + minimum: 0 + type: integer + required: + - forwardingClasses + type: object + type: array + required: + - dot1pMap + type: object + dscpRewritePolicy: + description: DSCPRewritePolicy enables the configuration of rewrite policies for Differentiated Services Code Point (DSCP) values. It includes mappings of forwarding classes to DSCP values, with options for drop probability-specific overrides within each forwarding class. If a DSCPRewritePolicy is not specified, the DSCP value of the packet is unchanged. If a DSCP policy is specific and ECN is enabled on any of the queues, the DSCP policy will be applied to all ECN capable packets. + properties: + dscpMap: + description: Map of forwarding classes to DSCP values. + items: + properties: + dropProbability: + description: A drop probability within the forwarding class for which a different remarking is desired. + items: + properties: + dscp: + description: The DSCP value to be used for packets associated with the forwarding class and the specific drop probability. This overrides the general DSCP value. + maximum: 63 + minimum: 0 + type: integer + level: + description: A drop probability level within the forwarding class for which a different remarking is desired. + enum: + - High + - Medium + - Low + type: string + type: object + type: array + dscp: + description: The DSCP value to be used for all packets associated with the forwarding class, except those with a drop-probability-specific or profile-specific override. + maximum: 63 + minimum: 0 + type: integer + forwardingClasses: + description: The forwarding class matched to apply the rewrite policy. + items: + type: string + type: array + required: + - forwardingClasses + type: object + type: array + required: + - dscpMap + type: object + forwardingClassToQueueMapping: + description: Forwarding class to queue mapping policy. + items: + properties: + forwardingClasses: + description: The forwarding classes to which the mapping applies, these are references to ForwardingClass resources. + items: + type: string + minItems: 1 + type: array + queue: + description: The queue to which the forwarding classes are mapped, this is a reference to a Queue resource. + type: string + queueGroup: + description: The queue-group name for queue to forwarding class mapping. + type: string + required: + - forwardingClasses + - queue + type: object + type: array + pfcDeadlockAvoidance: + description: Parameters related to avoid a deadlock related to pfc on outgoing interface. + properties: + deadlockAvoidance: + description: Parameters related to avoid a deadlock related to pfc on outgoing interface + type: boolean + deadlockDetectionTimer: + description: Number of milliseconds during which outgoing interface is receiving pfc-pause-frames before triggering recovery-timer. + type: integer + deadlockRecoveryTimer: + description: Number of milliseconds during which the pfc-pause-frames will be ignored. + type: integer + required: + - deadlockAvoidance + - deadlockDetectionTimer + - deadlockRecoveryTimer + type: object + queueManagement: + description: Queue management policy for egress queues. + items: + properties: + queues: + description: List of queues. + items: + properties: + committedBurstSize: + description: Committed Burst Size. + format: int32 + type: integer + maximumBurstSize: + description: Maximum amount of shared buffer memory available to the queue in bytes. + format: int32 + maximum: 4294967295 + minimum: 0 + type: integer + pfcPauseFramePriority: + description: The pfc-priority received in pfc-pause-frame. + type: integer + queue: + description: Reference to a Queue resource. + type: string + schedulerPeakRatePercent: + description: The peak rate percent used by the scheduler for the queue. + maximum: 100 + minimum: 1 + type: integer + schedulerPriorityLevel: + description: The priority level at this Port Scheduler Policy. + maximum: 8 + minimum: 1 + type: integer + schedulerWeight: + description: The weight factor used for the WRR scheduler. If any of the queues have a configured weight the set of queues will use a WRR scheduler and thus all queues must have a weight configured. If no weights are set then the queues are scheduled in strict priority from lowest to higher queue ID. + maximum: 255 + minimum: 0 + type: integer + required: + - maximumBurstSize + - queue + type: object + type: array + slopePolicyWeight: + default: 0 + description: 'The average queue size is calculated using both the previous average and the current queue size: average = (previous average)(1 - 2^(-n)) + (current size)(2^(-n)), where n is a user-configurable weight factor. A higher n gives more importance to the previous average, smoothing peaks and lows in the queue. Lower n makes the average closer to the current queue size. If this leaf is absent, the default value is used.' + maximum: 15 + minimum: 0 + type: integer + wredSlopPolicies: + description: Slope policy to apply to the set of queues. + items: + properties: + drop: + default: false + description: When set to true, and if the ECN field in the packet indicates that the endpoints are not ECN-capable, and the WRED algorithm determines that the packet should be dropped based on the drop probability, the packet will be dropped + type: boolean + dropProbability: + default: All + enum: + - High + - Medium + - Low + - All + type: string + ecn: + default: false + description: When set to true and the queue length is between the thresholds and the ECN field indicates ECN-capable endpoints, the CE bits are set to 1, and the packet is transmitted based on WRED. If false, such packets are discarded. + type: boolean + maxDropProbabilityPercent: + description: If the queue depth is between min and max threshold then this the probability with which packets are dropped or marked. + type: integer + maxThreshold: + description: The maximum threshold parameter for a RED-managed queue in bytes. When the average queue length exceeds the max value, all packets are dropped (or marked if ECN is enabled). Mutually exclusive with min-threshold-percent and max-threshold-percent. + format: int64 + type: integer + maxThresholdPercent: + description: The maximum threshold parameter for a RED-managed queue in percent. When the average queue length exceeds the max value, all packets are dropped (or marked if ECN is enabled). Mutually exclusive with min-threshold and max-threshold. + type: integer + minThreshold: + description: The mininum threshold parameter for a RED-managed queue in bytes. When the average queue length is less than min, all packets are admitted to the queue. Mututally exclusive with min-threshold-percent and max-threshold-percent. + format: int64 + type: integer + minThresholdPercent: + description: The mininum threshold parameter for a RED-managed queue in percent. When the average queue length is less than min, all packets are admitted to the queue. Mutually exclusive with min-threshold and max-threshold. + type: integer + trafficType: + default: All + description: The traffic type to which the WRED slope applies. + enum: + - Tcp + - NonTcp + - All + type: string + required: + - drop + - dropProbability + - ecn + - trafficType + type: object + type: array + required: + - queues + type: object + type: array + type: object + status: + description: EgressPolicyStatus defines the observed state of EgressPolicy + type: object + type: object +served: true +storage: true +subresources: + status: {} diff --git a/static/resources/25.8.2/egresspolicys.qos.eda.nokia.com/v1alpha1.yaml b/static/resources/25.8.2/egresspolicys.qos.eda.nokia.com/v1alpha1.yaml new file mode 100644 index 0000000..b01dfce --- /dev/null +++ b/static/resources/25.8.2/egresspolicys.qos.eda.nokia.com/v1alpha1.yaml @@ -0,0 +1,264 @@ +deprecated: true +deprecationWarning: This version is deprecated and will no longer be supported in the next version. +name: v1alpha1 +schema: + openAPIV3Schema: + description: EgressPolicy is the Schema for the egresspolicys API + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + description: EgressPolicySpec defines the desired state of EgressPolicy + properties: + dot1pRewritePolicy: + description: Dot1pRewritePolicy enables the configuration of rewrite policies for Dot1p values. It includes mappings of forwarding classes to Dot1p values, with options for drop probability-specific overrides within each forwarding class. + properties: + dot1pMap: + description: Map of forwarding classes to PCP values + items: + properties: + dropProbability: + description: Drop probability specific overrides within the forwarding class + items: + properties: + level: + description: A drop probability level within the forwarding class for which a different remarking is desired + enum: + - High + - Medium + - Low + type: string + pcpValue: + description: The PCP value to be used for packets associated with the forwarding class and the specific drop probability. This overrides the general PCP value. + maximum: 7 + minimum: 0 + type: integer + type: object + type: array + forwardingClasses: + description: The forwarding class matched to apply the rewrite policy + items: + type: string + type: array + pcpValue: + description: The PCP value to be used for all packets associated with the forwarding class, except those with a drop-probability-specific or profile-specific override + maximum: 7 + minimum: 0 + type: integer + required: + - forwardingClasses + type: object + type: array + required: + - dot1pMap + type: object + dscpRewritePolicy: + description: DSCPRewritePolicy enables the configuration of rewrite policies for Differentiated Services Code Point (DSCP) values. It includes mappings of forwarding classes to DSCP values, with options for drop probability-specific overrides within each forwarding class. If a DSCPRewritePolicy is not specified, the DSCP value of the packet is unchanged. If a DSCP policy is specific and ECN is enabled on any of the queues, the DSCP policy will be applied to all ECN capable packets. + properties: + dscpMap: + description: Map of forwarding classes to DSCP values. + items: + properties: + dropProbability: + description: A drop probability within the forwarding class for which a different remarking is desired. + items: + properties: + dscp: + description: The DSCP value to be used for packets associated with the forwarding class and the specific drop probability. This overrides the general DSCP value. + maximum: 63 + minimum: 0 + type: integer + level: + description: A drop probability level within the forwarding class for which a different remarking is desired. + enum: + - High + - Medium + - Low + type: string + type: object + type: array + dscp: + description: The DSCP value to be used for all packets associated with the forwarding class, except those with a drop-probability-specific or profile-specific override. + maximum: 63 + minimum: 0 + type: integer + forwardingClasses: + description: The forwarding class matched to apply the rewrite policy. + items: + type: string + type: array + required: + - forwardingClasses + type: object + type: array + required: + - dscpMap + type: object + forwardingClassToQueueMapping: + description: Forwarding class to queue mapping policy. + items: + properties: + forwardingClasses: + description: The forwarding classes to which the mapping applies, these are references to ForwardingClass resources. + items: + type: string + minItems: 1 + type: array + queue: + description: The queue to which the forwarding classes are mapped, this is a reference to a Queue resource. + type: string + queueGroup: + description: The queue-group name for queue to forwarding class mapping. + type: string + required: + - forwardingClasses + - queue + type: object + type: array + pfcDeadlockAvoidance: + description: Parameters related to avoid a deadlock related to pfc on outgoing interface. + properties: + deadlockAvoidance: + description: Parameters related to avoid a deadlock related to pfc on outgoing interface + type: boolean + deadlockDetectionTimer: + description: Number of milliseconds during which outgoing interface is receiving pfc-pause-frames before triggering recovery-timer. + type: integer + deadlockRecoveryTimer: + description: Number of milliseconds during which the pfc-pause-frames will be ignored. + type: integer + required: + - deadlockAvoidance + - deadlockDetectionTimer + - deadlockRecoveryTimer + type: object + queueManagement: + description: Queue management policy for egress queues. + items: + properties: + queues: + description: List of queues. + items: + properties: + committedBurstSize: + description: Committed Burst Size. + format: int32 + type: integer + maximumBurstSize: + description: Maximum amount of shared buffer memory available to the queue in bytes. + format: int32 + maximum: 4294967295 + minimum: 0 + type: integer + pfcPauseFramePriority: + description: The pfc-priority received in pfc-pause-frame. + type: integer + queue: + description: Reference to a Queue resource. + type: string + schedulerPeakRatePercent: + description: The peak rate percent used by the scheduler for the queue. + maximum: 100 + minimum: 1 + type: integer + schedulerPriorityLevel: + description: The priority level at this Port Scheduler Policy. + maximum: 8 + minimum: 1 + type: integer + schedulerWeight: + description: The weight factor used for the WRR scheduler. If any of the queues have a configured weight the set of queues will use a WRR scheduler and thus all queues must have a weight configured. If no weights are set then the queues are scheduled in strict priority from lowest to higher queue ID. + maximum: 255 + minimum: 0 + type: integer + required: + - maximumBurstSize + - queue + type: object + type: array + slopePolicyWeight: + default: 0 + description: 'The average queue size is calculated using both the previous average and the current queue size: average = (previous average)(1 - 2^(-n)) + (current size)(2^(-n)), where n is a user-configurable weight factor. A higher n gives more importance to the previous average, smoothing peaks and lows in the queue. Lower n makes the average closer to the current queue size. If this leaf is absent, the default value is used.' + maximum: 15 + minimum: 0 + type: integer + wredSlopPolicies: + description: Slope policy to apply to the set of queues. + items: + properties: + drop: + default: false + description: When set to true, and if the ECN field in the packet indicates that the endpoints are not ECN-capable, and the WRED algorithm determines that the packet should be dropped based on the drop probability, the packet will be dropped + type: boolean + dropProbability: + default: All + enum: + - High + - Medium + - Low + - All + type: string + ecn: + default: false + description: When set to true and the queue length is between the thresholds and the ECN field indicates ECN-capable endpoints, the CE bits are set to 1, and the packet is transmitted based on WRED. If false, such packets are discarded. + type: boolean + maxDropProbabilityPercent: + description: If the queue depth is between min and max threshold then this the probability with which packets are dropped or marked. + type: integer + maxThreshold: + description: The maximum threshold parameter for a RED-managed queue in bytes. When the average queue length exceeds the max value, all packets are dropped (or marked if ECN is enabled). Mutually exclusive with min-threshold-percent and max-threshold-percent. + format: int64 + type: integer + maxThresholdPercent: + description: The maximum threshold parameter for a RED-managed queue in percent. When the average queue length exceeds the max value, all packets are dropped (or marked if ECN is enabled). Mutually exclusive with min-threshold and max-threshold. + type: integer + minThreshold: + description: The mininum threshold parameter for a RED-managed queue in bytes. When the average queue length is less than min, all packets are admitted to the queue. Mututally exclusive with min-threshold-percent and max-threshold-percent. + format: int64 + type: integer + minThresholdPercent: + description: The mininum threshold parameter for a RED-managed queue in percent. When the average queue length is less than min, all packets are admitted to the queue. Mutually exclusive with min-threshold and max-threshold. + type: integer + trafficType: + default: All + description: The traffic type to which the WRED slope applies. + enum: + - Tcp + - NonTcp + - All + type: string + required: + - drop + - dropProbability + - ecn + - trafficType + type: object + type: array + required: + - queues + type: object + type: array + type: object + status: + description: EgressPolicyStatus defines the observed state of EgressPolicy + type: object + type: object +served: true +storage: false +subresources: + status: {} diff --git a/static/resources/25.8.2/engineconfigs.core.eda.nokia.com/v1.yaml b/static/resources/25.8.2/engineconfigs.core.eda.nokia.com/v1.yaml new file mode 100644 index 0000000..950e239 --- /dev/null +++ b/static/resources/25.8.2/engineconfigs.core.eda.nokia.com/v1.yaml @@ -0,0 +1,917 @@ +name: v1 +schema: + openAPIV3Schema: + description: EngineConfig is the Schema for the engineconfigs API + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + description: EngineConfigSpec defines the desired state of EngineConfig + properties: + allocationPools: + description: Settings related to allocation pools + properties: + alarms: + description: Define alarm thresholds for allocation pool instance utilization + properties: + criticalThreshold: + default: 95 + description: |- + Set the threshold for which a critical alarm will be generated for allocation pool instance utilization, as a percentage. + Using a value of 0 will disable the generation of major threshold alarms. + maximum: 100 + minimum: 0 + type: integer + majorThreshold: + default: 90 + description: |- + Set the threshold for which a major alarm will be generated for allocation pool instance utilization, as a percentage. + Using a value of 0 will disable the generation of major threshold alarms. + maximum: 100 + minimum: 0 + type: integer + minorThreshold: + default: 80 + description: |- + Set the threshold for which a minor alarm will be generated for allocation pool instance utilization, as a percentage. + Using a value of 0 will disable the generation of minor threshold alarms. + maximum: 100 + minimum: 0 + type: integer + type: object + type: object + api: + description: Settings related to APIServer. + properties: + enableLoadBalancerNodePorts: + description: For the service enable the creation of nodePort + type: boolean + image: + description: The full URI to the image + type: string + image-credential: + description: The credential to use when interacting with the image + type: string + replicas: + description: The number of replicas to launch + format: int32 + type: integer + resources: + description: Resource limits and requests for deployments + properties: + limits: + properties: + cpu: + type: string + memory: + type: string + type: object + requests: + properties: + cpu: + type: string + memory: + type: string + type: object + type: object + serviceType: + default: LoadBalancer + description: Describes the type of k8s service + enum: + - ClusterIP + - NodePort + - LoadBalancer + type: string + type: object + appStore: + description: Settings related to AppStore. + properties: + image: + description: The full URI to the image + type: string + image-credential: + description: The credential to use when interacting with the image + type: string + resources: + description: Resource limits and requests for deployments + properties: + limits: + properties: + cpu: + type: string + memory: + type: string + type: object + requests: + properties: + cpu: + type: string + memory: + type: string + type: object + type: object + type: object + appStoreFlow: + description: Settings related to AppStore installer workflow. + properties: + image: + description: The full URI to the image + type: string + image-credential: + description: The credential to use when interacting with the image + type: string + resources: + description: Resource limits and requests for deployments + properties: + limits: + properties: + cpu: + type: string + memory: + type: string + type: object + requests: + properties: + cpu: + type: string + memory: + type: string + type: object + type: object + type: object + artifactServer: + description: Settings related to ArtifactServer. + properties: + image: + description: The full URI to the image + type: string + image-credential: + description: The credential to use when interacting with the image + type: string + resources: + description: Resource limits and requests for deployments + properties: + limits: + properties: + cpu: + type: string + memory: + type: string + type: object + requests: + properties: + cpu: + type: string + memory: + type: string + type: object + type: object + type: object + bootstrapServer: + description: Settings related to BootstrapServer. + properties: + image: + description: The full URI to the image + type: string + image-credential: + description: The credential to use when interacting with the image + type: string + resources: + description: Resource limits and requests for deployments + properties: + limits: + properties: + cpu: + type: string + memory: + type: string + type: object + requests: + properties: + cpu: + type: string + memory: + type: string + type: object + type: object + type: object + certChecker: + description: Settings related to CertChecker. + properties: + image: + description: The full URI to the image + type: string + image-credential: + description: The credential to use when interacting with the image + type: string + resources: + description: Resource limits and requests for deployments + properties: + limits: + properties: + cpu: + type: string + memory: + type: string + type: object + requests: + properties: + cpu: + type: string + memory: + type: string + type: object + type: object + type: object + certificate-git-repo: + description: Settings related to the certificate backup + properties: + remote-path: + description: The full URI to the git repository + type: string + type: object + checkpoint-git-repo: + description: Settings related to the checkpoint or backup git repository. + properties: + remote-path: + description: The full URI to the git repository + type: string + type: object + cluster: + description: Settings related to how the cluster is exposed to external entities, and how the cluster members communicate with each other. + properties: + external: + description: Configure how this cluster is presented to external entities. This is used to configure the external IP address and port that will be used to access the cluster, where values are likely configured on a loadbalancer fronting the cluster. + properties: + domainName: + description: The external domain name of the cluster + type: string + httpPort: + description: HTTP port used to reach this cluster externally + format: int32 + type: integer + httpsPort: + description: HTTPS port used to reach this cluster externally + format: int32 + type: integer + ipv4Address: + description: The external IPv4 address of the cluster + type: string + ipv6Address: + description: The external IPv6 address of the cluster + type: string + relaxDomainNameEnforcement: + default: false + description: Relax enforcement of client origins from configured cluster.external.domainName + type: boolean + type: object + internal: + description: Configure how this cluster is presented at the k8s edge. This is used to configure the eda-api service. + properties: + httpPort: + description: HTTP port used by api service + format: int32 + type: integer + httpsPort: + description: HTTPS port used by api service + format: int32 + type: integer + type: object + redundancy: + description: Configure the redundancy of the cluster. This is used to configure how the cluster members communicate with each other, and how they authenticate each other. + properties: + active: + description: Sets the active cluster from the members list + type: string + credential: + description: The credential used by this cluster to authenticate to each other cluster member. + type: string + members: + description: The list of members in the cluster. + items: + properties: + address: + description: The address of the cluster member, this address is used for synchronization and must be reachable. + type: string + name: + description: The name of the cluster member, this value should match the name of the EngineConfig resource loaded in each member. + type: string + port: + description: The port of the cluster member. + type: integer + required: + - address + - name + type: object + minItems: 1 + type: array + required: + - active + - members + type: object + type: object + customSettings: + description: |- + Directives to override internal application settings + This should be set only at direction of support + items: + properties: + applicationName: + description: Name of application + type: string + settings: + description: List of options to override + items: + properties: + name: + description: Setting Name + type: string + value: + description: Value + type: string + type: object + type: array + type: object + type: array + cx: + description: Settings related to CX. + properties: + image: + description: The full URI to the image + type: string + image-credential: + description: The credential to use when interacting with the image + type: string + resources: + description: Resource limits and requests for deployments + properties: + limits: + properties: + cpu: + type: string + memory: + type: string + type: object + requests: + properties: + cpu: + type: string + memory: + type: string + type: object + type: object + type: object + cxCluster: + description: Settings related to remote CX Cluster. + properties: + address: + description: The address of the remote cx cluster, this address is used to create device sims on remote cluster and must be reachable. + type: string + isCxAgent: + description: Run cx as a agent to reconcile sims on remote cx cluster. + type: boolean + port: + description: The port of the remote cx cluster. + type: integer + required: + - isCxAgent + type: object + flowEngine: + description: Settings related to WorkflowEngine. + properties: + image: + description: The full URI to the image + type: string + image-credential: + description: The credential to use when interacting with the image + type: string + resources: + description: Resource limits and requests for deployments + properties: + limits: + properties: + cpu: + type: string + memory: + type: string + type: object + requests: + properties: + cpu: + type: string + memory: + type: string + type: object + type: object + type: object + git: + description: Settings related to git servers, used for storing and recovering the state of the cluster. + properties: + servers: + description: Define the set of git servers to use when interacting with git repositories. Each server will receive the full set of changes, and any can be used to recover a cluster. + items: + properties: + credential: + description: The credential to use when authenticating with the git server + type: string + name: + description: The name of the git server + type: string + uri: + description: The URI of the git server + type: string + required: + - credential + - uri + type: object + type: array + type: object + identity: + description: Settings related to Identity and Access management server. + properties: + image: + description: The full URI to the image + type: string + image-credential: + description: The credential to use when interacting with the image + type: string + replicas: + description: The number of replicas to launch + format: int32 + type: integer + resources: + description: Resource limits and requests for deployments + properties: + limits: + properties: + cpu: + type: string + memory: + type: string + type: object + requests: + properties: + cpu: + type: string + memory: + type: string + type: object + type: object + type: object + identity-git-repo: + description: Settings related to user identities + properties: + remote-path: + description: The full URI to the git repository + type: string + type: object + identitydb: + description: Settings related to Identity DB server. + properties: + image: + description: The full URI to the image + type: string + image-credential: + description: The credential to use when interacting with the image + type: string + replicas: + description: The number of replicas to launch + format: int32 + type: integer + resources: + description: Resource limits and requests for deployments + properties: + limits: + properties: + cpu: + type: string + memory: + type: string + type: object + requests: + properties: + cpu: + type: string + memory: + type: string + type: object + type: object + type: object + kubernetes: + description: Settings related to interactions with Kubernetes. + properties: + exports: + description: |- + List of GVKs to export to kubernetes. By default, any CR created by a script will not be exported to kubernetes + unless listed in the exports list. + items: + properties: + gvk: + description: The group + version + kind to apply the specified policy to + properties: + group: + description: The group of the resource to import/export + type: string + kind: + description: The kind of the resource to import/export + type: string + version: + description: The version of the resource to import/export + type: string + required: + - kind + - version + type: object + policy: + description: The policy to apply to the GVK + enum: + - all + type: string + required: + - gvk + - policy + type: object + type: array + imports: + description: List of GVKs to import from kubernetes. By default, any CR used by a script will already have its spec imported. + items: + properties: + gvk: + description: The group + version + kind to apply the specified policy to + properties: + group: + description: The group of the resource to import/export + type: string + kind: + description: The kind of the resource to import/export + type: string + version: + description: The version of the resource to import/export + type: string + required: + - kind + - version + type: object + policy: + description: The policy to apply to the GVK + enum: + - all + - spec + type: string + required: + - gvk + - policy + type: object + type: array + mode: + description: |- + Sets the default mode for interacting with resources in Kubernetes. + This controls the set of resources that CE will publish to Kubernetes, and the set of resources that CE will treat as inputs. + This setting can be overridden on a per-resource basis using the imports and exports lists, or by an application within their Manifest. + enum: + - None + type: string + type: object + llm: + description: Settings related to the large language model used for natural language processing. + properties: + apiKey: + description: Set the API key to use when interacting with the LLM API + type: string + model: + default: gpt-4-1106-preview + description: Set the model for natural language processing + type: string + type: object + metricsServer: + description: Settings related to MetricsServer. + properties: + image: + description: The full URI to the image + type: string + image-credential: + description: The credential to use when interacting with the image + type: string + resources: + description: Resource limits and requests for deployments + properties: + limits: + properties: + cpu: + type: string + memory: + type: string + type: object + requests: + properties: + cpu: + type: string + memory: + type: string + type: object + type: object + type: object + npp: + description: Settings related to NPP. + properties: + image: + description: The full URI to the image + type: string + image-credential: + description: The credential to use when interacting with the image + type: string + resources: + description: Resource limits and requests for deployments + properties: + limits: + properties: + cpu: + type: string + memory: + type: string + type: object + requests: + properties: + cpu: + type: string + memory: + type: string + type: object + type: object + type: object + nppNodeLabelSelector: + description: |- + Which nodes to run NPP for - if empty, all nodes are run, e.g. "role in (leaf-group1)" will run NPP only for + toponodes with the label "role=leaf-group1". This also controls which nodes are simulated. + items: + type: string + type: array + playground: + description: |- + Indicates if the current cluster is running in playground mode. If true, TargetNodes are generated by CX. + Additionally a branch is created at startup to support changes in the playground, which can later be merged. + type: string + python: + description: Settings related to Python interpreters. + properties: + heap-size: + description: The maximum heap size for each Python interpreter + type: integer + local-script-dir: + description: |- + Override path to use for the Python interpreter to read scripts from. + LocalScriptDir is deprecated. + type: string + num-interpreters: + description: The number of interpreters to run in parallel + type: integer + script-timeout: + description: How long to allow scripts to run before timing out + type: integer + stdout-capture-limit: + description: The maximum number of lines to capture from STDOUT + type: integer + type: object + scripts-git-repo: + description: Settings related to the apps git repository. + properties: + remote-path: + description: The full URI to the git repository + type: string + type: object + simulate: + default: true + description: |- + Simulate using CX - if true CX is reponsible for generating the TargetNode CRs (this flag is only relevant for + !playground. In the playground case, simulate is always true) + type: boolean + simulateNodeLabelSelector: + description: |- + Which nodes to simulate - if empty, all nodes are simulated, e.g. "role in (leaf-group1)" will simulate only + toponodes with the label "role=leaf-group1" + items: + type: string + type: array + singleStackServices: + description: Run services in single-stack mode instead of PreferredDualStack. + type: boolean + stateAggregator: + description: Settings related to StateAggregator. + properties: + image: + description: The full URI to the image + type: string + image-credential: + description: The credential to use when interacting with the image + type: string + replicas: + description: The number of replicas to launch + format: int32 + type: integer + resources: + description: Resource limits and requests for deployments + properties: + limits: + properties: + cpu: + type: string + memory: + type: string + type: object + requests: + properties: + cpu: + type: string + memory: + type: string + type: object + type: object + type: object + stateController: + description: Settings related to StateController. + properties: + image: + description: The full URI to the image + type: string + image-credential: + description: The credential to use when interacting with the image + type: string + resources: + description: Resource limits and requests for deployments + properties: + limits: + properties: + cpu: + type: string + memory: + type: string + type: object + requests: + properties: + cpu: + type: string + memory: + type: string + type: object + type: object + type: object + stateEngine: + description: Settings related to StateEngine. + properties: + image: + description: The full URI to the image + type: string + image-credential: + description: The credential to use when interacting with the image + type: string + replicas: + description: The number of replicas to launch + format: int32 + type: integer + resources: + description: Resource limits and requests for deployments + properties: + limits: + properties: + cpu: + type: string + memory: + type: string + type: object + requests: + properties: + cpu: + type: string + memory: + type: string + type: object + type: object + type: object + testMan: + description: Settings related to TestMan. + properties: + image: + description: The full URI to the image + type: string + image-credential: + description: The credential to use when interacting with the image + type: string + resources: + description: Resource limits and requests for deployments + properties: + limits: + properties: + cpu: + type: string + memory: + type: string + type: object + requests: + properties: + cpu: + type: string + memory: + type: string + type: object + type: object + type: object + user-settings-git-repo: + description: Settings related to the user settings git repository. + properties: + remote-path: + description: The full URI to the git repository + type: string + type: object + required: + - simulate + type: object + status: + description: EngineConfigStatus defines the observed state of EngineConfig + properties: + activityState: + description: Indicates the activity state of this cluster - either active, standby or unknown. + type: string + cluster: + description: status related to how the cluster is exposed to external entities. + properties: + redundancy: + properties: + members: + description: The list of members in the cluster. + items: + properties: + activityState: + description: The activity state of the cluster member. + type: string + name: + description: The name of the cluster member. + type: string + reachable: + description: Whether this cluster member is reachable. + type: boolean + synchronized: + description: Whether this cluster member is in sync with the active cluster. + type: boolean + required: + - name + - reachable + - synchronized + type: object + type: array + type: object + type: object + git: + description: status related to git servers. + properties: + servers: + description: The status of git servers. + items: + properties: + name: + description: The name of the git server + type: string + status: + description: The status of the git server + type: string + required: + - name + type: object + type: array + type: object + licenses: + description: Status related to licenses. + properties: + activeLicense: + description: Reference to the License currently providing the "base" feature. + type: string + expirationDate: + description: Date and time the currently active license will expire. + type: string + licensedState: + description: Licensed state, indicating the presence of a license providing the "base" feature. + type: string + type: object + run-status: + description: Indicates the current run status of the cluster. + type: string + type: object + type: object +served: true +storage: true +subresources: + status: {} diff --git a/static/resources/25.8.2/fabricmodules.components.eda.nokia.com/v1.yaml b/static/resources/25.8.2/fabricmodules.components.eda.nokia.com/v1.yaml new file mode 100644 index 0000000..0a2460d --- /dev/null +++ b/static/resources/25.8.2/fabricmodules.components.eda.nokia.com/v1.yaml @@ -0,0 +1,116 @@ +name: v1 +schema: + openAPIV3Schema: + description: FabricModule is the Schema for the fabricmodules API + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + description: FabricModuleSpec defines the desired state of FabricModule + type: object + status: + description: FabricModuleStatus defines the observed state of FabricModule + properties: + commonLanguageEquipmentIdentifier: + description: The CLEI code of this component + type: string + lastBooted: + description: The date and time this component last booted + type: string + lastChange: + description: The date and time this component last changed operational state + type: string + locatorEnabled: + description: Indicates if the locator LED for the component is active + type: boolean + manufacturedDate: + description: The date this component was manufactured + type: string + operationalState: + description: Indicates the current operational state of this component. + enum: + - Up + - Down + - Rebooting + - Unknown + - Starting + - Empty + type: string + parent: + description: Reference to a parent component + type: string + parentType: + description: Type of the parent component + enum: + - Fan + - FanTray + - PowerSupply + - PowerModule + - PowerShelf + - InterfaceModule + - ControlModule + - FabricModule + - Chassis + - Transceiver + type: string + partNumber: + description: The discovered part number of this component + type: string + removable: + description: Indicates if this component is removable + type: boolean + serialNumber: + description: The discovered serial number of this component + type: string + slot: + description: Slot this component resides in, unset for components that do not have a slot or ID + type: string + softwareVersion: + description: Version string of the software running on this component + type: string + target: + description: Target this component resides on. + type: string + temperature: + description: Temperature information for this component + properties: + alarmState: + description: The temperature alarm state, as reported by the component + type: boolean + instant: + description: The current temperature of this component + type: integer + margin: + description: The margin temperature of this component + type: integer + maximum: + description: The maximum temperature of this component + type: integer + threshold: + description: The threshold temperature of this component + type: integer + type: object + type: + description: Component type, as provided by the target + type: string + type: object + type: object +served: true +storage: true +subresources: + status: {} diff --git a/static/resources/25.8.2/fabrics.fabrics.eda.nokia.com/v1alpha1.yaml b/static/resources/25.8.2/fabrics.fabrics.eda.nokia.com/v1alpha1.yaml new file mode 100644 index 0000000..c6a220b --- /dev/null +++ b/static/resources/25.8.2/fabrics.fabrics.eda.nokia.com/v1alpha1.yaml @@ -0,0 +1,517 @@ +additionalPrinterColumns: + - jsonPath: .status.lastChange + name: Last Change + type: date + - jsonPath: .status.operationalState + name: Operational State + type: string +name: v1alpha1 +schema: + openAPIV3Schema: + description: Fabric is the Schema for the fabrics API + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + description: The Fabric defines the desired state of a Fabric resource, enabling the automation and management of data center network fabrics. It includes configurations for IP address allocation pools, network topology roles (Leafs, Spines, SuperSpines, BorderLeafs), inter-switch links, and network protocols (underlay and overlay). The specification allows for detailed control over routing strategies, including ASN allocations for BGP-based protocols, and supports advanced features like BFD. + properties: + borderLeafs: + properties: + asnPool: + description: Reference to an IndexAllocationPool pool to use for Autonomous System Number allocations. Used when eBGP is configured as an underlay protocol. This reference will take precedence over the spec.underlayProtocol.asnPool. + type: string + borderLeafNodeSelector: + description: Label selector used to select Toponodes to configure as Borderleaf nodes. + items: + type: string + type: array + routeLeaking: + description: Route leaking controlled by routing policies in and out of the DefaultRouters on each node. If specifided under the Leafs, Spines, SuperSpines, or BorderLeafs those will take precedence. + properties: + exportPolicy: + description: Reference to a Policy resource to use when evaluating route exports from the DefaultRouter. + type: string + importPolicy: + description: Reference to a Policy resource to use when evaluating route imports into the DefaultRouter. + type: string + required: + - exportPolicy + - importPolicy + type: object + systemPoolIPV4: + description: Reference to an IPAllocationPool used to dynamically allocate an IPv4 address to system/lo0 interfaces. This reference will take precedence over the spec.systemPoolIPV4. Both IPv4 and IPv6 pools can be configured simultaneously for dual-stack system/lo0 interfaces. + type: string + systemPoolIPV6: + description: Reference to an IPAllocationPool used to dynamically allocate an IPv6 address to system/lo0 interfaces. This reference will take precedence over the spec.systemPoolIPV6. Both IPv4 and IPv6 pools can be configured simultaneously for dual-stack system/lo0 interfaces. + type: string + type: object + fabricSelector: + description: Selects Fabric resources when connecting multiple Fabrics together. Only one Fabric needs the selector, typically the upper layer (e.g., Superspine) selecting the lower layer (e.g., a pod fabric of leafs and spines). This helps build complete Fabrics in smaller instances of the Fabric resource. This instance selecting other fabrics must also select the InterSwitchLinks connecting itself to the selected Fabrics. + items: + type: string + type: array + interSwitchLinks: + properties: + ipMTU: + description: Sets the IP MTU for the DefaultInterface. + maximum: 9486 + minimum: 1280 + type: integer + linkSelector: + description: Selects TopoLinks to include in this Fabric, creating an ISL resource if both Nodes in the TopoLink are part of this Fabric or a selected Fabric. + items: + type: string + type: array + poolIPV4: + description: Reference to an IPAllocationPool used to dynamically allocate an IPv4 address to DefaultInterfaces which are members of the ISLs. Both IPv4 and IPv6 pools can be configured simultaneously for dual-stack DefaultInterfaces. + type: string + poolIPV6: + description: Reference to an IPAllocationPool used to dynamically allocate an IPv6 address to DefaultInterfaces which are members of the ISLs. Both IPv4 and IPv6 pools can be configured simultaneously for dual-stack DefaultInterfaces. + type: string + qos: + properties: + egressPolicy: + type: string + ingressPolicy: + type: string + type: object + unnumbered: + description: Enables unnumbered interfaces on the ISL; for IPv6, only link-local addresses are used unless a PoolIPV6 is also specified. DefaultInterfaces in the ISL are added to the DefaultBGPPeer dynamic neighbor list when using an eBGP underlay. + enum: + - IPV6 + type: string + vlanID: + description: Configures the provided VLAN on the DefaultInterfaces which are members of the ISLs. + maximum: 4094 + minimum: 1 + type: integer + type: object + leafs: + properties: + asnPool: + description: Reference to an IndexAllocationPool pool to use for Autonomous System Number allocations. Used when eBGP is configured as an underlay protocol. This reference will take precedence over the spec.underlayProtocol.asnPool. + type: string + leafNodeSelector: + description: Label selector used to select Toponodes to configure as Leaf nodes. + items: + type: string + type: array + routeLeaking: + description: Route leaking controlled by routing policies in and out of the DefaultRouters on each node. If specifided under the Leafs, Spines, SuperSpines, or BorderLeafs those will take precedence. + properties: + exportPolicy: + description: Reference to a Policy resource to use when evaluating route exports from the DefaultRouter. + type: string + importPolicy: + description: Reference to a Policy resource to use when evaluating route imports into the DefaultRouter. + type: string + required: + - exportPolicy + - importPolicy + type: object + systemPoolIPV4: + description: Reference to an IPAllocationPool used to dynamically allocate an IPv4 address to system/lo0 interfaces. This reference will take precedence over the spec.systemPoolIPV4. Both IPv4 and IPv6 pools can be configured simultaneously for dual-stack system/lo0 interfaces. + type: string + systemPoolIPV6: + description: Reference to an IPAllocationPool used to dynamically allocate an IPv6 address to system/lo0 interfaces. This reference will take precedence over the spec.systemPoolIPV6. Both IPv4 and IPv6 pools can be configured simultaneously for dual-stack system/lo0 interfaces. + type: string + type: object + overlayProtocol: + description: Set the overlay protocol used + properties: + bfd: + description: Enable BFD on overlay protocol + properties: + desiredMinTransmitInt: + default: 1000000 + description: The minimum interval in microseconds between transmission of BFD control packets. + maximum: 100000000 + minimum: 10000 + type: integer + detectionMultiplier: + default: 3 + description: The number of packets that must be missed to declare this session as down. + maximum: 20 + minimum: 3 + type: integer + enabled: + default: false + description: Enable Biforward Detection. + type: boolean + minEchoReceiveInterval: + default: 1000000 + description: The minimum interval between echo packets the local node can receive in microseconds. + maximum: 100000000 + minimum: 0 + type: integer + requiredMinReceive: + default: 1000000 + description: The minimum interval in microseconds between received BFD control packets that this system should support. + maximum: 100000000 + minimum: 10000 + type: integer + ttl: + description: Sets custom IP TTL or Hop Limit for multi-hop BFD sessions packets. Not appllicable to single-hop BFD sessions. + maximum: 255 + minimum: 2 + type: integer + type: object + bgp: + description: Overlay specific BGP properties. + properties: + autonomousSystem: + description: Autonomous System used for iBGP peering session, when protocol is set to IBGP providing an autonomousSystem is required. + format: int32 + type: integer + clusterID: + description: Sets the cluster ID used by DefaultRouteReflectors, when protocol is set to IBGP providing a clusterID is required. + type: string + exportPolicy: + description: Reference to a Policy, when left empty or not specified the Fabric will automatically generate a policy for the specified protocols. + items: + type: string + type: array + importPolicy: + description: Reference to a Policy, when left empty or not specified the Fabric will automatically generate a policy for the specified protocols. + items: + type: string + type: array + keychain: + description: Keychain to be used for authentication when overlay protocol is IBGP, ignored otherwise + type: string + rrClientNodeSelector: + description: Label selector used to select Toponodes to configure as DefaultRouteReflectorClients, these are typically Leaf or Borderleaf nodes. Used on conjunction with rrNodeSelector in order to configure the DefaultBGPPeers for both the DefaultRouteReflectors and DefaultRouteReflectorClients. + items: + type: string + type: array + rrIPAddresses: + description: List of route reflector IP addresses not provisioned by this instance of a Fabric resource. Used with rrClientNodeSelector to configure the DefaultBGPPeers on the selected nodes to peer the list of external route reflector IPs. + items: + type: string + type: array + rrNodeSelector: + description: Label selector used to select Toponodes to configure as DefaultRouteReflectors, these are typically Spine, Superspine or Borderleaf nodes. Used on conjunction with rrClientNodeSelector in order to configure the DefaultBGPPeers for both the DefaultRouteReflectors and DefaultRouteReflectorClients. + items: + type: string + type: array + timers: + description: Timer configurations + properties: + connectRetry: + description: The time interval in seconds between successive attempts to establish a session with a peer. + maximum: 65535 + minimum: 1 + type: integer + holdTime: + description: The hold-time interval in seconds that the router proposes to the peer in its OPEN message. + maximum: 65535 + minimum: 0 + type: integer + keepAlive: + description: The interval in seconds between successive keepalive messages sent to the peer. + maximum: 21845 + minimum: 0 + type: integer + minimumAdvertisementInterval: + description: The value assigned to the MinRouteAdvertisementIntervalTimer of RFC 4271, for both EBGP and IBGP sessions. + maximum: 255 + minimum: 1 + type: integer + type: object + type: object + protocol: + description: List of routing protocols to used to advertise EVPN routes for overlay services. When EBGP is used, the BGP properties configured under the spec.underlayProtocol will be used. + enum: + - IBGP + - EBGP + type: string + required: + - protocol + type: object + routeLeaking: + description: Route leaking controlled by routing policies in and out of the DefaulRouters on each node. If specifided under the Leafs, Spines, SuperSpines, or BorderLeafs those will take precedence. + properties: + exportPolicy: + description: Reference to a Policy resource to use when evaluating route exports from the DefaultRouter. + type: string + importPolicy: + description: Reference to a Policy resource to use when evaluating route imports into the DefaultRouter. + type: string + required: + - exportPolicy + - importPolicy + type: object + spines: + properties: + asnPool: + description: Reference to an IndexAllocationPool pool to use for Autonomous System Number allocations. Used when eBGP is configured as an underlay protocol. This reference will take precedence over the spec.underlayProtocol.asnPool. + type: string + routeLeaking: + description: Route leaking controlled by routing policies in and out of the DefaultRouters on each node. If specifided under the Leafs, Spines, SuperSpines, or BorderLeafs those will take precedence. + properties: + exportPolicy: + description: Reference to a Policy resource to use when evaluating route exports from the DefaultRouter. + type: string + importPolicy: + description: Reference to a Policy resource to use when evaluating route imports into the DefaultRouter. + type: string + required: + - exportPolicy + - importPolicy + type: object + spineNodeSelector: + description: Label selector used to select Toponodes to configure as Spine nodes. + items: + type: string + type: array + systemPoolIPV4: + description: Reference to an IPAllocationPool used to dynamically allocate an IPv4 address to system/lo0 interfaces. This reference will take precedence over the spec.systemPoolIPV4. Both IPv4 and IPv6 pools can be configured simultaneously for dual-stack system/lo0 interfaces. + type: string + systemPoolIPV6: + description: Reference to an IPAllocationPool used to dynamically allocate an IPv6 address to system/lo0 interfaces. This reference will take precedence over the spec.systemPoolIPV6. Both IPv4 and IPv6 pools can be configured simultaneously for dual-stack system/lo0 interfaces. + type: string + type: object + superSpines: + properties: + asnPool: + description: Reference to an IndexAllocationPool pool to use for Autonomous System Number allocations. Used when eBGP is configured as an underlay protocol. This reference will take precedence over the spec.underlayProtocol.asnPool. + type: string + routeLeaking: + description: Route leaking controlled by routing policies in and out of the DefaultRouters on each node. If specifided under the Leafs, Spines, SuperSpines, or BorderLeafs those will take precedence. + properties: + exportPolicy: + description: Reference to a Policy resource to use when evaluating route exports from the DefaultRouter. + type: string + importPolicy: + description: Reference to a Policy resource to use when evaluating route imports into the DefaultRouter. + type: string + required: + - exportPolicy + - importPolicy + type: object + superSpineNodeSelector: + description: Label selector used to select Toponodes to configure as Superspine nodes. + items: + type: string + type: array + systemPoolIPV4: + description: Reference to an IPAllocationPool used to dynamically allocate an IPv4 address to system/lo0 interfaces. This reference will take precedence over the spec.systemPoolIPV4. Both IPv4 and IPv6 pools can be configured simultaneously for dual-stack system/lo0 interfaces. + type: string + systemPoolIPV6: + description: Reference to an IPAllocationPool used to dynamically allocate an IPv6 address to system/lo0 interfaces. This reference will take precedence over the spec.systemPoolIPV6. Both IPv4 and IPv6 pools can be configured simultaneously for dual-stack system/lo0 interfaces. + type: string + type: object + systemPoolIPV4: + description: Reference to an IPAllocationPool used to dynamically allocate an IPv4 address to system/lo0 interfaces. If specified under the Leaf/Spine/Superspine/Borderleaf those will take precedence. Both IPv4 and IPv6 pools can be configured simultaneously for dual-stack system/lo0 interfaces. + type: string + systemPoolIPV6: + description: Reference to an IPAllocationPool used to dynamically allocate an IPv6 address to system/lo0 interfaces. If specified under the Leaf/Spine/Superspine/Borderleaf those will take precedence. Both IPv4 and IPv6 pools can be configured simultaneously for dual-stack system/lo0 interfaces. + type: string + underlayProtocol: + description: Set the underlay protocol used + properties: + bfd: + description: Enable BFD on underlay protocol + properties: + desiredMinTransmitInt: + default: 1000000 + description: The minimum interval in microseconds between transmission of BFD control packets. + maximum: 100000000 + minimum: 10000 + type: integer + detectionMultiplier: + default: 3 + description: The number of packets that must be missed to declare this session as down. + maximum: 20 + minimum: 3 + type: integer + enabled: + default: false + description: Enable Biforward Detection. + type: boolean + minEchoReceiveInterval: + default: 1000000 + description: The minimum interval between echo packets the local node can receive in microseconds. + maximum: 100000000 + minimum: 0 + type: integer + requiredMinReceive: + default: 1000000 + description: The minimum interval in microseconds between received BFD control packets that this system should support. + maximum: 100000000 + minimum: 10000 + type: integer + ttl: + description: Sets custom IP TTL or Hop Limit for multi-hop BFD sessions packets. Not appllicable to single-hop BFD sessions. + maximum: 255 + minimum: 2 + type: integer + type: object + bgp: + description: Underlay specific BGP properties. + properties: + asnPool: + description: Reference to an IndexAllocationPool pool to use for Autonomous System Number allocations. Used when eBGP is configured as an underlay protocol. If specified under the Leaf/Spine/Superspine/Borderleaf those will take precedence. + type: string + exportPolicy: + description: Reference to a Policy, when left empty or not specified the Fabric will automatically generate a policy for the specified protocols. + items: + type: string + type: array + importPolicy: + description: Reference to a Policy, when left empty or not specified the Fabric will automatically generate a policy for the specified protocols. + items: + type: string + type: array + keychain: + description: Keychain to be used for authentication + type: string + timers: + description: Timer configurations + properties: + connectRetry: + description: The time interval in seconds between successive attempts to establish a session with a peer. + maximum: 65535 + minimum: 1 + type: integer + holdTime: + description: The hold-time interval in seconds that the router proposes to the peer in its OPEN message. + maximum: 65535 + minimum: 0 + type: integer + keepAlive: + description: The interval in seconds between successive keepalive messages sent to the peer. + maximum: 21845 + minimum: 0 + type: integer + minimumAdvertisementInterval: + description: The value assigned to the MinRouteAdvertisementIntervalTimer of RFC 4271, for both EBGP and IBGP sessions. + maximum: 255 + minimum: 1 + type: integer + type: object + type: object + protocol: + description: List of routing protocols to used between peers of an ISL. Multiple protocols may be listed, if so multiple protocols will be used. + items: + enum: + - EBGP + type: string + type: array + required: + - bgp + - protocol + type: object + type: object + status: + description: FabricStatus defines the observed state of Fabric + properties: + borderLeafNodes: + description: List of border leaf nodes in the Fabric. + items: + properties: + node: + description: Name of the TopoNode. + type: string + operatingSystem: + description: Operating system running on the node. + type: string + operatingSystemVersion: + description: Operating system version running on the node. + type: string + underlayAutonomousSystem: + description: Underlay Autonomous System used for eBGP peering session, when protocol is set to eBGP this is required. + format: int32 + type: integer + type: object + type: array + health: + description: Indicates the health score of the Fabric. The health score of the Fabric is determined by the aggregate health score of the resources emited by the Fabric such as ISL, DefaultRouteReflectors etc. + type: integer + healthScoreReason: + description: Indicates the reason for the health score. + type: string + lastChange: + description: The time when the state of the resource last changed. + type: string + leafNodes: + description: List of leaf nodes in the Fabric. + items: + properties: + node: + description: Name of the TopoNode. + type: string + operatingSystem: + description: Operating system running on the node. + type: string + operatingSystemVersion: + description: Operating system version running on the node. + type: string + underlayAutonomousSystem: + description: Underlay Autonomous System used for eBGP peering session, when protocol is set to eBGP this is required. + format: int32 + type: integer + type: object + type: array + operationalState: + description: 'Operational state of the Fabric. The operational state of the fabric is determined by monitoring the operational state of the following resources (if applicable): DefaultRouters, ISLs.' + type: string + spineNodes: + description: List of spine nodes in the Fabric. + items: + properties: + node: + description: Name of the TopoNode. + type: string + operatingSystem: + description: Operating system running on the node. + type: string + operatingSystemVersion: + description: Operating system version running on the node. + type: string + underlayAutonomousSystem: + description: Underlay Autonomous System used for eBGP peering session, when protocol is set to eBGP this is required. + format: int32 + type: integer + type: object + type: array + superSpineNodes: + description: List of super spine nodes in the Fabric. + items: + properties: + node: + description: Name of the TopoNode. + type: string + operatingSystem: + description: Operating system running on the node. + type: string + operatingSystemVersion: + description: Operating system version running on the node. + type: string + underlayAutonomousSystem: + description: Underlay Autonomous System used for eBGP peering session, when protocol is set to eBGP this is required. + format: int32 + type: integer + type: object + type: array + type: object + type: object +served: true +storage: true +subresources: + status: {} diff --git a/static/resources/25.8.2/fabricstates.fabrics.eda.nokia.com/v1alpha1.yaml b/static/resources/25.8.2/fabricstates.fabrics.eda.nokia.com/v1alpha1.yaml new file mode 100644 index 0000000..18933d6 --- /dev/null +++ b/static/resources/25.8.2/fabricstates.fabrics.eda.nokia.com/v1alpha1.yaml @@ -0,0 +1,120 @@ +name: v1alpha1 +schema: + openAPIV3Schema: + description: FabricState is the Schema for the fabricstates API + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + description: FabricStateSpec defines the desired state of FabricState + properties: + borderLeafNodes: + description: List of borderleaf nodes in the fabric + items: + properties: + node: + description: Name of the TopoNode. + type: string + operatingSystem: + description: Operating system running on the node. + type: string + operatingSystemVersion: + description: Operating system version running on the node. + type: string + underlayAutonomousSystem: + description: Underlay Autonomous System used for eBGP peering session, when protocol is set to eBGP this is required. + format: int32 + type: integer + type: object + type: array + defaultRouters: + description: List of DefaultRouters used within the fabric + items: + type: string + type: array + isls: + description: List of ISL used in the Fabric + items: + type: string + type: array + leafNodes: + description: List of leaf nodes in the fabric + items: + properties: + node: + description: Name of the TopoNode. + type: string + operatingSystem: + description: Operating system running on the node. + type: string + operatingSystemVersion: + description: Operating system version running on the node. + type: string + underlayAutonomousSystem: + description: Underlay Autonomous System used for eBGP peering session, when protocol is set to eBGP this is required. + format: int32 + type: integer + type: object + type: array + spineNodes: + description: List of spine nodes in the fabric + items: + properties: + node: + description: Name of the TopoNode. + type: string + operatingSystem: + description: Operating system running on the node. + type: string + operatingSystemVersion: + description: Operating system version running on the node. + type: string + underlayAutonomousSystem: + description: Underlay Autonomous System used for eBGP peering session, when protocol is set to eBGP this is required. + format: int32 + type: integer + type: object + type: array + superSpineNodes: + description: List of super spine nodes in the fabric + items: + properties: + node: + description: Name of the TopoNode. + type: string + operatingSystem: + description: Operating system running on the node. + type: string + operatingSystemVersion: + description: Operating system version running on the node. + type: string + underlayAutonomousSystem: + description: Underlay Autonomous System used for eBGP peering session, when protocol is set to eBGP this is required. + format: int32 + type: integer + type: object + type: array + type: object + status: + description: FabricStateStatus defines the observed state of FabricState + type: object + type: object +served: true +storage: true +subresources: + status: {} diff --git a/static/resources/25.8.2/fans.components.eda.nokia.com/v1.yaml b/static/resources/25.8.2/fans.components.eda.nokia.com/v1.yaml new file mode 100644 index 0000000..e925057 --- /dev/null +++ b/static/resources/25.8.2/fans.components.eda.nokia.com/v1.yaml @@ -0,0 +1,94 @@ +name: v1 +schema: + openAPIV3Schema: + description: Fan is the Schema for the fans API + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + description: FanSpec defines the desired state of Fan + type: object + status: + description: FanStatus defines the observed state of Fan + properties: + commonLanguageEquipmentIdentifier: + description: The CLEI code of this component + type: string + lastBooted: + description: The date and time this component last booted + type: string + lastChange: + description: The date and time this component last changed operational state + type: string + locatorEnabled: + description: Indicates if the locator LED for the component is active + type: boolean + manufacturedDate: + description: The date this component was manufactured + type: string + operationalState: + description: Indicates the current operational state of this component. + enum: + - Up + - Down + - Rebooting + - Unknown + - Starting + - Empty + type: string + parent: + description: Reference to a parent component + type: string + parentType: + description: Type of the parent component + enum: + - Fan + - FanTray + - PowerSupply + - PowerModule + - PowerShelf + - InterfaceModule + - ControlModule + - FabricModule + - Chassis + - Transceiver + type: string + partNumber: + description: The discovered part number of this component + type: string + removable: + description: Indicates if this component is removable + type: boolean + serialNumber: + description: The discovered serial number of this component + type: string + slot: + description: Slot this component resides in, unset for components that do not have a slot or ID + type: string + target: + description: Target this component resides on. + type: string + type: + description: Component type, as provided by the target + type: string + type: object + type: object +served: true +storage: true +subresources: + status: {} diff --git a/static/resources/25.8.2/filterdeployments.filters.eda.nokia.com/v1alpha1.yaml b/static/resources/25.8.2/filterdeployments.filters.eda.nokia.com/v1alpha1.yaml new file mode 100644 index 0000000..9931ed9 --- /dev/null +++ b/static/resources/25.8.2/filterdeployments.filters.eda.nokia.com/v1alpha1.yaml @@ -0,0 +1,50 @@ +name: v1alpha1 +schema: + openAPIV3Schema: + description: FilterDeployment is the Schema for the filterdeployments API + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + description: FilterDeploymentSpec defines the desired state of FilterDeployment + properties: + filter: + description: Specifies a filter to deploy on the specified Node + type: string + node: + description: Specifies a Node to deploy this filter on + type: string + type: + description: Specifies a filter type of the filter + enum: + - CPMFilter + - Filter + type: string + required: + - filter + - node + - type + type: object + status: + description: FilterDeploymentStatus defines the observed state of a FilterDeployment + type: object + type: object +served: true +storage: true +subresources: + status: {} diff --git a/static/resources/25.8.2/filters.filters.eda.nokia.com/v1alpha1.yaml b/static/resources/25.8.2/filters.filters.eda.nokia.com/v1alpha1.yaml new file mode 100644 index 0000000..9ca4ce4 --- /dev/null +++ b/static/resources/25.8.2/filters.filters.eda.nokia.com/v1alpha1.yaml @@ -0,0 +1,642 @@ +name: v1alpha1 +schema: + openAPIV3Schema: + description: Filter is the Schema for the filters API + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + description: Filter allows for the creation and management of ordered filtering rules based on IP or MAC criteria. The resource supports various conditions and actions, enabling fine-grained control over network traffic by specifying rules for source and destination addresses, ports, and protocols. + properties: + entries: + description: Specifies the list of filter entries, in order. + items: + properties: + description: + description: Description of the FilterEntry. + type: string + ipEntry: + properties: + action: + description: An action to take, either 'Accept','Drop', or 'RateLimit'. + enum: + - Drop + - Accept + - RateLimit + type: string + destinationPortName: + description: Destination port to match by name. + enum: + - ACAP + - AFP-TCP + - ARNS + - ASF-RMCP + - ASHARE + - ATALK-RM + - AURP + - AUTH + - BFD + - BFD-ECHO + - BFTP + - BGMP + - BGP + - BOOTPC + - BOOTPS + - CCSO-NS + - CHARGEN + - CISCO-TDP + - CITADEL + - CLEARCASE + - COMMERCE + - COURIER + - DAYTIME + - DHCP-FAILOVER + - DHCPV6-CLIENT + - DHCPV6-SERVER + - DICOM + - DISCARD + - DNSIX + - DOMAIN + - DSP + - ECHO + - EPP + - ESRO + - EXEC + - FINGER + - FTP + - FTP-DATA + - FTPS + - FTPS-DATA + - GODI + - GOPHER + - GTP-C + - GTP-PRIME + - GTP-U + - HA-CLUSTER + - HOSTNAME + - HP-ALARM-MGR + - HTTP + - HTTP-ALT + - HTTP-MGMT + - HTTP-RPC + - HTTPS + - IEEE-MMS-SSL + - IMAP + - IMAP3 + - IMAPS + - IPP + - IPSEC + - IPX + - IRC + - IRIS-BEEP + - ISAKMP + - ISAKMP-NAT + - ISCSI + - ISO-TSAP + - KERBEROS + - KERBEROS-ADM + - KLOGIN + - KPASSWD + - KSHELL + - L2TP + - LDAP + - LDAPS + - LDP + - LMP + - LOGIN + - LPD + - LSP-PING + - MAC-SERVER-ADM + - MATIP-A + - MATIP-B + - MICRO-BFD + - MICROSOFT-DS + - MOBILE-IP + - MONITOR + - MPP + - MS-EXCHANGE + - MSDP + - MSP + - MSSQL-M + - MSSQL-S + - MULTIHOP-BFD + - NAS + - NCP + - NETBIOS-DATA + - NETBIOS-NS + - NETBIOS-SS + - NETNEWS + - NETRJS-1 + - NETRJS-2 + - NETRJS-3 + - NETRJS-4 + - NETWALL + - NEW-RWHO + - NFS + - NNTP + - NNTPS + - NTP + - ODMR + - OLSR + - OPENVPN + - PIM-AUTO-RP + - PKIX-TIMESTAMP + - POP2 + - POP3 + - POP3S + - PPTP + - PRINT-SRV + - PTP-EVENT + - PTP-GENERAL + - QMTP + - QOTD + - RADIUS + - RADIUS-ACCT + - REMOTE-MAIL + - REMOTEFS + - REMOTECMD + - RIP + - RJE + - RLP + - RLZDB + - RMC + - RMONITOR + - RPC2PORTMAP + - RSYNC + - RTELNET + - RTSP + - SGMP + - SILC + - SMUX + - SNA-GW + - SNMP + - SNMP-TRAP + - SNPP + - SMTP + - SQL-SVCS + - SQL + - SSH + - SUBMISSION + - SUNRPC + - SVCLOC + - SYSLOG + - SYSTAT + - TACACS + - TALK + - TCPMUX + - TCPNETHASPSRV + - TFTP + - TIME + - TIMED + - UPS + - XDMCP + - XNS-CH + - XNS-MAIL + - XNS-TIME + - Z3950 + type: string + destinationPortNumber: + description: Destination port to match by numerical value. + maximum: 65535 + minimum: 0 + type: integer + destinationPortOperator: + description: Operator to use when matching destinationPort, either Equals, GreaterOrEquals, or LessOrEquals. + enum: + - Equals + - GreaterOrEquals + - LessOrEquals + type: string + destinationPortRange: + description: Range of destination ports to match, in the format n-m, e.g. 100-200, The start and end of the range must be port numbers. + type: string + destinationPrefix: + description: Destination prefix to match. + type: string + firstFragment: + description: Match the first fragment only. + type: boolean + fragment: + description: Match any fragment. + type: boolean + icmpCode: + description: Match a specific ICMP code, as a number between 0-255, e.g. 0. + items: + type: integer + maxItems: 255 + minItems: 0 + type: array + icmpTypeName: + description: Match a specific ICMP type by name, e.g. dest-unreachable. + enum: + - DestUnreachable + - Echo + - EchoReply + - EchoRequest + - McastRtrAdv + - McastRtrSolicit + - McastRtrTerm + - MldDone + - MldQuery + - MldReport + - MldV2 + - NeighborAdvertise + - NeighborSolicit + - NodeInfoQuery + - NodeInfoResponse + - PacketTooBig + - ParamProblem + - Redirect + - RouterAdvertise + - RouterRenumber + - RouterSolicit + - SourceQuench + - TimeExceeded + - Timestamp + - TimestampReply + type: string + icmpTypeNumber: + description: Match a specific ICMP type by number. + maximum: 255 + minimum: 0 + type: integer + log: + description: Log the matches for this entry. + type: boolean + protocolName: + description: Match a specific IP protocol name (specified in the type field of the IP header). + enum: + - AH + - EGP + - EIGRP + - ESP + - GGP + - GRE + - ICMP + - ICMP6 + - IDRP + - IGMP + - IGP + - IPV4 + - IPV6 + - IPV6-DEST-OPTS + - IPV6-HOP + - L2TP + - MPLS-IN-IP + - NO-NEXT-HDR + - OSPF + - PIM + - ROHC + - RSVP + - SCTP + - ST + - TCP + - UDP + - VRRP + type: string + protocolNumber: + description: Match a specific IP protocol number (specified in the type field of the IP header). + maximum: 255 + minimum: 0 + type: integer + rateLimit: + description: Rate limit to apply when the action is 'RateLimit'. + properties: + burstSize: + description: The maximum burst size in bytes. + format: int32 + type: integer + entrySpecificPolicer: + default: false + description: 'Controls policer instantiation: false for shared instance, true for per-entry instances' + type: boolean + peakRate: + description: The peak rate in kilobytes per second. + format: int32 + type: integer + scope: + default: Global + description: Determines how the policer is applied across subinterfaces. Global applies the policer across all subinterfaces, while Subinterface applies it individually to each subinterface. + enum: + - Global + - Subinterface + type: string + type: object + sourcePortName: + description: Source port to match by name. + enum: + - ACAP + - AFP-TCP + - ARNS + - ASF-RMCP + - ASHARE + - ATALK-RM + - AURP + - AUTH + - BFD + - BFD-ECHO + - BFTP + - BGMP + - BGP + - BOOTPC + - BOOTPS + - CCSO-NS + - CHARGEN + - CISCO-TDP + - CITADEL + - CLEARCASE + - COMMERCE + - COURIER + - DAYTIME + - DHCP-FAILOVER + - DHCPV6-CLIENT + - DHCPV6-SERVER + - DICOM + - DISCARD + - DNSIX + - DOMAIN + - DSP + - ECHO + - EPP + - ESRO + - EXEC + - FINGER + - FTP + - FTP-DATA + - FTPS + - FTPS-DATA + - GODI + - GOPHER + - GTP-C + - GTP-PRIME + - GTP-U + - HA-CLUSTER + - HOSTNAME + - HP-ALARM-MGR + - HTTP + - HTTP-ALT + - HTTP-MGMT + - HTTP-RPC + - HTTPS + - IEEE-MMS-SSL + - IMAP + - IMAP3 + - IMAPS + - IPP + - IPSEC + - IPX + - IRC + - IRIS-BEEP + - ISAKMP + - ISAKMP-NAT + - ISCSI + - ISO-TSAP + - KERBEROS + - KERBEROS-ADM + - KLOGIN + - KPASSWD + - KSHELL + - L2TP + - LDAP + - LDAPS + - LDP + - LMP + - LOGIN + - LPD + - LSP-PING + - MAC-SERVER-ADM + - MATIP-A + - MATIP-B + - MICRO-BFD + - MICROSOFT-DS + - MOBILE-IP + - MONITOR + - MPP + - MS-EXCHANGE + - MSDP + - MSP + - MSSQL-M + - MSSQL-S + - MULTIHOP-BFD + - NAS + - NCP + - NETBIOS-DATA + - NETBIOS-NS + - NETBIOS-SS + - NETNEWS + - NETRJS-1 + - NETRJS-2 + - NETRJS-3 + - NETRJS-4 + - NETWALL + - NEW-RWHO + - NFS + - NNTP + - NNTPS + - NTP + - ODMR + - OLSR + - OPENVPN + - PIM-AUTO-RP + - PKIX-TIMESTAMP + - POP2 + - POP3 + - POP3S + - PPTP + - PRINT-SRV + - PTP-EVENT + - PTP-GENERAL + - QMTP + - QOTD + - RADIUS + - RADIUS-ACCT + - REMOTE-MAIL + - REMOTEFS + - REMOTECMD + - RIP + - RJE + - RLP + - RLZDB + - RMC + - RMONITOR + - RPC2PORTMAP + - RSYNC + - RTELNET + - RTSP + - SGMP + - SILC + - SMUX + - SNA-GW + - SNMP + - SNMP-TRAP + - SNPP + - SMTP + - SQL-SVCS + - SQL + - SSH + - SUBMISSION + - SUNRPC + - SVCLOC + - SYSLOG + - SYSTAT + - TACACS + - TALK + - TCPMUX + - TCPNETHASPSRV + - TFTP + - TIME + - TIMED + - UPS + - XDMCP + - XNS-CH + - XNS-MAIL + - XNS-TIME + - Z3950 + type: string + sourcePortNumber: + description: Source port to match by numerical value. + maximum: 65535 + minimum: 0 + type: integer + sourcePortOperator: + description: Operator to use when matching sourcePort, either Equals, GreaterOrEquals, or LessOrEquals. + enum: + - Equals + - GreaterOrEquals + - LessOrEquals + type: string + sourcePortRange: + description: Range of source ports to match, in the format n-m, e.g. 100-200. The start and end of the range must be port numbers. + type: string + sourcePrefix: + description: Source prefix to match. + type: string + tcpFlags: + description: Match TCP flags, usable with !, &, | and the flags RST, SYN, and ACK. + type: string + type: object + macEntry: + properties: + action: + description: An action to take, either 'Accept','Drop', or 'RateLimit'. + enum: + - Drop + - Accept + - RateLimit + type: string + destinationMAC: + description: Match an Ethernet frame if its destination MAC address logically anded with the mask equals this MAC address. + type: string + destinationMACMask: + description: Match an Ethernet frame if its destination MAC address logically anded with the mask equals the configured MAC address. + type: string + ethertype: + description: An Ethernet frame matches this condition if its ethertype value (after 802.1Q VLAN tags) matches the specified value. + enum: + - ARP + - AUTHENTICATION8021X + - ETHOAM + - FCOE + - FCOEINITIALIZATION + - FLOWCONTROL + - IPV4 + - IPV6 + - LACP + - LLDP + - MACSEC + - MPLSMULTICAST + - MPLSUNICAST + - PBB + - PPPOEDISCOVERY + - PPPOESESSION + - PTP + - ROCE + type: string + log: + description: Log the matches for this entry. + type: boolean + outerVLANIDOperator: + description: Operator to use when matching OuterVlanIdValue, either Equals, GreaterOrEquals, or LessOrEquals. + enum: + - Equals + - GreaterOrEquals + - LessOrEquals + type: string + outerVLANIDRange: + description: Range of Outer vlan IDs to match, in the format n-m, e.g. 100-200 + type: string + outerVLANIDValue: + description: Ethernet frame matching criteria based on the outermost VLAN ID found before the subinterface-defining VLAN tag (if any) is removed. A value of 'none' will match only untagged frames. + type: string + rateLimit: + description: Rate limit to apply when the action is 'RateLimit'. + properties: + burstSize: + description: The maximum burst size in bytes. + format: int32 + type: integer + entrySpecificPolicer: + default: false + description: 'Controls policer instantiation: false for shared instance, true for per-entry instances' + type: boolean + peakRate: + description: The peak rate in kilobytes per second. + format: int32 + type: integer + scope: + default: Global + description: Determines how the policer is applied across subinterfaces. Global applies the policer across all subinterfaces, while Subinterface applies it individually to each subinterface. + enum: + - Global + - Subinterface + type: string + type: object + sourceMAC: + description: Match an Ethernet frame if its source MAC address logically anded with the mask equals this MAC address. + type: string + sourceMACMask: + description: Match an Ethernet frame if its source MAC address logically anded with the mask equals the configured MAC address. + type: string + type: object + type: + default: Auto + description: Type of the entry which can be IPV4, IPV6, MAC or Auto. + enum: + - IPV4 + - IPV6 + - MAC + - Auto + type: string + required: + - type + type: object + type: array + statisticsPerEntry: + description: Enable or disable per-entry counters. + type: boolean + required: + - entries + type: object + status: + description: FilterStatus defines the observed state of Filter + type: object + type: object +served: true +storage: true +subresources: + status: {} diff --git a/static/resources/25.8.2/forwardingclasss.qos.eda.nokia.com/v1.yaml b/static/resources/25.8.2/forwardingclasss.qos.eda.nokia.com/v1.yaml new file mode 100644 index 0000000..98fc481 --- /dev/null +++ b/static/resources/25.8.2/forwardingclasss.qos.eda.nokia.com/v1.yaml @@ -0,0 +1,33 @@ +name: v1 +schema: + openAPIV3Schema: + description: ForwardingClass is the Schema for the forwardingclasss API + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + description: The ForwaringClass is used as a placeholder for to allow multiple other resources to reference the same forwarding class. + type: object + status: + description: ForwardingClassStatus defines the observed state of ForwardingClass + type: object + type: object +served: true +storage: true +subresources: + status: {} diff --git a/static/resources/25.8.2/forwardingclasss.qos.eda.nokia.com/v1alpha1.yaml b/static/resources/25.8.2/forwardingclasss.qos.eda.nokia.com/v1alpha1.yaml new file mode 100644 index 0000000..6a94bfe --- /dev/null +++ b/static/resources/25.8.2/forwardingclasss.qos.eda.nokia.com/v1alpha1.yaml @@ -0,0 +1,35 @@ +deprecated: true +deprecationWarning: This version is deprecated and will no longer be supported in the next version. +name: v1alpha1 +schema: + openAPIV3Schema: + description: ForwardingClass is the Schema for the forwardingclasss API + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + description: The ForwaringClass is used as a placeholder for to allow multiple other resources to reference the same forwarding class. + type: object + status: + description: ForwardingClassStatus defines the observed state of ForwardingClass + type: object + type: object +served: true +storage: false +subresources: + status: {} diff --git a/static/resources/25.8.2/globalconfigs.core.eda.nokia.com/v1.yaml b/static/resources/25.8.2/globalconfigs.core.eda.nokia.com/v1.yaml new file mode 100644 index 0000000..d2aa468 --- /dev/null +++ b/static/resources/25.8.2/globalconfigs.core.eda.nokia.com/v1.yaml @@ -0,0 +1,59 @@ +name: v1 +schema: + openAPIV3Schema: + description: GlobalConfig is the Schema for the GlobalConfigs API + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + properties: + dhcp: + description: External reachability configuration for this cluster + properties: + domainName: + description: The external domain name of the cluster + type: string + httpPort: + description: HTTP port used to reach this cluster externally + format: int32 + type: integer + httpsPort: + description: HTTPS port used to reach this cluster externally + format: int32 + type: integer + ipv4Address: + description: The external IPv4 address of the cluster + type: string + ipv6Address: + description: The external IPv6 address of the cluster + type: string + relaxDomainNameEnforcement: + default: false + description: Relax enforcement of client origins from configured cluster.external.domainName + type: boolean + type: object + required: + - dhcp + type: object + required: + - spec + type: object +served: true +storage: true +subresources: + status: {} diff --git a/static/resources/25.8.2/httpproxies.core.eda.nokia.com/v1.yaml b/static/resources/25.8.2/httpproxies.core.eda.nokia.com/v1.yaml new file mode 100644 index 0000000..117df24 --- /dev/null +++ b/static/resources/25.8.2/httpproxies.core.eda.nokia.com/v1.yaml @@ -0,0 +1,53 @@ +additionalPrinterColumns: + - jsonPath: .spec.rootUrl + name: Root URL + type: string +name: v1 +schema: + openAPIV3Schema: + description: HttpProxy is the Schema for the proxy API + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + description: HttpProxySpec defines the desired state of HttpProxy + properties: + authType: + description: |- + Determines where authentication happens. + If "atDestination", then no authentication happens in API server and any auth tokens are forwarded as is. + If "inApiServer", then authentication happens within the API server and auth tokens are stripped prior to forwarding. + enum: + - atDestination + - inApiServer + type: string + rootUrl: + description: The proxy destination, including the protocol. + type: string + required: + - authType + - rootUrl + type: object + status: + description: HttpProxyStatus defines the observed state of HttpProxy + type: object + type: object +served: true +storage: true +subresources: + status: {} diff --git a/static/resources/25.8.2/indexallocationpools.core.eda.nokia.com/v1.yaml b/static/resources/25.8.2/indexallocationpools.core.eda.nokia.com/v1.yaml new file mode 100644 index 0000000..bc17995 --- /dev/null +++ b/static/resources/25.8.2/indexallocationpools.core.eda.nokia.com/v1.yaml @@ -0,0 +1,92 @@ +name: v1 +schema: + openAPIV3Schema: + description: IndexAllocationPool is the Schema for the indexallocationpools API + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + description: |- + IndexAllocationPool is a generic allocation pool supporting allocation of indexes from a set of segments. + It supports allocating things like VLANs, subinterface indexes, autonomous system numbers, or any other integer-based index. + properties: + publishAllocations: + description: If true, allocations in segments will be published to EDB, available to query via EQL and trigger state applications off of. + type: boolean + segments: + description: List of segments containing indexes to allocate. + items: + properties: + allocations: + description: List of reservations to exclude from allocations from this segment. + items: + properties: + name: + description: Name of this allocation. + type: string + value: + description: Index to reserve. + format: int32 + type: integer + required: + - name + - value + type: object + type: array + reservations: + description: Range of reservations to exclude from allocations from this segment. + items: + properties: + end: + description: Value to reserve to. + format: int32 + type: integer + start: + description: Value to start reserving. + format: int32 + type: integer + required: + - end + - start + type: object + type: array + size: + description: Number of elements in the segment. + format: int32 + type: integer + start: + description: Starting value of the segment. + format: int32 + type: integer + required: + - size + - start + type: object + minItems: 1 + type: array + required: + - segments + type: object + status: + description: IndexAllocationPoolStatus defines the observed state of IndexAllocationPool + type: object + type: object +served: true +storage: true +subresources: + status: {} diff --git a/static/resources/25.8.2/ingresspolicys.qos.eda.nokia.com/v1.yaml b/static/resources/25.8.2/ingresspolicys.qos.eda.nokia.com/v1.yaml new file mode 100644 index 0000000..e090cf3 --- /dev/null +++ b/static/resources/25.8.2/ingresspolicys.qos.eda.nokia.com/v1.yaml @@ -0,0 +1,785 @@ +name: v1 +schema: + openAPIV3Schema: + description: IngressPolicy is the Schema for the ingresspolicys API + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + description: IngressPolicySpec defines the desired state of IngressPolicy + properties: + classifier: + description: Classifier manages the configuration of traffic classification policies in a network. It includes various entry types like IPv4, IPv6, Dot1p, and DSCP policies. Each entry specifies how traffic should be classified and what actions should be taken on the matched packets. + properties: + entries: + description: |- + Specifies the list of filter entries, in order. + A classifier containing multiple entry types may result in multiple classifiers being created on the target node. + IPV4 and IPV6 entries will create multifield classifier policies. + items: + properties: + dot1pPolicyEntry: + description: A Dot1p policy entry - only a single Dot1p entry is allowed per classifier resource. + properties: + directToPFCQueue: + description: In addition to creating a Dot1p PCP value to Forwarding Class mapping, this will map the PCP values directly to the PFC queue specified in the Forwarding Class to Queue mapping. + type: boolean + dropProbabilityLevel: + default: Low + description: Assign matching packets to the specified drop probability level. + enum: + - High + - Medium + - Low + type: string + forwardingClass: + description: Reference to a ForwardingClass resource to which the value is mapped. + type: string + pcpValues: + description: List of PCP values or ranges used to match packets to classify into Forwarding Classes. + items: + properties: + rangeEnd: + description: Optional end of PCP range (inclusive) which would start from the Value to the RangeEnd. + maximum: 7 + minimum: 0 + type: integer + value: + description: Single PCP value or start of range. + maximum: 7 + minimum: 0 + type: integer + required: + - value + type: object + minItems: 1 + type: array + required: + - pcpValues + type: object + dscpPolicyEntry: + description: A DSCP policy entry - only a single DSCP entry is allowed per classifier resource. + properties: + dropProbabilityLevel: + default: Low + description: Assign matching packets to the specified drop probability level. + enum: + - High + - Medium + - Low + type: string + dscpValues: + description: List of DSCP values or ranges used to match packets to classify into Forwarding Classes. + items: + properties: + rangeEnd: + description: Optional end of DSCP range (inclusive) which would start from the Value to the RangeEnd. + maximum: 63 + minimum: 0 + type: integer + value: + description: Single DSCP value or start of range. + maximum: 63 + minimum: 0 + type: integer + required: + - value + type: object + minItems: 1 + type: array + forwardingClass: + description: Reference to a ForwardingClass resource to which the value is mapped. + type: string + required: + - dscpValues + type: object + ipEntry: + description: An IPv4 or IPv6 multifield classifier entry. + properties: + action: + description: An action to take on the matched packets. + properties: + dropProbabilityLevel: + default: Low + description: Assign matching packets to the specified drop probability level. + enum: + - High + - Medium + - Low + type: string + dscpRewriteValue: + description: Rewrite actions associated with packets that match the classifier entry. + maximum: 63 + minimum: 0 + type: integer + forwardingClass: + description: Reference to a ForwardingClass resource to which the value is mapped. + type: string + type: object + destinationPortName: + description: Destination port to match by name. + enum: + - ACAP + - AFP-TCP + - ARNS + - ASF-RMCP + - ASHARE + - ATALK-RM + - AURP + - AUTH + - BFD + - BFD-ECHO + - BFTP + - BGMP + - BGP + - BOOTPC + - BOOTPS + - CCSO-NS + - CHARGEN + - CISCO-TDP + - CITADEL + - CLEARCASE + - COMMERCE + - COURIER + - DAYTIME + - DHCP-FAILOVER + - DHCPV6-CLIENT + - DHCPV6-SERVER + - DICOM + - DISCARD + - DNSIX + - DOMAIN + - DSP + - ECHO + - EPP + - ESRO + - EXEC + - FINGER + - FTP + - FTP-DATA + - FTPS + - FTPS-DATA + - GODI + - GOPHER + - GTP-C + - GTP-PRIME + - GTP-U + - HA-CLUSTER + - HOSTNAME + - HP-ALARM-MGR + - HTTP + - HTTP-ALT + - HTTP-MGMT + - HTTP-RPC + - HTTPS + - IEEE-MMS-SSL + - IMAP + - IMAP3 + - IMAPS + - IPP + - IPSEC + - IPX + - IRC + - IRIS-BEEP + - ISAKMP + - ISAKMP-NAT + - ISCSI + - ISO-TSAP + - KERBEROS + - KERBEROS-ADM + - KLOGIN + - KPASSWD + - KSHELL + - L2TP + - LDAP + - LDAPS + - LDP + - LMP + - LOGIN + - LPD + - LSP-PING + - MAC-SERVER-ADM + - MATIP-A + - MATIP-B + - MICRO-BFD + - MICROSOFT-DS + - MOBILE-IP + - MONITOR + - MPP + - MS-EXCHANGE + - MSDP + - MSP + - MSSQL-M + - MSSQL-S + - MULTIHOP-BFD + - NAS + - NCP + - NETBIOS-DATA + - NETBIOS-NS + - NETBIOS-SS + - NETNEWS + - NETRJS-1 + - NETRJS-2 + - NETRJS-3 + - NETRJS-4 + - NETWALL + - NEW-RWHO + - NFS + - NNTP + - NNTPS + - NTP + - ODMR + - OLSR + - OPENVPN + - PIM-AUTO-RP + - PKIX-TIMESTAMP + - POP2 + - POP3 + - POP3S + - PPTP + - PRINT-SRV + - PTP-EVENT + - PTP-GENERAL + - QMTP + - QOTD + - RADIUS + - RADIUS-ACCT + - REMOTE-MAIL + - REMOTEFS + - REMOTECMD + - RIP + - RJE + - RLP + - RLZDB + - RMC + - RMONITOR + - RPC2PORTMAP + - RSYNC + - RTELNET + - RTSP + - SGMP + - SILC + - SMUX + - SNA-GW + - SNMP + - SNMP-TRAP + - SNPP + - SMTP + - SQL-SVCS + - SQL + - SSH + - SUBMISSION + - SUNRPC + - SVCLOC + - SYSLOG + - SYSTAT + - TACACS + - TALK + - TCPMUX + - TCPNETHASPSRV + - TFTP + - TIME + - TIMED + - UPS + - XDMCP + - XNS-CH + - XNS-MAIL + - XNS-TIME + - Z3950 + type: string + destinationPortNumber: + description: Destination port to match by numerical value. + maximum: 65535 + minimum: 0 + type: integer + destinationPortOperator: + description: Operator to use when matching destinationPort, either Equals, GreaterOrEquals, or LessOrEquals. + enum: + - Equals + - GreaterOrEquals + - LessOrEquals + type: string + destinationPortRange: + description: Range of destination ports to match, in the format n-m, e.g. 100-200, The start and end of the range must be port numbers. + type: string + destinationPrefix: + description: Destination prefix to match. + type: string + firstFragment: + description: Match the first fragment only. + type: boolean + fragment: + description: Match any fragment. + type: boolean + icmpCode: + description: Match a specific ICMP code, as a number between 0-255, e.g. 0. + items: + type: integer + maxItems: 255 + minItems: 0 + type: array + icmpTypeName: + description: Match a specific ICMP type by name, e.g. dest-unreachable. + enum: + - DestUnreachable + - Echo + - EchoReply + - EchoRequest + - McastRtrAdv + - McastRtrSolicit + - McastRtrTerm + - MldDone + - MldQuery + - MldReport + - MldV2 + - NeighborAdvertise + - NeighborSolicit + - NodeInfoQuery + - NodeInfoResponse + - PacketTooBig + - ParamProblem + - Redirect + - RouterAdvertise + - RouterRenumber + - RouterSolicit + - SourceQuench + - TimeExceeded + - Timestamp + - TimestampReply + type: string + icmpTypeNumber: + description: Match a specific ICMP type by number. + maximum: 255 + minimum: 0 + type: integer + protocolName: + description: Match a specific IP protocol name (specified in the type field of the IP header). + enum: + - AH + - EGP + - EIGRP + - ESP + - GGP + - GRE + - ICMP + - ICMP6 + - IDRP + - IGMP + - IGP + - IPV4 + - IPV6 + - IPV6-DEST-OPTS + - IPV6-HOP + - L2TP + - MPLS-IN-IP + - NO-NEXT-HDR + - OSPF + - PIM + - ROHC + - RSVP + - SCTP + - ST + - TCP + - UDP + - VRRP + type: string + protocolNumber: + description: Match a specific IP protocol number (specified in the type field of the IP header). + maximum: 255 + minimum: 0 + type: integer + sourcePortName: + description: Source port to match by name. + enum: + - ACAP + - AFP-TCP + - ARNS + - ASF-RMCP + - ASHARE + - ATALK-RM + - AURP + - AUTH + - BFD + - BFD-ECHO + - BFTP + - BGMP + - BGP + - BOOTPC + - BOOTPS + - CCSO-NS + - CHARGEN + - CISCO-TDP + - CITADEL + - CLEARCASE + - COMMERCE + - COURIER + - DAYTIME + - DHCP-FAILOVER + - DHCPV6-CLIENT + - DHCPV6-SERVER + - DICOM + - DISCARD + - DNSIX + - DOMAIN + - DSP + - ECHO + - EPP + - ESRO + - EXEC + - FINGER + - FTP + - FTP-DATA + - FTPS + - FTPS-DATA + - GODI + - GOPHER + - GTP-C + - GTP-PRIME + - GTP-U + - HA-CLUSTER + - HOSTNAME + - HP-ALARM-MGR + - HTTP + - HTTP-ALT + - HTTP-MGMT + - HTTP-RPC + - HTTPS + - IEEE-MMS-SSL + - IMAP + - IMAP3 + - IMAPS + - IPP + - IPSEC + - IPX + - IRC + - IRIS-BEEP + - ISAKMP + - ISAKMP-NAT + - ISCSI + - ISO-TSAP + - KERBEROS + - KERBEROS-ADM + - KLOGIN + - KPASSWD + - KSHELL + - L2TP + - LDAP + - LDAPS + - LDP + - LMP + - LOGIN + - LPD + - LSP-PING + - MAC-SERVER-ADM + - MATIP-A + - MATIP-B + - MICRO-BFD + - MICROSOFT-DS + - MOBILE-IP + - MONITOR + - MPP + - MS-EXCHANGE + - MSDP + - MSP + - MSSQL-M + - MSSQL-S + - MULTIHOP-BFD + - NAS + - NCP + - NETBIOS-DATA + - NETBIOS-NS + - NETBIOS-SS + - NETNEWS + - NETRJS-1 + - NETRJS-2 + - NETRJS-3 + - NETRJS-4 + - NETWALL + - NEW-RWHO + - NFS + - NNTP + - NNTPS + - NTP + - ODMR + - OLSR + - OPENVPN + - PIM-AUTO-RP + - PKIX-TIMESTAMP + - POP2 + - POP3 + - POP3S + - PPTP + - PRINT-SRV + - PTP-EVENT + - PTP-GENERAL + - QMTP + - QOTD + - RADIUS + - RADIUS-ACCT + - REMOTE-MAIL + - REMOTEFS + - REMOTECMD + - RIP + - RJE + - RLP + - RLZDB + - RMC + - RMONITOR + - RPC2PORTMAP + - RSYNC + - RTELNET + - RTSP + - SGMP + - SILC + - SMUX + - SNA-GW + - SNMP + - SNMP-TRAP + - SNPP + - SMTP + - SQL-SVCS + - SQL + - SSH + - SUBMISSION + - SUNRPC + - SVCLOC + - SYSLOG + - SYSTAT + - TACACS + - TALK + - TCPMUX + - TCPNETHASPSRV + - TFTP + - TIME + - TIMED + - UPS + - XDMCP + - XNS-CH + - XNS-MAIL + - XNS-TIME + - Z3950 + type: string + sourcePortNumber: + description: Source port to match by numerical value. + maximum: 65535 + minimum: 0 + type: integer + sourcePortOperator: + description: Operator to use when matching sourcePort, either Equals, GreaterOrEquals, or LessOrEquals. + enum: + - Equals + - GreaterOrEquals + - LessOrEquals + type: string + sourcePortRange: + description: Range of source ports to match, in the format n-m, e.g. 100-200. The start and end of the range must be port numbers. + type: string + sourcePrefix: + description: Source prefix to match. + type: string + tcpFlags: + description: Match TCP flags, usable with !, &, | and the flags RST, SYN, and ACK. + type: string + required: + - action + type: object + type: + default: AUTO + description: Type of the entry which can be IPV4, IPV6, Dot1pPolicy, DSCPPolicy, or Auto. + enum: + - IPV4 + - IPV6 + - DOT1P + - DSCP + - AUTO + type: string + required: + - type + type: object + type: array + required: + - entries + type: object + forwardingClassToQueueMapping: + description: Forwarding class to queue mapping policy. + items: + properties: + forwardingClasses: + description: The forwarding classes to which the mapping applies, these are references to ForwardingClass resources. + items: + type: string + minItems: 1 + type: array + queue: + description: The queue to which the forwarding classes are mapped, this is a reference to a Queue resource. + type: string + required: + - forwardingClasses + - queue + type: object + type: array + policers: + description: Ordered list of policers where the first policer is evaluated first before proceeding to the next. + items: + properties: + committedBurstSize: + description: Maximum CIR bucket depth in bytes. + format: int32 + maximum: 4294967295 + minimum: 0 + type: integer + committedRate: + description: The committed information rate (CIR) of the policer, defined in kilobits (1024 bits) per second. + format: int32 + type: integer + committedRatePercent: + description: The committed information rate (CIR) of the policer, defined as a percentage of the Interface speed on which it is applied. + maximum: 100 + minimum: 0 + type: integer + exceedAction: + description: Applies a drop-probability to packets that the policer has determined are exceeding (yellow). + properties: + dropProbabilityLevel: + default: Medium + enum: + - High + - Medium + - Low + type: string + type: object + forwardingClasses: + description: The list of forwarding classes with traffic to be sent to the policer. Unless specified all traffic is matched for this policer. + items: + properties: + forwardingClasses: + description: The forwarding class of the packets on which to apply the Policer. To match all traffic set this to 'ALL'. + items: + type: string + type: array + forwardingTypes: + default: + - All + items: + enum: + - Broadcast + - Unicast + - Multicast + - UnknownMulticast + - UnknownUnicast + - All + type: string + type: array + required: + - forwardingTypes + type: object + type: array + maximumBurstSize: + description: Maximum PIR bucket depth in bytes. + format: int32 + maximum: 4294967295 + minimum: 0 + type: integer + minInterfaceSpeed: + description: Minimum interface speed (kbps) to calculate PeakRate and CommittedRate for devices where configuration is not supported in percentage. + format: int32 + type: integer + peakRate: + description: The peak information rate (PIR) of the policer, defined in kilobits (1024 bits) per second. + format: int32 + type: integer + peakRatePercent: + description: The peak information rate (PIR) of the policer, defined as a percentage of the Interface speed on which it is applied. + maximum: 100 + minimum: 0 + type: integer + violateAction: + description: Applies a drop-probability to packets that the policer has determined are exceeding (red). + properties: + dropProbabilityLevel: + default: High + enum: + - High + - Medium + - Low + - All + type: string + type: object + type: object + type: array + queueManagement: + description: Queue management policy for egress queues. + items: + properties: + pfcReservedBufferPercent: + description: 'Percentage of the linecard buffer reserved for accomodating incoming traffic while upstream node reacts to generated PFC-pause frames. Note: this percentage must be common across all EgressPolicies and QueuesSets used on the same linecard.' + maximum: 100 + minimum: 0 + type: integer + queues: + description: List of queues. + items: + properties: + committedBurstSize: + description: Committed Burst Size. + format: int32 + type: integer + maximumBurstSize: + description: Maximum amount of shared buffer memory available to the queue in bytes. + format: int32 + maximum: 4294967295 + minimum: 0 + type: integer + pfcOffThreshold: + description: PFC off threshold. + maximum: 100 + minimum: 0 + type: integer + pfcOnThreshold: + description: PFC on threshold. + maximum: 100 + minimum: 0 + type: integer + pfcPauseFramePriority: + description: PFC priorities indicated in generated pfc-pause-frame if congestion occurs in a given pfc-queue. + type: integer + pfcReservedShareBufferPercent: + description: Maximum level the pfc-queue can take from pfc-reserved buffer configured per given forwarding-complex. + maximum: 100 + minimum: 0 + type: integer + queue: + description: Reference to a Queue resource. + type: string + required: + - queue + type: object + type: array + required: + - queues + type: object + type: array + type: object + status: + description: IngressPolicyStatus defines the observed state of IngressPolicy + type: object + type: object +served: true +storage: true +subresources: + status: {} diff --git a/static/resources/25.8.2/ingresspolicys.qos.eda.nokia.com/v1alpha1.yaml b/static/resources/25.8.2/ingresspolicys.qos.eda.nokia.com/v1alpha1.yaml new file mode 100644 index 0000000..a95159c --- /dev/null +++ b/static/resources/25.8.2/ingresspolicys.qos.eda.nokia.com/v1alpha1.yaml @@ -0,0 +1,787 @@ +deprecated: true +deprecationWarning: This version is deprecated and will no longer be supported in the next version. +name: v1alpha1 +schema: + openAPIV3Schema: + description: IngressPolicy is the Schema for the ingresspolicys API + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + description: IngressPolicySpec defines the desired state of IngressPolicy + properties: + classifier: + description: Classifier manages the configuration of traffic classification policies in a network. It includes various entry types like IPv4, IPv6, Dot1p, and DSCP policies. Each entry specifies how traffic should be classified and what actions should be taken on the matched packets. + properties: + entries: + description: |- + Specifies the list of filter entries, in order. + A classifier containing multiple entry types may result in multiple classifiers being created on the target node. + IPV4 and IPV6 entries will create multifield classifier policies. + items: + properties: + dot1pPolicyEntry: + description: A Dot1p policy entry - only a single Dot1p entry is allowed per classifier resource. + properties: + directToPFCQueue: + description: In addition to creating a Dot1p PCP value to Forwarding Class mapping, this will map the PCP values directly to the PFC queue specified in the Forwarding Class to Queue mapping. + type: boolean + dropProbabilityLevel: + default: Low + description: Assign matching packets to the specified drop probability level. + enum: + - High + - Medium + - Low + type: string + forwardingClass: + description: Reference to a ForwardingClass resource to which the value is mapped. + type: string + pcpValues: + description: List of PCP values or ranges used to match packets to classify into Forwarding Classes. + items: + properties: + rangeEnd: + description: Optional end of PCP range (inclusive) which would start from the Value to the RangeEnd. + maximum: 7 + minimum: 0 + type: integer + value: + description: Single PCP value or start of range. + maximum: 7 + minimum: 0 + type: integer + required: + - value + type: object + minItems: 1 + type: array + required: + - pcpValues + type: object + dscpPolicyEntry: + description: A DSCP policy entry - only a single DSCP entry is allowed per classifier resource. + properties: + dropProbabilityLevel: + default: Low + description: Assign matching packets to the specified drop probability level. + enum: + - High + - Medium + - Low + type: string + dscpValues: + description: List of DSCP values or ranges used to match packets to classify into Forwarding Classes. + items: + properties: + rangeEnd: + description: Optional end of DSCP range (inclusive) which would start from the Value to the RangeEnd. + maximum: 63 + minimum: 0 + type: integer + value: + description: Single DSCP value or start of range. + maximum: 63 + minimum: 0 + type: integer + required: + - value + type: object + minItems: 1 + type: array + forwardingClass: + description: Reference to a ForwardingClass resource to which the value is mapped. + type: string + required: + - dscpValues + type: object + ipEntry: + description: An IPv4 or IPv6 multifield classifier entry. + properties: + action: + description: An action to take on the matched packets. + properties: + dropProbabilityLevel: + default: Low + description: Assign matching packets to the specified drop probability level. + enum: + - High + - Medium + - Low + type: string + dscpRewriteValue: + description: Rewrite actions associated with packets that match the classifier entry. + maximum: 63 + minimum: 0 + type: integer + forwardingClass: + description: Reference to a ForwardingClass resource to which the value is mapped. + type: string + type: object + destinationPortName: + description: Destination port to match by name. + enum: + - ACAP + - AFP-TCP + - ARNS + - ASF-RMCP + - ASHARE + - ATALK-RM + - AURP + - AUTH + - BFD + - BFD-ECHO + - BFTP + - BGMP + - BGP + - BOOTPC + - BOOTPS + - CCSO-NS + - CHARGEN + - CISCO-TDP + - CITADEL + - CLEARCASE + - COMMERCE + - COURIER + - DAYTIME + - DHCP-FAILOVER + - DHCPV6-CLIENT + - DHCPV6-SERVER + - DICOM + - DISCARD + - DNSIX + - DOMAIN + - DSP + - ECHO + - EPP + - ESRO + - EXEC + - FINGER + - FTP + - FTP-DATA + - FTPS + - FTPS-DATA + - GODI + - GOPHER + - GTP-C + - GTP-PRIME + - GTP-U + - HA-CLUSTER + - HOSTNAME + - HP-ALARM-MGR + - HTTP + - HTTP-ALT + - HTTP-MGMT + - HTTP-RPC + - HTTPS + - IEEE-MMS-SSL + - IMAP + - IMAP3 + - IMAPS + - IPP + - IPSEC + - IPX + - IRC + - IRIS-BEEP + - ISAKMP + - ISAKMP-NAT + - ISCSI + - ISO-TSAP + - KERBEROS + - KERBEROS-ADM + - KLOGIN + - KPASSWD + - KSHELL + - L2TP + - LDAP + - LDAPS + - LDP + - LMP + - LOGIN + - LPD + - LSP-PING + - MAC-SERVER-ADM + - MATIP-A + - MATIP-B + - MICRO-BFD + - MICROSOFT-DS + - MOBILE-IP + - MONITOR + - MPP + - MS-EXCHANGE + - MSDP + - MSP + - MSSQL-M + - MSSQL-S + - MULTIHOP-BFD + - NAS + - NCP + - NETBIOS-DATA + - NETBIOS-NS + - NETBIOS-SS + - NETNEWS + - NETRJS-1 + - NETRJS-2 + - NETRJS-3 + - NETRJS-4 + - NETWALL + - NEW-RWHO + - NFS + - NNTP + - NNTPS + - NTP + - ODMR + - OLSR + - OPENVPN + - PIM-AUTO-RP + - PKIX-TIMESTAMP + - POP2 + - POP3 + - POP3S + - PPTP + - PRINT-SRV + - PTP-EVENT + - PTP-GENERAL + - QMTP + - QOTD + - RADIUS + - RADIUS-ACCT + - REMOTE-MAIL + - REMOTEFS + - REMOTECMD + - RIP + - RJE + - RLP + - RLZDB + - RMC + - RMONITOR + - RPC2PORTMAP + - RSYNC + - RTELNET + - RTSP + - SGMP + - SILC + - SMUX + - SNA-GW + - SNMP + - SNMP-TRAP + - SNPP + - SMTP + - SQL-SVCS + - SQL + - SSH + - SUBMISSION + - SUNRPC + - SVCLOC + - SYSLOG + - SYSTAT + - TACACS + - TALK + - TCPMUX + - TCPNETHASPSRV + - TFTP + - TIME + - TIMED + - UPS + - XDMCP + - XNS-CH + - XNS-MAIL + - XNS-TIME + - Z3950 + type: string + destinationPortNumber: + description: Destination port to match by numerical value. + maximum: 65535 + minimum: 0 + type: integer + destinationPortOperator: + description: Operator to use when matching destinationPort, either Equals, GreaterOrEquals, or LessOrEquals. + enum: + - Equals + - GreaterOrEquals + - LessOrEquals + type: string + destinationPortRange: + description: Range of destination ports to match, in the format n-m, e.g. 100-200, The start and end of the range must be port numbers. + type: string + destinationPrefix: + description: Destination prefix to match. + type: string + firstFragment: + description: Match the first fragment only. + type: boolean + fragment: + description: Match any fragment. + type: boolean + icmpCode: + description: Match a specific ICMP code, as a number between 0-255, e.g. 0. + items: + type: integer + maxItems: 255 + minItems: 0 + type: array + icmpTypeName: + description: Match a specific ICMP type by name, e.g. dest-unreachable. + enum: + - DestUnreachable + - Echo + - EchoReply + - EchoRequest + - McastRtrAdv + - McastRtrSolicit + - McastRtrTerm + - MldDone + - MldQuery + - MldReport + - MldV2 + - NeighborAdvertise + - NeighborSolicit + - NodeInfoQuery + - NodeInfoResponse + - PacketTooBig + - ParamProblem + - Redirect + - RouterAdvertise + - RouterRenumber + - RouterSolicit + - SourceQuench + - TimeExceeded + - Timestamp + - TimestampReply + type: string + icmpTypeNumber: + description: Match a specific ICMP type by number. + maximum: 255 + minimum: 0 + type: integer + protocolName: + description: Match a specific IP protocol name (specified in the type field of the IP header). + enum: + - AH + - EGP + - EIGRP + - ESP + - GGP + - GRE + - ICMP + - ICMP6 + - IDRP + - IGMP + - IGP + - IPV4 + - IPV6 + - IPV6-DEST-OPTS + - IPV6-HOP + - L2TP + - MPLS-IN-IP + - NO-NEXT-HDR + - OSPF + - PIM + - ROHC + - RSVP + - SCTP + - ST + - TCP + - UDP + - VRRP + type: string + protocolNumber: + description: Match a specific IP protocol number (specified in the type field of the IP header). + maximum: 255 + minimum: 0 + type: integer + sourcePortName: + description: Source port to match by name. + enum: + - ACAP + - AFP-TCP + - ARNS + - ASF-RMCP + - ASHARE + - ATALK-RM + - AURP + - AUTH + - BFD + - BFD-ECHO + - BFTP + - BGMP + - BGP + - BOOTPC + - BOOTPS + - CCSO-NS + - CHARGEN + - CISCO-TDP + - CITADEL + - CLEARCASE + - COMMERCE + - COURIER + - DAYTIME + - DHCP-FAILOVER + - DHCPV6-CLIENT + - DHCPV6-SERVER + - DICOM + - DISCARD + - DNSIX + - DOMAIN + - DSP + - ECHO + - EPP + - ESRO + - EXEC + - FINGER + - FTP + - FTP-DATA + - FTPS + - FTPS-DATA + - GODI + - GOPHER + - GTP-C + - GTP-PRIME + - GTP-U + - HA-CLUSTER + - HOSTNAME + - HP-ALARM-MGR + - HTTP + - HTTP-ALT + - HTTP-MGMT + - HTTP-RPC + - HTTPS + - IEEE-MMS-SSL + - IMAP + - IMAP3 + - IMAPS + - IPP + - IPSEC + - IPX + - IRC + - IRIS-BEEP + - ISAKMP + - ISAKMP-NAT + - ISCSI + - ISO-TSAP + - KERBEROS + - KERBEROS-ADM + - KLOGIN + - KPASSWD + - KSHELL + - L2TP + - LDAP + - LDAPS + - LDP + - LMP + - LOGIN + - LPD + - LSP-PING + - MAC-SERVER-ADM + - MATIP-A + - MATIP-B + - MICRO-BFD + - MICROSOFT-DS + - MOBILE-IP + - MONITOR + - MPP + - MS-EXCHANGE + - MSDP + - MSP + - MSSQL-M + - MSSQL-S + - MULTIHOP-BFD + - NAS + - NCP + - NETBIOS-DATA + - NETBIOS-NS + - NETBIOS-SS + - NETNEWS + - NETRJS-1 + - NETRJS-2 + - NETRJS-3 + - NETRJS-4 + - NETWALL + - NEW-RWHO + - NFS + - NNTP + - NNTPS + - NTP + - ODMR + - OLSR + - OPENVPN + - PIM-AUTO-RP + - PKIX-TIMESTAMP + - POP2 + - POP3 + - POP3S + - PPTP + - PRINT-SRV + - PTP-EVENT + - PTP-GENERAL + - QMTP + - QOTD + - RADIUS + - RADIUS-ACCT + - REMOTE-MAIL + - REMOTEFS + - REMOTECMD + - RIP + - RJE + - RLP + - RLZDB + - RMC + - RMONITOR + - RPC2PORTMAP + - RSYNC + - RTELNET + - RTSP + - SGMP + - SILC + - SMUX + - SNA-GW + - SNMP + - SNMP-TRAP + - SNPP + - SMTP + - SQL-SVCS + - SQL + - SSH + - SUBMISSION + - SUNRPC + - SVCLOC + - SYSLOG + - SYSTAT + - TACACS + - TALK + - TCPMUX + - TCPNETHASPSRV + - TFTP + - TIME + - TIMED + - UPS + - XDMCP + - XNS-CH + - XNS-MAIL + - XNS-TIME + - Z3950 + type: string + sourcePortNumber: + description: Source port to match by numerical value. + maximum: 65535 + minimum: 0 + type: integer + sourcePortOperator: + description: Operator to use when matching sourcePort, either Equals, GreaterOrEquals, or LessOrEquals. + enum: + - Equals + - GreaterOrEquals + - LessOrEquals + type: string + sourcePortRange: + description: Range of source ports to match, in the format n-m, e.g. 100-200. The start and end of the range must be port numbers. + type: string + sourcePrefix: + description: Source prefix to match. + type: string + tcpFlags: + description: Match TCP flags, usable with !, &, | and the flags RST, SYN, and ACK. + type: string + required: + - action + type: object + type: + default: AUTO + description: Type of the entry which can be IPV4, IPV6, Dot1pPolicy, DSCPPolicy, or Auto. + enum: + - IPV4 + - IPV6 + - DOT1P + - DSCP + - AUTO + type: string + required: + - type + type: object + type: array + required: + - entries + type: object + forwardingClassToQueueMapping: + description: Forwarding class to queue mapping policy. + items: + properties: + forwardingClasses: + description: The forwarding classes to which the mapping applies, these are references to ForwardingClass resources. + items: + type: string + minItems: 1 + type: array + queue: + description: The queue to which the forwarding classes are mapped, this is a reference to a Queue resource. + type: string + required: + - forwardingClasses + - queue + type: object + type: array + policers: + description: Ordered list of policers where the first policer is evaluated first before proceeding to the next. + items: + properties: + committedBurstSize: + description: Maximum CIR bucket depth in bytes. + format: int32 + maximum: 4294967295 + minimum: 0 + type: integer + committedRate: + description: The committed information rate (CIR) of the policer, defined in kilobits (1024 bits) per second. + format: int32 + type: integer + committedRatePercent: + description: The committed information rate (CIR) of the policer, defined as a percentage of the Interface speed on which it is applied. + maximum: 100 + minimum: 0 + type: integer + exceedAction: + description: Applies a drop-probability to packets that the policer has determined are exceeding (yellow). + properties: + dropProbabilityLevel: + default: Medium + enum: + - High + - Medium + - Low + type: string + type: object + forwardingClasses: + description: The list of forwarding classes with traffic to be sent to the policer. Unless specified all traffic is matched for this policer. + items: + properties: + forwardingClasses: + description: The forwarding class of the packets on which to apply the Policer. To match all traffic set this to 'ALL'. + items: + type: string + type: array + forwardingTypes: + default: + - All + items: + enum: + - Broadcast + - Unicast + - Multicast + - UnknownMulticast + - UnknownUnicast + - All + type: string + type: array + required: + - forwardingTypes + type: object + type: array + maximumBurstSize: + description: Maximum PIR bucket depth in bytes. + format: int32 + maximum: 4294967295 + minimum: 0 + type: integer + minInterfaceSpeed: + description: Minimum interface speed (kbps) to calculate PeakRate and CommittedRate for devices where configuration is not supported in percentage. + format: int32 + type: integer + peakRate: + description: The peak information rate (PIR) of the policer, defined in kilobits (1024 bits) per second. + format: int32 + type: integer + peakRatePercent: + description: The peak information rate (PIR) of the policer, defined as a percentage of the Interface speed on which it is applied. + maximum: 100 + minimum: 0 + type: integer + violateAction: + description: Applies a drop-probability to packets that the policer has determined are exceeding (red). + properties: + dropProbabilityLevel: + default: High + enum: + - High + - Medium + - Low + - All + type: string + type: object + type: object + type: array + queueManagement: + description: Queue management policy for egress queues. + items: + properties: + pfcReservedBufferPercent: + description: 'Percentage of the linecard buffer reserved for accomodating incoming traffic while upstream node reacts to generated PFC-pause frames. Note: this percentage must be common across all EgressPolicies and QueuesSets used on the same linecard.' + maximum: 100 + minimum: 0 + type: integer + queues: + description: List of queues. + items: + properties: + committedBurstSize: + description: Committed Burst Size. + format: int32 + type: integer + maximumBurstSize: + description: Maximum amount of shared buffer memory available to the queue in bytes. + format: int32 + maximum: 4294967295 + minimum: 0 + type: integer + pfcOffThreshold: + description: PFC off threshold. + maximum: 100 + minimum: 0 + type: integer + pfcOnThreshold: + description: PFC on threshold. + maximum: 100 + minimum: 0 + type: integer + pfcPauseFramePriority: + description: PFC priorities indicated in generated pfc-pause-frame if congestion occurs in a given pfc-queue. + type: integer + pfcReservedShareBufferPercent: + description: Maximum level the pfc-queue can take from pfc-reserved buffer configured per given forwarding-complex. + maximum: 100 + minimum: 0 + type: integer + queue: + description: Reference to a Queue resource. + type: string + required: + - queue + type: object + type: array + required: + - queues + type: object + type: array + type: object + status: + description: IngressPolicyStatus defines the observed state of IngressPolicy + type: object + type: object +served: true +storage: false +subresources: + status: {} diff --git a/static/resources/25.8.2/inits.bootstrap.eda.nokia.com/v1alpha1.yaml b/static/resources/25.8.2/inits.bootstrap.eda.nokia.com/v1alpha1.yaml new file mode 100644 index 0000000..f892c03 --- /dev/null +++ b/static/resources/25.8.2/inits.bootstrap.eda.nokia.com/v1alpha1.yaml @@ -0,0 +1,72 @@ +name: v1alpha1 +schema: + openAPIV3Schema: + description: Init is the Schema for the inits API + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + description: InitSpec defines the desired state of Init + properties: + commitSave: + description: Save a startup configuration after each commit. + type: boolean + mgmt: + description: |- + Optional management interface settings. + Allows setting DHCP clients or static IPs as well as + the IP MTU. + properties: + ipMTU: + description: Set the management interface IP MTU. + type: integer + ipv4DHCP: + description: Enable IPv4 DHCP client. + type: boolean + ipv6DHCP: + description: Enable IPv6 DHCP client. + type: boolean + staticRoutes: + description: Optional list of static routes to add to the management network instance as part of the initial configuration. + items: + properties: + nextHop: + description: Static route next hop. + type: string + prefix: + description: Static route prefix. + type: string + type: object + type: array + type: object + nodeSelector: + description: |- + Optional node selectors to perform initial configuration for. + If not provided initialization is performed for all nodes. + items: + type: string + type: array + type: object + status: + description: InitStatus defines the observed state of Init + type: object + type: object +served: true +storage: true +subresources: + status: {} diff --git a/static/resources/25.8.2/interfacemodules.components.eda.nokia.com/v1.yaml b/static/resources/25.8.2/interfacemodules.components.eda.nokia.com/v1.yaml new file mode 100644 index 0000000..4c759fe --- /dev/null +++ b/static/resources/25.8.2/interfacemodules.components.eda.nokia.com/v1.yaml @@ -0,0 +1,116 @@ +name: v1 +schema: + openAPIV3Schema: + description: InterfaceModule is the Schema for the interfacemodules API + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + description: InterfaceModuleSpec defines the desired state of InterfaceModule + type: object + status: + description: InterfaceModuleStatus defines the observed state of InterfaceModule + properties: + commonLanguageEquipmentIdentifier: + description: The CLEI code of this component + type: string + lastBooted: + description: The date and time this component last booted + type: string + lastChange: + description: The date and time this component last changed operational state + type: string + locatorEnabled: + description: Indicates if the locator LED for the component is active + type: boolean + manufacturedDate: + description: The date this component was manufactured + type: string + operationalState: + description: Indicates the current operational state of this component. + enum: + - Up + - Down + - Rebooting + - Unknown + - Starting + - Empty + type: string + parent: + description: Reference to a parent component + type: string + parentType: + description: Type of the parent component + enum: + - Fan + - FanTray + - PowerSupply + - PowerModule + - PowerShelf + - InterfaceModule + - ControlModule + - FabricModule + - Chassis + - Transceiver + type: string + partNumber: + description: The discovered part number of this component + type: string + removable: + description: Indicates if this component is removable + type: boolean + serialNumber: + description: The discovered serial number of this component + type: string + slot: + description: Slot this component resides in, unset for components that do not have a slot or ID + type: string + softwareVersion: + description: Version string of the software running on this component + type: string + target: + description: Target this component resides on. + type: string + temperature: + description: Temperature information for this component + properties: + alarmState: + description: The temperature alarm state, as reported by the component + type: boolean + instant: + description: The current temperature of this component + type: integer + margin: + description: The margin temperature of this component + type: integer + maximum: + description: The maximum temperature of this component + type: integer + threshold: + description: The threshold temperature of this component + type: integer + type: object + type: + description: Component type, as provided by the target + type: string + type: object + type: object +served: true +storage: true +subresources: + status: {} diff --git a/static/resources/25.8.2/interfaces.interfaces.eda.nokia.com/v1alpha1.yaml b/static/resources/25.8.2/interfaces.interfaces.eda.nokia.com/v1alpha1.yaml new file mode 100644 index 0000000..f81b61b --- /dev/null +++ b/static/resources/25.8.2/interfaces.interfaces.eda.nokia.com/v1alpha1.yaml @@ -0,0 +1,363 @@ +additionalPrinterColumns: + - jsonPath: .status.enabled + name: Enabled + type: boolean + - jsonPath: .status.operationalState + name: Operational State + type: string + - jsonPath: .status.speed + name: Speed + type: string + - jsonPath: .status.lastChange + name: Last Change + type: date + - jsonPath: .metadata.creationTimestamp + name: Age + type: date +name: v1alpha1 +schema: + openAPIV3Schema: + description: Interface is the Schema for the interfaces API + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + description: Interface allows for the configuration of various interface properties such as enabling/disabling the interface, setting descriptions, specifying interface types (e.g., LAG, interface, loopback), configuring VLAN encapsulation, and setting Ethernet or LAG-specific options. + properties: + ddm: + description: Enables reporting of DDM events. + type: boolean + description: + description: Description of the interface. + type: string + enabled: + default: true + description: Enable or disable the interface. + type: boolean + encapType: + default: "null" + description: Enable or disable VLAN tagging on this interface. [default="null"] + enum: + - "null" + - dot1q + type: string + ethernet: + description: Ethernet configuration options. + properties: + fec: + description: Sets the Forward Error Correction (FEC) on the members of the interface. + enum: + - disabled + - rs528 + - rs544 + - baser + - rs108 + type: string + holdDownTimer: + description: The hold-time down behavior is triggered with events that try to bring the ethernet interface down and can change quickly. It is not triggered with an admin-state disable event or interface disable due to other internal reasons. Units in milliseconds. + format: int32 + maximum: 86400000 + minimum: 100 + type: integer + holdUpTimer: + description: The hold-time up behavior is triggered with any event that tries to bring up the ethernet interface. While the hold-time up is running, the transceiver laser will be enabled, however the higher layers will not be notified that the interface is operationally up until the timer expires. Units in milliseconds. + format: int32 + maximum: 86400000 + minimum: 100 + type: integer + reloadDelayTimer: + description: After the system boots, the reload-delay timer in seconds keeps an interface shut down with the laser off for a configured amount of time until connectivity with the rest of network is established. + maximum: 86400 + minimum: 1 + type: integer + speed: + description: The speed of this interface, in human-readable format - e.g. 25G, 100G. + enum: + - 100G + - 10G + - 1G + - 25G + - 40G + - 50G + - 400G + type: string + standbySignaling: + description: Indicates the standby-signaling used in the interface. + enum: + - lacp + - power-off + type: string + stormControl: + description: Enables storm control. + properties: + broadcastRate: + description: Sets the maximum rate allowed for ingress broadcast frames on the interface. + format: int32 + maximum: 100000000 + minimum: 0 + type: integer + enabled: + description: Enables storm control. + type: boolean + multicastRate: + description: Sets the maximum rate allowed for ingress multicast frames on the interface. + format: int32 + maximum: 100000000 + minimum: 0 + type: integer + units: + description: Set the units to be used for measurement. + enum: + - kbps + - percentage + type: string + unknownUnicastRate: + description: Sets the maximum rate allowed for ingress unknown unicast frames on the interface. + maximum: 100000000 + minimum: 0 + type: integer + type: object + transparentL2CPProtocols: + description: 'A list of L2CP protocols to tunnel. Options: LLDP, LACP, xSTP, Dot1x, PTP, All.' + items: + enum: + - LLDP + - LACP + - xSTP + - Dot1x + - PTP + - All + type: string + type: array + type: object + lag: + description: LAG configuration options. + properties: + lacp: + properties: + adminKey: + description: Configure the LACP admin-key to be advertised by the local system. + maximum: 65535 + minimum: 1 + type: integer + interval: + default: fast + description: Set the period between LACP messages, uses the lacp-period-type enumeration. [default="fast"] + enum: + - fast + - slow + type: string + lacpFallback: + description: LACP fallback allows one or more designated links of an LACP controlled LAG to go into forwarding mode if LACP is not yet operational after a configured timeout period. [default=disabled] + properties: + mode: + default: static + description: Specifies lacp-fallback mode if enabled. + enum: + - static + type: string + timeout: + default: 60 + description: Specifies the LACP-fallback timeout interval in seconds. [default=60] + maximum: 3600 + minimum: 4 + type: integer + type: object + mode: + default: active + description: Active is to initiate the transmission of LACP PDUs. Passive is to wait for peer to initiate the transmission of LACP PDUs.[default="active"] + enum: + - active + - passive + type: string + systemIdMac: + description: The MAC address portion of the Node's System ID. This is combined with the system priority to construct the 8-octet system-id. + type: string + systemPriority: + default: 32768 + description: System priority used by the Node on this LAG interface. Lower value is higher priority for determining which Node is the controlling system.[default=32768] + maximum: 65535 + minimum: 0 + type: integer + type: object + minLinks: + default: 1 + description: The min-link threshold specifies the minimum number of member links that must be active in order for the LAG to be operationally up. If the number of active links falls below this threshold, the entire LAG is brought operationally down.[default=1] + maximum: 64 + minimum: 1 + type: integer + multihoming: + properties: + esi: + default: auto + description: 10 byte Ethernet Segment Identifier, if not set a type 0 ESI is generated. [default=auto] + type: string + mode: + default: all-active + description: |- + "all-active": All interfaces are active. + "single-active": In a single active MH LAG, the active and standby function is handled at the sub-interface layer within a network-instance. That is, the physical interfaces within the same LAG all remain operationally up, however each sub-interface associated with a network-instance has its operational state up or down based on whether it is selected to be the active or standby sub-interface. + "port-active": When port active MH LAG is enabled, the active and standby function is handled at the interface level. + enum: + - all-active + - single-active + - port-active + type: string + preferredActiveNode: + description: To be used in single-active or port-active modes. This references the Node object and when set, the DF algorithm is configured to type preference and the selected Node is set with a higher preference value. All other Nodes have a lower value configured. + type: string + reloadDelayTimer: + default: 100 + description: After the system boots, the reload-delay timer in seconds keeps an interface shut down with the laser off for a configured amount of time until connectivity with the rest of network is established. [default=100] + maximum: 86400 + minimum: 1 + type: integer + revertive: + default: false + description: To be used in single-active or port-active modes. When true, if there is a switch of active interface in the LAG and the original interface comes back up, the LAG will switch back to using the original interface as active. [default=false] + type: boolean + type: object + type: + default: lacp + description: This type defines whether whether it is a static or LACP LAG. [default=lacp] + enum: + - lacp + - static + type: string + type: object + lldp: + default: true + description: Enable or disable LLDP on the members of the interface. + type: boolean + members: + description: List of members on which to apply properties, for single interface this would be a list of 1. + items: + properties: + aggregateId: + description: |- + When using a LAG, the aggregateId can be specified per set of interfaces on a node. + LAG interface with which this interface is associated. + type: string + description: + description: Description of the member, inherited from the interface if not provided. + type: string + enabled: + default: true + description: Enable or disable this member. + type: boolean + interface: + description: 'Reference to an interface in the normalized format. Ex: SRL ethernet-1/1 would be ethernet-1-1. SROS port 2/1/1 would be ethernet-2-1.' + type: string + lacpPortPriority: + default: 32768 + description: Configure the port priority for LACP. This value is used to determine which port should be activated with LACP fallback mode. Lower values are more preferred.[default=32768] + maximum: 65535 + minimum: 0 + type: integer + node: + description: Node name. + type: string + required: + - interface + - node + type: object + type: array + mtu: + description: MTU to apply on the interface(s). + maximum: 9500 + minimum: 1450 + type: integer + type: + default: interface + description: Type defines whether the interface is a Lag or Interface. + enum: + - lag + - interface + - loopback + type: string + required: + - members + type: object + status: + properties: + enabled: + description: The administrative status of the Interface. + type: boolean + lag: + properties: + adminKey: + type: integer + systemIdMac: + type: string + type: object + lastChange: + description: Indicates when this Interface last changed state. + type: string + members: + description: List of members in this Interface. + items: + properties: + enabled: + description: The administrative status of this member. + type: boolean + interface: + description: The name of the interface in normalized format. + type: string + lastChange: + description: Indicates when this member last changed state. + type: string + neighbors: + description: List of discovered neighbors on this member. + items: + properties: + interface: + description: The name of a neighbor interface of this member in node specific format. + type: string + node: + description: The name of a neighbor node of this member in node specific format. + type: string + type: object + type: array + node: + description: The node on which the interface is configured. + type: string + nodeInterface: + description: Node specific interface name, for example "ethernet-1/1", "1/1/c1/1". + type: string + operationalState: + description: Indicates the current operational state of this member. + type: string + speed: + description: Indicates the operational speed of the member. + type: string + required: + - nodeInterface + type: object + type: array + operationalState: + description: Indicates the current operational state of the Interface. + type: string + speed: + description: Indicates the operational speed of the Interface in aggregate. + type: string + type: object + type: object +served: true +storage: true +subresources: + status: {} diff --git a/static/resources/25.8.2/interfacestates.interfaces.eda.nokia.com/v1alpha1.yaml b/static/resources/25.8.2/interfacestates.interfaces.eda.nokia.com/v1alpha1.yaml new file mode 100644 index 0000000..d7df070 --- /dev/null +++ b/static/resources/25.8.2/interfacestates.interfaces.eda.nokia.com/v1alpha1.yaml @@ -0,0 +1,86 @@ +name: v1alpha1 +schema: + openAPIV3Schema: + description: InterfaceState is the Schema for the interfaces API + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + properties: + enabled: + description: Enable or disable the interface. + type: boolean + lag: + properties: + adminKey: + type: integer + systemIdMac: + type: string + type: object + members: + description: List of members on which to monitor state for + items: + properties: + aggregateId: + description: LAG interface with which this interface is associated + type: string + enabled: + description: Enable or disable this member. + type: boolean + interface: + description: Normalized interface name + type: string + node: + description: Reference to the TopoNode on which this member resides + type: string + nodeInterface: + description: Node specific interface name, for example "ethernet-1/1", "1/1/c1/1" + type: string + operatingSystem: + description: The operating system of the TopoNode on which this member resides + type: string + version: + description: The version of the TopoNode on which this interface resides + type: string + required: + - interface + - node + - nodeInterface + - operatingSystem + - version + type: object + type: array + role: + default: edge + description: Role of this interface. This is used to calculate severity of alarms. [default="edge"] + enum: + - isl + - edge + - loopback + type: string + required: + - members + type: object + status: + description: InterfaceStateStatus defines the observed state of Interface + type: object + type: object +served: true +storage: true +subresources: + status: {} diff --git a/static/resources/25.8.2/ipallocationpools.core.eda.nokia.com/v1.yaml b/static/resources/25.8.2/ipallocationpools.core.eda.nokia.com/v1.yaml new file mode 100644 index 0000000..67e797f --- /dev/null +++ b/static/resources/25.8.2/ipallocationpools.core.eda.nokia.com/v1.yaml @@ -0,0 +1,90 @@ +name: v1 +schema: + openAPIV3Schema: + description: IPAllocationPool is the Schema for the ipallocationpools API + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + description: |- + IPAllocationPool is a generic IP allocation pool supporting allocation of IPv4 and/or IPv6 addresses from a set of segments. + It is different from IPInSubnetAllocationPool in that it returns a single unzoned IP address, i.e. an IP address without a subnet. For example a 10.1.1.0/24 segment could return 10.1.1.1. + Consult application documentation to know which pool type to use for a given use case. + properties: + publishAllocations: + description: If true, allocations in segments will be published to EDB, available to query via EQL and trigger state applications off of. + type: boolean + segments: + description: List of segments containing IPv4 or IPv6 addresses to allocate. + items: + properties: + allocateBroadcastAddress: + description: Permit the allocation of the broadcast address. + type: boolean + allocateNetworkAddress: + description: Permit the allocation of the network address. + type: boolean + allocations: + description: List of reservations to exclude from allocations from this segment. + items: + properties: + name: + description: Name of this allocation. + type: string + value: + description: Allocation to reserve. + type: string + required: + - name + - value + type: object + type: array + reservations: + description: List of ranges to exclude from allocations from this segment. + items: + properties: + end: + description: Value to reserve to. + type: string + start: + description: Value to start reserving. + type: string + required: + - end + - start + type: object + type: array + subnet: + description: IPv4 or IPv6 subnet, e.g. 10.1.1.0/24. + type: string + required: + - subnet + type: object + minItems: 1 + type: array + required: + - segments + type: object + status: + description: IPAllocationPoolStatus defines the observed state of IPAllocationPool + type: object + type: object +served: true +storage: true +subresources: + status: {} diff --git a/static/resources/25.8.2/ipinsubnetallocationpools.core.eda.nokia.com/v1.yaml b/static/resources/25.8.2/ipinsubnetallocationpools.core.eda.nokia.com/v1.yaml new file mode 100644 index 0000000..74ab7fc --- /dev/null +++ b/static/resources/25.8.2/ipinsubnetallocationpools.core.eda.nokia.com/v1.yaml @@ -0,0 +1,90 @@ +name: v1 +schema: + openAPIV3Schema: + description: IPInSubnetAllocationPool is the Schema for the ipinsubnetallocationpools API + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + description: |- + IPInSubnetAllocationPool is a generic IP allocation pool supporting allocation of IPv4 and/or IPv6 addresses from a set of segments. + It is different from IPAllocationPool in that it returns a single zoned IP address, i.e. an IP address with a subnet. For example a 10.1.1.0/24 segment could return 10.1.1.1/24. + Consult application documentation to know which pool type to use for a given use case. + properties: + publishAllocations: + description: If true, allocations in segments will be published to EDB, available to query via EQL and trigger state applications off of. + type: boolean + segments: + description: List of segments containing IPv4 or IPv6 addresses to allocate. + items: + properties: + allocateBroadcastAddress: + description: Permit the allocation of the broadcast address. + type: boolean + allocateNetworkAddress: + description: Permit the allocation of the network address. + type: boolean + allocations: + description: List of reservations to exclude from allocations from this segment. + items: + properties: + name: + description: Name of this allocation. + type: string + value: + description: Allocation to reserve. + type: string + required: + - name + - value + type: object + type: array + reservations: + description: List of ranges to exclude from allocations from this segment. + items: + properties: + end: + description: Value to reserve to. + type: string + start: + description: Value to start reserving. + type: string + required: + - end + - start + type: object + type: array + subnet: + description: IPv4 or IPv6 subnet, e.g. 10.1.1.0/24. + type: string + required: + - subnet + type: object + minItems: 1 + type: array + required: + - segments + type: object + status: + description: IPInSubnetAllocationPoolStatus defines the observed state of IPInSubnetAllocationPool + type: object + type: object +served: true +storage: true +subresources: + status: {} diff --git a/static/resources/25.8.2/irbinterfaces.services.eda.nokia.com/v1.yaml b/static/resources/25.8.2/irbinterfaces.services.eda.nokia.com/v1.yaml new file mode 100644 index 0000000..b4bc794 --- /dev/null +++ b/static/resources/25.8.2/irbinterfaces.services.eda.nokia.com/v1.yaml @@ -0,0 +1,443 @@ +additionalPrinterColumns: + - jsonPath: .spec.ipMTU + name: MTU + type: string + - jsonPath: .status.operationalState + name: OperationalState + type: string + - jsonPath: .status.lastChange + name: LastChange + type: string +name: v1 +schema: + openAPIV3Schema: + description: IRBInterface is the Schema for the irbinterfaces API + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + description: The IRBInterface enables the configuration and management of Layer 3 interfaces associated with a BridgeDomain. This resource allows for the specification of various parameters, including IP MTU, learning of unsolicited ARPs, IPv4 and IPv6 addresses, and unnumbered interface settings. It also supports advanced features such as BFD configuration, Virtual IP discovery, and ARP/ND-related settings like Proxy ARP/ND and EVPN route advertisement. + properties: + anycastGatewayMAC: + description: The gateway MAC to use on the anycast address, if left empty the node will automatically assign one. + type: string + arpTimeout: + default: 14400 + description: Duration of time that dynamic ARP entries remain in the ARP cache before they expire. + format: int32 + type: integer + bfd: + description: Enable BFD on the IRBInterface. + properties: + desiredMinTransmitInt: + default: 1000000 + description: The minimum interval in microseconds between transmission of BFD control packets. + maximum: 100000000 + minimum: 10000 + type: integer + detectionMultiplier: + default: 3 + description: The number of packets that must be missed to declare this session as down. + maximum: 20 + minimum: 3 + type: integer + enabled: + default: false + description: Enables Biforward Detection. + type: boolean + minEchoReceiveInterval: + default: 0 + description: The minimum interval between echo packets the local node can receive. + maximum: 100000000 + minimum: 0 + type: integer + requiredMinReceive: + default: 1000000 + description: The minimum interval in microseconds between received BFD control packets that this system should support. + maximum: 100000000 + minimum: 10000 + type: integer + ttl: + description: Sets custom IP TTL or Hop Limit for multi-hop BFD sessions packets. Not appllicable to single-hop BFD sessions. + maximum: 255 + minimum: 2 + type: integer + required: + - enabled + type: object + bridgeDomain: + description: Reference to a BridgeDomain. + type: string + description: + description: The description of the IRBInterface. + type: string + egress: + description: Manages actions on traffic at Egress. + properties: + filters: + description: List of Filter references to use at egress. + items: + type: string + type: array + qosPolicy: + description: List of QoS Egress policy references to use at egress. + items: + type: string + type: array + type: object + evpnRouteAdvertisementType: + description: Controls the type of ARP/ND entries to advertise. + properties: + arpDynamic: + default: false + description: Advertise dynamic ARP entries. + type: boolean + arpStatic: + default: false + description: Advertise static ARP entries. + type: boolean + ndDynamic: + default: false + description: Advertise dynamic ND entries. + type: boolean + ndStatic: + default: false + description: Advertise static ND entries. + type: boolean + type: object + hostRoutePopulate: + description: Configures host route population based on ARP entries. + properties: + dynamic: + default: true + description: Create host routes out of dynamic ARP entries. + type: boolean + evpn: + default: false + description: Create host routes out of EVPN learned ARP entries. + type: boolean + static: + default: true + description: Create host routes out of static ARP entries. + type: boolean + type: object + ingress: + description: Manages actions on traffic at Ingress. + properties: + filters: + description: List of Filter references to use at ingress. + items: + type: string + type: array + qosPolicy: + description: List of QoS Ingress policy references to use at ingress. + items: + type: string + type: array + type: object + ipAddresses: + items: + properties: + ipv4Address: + description: IPv4 address in IP/mask form, e.g., 192.168.0.1/24. + properties: + ipPrefix: + description: Address and mask to use + type: string + primary: + description: Indicates which address to use as primary for broadcast + type: boolean + required: + - ipPrefix + type: object + ipv6Address: + description: IPv6 address in IP/mask form, e.g., fc00::1/120. + properties: + ipPrefix: + description: Address and mask to use + type: string + primary: + description: Indicates which address to use as primary for broadcast + type: boolean + required: + - ipPrefix + type: object + node: + description: Reference to a TopoNode resource, if not specified the IP address will be assigned to all nodes on which the IRB is deployed. If specified the IP address will be assigned to the specified node. + type: string + type: object + type: array + ipMTU: + default: 1500 + description: IP MTU for the IRBInterface [default=1500]. + maximum: 9486 + minimum: 1280 + type: integer + ipv4Parameters: + properties: + directedBroadcast: + description: Allow receiving and forwarding of directed broadcast packets. Enabled when set to true. + type: boolean + type: object + ipv6RouterAdvertisement: + properties: + currentHopLimit: + default: 64 + description: The current hop limit to advertise in the router advertisement messages. + format: int32 + maximum: 255 + minimum: 0 + type: integer + enabled: + default: false + description: Enable or disable IPv6 router advertisements. + type: boolean + ipMTU: + description: The IP MTU to advertise in the router advertisement messages. + format: int32 + maximum: 9486 + minimum: 1280 + type: integer + managedConfigurationFlag: + default: false + description: Enable DHCPv6 for address configuration (M-bit). + type: boolean + maxAdvertisementInterval: + default: 600 + description: Maximum time between router advertisements (in seconds). + format: int32 + maximum: 1800 + minimum: 4 + type: integer + minAdvertisementInterval: + default: 200 + description: Minimum time between router advertisements (in seconds). + format: int32 + maximum: 1350 + minimum: 3 + type: integer + otherConfigurationFlag: + default: false + description: Enable DHCPv6 for other configuration (O-bit). + type: boolean + prefixes: + description: IPv6 prefixes to advertise in router advertisements. + items: + description: IPv6Prefix defines the configuration for an IPv6 prefix advertisement. + properties: + autonomousFlag: + default: true + description: When this is set in the prefix information option hosts can use the prefix for stateless address autoconfiguration (SLAAC). + type: boolean + onLinkFlag: + default: true + description: When this is set in the prefix information option hosts can use the prefix for on-link determination. + type: boolean + preferredLifetime: + default: 604800 + description: The length of time in seconds (relative to the time the packet is sent) that addresses generated from the prefix via stateless address autoconfiguration remain preferred. + format: int32 + maximum: 4294967295 + minimum: 0 + type: integer + prefix: + description: An IPv6 global unicast address prefix. + type: string + validLifetime: + default: 2592000 + description: The length of time in seconds (relative to the time the packet is sent) that the prefix is valid for the purpose of on-link determination. + format: int32 + maximum: 4294967295 + minimum: 0 + type: integer + required: + - prefix + type: object + type: array + reachableTime: + default: 0 + description: Time in milliseconds for Neighbor Unreachability Detection. + format: int32 + maximum: 3600000 + minimum: 0 + type: integer + retransmitTime: + default: 0 + description: Time in milliseconds between retransmitted NS messages. + format: int32 + maximum: 1800000 + minimum: 0 + type: integer + routerLifetime: + default: 1800 + description: Router lifetime in seconds for default gateway. + format: int32 + maximum: 9000 + minimum: 0 + type: integer + required: + - currentHopLimit + - enabled + - managedConfigurationFlag + - maxAdvertisementInterval + - minAdvertisementInterval + - otherConfigurationFlag + - retransmitTime + - routerLifetime + type: object + l3ProxyARPND: + description: L3 Proxy ARP and ND configuration. + properties: + proxyARP: + default: false + description: Select whether Proxy ARP should be enabled. + type: boolean + proxyND: + default: false + description: Select whether Proxy ND should be enabled. + type: boolean + type: object + learnUnsolicited: + default: NONE + description: Enable or disable learning of unsolicited ARPs. + enum: + - BOTH + - GLOBAL + - LINK-LOCAL + - NONE + type: string + router: + description: Reference to a Router. + type: string + unnumbered: + description: Enables the use of unnumbered interfaces on the IRBInterface. If IPv6 is specified, no IP address are configured on the sub-interface and only the link local address will be used. If any IP addresses are specified for either IPv4 or IPv6 that will take precedence and IPs will be assigned to the interfaces.(Deprecated, Use IPv6RouterAdvertisement) + enum: + - IPV6 + type: string + virtualIPDiscovery: + description: Configuration for Virtual IP discovery on the interface. + items: + properties: + address: + description: Virtual IP Address. + type: string + allowedMAC: + description: List of allowed MAC addresses for a discovered virtual IP address. + items: + type: string + type: array + bridgeInterfaceToProbe: + description: List of BridgeInterfaces on the associated MAC-VRF to which the ARP probes are sent. If left blank, the probes are sent on all BridgeInterfaces associated with the BridgeDomain. + items: + type: string + type: array + probeInterval: + default: 0 + description: ARP probe interval in seconds. + maximum: 86400 + minimum: 0 + type: integer + vlanToProbe: + description: List of VLANs on the associated BridgeDomain to which the ARP probes are sent. If left blank, the probes are sent on all VLANs associated with the BridgeDomain. + items: + type: string + type: array + required: + - address + type: object + type: array + required: + - bridgeDomain + - router + type: object + status: + description: IRBInterfaceStatus defines the observed state of IRBInterface + properties: + health: + description: Indicates the health score of the VNET. + type: integer + healthScoreReason: + description: Explains the reason for the health score. + type: string + interfaces: + description: Details of the interfaces associated with the IRB. + items: + properties: + enabled: + description: Administrative status of the SubInterface. + type: boolean + ipv4Addresses: + description: List of IPv4 addresses + items: + properties: + ipPrefix: + description: Address and mask to use + type: string + primary: + description: Indicates which address to use as primary for broadcast + type: boolean + required: + - ipPrefix + type: object + type: array + ipv6Addresses: + description: List of IPv6 addresses + items: + properties: + ipPrefix: + description: Address and mask to use + type: string + primary: + description: Indicates which address to use as primary for broadcast + type: boolean + required: + - ipPrefix + type: object + type: array + lastChange: + description: Timestamp of when this SubInterface last changed state. + type: string + node: + description: Reference to Node object. + type: string + nodeInterface: + description: Node specific interface name. + type: string + operatingSystem: + description: Operating System of the Node. + type: string + operationalState: + description: Current operational state of the SubInterface. + type: string + required: + - node + - nodeInterface + type: object + type: array + lastChange: + description: Timestamp of the last state change. + type: string + operationalState: + description: Operational state of the VNET. + type: string + type: object + type: object +served: true +storage: true +subresources: + status: {} diff --git a/static/resources/25.8.2/irbinterfaces.services.eda.nokia.com/v1alpha1.yaml b/static/resources/25.8.2/irbinterfaces.services.eda.nokia.com/v1alpha1.yaml new file mode 100644 index 0000000..7b7139e --- /dev/null +++ b/static/resources/25.8.2/irbinterfaces.services.eda.nokia.com/v1alpha1.yaml @@ -0,0 +1,445 @@ +additionalPrinterColumns: + - jsonPath: .spec.ipMTU + name: MTU + type: string + - jsonPath: .status.operationalState + name: OperationalState + type: string + - jsonPath: .status.lastChange + name: LastChange + type: string +deprecated: true +deprecationWarning: This version is deprecated and will no longer be supported in the next version. +name: v1alpha1 +schema: + openAPIV3Schema: + description: IRBInterface is the Schema for the irbinterfaces API + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + description: The IRBInterface enables the configuration and management of Layer 3 interfaces associated with a BridgeDomain. This resource allows for the specification of various parameters, including IP MTU, learning of unsolicited ARPs, IPv4 and IPv6 addresses, and unnumbered interface settings. It also supports advanced features such as BFD configuration, Virtual IP discovery, and ARP/ND-related settings like Proxy ARP/ND and EVPN route advertisement. + properties: + anycastGatewayMAC: + description: The gateway MAC to use on the anycast address, if left empty the node will automatically assign one. + type: string + arpTimeout: + default: 14400 + description: Duration of time that dynamic ARP entries remain in the ARP cache before they expire. + format: int32 + type: integer + bfd: + description: Enable BFD on the IRBInterface. + properties: + desiredMinTransmitInt: + default: 1000000 + description: The minimum interval in microseconds between transmission of BFD control packets. + maximum: 100000000 + minimum: 10000 + type: integer + detectionMultiplier: + default: 3 + description: The number of packets that must be missed to declare this session as down. + maximum: 20 + minimum: 3 + type: integer + enabled: + default: false + description: Enables Biforward Detection. + type: boolean + minEchoReceiveInterval: + default: 0 + description: The minimum interval between echo packets the local node can receive. + maximum: 100000000 + minimum: 0 + type: integer + requiredMinReceive: + default: 1000000 + description: The minimum interval in microseconds between received BFD control packets that this system should support. + maximum: 100000000 + minimum: 10000 + type: integer + ttl: + description: Sets custom IP TTL or Hop Limit for multi-hop BFD sessions packets. Not appllicable to single-hop BFD sessions. + maximum: 255 + minimum: 2 + type: integer + required: + - enabled + type: object + bridgeDomain: + description: Reference to a BridgeDomain. + type: string + description: + description: The description of the IRBInterface. + type: string + egress: + description: Manages actions on traffic at Egress. + properties: + filters: + description: List of Filter references to use at egress. + items: + type: string + type: array + qosPolicy: + description: List of QoS Egress policy references to use at egress. + items: + type: string + type: array + type: object + evpnRouteAdvertisementType: + description: Controls the type of ARP/ND entries to advertise. + properties: + arpDynamic: + default: false + description: Advertise dynamic ARP entries. + type: boolean + arpStatic: + default: false + description: Advertise static ARP entries. + type: boolean + ndDynamic: + default: false + description: Advertise dynamic ND entries. + type: boolean + ndStatic: + default: false + description: Advertise static ND entries. + type: boolean + type: object + hostRoutePopulate: + description: Configures host route population based on ARP entries. + properties: + dynamic: + default: true + description: Create host routes out of dynamic ARP entries. + type: boolean + evpn: + default: false + description: Create host routes out of EVPN learned ARP entries. + type: boolean + static: + default: true + description: Create host routes out of static ARP entries. + type: boolean + type: object + ingress: + description: Manages actions on traffic at Ingress. + properties: + filters: + description: List of Filter references to use at ingress. + items: + type: string + type: array + qosPolicy: + description: List of QoS Ingress policy references to use at ingress. + items: + type: string + type: array + type: object + ipAddresses: + items: + properties: + ipv4Address: + description: IPv4 address in IP/mask form, e.g., 192.168.0.1/24. + properties: + ipPrefix: + description: Address and mask to use + type: string + primary: + description: Indicates which address to use as primary for broadcast + type: boolean + required: + - ipPrefix + type: object + ipv6Address: + description: IPv6 address in IP/mask form, e.g., fc00::1/120. + properties: + ipPrefix: + description: Address and mask to use + type: string + primary: + description: Indicates which address to use as primary for broadcast + type: boolean + required: + - ipPrefix + type: object + node: + description: Reference to a TopoNode resource, if not specified the IP address will be assigned to all nodes on which the IRB is deployed. If specified the IP address will be assigned to the specified node. + type: string + type: object + type: array + ipMTU: + default: 1500 + description: IP MTU for the IRBInterface [default=1500]. + maximum: 9486 + minimum: 1280 + type: integer + ipv4Parameters: + properties: + directedBroadcast: + description: Allow receiving and forwarding of directed broadcast packets. Enabled when set to true. + type: boolean + type: object + ipv6RouterAdvertisement: + properties: + currentHopLimit: + default: 64 + description: The current hop limit to advertise in the router advertisement messages. + format: int32 + maximum: 255 + minimum: 0 + type: integer + enabled: + default: false + description: Enable or disable IPv6 router advertisements. + type: boolean + ipMTU: + description: The IP MTU to advertise in the router advertisement messages. + format: int32 + maximum: 9486 + minimum: 1280 + type: integer + managedConfigurationFlag: + default: false + description: Enable DHCPv6 for address configuration (M-bit). + type: boolean + maxAdvertisementInterval: + default: 600 + description: Maximum time between router advertisements (in seconds). + format: int32 + maximum: 1800 + minimum: 4 + type: integer + minAdvertisementInterval: + default: 200 + description: Minimum time between router advertisements (in seconds). + format: int32 + maximum: 1350 + minimum: 3 + type: integer + otherConfigurationFlag: + default: false + description: Enable DHCPv6 for other configuration (O-bit). + type: boolean + prefixes: + description: IPv6 prefixes to advertise in router advertisements. + items: + description: IPv6Prefix defines the configuration for an IPv6 prefix advertisement. + properties: + autonomousFlag: + default: true + description: When this is set in the prefix information option hosts can use the prefix for stateless address autoconfiguration (SLAAC). + type: boolean + onLinkFlag: + default: true + description: When this is set in the prefix information option hosts can use the prefix for on-link determination. + type: boolean + preferredLifetime: + default: 604800 + description: The length of time in seconds (relative to the time the packet is sent) that addresses generated from the prefix via stateless address autoconfiguration remain preferred. + format: int32 + maximum: 4294967295 + minimum: 0 + type: integer + prefix: + description: An IPv6 global unicast address prefix. + type: string + validLifetime: + default: 2592000 + description: The length of time in seconds (relative to the time the packet is sent) that the prefix is valid for the purpose of on-link determination. + format: int32 + maximum: 4294967295 + minimum: 0 + type: integer + required: + - prefix + type: object + type: array + reachableTime: + default: 0 + description: Time in milliseconds for Neighbor Unreachability Detection. + format: int32 + maximum: 3600000 + minimum: 0 + type: integer + retransmitTime: + default: 0 + description: Time in milliseconds between retransmitted NS messages. + format: int32 + maximum: 1800000 + minimum: 0 + type: integer + routerLifetime: + default: 1800 + description: Router lifetime in seconds for default gateway. + format: int32 + maximum: 9000 + minimum: 0 + type: integer + required: + - currentHopLimit + - enabled + - managedConfigurationFlag + - maxAdvertisementInterval + - minAdvertisementInterval + - otherConfigurationFlag + - retransmitTime + - routerLifetime + type: object + l3ProxyARPND: + description: L3 Proxy ARP and ND configuration. + properties: + proxyARP: + default: false + description: Select whether Proxy ARP should be enabled. + type: boolean + proxyND: + default: false + description: Select whether Proxy ND should be enabled. + type: boolean + type: object + learnUnsolicited: + default: NONE + description: Enable or disable learning of unsolicited ARPs. + enum: + - BOTH + - GLOBAL + - LINK-LOCAL + - NONE + type: string + router: + description: Reference to a Router. + type: string + unnumbered: + description: Enables the use of unnumbered interfaces on the IRBInterface. If IPv6 is specified, no IP address are configured on the sub-interface and only the link local address will be used. If any IP addresses are specified for either IPv4 or IPv6 that will take precedence and IPs will be assigned to the interfaces.(Deprecated, Use IPv6RouterAdvertisement) + enum: + - IPV6 + type: string + virtualIPDiscovery: + description: Configuration for Virtual IP discovery on the interface. + items: + properties: + address: + description: Virtual IP Address. + type: string + allowedMAC: + description: List of allowed MAC addresses for a discovered virtual IP address. + items: + type: string + type: array + bridgeInterfaceToProbe: + description: List of BridgeInterfaces on the associated MAC-VRF to which the ARP probes are sent. If left blank, the probes are sent on all BridgeInterfaces associated with the BridgeDomain. + items: + type: string + type: array + probeInterval: + default: 0 + description: ARP probe interval in seconds. + maximum: 86400 + minimum: 0 + type: integer + vlanToProbe: + description: List of VLANs on the associated BridgeDomain to which the ARP probes are sent. If left blank, the probes are sent on all VLANs associated with the BridgeDomain. + items: + type: string + type: array + required: + - address + type: object + type: array + required: + - bridgeDomain + - router + type: object + status: + description: IRBInterfaceStatus defines the observed state of IRBInterface + properties: + health: + description: Indicates the health score of the VNET. + type: integer + healthScoreReason: + description: Explains the reason for the health score. + type: string + interfaces: + description: Details of the interfaces associated with the IRB. + items: + properties: + enabled: + description: Administrative status of the SubInterface. + type: boolean + ipv4Addresses: + description: List of IPv4 addresses + items: + properties: + ipPrefix: + description: Address and mask to use + type: string + primary: + description: Indicates which address to use as primary for broadcast + type: boolean + required: + - ipPrefix + type: object + type: array + ipv6Addresses: + description: List of IPv6 addresses + items: + properties: + ipPrefix: + description: Address and mask to use + type: string + primary: + description: Indicates which address to use as primary for broadcast + type: boolean + required: + - ipPrefix + type: object + type: array + lastChange: + description: Timestamp of when this SubInterface last changed state. + type: string + node: + description: Reference to Node object. + type: string + nodeInterface: + description: Node specific interface name. + type: string + operatingSystem: + description: Operating System of the Node. + type: string + operationalState: + description: Current operational state of the SubInterface. + type: string + required: + - node + - nodeInterface + type: object + type: array + lastChange: + description: Timestamp of the last state change. + type: string + operationalState: + description: Operational state of the VNET. + type: string + type: object + type: object +served: true +storage: false +subresources: + status: {} diff --git a/static/resources/25.8.2/irbinterfacestates.services.eda.nokia.com/v1.yaml b/static/resources/25.8.2/irbinterfacestates.services.eda.nokia.com/v1.yaml new file mode 100644 index 0000000..98c4785 --- /dev/null +++ b/static/resources/25.8.2/irbinterfacestates.services.eda.nokia.com/v1.yaml @@ -0,0 +1,88 @@ +name: v1 +schema: + openAPIV3Schema: + description: IRBInterfaceState is the Schema for the irbinterfacestates API + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + description: IRBInterfaceStateSpec defines the desired state of IRBInterfaceState + properties: + bridgeDomain: + description: Router the IRBInterface is attached to + type: string + interfaces: + items: + properties: + ipv4Addresses: + description: List of IPv4 addresses + items: + properties: + ipPrefix: + description: Address and mask to use + type: string + primary: + description: Indicates which address to use as primary for broadcast + type: boolean + required: + - ipPrefix + type: object + type: array + ipv6Addresses: + description: List of IPv6 addresses + items: + properties: + ipPrefix: + description: Address and mask to use + type: string + primary: + description: Indicates which address to use as primary for broadcast + type: boolean + required: + - ipPrefix + type: object + type: array + node: + description: Reference to Node object. + type: string + nodeInterface: + description: Node specific interface name. + type: string + operatingSystem: + description: Operating System of the Node. + type: string + required: + - node + - nodeInterface + type: object + type: array + router: + description: Router the IRBInterface is attached to + type: string + required: + - bridgeDomain + - router + type: object + status: + description: IRBInterfaceStateStatus defines the observed state of IRBInterfaceState + type: object + type: object +served: true +storage: true +subresources: + status: {} diff --git a/static/resources/25.8.2/irbinterfacestates.services.eda.nokia.com/v1alpha1.yaml b/static/resources/25.8.2/irbinterfacestates.services.eda.nokia.com/v1alpha1.yaml new file mode 100644 index 0000000..2d5e7e0 --- /dev/null +++ b/static/resources/25.8.2/irbinterfacestates.services.eda.nokia.com/v1alpha1.yaml @@ -0,0 +1,90 @@ +deprecated: true +deprecationWarning: This version is deprecated and will no longer be supported in the next version. +name: v1alpha1 +schema: + openAPIV3Schema: + description: IRBInterfaceState is the Schema for the irbinterfacestates API + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + description: IRBInterfaceStateSpec defines the desired state of IRBInterfaceState + properties: + bridgeDomain: + description: Router the IRBInterface is attached to + type: string + interfaces: + items: + properties: + ipv4Addresses: + description: List of IPv4 addresses + items: + properties: + ipPrefix: + description: Address and mask to use + type: string + primary: + description: Indicates which address to use as primary for broadcast + type: boolean + required: + - ipPrefix + type: object + type: array + ipv6Addresses: + description: List of IPv6 addresses + items: + properties: + ipPrefix: + description: Address and mask to use + type: string + primary: + description: Indicates which address to use as primary for broadcast + type: boolean + required: + - ipPrefix + type: object + type: array + node: + description: Reference to Node object. + type: string + nodeInterface: + description: Node specific interface name. + type: string + operatingSystem: + description: Operating System of the Node. + type: string + required: + - node + - nodeInterface + type: object + type: array + router: + description: Router the IRBInterface is attached to + type: string + required: + - bridgeDomain + - router + type: object + status: + description: IRBInterfaceStateStatus defines the observed state of IRBInterfaceState + type: object + type: object +served: true +storage: false +subresources: + status: {} diff --git a/static/resources/25.8.2/islpings.fabrics.eda.nokia.com/v1alpha1.yaml b/static/resources/25.8.2/islpings.fabrics.eda.nokia.com/v1alpha1.yaml new file mode 100644 index 0000000..1b0c3a1 --- /dev/null +++ b/static/resources/25.8.2/islpings.fabrics.eda.nokia.com/v1alpha1.yaml @@ -0,0 +1,122 @@ +name: v1alpha1 +schema: + openAPIV3Schema: + description: IslPing is the Schema for the islpings API + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + description: |- + This workflow is used to ping ISLs (Inter-Switch Links) to verify connectivity within a Fabric. + It accepts a list of fabrics, ISLs, or selectors for both to match ISLs, + and returns the results of the pings, including the status of each ISL. + properties: + count: + default: 1 + description: Count is the number of pings to send. + type: integer + islSelectors: + description: |- + Inter-Switch Link Selectors is a list of selectors to execute ISL pings for. + This is a list of label expressions, e.g. ["eda.nokia.com/role=leaf", "eda.nokia.com/region=us-west"]. + items: + type: string + type: array + isls: + description: Inter-Switch Links is a list of named ISL resources to execute ISL pings for. + items: + type: string + type: array + timeoutSeconds: + default: 5 + description: TimeoutSeconds is the timeout for the ping in seconds. + type: integer + type: object + status: + description: The result of the ISL ping + properties: + details: + description: |- + Details contains the results of the pings performed for each ISL. + Each entry in the list corresponds to an ISL that was pinged. + items: + properties: + details: + description: Details of the ping result, if available. + properties: + averageTimeNanoseconds: + description: Average time taken for a ping reply. + format: int64 + type: integer + maxTimeNanoseconds: + description: Maximum time taken for a ping reply. + format: int64 + type: integer + minTimeNanoseconds: + description: Minimum time taken for a ping reply. + format: int64 + type: integer + received: + description: Number of pings received. + type: integer + sent: + description: Number of pings sent. + type: integer + stdDevNanoseconds: + description: Standard deviation of time taken for all pings. + format: int64 + type: integer + totalTimeNanoseconds: + description: Total time taken for all pings. + format: int64 + type: integer + required: + - received + - sent + type: object + error: + description: Error message, if the ping failed. + type: string + name: + description: Name of the ping result. + type: string + success: + description: Indicates if the ping was successful. + type: boolean + required: + - success + type: object + type: array + result: + description: |- + Result is the overall result of the ping operation. + It can be one of the following values: + - "Success": All pings were successful. + - "Failed": No pings were successful. + - "PartialSuccess": Some pings were successful, but not all. + enum: + - Success + - Failed + - PartialSuccess + type: string + type: object + type: object +served: true +storage: true +subresources: + status: {} diff --git a/static/resources/25.8.2/isls.fabrics.eda.nokia.com/v1alpha1.yaml b/static/resources/25.8.2/isls.fabrics.eda.nokia.com/v1alpha1.yaml new file mode 100644 index 0000000..1b7f516 --- /dev/null +++ b/static/resources/25.8.2/isls.fabrics.eda.nokia.com/v1alpha1.yaml @@ -0,0 +1,212 @@ +additionalPrinterColumns: + - jsonPath: .status.lastChange + name: Last Change + type: date + - jsonPath: .status.operationalState + name: Operational State + type: string +name: v1alpha1 +schema: + openAPIV3Schema: + description: ISL is the Schema for the isls API + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + description: The ISL enables the configuration and management of direct links between Nodes. This resource allows for specifying IPv4 and IPv6 allocation pools, enabling BFD for fast failure detection, and configuring VLAN IDs for the ISL. It also supports BGP peering between the endpoints, with options for setting autonomous systems, AFI/SAFI configurations, and import/export routing policies. + properties: + bfd: + description: Enable or disable BFD on the ISL. [default=false] + properties: + desiredMinTransmitInt: + default: 1000000 + description: The minimum interval in microseconds between transmission of BFD control packets. + maximum: 100000000 + minimum: 10000 + type: integer + detectionMultiplier: + default: 3 + description: The number of packets that must be missed to declare this session as down. + maximum: 20 + minimum: 3 + type: integer + enabled: + default: false + description: Enable Biforward Detection. + type: boolean + minEchoReceiveInterval: + default: 1000000 + description: The minimum interval between echo packets the local node can receive in microseconds. + maximum: 100000000 + minimum: 0 + type: integer + requiredMinReceive: + default: 1000000 + description: The minimum interval in microseconds between received BFD control packets that this system should support. + maximum: 100000000 + minimum: 10000 + type: integer + ttl: + description: Sets custom IP TTL or Hop Limit for multi-hop BFD sessions packets. Not appllicable to single-hop BFD sessions. + maximum: 255 + minimum: 2 + type: integer + type: object + bgp: + properties: + afiSAFI: + description: 'Which AFI and SAFI to advertise on the BGP peering session. Options: ipv4unicast, ipv6unicast, l2vpnevpn' + items: + type: string + type: array + bgpGroup: + description: Reference to a DefaultBgpGroup. + type: string + enabled: + default: false + description: Enable or disable BGP peering between the two endpoints of the ISL. [default=false] + type: boolean + exportPolicy: + description: Reference to a RoutingPolicy to use when evaluating route exports from the DefaultRouter. + items: + type: string + type: array + importPolicy: + description: Reference to a RoutingPolicy to use when evaluating route imports into the DefaultRouter. + items: + type: string + type: array + keychain: + description: Keychain to be used for authentication + type: string + localInterfaceAS: + description: The Autonomous System to configure on the Local Interface. + format: int32 + maximum: 4294967295 + minimum: 0 + type: integer + remoteInterfaceAS: + description: The Autonomous System to configure on the Remote Interface. + format: int32 + maximum: 4294967295 + minimum: 0 + type: integer + required: + - enabled + - localInterfaceAS + - remoteInterfaceAS + type: object + ipMTU: + description: Sets the IP MTU for the local and remote Interfaces + maximum: 9486 + minimum: 1280 + type: integer + localDefaultRouter: + description: Reference to the DefautlRouter associated with the local Interface in which the ISL will be provisioned. + type: string + localInterface: + description: Reference to an Interface. + type: string + poolIPV4: + description: Reference to an IPv4 allocation pool to use for ISL subnet allocations. + type: string + poolIPV6: + description: Reference to an IPv6 allocation pool to use for ISL subnet allocations. + type: string + qos: + properties: + egressPolicy: + type: string + ingressPolicy: + type: string + type: object + remoteDefaultRouter: + description: Reference to the DefautlRouter associated with the remote Interface in which the ISL will be provisioned. + type: string + remoteInterface: + description: Reference to an Interface + type: string + unnumbered: + description: Enables the use of unnumbered interfaces on the ISL. For IPv6, no IP address are configured on the sub-interface and only the link local address will be used. If any allocation pool is specified for IPv6 that will take precedence and IPs will be assigned to the interfaces. When using eBGP for an underlay protocol, the DefaultInterfaces which are a part of the ISL will be added to the BGP dynamic neighbor list. + enum: + - IPV6 + type: string + vlanID: + description: Single VLAN tag value between 1-4094. + maximum: 4094 + minimum: 1 + type: integer + required: + - localDefaultRouter + - localInterface + - remoteDefaultRouter + - remoteInterface + type: object + status: + description: ISLStatus defines the observed state of ISL + properties: + health: + description: Indicates the health score of the ISL + type: integer + healthScoreReason: + description: Indicates the reason for the health score + type: string + lastChange: + description: The time when the state of the resource last changed + type: string + localInterface: + description: Local Interface + properties: + IPv4Address: + description: Local Interface IPv4 address + type: string + IPv6Address: + description: Local Interface IPv4 address + type: string + defaultInterface: + description: Reference to the DefaulInterface assocaited with the local interface + type: string + node: + description: Reference to the TopoNode on which the local interface is configured + type: string + type: object + operationalState: + description: Operational state of the ISL + type: string + remoteInterface: + description: Remote Interface + properties: + IPv4Address: + description: Remote Interface IPv4 address + type: string + IPv6Address: + description: Remote Interface IPv6 address + type: string + defaultInterface: + description: Reference to the DefaulInterface assocaited with the remote interface + type: string + node: + description: Reference to the TopoNode on which the remote interface is configured + type: string + type: object + type: object + type: object +served: true +storage: true +subresources: + status: {} diff --git a/static/resources/25.8.2/islstates.fabrics.eda.nokia.com/v1alpha1.yaml b/static/resources/25.8.2/islstates.fabrics.eda.nokia.com/v1alpha1.yaml new file mode 100644 index 0000000..567cb49 --- /dev/null +++ b/static/resources/25.8.2/islstates.fabrics.eda.nokia.com/v1alpha1.yaml @@ -0,0 +1,106 @@ +name: v1alpha1 +schema: + openAPIV3Schema: + description: ISLState is the Schema for the islstates API + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + description: ISLStateSpec defines the desired state of ISLState + properties: + localInterface: + properties: + BGPPeerIPV4: + description: Reference to the IPV4 BGPPeer created for the local peer + type: string + BGPPeerIPV6: + description: Reference to the IPV6 BGPPeer created for the local peer + type: string + IPv4Address: + description: Local Interface IPv4 address + type: string + IPv6Address: + description: Local Interface IPv4 address + type: string + defaultInterface: + description: Reference to the DefaultInterface configured on the local node + type: string + dynamicBGPPeerIPV6: + description: Reference to the dynamic IPV6 BGPPeer created for the local peer + type: string + node: + description: Reference to the TopoNode on which the local interface is configured + type: string + required: + - defaultInterface + type: object + poolIPV4Enabled: + description: Indicates if IPV4 pool is enabled on the isl interface + type: boolean + poolIPV6Enabled: + description: Indicates if IPV6 pool is enabled on the isl interface + type: boolean + protocols: + description: List of configured protocols on the BGP peer + items: + type: string + type: array + remoteInterface: + properties: + BGPPeerIPV4: + description: Reference to the IPV4 BGPPeer created for the remote peer + type: string + BGPPeerIPV6: + description: Reference to the IPV6 BGPPeer created for the remote peer + type: string + IPv4Address: + description: Remote Interface IPv4 address + type: string + IPv6Address: + description: Remote Interface IPv4 address + type: string + defaultInterface: + description: Reference to the DefaultInterface configured on the remote node + type: string + dynamicBGPPeerIPV6: + description: Reference to the dynamic IPV6 BGPPeer created for the remote peer + type: string + node: + description: Reference to the TopoNode on which the remote interface is configured + type: string + required: + - defaultInterface + type: object + unnumbered: + description: Indicates the dynamic peering type that is enabled on the isl interface. + type: string + required: + - localInterface + - poolIPV4Enabled + - poolIPV6Enabled + - protocols + - remoteInterface + type: object + status: + description: ISLStateStatus defines the observed state of ISLState + type: object + type: object +served: true +storage: true +subresources: + status: {} diff --git a/static/resources/25.8.2/keychaindeployments.security.eda.nokia.com/v1alpha1.yaml b/static/resources/25.8.2/keychaindeployments.security.eda.nokia.com/v1alpha1.yaml new file mode 100644 index 0000000..8c47ac9 --- /dev/null +++ b/static/resources/25.8.2/keychaindeployments.security.eda.nokia.com/v1alpha1.yaml @@ -0,0 +1,43 @@ +name: v1alpha1 +schema: + openAPIV3Schema: + description: KeychainDeployment is the Schema for the keychaindeployments API + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + description: KeychainDeploymentSpec defines the desired state of KeychainDeployment + properties: + keychain: + description: Reference to a Keychain + type: string + node: + description: Reference to a Node on which to push the BgpGroup + type: string + required: + - keychain + - node + type: object + status: + description: KeychainDeploymentStatus defines the observed state of KeychainDeployment + type: object + type: object +served: true +storage: true +subresources: + status: {} diff --git a/static/resources/25.8.2/keychains.security.eda.nokia.com/v1alpha1.yaml b/static/resources/25.8.2/keychains.security.eda.nokia.com/v1alpha1.yaml new file mode 100644 index 0000000..7cd16ba --- /dev/null +++ b/static/resources/25.8.2/keychains.security.eda.nokia.com/v1alpha1.yaml @@ -0,0 +1,48 @@ +name: v1alpha1 +schema: + openAPIV3Schema: + description: Keychain is the Schema for the keychains API + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + description: KeychainSpec defines the desired state of Keychain + properties: + key: + properties: + algorithm: + enum: + - MD5 + type: string + authenticationKey: + type: string + required: + - algorithm + - authenticationKey + type: object + required: + - key + type: object + status: + description: KeychainStatus defines the observed state of Keychain + type: object + type: object +served: true +storage: true +subresources: + status: {} diff --git a/static/resources/25.8.2/licenses.core.eda.nokia.com/v1.yaml b/static/resources/25.8.2/licenses.core.eda.nokia.com/v1.yaml new file mode 100644 index 0000000..7e7a041 --- /dev/null +++ b/static/resources/25.8.2/licenses.core.eda.nokia.com/v1.yaml @@ -0,0 +1,66 @@ +name: v1 +schema: + openAPIV3Schema: + description: License is the Schema for the licenses API + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + description: A License represents an application license providing functionality within EDA. A license providing the "base" feature must be provided/valid for transactions to be processed. + properties: + data: + description: The license key. This is a base64 encoded string. + type: string + enabled: + default: true + description: Indicates if this license is available for use. + type: boolean + required: + - data + type: object + status: + description: Status information for this license. + properties: + comment: + description: Any comment provided in the license. + type: string + expirationDate: + description: Date and time the license expires. + type: string + expired: + description: Indicates if the license has expired. + type: boolean + issuedDate: + description: Date and time the license was issued. + type: string + used: + description: Indicates if license has been used. + type: boolean + valid: + description: Indicates if the license is valid. + type: boolean + required: + - expired + - used + - valid + type: object + type: object +served: true +storage: true +subresources: + status: {} diff --git a/static/resources/25.8.2/lldpoverlays.topologies.eda.nokia.com/v1alpha1.yaml b/static/resources/25.8.2/lldpoverlays.topologies.eda.nokia.com/v1alpha1.yaml new file mode 100644 index 0000000..94f4813 --- /dev/null +++ b/static/resources/25.8.2/lldpoverlays.topologies.eda.nokia.com/v1alpha1.yaml @@ -0,0 +1,69 @@ +name: v1alpha1 +schema: + openAPIV3Schema: + description: LldpOverlay is the Schema for lldpoverlays + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + description: LldpOverlaySpec defines the desired state of lldp + properties: + enabled: + description: Enable or disable the generation of the status of this overlay + type: boolean + topology: + description: Reference to the topology that this overlay is extending. + properties: + group: + description: The group of the application which published the topology this overlay is extending. + type: string + name: + description: The name of the resource which published the topology this overlay is extending. + type: string + version: + description: The version of the application which published the topology this overlay is extending. + type: string + required: + - group + - name + - version + type: object + uiDescription: + description: A description of the overlay to expose in the UI + type: string + uiDescriptionKey: + description: The translation key for the description of the overlay to expose in the UI + type: string + uiName: + description: The name of the overlay to expose in the UI + type: string + uiNameKey: + description: The translation key for the name of the overlay to expose in the UI + type: string + required: + - enabled + - topology + type: object + status: + description: LldpOverlayStatus defines the observed state of LldpOverlay + type: object + type: object +served: true +storage: true +subresources: + status: {} diff --git a/static/resources/25.8.2/managementrouters.bootstrap.eda.nokia.com/v1alpha1.yaml b/static/resources/25.8.2/managementrouters.bootstrap.eda.nokia.com/v1alpha1.yaml new file mode 100644 index 0000000..18ea45c --- /dev/null +++ b/static/resources/25.8.2/managementrouters.bootstrap.eda.nokia.com/v1alpha1.yaml @@ -0,0 +1,44 @@ +name: v1alpha1 +schema: + openAPIV3Schema: + description: ManagementRouter is the Schema for the managementrouters API + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + description: ManagementRouterSpec defines the desired state of ManagementRouter + properties: + nodeSelector: + description: Selects TopoNodes on which to configure the management VRF. When left empty, all TopoNodes are selected. + items: + type: string + type: array + nodes: + description: List of TopoNodes on which to configure the management VRF. When left empty, all TopoNodes are selected. + items: + type: string + type: array + type: object + status: + description: ManagementRouterStatus defines the observed state of ManagementRouter + type: object + type: object +served: true +storage: true +subresources: + status: {} diff --git a/static/resources/25.8.2/managementrouterstates.bootstrap.eda.nokia.com/v1alpha1.yaml b/static/resources/25.8.2/managementrouterstates.bootstrap.eda.nokia.com/v1alpha1.yaml new file mode 100644 index 0000000..e16fda8 --- /dev/null +++ b/static/resources/25.8.2/managementrouterstates.bootstrap.eda.nokia.com/v1alpha1.yaml @@ -0,0 +1,54 @@ +name: v1alpha1 +schema: + openAPIV3Schema: + description: ManagementRouterState is the Schema for the managementrouterstates API + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + description: ManagementRouterStateSpec defines the desired state of ManagementRouterState + properties: + nodes: + description: Reference to Nodes on which the ManagementRouter is deployed + items: + properties: + networkInstanceName: + description: The name of the management network instance in the Node OS format. For example in SR Linux it would be 'mgmt' + type: string + node: + description: Reference to Node object + type: string + operatingSystem: + description: Operating System of the Node + type: string + required: + - networkInstanceName + - node + type: object + type: array + required: + - nodes + type: object + status: + description: ManagementRouterStateStatus defines the observed state of ManagementRouterState + type: object + type: object +served: true +storage: true +subresources: + status: {} diff --git a/static/resources/25.8.2/manifest.json b/static/resources/25.8.2/manifest.json new file mode 100644 index 0000000..634cd3b --- /dev/null +++ b/static/resources/25.8.2/manifest.json @@ -0,0 +1,1997 @@ +[ + { + "name": "aggregateroutes.protocols.eda.nokia.com", + "group": "protocols.eda.nokia.com", + "kind": "AggregateRoute", + "versions": [ + { + "name": "v1", + "appVersion": "v4.0.1" + }, + { + "name": "v1alpha1", + "deprecated": true, + "appVersion": "v3.0.2+25.4.3" + } + ] + }, + { + "name": "alarms.core.eda.nokia.com", + "group": "core.eda.nokia.com", + "kind": "Alarm", + "versions": [ + { + "name": "v1" + } + ] + }, + { + "name": "appinstallers.appstore.eda.nokia.com", + "group": "appstore.eda.nokia.com", + "kind": "AppInstaller", + "versions": [ + { + "name": "v1" + } + ] + }, + { + "name": "artifacts.artifacts.eda.nokia.com", + "group": "artifacts.eda.nokia.com", + "kind": "Artifact", + "versions": [ + { + "name": "v1" + } + ] + }, + { + "name": "aspathsetdeployments.routingpolicies.eda.nokia.com", + "group": "routingpolicies.eda.nokia.com", + "kind": "ASPathSetDeployment", + "versions": [ + { + "name": "v1alpha1", + "appVersion": "v4.0.1" + } + ] + }, + { + "name": "aspathsets.routingpolicies.eda.nokia.com", + "group": "routingpolicies.eda.nokia.com", + "kind": "ASPathSet", + "versions": [ + { + "name": "v1alpha1", + "appVersion": "v4.0.1" + } + ] + }, + { + "name": "attachmentlookups.routing.eda.nokia.com", + "group": "routing.eda.nokia.com", + "kind": "AttachmentLookup", + "versions": [ + { + "name": "v1alpha1", + "appVersion": "v4.0.1" + } + ] + }, + { + "name": "backends.aifabrics.eda.nokia.com", + "group": "aifabrics.eda.nokia.com", + "kind": "Backend", + "versions": [ + { + "name": "v1alpha1", + "appVersion": "v4.0.1" + } + ] + }, + { + "name": "backendstates.aifabrics.eda.nokia.com", + "group": "aifabrics.eda.nokia.com", + "kind": "", + "versions": [ + { + "name": "v1alpha1" + } + ] + }, + { + "name": "banners.siteinfo.eda.nokia.com", + "group": "siteinfo.eda.nokia.com", + "kind": "Banner", + "versions": [ + { + "name": "v1alpha1", + "appVersion": "v4.0.1" + } + ] + }, + { + "name": "bannerstates.siteinfo.eda.nokia.com", + "group": "siteinfo.eda.nokia.com", + "kind": "", + "versions": [ + { + "name": "v1alpha1" + } + ] + }, + { + "name": "bgpgroupdeployments.protocols.eda.nokia.com", + "group": "protocols.eda.nokia.com", + "kind": "BGPGroupDeployment", + "versions": [ + { + "name": "v1", + "appVersion": "v4.0.1" + }, + { + "name": "v1alpha1", + "deprecated": true, + "appVersion": "v3.0.2+25.4.3" + } + ] + }, + { + "name": "bgpgroups.protocols.eda.nokia.com", + "group": "protocols.eda.nokia.com", + "kind": "BGPGroup", + "versions": [ + { + "name": "v1", + "appVersion": "v4.0.1" + }, + { + "name": "v1alpha1", + "deprecated": true, + "appVersion": "v3.0.2+25.4.3" + } + ] + }, + { + "name": "bgpgroupstates.protocols.eda.nokia.com", + "group": "protocols.eda.nokia.com", + "kind": "", + "versions": [ + { + "name": "v1" + }, + { + "name": "v1alpha1", + "deprecated": true + } + ] + }, + { + "name": "bgppeers.protocols.eda.nokia.com", + "group": "protocols.eda.nokia.com", + "kind": "BGPPeer", + "versions": [ + { + "name": "v1", + "appVersion": "v4.0.1" + }, + { + "name": "v1alpha1", + "deprecated": true, + "appVersion": "v3.0.2+25.4.3" + } + ] + }, + { + "name": "bgppeerstates.protocols.eda.nokia.com", + "group": "protocols.eda.nokia.com", + "kind": "", + "versions": [ + { + "name": "v1" + }, + { + "name": "v1alpha1", + "deprecated": true + } + ] + }, + { + "name": "breakouts.interfaces.eda.nokia.com", + "group": "interfaces.eda.nokia.com", + "kind": "Breakout", + "versions": [ + { + "name": "v1alpha1", + "appVersion": "v4.0.1" + } + ] + }, + { + "name": "bridgedomaindeployments.services.eda.nokia.com", + "group": "services.eda.nokia.com", + "kind": "BridgeDomainDeployment", + "versions": [ + { + "name": "v1", + "appVersion": "v4.0.1" + }, + { + "name": "v1alpha1", + "deprecated": true, + "appVersion": "v3.0.2+25.4.3" + } + ] + }, + { + "name": "bridgedomains.services.eda.nokia.com", + "group": "services.eda.nokia.com", + "kind": "BridgeDomain", + "versions": [ + { + "name": "v1", + "appVersion": "v4.0.1" + }, + { + "name": "v1alpha1", + "deprecated": true, + "appVersion": "v3.0.2+25.4.3" + } + ] + }, + { + "name": "bridgedomainstates.services.eda.nokia.com", + "group": "services.eda.nokia.com", + "kind": "", + "versions": [ + { + "name": "v1" + }, + { + "name": "v1alpha1", + "deprecated": true + } + ] + }, + { + "name": "bridgeinterfaces.services.eda.nokia.com", + "group": "services.eda.nokia.com", + "kind": "BridgeInterface", + "versions": [ + { + "name": "v1", + "appVersion": "v4.0.1" + }, + { + "name": "v1alpha1", + "deprecated": true, + "appVersion": "v3.0.2+25.4.3" + } + ] + }, + { + "name": "bridgeinterfacestates.services.eda.nokia.com", + "group": "services.eda.nokia.com", + "kind": "", + "versions": [ + { + "name": "v1" + }, + { + "name": "v1alpha1", + "deprecated": true + } + ] + }, + { + "name": "catalogs.appstore.eda.nokia.com", + "group": "appstore.eda.nokia.com", + "kind": "Catalog", + "versions": [ + { + "name": "v1" + } + ] + }, + { + "name": "certificatechecks.certcheck.eda.nokia.com", + "group": "certcheck.eda.nokia.com", + "kind": "CertificateCheck", + "versions": [ + { + "name": "v1alpha1" + } + ] + }, + { + "name": "chassis.components.eda.nokia.com", + "group": "components.eda.nokia.com", + "kind": "Chassis", + "versions": [ + { + "name": "v1", + "appVersion": "v4.0.1" + } + ] + }, + { + "name": "checkdefaultbgppeerss.protocols.eda.nokia.com", + "group": "protocols.eda.nokia.com", + "kind": "CheckDefaultBgpPeers", + "versions": [ + { + "name": "v1", + "appVersion": "v4.0.1" + }, + { + "name": "v1alpha1", + "deprecated": true + } + ] + }, + { + "name": "checkinterfacess.interfaces.eda.nokia.com", + "group": "interfaces.eda.nokia.com", + "kind": "CheckInterfaces", + "versions": [ + { + "name": "v1alpha1", + "appVersion": "v4.0.1" + } + ] + }, + { + "name": "cliplugins.environment.eda.nokia.com", + "group": "environment.eda.nokia.com", + "kind": "CliPlugin", + "versions": [ + { + "name": "v1alpha1", + "appVersion": "v4.0.1" + } + ] + }, + { + "name": "clusterdiscoveries.components.eda.nokia.com", + "group": "components.eda.nokia.com", + "kind": "ClusterDiscovery", + "versions": [ + { + "name": "v1", + "appVersion": "v4.0.1" + } + ] + }, + { + "name": "clusterroles.core.eda.nokia.com", + "group": "core.eda.nokia.com", + "kind": "ClusterRole", + "versions": [ + { + "name": "v1" + } + ] + }, + { + "name": "communitysetdeployments.routingpolicies.eda.nokia.com", + "group": "routingpolicies.eda.nokia.com", + "kind": "CommunitySetDeployment", + "versions": [ + { + "name": "v1alpha1", + "appVersion": "v4.0.1" + } + ] + }, + { + "name": "communitysets.routingpolicies.eda.nokia.com", + "group": "routingpolicies.eda.nokia.com", + "kind": "CommunitySet", + "versions": [ + { + "name": "v1alpha1", + "appVersion": "v4.0.1" + } + ] + }, + { + "name": "components.components.eda.nokia.com", + "group": "components.eda.nokia.com", + "kind": "Component", + "versions": [ + { + "name": "v1", + "appVersion": "v4.0.1" + }, + { + "name": "v1alpha1" + } + ] + }, + { + "name": "configlets.config.eda.nokia.com", + "group": "config.eda.nokia.com", + "kind": "Configlet", + "versions": [ + { + "name": "v1alpha1", + "appVersion": "v4.0.1" + } + ] + }, + { + "name": "configletstates.config.eda.nokia.com", + "group": "config.eda.nokia.com", + "kind": "", + "versions": [ + { + "name": "v1alpha1" + } + ] + }, + { + "name": "controlmodules.components.eda.nokia.com", + "group": "components.eda.nokia.com", + "kind": "ControlModule", + "versions": [ + { + "name": "v1", + "appVersion": "v4.0.1" + } + ] + }, + { + "name": "controlplanefilters.filters.eda.nokia.com", + "group": "filters.eda.nokia.com", + "kind": "ControlPlaneFilter", + "versions": [ + { + "name": "v1alpha1", + "appVersion": "v4.0.1" + } + ] + }, + { + "name": "cpuoverlays.components.eda.nokia.com", + "group": "components.eda.nokia.com", + "kind": "CPUOverlay", + "versions": [ + { + "name": "v1", + "appVersion": "v4.0.1" + } + ] + }, + { + "name": "cxclusters.cx.eda.nokia.com", + "group": "cx.eda.nokia.com", + "kind": "CxCluster", + "versions": [ + { + "name": "v1alpha1" + } + ] + }, + { + "name": "defaultaggregateroutes.protocols.eda.nokia.com", + "group": "protocols.eda.nokia.com", + "kind": "DefaultAggregateRoute", + "versions": [ + { + "name": "v1", + "appVersion": "v4.0.1" + }, + { + "name": "v1alpha1", + "deprecated": true, + "appVersion": "v3.0.2+25.4.3" + } + ] + }, + { + "name": "defaultbgpgroupdeployments.protocols.eda.nokia.com", + "group": "protocols.eda.nokia.com", + "kind": "DefaultBGPGroupDeployment", + "versions": [ + { + "name": "v1", + "appVersion": "v4.0.1" + }, + { + "name": "v1alpha1", + "deprecated": true, + "appVersion": "v3.0.2+25.4.3" + } + ] + }, + { + "name": "defaultbgpgroups.protocols.eda.nokia.com", + "group": "protocols.eda.nokia.com", + "kind": "DefaultBGPGroup", + "versions": [ + { + "name": "v1", + "appVersion": "v4.0.1" + }, + { + "name": "v1alpha1", + "deprecated": true, + "appVersion": "v3.0.2+25.4.3" + } + ] + }, + { + "name": "defaultbgppeers.protocols.eda.nokia.com", + "group": "protocols.eda.nokia.com", + "kind": "DefaultBGPPeer", + "versions": [ + { + "name": "v1", + "appVersion": "v4.0.1" + }, + { + "name": "v1alpha1", + "deprecated": true, + "appVersion": "v3.0.2+25.4.3" + } + ] + }, + { + "name": "defaultinterfaces.routing.eda.nokia.com", + "group": "routing.eda.nokia.com", + "kind": "DefaultInterface", + "versions": [ + { + "name": "v1alpha1", + "appVersion": "v4.0.1" + } + ] + }, + { + "name": "defaultinterfacestates.routing.eda.nokia.com", + "group": "routing.eda.nokia.com", + "kind": "", + "versions": [ + { + "name": "v1alpha1" + } + ] + }, + { + "name": "defaultroutereflectorclients.protocols.eda.nokia.com", + "group": "protocols.eda.nokia.com", + "kind": "DefaultRouteReflectorClient", + "versions": [ + { + "name": "v1", + "appVersion": "v4.0.1" + }, + { + "name": "v1alpha1", + "deprecated": true, + "appVersion": "v3.0.2+25.4.3" + } + ] + }, + { + "name": "defaultroutereflectors.protocols.eda.nokia.com", + "group": "protocols.eda.nokia.com", + "kind": "DefaultRouteReflector", + "versions": [ + { + "name": "v1", + "appVersion": "v4.0.1" + }, + { + "name": "v1alpha1", + "deprecated": true, + "appVersion": "v3.0.2+25.4.3" + } + ] + }, + { + "name": "defaultrouters.routing.eda.nokia.com", + "group": "routing.eda.nokia.com", + "kind": "DefaultRouter", + "versions": [ + { + "name": "v1alpha1", + "appVersion": "v4.0.1" + } + ] + }, + { + "name": "defaultrouterstates.routing.eda.nokia.com", + "group": "routing.eda.nokia.com", + "kind": "", + "versions": [ + { + "name": "v1alpha1" + } + ] + }, + { + "name": "defaultstaticroutes.protocols.eda.nokia.com", + "group": "protocols.eda.nokia.com", + "kind": "DefaultStaticRoute", + "versions": [ + { + "name": "v1", + "appVersion": "v4.0.1" + }, + { + "name": "v1alpha1", + "deprecated": true, + "appVersion": "v3.0.2+25.4.3" + } + ] + }, + { + "name": "deployimages.os.eda.nokia.com", + "group": "os.eda.nokia.com", + "kind": "DeployImage", + "versions": [ + { + "name": "v1alpha1", + "appVersion": "v4.0.1" + } + ] + }, + { + "name": "designers.core.eda.nokia.com", + "group": "core.eda.nokia.com", + "kind": "Designer", + "versions": [ + { + "name": "v1" + } + ] + }, + { + "name": "deviationactions.core.eda.nokia.com", + "group": "core.eda.nokia.com", + "kind": "DeviationAction", + "versions": [ + { + "name": "v1" + } + ] + }, + { + "name": "deviationoverlays.topologies.eda.nokia.com", + "group": "topologies.eda.nokia.com", + "kind": "DeviationOverlay", + "versions": [ + { + "name": "v1alpha1", + "appVersion": "v4.0.1" + } + ] + }, + { + "name": "deviations.core.eda.nokia.com", + "group": "core.eda.nokia.com", + "kind": "Deviation", + "versions": [ + { + "name": "v1" + } + ] + }, + { + "name": "dhcprelays.services.eda.nokia.com", + "group": "services.eda.nokia.com", + "kind": "DHCPRelay", + "versions": [ + { + "name": "v1", + "appVersion": "v4.0.1" + }, + { + "name": "v1alpha1", + "deprecated": true, + "appVersion": "v3.0.2+25.4.3" + } + ] + }, + { + "name": "discoveries.components.eda.nokia.com", + "group": "components.eda.nokia.com", + "kind": "Discovery", + "versions": [ + { + "name": "v1", + "appVersion": "v4.0.1" + }, + { + "name": "v1alpha1" + } + ] + }, + { + "name": "discoveryaggregatestates.components.eda.nokia.com", + "group": "components.eda.nokia.com", + "kind": "", + "versions": [ + { + "name": "v1" + }, + { + "name": "v1alpha1" + } + ] + }, + { + "name": "discoverystates.components.eda.nokia.com", + "group": "components.eda.nokia.com", + "kind": "", + "versions": [ + { + "name": "v1" + }, + { + "name": "v1alpha1" + } + ] + }, + { + "name": "drains.routing.eda.nokia.com", + "group": "routing.eda.nokia.com", + "kind": "Drain", + "versions": [ + { + "name": "v1alpha1", + "appVersion": "v4.0.1" + } + ] + }, + { + "name": "drainstates.routing.eda.nokia.com", + "group": "routing.eda.nokia.com", + "kind": "", + "versions": [ + { + "name": "v1alpha1" + } + ] + }, + { + "name": "edgeinterfaces.core.eda.nokia.com", + "group": "core.eda.nokia.com", + "kind": "EdgeInterface", + "versions": [ + { + "name": "v1" + } + ] + }, + { + "name": "edgepings.services.eda.nokia.com", + "group": "services.eda.nokia.com", + "kind": "EdgePing", + "versions": [ + { + "name": "v1", + "appVersion": "v4.0.1" + }, + { + "name": "v1alpha1", + "deprecated": true + } + ] + }, + { + "name": "egresspolicys.qos.eda.nokia.com", + "group": "qos.eda.nokia.com", + "kind": "EgressPolicy", + "versions": [ + { + "name": "v1", + "appVersion": "v4.0.1" + }, + { + "name": "v1alpha1", + "deprecated": true, + "appVersion": "v3.0.2+25.4.3" + } + ] + }, + { + "name": "engineconfigs.core.eda.nokia.com", + "group": "core.eda.nokia.com", + "kind": "EngineConfig", + "versions": [ + { + "name": "v1" + } + ] + }, + { + "name": "fabricmodules.components.eda.nokia.com", + "group": "components.eda.nokia.com", + "kind": "FabricModule", + "versions": [ + { + "name": "v1", + "appVersion": "v4.0.1" + } + ] + }, + { + "name": "fabrics.fabrics.eda.nokia.com", + "group": "fabrics.eda.nokia.com", + "kind": "Fabric", + "versions": [ + { + "name": "v1alpha1", + "appVersion": "v4.0.1" + } + ] + }, + { + "name": "fabricstates.fabrics.eda.nokia.com", + "group": "fabrics.eda.nokia.com", + "kind": "", + "versions": [ + { + "name": "v1alpha1" + } + ] + }, + { + "name": "fans.components.eda.nokia.com", + "group": "components.eda.nokia.com", + "kind": "Fan", + "versions": [ + { + "name": "v1", + "appVersion": "v4.0.1" + } + ] + }, + { + "name": "filterdeployments.filters.eda.nokia.com", + "group": "filters.eda.nokia.com", + "kind": "FilterDeployment", + "versions": [ + { + "name": "v1alpha1", + "appVersion": "v4.0.1" + } + ] + }, + { + "name": "filters.filters.eda.nokia.com", + "group": "filters.eda.nokia.com", + "kind": "Filter", + "versions": [ + { + "name": "v1alpha1", + "appVersion": "v4.0.1" + } + ] + }, + { + "name": "forwardingclasss.qos.eda.nokia.com", + "group": "qos.eda.nokia.com", + "kind": "ForwardingClass", + "versions": [ + { + "name": "v1", + "appVersion": "v4.0.1" + }, + { + "name": "v1alpha1", + "deprecated": true, + "appVersion": "v3.0.2+25.4.3" + } + ] + }, + { + "name": "globalconfigs.core.eda.nokia.com", + "group": "core.eda.nokia.com", + "kind": "GlobalConfig", + "versions": [ + { + "name": "v1" + } + ] + }, + { + "name": "httpproxies.core.eda.nokia.com", + "group": "core.eda.nokia.com", + "kind": "HttpProxy", + "versions": [ + { + "name": "v1" + } + ] + }, + { + "name": "indexallocationpools.core.eda.nokia.com", + "group": "core.eda.nokia.com", + "kind": "IndexAllocationPool", + "versions": [ + { + "name": "v1" + } + ] + }, + { + "name": "ingresspolicys.qos.eda.nokia.com", + "group": "qos.eda.nokia.com", + "kind": "IngressPolicy", + "versions": [ + { + "name": "v1", + "appVersion": "v4.0.1" + }, + { + "name": "v1alpha1", + "deprecated": true, + "appVersion": "v3.0.2+25.4.3" + } + ] + }, + { + "name": "inits.bootstrap.eda.nokia.com", + "group": "bootstrap.eda.nokia.com", + "kind": "Init", + "versions": [ + { + "name": "v1alpha1", + "appVersion": "v4.0.1" + } + ] + }, + { + "name": "interfacemodules.components.eda.nokia.com", + "group": "components.eda.nokia.com", + "kind": "InterfaceModule", + "versions": [ + { + "name": "v1", + "appVersion": "v4.0.1" + } + ] + }, + { + "name": "interfaces.interfaces.eda.nokia.com", + "group": "interfaces.eda.nokia.com", + "kind": "Interface", + "versions": [ + { + "name": "v1alpha1", + "appVersion": "v4.0.1" + } + ] + }, + { + "name": "interfacestates.interfaces.eda.nokia.com", + "group": "interfaces.eda.nokia.com", + "kind": "", + "versions": [ + { + "name": "v1alpha1" + } + ] + }, + { + "name": "ipallocationpools.core.eda.nokia.com", + "group": "core.eda.nokia.com", + "kind": "IPAllocationPool", + "versions": [ + { + "name": "v1" + } + ] + }, + { + "name": "ipinsubnetallocationpools.core.eda.nokia.com", + "group": "core.eda.nokia.com", + "kind": "IPInSubnetAllocationPool", + "versions": [ + { + "name": "v1" + } + ] + }, + { + "name": "irbinterfaces.services.eda.nokia.com", + "group": "services.eda.nokia.com", + "kind": "IRBInterface", + "versions": [ + { + "name": "v1", + "appVersion": "v4.0.1" + }, + { + "name": "v1alpha1", + "deprecated": true, + "appVersion": "v3.0.2+25.4.3" + } + ] + }, + { + "name": "irbinterfacestates.services.eda.nokia.com", + "group": "services.eda.nokia.com", + "kind": "", + "versions": [ + { + "name": "v1" + }, + { + "name": "v1alpha1", + "deprecated": true + } + ] + }, + { + "name": "islpings.fabrics.eda.nokia.com", + "group": "fabrics.eda.nokia.com", + "kind": "IslPing", + "versions": [ + { + "name": "v1alpha1", + "appVersion": "v4.0.1" + } + ] + }, + { + "name": "isls.fabrics.eda.nokia.com", + "group": "fabrics.eda.nokia.com", + "kind": "ISL", + "versions": [ + { + "name": "v1alpha1", + "appVersion": "v4.0.1" + } + ] + }, + { + "name": "islstates.fabrics.eda.nokia.com", + "group": "fabrics.eda.nokia.com", + "kind": "", + "versions": [ + { + "name": "v1alpha1" + } + ] + }, + { + "name": "keychaindeployments.security.eda.nokia.com", + "group": "security.eda.nokia.com", + "kind": "KeychainDeployment", + "versions": [ + { + "name": "v1alpha1", + "appVersion": "v4.0.1" + } + ] + }, + { + "name": "keychains.security.eda.nokia.com", + "group": "security.eda.nokia.com", + "kind": "Keychain", + "versions": [ + { + "name": "v1alpha1", + "appVersion": "v4.0.1" + } + ] + }, + { + "name": "licenses.core.eda.nokia.com", + "group": "core.eda.nokia.com", + "kind": "License", + "versions": [ + { + "name": "v1" + } + ] + }, + { + "name": "lldpoverlays.topologies.eda.nokia.com", + "group": "topologies.eda.nokia.com", + "kind": "LldpOverlay", + "versions": [ + { + "name": "v1alpha1", + "appVersion": "v4.0.1" + } + ] + }, + { + "name": "managementrouters.bootstrap.eda.nokia.com", + "group": "bootstrap.eda.nokia.com", + "kind": "ManagementRouter", + "versions": [ + { + "name": "v1alpha1", + "appVersion": "v4.0.1" + } + ] + }, + { + "name": "managementrouterstates.bootstrap.eda.nokia.com", + "group": "bootstrap.eda.nokia.com", + "kind": "", + "versions": [ + { + "name": "v1alpha1" + } + ] + }, + { + "name": "manifests.core.eda.nokia.com", + "group": "core.eda.nokia.com", + "kind": "Manifest", + "versions": [ + { + "name": "v1" + } + ] + }, + { + "name": "memoryoverlays.components.eda.nokia.com", + "group": "components.eda.nokia.com", + "kind": "MemoryOverlay", + "versions": [ + { + "name": "v1", + "appVersion": "v4.0.1" + } + ] + }, + { + "name": "mirrorfilterdeployments.filters.eda.nokia.com", + "group": "filters.eda.nokia.com", + "kind": "MirrorFilterDeployment", + "versions": [ + { + "name": "v1alpha1", + "appVersion": "v4.0.1" + } + ] + }, + { + "name": "mirrorfilters.filters.eda.nokia.com", + "group": "filters.eda.nokia.com", + "kind": "MirrorFilter", + "versions": [ + { + "name": "v1alpha1", + "appVersion": "v4.0.1" + } + ] + }, + { + "name": "mirrors.oam.eda.nokia.com", + "group": "oam.eda.nokia.com", + "kind": "Mirror", + "versions": [ + { + "name": "v1alpha1", + "appVersion": "v4.0.1" + } + ] + }, + { + "name": "mirrorstates.oam.eda.nokia.com", + "group": "oam.eda.nokia.com", + "kind": "", + "versions": [ + { + "name": "v1alpha1" + } + ] + }, + { + "name": "monitoraggregatestates.components.eda.nokia.com", + "group": "components.eda.nokia.com", + "kind": "", + "versions": [ + { + "name": "v1" + } + ] + }, + { + "name": "monitoraggregatestates.system.eda.nokia.com", + "group": "system.eda.nokia.com", + "kind": "", + "versions": [ + { + "name": "v1alpha1" + } + ] + }, + { + "name": "monitors.components.eda.nokia.com", + "group": "components.eda.nokia.com", + "kind": "Monitor", + "versions": [ + { + "name": "v1", + "appVersion": "v4.0.1" + } + ] + }, + { + "name": "monitors.system.eda.nokia.com", + "group": "system.eda.nokia.com", + "kind": "Monitor", + "versions": [ + { + "name": "v1alpha1", + "appVersion": "v4.0.1" + } + ] + }, + { + "name": "monitorstates.components.eda.nokia.com", + "group": "components.eda.nokia.com", + "kind": "", + "versions": [ + { + "name": "v1" + } + ] + }, + { + "name": "monitorstates.system.eda.nokia.com", + "group": "system.eda.nokia.com", + "kind": "", + "versions": [ + { + "name": "v1alpha1" + } + ] + }, + { + "name": "namespaces.core.eda.nokia.com", + "group": "core.eda.nokia.com", + "kind": "Namespace", + "versions": [ + { + "name": "v1" + } + ] + }, + { + "name": "nodeconfigs.core.eda.nokia.com", + "group": "core.eda.nokia.com", + "kind": "NodeConfig", + "versions": [ + { + "name": "v1" + } + ] + }, + { + "name": "nodegroupdeployments.aaa.eda.nokia.com", + "group": "aaa.eda.nokia.com", + "kind": "NodeGroupDeployment", + "versions": [ + { + "name": "v1alpha1", + "appVersion": "v4.0.1" + } + ] + }, + { + "name": "nodegroups.aaa.eda.nokia.com", + "group": "aaa.eda.nokia.com", + "kind": "NodeGroup", + "versions": [ + { + "name": "v1alpha1", + "appVersion": "v4.0.1" + } + ] + }, + { + "name": "nodeprofiles.core.eda.nokia.com", + "group": "core.eda.nokia.com", + "kind": "NodeProfile", + "versions": [ + { + "name": "v1" + } + ] + }, + { + "name": "nodesecurityprofiles.core.eda.nokia.com", + "group": "core.eda.nokia.com", + "kind": "NodeSecurityProfile", + "versions": [ + { + "name": "v1" + } + ] + }, + { + "name": "nodeusers.core.eda.nokia.com", + "group": "core.eda.nokia.com", + "kind": "NodeUser", + "versions": [ + { + "name": "v1" + } + ] + }, + { + "name": "nodeuserstates.aaa.eda.nokia.com", + "group": "aaa.eda.nokia.com", + "kind": "", + "versions": [ + { + "name": "v1alpha1" + } + ] + }, + { + "name": "ntpclients.timing.eda.nokia.com", + "group": "timing.eda.nokia.com", + "kind": "NTPClient", + "versions": [ + { + "name": "v1alpha1", + "appVersion": "v4.0.1" + } + ] + }, + { + "name": "ntpclientstates.timing.eda.nokia.com", + "group": "timing.eda.nokia.com", + "kind": "", + "versions": [ + { + "name": "v1alpha1" + } + ] + }, + { + "name": "pings.oam.eda.nokia.com", + "group": "oam.eda.nokia.com", + "kind": "Ping", + "versions": [ + { + "name": "v1alpha1", + "appVersion": "v4.0.1" + } + ] + }, + { + "name": "policyattachments.qos.eda.nokia.com", + "group": "qos.eda.nokia.com", + "kind": "PolicyAttachment", + "versions": [ + { + "name": "v1", + "appVersion": "v4.0.1" + }, + { + "name": "v1alpha1", + "deprecated": true, + "appVersion": "v3.0.2+25.4.3" + } + ] + }, + { + "name": "policydeployments.qos.eda.nokia.com", + "group": "qos.eda.nokia.com", + "kind": "PolicyDeployment", + "versions": [ + { + "name": "v1", + "appVersion": "v4.0.1" + }, + { + "name": "v1alpha1", + "deprecated": true, + "appVersion": "v3.0.2+25.4.3" + } + ] + }, + { + "name": "policydeployments.routingpolicies.eda.nokia.com", + "group": "routingpolicies.eda.nokia.com", + "kind": "PolicyDeployment", + "versions": [ + { + "name": "v1alpha1", + "appVersion": "v4.0.1" + } + ] + }, + { + "name": "policys.routingpolicies.eda.nokia.com", + "group": "routingpolicies.eda.nokia.com", + "kind": "Policy", + "versions": [ + { + "name": "v1alpha1", + "appVersion": "v4.0.1" + } + ] + }, + { + "name": "powersupplies.components.eda.nokia.com", + "group": "components.eda.nokia.com", + "kind": "PowerSupply", + "versions": [ + { + "name": "v1", + "appVersion": "v4.0.1" + } + ] + }, + { + "name": "prefixsetdeployments.routingpolicies.eda.nokia.com", + "group": "routingpolicies.eda.nokia.com", + "kind": "PrefixSetDeployment", + "versions": [ + { + "name": "v1alpha1", + "appVersion": "v4.0.1" + } + ] + }, + { + "name": "prefixsets.routingpolicies.eda.nokia.com", + "group": "routingpolicies.eda.nokia.com", + "kind": "PrefixSet", + "versions": [ + { + "name": "v1alpha1", + "appVersion": "v4.0.1" + } + ] + }, + { + "name": "queues.qos.eda.nokia.com", + "group": "qos.eda.nokia.com", + "kind": "Queue", + "versions": [ + { + "name": "v1", + "appVersion": "v4.0.1" + }, + { + "name": "v1alpha1", + "deprecated": true, + "appVersion": "v3.0.2+25.4.3" + } + ] + }, + { + "name": "registries.appstore.eda.nokia.com", + "group": "appstore.eda.nokia.com", + "kind": "Registry", + "versions": [ + { + "name": "v1" + } + ] + }, + { + "name": "roles.core.eda.nokia.com", + "group": "core.eda.nokia.com", + "kind": "Role", + "versions": [ + { + "name": "v1" + } + ] + }, + { + "name": "routedinterfaces.services.eda.nokia.com", + "group": "services.eda.nokia.com", + "kind": "RoutedInterface", + "versions": [ + { + "name": "v1", + "appVersion": "v4.0.1" + }, + { + "name": "v1alpha1", + "deprecated": true, + "appVersion": "v3.0.2+25.4.3" + } + ] + }, + { + "name": "routedinterfacestates.services.eda.nokia.com", + "group": "services.eda.nokia.com", + "kind": "", + "versions": [ + { + "name": "v1" + }, + { + "name": "v1alpha1", + "deprecated": true + } + ] + }, + { + "name": "routelookups.routing.eda.nokia.com", + "group": "routing.eda.nokia.com", + "kind": "RouteLookup", + "versions": [ + { + "name": "v1alpha1", + "appVersion": "v4.0.1" + } + ] + }, + { + "name": "routerdeployments.services.eda.nokia.com", + "group": "services.eda.nokia.com", + "kind": "RouterDeployment", + "versions": [ + { + "name": "v1", + "appVersion": "v4.0.1" + }, + { + "name": "v1alpha1", + "deprecated": true, + "appVersion": "v3.0.2+25.4.3" + } + ] + }, + { + "name": "routereflectorclients.protocols.eda.nokia.com", + "group": "protocols.eda.nokia.com", + "kind": "RouteReflectorClient", + "versions": [ + { + "name": "v1", + "appVersion": "v4.0.1" + }, + { + "name": "v1alpha1", + "deprecated": true, + "appVersion": "v3.0.2+25.4.3" + } + ] + }, + { + "name": "routereflectorclientstates.protocols.eda.nokia.com", + "group": "protocols.eda.nokia.com", + "kind": "", + "versions": [ + { + "name": "v1" + }, + { + "name": "v1alpha1", + "deprecated": true + } + ] + }, + { + "name": "routereflectors.protocols.eda.nokia.com", + "group": "protocols.eda.nokia.com", + "kind": "RouteReflector", + "versions": [ + { + "name": "v1", + "appVersion": "v4.0.1" + }, + { + "name": "v1alpha1", + "deprecated": true, + "appVersion": "v3.0.2+25.4.3" + } + ] + }, + { + "name": "routereflectorstates.protocols.eda.nokia.com", + "group": "protocols.eda.nokia.com", + "kind": "", + "versions": [ + { + "name": "v1" + }, + { + "name": "v1alpha1", + "deprecated": true + } + ] + }, + { + "name": "routers.services.eda.nokia.com", + "group": "services.eda.nokia.com", + "kind": "Router", + "versions": [ + { + "name": "v1", + "appVersion": "v4.0.1" + }, + { + "name": "v1alpha1", + "deprecated": true, + "appVersion": "v3.0.2+25.4.3" + } + ] + }, + { + "name": "routerstates.services.eda.nokia.com", + "group": "services.eda.nokia.com", + "kind": "", + "versions": [ + { + "name": "v1" + }, + { + "name": "v1alpha1", + "deprecated": true + } + ] + }, + { + "name": "setupenvs.environment.eda.nokia.com", + "group": "environment.eda.nokia.com", + "kind": "SetupEnv", + "versions": [ + { + "name": "v1alpha1", + "appVersion": "v4.0.1" + } + ] + }, + { + "name": "simlinks.core.eda.nokia.com", + "group": "core.eda.nokia.com", + "kind": "SimLink", + "versions": [ + { + "name": "v1" + } + ] + }, + { + "name": "simnodes.core.eda.nokia.com", + "group": "core.eda.nokia.com", + "kind": "SimNode", + "versions": [ + { + "name": "v1" + } + ] + }, + { + "name": "stateconfigs.services.eda.nokia.com", + "group": "services.eda.nokia.com", + "kind": "StateConfig", + "versions": [ + { + "name": "v1", + "appVersion": "v4.0.1" + }, + { + "name": "v1alpha1", + "deprecated": true, + "appVersion": "v3.0.2+25.4.3" + } + ] + }, + { + "name": "staticroutes.protocols.eda.nokia.com", + "group": "protocols.eda.nokia.com", + "kind": "StaticRoute", + "versions": [ + { + "name": "v1", + "appVersion": "v4.0.1" + }, + { + "name": "v1alpha1", + "deprecated": true, + "appVersion": "v3.0.2+25.4.3" + } + ] + }, + { + "name": "subnetallocationpools.core.eda.nokia.com", + "group": "core.eda.nokia.com", + "kind": "SubnetAllocationPool", + "versions": [ + { + "name": "v1" + } + ] + }, + { + "name": "systeminterfaces.routing.eda.nokia.com", + "group": "routing.eda.nokia.com", + "kind": "SystemInterface", + "versions": [ + { + "name": "v1alpha1", + "appVersion": "v4.0.1" + } + ] + }, + { + "name": "systeminterfacestates.routing.eda.nokia.com", + "group": "routing.eda.nokia.com", + "kind": "", + "versions": [ + { + "name": "v1alpha1" + } + ] + }, + { + "name": "targetnodes.core.eda.nokia.com", + "group": "core.eda.nokia.com", + "kind": "TargetNode", + "versions": [ + { + "name": "v1" + } + ] + }, + { + "name": "techsupports.oam.eda.nokia.com", + "group": "oam.eda.nokia.com", + "kind": "TechSupport", + "versions": [ + { + "name": "v1alpha1", + "appVersion": "v4.0.1" + } + ] + }, + { + "name": "thresholds.oam.eda.nokia.com", + "group": "oam.eda.nokia.com", + "kind": "Threshold", + "versions": [ + { + "name": "v1alpha1", + "appVersion": "v4.0.1" + } + ] + }, + { + "name": "thresholds.platformmetrics.eda.nokia.com", + "group": "platformmetrics.eda.nokia.com", + "kind": "Threshold", + "versions": [ + { + "name": "v1" + } + ] + }, + { + "name": "topobreakouts.core.eda.nokia.com", + "group": "core.eda.nokia.com", + "kind": "TopoBreakout", + "versions": [ + { + "name": "v1" + } + ] + }, + { + "name": "topolinkmonitors.topologies.eda.nokia.com", + "group": "topologies.eda.nokia.com", + "kind": "TopoLinkMonitor", + "versions": [ + { + "name": "v1alpha1", + "appVersion": "v4.0.1" + } + ] + }, + { + "name": "topolinks.core.eda.nokia.com", + "group": "core.eda.nokia.com", + "kind": "TopoLink", + "versions": [ + { + "name": "v1" + } + ] + }, + { + "name": "topolinkstates.topologies.eda.nokia.com", + "group": "topologies.eda.nokia.com", + "kind": "", + "versions": [ + { + "name": "v1alpha1" + } + ] + }, + { + "name": "topologies.topologies.eda.nokia.com", + "group": "topologies.eda.nokia.com", + "kind": "Topology", + "versions": [ + { + "name": "v1alpha1", + "appVersion": "v4.0.1" + } + ] + }, + { + "name": "topologygroupings.topologies.eda.nokia.com", + "group": "topologies.eda.nokia.com", + "kind": "TopologyGrouping", + "versions": [ + { + "name": "v1alpha1", + "appVersion": "v4.0.1" + } + ] + }, + { + "name": "toponodes.core.eda.nokia.com", + "group": "core.eda.nokia.com", + "kind": "TopoNode", + "versions": [ + { + "name": "v1" + } + ] + }, + { + "name": "trafficrateoverlays.topologies.eda.nokia.com", + "group": "topologies.eda.nokia.com", + "kind": "TrafficRateOverlay", + "versions": [ + { + "name": "v1alpha1", + "appVersion": "v4.0.1" + } + ] + }, + { + "name": "transactionresults.core.eda.nokia.com", + "group": "core.eda.nokia.com", + "kind": "TransactionResult", + "versions": [ + { + "name": "v1" + } + ] + }, + { + "name": "transactions.core.eda.nokia.com", + "group": "core.eda.nokia.com", + "kind": "Transaction", + "versions": [ + { + "name": "v1" + } + ] + }, + { + "name": "udpproxies.core.eda.nokia.com", + "group": "core.eda.nokia.com", + "kind": "UdpProxy", + "versions": [ + { + "name": "v1" + } + ] + }, + { + "name": "userdeployments.aaa.eda.nokia.com", + "group": "aaa.eda.nokia.com", + "kind": "UserDeployment", + "versions": [ + { + "name": "v1alpha1", + "appVersion": "v4.0.1" + } + ] + }, + { + "name": "virtualnetworks.services.eda.nokia.com", + "group": "services.eda.nokia.com", + "kind": "VirtualNetwork", + "versions": [ + { + "name": "v1", + "appVersion": "v4.0.1" + }, + { + "name": "v1alpha1", + "deprecated": true, + "appVersion": "v3.0.2+25.4.3" + } + ] + }, + { + "name": "virtualnetworkstates.services.eda.nokia.com", + "group": "services.eda.nokia.com", + "kind": "", + "versions": [ + { + "name": "v1" + }, + { + "name": "v1alpha1", + "deprecated": true + } + ] + }, + { + "name": "vlans.services.eda.nokia.com", + "group": "services.eda.nokia.com", + "kind": "VLAN", + "versions": [ + { + "name": "v1", + "appVersion": "v4.0.1" + }, + { + "name": "v1alpha1", + "deprecated": true, + "appVersion": "v3.0.2+25.4.3" + } + ] + }, + { + "name": "vlanstates.services.eda.nokia.com", + "group": "services.eda.nokia.com", + "kind": "", + "versions": [ + { + "name": "v1" + }, + { + "name": "v1alpha1", + "deprecated": true + } + ] + }, + { + "name": "volumeoverlays.components.eda.nokia.com", + "group": "components.eda.nokia.com", + "kind": "VolumeOverlay", + "versions": [ + { + "name": "v1", + "appVersion": "v4.0.1" + } + ] + }, + { + "name": "waitforinputs.core.eda.nokia.com", + "group": "core.eda.nokia.com", + "kind": "WaitForInput", + "versions": [ + { + "name": "v1" + } + ] + }, + { + "name": "workflowdefinitions.core.eda.nokia.com", + "group": "core.eda.nokia.com", + "kind": "WorkflowDefinition", + "versions": [ + { + "name": "v1" + } + ] + }, + { + "name": "workflows.core.eda.nokia.com", + "group": "core.eda.nokia.com", + "kind": "Workflow", + "versions": [ + { + "name": "v1" + } + ] + } +] \ No newline at end of file diff --git a/static/resources/25.8.2/manifests.core.eda.nokia.com/v1.yaml b/static/resources/25.8.2/manifests.core.eda.nokia.com/v1.yaml new file mode 100644 index 0000000..7e7b110 --- /dev/null +++ b/static/resources/25.8.2/manifests.core.eda.nokia.com/v1.yaml @@ -0,0 +1,477 @@ +name: v1 +schema: + openAPIV3Schema: + description: Manifest is the Schema for the manifests API + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + description: ManifestSpec defines the desired state of Manifest + properties: + appInfo: + description: Additional information relating the application described by this Manifest + properties: + categories: + description: Categories of the application described by this Manifest, used by UI + items: + type: string + type: array + changelog: + description: Relative path to the changelog for the application + type: string + documentation: + description: Relative path to any documentation + type: string + license: + description: Relative path to a LICENSE file + type: string + ociSpecVersion: + description: OCI Spec version of the built app image, populated by the edabuilder cli + type: string + readme: + description: Relative path to the README for the application described by this Manifest + type: string + screenshots: + description: Relative path to any screenshots to present in the App Store + items: + type: string + type: array + settings: + description: |- + Relative path to the OpenApi spec describing the settings that can be set on this application. + This file should be generated using edabuilder. + type: string + source: + description: Relative path to the source repository for the application described by this Manfest + type: string + srcURI: + description: Source URI that points to the source code of the application + type: string + support: + description: Relative path to the support file for the application + type: string + type: object + author: + description: Author of the application described by this Manifest + type: string + components: + description: A list of components provided in this Manifest + items: + properties: + bootstrapResource: + description: |- + Bootstrap resource provided in this component. + This may be a path to a resource, or a path to a directory containing resources. + On new namespace creation, bootstrap resources are loaded into the new namespace by default, "bootstrapping" the namespace. + properties: + path: + description: Relative path in the local application repository + type: string + required: + - path + type: object + cr: + description: Definition of a CR provided in this component + properties: + path: + description: Relative path in the local application repository + type: string + required: + - path + type: object + crd: + description: Definition of a CRD provided in this component + properties: + api: + description: Settings related to how this CRD is exposed in the API + properties: + expose: + default: readWrite + description: |- + Indicates if this Kind will be made available through the EDA API, and what REST functions will be supported + 'readWrite' maps to PUT, POST, PATCH, and DELETE. + 'read' maps to GET, LIST, HEAD. + 'none' results in the Kind not being made available in the API. + enum: + - none + - read + - readWrite + type: string + type: object + conversionScript: + description: Relative path to the conversion script for this CRD + type: string + kubernetes: + description: Define how resources for this CRD will be imported/exported to/from Kubernetes + properties: + exportPolicy: + enum: + - all + type: string + importPolicy: + description: Defines whether resources of this type will be exported to Kubernetes + enum: + - all + - spec + type: string + type: object + names: + description: |- + Names is the CRD Kind names, as specified by its CRD.spec.names field. + Automatically filled in by the edabuilder. + properties: + kind: + description: Kind is the serialized kind of the resource. It is normally CamelCase and singular. + type: string + listKind: + description: ListKind is the serialized kind of the list for this resource. Defaults to List. + type: string + plural: + description: |- + Plural is the plural name of the resource to serve. It must match the name of the CustomResourceDefinition-registration + too: plural.group and it must be all lowercase. + type: string + singular: + description: Singular is the singular name of the resource. It must be all lowercase Defaults to lowercased + type: string + required: + - kind + - listKind + - plural + - singular + type: object + namespaced: + default: true + description: If set, resources of this CRD are namespace scoped + type: boolean + path: + description: Relative path in the local application repository + type: string + resourceType: + description: |- + The type of the resource that this CRD defines. Transactional resources are processed via ConfigEngine, + Kubernetes resources are not exposed in the EDA API, and are not processed via ConfigEngine. + Use Transactional for intent-based resources, or any resources you wish EDA to persist/restore. + Use Kubernetes for resources that are managed by Kubernetes, that you do not want EDA to process in transactions or persist/restore. + enum: + - Transactional + - Kubernetes + type: string + schema: + description: Relative path to the schema to use with this CRD + type: string + ui: + description: If set, this CRD will be exposed in the UI + properties: + category: + description: Category in which to present this resource, these groups exist in the UI navigation menu + type: string + name: + description: Name to use within the category to present this resource + type: string + panel: + description: |- + Panel in which to present this resource. + 'main' renders resource under main panel. + 'system_administration' renders resource under system administration panel. + enum: + - main + - system_administration + type: string + required: + - name + type: object + workflow: + description: If set, resources of this CRD are is in workflows + type: boolean + required: + - path + type: object + dbSchema: + description: Definition of schema for EDB, referencing a table and providing JSONSchema + properties: + schema: + description: Relative path to the JSONSchema that defines the schema of the table + type: string + table: + description: Provide the name of the table in the EDB to which this schema applies, e.g. ".db.example.table" + type: string + required: + - schema + - table + type: object + script: + description: Definition of a script provided in this component + properties: + path: + description: Relative path in the local application repository + type: string + trigger: + description: The trigger used to start execution of provided script resource + properties: + kind: + description: Kind used to trigger the execution of provided script resource, e.g. Interface + type: string + required: + - kind + type: object + type: + description: The type of script + enum: + - config + - state + type: string + required: + - path + - trigger + type: object + view: + description: Definition of a UI view provided in this component + properties: + path: + description: Relative path in the local application repository + type: string + ui: + description: Settings related to how this view is presented in the UI + properties: + category: + description: Category in which to present this resource, these groups exist in the UI navigation menu + type: string + name: + description: Name to use within the category to present this resource + type: string + panel: + description: |- + Panel in which to present this resource. + 'main' renders resource under main panel. + 'system_administration' renders resource under system administration panel. + enum: + - main + - system_administration + type: string + required: + - name + type: object + required: + - path + - ui + type: object + workflow: + description: Definition of workflow provided in this component + properties: + definition: + description: Relative path to the WorkflowDefinition resource that defines this workflow + type: string + image: + description: Provide the container image to execute for this workflow + type: string + required: + - definition + - image + type: object + type: object + type: array + dependencies: + description: A list of other artifacts, images, or files this Manifest depends on + items: + properties: + artifact: + description: Definition of an artifact to be loaded in artifact server + properties: + destination: + description: Destination in the artifact server to host this artifact. This corresponds to the filePath field of an Artifact. + type: string + path: + description: Relative path in the local application repository + type: string + required: + - path + type: object + container: + description: Definition of a container image provided in this application + properties: + image: + description: OCI image to use as a source for artifacts provided in this Manifest + type: string + name: + description: Name of the container dependency + type: string + pullSecret: + description: Pull secret reference that will be populated by the app store + type: string + required: + - image + - name + type: object + file: + description: Definition of an artifact provided in this component + properties: + path: + description: Relative path in the local application repository + type: string + required: + - path + type: object + type: object + type: array + description: + description: Summary description of the application described by this Manifest + type: string + gitPathPrefix: + description: A path prefix to apply when resolving any relative paths within this Manifest in the EDA application repository + type: string + gitReference: + description: Reference to a git hash or tag within the EDA application repository at which to load resources from components in this Manifest + example: v27.3.1 or 69cd4d76c467f6f27e43f3f6284356d8941df8fb + type: string + group: + description: The Group components and their respective Kinds reside in + type: string + image: + description: OCI image to use as a source for artifacts provided in this Manifest + type: string + requirements: + description: Other applications this application depends on/interacts with + items: + properties: + appId: + description: |- + The app ID of an application that this Manifest depends on. + Note: not in use currently: use AppName and Vendor. + type: string + appName: + description: The name of an application that this Manifest depends on. + type: string + kubernetes: + description: |- + Required Kinds to be imported/exported to/from Kubernetes from this application. + This can be used by apps with Kubernetes controllers in them, that depends on other apps with CRDs. + properties: + exports: + description: List of Kinds to ensure are exported to Kubernetes. + items: + properties: + gvk: + description: The group + version + kind to apply the specified policy to + properties: + group: + description: The group of the resource to import/export + type: string + kind: + description: The kind of the resource to import/export + type: string + version: + description: The version of the resource to import/export + type: string + required: + - kind + - version + type: object + policy: + description: The policy to apply to the GVK + enum: + - all + type: string + required: + - gvk + - policy + type: object + type: array + imports: + description: List of Kinds to ensure are imported from Kubernetes. + items: + properties: + gvk: + description: The group + version + kind to apply the specified policy to + properties: + group: + description: The group of the resource to import/export + type: string + kind: + description: The kind of the resource to import/export + type: string + version: + description: The version of the resource to import/export + type: string + required: + - kind + - version + type: object + policy: + description: The policy to apply to the GVK + enum: + - all + - spec + type: string + required: + - gvk + - policy + type: object + type: array + type: object + state: + default: Present + description: The state of the dependency, either Present or Absent. + enum: + - Present + - Absent + type: string + vendor: + description: The vendor of an application that this Manifest depends on. + type: string + version: + description: |- + The version of the application this Manifest depends on or requires to be absent. + Supported values are semantic versions, basic comparisons, wildcards, e.g. v1.0.1, <=v1.0.1, >=v1.0.1, '*' (any version), v2.0.* + type: string + required: + - appName + - vendor + - version + type: object + type: array + supportedCoreVersions: + description: Supported core versions, i.e. the versions of the EDA core that this Manifest is compatible with + items: + type: string + type: array + supportedEndpoints: + description: Endpoints supported by the application described by this Manifest + items: + type: string + type: array + title: + description: Friendly name to use when displaying this Manifest, e.g. Interface + type: string + version: + description: The Version components and their respective Kinds reside in + type: string + required: + - group + - supportedCoreVersions + - title + - version + type: object + status: + description: ManifestStatus defines the observed state of Manifest + type: object + type: object +served: true +storage: true +subresources: + status: {} diff --git a/static/resources/25.8.2/memoryoverlays.components.eda.nokia.com/v1.yaml b/static/resources/25.8.2/memoryoverlays.components.eda.nokia.com/v1.yaml new file mode 100644 index 0000000..8ed1aaa --- /dev/null +++ b/static/resources/25.8.2/memoryoverlays.components.eda.nokia.com/v1.yaml @@ -0,0 +1,69 @@ +name: v1 +schema: + openAPIV3Schema: + description: MemoryOverlay is the Schema for memoryoverlays + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + description: MemoryOverlaySpec defines the desired state of MemoryOverlay + properties: + enabled: + description: Enable or disable the generation of the status of this overlay + type: boolean + topology: + description: Reference to the topology that this overlay is extending. + properties: + group: + description: The group of the application which published the topology this overlay is extending. + type: string + name: + description: The name of the resource which published the topology this overlay is extending. + type: string + version: + description: The version of the application which published the topology this overlay is extending. + type: string + required: + - group + - name + - version + type: object + uiDescription: + description: A description of the overlay to expose in the UI + type: string + uiDescriptionKey: + description: The translation key for the description of the overlay to expose in the UI + type: string + uiName: + description: The name of the overlay to expose in the UI + type: string + uiNameKey: + description: The translation key for the name of the overlay to expose in the UI + type: string + required: + - enabled + - topology + type: object + status: + description: MemoryOverlayStatus defines the observed state of MemoryOverlay + type: object + type: object +served: true +storage: true +subresources: + status: {} diff --git a/static/resources/25.8.2/mirrorfilterdeployments.filters.eda.nokia.com/v1alpha1.yaml b/static/resources/25.8.2/mirrorfilterdeployments.filters.eda.nokia.com/v1alpha1.yaml new file mode 100644 index 0000000..cd68b80 --- /dev/null +++ b/static/resources/25.8.2/mirrorfilterdeployments.filters.eda.nokia.com/v1alpha1.yaml @@ -0,0 +1,43 @@ +name: v1alpha1 +schema: + openAPIV3Schema: + description: MirrorFilterDeployment is the Schema for the mirrorfilterdeployments API + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + description: MirrorFilterDeploymentSpec defines the desired state of MirrorFilterDeployment + properties: + filter: + description: Specifies a filter to deploy on the specified Node + type: string + node: + description: Specifies a Node to deploy this filter on + type: string + required: + - filter + - node + type: object + status: + description: MirrorFilterDeploymentStatus defines the observed state of MirrorFilterDeployment + type: object + type: object +served: true +storage: true +subresources: + status: {} diff --git a/static/resources/25.8.2/mirrorfilters.filters.eda.nokia.com/v1alpha1.yaml b/static/resources/25.8.2/mirrorfilters.filters.eda.nokia.com/v1alpha1.yaml new file mode 100644 index 0000000..5ac5b5d --- /dev/null +++ b/static/resources/25.8.2/mirrorfilters.filters.eda.nokia.com/v1alpha1.yaml @@ -0,0 +1,558 @@ +name: v1alpha1 +schema: + openAPIV3Schema: + description: MirrorFilter is the Schema for the mirrorfilters API + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + description: MirrorFilter specifies a list of filtering rules for mirroring network traffic. The resource allows for the creation of ordered filter entries based on IP criteria, providing flexibility in traffic mirroring configurations. + properties: + entries: + description: Specifies the list of filter entries, in order. + items: + properties: + description: + description: Description of the FilterEntry. + type: string + ipEntry: + properties: + action: + description: An action to take, either 'Accept','Drop', or 'RateLimit'. + enum: + - Drop + - Accept + - RateLimit + type: string + destinationPortName: + description: Destination port to match by name. + enum: + - ACAP + - AFP-TCP + - ARNS + - ASF-RMCP + - ASHARE + - ATALK-RM + - AURP + - AUTH + - BFD + - BFD-ECHO + - BFTP + - BGMP + - BGP + - BOOTPC + - BOOTPS + - CCSO-NS + - CHARGEN + - CISCO-TDP + - CITADEL + - CLEARCASE + - COMMERCE + - COURIER + - DAYTIME + - DHCP-FAILOVER + - DHCPV6-CLIENT + - DHCPV6-SERVER + - DICOM + - DISCARD + - DNSIX + - DOMAIN + - DSP + - ECHO + - EPP + - ESRO + - EXEC + - FINGER + - FTP + - FTP-DATA + - FTPS + - FTPS-DATA + - GODI + - GOPHER + - GTP-C + - GTP-PRIME + - GTP-U + - HA-CLUSTER + - HOSTNAME + - HP-ALARM-MGR + - HTTP + - HTTP-ALT + - HTTP-MGMT + - HTTP-RPC + - HTTPS + - IEEE-MMS-SSL + - IMAP + - IMAP3 + - IMAPS + - IPP + - IPSEC + - IPX + - IRC + - IRIS-BEEP + - ISAKMP + - ISAKMP-NAT + - ISCSI + - ISO-TSAP + - KERBEROS + - KERBEROS-ADM + - KLOGIN + - KPASSWD + - KSHELL + - L2TP + - LDAP + - LDAPS + - LDP + - LMP + - LOGIN + - LPD + - LSP-PING + - MAC-SERVER-ADM + - MATIP-A + - MATIP-B + - MICRO-BFD + - MICROSOFT-DS + - MOBILE-IP + - MONITOR + - MPP + - MS-EXCHANGE + - MSDP + - MSP + - MSSQL-M + - MSSQL-S + - MULTIHOP-BFD + - NAS + - NCP + - NETBIOS-DATA + - NETBIOS-NS + - NETBIOS-SS + - NETNEWS + - NETRJS-1 + - NETRJS-2 + - NETRJS-3 + - NETRJS-4 + - NETWALL + - NEW-RWHO + - NFS + - NNTP + - NNTPS + - NTP + - ODMR + - OLSR + - OPENVPN + - PIM-AUTO-RP + - PKIX-TIMESTAMP + - POP2 + - POP3 + - POP3S + - PPTP + - PRINT-SRV + - PTP-EVENT + - PTP-GENERAL + - QMTP + - QOTD + - RADIUS + - RADIUS-ACCT + - REMOTE-MAIL + - REMOTEFS + - REMOTECMD + - RIP + - RJE + - RLP + - RLZDB + - RMC + - RMONITOR + - RPC2PORTMAP + - RSYNC + - RTELNET + - RTSP + - SGMP + - SILC + - SMUX + - SNA-GW + - SNMP + - SNMP-TRAP + - SNPP + - SMTP + - SQL-SVCS + - SQL + - SSH + - SUBMISSION + - SUNRPC + - SVCLOC + - SYSLOG + - SYSTAT + - TACACS + - TALK + - TCPMUX + - TCPNETHASPSRV + - TFTP + - TIME + - TIMED + - UPS + - XDMCP + - XNS-CH + - XNS-MAIL + - XNS-TIME + - Z3950 + type: string + destinationPortNumber: + description: Destination port to match by numerical value. + maximum: 65535 + minimum: 0 + type: integer + destinationPortOperator: + description: Operator to use when matching destinationPort, either Equals, GreaterOrEquals, or LessOrEquals. + enum: + - Equals + - GreaterOrEquals + - LessOrEquals + type: string + destinationPortRange: + description: Range of destination ports to match, in the format n-m, e.g. 100-200, The start and end of the range must be port numbers. + type: string + destinationPrefix: + description: Destination prefix to match. + type: string + firstFragment: + description: Match the first fragment only. + type: boolean + fragment: + description: Match any fragment. + type: boolean + icmpCode: + description: Match a specific ICMP code, as a number between 0-255, e.g. 0. + items: + type: integer + maxItems: 255 + minItems: 0 + type: array + icmpTypeName: + description: Match a specific ICMP type by name, e.g. dest-unreachable. + enum: + - DestUnreachable + - Echo + - EchoReply + - EchoRequest + - McastRtrAdv + - McastRtrSolicit + - McastRtrTerm + - MldDone + - MldQuery + - MldReport + - MldV2 + - NeighborAdvertise + - NeighborSolicit + - NodeInfoQuery + - NodeInfoResponse + - PacketTooBig + - ParamProblem + - Redirect + - RouterAdvertise + - RouterRenumber + - RouterSolicit + - SourceQuench + - TimeExceeded + - Timestamp + - TimestampReply + type: string + icmpTypeNumber: + description: Match a specific ICMP type by number. + maximum: 255 + minimum: 0 + type: integer + log: + description: Log the matches for this entry. + type: boolean + protocolName: + description: Match a specific IP protocol name (specified in the type field of the IP header). + enum: + - AH + - EGP + - EIGRP + - ESP + - GGP + - GRE + - ICMP + - ICMP6 + - IDRP + - IGMP + - IGP + - IPV4 + - IPV6 + - IPV6-DEST-OPTS + - IPV6-HOP + - L2TP + - MPLS-IN-IP + - NO-NEXT-HDR + - OSPF + - PIM + - ROHC + - RSVP + - SCTP + - ST + - TCP + - UDP + - VRRP + type: string + protocolNumber: + description: Match a specific IP protocol number (specified in the type field of the IP header). + maximum: 255 + minimum: 0 + type: integer + rateLimit: + description: Rate limit to apply when the action is 'RateLimit'. + properties: + burstSize: + description: The maximum burst size in bytes. + format: int32 + type: integer + entrySpecificPolicer: + default: false + description: 'Controls policer instantiation: false for shared instance, true for per-entry instances' + type: boolean + peakRate: + description: The peak rate in kilobytes per second. + format: int32 + type: integer + scope: + default: Global + description: Determines how the policer is applied across subinterfaces. Global applies the policer across all subinterfaces, while Subinterface applies it individually to each subinterface. + enum: + - Global + - Subinterface + type: string + type: object + sourcePortName: + description: Source port to match by name. + enum: + - ACAP + - AFP-TCP + - ARNS + - ASF-RMCP + - ASHARE + - ATALK-RM + - AURP + - AUTH + - BFD + - BFD-ECHO + - BFTP + - BGMP + - BGP + - BOOTPC + - BOOTPS + - CCSO-NS + - CHARGEN + - CISCO-TDP + - CITADEL + - CLEARCASE + - COMMERCE + - COURIER + - DAYTIME + - DHCP-FAILOVER + - DHCPV6-CLIENT + - DHCPV6-SERVER + - DICOM + - DISCARD + - DNSIX + - DOMAIN + - DSP + - ECHO + - EPP + - ESRO + - EXEC + - FINGER + - FTP + - FTP-DATA + - FTPS + - FTPS-DATA + - GODI + - GOPHER + - GTP-C + - GTP-PRIME + - GTP-U + - HA-CLUSTER + - HOSTNAME + - HP-ALARM-MGR + - HTTP + - HTTP-ALT + - HTTP-MGMT + - HTTP-RPC + - HTTPS + - IEEE-MMS-SSL + - IMAP + - IMAP3 + - IMAPS + - IPP + - IPSEC + - IPX + - IRC + - IRIS-BEEP + - ISAKMP + - ISAKMP-NAT + - ISCSI + - ISO-TSAP + - KERBEROS + - KERBEROS-ADM + - KLOGIN + - KPASSWD + - KSHELL + - L2TP + - LDAP + - LDAPS + - LDP + - LMP + - LOGIN + - LPD + - LSP-PING + - MAC-SERVER-ADM + - MATIP-A + - MATIP-B + - MICRO-BFD + - MICROSOFT-DS + - MOBILE-IP + - MONITOR + - MPP + - MS-EXCHANGE + - MSDP + - MSP + - MSSQL-M + - MSSQL-S + - MULTIHOP-BFD + - NAS + - NCP + - NETBIOS-DATA + - NETBIOS-NS + - NETBIOS-SS + - NETNEWS + - NETRJS-1 + - NETRJS-2 + - NETRJS-3 + - NETRJS-4 + - NETWALL + - NEW-RWHO + - NFS + - NNTP + - NNTPS + - NTP + - ODMR + - OLSR + - OPENVPN + - PIM-AUTO-RP + - PKIX-TIMESTAMP + - POP2 + - POP3 + - POP3S + - PPTP + - PRINT-SRV + - PTP-EVENT + - PTP-GENERAL + - QMTP + - QOTD + - RADIUS + - RADIUS-ACCT + - REMOTE-MAIL + - REMOTEFS + - REMOTECMD + - RIP + - RJE + - RLP + - RLZDB + - RMC + - RMONITOR + - RPC2PORTMAP + - RSYNC + - RTELNET + - RTSP + - SGMP + - SILC + - SMUX + - SNA-GW + - SNMP + - SNMP-TRAP + - SNPP + - SMTP + - SQL-SVCS + - SQL + - SSH + - SUBMISSION + - SUNRPC + - SVCLOC + - SYSLOG + - SYSTAT + - TACACS + - TALK + - TCPMUX + - TCPNETHASPSRV + - TFTP + - TIME + - TIMED + - UPS + - XDMCP + - XNS-CH + - XNS-MAIL + - XNS-TIME + - Z3950 + type: string + sourcePortNumber: + description: Source port to match by numerical value. + maximum: 65535 + minimum: 0 + type: integer + sourcePortOperator: + description: Operator to use when matching sourcePort, either Equals, GreaterOrEquals, or LessOrEquals. + enum: + - Equals + - GreaterOrEquals + - LessOrEquals + type: string + sourcePortRange: + description: Range of source ports to match, in the format n-m, e.g. 100-200. The start and end of the range must be port numbers. + type: string + sourcePrefix: + description: Source prefix to match. + type: string + tcpFlags: + description: Match TCP flags, usable with !, &, | and the flags RST, SYN, and ACK. + type: string + type: object + type: + default: Auto + description: Type of the entry which can be IPV4, IPV6 or Auto. + enum: + - IPV4 + - IPV6 + - Auto + type: string + required: + - type + type: object + type: array + statisticsPerEntry: + description: Enable or disable per-entry counters. + type: boolean + required: + - entries + type: object + status: + description: MirrorFilterStatus defines the observed state of MirrorFilter + type: object + type: object +served: true +storage: true +subresources: + status: {} diff --git a/static/resources/25.8.2/mirrors.oam.eda.nokia.com/v1alpha1.yaml b/static/resources/25.8.2/mirrors.oam.eda.nokia.com/v1alpha1.yaml new file mode 100644 index 0000000..e39cff3 --- /dev/null +++ b/static/resources/25.8.2/mirrors.oam.eda.nokia.com/v1alpha1.yaml @@ -0,0 +1,759 @@ +additionalPrinterColumns: + - jsonPath: .status.lastChange + name: Last Change + type: date + - jsonPath: .status.operationalState + name: Operational State + type: string +name: v1alpha1 +schema: + openAPIV3Schema: + description: Mirror is the Schema for the mirrors API + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + description: Mirror allows for the configuration of mirroring sources, including interfaces, subinterfaces, and filters, as well as the destination for the mirrored traffic, which can be either local or remote. + properties: + localDestination: + description: Local destination for the mirror, there can only be either a remote destination or local destination provisioned for a Mirror. + properties: + interface: + description: Reference to an Interface resource to send the mirrored traffic to. This must be on the same Node as the source. + type: string + vlanID: + description: Single value between 0-4094 support, or the special keyword untagged. + type: string + type: object + remoteDestination: + description: Remote destination for the mirror, there can only be either a remote destination or local destination provisioned for a Mirror. + properties: + defaultRouter: + description: Specifies the DefaultRouter to reach the remote destination of the mirror, a Router and DefaultRouter reference cannot be set at the same time. + type: string + destinationIP: + description: Remote destination IP address. When a remote destination is used for the mirror, the destinationIP is mandatory. + type: string + encapsulation: + enum: + - L2OGRE + - L3OGRE + type: string + router: + description: Specifies the Router to reach the remote destination of the mirror, a Router and DefaultRouter reference cannot be set at the same time. + type: string + sourceIP: + description: Source IP to use when sending a mirror to a remote destination. When a remote destination us used for the mirror, the sourceIP is mandatory. + type: string + type: object + sources: + description: Mirror sources. + properties: + direction: + description: The direction of the traffic being mirrored. + enum: + - Ingress + - Egress + - IngressEgress + type: string + filters: + items: + properties: + filter: + description: Emittes an MirrorFilter and uses the filter as a source for the Mirror. + properties: + entries: + description: Specifies the list of filter entries, in order. + items: + properties: + description: + description: Description of the FilterEntry. + type: string + ipEntry: + properties: + action: + description: An action to take, either 'Accept','Drop', or 'RateLimit'. + enum: + - Drop + - Accept + - RateLimit + type: string + destinationPortName: + description: Destination port to match by name. + enum: + - ACAP + - AFP-TCP + - ARNS + - ASF-RMCP + - ASHARE + - ATALK-RM + - AURP + - AUTH + - BFD + - BFD-ECHO + - BFTP + - BGMP + - BGP + - BOOTPC + - BOOTPS + - CCSO-NS + - CHARGEN + - CISCO-TDP + - CITADEL + - CLEARCASE + - COMMERCE + - COURIER + - DAYTIME + - DHCP-FAILOVER + - DHCPV6-CLIENT + - DHCPV6-SERVER + - DICOM + - DISCARD + - DNSIX + - DOMAIN + - DSP + - ECHO + - EPP + - ESRO + - EXEC + - FINGER + - FTP + - FTP-DATA + - FTPS + - FTPS-DATA + - GODI + - GOPHER + - GTP-C + - GTP-PRIME + - GTP-U + - HA-CLUSTER + - HOSTNAME + - HP-ALARM-MGR + - HTTP + - HTTP-ALT + - HTTP-MGMT + - HTTP-RPC + - HTTPS + - IEEE-MMS-SSL + - IMAP + - IMAP3 + - IMAPS + - IPP + - IPSEC + - IPX + - IRC + - IRIS-BEEP + - ISAKMP + - ISAKMP-NAT + - ISCSI + - ISO-TSAP + - KERBEROS + - KERBEROS-ADM + - KLOGIN + - KPASSWD + - KSHELL + - L2TP + - LDAP + - LDAPS + - LDP + - LMP + - LOGIN + - LPD + - LSP-PING + - MAC-SERVER-ADM + - MATIP-A + - MATIP-B + - MICRO-BFD + - MICROSOFT-DS + - MOBILE-IP + - MONITOR + - MPP + - MS-EXCHANGE + - MSDP + - MSP + - MSSQL-M + - MSSQL-S + - MULTIHOP-BFD + - NAS + - NCP + - NETBIOS-DATA + - NETBIOS-NS + - NETBIOS-SS + - NETNEWS + - NETRJS-1 + - NETRJS-2 + - NETRJS-3 + - NETRJS-4 + - NETWALL + - NEW-RWHO + - NFS + - NNTP + - NNTPS + - NTP + - ODMR + - OLSR + - OPENVPN + - PIM-AUTO-RP + - PKIX-TIMESTAMP + - POP2 + - POP3 + - POP3S + - PPTP + - PRINT-SRV + - PTP-EVENT + - PTP-GENERAL + - QMTP + - QOTD + - RADIUS + - RADIUS-ACCT + - REMOTE-MAIL + - REMOTEFS + - REMOTECMD + - RIP + - RJE + - RLP + - RLZDB + - RMC + - RMONITOR + - RPC2PORTMAP + - RSYNC + - RTELNET + - RTSP + - SGMP + - SILC + - SMUX + - SNA-GW + - SNMP + - SNMP-TRAP + - SNPP + - SMTP + - SQL-SVCS + - SQL + - SSH + - SUBMISSION + - SUNRPC + - SVCLOC + - SYSLOG + - SYSTAT + - TACACS + - TALK + - TCPMUX + - TCPNETHASPSRV + - TFTP + - TIME + - TIMED + - UPS + - XDMCP + - XNS-CH + - XNS-MAIL + - XNS-TIME + - Z3950 + type: string + destinationPortNumber: + description: Destination port to match by numerical value. + maximum: 65535 + minimum: 0 + type: integer + destinationPortOperator: + description: Operator to use when matching destinationPort, either Equals, GreaterOrEquals, or LessOrEquals. + enum: + - Equals + - GreaterOrEquals + - LessOrEquals + type: string + destinationPortRange: + description: Range of destination ports to match, in the format n-m, e.g. 100-200, The start and end of the range must be port numbers. + type: string + destinationPrefix: + description: Destination prefix to match. + type: string + firstFragment: + description: Match the first fragment only. + type: boolean + fragment: + description: Match any fragment. + type: boolean + icmpCode: + description: Match a specific ICMP code, as a number between 0-255, e.g. 0. + items: + type: integer + maxItems: 255 + minItems: 0 + type: array + icmpTypeName: + description: Match a specific ICMP type by name, e.g. dest-unreachable. + enum: + - DestUnreachable + - Echo + - EchoReply + - EchoRequest + - McastRtrAdv + - McastRtrSolicit + - McastRtrTerm + - MldDone + - MldQuery + - MldReport + - MldV2 + - NeighborAdvertise + - NeighborSolicit + - NodeInfoQuery + - NodeInfoResponse + - PacketTooBig + - ParamProblem + - Redirect + - RouterAdvertise + - RouterRenumber + - RouterSolicit + - SourceQuench + - TimeExceeded + - Timestamp + - TimestampReply + type: string + icmpTypeNumber: + description: Match a specific ICMP type by number. + maximum: 255 + minimum: 0 + type: integer + log: + description: Log the matches for this entry. + type: boolean + protocolName: + description: Match a specific IP protocol name (specified in the type field of the IP header). + enum: + - AH + - EGP + - EIGRP + - ESP + - GGP + - GRE + - ICMP + - ICMP6 + - IDRP + - IGMP + - IGP + - IPV4 + - IPV6 + - IPV6-DEST-OPTS + - IPV6-HOP + - L2TP + - MPLS-IN-IP + - NO-NEXT-HDR + - OSPF + - PIM + - ROHC + - RSVP + - SCTP + - ST + - TCP + - UDP + - VRRP + type: string + protocolNumber: + description: Match a specific IP protocol number (specified in the type field of the IP header). + maximum: 255 + minimum: 0 + type: integer + rateLimit: + description: Rate limit to apply when the action is 'RateLimit'. + properties: + burstSize: + description: The maximum burst size in bytes. + format: int32 + type: integer + entrySpecificPolicer: + default: false + description: 'Controls policer instantiation: false for shared instance, true for per-entry instances' + type: boolean + peakRate: + description: The peak rate in kilobytes per second. + format: int32 + type: integer + scope: + default: Global + description: Determines how the policer is applied across subinterfaces. Global applies the policer across all subinterfaces, while Subinterface applies it individually to each subinterface. + enum: + - Global + - Subinterface + type: string + type: object + sourcePortName: + description: Source port to match by name. + enum: + - ACAP + - AFP-TCP + - ARNS + - ASF-RMCP + - ASHARE + - ATALK-RM + - AURP + - AUTH + - BFD + - BFD-ECHO + - BFTP + - BGMP + - BGP + - BOOTPC + - BOOTPS + - CCSO-NS + - CHARGEN + - CISCO-TDP + - CITADEL + - CLEARCASE + - COMMERCE + - COURIER + - DAYTIME + - DHCP-FAILOVER + - DHCPV6-CLIENT + - DHCPV6-SERVER + - DICOM + - DISCARD + - DNSIX + - DOMAIN + - DSP + - ECHO + - EPP + - ESRO + - EXEC + - FINGER + - FTP + - FTP-DATA + - FTPS + - FTPS-DATA + - GODI + - GOPHER + - GTP-C + - GTP-PRIME + - GTP-U + - HA-CLUSTER + - HOSTNAME + - HP-ALARM-MGR + - HTTP + - HTTP-ALT + - HTTP-MGMT + - HTTP-RPC + - HTTPS + - IEEE-MMS-SSL + - IMAP + - IMAP3 + - IMAPS + - IPP + - IPSEC + - IPX + - IRC + - IRIS-BEEP + - ISAKMP + - ISAKMP-NAT + - ISCSI + - ISO-TSAP + - KERBEROS + - KERBEROS-ADM + - KLOGIN + - KPASSWD + - KSHELL + - L2TP + - LDAP + - LDAPS + - LDP + - LMP + - LOGIN + - LPD + - LSP-PING + - MAC-SERVER-ADM + - MATIP-A + - MATIP-B + - MICRO-BFD + - MICROSOFT-DS + - MOBILE-IP + - MONITOR + - MPP + - MS-EXCHANGE + - MSDP + - MSP + - MSSQL-M + - MSSQL-S + - MULTIHOP-BFD + - NAS + - NCP + - NETBIOS-DATA + - NETBIOS-NS + - NETBIOS-SS + - NETNEWS + - NETRJS-1 + - NETRJS-2 + - NETRJS-3 + - NETRJS-4 + - NETWALL + - NEW-RWHO + - NFS + - NNTP + - NNTPS + - NTP + - ODMR + - OLSR + - OPENVPN + - PIM-AUTO-RP + - PKIX-TIMESTAMP + - POP2 + - POP3 + - POP3S + - PPTP + - PRINT-SRV + - PTP-EVENT + - PTP-GENERAL + - QMTP + - QOTD + - RADIUS + - RADIUS-ACCT + - REMOTE-MAIL + - REMOTEFS + - REMOTECMD + - RIP + - RJE + - RLP + - RLZDB + - RMC + - RMONITOR + - RPC2PORTMAP + - RSYNC + - RTELNET + - RTSP + - SGMP + - SILC + - SMUX + - SNA-GW + - SNMP + - SNMP-TRAP + - SNPP + - SMTP + - SQL-SVCS + - SQL + - SSH + - SUBMISSION + - SUNRPC + - SVCLOC + - SYSLOG + - SYSTAT + - TACACS + - TALK + - TCPMUX + - TCPNETHASPSRV + - TFTP + - TIME + - TIMED + - UPS + - XDMCP + - XNS-CH + - XNS-MAIL + - XNS-TIME + - Z3950 + type: string + sourcePortNumber: + description: Source port to match by numerical value. + maximum: 65535 + minimum: 0 + type: integer + sourcePortOperator: + description: Operator to use when matching sourcePort, either Equals, GreaterOrEquals, or LessOrEquals. + enum: + - Equals + - GreaterOrEquals + - LessOrEquals + type: string + sourcePortRange: + description: Range of source ports to match, in the format n-m, e.g. 100-200. The start and end of the range must be port numbers. + type: string + sourcePrefix: + description: Source prefix to match. + type: string + tcpFlags: + description: Match TCP flags, usable with !, &, | and the flags RST, SYN, and ACK. + type: string + type: object + type: + default: Auto + description: Type of the entry which can be IPV4, IPV6 or Auto. + enum: + - IPV4 + - IPV6 + - Auto + type: string + required: + - type + type: object + type: array + statisticsPerEntry: + description: Enable or disable per-entry counters. + type: boolean + required: + - entries + type: object + subinterfaces: + description: Subinterfaces on which to deploy the IPFilter to use as a source for the Mirror. + properties: + bridgeInterfaces: + description: List of BridgeInterfaces, all traffic from all BridgeInterfaces in the list will be used as sources to be mirrored. A combination of VLANs, BridgeInterfaces and subinterfaces can be configured as sources together. + items: + type: string + type: array + subinterfaces: + description: List of Interfaces and subinterface indices + items: + properties: + index: + description: Index of the sub-interface. This is ignored on a node running SROS. + type: integer + interfaceName: + description: Reference to an Interface resource, the combination of the Interface and the specified subinterface index will build the subinterface to be used as a source of traffic to be mirrored. A combination of VLANs, BridgeInterfaces and subinterfaces can be configured as sources together. + type: string + vlan: + description: Reference to the VLAN resource under which the sub-interface is configured. This is mandatory when the sub-interface is on a node running SROS and ignored for all other node operating systems. + type: string + required: + - interfaceName + type: object + type: array + vlans: + description: List of VLAN resources, all subinterfaces attached to the VLAN will be used as sources to be mirrored. A combination of VLANs, BridgeInterfaces and subinterfaces can be configured as sources together. + items: + type: string + type: array + type: object + type: object + type: array + interfaces: + description: Reference to an Interface resource to be mirrored. Traffic from the entire Interface will be mirrored for any selected Interfaces. + properties: + interfaceSelector: + description: Select Interfaces using a label selector to be mirrored. Traffic from the entire Interface will be mirrored for any selected Interfaces. If both a label selector is used and a list of Interfaces is provided, a combination of all selected and provided interfaces will be mirrored. + items: + type: string + type: array + interfaces: + description: List of Interfaces to be mirrored. Traffic from the entire Interface will be mirrored for any selected Interfaces. If both a label selector is used and a list of Interfaces is provided, a combination of all selected and provided interfaces will be mirrored. + items: + type: string + type: array + type: object + subinterfaces: + properties: + bridgeInterfaces: + description: List of BridgeInterfaces, all traffic from all BridgeInterfaces in the list will be used as sources to be mirrored. A combination of VLANs, BridgeInterfaces and subinterfaces can be configured as sources together. + items: + type: string + type: array + subinterfaces: + description: List of Interfaces and subinterface indices + items: + properties: + index: + description: Index of the sub-interface. This is ignored on a node running SROS. + type: integer + interfaceName: + description: Reference to an Interface resource, the combination of the Interface and the specified subinterface index will build the subinterface to be used as a source of traffic to be mirrored. A combination of VLANs, BridgeInterfaces and subinterfaces can be configured as sources together. + type: string + vlan: + description: Reference to the VLAN resource under which the sub-interface is configured. This is mandatory when the sub-interface is on a node running SROS and ignored for all other node operating systems. + type: string + required: + - interfaceName + type: object + type: array + vlans: + description: List of VLAN resources, all subinterfaces attached to the VLAN will be used as sources to be mirrored. A combination of VLANs, BridgeInterfaces and subinterfaces can be configured as sources together. + items: + type: string + type: array + type: object + required: + - direction + type: object + required: + - sources + type: object + status: + description: MirrorStatus defines the observed state of Mirror + properties: + lastChange: + description: Indicates when this SubInterface last changed state. + type: string + mirrorID: + description: Mirror Identifier used as the name of the mirror. + type: string + numActiveInterfaces: + description: Total number of active Interfaces used as sources of the mirror. + type: integer + numActiveSubinterfaces: + description: Total number of active subinterfaces used as sources of the mirror. + type: integer + numActiveV4FilterSubinterfaces: + description: Total number of active subinterfaces used as sources of the mirror derived from IPV4Filter associations. + type: integer + numActiveV6FilterSubinterfaces: + description: Total number of active subinterfaces used as sources of the mirror derived from IPV6Filter associations. + type: integer + numActiveVLANSubinterfaces: + description: Total number of active subinterfaces used as sources of the mirror derived from VLAN resource references. + type: integer + numberActiveBridgeInterfaces: + description: Total number of active subinterfaces used as sources of the mirror derived from BridgeInterface resource references. + type: integer + operationalState: + description: Indicates the current operational state of the Mirror instance. + type: string + subinterfaces: + description: List of members in this Interface. + items: + properties: + configuredSource: + description: Indicates what is driving the particular subinterface to be selected as a mirror source. + enum: + - VLAN + - BridgeInterface + - Subinterface + - Interface + - FilterV4 + - FilterV6 + type: string + interface: + description: Node specific interface name. + type: string + node: + description: Reference to Node object. + type: string + operatingSystem: + description: Operating System of the Node. + type: string + subinterfaceIndex: + description: Index allocated to the subinterface which is being mirrored. If an interface is used as a source, this will not be set. + type: integer + vlanID: + description: vlan assigned to this subinterface. + type: string + required: + - configuredSource + - interface + - node + - operatingSystem + type: object + type: array + type: object + type: object +served: true +storage: true +subresources: + status: {} diff --git a/static/resources/25.8.2/mirrorstates.oam.eda.nokia.com/v1alpha1.yaml b/static/resources/25.8.2/mirrorstates.oam.eda.nokia.com/v1alpha1.yaml new file mode 100644 index 0000000..091e18c --- /dev/null +++ b/static/resources/25.8.2/mirrorstates.oam.eda.nokia.com/v1alpha1.yaml @@ -0,0 +1,73 @@ +name: v1alpha1 +schema: + openAPIV3Schema: + description: MirrorState is the Schema for the mirrorstates API + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + description: MirrorStateSpec defines the desired state of MirrorState + properties: + mirrorID: + description: Mirror Identifier used as the name of the mirror + type: string + subinterfaces: + description: List of members in this Interface + items: + properties: + configuredSource: + description: Indicates what is driving the particular subinterface to be selected as a mirror source. + enum: + - VLAN + - BridgeInterface + - Subinterface + - Interface + - FilterV4 + - FilterV6 + type: string + interface: + description: Node specific interface name. + type: string + node: + description: Reference to Node object. + type: string + operatingSystem: + description: Operating System of the Node. + type: string + subinterfaceIndex: + description: Index allocated to the subinterface which is being mirrored. If an interface is used as a source, this will not be set. + type: integer + vlanID: + description: vlan assigned to this subinterface. + type: string + required: + - configuredSource + - interface + - node + - operatingSystem + type: object + type: array + type: object + status: + description: MirrorStateStatus defines the observed state of MirrorState + type: object + type: object +served: true +storage: true +subresources: + status: {} diff --git a/static/resources/25.8.2/monitoraggregatestates.components.eda.nokia.com/v1.yaml b/static/resources/25.8.2/monitoraggregatestates.components.eda.nokia.com/v1.yaml new file mode 100644 index 0000000..b74454e --- /dev/null +++ b/static/resources/25.8.2/monitoraggregatestates.components.eda.nokia.com/v1.yaml @@ -0,0 +1,39 @@ +name: v1 +schema: + openAPIV3Schema: + description: MonitorAggregateState is the Schema for the monitoraggregatestates API + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + description: MonitorAggregateStateSpec defines the desired state of MonitorAggregateState + properties: + targets: + description: List of targets monitored by this instance + items: + type: string + type: array + type: object + status: + description: MonitorAggregateStateStatus defines the observed state of MonitorAggregateState + type: object + type: object +served: true +storage: true +subresources: + status: {} diff --git a/static/resources/25.8.2/monitoraggregatestates.system.eda.nokia.com/v1alpha1.yaml b/static/resources/25.8.2/monitoraggregatestates.system.eda.nokia.com/v1alpha1.yaml new file mode 100644 index 0000000..0189420 --- /dev/null +++ b/static/resources/25.8.2/monitoraggregatestates.system.eda.nokia.com/v1alpha1.yaml @@ -0,0 +1,39 @@ +name: v1alpha1 +schema: + openAPIV3Schema: + description: MonitorAggregateState is the Schema for the monitoraggregatestates API + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + description: MonitorAggregateStateSpec defines the desired state of MonitorAggregateState + properties: + nodes: + description: List of TopoNodes monitored by this instance + items: + type: string + type: array + type: object + status: + description: MonitorAggregateStateStatus defines the observed state of MonitorAggregateState + type: object + type: object +served: true +storage: true +subresources: + status: {} diff --git a/static/resources/25.8.2/monitors.components.eda.nokia.com/v1.yaml b/static/resources/25.8.2/monitors.components.eda.nokia.com/v1.yaml new file mode 100644 index 0000000..eb5e3dc --- /dev/null +++ b/static/resources/25.8.2/monitors.components.eda.nokia.com/v1.yaml @@ -0,0 +1,182 @@ +name: v1 +schema: + openAPIV3Schema: + description: Monitor is the Schema for the monitors API + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + description: MonitorSpec defines the desired state of Monitor + properties: + cpu: + description: CPU monitoring for targets matching this Monitor. + properties: + enabled: + default: true + description: Enable or disable CPU monitoring. + type: boolean + utilization: + description: Parameters relating to CPU utilization monitoring. + properties: + criticalThreshold: + default: 95 + description: |- + The minimum average utilization over the last 1 minute to trigger a critical alarm. + This value must be greater than the majorThreshold. + maximum: 100 + minimum: 1 + type: integer + fallingDelta: + default: 5 + description: |- + The delta in which a triggered threshold must drop below to clear an alarm. + For example, with a criticalThreshold of 90 and a fallingDelta of 5, the critical alarm will clear when the utilization drops below 85. + maximum: 25 + minimum: 1 + type: integer + majorThreshold: + default: 90 + description: |- + The minimum average utilization over the last 1 minute to trigger a major alarm. + This value must be greater than the minorThreshold. + maximum: 100 + minimum: 1 + type: integer + minorThreshold: + default: 80 + description: The minimum average utilization over the last 1 minute to trigger a minor alarm. + maximum: 100 + minimum: 1 + type: integer + type: object + required: + - enabled + type: object + memory: + description: Memory monitoring for targets matching this Monitor. + properties: + enabled: + default: true + description: Enable or disable memory monitoring. + type: boolean + utilization: + description: Parameters relating to memory utilization monitoring. + properties: + criticalThreshold: + default: 95 + description: |- + The minimum average utilization over the last 1 minute to trigger a critical alarm. + This value must be greater than the majorThreshold. + maximum: 100 + minimum: 1 + type: integer + fallingDelta: + default: 5 + description: |- + The delta in which a triggered threshold must drop below to clear an alarm. + For example, with a criticalThreshold of 90 and a fallingDelta of 5, the critical alarm will clear when the utilization drops below 85. + maximum: 25 + minimum: 1 + type: integer + majorThreshold: + default: 90 + description: |- + The minimum average utilization over the last 1 minute to trigger a major alarm. + This value must be greater than the minorThreshold. + maximum: 100 + minimum: 1 + type: integer + minorThreshold: + default: 80 + description: The minimum average utilization over the last 1 minute to trigger a minor alarm. + maximum: 100 + minimum: 1 + type: integer + type: object + required: + - enabled + type: object + targetSelector: + description: Selector to use when including targets to monitor. + items: + type: string + type: array + targets: + description: References to targets to monitor. + items: + type: string + type: array + volume: + description: Volume monitoring for targets matching this Monitor. + properties: + enabled: + default: true + description: Enable or disable volume monitoring. + type: boolean + utilization: + description: Parameters relating to volume utilization monitoring. + properties: + criticalThreshold: + default: 95 + description: |- + The minimum average utilization over the last 1 minute to trigger a critical alarm. + This value must be greater than the majorThreshold. + maximum: 100 + minimum: 1 + type: integer + fallingDelta: + default: 5 + description: |- + The delta in which a triggered threshold must drop below to clear an alarm. + For example, with a criticalThreshold of 90 and a fallingDelta of 5, the critical alarm will clear when the utilization drops below 85. + maximum: 25 + minimum: 1 + type: integer + majorThreshold: + default: 90 + description: |- + The minimum average utilization over the last 1 minute to trigger a major alarm. + This value must be greater than the minorThreshold. + maximum: 100 + minimum: 1 + type: integer + minorThreshold: + default: 80 + description: The minimum average utilization over the last 1 minute to trigger a minor alarm. + maximum: 100 + minimum: 1 + type: integer + type: object + required: + - enabled + type: object + type: object + status: + description: MonitorStatus defines the observed state of Monitor + properties: + targets: + description: Targets being monitored. + items: + type: string + type: array + type: object + type: object +served: true +storage: true +subresources: + status: {} diff --git a/static/resources/25.8.2/monitors.system.eda.nokia.com/v1alpha1.yaml b/static/resources/25.8.2/monitors.system.eda.nokia.com/v1alpha1.yaml new file mode 100644 index 0000000..7b22ea8 --- /dev/null +++ b/static/resources/25.8.2/monitors.system.eda.nokia.com/v1alpha1.yaml @@ -0,0 +1,182 @@ +name: v1alpha1 +schema: + openAPIV3Schema: + description: Monitor is the Schema for the monitors API + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + description: MonitorSpec defines the desired state of Monitor + properties: + cpu: + description: CPU monitoring for targets matching this Monitor. + properties: + enabled: + default: true + description: Enable or disable CPU monitoring. + type: boolean + utilization: + description: Parameters relating to CPU utilization monitoring. + properties: + criticalThreshold: + default: 95 + description: |- + The minimum average utilization over the last 1 minute to trigger a critical alarm. + This value must be greater than the majorThreshold. + maximum: 100 + minimum: 1 + type: integer + fallingDelta: + default: 5 + description: |- + The delta in which a triggered threshold must drop below to clear an alarm. + For example, with a criticalThreshold of 90 and a fallingDelta of 5, the critical alarm will clear when the utilization drops below 85. + maximum: 25 + minimum: 1 + type: integer + majorThreshold: + default: 90 + description: |- + The minimum average utilization over the last 1 minute to trigger a major alarm. + This value must be greater than the minorThreshold. + maximum: 100 + minimum: 1 + type: integer + minorThreshold: + default: 80 + description: The minimum average utilization over the last 1 minute to trigger a minor alarm. + maximum: 100 + minimum: 1 + type: integer + type: object + required: + - enabled + type: object + disk: + description: Disk monitoring for targets matching this Monitor. + properties: + enabled: + default: true + description: Enable or disable disk monitoring. + type: boolean + utilization: + description: Parameters relating to disk utilization monitoring. + properties: + criticalThreshold: + default: 95 + description: |- + The minimum average utilization over the last 1 minute to trigger a critical alarm. + This value must be greater than the majorThreshold. + maximum: 100 + minimum: 1 + type: integer + fallingDelta: + default: 5 + description: |- + The delta in which a triggered threshold must drop below to clear an alarm. + For example, with a criticalThreshold of 90 and a fallingDelta of 5, the critical alarm will clear when the utilization drops below 85. + maximum: 25 + minimum: 1 + type: integer + majorThreshold: + default: 90 + description: |- + The minimum average utilization over the last 1 minute to trigger a major alarm. + This value must be greater than the minorThreshold. + maximum: 100 + minimum: 1 + type: integer + minorThreshold: + default: 80 + description: The minimum average utilization over the last 1 minute to trigger a minor alarm. + maximum: 100 + minimum: 1 + type: integer + type: object + required: + - enabled + type: object + memory: + description: Memory monitoring for targets matching this Monitor. + properties: + enabled: + default: true + description: Enable or disable memory monitoring. + type: boolean + utilization: + description: Parameters relating to memory utilization monitoring. + properties: + criticalThreshold: + default: 95 + description: |- + The minimum average utilization over the last 1 minute to trigger a critical alarm. + This value must be greater than the majorThreshold. + maximum: 100 + minimum: 1 + type: integer + fallingDelta: + default: 5 + description: |- + The delta in which a triggered threshold must drop below to clear an alarm. + For example, with a criticalThreshold of 90 and a fallingDelta of 5, the critical alarm will clear when the utilization drops below 85. + maximum: 25 + minimum: 1 + type: integer + majorThreshold: + default: 90 + description: |- + The minimum average utilization over the last 1 minute to trigger a major alarm. + This value must be greater than the minorThreshold. + maximum: 100 + minimum: 1 + type: integer + minorThreshold: + default: 80 + description: The minimum average utilization over the last 1 minute to trigger a minor alarm. + maximum: 100 + minimum: 1 + type: integer + type: object + required: + - enabled + type: object + nodeSelector: + description: Selector to use when including TopoNodes to monitor. + items: + type: string + type: array + nodes: + description: References to TopoNodes to monitor. + items: + type: string + type: array + type: object + status: + description: MonitorStatus defines the observed state of Monitor + properties: + nodes: + description: TopoNodes being monitored. + items: + type: string + type: array + type: object + type: object +served: true +storage: true +subresources: + status: {} diff --git a/static/resources/25.8.2/monitorstates.components.eda.nokia.com/v1.yaml b/static/resources/25.8.2/monitorstates.components.eda.nokia.com/v1.yaml new file mode 100644 index 0000000..36ff5e5 --- /dev/null +++ b/static/resources/25.8.2/monitorstates.components.eda.nokia.com/v1.yaml @@ -0,0 +1,194 @@ +name: v1 +schema: + openAPIV3Schema: + description: MonitorState is the Schema for the monitorstates API + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + description: MonitorStateSpec defines the desired state of MonitorState + properties: + monitorSpec: + description: The spec of the input Monitor + properties: + cpu: + description: CPU monitoring for targets matching this Monitor. + properties: + enabled: + default: true + description: Enable or disable CPU monitoring. + type: boolean + utilization: + description: Parameters relating to CPU utilization monitoring. + properties: + criticalThreshold: + default: 95 + description: |- + The minimum average utilization over the last 1 minute to trigger a critical alarm. + This value must be greater than the majorThreshold. + maximum: 100 + minimum: 1 + type: integer + fallingDelta: + default: 5 + description: |- + The delta in which a triggered threshold must drop below to clear an alarm. + For example, with a criticalThreshold of 90 and a fallingDelta of 5, the critical alarm will clear when the utilization drops below 85. + maximum: 25 + minimum: 1 + type: integer + majorThreshold: + default: 90 + description: |- + The minimum average utilization over the last 1 minute to trigger a major alarm. + This value must be greater than the minorThreshold. + maximum: 100 + minimum: 1 + type: integer + minorThreshold: + default: 80 + description: The minimum average utilization over the last 1 minute to trigger a minor alarm. + maximum: 100 + minimum: 1 + type: integer + type: object + required: + - enabled + type: object + memory: + description: Memory monitoring for targets matching this Monitor. + properties: + enabled: + default: true + description: Enable or disable memory monitoring. + type: boolean + utilization: + description: Parameters relating to memory utilization monitoring. + properties: + criticalThreshold: + default: 95 + description: |- + The minimum average utilization over the last 1 minute to trigger a critical alarm. + This value must be greater than the majorThreshold. + maximum: 100 + minimum: 1 + type: integer + fallingDelta: + default: 5 + description: |- + The delta in which a triggered threshold must drop below to clear an alarm. + For example, with a criticalThreshold of 90 and a fallingDelta of 5, the critical alarm will clear when the utilization drops below 85. + maximum: 25 + minimum: 1 + type: integer + majorThreshold: + default: 90 + description: |- + The minimum average utilization over the last 1 minute to trigger a major alarm. + This value must be greater than the minorThreshold. + maximum: 100 + minimum: 1 + type: integer + minorThreshold: + default: 80 + description: The minimum average utilization over the last 1 minute to trigger a minor alarm. + maximum: 100 + minimum: 1 + type: integer + type: object + required: + - enabled + type: object + targetSelector: + description: Selector to use when including targets to monitor. + items: + type: string + type: array + targets: + description: References to targets to monitor. + items: + type: string + type: array + volume: + description: Volume monitoring for targets matching this Monitor. + properties: + enabled: + default: true + description: Enable or disable volume monitoring. + type: boolean + utilization: + description: Parameters relating to volume utilization monitoring. + properties: + criticalThreshold: + default: 95 + description: |- + The minimum average utilization over the last 1 minute to trigger a critical alarm. + This value must be greater than the majorThreshold. + maximum: 100 + minimum: 1 + type: integer + fallingDelta: + default: 5 + description: |- + The delta in which a triggered threshold must drop below to clear an alarm. + For example, with a criticalThreshold of 90 and a fallingDelta of 5, the critical alarm will clear when the utilization drops below 85. + maximum: 25 + minimum: 1 + type: integer + majorThreshold: + default: 90 + description: |- + The minimum average utilization over the last 1 minute to trigger a major alarm. + This value must be greater than the minorThreshold. + maximum: 100 + minimum: 1 + type: integer + minorThreshold: + default: 80 + description: The minimum average utilization over the last 1 minute to trigger a minor alarm. + maximum: 100 + minimum: 1 + type: integer + type: object + required: + - enabled + type: object + type: object + operatingSystem: + description: The operating system of the target being monitored + type: string + target: + description: Reference to the target being monitored + type: string + version: + description: The version of the target being monitored + type: string + required: + - monitorSpec + - operatingSystem + - target + - version + type: object + status: + description: MonitorStateStatus defines the observed state of MonitorState + type: object + type: object +served: true +storage: true +subresources: + status: {} diff --git a/static/resources/25.8.2/monitorstates.system.eda.nokia.com/v1alpha1.yaml b/static/resources/25.8.2/monitorstates.system.eda.nokia.com/v1alpha1.yaml new file mode 100644 index 0000000..7281cd4 --- /dev/null +++ b/static/resources/25.8.2/monitorstates.system.eda.nokia.com/v1alpha1.yaml @@ -0,0 +1,194 @@ +name: v1alpha1 +schema: + openAPIV3Schema: + description: MonitorState is the Schema for the monitorstates API + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + description: MonitorStateSpec defines the desired state of MonitorState + properties: + monitorSpec: + description: The spec of the input Monitor + properties: + cpu: + description: CPU monitoring for targets matching this Monitor. + properties: + enabled: + default: true + description: Enable or disable CPU monitoring. + type: boolean + utilization: + description: Parameters relating to CPU utilization monitoring. + properties: + criticalThreshold: + default: 95 + description: |- + The minimum average utilization over the last 1 minute to trigger a critical alarm. + This value must be greater than the majorThreshold. + maximum: 100 + minimum: 1 + type: integer + fallingDelta: + default: 5 + description: |- + The delta in which a triggered threshold must drop below to clear an alarm. + For example, with a criticalThreshold of 90 and a fallingDelta of 5, the critical alarm will clear when the utilization drops below 85. + maximum: 25 + minimum: 1 + type: integer + majorThreshold: + default: 90 + description: |- + The minimum average utilization over the last 1 minute to trigger a major alarm. + This value must be greater than the minorThreshold. + maximum: 100 + minimum: 1 + type: integer + minorThreshold: + default: 80 + description: The minimum average utilization over the last 1 minute to trigger a minor alarm. + maximum: 100 + minimum: 1 + type: integer + type: object + required: + - enabled + type: object + disk: + description: Disk monitoring for targets matching this Monitor. + properties: + enabled: + default: true + description: Enable or disable disk monitoring. + type: boolean + utilization: + description: Parameters relating to disk utilization monitoring. + properties: + criticalThreshold: + default: 95 + description: |- + The minimum average utilization over the last 1 minute to trigger a critical alarm. + This value must be greater than the majorThreshold. + maximum: 100 + minimum: 1 + type: integer + fallingDelta: + default: 5 + description: |- + The delta in which a triggered threshold must drop below to clear an alarm. + For example, with a criticalThreshold of 90 and a fallingDelta of 5, the critical alarm will clear when the utilization drops below 85. + maximum: 25 + minimum: 1 + type: integer + majorThreshold: + default: 90 + description: |- + The minimum average utilization over the last 1 minute to trigger a major alarm. + This value must be greater than the minorThreshold. + maximum: 100 + minimum: 1 + type: integer + minorThreshold: + default: 80 + description: The minimum average utilization over the last 1 minute to trigger a minor alarm. + maximum: 100 + minimum: 1 + type: integer + type: object + required: + - enabled + type: object + memory: + description: Memory monitoring for targets matching this Monitor. + properties: + enabled: + default: true + description: Enable or disable memory monitoring. + type: boolean + utilization: + description: Parameters relating to memory utilization monitoring. + properties: + criticalThreshold: + default: 95 + description: |- + The minimum average utilization over the last 1 minute to trigger a critical alarm. + This value must be greater than the majorThreshold. + maximum: 100 + minimum: 1 + type: integer + fallingDelta: + default: 5 + description: |- + The delta in which a triggered threshold must drop below to clear an alarm. + For example, with a criticalThreshold of 90 and a fallingDelta of 5, the critical alarm will clear when the utilization drops below 85. + maximum: 25 + minimum: 1 + type: integer + majorThreshold: + default: 90 + description: |- + The minimum average utilization over the last 1 minute to trigger a major alarm. + This value must be greater than the minorThreshold. + maximum: 100 + minimum: 1 + type: integer + minorThreshold: + default: 80 + description: The minimum average utilization over the last 1 minute to trigger a minor alarm. + maximum: 100 + minimum: 1 + type: integer + type: object + required: + - enabled + type: object + nodeSelector: + description: Selector to use when including TopoNodes to monitor. + items: + type: string + type: array + nodes: + description: References to TopoNodes to monitor. + items: + type: string + type: array + type: object + node: + description: Reference to the TopoNode being monitored + type: string + operatingSystem: + description: The operating system of the TopoNode being monitored + type: string + version: + description: The version of the TopoNode being monitored + type: string + required: + - monitorSpec + - node + - operatingSystem + - version + type: object + status: + description: MonitorStateStatus defines the observed state of MonitorState + type: object + type: object +served: true +storage: true +subresources: + status: {} diff --git a/static/resources/25.8.2/namespaces.core.eda.nokia.com/v1.yaml b/static/resources/25.8.2/namespaces.core.eda.nokia.com/v1.yaml new file mode 100644 index 0000000..fbd19f9 --- /dev/null +++ b/static/resources/25.8.2/namespaces.core.eda.nokia.com/v1.yaml @@ -0,0 +1,39 @@ +name: v1 +schema: + openAPIV3Schema: + description: Namespace is the Schema for the namespaces API + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + description: |- + A Namespace is a logical partition within the cluster that provides a mechanism for isolating resources. + Namespaces allow for resource segmentation, enabling multiple teams or applications to share the same cluster without conflict. + properties: + description: + description: An optional description of the use of the namespace. + type: string + type: object + status: + description: NamespaceStatus defines the observed state of Namespace + type: object + type: object +served: true +storage: true +subresources: + status: {} diff --git a/static/resources/25.8.2/nodeconfigs.core.eda.nokia.com/v1.yaml b/static/resources/25.8.2/nodeconfigs.core.eda.nokia.com/v1.yaml new file mode 100644 index 0000000..36330fa --- /dev/null +++ b/static/resources/25.8.2/nodeconfigs.core.eda.nokia.com/v1.yaml @@ -0,0 +1,78 @@ +name: v1 +schema: + openAPIV3Schema: + description: NodeConfig is the Schema for the nodeconfigs API + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + description: NodeConfigSpec defines the desired state of NodeConfig + properties: + configs: + description: An array of configurations (paths and corresponding configs) applied in this NodeConfig + items: + properties: + config: + description: |- + For Create/Update operations, this is a mandatory json object representing the configuration. + For Delete operation, this is an optional json array representing the fields to delete + type: string + encrypt: + description: |- + Encrypt the payload of the config. + For Delete operation, this does not apply. + type: boolean + operation: + description: Operation to perform on the configuration + enum: + - Create + - Update + - Delete + type: string + path: + description: Path to place the configuration on the node, in json path format + type: string + required: + - operation + - path + type: object + type: array + node-endpoint: + description: Reference to a TopoNode to which this config is applied + type: string + priority: + default: 0 + description: |- + Sets the priority of this NodeConfig, with lower priorities being overwritten by higher priorities. + Negative priorities may be used to indicate a lower-than-default priority. + format: int32 + maximum: 100 + minimum: -100 + type: integer + required: + - configs + - node-endpoint + type: object + status: + description: NodeConfigStatus defines the observed state of NodeConfig + type: object + type: object +served: true +storage: true +subresources: + status: {} diff --git a/static/resources/25.8.2/nodegroupdeployments.aaa.eda.nokia.com/v1alpha1.yaml b/static/resources/25.8.2/nodegroupdeployments.aaa.eda.nokia.com/v1alpha1.yaml new file mode 100644 index 0000000..06636ba --- /dev/null +++ b/static/resources/25.8.2/nodegroupdeployments.aaa.eda.nokia.com/v1alpha1.yaml @@ -0,0 +1,43 @@ +name: v1alpha1 +schema: + openAPIV3Schema: + description: NodeGroupDeployment is the Schema for the nodegroupdeployments API + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + description: NodeGroupDeploymentSpec defines the desired state of NodeGroupDeployment + properties: + group: + description: Specifies a group to deploy on the specified Node + type: string + node: + description: Specifies a Node to deploy this group on + type: string + required: + - group + - node + type: object + status: + description: NodeGroupDeploymentStatus defines the observed state of a NodeGroupDeployment + type: object + type: object +served: true +storage: true +subresources: + status: {} diff --git a/static/resources/25.8.2/nodegroups.aaa.eda.nokia.com/v1alpha1.yaml b/static/resources/25.8.2/nodegroups.aaa.eda.nokia.com/v1alpha1.yaml new file mode 100644 index 0000000..7bf41f5 --- /dev/null +++ b/static/resources/25.8.2/nodegroups.aaa.eda.nokia.com/v1alpha1.yaml @@ -0,0 +1,105 @@ +name: v1alpha1 +schema: + openAPIV3Schema: + description: NodeGroup is the Schema for the nodegroups API + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + description: |- + NodeGroup is a representation of a group on a node, including the services it has access to, any RBAC, and TACACS configuration. + NodeGroups are deployed to nodes by NodeUser or other permission-consuming resources. + properties: + groupName: + description: Set the local name for this group. If not provided, the resource name will be used. + type: string + rules: + description: Rules for this group. + items: + properties: + action: + default: ReadWrite + description: Set the action for this entry. + enum: + - Deny + - ReadWrite + - Read + type: string + match: + description: |- + Set the match for this entry. This is a string to match input against - for example "interface" for srl or "configure port" for sros. + Rules here should be specified in the target specific format. + type: string + operatingSystem: + default: srl + description: |- + Operating system to match against for this rule. + Operating system to deploy this rule to. + enum: + - srl + - sros + type: string + required: + - action + - operatingSystem + type: object + type: array + services: + description: Enabled services for this group + items: + enum: + - CLI + - FTP + - GNMI + - GNOI + - GNSI + - GRIBI + - Reflection + - JSON-RPC + - NETCONF + type: string + type: array + superuser: + description: Make members of this group superusers. + type: boolean + tacacs: + description: TACACS configuration. + properties: + privilegeLevel: + description: Set the privilege level for this group. + maximum: 15 + minimum: 0 + type: integer + type: object + required: + - services + type: object + status: + description: Deployment status of this NodeGroup. + properties: + nodes: + description: List of TopoNodes group has been deployed to. + items: + type: string + type: array + type: object + type: object +served: true +storage: true +subresources: + status: {} diff --git a/static/resources/25.8.2/nodeprofiles.core.eda.nokia.com/v1.yaml b/static/resources/25.8.2/nodeprofiles.core.eda.nokia.com/v1.yaml new file mode 100644 index 0000000..7f55d0c --- /dev/null +++ b/static/resources/25.8.2/nodeprofiles.core.eda.nokia.com/v1.yaml @@ -0,0 +1,366 @@ +additionalPrinterColumns: + - jsonPath: .spec.operatingSystem + name: OS + type: string + - jsonPath: .spec.version + name: Version + type: string + - jsonPath: .spec.nodeUser + name: Node User + type: string + - jsonPath: .spec.transport + name: Transport + type: string + - jsonPath: .spec.port + name: Port + type: string +name: v1 +schema: + openAPIV3Schema: + description: NodeProfile is the Schema for the toponodes API + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + description: NodeProfileSpec defines the desired state of NodeProfile + properties: + annotate: + default: false + description: Indicates if NPP should annotate sent configuration. + type: boolean + containerImage: + description: Container image to use when simulating TopoNodes referencing this NodeProfile, e.g. ghcr.io/nokia/srlinux:24.7.1. + type: string + dhcp: + description: DHCP options to use when onboarding the TopoNode. Optional if not bootstrapping using EDA. + properties: + dhcp4Options: + description: DHCPv4 options to return to TopoNodes referencing this NodeProfile. + items: + properties: + option: + description: DHCPv4 option to return to the TopoNode. + enum: + - 1-SubnetMask + - 2-TimeOffset + - 3-Router + - 4-TimeServer + - 5-NameServer + - 6-DomainNameServer + - 7-LogServer + - 8-QuoteServer + - 9-LPRServer + - 10-ImpressServer + - 11-ResourceLocationServer + - 12-HostName + - 13-BootFileSize + - 14-MeritDumpFile + - 15-DomainName + - 16-SwapServer + - 17-RootPath + - 18-ExtensionsPath + - 19-IPForwarding + - 20-NonLocalSourceRouting + - 21-PolicyFilter + - 22-MaximumDatagramAssemblySize + - 23-DefaultIPTTL + - 24-PathMTUAgingTimeout + - 25-PathMTUPlateauTable + - 26-InterfaceMTU + - 27-AllSubnetsAreLocal + - 28-BroadcastAddress + - 29-PerformMaskDiscovery + - 30-MaskSupplier + - 31-PerformRouterDiscovery + - 32-RouterSolicitationAddress + - 33-StaticRoutingTable + - 34-TrailerEncapsulation + - 35-ArpCacheTimeout + - 36-EthernetEncapsulation + - 37-DefaulTCPTTL + - 38-TCPKeepaliveInterval + - 39-TCPKeepaliveGarbage + - 40-NetworkInformationServiceDomain + - 41-NetworkInformationServers + - 42-NTPServers + - 43-VendorSpecificInformation + - 44-NetBIOSOverTCPIPNameServer + - 45-NetBIOSOverTCPIPDatagramDistributionServer + - 46-NetBIOSOverTCPIPNodeType + - 47-NetBIOSOverTCPIPScope + - 48-XWindowSystemFontServer + - 49-XWindowSystemDisplayManager + - 50-RequestedIPAddress + - 51-IPAddressLeaseTime + - 52-OptionOverload + - 53-DHCPMessageType + - 54-ServerIdentifier + - 55-ParameterRequestList + - 56-Message + - 57-MaximumDHCPMessageSize + - 58-RenewTimeValue + - 59-RebindingTimeValue + - 60-ClassIdentifier + - 61-ClientIdentifier + - 62-NetWareIPDomainName + - 63-NetWareIPInformation + - 64-NetworkInformationServicePlusDomain + - 65-NetworkInformationServicePlusServers + - 66-TFTPServerName + - 67-BootfileName + - 68-MobileIPHomeAgent + - 69-SimpleMailTransportProtocolServer + - 70-PostOfficeProtocolServer + - 71-NetworkNewsTransportProtocolServer + - 72-DefaultWorldWideWebServer + - 73-DefaultFingerServer + - 74-DefaultInternetRelayChatServer + - 75-StreetTalkServer + - 76-StreetTalkDirectoryAssistanceServer + - 77-UserClassInformation + - 78-SLPDirectoryAgent + - 79-SLPServiceScope + - 80-RapidCommit + - 81-FQDN + - 82-RelayAgentInformation + - 83-InternetStorageNameService + - 85-NDSServers + - 86-NDSTreeName + - 87-NDSContext + - 88-BCMCSControllerDomainNameList + - 89-BCMCSControllerIPv4AddressList + - 90-Authentication + - 91-ClientLastTransactionTime + - 92-AssociatedIP + - 93-ClientSystemArchitectureType + - 94-ClientNetworkInterfaceIdentifier + - 95-LDAP + - 97-ClientMachineIdentifier + - 98-OpenGroupUserAuthentication + - 99-GeoConfCivic + - 100-IEEE10031TZString + - 101-ReferenceToTZDatabase + - 112-NetInfoParentServerAddress + - 113-NetInfoParentServerTag + - 114-URL + - 116-AutoConfigure + - 117-NameServiceSearch + - 118-SubnetSelection + - 119-DNSDomainSearchList + - 120-SIPServers + - 121-ClasslessStaticRoute + - 122-CCC + - 123-GeoConf + - 124-VendorIdentifyingVendorClass + - 125-VendorIdentifyingVendorSpecific + - 128-TFTPServerIPAddress + - 129-CallServerIPAddress + - 130-DiscriminationString + - 131-RemoteStatisticsServerIPAddress + - 132-8021PVLANID + - 133-8021QL2Priority + - 134-DiffservCodePoint + - 135-HTTPProxyForPhoneSpecificApplications + - 136-PANAAuthenticationAgent + - 137-LoSTServer + - 138-CAPWAPAccessControllerAddresses + - 139-OPTIONIPv4AddressMoS + - 140-OPTIONIPv4FQDNMoS + - 141-SIPUAConfigurationServiceDomains + - 142-OPTIONIPv4AddressANDSF + - 143-OPTIONIPv6AddressANDSF + - 150-TFTPServerAddress + - 151-StatusCode + - 152-BaseTime + - 153-StartTimeOfState + - 154-QueryStartTime + - 155-QueryEndTime + - 156-DHCPState + - 157-DataSource + - 175-Etherboot + - 176-IPTelephone + - 177-EtherbootPacketCableAndCableHome + - 208-PXELinuxMagicString + - 209-PXELinuxConfigFile + - 210-PXELinuxPathPrefix + - 211-PXELinuxRebootTime + - 212-OPTION6RD + - 213-OPTIONv4AccessDomain + - 220-SubnetAllocation + - 221-VirtualSubnetAllocation + - 224-Reserved + - 225-Reserved + - 226-Reserved + - 227-Reserved + - 228-Reserved + - 229-Reserved + - 230-Reserved + - 231-Reserved + - 232-Reserved + - 233-Reserved + - 234-Reserved + - 235-Reserved + - 236-Reserved + - 237-Reserved + - 238-Reserved + - 239-Reserved + - 240-Reserved + - 241-Reserved + - 242-Reserved + - 243-Reserved + - 244-Reserved + - 245-Reserved + - 246-Reserved + - 247-Reserved + - 248-Reserved + - 249-Reserved + - 250-Reserved + - 251-Reserved + - 252-Reserved + - 253-Reserved + - 254-Reserved + - 255-End + type: string + value: + description: Value to return to the TopoNode for the specified option. + items: + type: string + minItems: 1 + type: array + required: + - option + - value + type: object + type: array + dhcp6Options: + description: DHCPv6 options to return to TopoNodes referencing this NodeProfile. + items: + properties: + option: + description: DHCPv6 option to return to the TopoNode. + enum: + - 59-BootfileUrl + type: string + value: + description: Value to return to the TopoNode for the specified option. + items: + type: string + minItems: 1 + type: array + required: + - option + - value + type: object + type: array + managementPoolv4: + description: IPInSubnetAllocationPool to use for IPv4 allocations of the management address for TopoNodes referencing this NodeProfile. + type: string + managementPoolv6: + description: IPInSubnetAllocationPool to use for IPv6 allocations of the management address for TopoNodes referencing this NodeProfile. + type: string + preferredAddressFamily: + description: Preferred IP address family + enum: + - IPv4 + - IPv6 + type: string + type: object + imagePullSecret: + description: Secret used to authenticate to the container registry where the container image is hosted. + type: string + images: + description: URLs hosting software images for bootstrapping TopoNodes referencing this NodeProfile. + items: + properties: + image: + description: URL hosting the software image, e.g. srlimages/srlinux-24.7.1.bin. + type: string + imageMd5: + description: URL hosting the software image md5 hash. e.g. srlimages/srlinux-24.7.1.bin.md5. + type: string + required: + - image + type: object + type: array + license: + description: ConfigMap containing a license for TopoNodes referencing this NodeProfile. + type: string + llmDb: + description: URL containing LLDB to use when interacting with LLM-DB and OpenAI for query autocompletion, e.g. http://eda-asvr/llmdb/ce-llm-db-srlinux-24.7.1.tar.gz. + type: string + nodeUser: + description: Reference to a NodeUser to use for authentication to TopoNodes referencing this NodeProfile. + type: string + onboardingPassword: + default: NokiaSrl1! + description: The password to use when onboarding TopoNodes referencing this NodeProfile, e.g. admin. + type: string + onboardingUsername: + default: admin + description: The username to use when onboarding TopoNodes referencing this NodeProfile, e.g. admin. + type: string + operatingSystem: + description: Sets the operating system of this NodeProfile, e.g. srl. + enum: + - srl + - sros + - eos + - sonic + - ios-xr + - nxos + - linux + type: string + platformPath: + description: JSPath to use for retrieving the version string from TopoNodes referencing this NodeProfile, e.g. .platform.chassis.type. + type: string + port: + default: 57400 + description: Port used to establish a connection to the TopoNode, e.g. 57400. + maximum: 65535 + minimum: 1 + type: integer + serialNumberPath: + description: JSPath to use for retrieving the serial number string from TopoNodes referencing this NodeProfile, e.g. .platform.chassis.serial-number. + type: string + version: + description: Sets the software version of this NodeProfile, e.g. 24.7.1 (for srl), or 24.7.r1 (for sros). + type: string + versionMatch: + description: Regular expression to match the node-retrieved version string to TopoNode version, e.g. v0\.0\.0.*. + type: string + versionPath: + description: JSPath to use for retrieving the version string from TopoNodes referencing this NodeProfile, e.g. .system.information.version. + type: string + yang: + description: URL containing YANG modules and schema profile to use when interacting with TopoNodes referencing this NodeProfile, e.g. http://eda-asvr/schemaprofiles/srlinux-24.7.1.zip. + type: string + required: + - nodeUser + - onboardingPassword + - onboardingUsername + - operatingSystem + - version + - yang + type: object + status: + type: object + type: object +served: true +storage: true +subresources: + status: {} diff --git a/static/resources/25.8.2/nodesecurityprofiles.core.eda.nokia.com/v1.yaml b/static/resources/25.8.2/nodesecurityprofiles.core.eda.nokia.com/v1.yaml new file mode 100644 index 0000000..acad983 --- /dev/null +++ b/static/resources/25.8.2/nodesecurityprofiles.core.eda.nokia.com/v1.yaml @@ -0,0 +1,135 @@ +name: v1 +schema: + openAPIV3Schema: + description: NodeSecurityProfile is the Schema for the nodeSecurityProfile API + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + description: NodeSecurityProfileSpec defines the desired state of NodeSecurityProfile + properties: + namespace: + description: Namespace of toponodes to be used to apply this security profile to. + type: string + nodeSelector: + description: Selector to use when selecting TopoNodes to apply this security profile to. + items: + type: string + type: array + nodes: + description: ' TopoNodes to apply this security profile to.' + items: + type: string + type: array + tls: + description: Set of TLS related attributes + properties: + csrParams: + description: A set of certificate signing request parameters used when asking for a CSR from the toponode. + properties: + certificateValidity: + default: 2160h + description: CertificateValidity defines the duration for which the certificate is considered valid after issuance. + type: string + city: + description: City denotes the city where the organization is based. + type: string + commonName: + description: CommonName specifies the common name field of the CSR, typically representing the domain name. + type: string + country: + description: Country indicates the country in which the organization is legally registered. + type: string + csrSuite: + default: CSRSUITE_X509_KEY_TYPE_RSA_2048_SIGNATURE_ALGORITHM_SHA_2_256 + description: The CSRSuite value used when asking for a CSR from the toponode + enum: + - CSRSUITE_X509_KEY_TYPE_RSA_2048_SIGNATURE_ALGORITHM_SHA_2_256 + - CSRSUITE_X509_KEY_TYPE_RSA_2048_SIGNATURE_ALGORITHM_SHA_2_384 + - CSRSUITE_X509_KEY_TYPE_RSA_2048_SIGNATURE_ALGORITHM_SHA_2_512 + - CSRSUITE_X509_KEY_TYPE_RSA_3072_SIGNATURE_ALGORITHM_SHA_2_256 + - CSRSUITE_X509_KEY_TYPE_RSA_3072_SIGNATURE_ALGORITHM_SHA_2_384 + - CSRSUITE_X509_KEY_TYPE_RSA_3072_SIGNATURE_ALGORITHM_SHA_2_512 + - CSRSUITE_X509_KEY_TYPE_RSA_4096_SIGNATURE_ALGORITHM_SHA_2_256 + - CSRSUITE_X509_KEY_TYPE_RSA_4096_SIGNATURE_ALGORITHM_SHA_2_384 + - CSRSUITE_X509_KEY_TYPE_RSA_4096_SIGNATURE_ALGORITHM_SHA_2_512 + - CSRSUITE_X509_KEY_TYPE_ECDSA_PRIME256V1_SIGNATURE_ALGORITHM_SHA_2_256 + - CSRSUITE_X509_KEY_TYPE_ECDSA_PRIME256V1_SIGNATURE_ALGORITHM_SHA_2_384 + - CSRSUITE_X509_KEY_TYPE_ECDSA_PRIME256V1_SIGNATURE_ALGORITHM_SHA_2_512 + - CSRSUITE_X509_KEY_TYPE_ECDSA_SECP384R1_SIGNATURE_ALGORITHM_SHA_2_256 + - CSRSUITE_X509_KEY_TYPE_ECDSA_SECP384R1_SIGNATURE_ALGORITHM_SHA_2_384 + - CSRSUITE_X509_KEY_TYPE_ECDSA_SECP384R1_SIGNATURE_ALGORITHM_SHA_2_512 + - CSRSUITE_X509_KEY_TYPE_ECDSA_SECP521R1_SIGNATURE_ALGORITHM_SHA_2_256 + - CSRSUITE_X509_KEY_TYPE_ECDSA_SECP521R1_SIGNATURE_ALGORITHM_SHA_2_384 + - CSRSUITE_X509_KEY_TYPE_ECDSA_SECP521R1_SIGNATURE_ALGORITHM_SHA_2_512 + - CSRSUITE_X509_KEY_TYPE_EDDSA_ED25519 + type: string + org: + description: Org is the name of the organization requesting the CSR. + type: string + orgUnit: + description: OrgUnit specifies the organizational unit (like department or division) within the organization. + type: string + san: + description: Subject Alternative Names contains additional hostnames or IP addresses covered by the CSR. + properties: + dns: + description: Dns contains a list of DNS names that can be used to access the server. + items: + type: string + type: array + emails: + description: Emails consists of email addresses that should be associated with the certificate. + items: + type: string + type: array + ips: + description: Ips includes IP addresses that the certificate should validate. + items: + type: string + type: array + uris: + description: Uris lists specific URIs that the certificate will authenticate. + items: + type: string + type: array + type: object + state: + description: State represents the state or province where the organization is located. + type: string + type: object + issuerRef: + description: Reference to a CertManager issuer that must be used to sign nodes certificates. + type: string + skipVerify: + description: Skip certificate verification. + type: boolean + trustBundle: + description: |- + Reference to configMap that contains a CA certificate that is used to verify the node certificate + when certificates are not managed by EDA. + type: string + type: object + type: object + status: + type: object + type: object +served: true +storage: true +subresources: + status: {} diff --git a/static/resources/25.8.2/nodeusers.core.eda.nokia.com/v1.yaml b/static/resources/25.8.2/nodeusers.core.eda.nokia.com/v1.yaml new file mode 100644 index 0000000..1781ecb --- /dev/null +++ b/static/resources/25.8.2/nodeusers.core.eda.nokia.com/v1.yaml @@ -0,0 +1,96 @@ +additionalPrinterColumns: + - jsonPath: .spec.username + name: Username + type: string + - jsonPath: .metadata.creationTimestamp + name: Age + type: date +name: v1 +schema: + openAPIV3Schema: + description: NodeUser is the Schemal for the nodeusers API + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + description: |- + The NodeUser resource represents a user that can be deployed to a set of TopoNodes. It supports managing the user's password, SSH keys, and group bindings. + Additionally a NodeUser is referenced by a NodeProfile to indicate how NPP should connect to TopoNodes. + properties: + groupBindings: + description: Matching of this user to node-specific permissions via groups. + items: + properties: + groups: + description: Assigned groups for this user. + items: + type: string + type: array + nodeSelector: + description: Selector to use when selecting TopoNodes to deploy this user to. + items: + type: string + type: array + nodes: + description: ' TopoNodes to deploy this user to.' + items: + type: string + type: array + required: + - groups + type: object + type: array + password: + description: Password for this user. + type: string + sshPublicKeys: + description: SSH public keys to deploy for the user. + items: + type: string + type: array + username: + description: Name of this user. If not provided, the name of the resource will be used. + maxLength: 32 + type: string + required: + - groupBindings + - password + type: object + status: + description: Deployment status of this NodeUser. + properties: + groupBindings: + description: List of TopoNodes user has been deployed to, along with corresponding groups. + items: + properties: + groups: + description: Groups this user is a member of on this node. + items: + type: string + type: array + node: + description: Node this user is deployed to. + type: string + type: object + type: array + type: object + type: object +served: true +storage: true +subresources: + status: {} diff --git a/static/resources/25.8.2/nodeuserstates.aaa.eda.nokia.com/v1alpha1.yaml b/static/resources/25.8.2/nodeuserstates.aaa.eda.nokia.com/v1alpha1.yaml new file mode 100644 index 0000000..2a012cf --- /dev/null +++ b/static/resources/25.8.2/nodeuserstates.aaa.eda.nokia.com/v1alpha1.yaml @@ -0,0 +1,48 @@ +name: v1alpha1 +schema: + openAPIV3Schema: + description: NodeUserState is the Schema for the nodeuserstates API + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + description: NodeUserStateSpec defines the desired state of NodeUserState + properties: + groupBindings: + description: List of TopoNodes user has been deployed to, along with corresponding groups. + items: + properties: + groups: + description: Groups this user is a member of on this node. + items: + type: string + type: array + node: + description: Node this user is deployed to. + type: string + type: object + type: array + type: object + status: + description: NodeUserStateStatus defines the observed state of NodeUserState + type: object + type: object +served: true +storage: true +subresources: + status: {} diff --git a/static/resources/25.8.2/ntpclients.timing.eda.nokia.com/v1alpha1.yaml b/static/resources/25.8.2/ntpclients.timing.eda.nokia.com/v1alpha1.yaml new file mode 100644 index 0000000..d7559a0 --- /dev/null +++ b/static/resources/25.8.2/ntpclients.timing.eda.nokia.com/v1alpha1.yaml @@ -0,0 +1,118 @@ +additionalPrinterColumns: + - jsonPath: .status.lastChange + name: Last Change + type: date + - jsonPath: .status.operationalState + name: Operational State + type: string +name: v1alpha1 +schema: + openAPIV3Schema: + description: NTPClient is the Schema for the ntpclients API + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + description: The NTP client allows for configuring NTP servers and the source of NTP traffic in order for the devices to synchronize their clocks. + properties: + router: + description: Router used to reach the NTP servers. + type: string + routerKind: + description: the Kind of the router used to reach the NTP servers. + enum: + - MANAGEMENTROUTER + - ROUTER + - DEFAULTROUTER + type: string + routerSelector: + description: Selects router resources based on the defined KIND. Applies to DefaultRouter only. Not supported for Router and ManagementRouter. + items: + type: string + type: array + servers: + description: A list of NTP servers, each entry in the list can either be an IP address or an FQDN. + items: + properties: + iBurst: + description: Indicates whether this server should enable burst synchronization or not + type: boolean + preferred: + description: Indicates whether this server should be preferred or not + type: boolean + server: + description: An NTP server can either be an IP address or an FQDN + type: string + required: + - server + type: object + type: array + sourceInterface: + description: Specifies a Interface resource to use as a source of NTP traffic. If none is specified the Node default behavior is used. + type: string + sourceInterfaceKind: + description: Specifies the source interface Kind to use as a source of NTP traffic. + enum: + - IRB + - ROUTED + - DEFAULT + - SYSTEM + type: string + required: + - routerKind + - servers + type: object + status: + description: NTPClientStatus defines the observed state of NTPClient + properties: + health: + description: Indicates the health score of the NTPClient + type: integer + healthScoreReason: + description: Indicates the reason for the health score + type: string + lastChange: + description: The time when the state of the resource last changed + type: string + nodes: + description: List of nodes which are not synchronized + items: + properties: + node: + description: Reference to Node object + type: string + operatingSystem: + description: Operating System of the Node + type: string + synchronized: + description: Synchronized state of the Node + type: string + required: + - node + - operatingSystem + type: object + type: array + operationalState: + description: Operational state of the NTPClient + type: string + type: object + type: object +served: true +storage: true +subresources: + status: {} diff --git a/static/resources/25.8.2/ntpclientstates.timing.eda.nokia.com/v1alpha1.yaml b/static/resources/25.8.2/ntpclientstates.timing.eda.nokia.com/v1alpha1.yaml new file mode 100644 index 0000000..004c817 --- /dev/null +++ b/static/resources/25.8.2/ntpclientstates.timing.eda.nokia.com/v1alpha1.yaml @@ -0,0 +1,52 @@ +name: v1alpha1 +schema: + openAPIV3Schema: + description: NTPClientState is the Schema for the ntpclientstates API + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + description: NTPClientStateSpec defines the desired state of NTPClientState + properties: + nodes: + description: List of Nodes on which was configured the NTPClient + items: + properties: + node: + description: Reference to Node object + type: string + operatingSystem: + description: Operating System of the Node + type: string + synchronized: + description: Synchronized state of the Node + type: string + required: + - node + - operatingSystem + type: object + type: array + type: object + status: + description: NTPClientStateStatus defines the observed state of NTPClientState + type: object + type: object +served: true +storage: true +subresources: + status: {} diff --git a/static/resources/25.8.2/pings.oam.eda.nokia.com/v1alpha1.yaml b/static/resources/25.8.2/pings.oam.eda.nokia.com/v1alpha1.yaml new file mode 100644 index 0000000..fe8e960 --- /dev/null +++ b/static/resources/25.8.2/pings.oam.eda.nokia.com/v1alpha1.yaml @@ -0,0 +1,150 @@ +additionalPrinterColumns: + - jsonPath: .spec.address + name: Address + type: string + - jsonPath: .spec.networkInstance + name: Network Instance + type: string + - jsonPath: .status.result + name: Result + type: string + - jsonPath: .metadata.creationTimestamp + name: Age + type: date +name: v1alpha1 +schema: + openAPIV3Schema: + description: Ping is the Schema for the pings API + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + description: Ping allows a ping to be initiated to a specific address on node/set of nodes. + properties: + address: + description: |- + Address to ping. + This is a single IP address (IPv4 or IPv6) or a hostname that resolves to an IP address. + type: string + count: + default: 1 + description: Count is the number of pings to send. + type: integer + networkInstance: + description: |- + The network instance to use for the ping. This is the named network instance on the node, typically "default" or some other base name. + If not specified, the default network instance will be used, which is typically the main/default/global network interface on the node. + type: string + nodeSelectors: + description: |- + List of selectors to select nodes to perform pings on. + This matches labels on TopoNode resources, including those TopoNodes in the list of nodes that pings will be performed on. + If no nodes are specified, and no node selectors are specified, all nodes in the given namespace will be selected. + items: + type: string + type: array + nodes: + description: |- + List of nodes to perform pings from. + Items in the list should be the names of the nodes, where each node will have a ping performed on it. + If no nodes are specified, and no node selectors are specified, all nodes in the given namespace will be selected. + items: + type: string + type: array + timeoutSeconds: + default: 5 + description: TimeoutSeconds is the timeout for the ping in seconds. + type: integer + required: + - address + type: object + status: + description: PingStatus defines the observed state of Ping + properties: + details: + description: |- + Details contains the results of the pings performed on each node. + Each entry in the list corresponds to a node that was pinged. + items: + properties: + details: + description: Details of the ping result, if available. + properties: + averageTimeNanoseconds: + description: Average time taken for a ping reply. + format: int64 + type: integer + maxTimeNanoseconds: + description: Maximum time taken for a ping reply. + format: int64 + type: integer + minTimeNanoseconds: + description: Minimum time taken for a ping reply. + format: int64 + type: integer + received: + description: Number of pings received. + type: integer + sent: + description: Number of pings sent. + type: integer + stdDevNanoseconds: + description: Standard deviation of time taken for all pings. + format: int64 + type: integer + totalTimeNanoseconds: + description: Total time taken for all pings. + format: int64 + type: integer + required: + - received + - sent + type: object + error: + description: Error message, if the ping failed. + type: string + networkInstance: + description: Network instance used to source the ping from. + type: string + node: + description: Node the ping was sourced from. + type: string + success: + description: Indicates if the ping was successful. + type: boolean + type: object + type: array + result: + default: Success + description: |- + Result is the overall result of the ping operation. + It can be one of the following values: + - "Success": All pings were successful. + - "Failed": No pings were successful. + - "PartialSuccess": Some pings were successful, but not all. + enum: + - Success + - Failed + - PartialSuccess + type: string + type: object + type: object +served: true +storage: true +subresources: + status: {} diff --git a/static/resources/25.8.2/policyattachments.qos.eda.nokia.com/v1.yaml b/static/resources/25.8.2/policyattachments.qos.eda.nokia.com/v1.yaml new file mode 100644 index 0000000..2cf0ad6 --- /dev/null +++ b/static/resources/25.8.2/policyattachments.qos.eda.nokia.com/v1.yaml @@ -0,0 +1,60 @@ +name: v1 +schema: + openAPIV3Schema: + description: PolicyAttachment is the Schema for the policyattachments API + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + description: PolicyAttachmentSpec defines the desired state of PolicyAttachment + properties: + attachments: + description: Specifies a list of Interfaces and subinterfaces on which to deploy the policies. + items: + properties: + interface: + description: Specifies the Interface on which to deploy the policies. + type: string + interfaceType: + description: Used for platforms that differentiate between access/service interfaces and network interface. These platforms may require different classifiers depending on whether they are applied on access/service interfaces or network interfaces. Specifies whether the classifier should be configured as a service Egress classifier or network Egress classifier + enum: + - ACCESS + - NETWORK + type: string + subInterfaceIndex: + description: Specifies the SubInterfaceIndex on which to deploy the policies. + type: integer + type: object + type: array + egressPolicy: + description: Specifies an EgressPolicy to deploy on the specified Node. + type: string + ingressPolicy: + description: Specifies the IngressPolicy to deploy on the specified Node. + type: string + required: + - attachments + type: object + status: + description: PolicyAttachmentStatus defines the observed state of PolicyAttachment + type: object + type: object +served: true +storage: true +subresources: + status: {} diff --git a/static/resources/25.8.2/policyattachments.qos.eda.nokia.com/v1alpha1.yaml b/static/resources/25.8.2/policyattachments.qos.eda.nokia.com/v1alpha1.yaml new file mode 100644 index 0000000..5bce521 --- /dev/null +++ b/static/resources/25.8.2/policyattachments.qos.eda.nokia.com/v1alpha1.yaml @@ -0,0 +1,62 @@ +deprecated: true +deprecationWarning: This version is deprecated and will no longer be supported in the next version. +name: v1alpha1 +schema: + openAPIV3Schema: + description: PolicyAttachment is the Schema for the policyattachments API + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + description: PolicyAttachmentSpec defines the desired state of PolicyAttachment + properties: + attachments: + description: Specifies a list of Interfaces and subinterfaces on which to deploy the policies. + items: + properties: + interface: + description: Specifies the Interface on which to deploy the policies. + type: string + interfaceType: + description: Used for platforms that differentiate between access/service interfaces and network interface. These platforms may require different classifiers depending on whether they are applied on access/service interfaces or network interfaces. Specifies whether the classifier should be configured as a service Egress classifier or network Egress classifier + enum: + - ACCESS + - NETWORK + type: string + subInterfaceIndex: + description: Specifies the SubInterfaceIndex on which to deploy the policies. + type: integer + type: object + type: array + egressPolicy: + description: Specifies an EgressPolicy to deploy on the specified Node. + type: string + ingressPolicy: + description: Specifies the IngressPolicy to deploy on the specified Node. + type: string + required: + - attachments + type: object + status: + description: PolicyAttachmentStatus defines the observed state of PolicyAttachment + type: object + type: object +served: true +storage: false +subresources: + status: {} diff --git a/static/resources/25.8.2/policydeployments.qos.eda.nokia.com/v1.yaml b/static/resources/25.8.2/policydeployments.qos.eda.nokia.com/v1.yaml new file mode 100644 index 0000000..86164b9 --- /dev/null +++ b/static/resources/25.8.2/policydeployments.qos.eda.nokia.com/v1.yaml @@ -0,0 +1,64 @@ +name: v1 +schema: + openAPIV3Schema: + description: PolicyDeployment is the Schema for the policydeployments API + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + description: PolicyDeploymentSpec defines the desired state of PolicyDeployment + properties: + egressPolicy: + description: Specifies an EgressPolicy to deploy on the specified Node. + type: string + ingressPolicy: + description: Specifies the IngressPolicy to deploy on the specified Node. + type: string + interfaceSelector: + description: Specifies a label selector to filter the interfaces on which to deploy the policies. + items: + type: string + type: array + interfaceType: + description: Used for platforms that differentiate between access/service interfaces and network interface. These platforms may require different classifiers depending on whether they are applied on access/service interfaces or network interfaces. Specifies whether the classifier should be configured as a service Egress classifier or network Egress classifier + enum: + - ACCESS + - NETWORK + type: string + interfaces: + description: Specifies a list of Interfaces on which to deploy the policies. + items: + type: string + type: array + node: + description: Specifies a Node to deploy the policies on. + type: string + nodeSelector: + description: Specifies a label selector to filter the nodes on which to deploy the policies. + items: + type: string + type: array + type: object + status: + description: PolicyDeploymentStatus defines the observed state of PolicyDeployment + type: object + type: object +served: true +storage: true +subresources: + status: {} diff --git a/static/resources/25.8.2/policydeployments.qos.eda.nokia.com/v1alpha1.yaml b/static/resources/25.8.2/policydeployments.qos.eda.nokia.com/v1alpha1.yaml new file mode 100644 index 0000000..2611869 --- /dev/null +++ b/static/resources/25.8.2/policydeployments.qos.eda.nokia.com/v1alpha1.yaml @@ -0,0 +1,62 @@ +deprecated: true +deprecationWarning: This version is deprecated and will no longer be supported in the next version. +name: v1alpha1 +schema: + openAPIV3Schema: + description: PolicyDeployment is the Schema for the policydeployments API + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + description: PolicyDeploymentSpec defines the desired state of PolicyDeployment + properties: + egressPolicy: + description: Specifies an EgressPolicy to deploy on the specified Node. + type: string + ingressPolicy: + description: Specifies the IngressPolicy to deploy on the specified Node. + type: string + interfaceSelector: + description: Specifies a label selector to filter the interfaces on which to deploy the policies. + type: string + interfaceType: + description: Used for platforms that differentiate between access/service interfaces and network interface. These platforms may require different classifiers depending on whether they are applied on access/service interfaces or network interfaces. Specifies whether the classifier should be configured as a service Egress classifier or network Egress classifier + enum: + - ACCESS + - NETWORK + type: string + interfaces: + description: Specifies a list of Interfaces on which to deploy the policies. + items: + type: string + type: array + node: + description: Specifies a Node to deploy the policies on. + type: string + nodeSelector: + description: Specifies a label selector to filter the nodes on which to deploy the policies. + type: string + type: object + status: + description: PolicyDeploymentStatus defines the observed state of PolicyDeployment + type: object + type: object +served: true +storage: false +subresources: + status: {} diff --git a/static/resources/25.8.2/policydeployments.routingpolicies.eda.nokia.com/v1alpha1.yaml b/static/resources/25.8.2/policydeployments.routingpolicies.eda.nokia.com/v1alpha1.yaml new file mode 100644 index 0000000..cedf3ae --- /dev/null +++ b/static/resources/25.8.2/policydeployments.routingpolicies.eda.nokia.com/v1alpha1.yaml @@ -0,0 +1,42 @@ +name: v1alpha1 +schema: + openAPIV3Schema: + description: PolicyDeployment is the Schema for the policydeployments API + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + description: PolicyDeploymentSpec defines the desired state of PolicyDeployment + properties: + node: + description: Specifies a Node to deploy this policy on + type: string + policy: + description: Specifies a Policy to deploy on the specified Node + type: string + required: + - node + type: object + status: + description: PolicyDeploymentStatus defines the observed state of PolicyDeployment + type: object + type: object +served: true +storage: true +subresources: + status: {} diff --git a/static/resources/25.8.2/policys.routingpolicies.eda.nokia.com/v1alpha1.yaml b/static/resources/25.8.2/policys.routingpolicies.eda.nokia.com/v1alpha1.yaml new file mode 100644 index 0000000..e2f89d6 --- /dev/null +++ b/static/resources/25.8.2/policys.routingpolicies.eda.nokia.com/v1alpha1.yaml @@ -0,0 +1,281 @@ +name: v1alpha1 +schema: + openAPIV3Schema: + description: Policy is the Schema for the policys API + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + description: Policy defines a set of rules and actions to manage network traffic or routing behavior, with statements that include matching conditions and actions, such as accepting or rejecting routes, or modifying route attributes like BGP parameters. + properties: + defaultAction: + description: The default action to apply if no other actions are defined. + properties: + bgp: + description: Actions related to the BGP protocol. + properties: + asPathPrepend: + description: AS number to prepend to the AS Path attributes. + format: int32 + maximum: 4294967295 + minimum: 1 + type: integer + asPathRemove: + description: Clear the AS path to make it empty. + type: boolean + asPathReplace: + description: Replace the existing AS path with a new AS_SEQUENCE containing the listed AS numbers. + items: + format: int32 + type: integer + type: array + communitySet: + description: Modify BGP communities associated with the route using hybrid Community Sets. + properties: + add: + description: List of community sets to add to the route. + items: + type: string + maxItems: 1 + type: array + remove: + description: List of community sets to remove from the route. + items: + type: string + maxItems: 1 + type: array + replace: + description: List of community sets to replace the existing communities with. Cannot be combined with Add or Remove. + items: + type: string + maxItems: 1 + type: array + type: object + localPreference: + description: Set a new LOCAL_PREF value for matching BGP routes. + format: int32 + maximum: 4294967295 + minimum: 0 + type: integer + med: + description: Set a new MED value. + properties: + numericalValue: + description: Fixed numerical value to set or add/subtract. + maximum: 4294967295 + minimum: 0 + type: integer + operation: + description: The operation to perform on the MED value. + enum: + - Set + - Add + - Subtract + type: string + valueType: + description: Use a fixed value or an IGP metric to adjust the MED. + enum: + - Fixed + - IGP + type: string + type: object + setOrigin: + description: Set a new ORIGIN attribute for matching BGP routes. + enum: + - egp + - igp + - incomplete + type: string + type: object + policyResult: + description: Final disposition for the route. + enum: + - accept + - reject + - NextPolicy + - NextStatement + type: string + type: object + statement: + description: List of policy statements. + items: + properties: + action: + description: Actions for routes that match the policy statement. + properties: + bgp: + description: Actions related to the BGP protocol. + properties: + asPathPrepend: + description: AS number to prepend to the AS Path attributes. + format: int32 + maximum: 4294967295 + minimum: 1 + type: integer + asPathRemove: + description: Clear the AS path to make it empty. + type: boolean + asPathReplace: + description: Replace the existing AS path with a new AS_SEQUENCE containing the listed AS numbers. + items: + format: int32 + type: integer + type: array + communitySet: + description: Modify BGP communities associated with the route using hybrid Community Sets. + properties: + add: + description: List of community sets to add to the route. + items: + type: string + maxItems: 1 + type: array + remove: + description: List of community sets to remove from the route. + items: + type: string + maxItems: 1 + type: array + replace: + description: List of community sets to replace the existing communities with. Cannot be combined with Add or Remove. + items: + type: string + maxItems: 1 + type: array + type: object + localPreference: + description: Set a new LOCAL_PREF value for matching BGP routes. + format: int32 + maximum: 4294967295 + minimum: 0 + type: integer + med: + description: Set a new MED value. + properties: + numericalValue: + description: Fixed numerical value to set or add/subtract. + maximum: 4294967295 + minimum: 0 + type: integer + operation: + description: The operation to perform on the MED value. + enum: + - Set + - Add + - Subtract + type: string + valueType: + description: Use a fixed value or an IGP metric to adjust the MED. + enum: + - Fixed + - IGP + type: string + type: object + setOrigin: + description: Set a new ORIGIN attribute for matching BGP routes. + enum: + - egp + - igp + - incomplete + type: string + type: object + policyResult: + description: Final disposition for the route. + enum: + - accept + - reject + - NextPolicy + - NextStatement + type: string + type: object + match: + description: Match conditions of the policy statement. + properties: + bgp: + description: Configuration for BGP-specific policy match criteria. + properties: + asPathMatch: + description: AS Path match criteria. + properties: + asPathExpression: + description: A singular regular expression string to match against AS_PATH objects. Mutually exclusive with the ASPathSet reference. + type: string + asPathSet: + description: Reference to an ASPathSet resource. Mutually exclusive with the ASPathExpression. + type: string + matchSetOptions: + description: The matching criteria that applies to the members in the referenced set. + enum: + - Any + - All + - Invert + type: string + type: object + communitySet: + description: Match conditions for BGP communities. + type: string + evpnRouteType: + description: Match conditions for EVPN route types. + items: + type: integer + type: array + type: object + family: + description: Address families that the route belongs to. + items: + type: string + type: array + prefixSet: + description: Reference to a PrefixSet resource. + type: string + protocol: + description: The route protocol type to match. + enum: + - AGGREGATE + - ARP_ND + - BGP + - BGP_EVPN + - DHCP + - GRIBI + - HOST + - ISIS + - LOCAL + - LINUX + - NDK1 + - NDK2 + - OSPFV2 + - OSPFV3 + - STATIC + type: string + type: object + name: + description: Name of the policy statement. + type: string + required: + - name + type: object + type: array + type: object + status: + description: PolicyStatus defines the observed state of Policy. + type: object + type: object +served: true +storage: true +subresources: + status: {} diff --git a/static/resources/25.8.2/powersupplies.components.eda.nokia.com/v1.yaml b/static/resources/25.8.2/powersupplies.components.eda.nokia.com/v1.yaml new file mode 100644 index 0000000..067e111 --- /dev/null +++ b/static/resources/25.8.2/powersupplies.components.eda.nokia.com/v1.yaml @@ -0,0 +1,124 @@ +name: v1 +schema: + openAPIV3Schema: + description: PowerSupply is the Schema for the powersupplies API + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + description: PowerSupplySpec defines the desired state of PowerSupply + properties: + foo: + description: |- + INSERT ADDITIONAL SPEC FIELDS - define desired state of cluster + Important: Run "edabuilder generate" to regenerate code after modifying this file + type: string + required: + - foo + type: object + status: + description: PowerSupplyStatus defines the observed state of PowerSupply + properties: + commonLanguageEquipmentIdentifier: + description: The CLEI code of this component + type: string + lastBooted: + description: The date and time this component last booted + type: string + lastChange: + description: The date and time this component last changed operational state + type: string + locatorEnabled: + description: Indicates if the locator LED for the component is active + type: boolean + manufacturedDate: + description: The date this component was manufactured + type: string + operationalState: + description: Indicates the current operational state of this component. + enum: + - Up + - Down + - Rebooting + - Unknown + - Starting + - Empty + type: string + parent: + description: Reference to a parent component + type: string + parentType: + description: Type of the parent component + enum: + - Fan + - FanTray + - PowerSupply + - PowerModule + - PowerShelf + - InterfaceModule + - ControlModule + - FabricModule + - Chassis + - Transceiver + type: string + partNumber: + description: The discovered part number of this component + type: string + removable: + description: Indicates if this component is removable + type: boolean + serialNumber: + description: The discovered serial number of this component + type: string + slot: + description: Slot this component resides in, unset for components that do not have a slot or ID + type: string + softwareVersion: + description: Version string of the software running on this component + type: string + target: + description: Target this component resides on. + type: string + temperature: + description: Temperature information for this component + properties: + alarmState: + description: The temperature alarm state, as reported by the component + type: boolean + instant: + description: The current temperature of this component + type: integer + margin: + description: The margin temperature of this component + type: integer + maximum: + description: The maximum temperature of this component + type: integer + threshold: + description: The threshold temperature of this component + type: integer + type: object + type: + description: Component type, as provided by the target + type: string + type: object + type: object +served: true +storage: true +subresources: + status: {} diff --git a/static/resources/25.8.2/prefixsetdeployments.routingpolicies.eda.nokia.com/v1alpha1.yaml b/static/resources/25.8.2/prefixsetdeployments.routingpolicies.eda.nokia.com/v1alpha1.yaml new file mode 100644 index 0000000..b886afa --- /dev/null +++ b/static/resources/25.8.2/prefixsetdeployments.routingpolicies.eda.nokia.com/v1alpha1.yaml @@ -0,0 +1,42 @@ +name: v1alpha1 +schema: + openAPIV3Schema: + description: PrefixSetDeployment is the Schema for the prefixsetdeployments API + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + description: PrefixSetDeploymentSpec defines the desired state of PrefixSetDeployment + properties: + node: + description: Specifies a Node to deploy this policy on + type: string + prefixSet: + description: Specifies a PrefixSet to deploy to the specified Node + type: string + required: + - node + type: object + status: + description: PrefixSetDeploymentStatus defines the observed state of PrefixSetDeployment + type: object + type: object +served: true +storage: true +subresources: + status: {} diff --git a/static/resources/25.8.2/prefixsets.routingpolicies.eda.nokia.com/v1alpha1.yaml b/static/resources/25.8.2/prefixsets.routingpolicies.eda.nokia.com/v1alpha1.yaml new file mode 100644 index 0000000..8b1577f --- /dev/null +++ b/static/resources/25.8.2/prefixsets.routingpolicies.eda.nokia.com/v1alpha1.yaml @@ -0,0 +1,60 @@ +name: v1alpha1 +schema: + openAPIV3Schema: + description: PrefixSet is the Schema for the prefixsets API + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + description: PrefixSet defines a collection of IP prefixes, which may include specific CIDR blocks or a range of prefixes. This set is typically used for matching routes or implementing routing policies. + properties: + prefix: + description: List of IPv4 or IPv6 prefixes in CIDR notation. + items: + properties: + endRange: + description: The end range when using a range to match prefixes. + maximum: 128 + minimum: 0 + type: integer + exact: + description: Indicates if it is an exact match. Ignores the StartRange and EndRange if this param is set. + type: boolean + prefix: + description: The IPv4 or IPv6 prefix in CIDR notation with mask. + type: string + startRange: + description: If specifying a range, this is the start of the range. + maximum: 128 + minimum: 0 + type: integer + required: + - prefix + type: object + type: array + required: + - prefix + type: object + status: + description: PrefixSetStatus defines the observed state of PrefixSet. + type: object + type: object +served: true +storage: true +subresources: + status: {} diff --git a/static/resources/25.8.2/queues.qos.eda.nokia.com/v1.yaml b/static/resources/25.8.2/queues.qos.eda.nokia.com/v1.yaml new file mode 100644 index 0000000..df58f8e --- /dev/null +++ b/static/resources/25.8.2/queues.qos.eda.nokia.com/v1.yaml @@ -0,0 +1,52 @@ +name: v1 +schema: + openAPIV3Schema: + description: Queue is the Schema for the queues API + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + description: The Queue resource is used to define the properties of a queue, which can then be referenced by other resources. + properties: + queueID: + description: The ID of the queue on which to apply the properties. This is mandatory for usage of queus on SROS and is ignored on other operating systems. + type: integer + queueType: + description: QueueType specifies whether this is a normal queue or a PFC queue + enum: + - Normal + - Pfc + type: string + trafficType: + description: The traffic type of the queue, either unicast or multicast. + enum: + - Unicast + - Multicast + type: string + required: + - queueType + - trafficType + type: object + status: + description: QueueStatus defines the observed state of Queue + type: object + type: object +served: true +storage: true +subresources: + status: {} diff --git a/static/resources/25.8.2/queues.qos.eda.nokia.com/v1alpha1.yaml b/static/resources/25.8.2/queues.qos.eda.nokia.com/v1alpha1.yaml new file mode 100644 index 0000000..7739d1c --- /dev/null +++ b/static/resources/25.8.2/queues.qos.eda.nokia.com/v1alpha1.yaml @@ -0,0 +1,54 @@ +deprecated: true +deprecationWarning: This version is deprecated and will no longer be supported in the next version. +name: v1alpha1 +schema: + openAPIV3Schema: + description: Queue is the Schema for the queues API + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + description: The Queue resource is used to define the properties of a queue, which can then be referenced by other resources. + properties: + queueID: + description: The ID of the queue on which to apply the properties. This is mandatory for usage of queus on SROS and is ignored on other operating systems. + type: integer + queueType: + description: QueueType specifies whether this is a normal queue or a PFC queue + enum: + - Normal + - Pfc + type: string + trafficType: + description: The traffic type of the queue, either unicast or multicast. + enum: + - Unicast + - Multicast + type: string + required: + - queueType + - trafficType + type: object + status: + description: QueueStatus defines the observed state of Queue + type: object + type: object +served: true +storage: false +subresources: + status: {} diff --git a/static/resources/25.8.2/registries.appstore.eda.nokia.com/v1.yaml b/static/resources/25.8.2/registries.appstore.eda.nokia.com/v1.yaml new file mode 100644 index 0000000..676fc8b --- /dev/null +++ b/static/resources/25.8.2/registries.appstore.eda.nokia.com/v1.yaml @@ -0,0 +1,79 @@ +additionalPrinterColumns: + - jsonPath: .spec.remoteURL + name: RemoteURL + type: string + - jsonPath: .spec.mirror + name: Mirror + type: string + - jsonPath: .status.reachable + name: Reachable + type: string +name: v1 +schema: + openAPIV3Schema: + description: Registry is the Schema for the Registry API + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + description: RegistrySpec defines the desired state of a Registry + properties: + authSecretRef: + description: |- + AuthSecretRef is the authentication secret reference, used for authentication. + Must be in the same namespace as the catalog. + type: string + mirror: + description: |- + Mirror registry of the original remote registry. + App store will use the mirror instead of the original registry that is referenced by a catalog. + type: string + remoteURL: + description: |- + RemoteURL is the remote URL of the registry. Supported URI schemes: 'https://' and 'http://'. + Default is HTTPS if no scheme is given. + type: string + skipTLSVerify: + default: false + description: Skip TLS Verification on connection + type: boolean + title: + description: Title is an UI-friendly name for the catalog. + maxLength: 50 + type: string + required: + - remoteURL + type: object + status: + description: RegistryStatus defines the observed state of Registry + properties: + error: + description: Error denotes the last error that was encountered by the controller. + type: string + reachable: + default: false + description: Reachable indicates if the registry is reachable. + type: boolean + required: + - error + type: object + type: object +served: true +storage: true +subresources: + status: {} diff --git a/static/resources/25.8.2/roles.core.eda.nokia.com/v1.yaml b/static/resources/25.8.2/roles.core.eda.nokia.com/v1.yaml new file mode 100644 index 0000000..f1e2566 --- /dev/null +++ b/static/resources/25.8.2/roles.core.eda.nokia.com/v1.yaml @@ -0,0 +1,128 @@ +name: v1 +schema: + openAPIV3Schema: + description: Role is the Schema for the roles API + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + description: RoleSpec defines the desired state of Role + properties: + description: + description: A description for the role. + type: string + resourceRules: + description: The rules for access to kubernetes resources + items: + description: A role rule controlling access to a kubernetes resource. + properties: + apiGroups: + description: |- + The API groups for the resources controlled by the rule. + An API group consists of an apiGroup and a version, e.g. "apigroup/version". + The API group can be a wildcard ("*"), in which case it will match any API group. + items: + minLength: 1 + type: string + minItems: 1 + type: array + permissions: + description: Permissions for resources specified by the rule. + enum: + - none + - read + - readWrite + type: string + resources: + description: |- + Names for the resources controlled by the rule. + It can be a wildcard ("*"), in which case it will match any resource + in the matching API groups. + items: + minLength: 1 + type: string + minItems: 1 + type: array + required: + - apiGroups + - permissions + - resources + type: object + type: array + tableRules: + description: The rules for access to the database tables. + items: + description: |- + A role rule controlling access to a EDB table. Note that + there is never write access to EDB. + properties: + path: + description: |- + EDB path to which this rule applies. It can end in ".*" + in which case the final portion of the table path can be anything, if the + prefix matches. It can end in ".**" in which case the table path can be + anything if the prefix matches. + minLength: 1 + pattern: ^\..* + type: string + permissions: + description: Permissions for the given EDB path. + enum: + - none + - read + type: string + required: + - path + - permissions + type: object + type: array + urlRules: + description: The rules for access to api-server proxied routes. + items: + description: A role rule controlling access to an API server proxy. + properties: + path: + description: |- + The API server URL path to which this rule applies. It can end in "/*" + in which case the final portion of the URL path can be anything, if the + prefix matches. It can end in "/**" in which case the URL path can be + anything if the prefix matches. + minLength: 1 + pattern: ^/.* + type: string + permissions: + description: The permissions for the API server URL for the rule. + enum: + - none + - read + - readWrite + type: string + required: + - path + - permissions + type: object + type: array + type: object + status: + description: RoleStatus defines the observed state of Role + type: object + type: object +served: true +storage: true +subresources: + status: {} diff --git a/static/resources/25.8.2/routedinterfaces.services.eda.nokia.com/v1.yaml b/static/resources/25.8.2/routedinterfaces.services.eda.nokia.com/v1.yaml new file mode 100644 index 0000000..ce56a01 --- /dev/null +++ b/static/resources/25.8.2/routedinterfaces.services.eda.nokia.com/v1.yaml @@ -0,0 +1,365 @@ +additionalPrinterColumns: + - jsonPath: .spec.ipMtu + name: MTU + type: string + - jsonPath: .status.operationalState + name: OperationalState + type: string + - jsonPath: .status.lastChange + name: LastChange + type: string + - jsonPath: .metadata.creationTimestamp + name: Age + type: date +name: v1 +schema: + openAPIV3Schema: + description: RoutedInterface is the Schema for the routedinterfaces API + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + description: The RoutedInterface enables the configuration and management of Layer 3 interfaces for routing traffic between different networks. This resource allows for specifying an underlying Interface and Router, configuring VLAN IDs, and setting the IP MTU. It also supports the learning of unsolicited ARPs, defining both IPv4 and IPv6 addresses, and enabling unnumbered interfaces. Advanced features such as BFD configuration, Proxy ARP/ND, and ARP timeout settings are included to ensure robust and efficient routing. + properties: + arpTimeout: + default: 14400 + description: Duration of time that dynamic ARP entries remain in the ARP cache before they expire. + format: int32 + type: integer + bfd: + description: Enables BFD on the RoutedInterface. + properties: + desiredMinTransmitInt: + default: 1000000 + description: The minimum interval in microseconds between transmission of BFD control packets. + maximum: 100000000 + minimum: 10000 + type: integer + detectionMultiplier: + default: 3 + description: The number of packets that must be missed to declare this session as down. + maximum: 20 + minimum: 3 + type: integer + enabled: + default: false + description: Enables Biforward Detection. + type: boolean + minEchoReceiveInterval: + default: 0 + description: The minimum interval between echo packets the local node can receive. + maximum: 100000000 + minimum: 0 + type: integer + requiredMinReceive: + default: 1000000 + description: The minimum interval in microseconds between received BFD control packets that this system should support. + maximum: 100000000 + minimum: 10000 + type: integer + ttl: + description: Sets custom IP TTL or Hop Limit for multi-hop BFD sessions packets. Not appllicable to single-hop BFD sessions. + maximum: 255 + minimum: 2 + type: integer + required: + - enabled + type: object + description: + description: The description of the RoutedInterface. + type: string + egress: + description: Manages actions on traffic at Egress. + properties: + filters: + description: List of Filter references to use at egress. + items: + type: string + type: array + qosPolicy: + description: List of QoS Egress policy references to use at egress. + items: + type: string + type: array + type: object + ingress: + description: Manages actions on traffic at Ingress. + properties: + filters: + description: List of Filter references to use at ingress. + items: + type: string + type: array + qosPolicy: + description: List of QoS Ingress policy references to use at ingress. + items: + type: string + type: array + type: object + interface: + description: Reference to an Interface to use for attachment. + type: string + ipMTU: + default: 1500 + description: IP MTU for the RoutedInterface. + maximum: 9486 + minimum: 1280 + type: integer + ipv4Addresses: + description: List of IPv4 addresses in IP/mask form, e.g., 192.168.0.1/24. + items: + properties: + ipPrefix: + description: Address and mask to use + type: string + primary: + description: Indicates which address to use as primary for broadcast + type: boolean + required: + - ipPrefix + type: object + type: array + ipv4Parameters: + properties: + directedBroadcast: + description: Allow receiving and forwarding of directed broadcast packets. Enabled when set to true. + type: boolean + type: object + ipv6Addresses: + description: List of IPv6 addresses in IP/mask form, e.g., fc00::1/120. + items: + properties: + ipPrefix: + description: Address and mask to use + type: string + primary: + description: Indicates which address to use as primary for broadcast + type: boolean + required: + - ipPrefix + type: object + type: array + ipv6RouterAdvertisement: + properties: + currentHopLimit: + default: 64 + description: The current hop limit to advertise in the router advertisement messages. + format: int32 + maximum: 255 + minimum: 0 + type: integer + enabled: + default: false + description: Enable or disable IPv6 router advertisements. + type: boolean + ipMTU: + description: The IP MTU to advertise in the router advertisement messages. + format: int32 + maximum: 9486 + minimum: 1280 + type: integer + managedConfigurationFlag: + default: false + description: Enable DHCPv6 for address configuration (M-bit). + type: boolean + maxAdvertisementInterval: + default: 600 + description: Maximum time between router advertisements (in seconds). + format: int32 + maximum: 1800 + minimum: 4 + type: integer + minAdvertisementInterval: + default: 200 + description: Minimum time between router advertisements (in seconds). + format: int32 + maximum: 1350 + minimum: 3 + type: integer + otherConfigurationFlag: + default: false + description: Enable DHCPv6 for other configuration (O-bit). + type: boolean + prefixes: + description: IPv6 prefixes to advertise in router advertisements. + items: + description: IPv6Prefix defines the configuration for an IPv6 prefix advertisement. + properties: + autonomousFlag: + default: true + description: When this is set in the prefix information option hosts can use the prefix for stateless address autoconfiguration (SLAAC). + type: boolean + onLinkFlag: + default: true + description: When this is set in the prefix information option hosts can use the prefix for on-link determination. + type: boolean + preferredLifetime: + default: 604800 + description: The length of time in seconds (relative to the time the packet is sent) that addresses generated from the prefix via stateless address autoconfiguration remain preferred. + format: int32 + maximum: 4294967295 + minimum: 0 + type: integer + prefix: + description: An IPv6 global unicast address prefix. + type: string + validLifetime: + default: 2592000 + description: The length of time in seconds (relative to the time the packet is sent) that the prefix is valid for the purpose of on-link determination. + format: int32 + maximum: 4294967295 + minimum: 0 + type: integer + required: + - prefix + type: object + type: array + reachableTime: + default: 0 + description: Time in milliseconds for Neighbor Unreachability Detection. + format: int32 + maximum: 3600000 + minimum: 0 + type: integer + retransmitTime: + default: 0 + description: Time in milliseconds between retransmitted NS messages. + format: int32 + maximum: 1800000 + minimum: 0 + type: integer + routerLifetime: + default: 1800 + description: Router lifetime in seconds for default gateway. + format: int32 + maximum: 9000 + minimum: 0 + type: integer + required: + - currentHopLimit + - enabled + - managedConfigurationFlag + - maxAdvertisementInterval + - minAdvertisementInterval + - otherConfigurationFlag + - retransmitTime + - routerLifetime + type: object + l3ProxyARPND: + description: L3 Proxy ARP and ND configuration. + properties: + proxyARP: + default: false + description: Select whether Proxy ARP should be enabled. + type: boolean + proxyND: + default: false + description: Select whether Proxy ND should be enabled. + type: boolean + type: object + learnUnsolicited: + default: NONE + description: Enable or disable learning of unsolicited ARPs. + enum: + - BOTH + - GLOBAL + - LINK-LOCAL + - NONE + type: string + router: + description: Reference to a Router. + type: string + unnumbered: + description: Enables the use of unnumbered interfaces on the IRBInterface. If IPv6 is specified, no IP address are configured on the sub-interface and only the link local address will be used. If any IP addresses are specified for either IPv4 or IPv6 that will take precedence and IPs will be assigned to the interfaces. (Deprecated, Use IPv6RouterAdvertisement) + enum: + - IPV6 + type: string + vlanID: + default: pool + description: Single value between 1-4094 support, ranges supported in the format x-y,x-y, or the special keyword null, any, untagged or pool for auto allocation. + type: string + vlanPool: + default: vlan-pool + description: Reference to a VLAN pool to use for allocations. + type: string + required: + - interface + - router + type: object + status: + description: RoutedInterfaceStatus defines the observed state of RoutedInterface + properties: + health: + description: Indicates the health score of the RoutedInterface. + type: integer + healthScoreReason: + description: Indicates the reason for the health score. + type: string + interfaces: + description: Sub-interface status within the RoutedInterface. + items: + properties: + enabled: + description: The administrative status of the SubInterface. + type: boolean + interface: + description: Normalized interface name. + type: string + interfaceResource: + description: Eda interface resource. + type: string + lastChange: + description: Indicates when this SubInterface last changed state. + type: string + node: + description: Reference to Node object. + type: string + nodeInterface: + description: Node specific interface name. + type: string + operatingSystem: + description: Operating System of the Node. + type: string + operationalState: + description: Indicates the current operational state of the SubInterface. + type: string + subInterfaceIndex: + description: Index allocated to the subinterface on the associated interface for the given VLAN. + type: integer + vlanID: + description: vlan assigned to this subinterface. + type: string + required: + - interface + - interfaceResource + - node + - nodeInterface + type: object + type: array + lastChange: + description: The time when the state of the resource last changed. + type: string + operationalState: + description: Operational state of the RoutedInterface. + type: string + type: object + type: object +served: true +storage: true +subresources: + status: {} diff --git a/static/resources/25.8.2/routedinterfaces.services.eda.nokia.com/v1alpha1.yaml b/static/resources/25.8.2/routedinterfaces.services.eda.nokia.com/v1alpha1.yaml new file mode 100644 index 0000000..349758e --- /dev/null +++ b/static/resources/25.8.2/routedinterfaces.services.eda.nokia.com/v1alpha1.yaml @@ -0,0 +1,367 @@ +additionalPrinterColumns: + - jsonPath: .spec.ipMtu + name: MTU + type: string + - jsonPath: .status.operationalState + name: OperationalState + type: string + - jsonPath: .status.lastChange + name: LastChange + type: string + - jsonPath: .metadata.creationTimestamp + name: Age + type: date +deprecated: true +deprecationWarning: This version is deprecated and will no longer be supported in the next version. +name: v1alpha1 +schema: + openAPIV3Schema: + description: RoutedInterface is the Schema for the routedinterfaces API + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + description: The RoutedInterface enables the configuration and management of Layer 3 interfaces for routing traffic between different networks. This resource allows for specifying an underlying Interface and Router, configuring VLAN IDs, and setting the IP MTU. It also supports the learning of unsolicited ARPs, defining both IPv4 and IPv6 addresses, and enabling unnumbered interfaces. Advanced features such as BFD configuration, Proxy ARP/ND, and ARP timeout settings are included to ensure robust and efficient routing. + properties: + arpTimeout: + default: 14400 + description: Duration of time that dynamic ARP entries remain in the ARP cache before they expire. + format: int32 + type: integer + bfd: + description: Enables BFD on the RoutedInterface. + properties: + desiredMinTransmitInt: + default: 1000000 + description: The minimum interval in microseconds between transmission of BFD control packets. + maximum: 100000000 + minimum: 10000 + type: integer + detectionMultiplier: + default: 3 + description: The number of packets that must be missed to declare this session as down. + maximum: 20 + minimum: 3 + type: integer + enabled: + default: false + description: Enables Biforward Detection. + type: boolean + minEchoReceiveInterval: + default: 0 + description: The minimum interval between echo packets the local node can receive. + maximum: 100000000 + minimum: 0 + type: integer + requiredMinReceive: + default: 1000000 + description: The minimum interval in microseconds between received BFD control packets that this system should support. + maximum: 100000000 + minimum: 10000 + type: integer + ttl: + description: Sets custom IP TTL or Hop Limit for multi-hop BFD sessions packets. Not appllicable to single-hop BFD sessions. + maximum: 255 + minimum: 2 + type: integer + required: + - enabled + type: object + description: + description: The description of the RoutedInterface. + type: string + egress: + description: Manages actions on traffic at Egress. + properties: + filters: + description: List of Filter references to use at egress. + items: + type: string + type: array + qosPolicy: + description: List of QoS Egress policy references to use at egress. + items: + type: string + type: array + type: object + ingress: + description: Manages actions on traffic at Ingress. + properties: + filters: + description: List of Filter references to use at ingress. + items: + type: string + type: array + qosPolicy: + description: List of QoS Ingress policy references to use at ingress. + items: + type: string + type: array + type: object + interface: + description: Reference to an Interface to use for attachment. + type: string + ipMTU: + default: 1500 + description: IP MTU for the RoutedInterface. + maximum: 9486 + minimum: 1280 + type: integer + ipv4Addresses: + description: List of IPv4 addresses in IP/mask form, e.g., 192.168.0.1/24. + items: + properties: + ipPrefix: + description: Address and mask to use + type: string + primary: + description: Indicates which address to use as primary for broadcast + type: boolean + required: + - ipPrefix + type: object + type: array + ipv4Parameters: + properties: + directedBroadcast: + description: Allow receiving and forwarding of directed broadcast packets. Enabled when set to true. + type: boolean + type: object + ipv6Addresses: + description: List of IPv6 addresses in IP/mask form, e.g., fc00::1/120. + items: + properties: + ipPrefix: + description: Address and mask to use + type: string + primary: + description: Indicates which address to use as primary for broadcast + type: boolean + required: + - ipPrefix + type: object + type: array + ipv6RouterAdvertisement: + properties: + currentHopLimit: + default: 64 + description: The current hop limit to advertise in the router advertisement messages. + format: int32 + maximum: 255 + minimum: 0 + type: integer + enabled: + default: false + description: Enable or disable IPv6 router advertisements. + type: boolean + ipMTU: + description: The IP MTU to advertise in the router advertisement messages. + format: int32 + maximum: 9486 + minimum: 1280 + type: integer + managedConfigurationFlag: + default: false + description: Enable DHCPv6 for address configuration (M-bit). + type: boolean + maxAdvertisementInterval: + default: 600 + description: Maximum time between router advertisements (in seconds). + format: int32 + maximum: 1800 + minimum: 4 + type: integer + minAdvertisementInterval: + default: 200 + description: Minimum time between router advertisements (in seconds). + format: int32 + maximum: 1350 + minimum: 3 + type: integer + otherConfigurationFlag: + default: false + description: Enable DHCPv6 for other configuration (O-bit). + type: boolean + prefixes: + description: IPv6 prefixes to advertise in router advertisements. + items: + description: IPv6Prefix defines the configuration for an IPv6 prefix advertisement. + properties: + autonomousFlag: + default: true + description: When this is set in the prefix information option hosts can use the prefix for stateless address autoconfiguration (SLAAC). + type: boolean + onLinkFlag: + default: true + description: When this is set in the prefix information option hosts can use the prefix for on-link determination. + type: boolean + preferredLifetime: + default: 604800 + description: The length of time in seconds (relative to the time the packet is sent) that addresses generated from the prefix via stateless address autoconfiguration remain preferred. + format: int32 + maximum: 4294967295 + minimum: 0 + type: integer + prefix: + description: An IPv6 global unicast address prefix. + type: string + validLifetime: + default: 2592000 + description: The length of time in seconds (relative to the time the packet is sent) that the prefix is valid for the purpose of on-link determination. + format: int32 + maximum: 4294967295 + minimum: 0 + type: integer + required: + - prefix + type: object + type: array + reachableTime: + default: 0 + description: Time in milliseconds for Neighbor Unreachability Detection. + format: int32 + maximum: 3600000 + minimum: 0 + type: integer + retransmitTime: + default: 0 + description: Time in milliseconds between retransmitted NS messages. + format: int32 + maximum: 1800000 + minimum: 0 + type: integer + routerLifetime: + default: 1800 + description: Router lifetime in seconds for default gateway. + format: int32 + maximum: 9000 + minimum: 0 + type: integer + required: + - currentHopLimit + - enabled + - managedConfigurationFlag + - maxAdvertisementInterval + - minAdvertisementInterval + - otherConfigurationFlag + - retransmitTime + - routerLifetime + type: object + l3ProxyARPND: + description: L3 Proxy ARP and ND configuration. + properties: + proxyARP: + default: false + description: Select whether Proxy ARP should be enabled. + type: boolean + proxyND: + default: false + description: Select whether Proxy ND should be enabled. + type: boolean + type: object + learnUnsolicited: + default: NONE + description: Enable or disable learning of unsolicited ARPs. + enum: + - BOTH + - GLOBAL + - LINK-LOCAL + - NONE + type: string + router: + description: Reference to a Router. + type: string + unnumbered: + description: Enables the use of unnumbered interfaces on the IRBInterface. If IPv6 is specified, no IP address are configured on the sub-interface and only the link local address will be used. If any IP addresses are specified for either IPv4 or IPv6 that will take precedence and IPs will be assigned to the interfaces. (Deprecated, Use IPv6RouterAdvertisement) + enum: + - IPV6 + type: string + vlanID: + default: pool + description: Single value between 1-4094 support, ranges supported in the format x-y,x-y, or the special keyword null, any, untagged or pool for auto allocation. + type: string + vlanPool: + default: vlan-pool + description: Reference to a VLAN pool to use for allocations. + type: string + required: + - interface + - router + type: object + status: + description: RoutedInterfaceStatus defines the observed state of RoutedInterface + properties: + health: + description: Indicates the health score of the RoutedInterface. + type: integer + healthScoreReason: + description: Indicates the reason for the health score. + type: string + interfaces: + description: Sub-interface status within the RoutedInterface. + items: + properties: + enabled: + description: The administrative status of the SubInterface. + type: boolean + interface: + description: Normalized interface name. + type: string + interfaceResource: + description: Eda interface resource. + type: string + lastChange: + description: Indicates when this SubInterface last changed state. + type: string + node: + description: Reference to Node object. + type: string + nodeInterface: + description: Node specific interface name. + type: string + operatingSystem: + description: Operating System of the Node. + type: string + operationalState: + description: Indicates the current operational state of the SubInterface. + type: string + subInterfaceIndex: + description: Index allocated to the subinterface on the associated interface for the given VLAN. + type: integer + vlanID: + description: vlan assigned to this subinterface. + type: string + required: + - interface + - interfaceResource + - node + - nodeInterface + type: object + type: array + lastChange: + description: The time when the state of the resource last changed. + type: string + operationalState: + description: Operational state of the RoutedInterface. + type: string + type: object + type: object +served: true +storage: false +subresources: + status: {} diff --git a/static/resources/25.8.2/routedinterfacestates.services.eda.nokia.com/v1.yaml b/static/resources/25.8.2/routedinterfacestates.services.eda.nokia.com/v1.yaml new file mode 100644 index 0000000..b329f9b --- /dev/null +++ b/static/resources/25.8.2/routedinterfacestates.services.eda.nokia.com/v1.yaml @@ -0,0 +1,102 @@ +name: v1 +schema: + openAPIV3Schema: + description: RoutedInterfaceState is the Schema for the routedinterfacestates API + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + description: RoutedInterfaceStateSpec defines the desired state of RoutedInterfaceState + properties: + interfaces: + items: + properties: + interface: + description: Normalized interface name + type: string + interfaceResource: + description: Eda interface resource + type: string + node: + description: Reference to Node object + type: string + nodeInterface: + description: Node specific interface name + type: string + nodeSubInterface: + description: Node specific subinterface name + type: string + operatingSystem: + description: Operating System of the Node + type: string + subInterfaceIndex: + description: Index allocated to the subinterface on the associated interface for the given VLAN + type: integer + vlanID: + description: vlan assigned to this subinterface + type: string + required: + - interface + - interfaceResource + - node + - nodeInterface + type: object + type: array + ipv4Addresses: + description: List of IPv4 addresses + items: + properties: + ipPrefix: + description: Address and mask to use + type: string + primary: + description: Indicates which address to use as primary for broadcast + type: boolean + required: + - ipPrefix + type: object + type: array + ipv6Addresses: + description: List of IPv6 addresses + items: + properties: + ipPrefix: + description: Address and mask to use + type: string + primary: + description: Indicates which address to use as primary for broadcast + type: boolean + required: + - ipPrefix + type: object + type: array + router: + description: Router the RoutedInterface is attached to + type: string + required: + - interfaces + - router + type: object + status: + description: RoutedInterfaceStateStatus defines the observed state of RoutedInterfaceState + type: object + type: object +served: true +storage: true +subresources: + status: {} diff --git a/static/resources/25.8.2/routedinterfacestates.services.eda.nokia.com/v1alpha1.yaml b/static/resources/25.8.2/routedinterfacestates.services.eda.nokia.com/v1alpha1.yaml new file mode 100644 index 0000000..0c7b7bf --- /dev/null +++ b/static/resources/25.8.2/routedinterfacestates.services.eda.nokia.com/v1alpha1.yaml @@ -0,0 +1,104 @@ +deprecated: true +deprecationWarning: This version is deprecated and will no longer be supported in the next version. +name: v1alpha1 +schema: + openAPIV3Schema: + description: RoutedInterfaceState is the Schema for the routedinterfacestates API + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + description: RoutedInterfaceStateSpec defines the desired state of RoutedInterfaceState + properties: + interfaces: + items: + properties: + interface: + description: Normalized interface name + type: string + interfaceResource: + description: Eda interface resource + type: string + node: + description: Reference to Node object + type: string + nodeInterface: + description: Node specific interface name + type: string + nodeSubInterface: + description: Node specific subinterface name + type: string + operatingSystem: + description: Operating System of the Node + type: string + subInterfaceIndex: + description: Index allocated to the subinterface on the associated interface for the given VLAN + type: integer + vlanID: + description: vlan assigned to this subinterface + type: string + required: + - interface + - interfaceResource + - node + - nodeInterface + type: object + type: array + ipv4Addresses: + description: List of IPv4 addresses + items: + properties: + ipPrefix: + description: Address and mask to use + type: string + primary: + description: Indicates which address to use as primary for broadcast + type: boolean + required: + - ipPrefix + type: object + type: array + ipv6Addresses: + description: List of IPv6 addresses + items: + properties: + ipPrefix: + description: Address and mask to use + type: string + primary: + description: Indicates which address to use as primary for broadcast + type: boolean + required: + - ipPrefix + type: object + type: array + router: + description: Router the RoutedInterface is attached to + type: string + required: + - interfaces + - router + type: object + status: + description: RoutedInterfaceStateStatus defines the observed state of RoutedInterfaceState + type: object + type: object +served: true +storage: false +subresources: + status: {} diff --git a/static/resources/25.8.2/routelookups.routing.eda.nokia.com/v1alpha1.yaml b/static/resources/25.8.2/routelookups.routing.eda.nokia.com/v1alpha1.yaml new file mode 100644 index 0000000..ad4b308 --- /dev/null +++ b/static/resources/25.8.2/routelookups.routing.eda.nokia.com/v1alpha1.yaml @@ -0,0 +1,134 @@ +name: v1alpha1 +schema: + openAPIV3Schema: + description: RouteLookup is the Schema for the routelookups API + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + description: |- + This workflow is used to look up routes on a set of nodes. + It takes an address, and an optional list of nodes (or node selectors - a list of label expressions) to perform the lookup on, + and returns the matching route, and the set of egress interfaces that would be used to reach it. + properties: + address: + description: |- + Address to perform a lookup for. + This is a standard IPv4 or IPv6 address, excluding mask or prefix length, e.g. 12.0.0.1. + type: string + networkInstance: + description: |- + Network Instance is the locally named network instance to use for the lookup. + Can be omitted if the default network instance is to be used. + type: string + nodeSelectors: + description: |- + Node Selectors is a list of node label selectors to execute lookups on. + This is a list of label expressions, e.g. ["eda.nokia.com/role=leaf", "eda.nokia.com/region=us-west"]. + items: + type: string + type: array + nodes: + description: Nodes is a list of node names to execute lookups on. + items: + type: string + type: array + resolve: + default: true + description: Resolve indicates whether indirect next hops should be resolved. + type: boolean + required: + - address + - resolve + type: object + status: + description: RouteLookupStatus defines the observed state of RouteLookup + properties: + found: + type: boolean + nodesWithRoute: + type: integer + results: + items: + properties: + error: + type: string + found: + type: boolean + networkInstance: + type: string + nextHopGroupId: + format: int64 + type: integer + nextHops: + items: + properties: + indirect: + properties: + ipPrefix: + type: string + nextHopGroupId: + format: int64 + type: integer + resolved: + type: boolean + type: + type: string + type: object + interfaces: + items: + properties: + name: + description: Name of the egress interface. + type: string + peerNode: + description: The node this interface is connected to. + type: string + required: + - name + type: object + type: array + ipAddress: + type: string + nextHopId: + format: int64 + type: integer + type: + type: string + type: object + type: array + node: + type: string + rawOutput: + type: string + route: + type: string + required: + - found + type: object + type: array + totalNodes: + type: integer + required: + - found + type: object + type: object +served: true +storage: true +subresources: + status: {} diff --git a/static/resources/25.8.2/routerdeployments.services.eda.nokia.com/v1.yaml b/static/resources/25.8.2/routerdeployments.services.eda.nokia.com/v1.yaml new file mode 100644 index 0000000..57971de --- /dev/null +++ b/static/resources/25.8.2/routerdeployments.services.eda.nokia.com/v1.yaml @@ -0,0 +1,43 @@ +name: v1 +schema: + openAPIV3Schema: + description: RouterDeployment is the Schema for the routerdeployments API + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + description: RouterDeploymentSpec defines the desired state of RouterDeployment + properties: + node: + description: Reference to a Node on which to push the Router + type: string + router: + description: Reference to a Router + type: string + required: + - node + - router + type: object + status: + description: RouterDeploymentStatus defines the observed state of RouterDeployment + type: object + type: object +served: true +storage: true +subresources: + status: {} diff --git a/static/resources/25.8.2/routerdeployments.services.eda.nokia.com/v1alpha1.yaml b/static/resources/25.8.2/routerdeployments.services.eda.nokia.com/v1alpha1.yaml new file mode 100644 index 0000000..69e7ec2 --- /dev/null +++ b/static/resources/25.8.2/routerdeployments.services.eda.nokia.com/v1alpha1.yaml @@ -0,0 +1,45 @@ +deprecated: true +deprecationWarning: This version is deprecated and will no longer be supported in the next version. +name: v1alpha1 +schema: + openAPIV3Schema: + description: RouterDeployment is the Schema for the routerdeployments API + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + description: RouterDeploymentSpec defines the desired state of RouterDeployment + properties: + node: + description: Reference to a Node on which to push the Router + type: string + router: + description: Reference to a Router + type: string + required: + - node + - router + type: object + status: + description: RouterDeploymentStatus defines the observed state of RouterDeployment + type: object + type: object +served: true +storage: false +subresources: + status: {} diff --git a/static/resources/25.8.2/routereflectorclients.protocols.eda.nokia.com/v1.yaml b/static/resources/25.8.2/routereflectorclients.protocols.eda.nokia.com/v1.yaml new file mode 100644 index 0000000..fe36b61 --- /dev/null +++ b/static/resources/25.8.2/routereflectorclients.protocols.eda.nokia.com/v1.yaml @@ -0,0 +1,328 @@ +additionalPrinterColumns: + - jsonPath: .status.lastChange + name: Last Change + type: date + - jsonPath: .status.operationalState + name: Operational State + type: string + - jsonPath: .status.numRouteReflectorClientBGPPeers + name: NumRouteReflectorClientBGPPeers + type: string + - jsonPath: .status.numRouteReflectorClientBGPPeersOperDown + name: NumRouteReflectorClientBGPPeersOperDown + type: string +name: v1 +schema: + openAPIV3Schema: + description: RouteReflectorClient is the Schema for the routereflectorclients API + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + description: RouteReflectorClient manages the configuration of iBGP sessions between a client and RouteReflectors. This resource allows you to specify the Interface for BGP sessions, set selectors for RouteReflectors, and configure common BGP settings. + properties: + asPathOptions: + description: AS Path Options + properties: + allowOwnAS: + default: 0 + description: The maximum number of times the global AS number or a local AS number of the BGP instance can appear in any received AS_PATH before it is considered a loop and considered invalid. + maximum: 255 + minimum: 0 + type: integer + removePrivateAS: + description: Options for removing private AS numbers (2-byte and 4-byte) from the advertised AS path towards all peers. + properties: + ignorePeerAS: + default: false + description: If set to true then do not delete or replace a private AS number that is the same as the peer AS number. + type: boolean + leadingOnly: + default: false + description: If set to true then only delete or replace private AS numbers that appear before the first occurrence of a non-private ASN in the sequence of most recent ASNs in the AS path. + type: boolean + removePrivateASMode: + default: DISABLED + description: The method by which private AS numbers are removed from the advertised AS_PATH attribute. + enum: + - DISABLED + - REPLACE + - DELETE + type: string + required: + - ignorePeerAS + - leadingOnly + - removePrivateASMode + type: object + required: + - allowOwnAS + type: object + bfd: + description: Enable or disable Bi-forward Forwarding Detection (BFD) with fast failover. + type: boolean + bgpGroup: + description: Reference to BgpGroup. + type: string + exportPolicy: + description: Reference to a Policy CR that will be used to filter routes advertised to peers. + items: + type: string + type: array + grStaleRouteTime: + description: Enables Graceful Restart on the peer and sets the stale route time. + maximum: 3600 + minimum: 1 + type: integer + importPolicy: + description: Reference to a Policy CR that will be used to filter routes received from peers. + items: + type: string + type: array + interface: + description: Reference to a RoutedInterface or IrbInterface resource whose IP will be used as a source IP for the BGP session. + type: string + interfaceKind: + description: InterfaceReference type defines whether the provided Reference is a RoutedInterface or IrbInterface. + enum: + - ROUTEDINTERFACE + - IRBINTERFACE + type: string + ipv4RouteReflectorSelector: + description: Label selector used to select the RouteReflectors to which the iBGP sessions are established for IPv4. + items: + type: string + type: array + ipv4Unicast: + description: Parameters relating to the IPv4 unicast AFI/SAFI. + properties: + advertiseIPV6NextHops: + description: Enables advertisement of IPv4 Unicast routes with IPv6 next-hops to peers. + type: boolean + enabled: + description: Enables the IPv4 unicast AFISAFI. + type: boolean + prefixLimit: + properties: + prefixLimitAccepted: + properties: + logOnly: + description: Defines the action to take when the maximum number of prefixes is exceeded. Session is reset if set to false, otherwise only a warning is logged. + type: boolean + maxReceivedRoutes: + description: Maximum number of prefixes allowed to be received from the neighbor, counting only accepted routes. + format: int32 + maximum: 4294967295 + minimum: 1 + type: integer + warningThreshold: + description: A percentage of the maximum number of prefixes that can be accepted before a warning is logged. + maximum: 100 + minimum: 1 + type: integer + type: object + prefixLimitReceived: + properties: + logOnly: + description: Defines the action to take when the maximum number of prefixes is exceeded. Session is reset if set to false, otherwise only a warning is logged. + type: boolean + maxReceivedRoutes: + description: Maximum number of prefixes allowed to be received from the neighbor, counting all routes (accepted and rejected by import policies). + format: int32 + maximum: 4294967295 + minimum: 1 + type: integer + warningThreshold: + description: A percentage of the maximum number of prefixes that can be received before a warning is logged. + maximum: 100 + minimum: 1 + type: integer + type: object + type: object + receiveIPV6NextHops: + description: Enables the advertisement of the RFC 5549 capability to receive IPv4 routes with IPv6 next-hops. + type: boolean + type: object + ipv6RouteReflectorSelector: + description: Label selector used to select the RouteReflectors to which the iBGP sessions are established for IPv6. + items: + type: string + type: array + ipv6Unicast: + description: Parameters relating to the IPv6 unicast AFI/SAFI. + properties: + enabled: + description: Enables the IPv6 unicast AFISAFI + type: boolean + prefixLimit: + properties: + prefixLimitAccepted: + properties: + logOnly: + description: Defines the action to take when the maximum number of prefixes is exceeded. Session is reset if set to false, otherwise only a warning is logged. + type: boolean + maxReceivedRoutes: + description: Maximum number of prefixes allowed to be received from the neighbor, counting only accepted routes. + format: int32 + maximum: 4294967295 + minimum: 1 + type: integer + warningThreshold: + description: A percentage of the maximum number of prefixes that can be accepted before a warning is logged. + maximum: 100 + minimum: 1 + type: integer + type: object + prefixLimitReceived: + properties: + logOnly: + description: Defines the action to take when the maximum number of prefixes is exceeded. Session is reset if set to false, otherwise only a warning is logged. + type: boolean + maxReceivedRoutes: + description: Maximum number of prefixes allowed to be received from the neighbor, counting all routes (accepted and rejected by import policies). + format: int32 + maximum: 4294967295 + minimum: 1 + type: integer + warningThreshold: + description: A percentage of the maximum number of prefixes that can be received before a warning is logged. + maximum: 100 + minimum: 1 + type: integer + type: object + type: object + type: object + keychain: + description: Reference to a Keychain resource that will be used for authentication with the BGP peer. + type: string + localAS: + description: The local autonomous system number advertised to peers. + properties: + autonomousSystem: + description: Local Autonomous System number. + maximum: 4294967295 + minimum: 1 + type: integer + prependGlobalAS: + description: When set to true, the global ASN value is prepended to the AS path in outbound routes towards each BGP peer. + type: boolean + prependLocalAS: + description: When set to true, the local AS value is prepended to the AS path of inbound routes from each EBGP peer. + type: boolean + required: + - autonomousSystem + type: object + peerAS: + description: The autonomous system number expected from peers. + properties: + autonomousSystem: + description: Local Autonomous System number. + maximum: 4294967295 + minimum: 1 + type: integer + required: + - autonomousSystem + type: object + routeReflectorIPs: + description: List of the peering IPs on the RRs to which peering session is established. + items: + type: string + type: array + sendCommunityLarge: + description: When false, all large (12 byte) BGP communities from all outbound routes advertised to the peer are stripped. + type: boolean + sendCommunityStandard: + description: When false, all standard (4 byte) communities from all outbound routes advertised to the peer are stripped. + type: boolean + sendDefaultRoute: + description: Options for controlling the generation of default routes towards BGP peers. + properties: + addressFamily: + description: Enables the sending of a synthetically generated default IPv4 or IPV6 route to each peer. + items: + enum: + - IPV4-UNICAST + - IPV6-UNICAST + type: string + type: array + exportPolicy: + description: Reference to a Policy that should be applied to the advertised default routes, in order to set their attributes to non-default values. + type: string + required: + - addressFamily + type: object + timers: + description: Timer configurations + properties: + connectRetry: + description: The time interval in seconds between successive attempts to establish a session with a peer. + maximum: 65535 + minimum: 1 + type: integer + holdTime: + description: The hold-time interval in seconds that the router proposes to the peer in its OPEN message. + maximum: 65535 + minimum: 0 + type: integer + keepAlive: + description: The interval in seconds between successive keepalive messages sent to the peer. + maximum: 21845 + minimum: 0 + type: integer + minimumAdvertisementInterval: + description: The value assigned to the MinRouteAdvertisementIntervalTimer of RFC 4271, for both EBGP and IBGP sessions. + maximum: 255 + minimum: 1 + type: integer + type: object + required: + - bgpGroup + - interface + - interfaceKind + type: object + status: + description: RouteReflectorClientStatus defines the observed state of RouteReflectorClient + properties: + health: + description: Indicates the health score of the RouteReflectorClient. + type: integer + healthScoreReason: + description: Indicates the reason for the health score. + type: string + lastChange: + description: The time when the state of the resource last changed. + type: string + numRouteReflectorClientBGPPeers: + description: Total number of configured route reflector peers on the route reflector client. + type: integer + numRouteReflectorClientBGPPeersOperDown: + description: Total number of configured route reflector peers on the route reflector client that are operationally down. + type: integer + operDownRouteReflectorClientPeers: + description: List of route reflector BGPPeers which are operationally down. + items: + type: string + type: array + operationalState: + description: Operational state of the RouteReflectorClient. + type: string + type: object + type: object +served: true +storage: true +subresources: + status: {} diff --git a/static/resources/25.8.2/routereflectorclients.protocols.eda.nokia.com/v1alpha1.yaml b/static/resources/25.8.2/routereflectorclients.protocols.eda.nokia.com/v1alpha1.yaml new file mode 100644 index 0000000..b9fbd90 --- /dev/null +++ b/static/resources/25.8.2/routereflectorclients.protocols.eda.nokia.com/v1alpha1.yaml @@ -0,0 +1,266 @@ +additionalPrinterColumns: + - jsonPath: .status.lastChange + name: Last Change + type: date + - jsonPath: .status.operationalState + name: Operational State + type: string + - jsonPath: .status.numRouteReflectorClientBGPPeers + name: NumRouteReflectorClientBGPPeers + type: string + - jsonPath: .status.numRouteReflectorClientBGPPeersOperDown + name: NumRouteReflectorClientBGPPeersOperDown + type: string +deprecated: true +deprecationWarning: This version is deprecated and will no longer be supported in the next version. +name: v1alpha1 +schema: + openAPIV3Schema: + description: RouteReflectorClient is the Schema for the routereflectorclients API + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + description: RouteReflectorClient manages the configuration of iBGP sessions between a client and RouteReflectors. This resource allows you to specify the Interface for BGP sessions, set selectors for RouteReflectors, and configure common BGP settings. + properties: + asPathOptions: + description: AS Path Options + properties: + allowOwnAS: + default: 0 + description: The maximum number of times the global AS number or a local AS number of the BGP instance can appear in any received AS_PATH before it is considered a loop and considered invalid. + maximum: 255 + minimum: 0 + type: integer + removePrivateAS: + description: Options for removing private AS numbers (2-byte and 4-byte) from the advertised AS path towards all peers. + properties: + ignorePeerAS: + default: false + description: If set to true then do not delete or replace a private AS number that is the same as the peer AS number. + type: boolean + leadingOnly: + default: false + description: If set to true then only delete or replace private AS numbers that appear before the first occurrence of a non-private ASN in the sequence of most recent ASNs in the AS path. + type: boolean + removePrivateASMode: + default: DISABLED + description: The method by which private AS numbers are removed from the advertised AS_PATH attribute. + enum: + - DISABLED + - REPLACE + - DELETE + type: string + required: + - ignorePeerAS + - leadingOnly + - removePrivateASMode + type: object + required: + - allowOwnAS + type: object + bfd: + description: Enable or disable Bi-forward Forwarding Detection (BFD) with fast failover. + type: boolean + bgpGroup: + description: Reference to BgpGroup. + type: string + exportPolicy: + description: Reference to a Policy CR that will be used to filter routes advertised to peers. + items: + type: string + type: array + grStaleRouteTime: + description: Enables Graceful Restart on the peer and sets the stale route time. + maximum: 3600 + minimum: 1 + type: integer + importPolicy: + description: Reference to a Policy CR that will be used to filter routes received from peers. + items: + type: string + type: array + interface: + description: Reference to a RoutedInterface or IrbInterface resource whose IP will be used as a source IP for the BGP session. + type: string + interfaceKind: + description: InterfaceReference type defines whether the provided Reference is a RoutedInterface or IrbInterface. + enum: + - ROUTEDINTERFACE + - IRBINTERFACE + type: string + ipv4RouteReflectorSelector: + description: Label selector used to select the RouteReflectors to which the iBGP sessions are established for IPv4. + items: + type: string + type: array + ipv4Unicast: + description: Parameters relating to the IPv4 unicast AFI/SAFI. + properties: + advertiseIPV6NextHops: + description: Enables advertisement of IPv4 Unicast routes with IPv6 next-hops to peers. + type: boolean + enabled: + description: Enables the IPv4 unicast AFISAFI. + type: boolean + maxReceivedRoutes: + description: Maximum number of IPv4 Unicast routes that will be accepted from the neighbor, counting routes accepted and rejected by import policies. + maximum: 4294967295 + minimum: 1 + type: integer + receiveIPV6NextHops: + description: Enables the advertisement of the RFC 5549 capability to receive IPv4 routes with IPv6 next-hops. + type: boolean + type: object + ipv6RouteReflectorSelector: + description: Label selector used to select the RouteReflectors to which the iBGP sessions are established for IPv6. + items: + type: string + type: array + ipv6Unicast: + description: Parameters relating to the IPv6 unicast AFI/SAFI. + properties: + enabled: + description: Enables the IPv6 unicast AFISAFI + type: boolean + maxReceivedRoutes: + description: Maximum number of IPv6 Unicast routes that will be accepted from the neighbor, counting routes accepted and rejected by import policies. + maximum: 4294967295 + minimum: 1 + type: integer + type: object + keychain: + description: Reference to a Keychain resource that will be used for authentication with the BGP peer. + type: string + localAS: + description: The local autonomous system number advertised to peers. + properties: + autonomousSystem: + description: Local Autonomous System number. + maximum: 4294967295 + minimum: 1 + type: integer + prependGlobalAS: + description: When set to true, the global ASN value is prepended to the AS path in outbound routes towards each BGP peer. + type: boolean + prependLocalAS: + description: When set to true, the local AS value is prepended to the AS path of inbound routes from each EBGP peer. + type: boolean + required: + - autonomousSystem + type: object + peerAS: + description: The autonomous system number expected from peers. + properties: + autonomousSystem: + description: Local Autonomous System number. + maximum: 4294967295 + minimum: 1 + type: integer + required: + - autonomousSystem + type: object + routeReflectorIPs: + description: List of the peering IPs on the RRs to which peering session is established. + items: + type: string + type: array + sendCommunityLarge: + description: When false, all large (12 byte) BGP communities from all outbound routes advertised to the peer are stripped. + type: boolean + sendCommunityStandard: + description: When false, all standard (4 byte) communities from all outbound routes advertised to the peer are stripped. + type: boolean + sendDefaultRoute: + description: Options for controlling the generation of default routes towards BGP peers. + properties: + addressFamily: + description: Enables the sending of a synthetically generated default IPv4 or IPV6 route to each peer. + items: + enum: + - IPV4-UNICAST + - IPV6-UNICAST + type: string + type: array + exportPolicy: + description: Reference to a Policy that should be applied to the advertised default routes, in order to set their attributes to non-default values. + type: string + required: + - addressFamily + type: object + timers: + description: Timer configurations + properties: + connectRetry: + description: The time interval in seconds between successive attempts to establish a session with a peer. + maximum: 65535 + minimum: 1 + type: integer + holdTime: + description: The hold-time interval in seconds that the router proposes to the peer in its OPEN message. + maximum: 65535 + minimum: 0 + type: integer + keepAlive: + description: The interval in seconds between successive keepalive messages sent to the peer. + maximum: 21845 + minimum: 0 + type: integer + minimumAdvertisementInterval: + description: The value assigned to the MinRouteAdvertisementIntervalTimer of RFC 4271, for both EBGP and IBGP sessions. + maximum: 255 + minimum: 1 + type: integer + type: object + required: + - bgpGroup + - interface + - interfaceKind + type: object + status: + description: RouteReflectorClientStatus defines the observed state of RouteReflectorClient + properties: + health: + description: Indicates the health score of the RouteReflectorClient. + type: integer + healthScoreReason: + description: Indicates the reason for the health score. + type: string + lastChange: + description: The time when the state of the resource last changed. + type: string + numRouteReflectorClientBGPPeers: + description: Total number of configured route reflector peers on the route reflector client. + type: integer + numRouteReflectorClientBGPPeersOperDown: + description: Total number of configured route reflector peers on the route reflector client that are operationally down. + type: integer + operDownRouteReflectorClientPeers: + description: List of route reflector BGPPeers which are operationally down. + items: + type: string + type: array + operationalState: + description: Operational state of the RouteReflectorClient. + type: string + type: object + type: object +served: true +storage: false +subresources: + status: {} diff --git a/static/resources/25.8.2/routereflectorclientstates.protocols.eda.nokia.com/v1.yaml b/static/resources/25.8.2/routereflectorclientstates.protocols.eda.nokia.com/v1.yaml new file mode 100644 index 0000000..6de6759 --- /dev/null +++ b/static/resources/25.8.2/routereflectorclientstates.protocols.eda.nokia.com/v1.yaml @@ -0,0 +1,42 @@ +name: v1 +schema: + openAPIV3Schema: + description: RouteReflectorClientState is the Schema for the routereflectorclientstates API + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + description: RouteReflectorClientStateSpec defines the desired state of RouteReflectorClientState + properties: + defaultRouteReflectorClient: + description: Denotes if the route reflector client is a DefaultRouteReflectorClient or RouteReflectorClient + type: boolean + routeReflectorClientBGPPeers: + description: A list of BGPPeers configured on the route reflector client to peer with route reflectors + items: + type: string + type: array + type: object + status: + description: RouteReflectorClientStateStatus defines the observed state of RouteReflectorClientState + type: object + type: object +served: true +storage: true +subresources: + status: {} diff --git a/static/resources/25.8.2/routereflectorclientstates.protocols.eda.nokia.com/v1alpha1.yaml b/static/resources/25.8.2/routereflectorclientstates.protocols.eda.nokia.com/v1alpha1.yaml new file mode 100644 index 0000000..003bc8e --- /dev/null +++ b/static/resources/25.8.2/routereflectorclientstates.protocols.eda.nokia.com/v1alpha1.yaml @@ -0,0 +1,44 @@ +deprecated: true +deprecationWarning: This version is deprecated and will no longer be supported in the next version. +name: v1alpha1 +schema: + openAPIV3Schema: + description: RouteReflectorClientState is the Schema for the routereflectorclientstates API + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + description: RouteReflectorClientStateSpec defines the desired state of RouteReflectorClientState + properties: + defaultRouteReflectorClient: + description: Denotes if the route reflector client is a DefaultRouteReflectorClient or RouteReflectorClient + type: boolean + routeReflectorClientBGPPeers: + description: A list of BGPPeers configured on the route reflector client to peer with route reflectors + items: + type: string + type: array + type: object + status: + description: RouteReflectorClientStateStatus defines the observed state of RouteReflectorClientState + type: object + type: object +served: true +storage: false +subresources: + status: {} diff --git a/static/resources/25.8.2/routereflectors.protocols.eda.nokia.com/v1.yaml b/static/resources/25.8.2/routereflectors.protocols.eda.nokia.com/v1.yaml new file mode 100644 index 0000000..5bf757c --- /dev/null +++ b/static/resources/25.8.2/routereflectors.protocols.eda.nokia.com/v1.yaml @@ -0,0 +1,332 @@ +additionalPrinterColumns: + - jsonPath: .status.lastChange + name: Last Change + type: date + - jsonPath: .status.operationalState + name: Operational State + type: string + - jsonPath: .status.numRouteReflectorBGPPeers + name: NumRouteReflectorBGPPeers + type: string + - jsonPath: .status.numRouteReflectorBGPPeersOperDown + name: NumRouteReflectorBGPPeersOperDown + type: string +name: v1 +schema: + openAPIV3Schema: + description: RouteReflector is the Schema for the routereflectors API + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + description: RouteReflector enables the configuration of iBGP sessions with RouteReflectorClients. It includes settings for selecting Interfaces, client selectors for IPv4 and IPv6, and the option to specify a BGP group and cluster ID. + properties: + asPathOptions: + description: AS Path Options + properties: + allowOwnAS: + default: 0 + description: The maximum number of times the global AS number or a local AS number of the BGP instance can appear in any received AS_PATH before it is considered a loop and considered invalid. + maximum: 255 + minimum: 0 + type: integer + removePrivateAS: + description: Options for removing private AS numbers (2-byte and 4-byte) from the advertised AS path towards all peers. + properties: + ignorePeerAS: + default: false + description: If set to true then do not delete or replace a private AS number that is the same as the peer AS number. + type: boolean + leadingOnly: + default: false + description: If set to true then only delete or replace private AS numbers that appear before the first occurrence of a non-private ASN in the sequence of most recent ASNs in the AS path. + type: boolean + removePrivateASMode: + default: DISABLED + description: The method by which private AS numbers are removed from the advertised AS_PATH attribute. + enum: + - DISABLED + - REPLACE + - DELETE + type: string + required: + - ignorePeerAS + - leadingOnly + - removePrivateASMode + type: object + required: + - allowOwnAS + type: object + bfd: + description: Enable or disable Bi-forward Forwarding Detection (BFD) with fast failover. + type: boolean + bgpGroup: + description: Reference to BgpGroup + type: string + clientIPs: + description: List of RR client IPs to which the iBGP sessions are established. + items: + type: string + type: array + clusterID: + description: Sets the cluster ID for route reflectors. + type: string + exportPolicy: + description: Reference to a Policy CR that will be used to filter routes advertised to peers. + items: + type: string + type: array + grStaleRouteTime: + description: Enables Graceful Restart on the peer and sets the stale route time. + maximum: 3600 + minimum: 1 + type: integer + importPolicy: + description: Reference to a Policy CR that will be used to filter routes received from peers. + items: + type: string + type: array + interface: + description: Reference to a RoutedInterface or IrbInterface resource whose IP will be used as a source IP for the BGP session. + type: string + interfaceKind: + description: InterfaceReference type defines whether the provided Reference is a RoutedInterface or IrbInterface. + enum: + - ROUTEDINTERFACE + - IRBINTERFACE + type: string + ipv4ClientSelector: + description: Label selector used to select the RouteReflectorClients to which the iBGP sessions are established for IPv4. + items: + type: string + type: array + ipv4Unicast: + description: Parameters relating to the IPv4 unicast AFI/SAFI. + properties: + advertiseIPV6NextHops: + description: Enables advertisement of IPv4 Unicast routes with IPv6 next-hops to peers. + type: boolean + enabled: + description: Enables the IPv4 unicast AFISAFI. + type: boolean + prefixLimit: + properties: + prefixLimitAccepted: + properties: + logOnly: + description: Defines the action to take when the maximum number of prefixes is exceeded. Session is reset if set to false, otherwise only a warning is logged. + type: boolean + maxReceivedRoutes: + description: Maximum number of prefixes allowed to be received from the neighbor, counting only accepted routes. + format: int32 + maximum: 4294967295 + minimum: 1 + type: integer + warningThreshold: + description: A percentage of the maximum number of prefixes that can be accepted before a warning is logged. + maximum: 100 + minimum: 1 + type: integer + type: object + prefixLimitReceived: + properties: + logOnly: + description: Defines the action to take when the maximum number of prefixes is exceeded. Session is reset if set to false, otherwise only a warning is logged. + type: boolean + maxReceivedRoutes: + description: Maximum number of prefixes allowed to be received from the neighbor, counting all routes (accepted and rejected by import policies). + format: int32 + maximum: 4294967295 + minimum: 1 + type: integer + warningThreshold: + description: A percentage of the maximum number of prefixes that can be received before a warning is logged. + maximum: 100 + minimum: 1 + type: integer + type: object + type: object + receiveIPV6NextHops: + description: Enables the advertisement of the RFC 5549 capability to receive IPv4 routes with IPv6 next-hops. + type: boolean + type: object + ipv6ClientSelector: + description: Label selector used to select the RouteReflectorClients to which the iBGP sessions are established for IPv6. + items: + type: string + type: array + ipv6Unicast: + description: Parameters relating to the IPv6 unicast AFI/SAFI. + properties: + enabled: + description: Enables the IPv6 unicast AFISAFI + type: boolean + prefixLimit: + properties: + prefixLimitAccepted: + properties: + logOnly: + description: Defines the action to take when the maximum number of prefixes is exceeded. Session is reset if set to false, otherwise only a warning is logged. + type: boolean + maxReceivedRoutes: + description: Maximum number of prefixes allowed to be received from the neighbor, counting only accepted routes. + format: int32 + maximum: 4294967295 + minimum: 1 + type: integer + warningThreshold: + description: A percentage of the maximum number of prefixes that can be accepted before a warning is logged. + maximum: 100 + minimum: 1 + type: integer + type: object + prefixLimitReceived: + properties: + logOnly: + description: Defines the action to take when the maximum number of prefixes is exceeded. Session is reset if set to false, otherwise only a warning is logged. + type: boolean + maxReceivedRoutes: + description: Maximum number of prefixes allowed to be received from the neighbor, counting all routes (accepted and rejected by import policies). + format: int32 + maximum: 4294967295 + minimum: 1 + type: integer + warningThreshold: + description: A percentage of the maximum number of prefixes that can be received before a warning is logged. + maximum: 100 + minimum: 1 + type: integer + type: object + type: object + type: object + keychain: + description: Reference to a Keychain resource that will be used for authentication with the BGP peer. + type: string + localAS: + description: The local autonomous system number advertised to peers. + properties: + autonomousSystem: + description: Local Autonomous System number. + maximum: 4294967295 + minimum: 1 + type: integer + prependGlobalAS: + description: When set to true, the global ASN value is prepended to the AS path in outbound routes towards each BGP peer. + type: boolean + prependLocalAS: + description: When set to true, the local AS value is prepended to the AS path of inbound routes from each EBGP peer. + type: boolean + required: + - autonomousSystem + type: object + peerAS: + description: The autonomous system number expected from peers. + properties: + autonomousSystem: + description: Local Autonomous System number. + maximum: 4294967295 + minimum: 1 + type: integer + required: + - autonomousSystem + type: object + sendCommunityLarge: + description: When false, all large (12 byte) BGP communities from all outbound routes advertised to the peer are stripped. + type: boolean + sendCommunityStandard: + description: When false, all standard (4 byte) communities from all outbound routes advertised to the peer are stripped. + type: boolean + sendDefaultRoute: + description: Options for controlling the generation of default routes towards BGP peers. + properties: + addressFamily: + description: Enables the sending of a synthetically generated default IPv4 or IPV6 route to each peer. + items: + enum: + - IPV4-UNICAST + - IPV6-UNICAST + type: string + type: array + exportPolicy: + description: Reference to a Policy that should be applied to the advertised default routes, in order to set their attributes to non-default values. + type: string + required: + - addressFamily + type: object + timers: + description: Timer configurations + properties: + connectRetry: + description: The time interval in seconds between successive attempts to establish a session with a peer. + maximum: 65535 + minimum: 1 + type: integer + holdTime: + description: The hold-time interval in seconds that the router proposes to the peer in its OPEN message. + maximum: 65535 + minimum: 0 + type: integer + keepAlive: + description: The interval in seconds between successive keepalive messages sent to the peer. + maximum: 21845 + minimum: 0 + type: integer + minimumAdvertisementInterval: + description: The value assigned to the MinRouteAdvertisementIntervalTimer of RFC 4271, for both EBGP and IBGP sessions. + maximum: 255 + minimum: 1 + type: integer + type: object + required: + - bgpGroup + - clusterID + - interface + - interfaceKind + type: object + status: + description: RouteReflectorStatus defines the observed state of RouteReflector + properties: + health: + description: Indicates the health score of the RouteReflector. + type: integer + healthScoreReason: + description: Indicates the reason for the health score. + type: string + lastChange: + description: The time when the state of the resource last changed. + type: string + numRouteReflectorBGPPeers: + description: Total number of configured route reflector client peers on the route reflector. + type: integer + numRouteReflectorBGPPeersOperDown: + description: Total number of configured route reflector client peers on the route reflector that are operationally down. + type: integer + operDownRouteReflectorPeers: + description: List of route reflector BGPPeers which are operationally down. + items: + type: string + type: array + operationalState: + description: Operational state of the RouteReflector. + type: string + type: object + type: object +served: true +storage: true +subresources: + status: {} diff --git a/static/resources/25.8.2/routereflectors.protocols.eda.nokia.com/v1alpha1.yaml b/static/resources/25.8.2/routereflectors.protocols.eda.nokia.com/v1alpha1.yaml new file mode 100644 index 0000000..475a05a --- /dev/null +++ b/static/resources/25.8.2/routereflectors.protocols.eda.nokia.com/v1alpha1.yaml @@ -0,0 +1,270 @@ +additionalPrinterColumns: + - jsonPath: .status.lastChange + name: Last Change + type: date + - jsonPath: .status.operationalState + name: Operational State + type: string + - jsonPath: .status.numRouteReflectorBGPPeers + name: NumRouteReflectorBGPPeers + type: string + - jsonPath: .status.numRouteReflectorBGPPeersOperDown + name: NumRouteReflectorBGPPeersOperDown + type: string +deprecated: true +deprecationWarning: This version is deprecated and will no longer be supported in the next version. +name: v1alpha1 +schema: + openAPIV3Schema: + description: RouteReflector is the Schema for the routereflectors API + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + description: RouteReflector enables the configuration of iBGP sessions with RouteReflectorClients. It includes settings for selecting Interfaces, client selectors for IPv4 and IPv6, and the option to specify a BGP group and cluster ID. + properties: + asPathOptions: + description: AS Path Options + properties: + allowOwnAS: + default: 0 + description: The maximum number of times the global AS number or a local AS number of the BGP instance can appear in any received AS_PATH before it is considered a loop and considered invalid. + maximum: 255 + minimum: 0 + type: integer + removePrivateAS: + description: Options for removing private AS numbers (2-byte and 4-byte) from the advertised AS path towards all peers. + properties: + ignorePeerAS: + default: false + description: If set to true then do not delete or replace a private AS number that is the same as the peer AS number. + type: boolean + leadingOnly: + default: false + description: If set to true then only delete or replace private AS numbers that appear before the first occurrence of a non-private ASN in the sequence of most recent ASNs in the AS path. + type: boolean + removePrivateASMode: + default: DISABLED + description: The method by which private AS numbers are removed from the advertised AS_PATH attribute. + enum: + - DISABLED + - REPLACE + - DELETE + type: string + required: + - ignorePeerAS + - leadingOnly + - removePrivateASMode + type: object + required: + - allowOwnAS + type: object + bfd: + description: Enable or disable Bi-forward Forwarding Detection (BFD) with fast failover. + type: boolean + bgpGroup: + description: Reference to BgpGroup + type: string + clientIPs: + description: List of RR client IPs to which the iBGP sessions are established. + items: + type: string + type: array + clusterID: + description: Sets the cluster ID for route reflectors. + type: string + exportPolicy: + description: Reference to a Policy CR that will be used to filter routes advertised to peers. + items: + type: string + type: array + grStaleRouteTime: + description: Enables Graceful Restart on the peer and sets the stale route time. + maximum: 3600 + minimum: 1 + type: integer + importPolicy: + description: Reference to a Policy CR that will be used to filter routes received from peers. + items: + type: string + type: array + interface: + description: Reference to a RoutedInterface or IrbInterface resource whose IP will be used as a source IP for the BGP session. + type: string + interfaceKind: + description: InterfaceReference type defines whether the provided Reference is a RoutedInterface or IrbInterface. + enum: + - ROUTEDINTERFACE + - IRBINTERFACE + type: string + ipv4ClientSelector: + description: Label selector used to select the RouteReflectorClients to which the iBGP sessions are established for IPv4. + items: + type: string + type: array + ipv4Unicast: + description: Parameters relating to the IPv4 unicast AFI/SAFI. + properties: + advertiseIPV6NextHops: + description: Enables advertisement of IPv4 Unicast routes with IPv6 next-hops to peers. + type: boolean + enabled: + description: Enables the IPv4 unicast AFISAFI. + type: boolean + maxReceivedRoutes: + description: Maximum number of IPv4 Unicast routes that will be accepted from the neighbor, counting routes accepted and rejected by import policies. + maximum: 4294967295 + minimum: 1 + type: integer + receiveIPV6NextHops: + description: Enables the advertisement of the RFC 5549 capability to receive IPv4 routes with IPv6 next-hops. + type: boolean + type: object + ipv6ClientSelector: + description: Label selector used to select the RouteReflectorClients to which the iBGP sessions are established for IPv6. + items: + type: string + type: array + ipv6Unicast: + description: Parameters relating to the IPv6 unicast AFI/SAFI. + properties: + enabled: + description: Enables the IPv6 unicast AFISAFI + type: boolean + maxReceivedRoutes: + description: Maximum number of IPv6 Unicast routes that will be accepted from the neighbor, counting routes accepted and rejected by import policies. + maximum: 4294967295 + minimum: 1 + type: integer + type: object + keychain: + description: Reference to a Keychain resource that will be used for authentication with the BGP peer. + type: string + localAS: + description: The local autonomous system number advertised to peers. + properties: + autonomousSystem: + description: Local Autonomous System number. + maximum: 4294967295 + minimum: 1 + type: integer + prependGlobalAS: + description: When set to true, the global ASN value is prepended to the AS path in outbound routes towards each BGP peer. + type: boolean + prependLocalAS: + description: When set to true, the local AS value is prepended to the AS path of inbound routes from each EBGP peer. + type: boolean + required: + - autonomousSystem + type: object + peerAS: + description: The autonomous system number expected from peers. + properties: + autonomousSystem: + description: Local Autonomous System number. + maximum: 4294967295 + minimum: 1 + type: integer + required: + - autonomousSystem + type: object + sendCommunityLarge: + description: When false, all large (12 byte) BGP communities from all outbound routes advertised to the peer are stripped. + type: boolean + sendCommunityStandard: + description: When false, all standard (4 byte) communities from all outbound routes advertised to the peer are stripped. + type: boolean + sendDefaultRoute: + description: Options for controlling the generation of default routes towards BGP peers. + properties: + addressFamily: + description: Enables the sending of a synthetically generated default IPv4 or IPV6 route to each peer. + items: + enum: + - IPV4-UNICAST + - IPV6-UNICAST + type: string + type: array + exportPolicy: + description: Reference to a Policy that should be applied to the advertised default routes, in order to set their attributes to non-default values. + type: string + required: + - addressFamily + type: object + timers: + description: Timer configurations + properties: + connectRetry: + description: The time interval in seconds between successive attempts to establish a session with a peer. + maximum: 65535 + minimum: 1 + type: integer + holdTime: + description: The hold-time interval in seconds that the router proposes to the peer in its OPEN message. + maximum: 65535 + minimum: 0 + type: integer + keepAlive: + description: The interval in seconds between successive keepalive messages sent to the peer. + maximum: 21845 + minimum: 0 + type: integer + minimumAdvertisementInterval: + description: The value assigned to the MinRouteAdvertisementIntervalTimer of RFC 4271, for both EBGP and IBGP sessions. + maximum: 255 + minimum: 1 + type: integer + type: object + required: + - bgpGroup + - clusterID + - interface + - interfaceKind + type: object + status: + description: RouteReflectorStatus defines the observed state of RouteReflector + properties: + health: + description: Indicates the health score of the RouteReflector. + type: integer + healthScoreReason: + description: Indicates the reason for the health score. + type: string + lastChange: + description: The time when the state of the resource last changed. + type: string + numRouteReflectorBGPPeers: + description: Total number of configured route reflector client peers on the route reflector. + type: integer + numRouteReflectorBGPPeersOperDown: + description: Total number of configured route reflector client peers on the route reflector that are operationally down. + type: integer + operDownRouteReflectorPeers: + description: List of route reflector BGPPeers which are operationally down. + items: + type: string + type: array + operationalState: + description: Operational state of the RouteReflector. + type: string + type: object + type: object +served: true +storage: false +subresources: + status: {} diff --git a/static/resources/25.8.2/routereflectorstates.protocols.eda.nokia.com/v1.yaml b/static/resources/25.8.2/routereflectorstates.protocols.eda.nokia.com/v1.yaml new file mode 100644 index 0000000..d403f40 --- /dev/null +++ b/static/resources/25.8.2/routereflectorstates.protocols.eda.nokia.com/v1.yaml @@ -0,0 +1,42 @@ +name: v1 +schema: + openAPIV3Schema: + description: RouteReflectorState is the Schema for the routereflectorstates API + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + description: RouteReflectorStateSpec defines the desired state of RouteReflectorState + properties: + defaultRouteReflector: + description: Denotes if the route reflector is a DefaultRouteReflector or RouteReflector + type: boolean + routeReflectorBGPPeers: + description: A list of BGPPeers configured on the route reflector to peer with clients + items: + type: string + type: array + type: object + status: + description: RouteReflectorStateStatus defines the observed state of RouteReflectorState + type: object + type: object +served: true +storage: true +subresources: + status: {} diff --git a/static/resources/25.8.2/routereflectorstates.protocols.eda.nokia.com/v1alpha1.yaml b/static/resources/25.8.2/routereflectorstates.protocols.eda.nokia.com/v1alpha1.yaml new file mode 100644 index 0000000..0e0db59 --- /dev/null +++ b/static/resources/25.8.2/routereflectorstates.protocols.eda.nokia.com/v1alpha1.yaml @@ -0,0 +1,44 @@ +deprecated: true +deprecationWarning: This version is deprecated and will no longer be supported in the next version. +name: v1alpha1 +schema: + openAPIV3Schema: + description: RouteReflectorState is the Schema for the routereflectorstates API + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + description: RouteReflectorStateSpec defines the desired state of RouteReflectorState + properties: + defaultRouteReflector: + description: Denotes if the route reflector is a DefaultRouteReflector or RouteReflector + type: boolean + routeReflectorBGPPeers: + description: A list of BGPPeers configured on the route reflector to peer with clients + items: + type: string + type: array + type: object + status: + description: RouteReflectorStateStatus defines the observed state of RouteReflectorState + type: object + type: object +served: true +storage: false +subresources: + status: {} diff --git a/static/resources/25.8.2/routers.services.eda.nokia.com/v1.yaml b/static/resources/25.8.2/routers.services.eda.nokia.com/v1.yaml new file mode 100644 index 0000000..f6d2258 --- /dev/null +++ b/static/resources/25.8.2/routers.services.eda.nokia.com/v1.yaml @@ -0,0 +1,309 @@ +additionalPrinterColumns: + - jsonPath: .status.vni + name: VNI + type: string + - jsonPath: .status.evi + name: EVI + type: string + - jsonPath: .status.importTarget + name: Import Target + type: string + - jsonPath: .status.exportTarget + name: Export Target + type: string + - jsonPath: .status.operationalState + name: OperationalState + type: string + - jsonPath: .status.lastChange + name: LastChange + type: string +name: v1 +schema: + openAPIV3Schema: + description: Router is the Schema for the routers API + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + description: The Router enables the configuration and management of routing functions within a network. This resource allows for setting a unique Router ID, configuring VNIs and EVIs with options for automatic allocation, and defining import and export route targets. It also includes advanced configuration options such as BGP settings, including autonomous system numbers, AFI/SAFI options, and route advertisement preferences. Node selectors can be used to constrain the deployment of the router to specific nodes within the network. + properties: + bgp: + description: BGP configuration. + properties: + autonomousSystem: + description: Autonomous System number for BGP. + maximum: 4294967295 + minimum: 1 + type: integer + ebgpPreference: + default: 170 + description: Preference to be set for eBGP [default=170]. + maximum: 255 + minimum: 1 + type: integer + enabled: + default: false + description: Enable or disable BGP. + type: boolean + ibgpPreference: + default: 170 + description: Preference to be set for iBGP [default=170]. + maximum: 255 + minimum: 1 + type: integer + ipAliasNexthops: + description: IP aliasing configuration. + items: + properties: + esi: + default: auto + description: 10 byte Ethernet Segment Identifier, if not set a type 0 ESI is generated. + type: string + nextHop: + description: The nexthop IP address to track for the IP alias. + type: string + preferredActiveNode: + description: When not set the ES is used in an all active mode. This references the ToppNode object and when set, the DF algorithm is configured to type preference and the selected Node is set with a higher preference value. All other Nodes have a lower value configured. + type: string + required: + - nextHop + type: object + type: array + ipv4Unicast: + description: Parameters relating to the IPv4 unicast AFI/SAFI. + properties: + advertiseIPV6NextHops: + description: Enables advertisement of IPv4 Unicast routes with IPv6 next-hops to peers. + type: boolean + enabled: + default: false + description: Enables the IPv4 unicast AFISAFI. + type: boolean + multipath: + description: Enable multipath. + properties: + allowMultipleAS: + default: true + description: When set to true, BGP is allowed to build a multipath set using BGP routes with different neighbor AS (most recent AS in the AS_PATH), When set to false, BGP is only allowed to use non-best paths for ECMP if they meet the multipath criteria and they have the same neighbor AS as the best path. + type: boolean + maxAllowedPaths: + description: The maximum number of BGP ECMP next-hops for BGP routes with an NLRI belonging to the address family of this configuration context. + maximum: 256 + minimum: 1 + type: integer + required: + - allowMultipleAS + - maxAllowedPaths + type: object + receiveIPV6NextHops: + description: Enables the advertisement of the RFC 5549 capability to receive IPv4 routes with IPv6 next-hops. + type: boolean + required: + - enabled + type: object + ipv6Unicast: + description: Parameters relating to the IPv6 unicast AFI/SAFI. + properties: + enabled: + default: false + description: Enables the IPv6 unicast AFISAFI + type: boolean + multipath: + description: Enable multipath + properties: + allowMultipleAS: + default: true + description: When set to true, BGP is allowed to build a multipath set using BGP routes with different neighbor AS (most recent AS in the AS_PATH), When set to false, BGP is only allowed to use non-best paths for ECMP if they meet the multipath criteria and they have the same neighbor AS as the best path. + type: boolean + maxAllowedPaths: + description: The maximum number of BGP ECMP next-hops for BGP routes with an NLRI belonging to the address family of this configuration context. + maximum: 256 + minimum: 1 + type: integer + required: + - allowMultipleAS + - maxAllowedPaths + type: object + required: + - enabled + type: object + keychain: + description: Keychain to be used for authentication + type: string + minWaitToAdvertise: + default: 0 + description: Minimum wait time before advertising routes post BGP restart. + maximum: 3600 + minimum: 0 + type: integer + rapidWithdrawl: + default: true + description: Enable rapid withdrawal in BGP. + type: boolean + waitForFIBInstall: + default: false + description: Wait for FIB installation before advertising routes. + type: boolean + type: object + description: + description: The description of the Router. + type: string + evi: + description: EVI for the Router; leave blank for auto-allocation from EVI pool. + maximum: 65535 + minimum: 1 + type: integer + eviPool: + default: evi-pool + description: Reference to EVI pool for auto-allocation. + type: string + exportTarget: + description: Export route target in 'target:N:N' format, if not specified, the default value taken as "target:1:". + pattern: ^target.*$ + type: string + importTarget: + description: Import route target in 'target:N:N' format, if not specified, the default value taken as "target:1:". + pattern: ^target.*$ + type: string + ipLoadBalancing: + description: IPv4 or IPv6 prefix. Active routes in the FIB that exactly match this prefix or that are longer matches of this prefix are provided with resilient-hash programming. + properties: + prefix: + description: IPv4 or IPv6 prefix. Active routes in the FIB that exactly match this prefix or that are longer matches of this prefix are provided with resilient-hash programming. + items: + properties: + hashBucketsPerPath: + default: 1 + description: The number of times each next-hop is repeated in the fill pattern if there are max-paths ECMP next-hops. + maximum: 32 + minimum: 1 + type: integer + maxECMP: + default: 1 + description: The maximum number of ECMP next-hops per route associated with the resilient-hash prefix. + maximum: 64 + minimum: 1 + type: integer + prefix: + description: IPv4 or IPv6 prefix. Active routes in the FIB that exactly match this prefix or that are longer matches of this prefix are provided with resilient-hash programming. + type: string + required: + - hashBucketsPerPath + - maxECMP + - prefix + type: object + type: array + type: object + nodeSelector: + description: Node selectors for deployment constraints. If Nodes are selected, the Router will only be deployed on the Nodes selected, if left blank it will be deployed on all Nodes for which there are IRB or RoutedInterfaces referencing this Router. + items: + type: string + type: array + routeLeaking: + description: Route leaking controlled by routing policies in and out of the DefaultRouter. + properties: + exportPolicy: + description: Reference to a Policy resource to use when evaluating route exports from the DefaultRouter. + type: string + importPolicy: + description: Reference to a Policy resource to use when evaluating route imports into the DefaultRouter. + type: string + type: object + routerID: + description: Router ID. + type: string + tunnelIndexPool: + default: tunnel-index-pool + description: Reference to tunnel index allocation pool. + type: string + type: + default: EVPNVXLAN + description: Select the type of Router. Simple doesn't include any overlay control plane or dataplane properties (EVPN/VXLAN). EVPNVXLAN includes the properties needed to provision this Router over an IP Fabric. + enum: + - SIMPLE + - EVPNVXLAN + type: string + vni: + description: VNI for the Router; leave blank for auto-allocation from VNI pool. + maximum: 16777215 + minimum: 1 + type: integer + vniPool: + default: vni-pool + description: Reference to VNI pool for auto-allocation. + type: string + type: object + status: + description: RouterStatus defines the observed state of Router + properties: + bgpPeers: + description: List of BGPPeers attached to the router. + items: + type: string + type: array + evi: + description: EVI in use for this Router. + type: integer + exportTarget: + description: Export route target for this Router. + type: string + health: + description: Indicates the health score of the Router. + type: integer + healthScoreReason: + description: Explains the reason for the health score. + type: string + importTarget: + description: Import route target for this Router. + type: string + irbInterfaces: + description: List of IRBInterfaces attached to the router. + items: + type: string + type: array + lastChange: + description: Timestamp of the last state change. + type: string + nodes: + description: List of nodes on which the Router is deployed. + items: + type: string + type: array + numNodes: + description: Number of nodes on which the Router is configured. + type: integer + operationalState: + description: Operational state of the Router. + type: string + routedInterfaces: + description: List of RoutedInterfaces attached to the router. + items: + type: string + type: array + tunnelIndex: + description: Vxlan tunnel index in use. + type: integer + vni: + description: VNI in use for this Router. + type: integer + type: object + type: object +served: true +storage: true +subresources: + status: {} diff --git a/static/resources/25.8.2/routers.services.eda.nokia.com/v1alpha1.yaml b/static/resources/25.8.2/routers.services.eda.nokia.com/v1alpha1.yaml new file mode 100644 index 0000000..854c0d4 --- /dev/null +++ b/static/resources/25.8.2/routers.services.eda.nokia.com/v1alpha1.yaml @@ -0,0 +1,311 @@ +additionalPrinterColumns: + - jsonPath: .status.vni + name: VNI + type: string + - jsonPath: .status.evi + name: EVI + type: string + - jsonPath: .status.importTarget + name: Import Target + type: string + - jsonPath: .status.exportTarget + name: Export Target + type: string + - jsonPath: .status.operationalState + name: OperationalState + type: string + - jsonPath: .status.lastChange + name: LastChange + type: string +deprecated: true +deprecationWarning: This version is deprecated and will no longer be supported in the next version. +name: v1alpha1 +schema: + openAPIV3Schema: + description: Router is the Schema for the routers API + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + description: The Router enables the configuration and management of routing functions within a network. This resource allows for setting a unique Router ID, configuring VNIs and EVIs with options for automatic allocation, and defining import and export route targets. It also includes advanced configuration options such as BGP settings, including autonomous system numbers, AFI/SAFI options, and route advertisement preferences. Node selectors can be used to constrain the deployment of the router to specific nodes within the network. + properties: + bgp: + description: BGP configuration. + properties: + autonomousSystem: + description: Autonomous System number for BGP. + maximum: 4294967295 + minimum: 1 + type: integer + ebgpPreference: + default: 170 + description: Preference to be set for eBGP [default=170]. + maximum: 255 + minimum: 1 + type: integer + enabled: + default: false + description: Enable or disable BGP. + type: boolean + ibgpPreference: + default: 170 + description: Preference to be set for iBGP [default=170]. + maximum: 255 + minimum: 1 + type: integer + ipAliasNexthops: + description: IP aliasing configuration. + items: + properties: + esi: + default: auto + description: 10 byte Ethernet Segment Identifier, if not set a type 0 ESI is generated. + type: string + nextHop: + description: The nexthop IP address to track for the IP alias. + type: string + preferredActiveNode: + description: When not set the ES is used in an all active mode. This references the ToppNode object and when set, the DF algorithm is configured to type preference and the selected Node is set with a higher preference value. All other Nodes have a lower value configured. + type: string + required: + - nextHop + type: object + type: array + ipv4Unicast: + description: Parameters relating to the IPv4 unicast AFI/SAFI. + properties: + advertiseIPV6NextHops: + description: Enables advertisement of IPv4 Unicast routes with IPv6 next-hops to peers. + type: boolean + enabled: + default: false + description: Enables the IPv4 unicast AFISAFI. + type: boolean + multipath: + description: Enable multipath. + properties: + allowMultipleAS: + default: true + description: When set to true, BGP is allowed to build a multipath set using BGP routes with different neighbor AS (most recent AS in the AS_PATH), When set to false, BGP is only allowed to use non-best paths for ECMP if they meet the multipath criteria and they have the same neighbor AS as the best path. + type: boolean + maxAllowedPaths: + description: The maximum number of BGP ECMP next-hops for BGP routes with an NLRI belonging to the address family of this configuration context. + maximum: 256 + minimum: 1 + type: integer + required: + - allowMultipleAS + - maxAllowedPaths + type: object + receiveIPV6NextHops: + description: Enables the advertisement of the RFC 5549 capability to receive IPv4 routes with IPv6 next-hops. + type: boolean + required: + - enabled + type: object + ipv6Unicast: + description: Parameters relating to the IPv6 unicast AFI/SAFI. + properties: + enabled: + default: false + description: Enables the IPv6 unicast AFISAFI + type: boolean + multipath: + description: Enable multipath + properties: + allowMultipleAS: + default: true + description: When set to true, BGP is allowed to build a multipath set using BGP routes with different neighbor AS (most recent AS in the AS_PATH), When set to false, BGP is only allowed to use non-best paths for ECMP if they meet the multipath criteria and they have the same neighbor AS as the best path. + type: boolean + maxAllowedPaths: + description: The maximum number of BGP ECMP next-hops for BGP routes with an NLRI belonging to the address family of this configuration context. + maximum: 256 + minimum: 1 + type: integer + required: + - allowMultipleAS + - maxAllowedPaths + type: object + required: + - enabled + type: object + keychain: + description: Keychain to be used for authentication + type: string + minWaitToAdvertise: + default: 0 + description: Minimum wait time before advertising routes post BGP restart. + maximum: 3600 + minimum: 0 + type: integer + rapidWithdrawl: + default: true + description: Enable rapid withdrawal in BGP. + type: boolean + waitForFIBInstall: + default: false + description: Wait for FIB installation before advertising routes. + type: boolean + type: object + description: + description: The description of the Router. + type: string + evi: + description: EVI for the Router; leave blank for auto-allocation from EVI pool. + maximum: 65535 + minimum: 1 + type: integer + eviPool: + default: evi-pool + description: Reference to EVI pool for auto-allocation. + type: string + exportTarget: + description: Export route target in 'target:N:N' format, if not specified, the default value taken as "target:1:". + pattern: ^target.*$ + type: string + importTarget: + description: Import route target in 'target:N:N' format, if not specified, the default value taken as "target:1:". + pattern: ^target.*$ + type: string + ipLoadBalancing: + description: IPv4 or IPv6 prefix. Active routes in the FIB that exactly match this prefix or that are longer matches of this prefix are provided with resilient-hash programming. + properties: + prefix: + description: IPv4 or IPv6 prefix. Active routes in the FIB that exactly match this prefix or that are longer matches of this prefix are provided with resilient-hash programming. + items: + properties: + hashBucketsPerPath: + default: 1 + description: The number of times each next-hop is repeated in the fill pattern if there are max-paths ECMP next-hops. + maximum: 32 + minimum: 1 + type: integer + maxECMP: + default: 1 + description: The maximum number of ECMP next-hops per route associated with the resilient-hash prefix. + maximum: 64 + minimum: 1 + type: integer + prefix: + description: IPv4 or IPv6 prefix. Active routes in the FIB that exactly match this prefix or that are longer matches of this prefix are provided with resilient-hash programming. + type: string + required: + - hashBucketsPerPath + - maxECMP + - prefix + type: object + type: array + type: object + nodeSelector: + description: Node selectors for deployment constraints. If Nodes are selected, the Router will only be deployed on the Nodes selected, if left blank it will be deployed on all Nodes for which there are IRB or RoutedInterfaces referencing this Router. + items: + type: string + type: array + routeLeaking: + description: Route leaking controlled by routing policies in and out of the DefaultRouter. + properties: + exportPolicy: + description: Reference to a Policy resource to use when evaluating route exports from the DefaultRouter. + type: string + importPolicy: + description: Reference to a Policy resource to use when evaluating route imports into the DefaultRouter. + type: string + type: object + routerID: + description: Router ID. + type: string + tunnelIndexPool: + default: tunnel-index-pool + description: Reference to tunnel index allocation pool. + type: string + type: + default: EVPNVXLAN + description: Select the type of Router. Simple doesn't include any overlay control plane or dataplane properties (EVPN/VXLAN). EVPNVXLAN includes the properties needed to provision this Router over an IP Fabric. + enum: + - SIMPLE + - EVPNVXLAN + type: string + vni: + description: VNI for the Router; leave blank for auto-allocation from VNI pool. + maximum: 16777215 + minimum: 1 + type: integer + vniPool: + default: vni-pool + description: Reference to VNI pool for auto-allocation. + type: string + type: object + status: + description: RouterStatus defines the observed state of Router + properties: + bgpPeers: + description: List of BGPPeers attached to the router. + items: + type: string + type: array + evi: + description: EVI in use for this Router. + type: integer + exportTarget: + description: Export route target for this Router. + type: string + health: + description: Indicates the health score of the Router. + type: integer + healthScoreReason: + description: Explains the reason for the health score. + type: string + importTarget: + description: Import route target for this Router. + type: string + irbInterfaces: + description: List of IRBInterfaces attached to the router. + items: + type: string + type: array + lastChange: + description: Timestamp of the last state change. + type: string + nodes: + description: List of nodes on which the Router is deployed. + items: + type: string + type: array + numNodes: + description: Number of nodes on which the Router is configured. + type: integer + operationalState: + description: Operational state of the Router. + type: string + routedInterfaces: + description: List of RoutedInterfaces attached to the router. + items: + type: string + type: array + tunnelIndex: + description: Vxlan tunnel index in use. + type: integer + vni: + description: VNI in use for this Router. + type: integer + type: object + type: object +served: true +storage: false +subresources: + status: {} diff --git a/static/resources/25.8.2/routerstates.services.eda.nokia.com/v1.yaml b/static/resources/25.8.2/routerstates.services.eda.nokia.com/v1.yaml new file mode 100644 index 0000000..18ba572 --- /dev/null +++ b/static/resources/25.8.2/routerstates.services.eda.nokia.com/v1.yaml @@ -0,0 +1,55 @@ +name: v1 +schema: + openAPIV3Schema: + description: RouterState is the Schema for the routerstates API + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + description: RouterStateSpec defines the desired state of RouterState + properties: + evi: + description: EVI in use for this Router + maximum: 65535 + minimum: 1 + type: integer + exportTarget: + description: Export route target for this Router, in the format 'target:N:N' + pattern: ^target.*$ + type: string + importTarget: + description: Import route target for this Router, in the format 'target:N:N' + pattern: ^target.*$ + type: string + tunnelIndex: + description: Vxlan tunnel index in use + type: integer + vni: + description: VNI in use for this Router + maximum: 16777215 + minimum: 1 + type: integer + type: object + status: + description: RouterStateStatus defines the observed state of RouterState + type: object + type: object +served: true +storage: true +subresources: + status: {} diff --git a/static/resources/25.8.2/routerstates.services.eda.nokia.com/v1alpha1.yaml b/static/resources/25.8.2/routerstates.services.eda.nokia.com/v1alpha1.yaml new file mode 100644 index 0000000..021e462 --- /dev/null +++ b/static/resources/25.8.2/routerstates.services.eda.nokia.com/v1alpha1.yaml @@ -0,0 +1,57 @@ +deprecated: true +deprecationWarning: This version is deprecated and will no longer be supported in the next version. +name: v1alpha1 +schema: + openAPIV3Schema: + description: RouterState is the Schema for the routerstates API + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + description: RouterStateSpec defines the desired state of RouterState + properties: + evi: + description: EVI in use for this Router + maximum: 65535 + minimum: 1 + type: integer + exportTarget: + description: Export route target for this Router, in the format 'target:N:N' + pattern: ^target.*$ + type: string + importTarget: + description: Import route target for this Router, in the format 'target:N:N' + pattern: ^target.*$ + type: string + tunnelIndex: + description: Vxlan tunnel index in use + type: integer + vni: + description: VNI in use for this Router + maximum: 16777215 + minimum: 1 + type: integer + type: object + status: + description: RouterStateStatus defines the observed state of RouterState + type: object + type: object +served: true +storage: false +subresources: + status: {} diff --git a/static/resources/25.8.2/setupenvs.environment.eda.nokia.com/v1alpha1.yaml b/static/resources/25.8.2/setupenvs.environment.eda.nokia.com/v1alpha1.yaml new file mode 100644 index 0000000..0c297bf --- /dev/null +++ b/static/resources/25.8.2/setupenvs.environment.eda.nokia.com/v1alpha1.yaml @@ -0,0 +1,56 @@ +additionalPrinterColumns: + - jsonPath: .status.id + name: ID + type: integer + - jsonPath: .status.result + name: Result + type: string + - jsonPath: .metadata.creationTimestamp + name: Age + type: date +name: v1alpha1 +schema: + openAPIV3Schema: + description: SetupEnv is the Schema for the setupenvs API + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + description: |- + This workflow is used to set up the global environment on a node. + For SR Linux this results in an overwrite of the /etc/opt/srlinux/env file. + properties: + env: + description: Content of the environment file to push. + type: string + type: object + status: + description: SetupEnvStatus defines the observed state of SetupEnv + properties: + id: + description: Id + type: integer + result: + description: Aggregate result of the Flow + type: string + type: object + type: object +served: true +storage: true +subresources: + status: {} diff --git a/static/resources/25.8.2/simlinks.core.eda.nokia.com/v1.yaml b/static/resources/25.8.2/simlinks.core.eda.nokia.com/v1.yaml new file mode 100644 index 0000000..07565ca --- /dev/null +++ b/static/resources/25.8.2/simlinks.core.eda.nokia.com/v1.yaml @@ -0,0 +1,87 @@ +name: v1 +schema: + openAPIV3Schema: + description: SimLink is the Schema for the simlinks API + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + description: SimLinkSpec defines the desired state of SimLink + properties: + bondName: + description: |- + When creating a SimLink with more than one member, the bondName is used to create a bond on the SimNode side. + This field must not be used when creating a single member SimLink. + type: string + links: + description: |- + To create a point to point link with a single interface on both sides use a single link object. + To create a point to point link with a LAG configured on both side, use two links with matching nodes. + A multihommed lag is created by using two or more links where the remoteNode and/or localNode can be different. + Creating a link with only localNode specified will create an edge interface. + items: + properties: + local: + properties: + interface: + description: Normalized name of the interface/port, e.g. ethernet-1-1. + type: string + interfaceResource: + description: Reference to a Interface. + type: string + node: + description: Reference to a TopoNode. + type: string + required: + - interfaceResource + - node + type: object + sim: + properties: + interface: + description: Normalized name of the interface/port, e.g. ethernet-1-1. + type: string + interfaceResource: + description: Reference to a Interface. + type: string + node: + description: Reference to a TopoNode. + type: string + required: + - interfaceResource + - node + type: object + speed: + type: string + required: + - local + - sim + type: object + minItems: 1 + type: array + required: + - links + type: object + status: + description: SimLinkStatus defines the observed state of SimLink + type: object + type: object +served: true +storage: true +subresources: + status: {} diff --git a/static/resources/25.8.2/simnodes.core.eda.nokia.com/v1.yaml b/static/resources/25.8.2/simnodes.core.eda.nokia.com/v1.yaml new file mode 100644 index 0000000..cce12ce --- /dev/null +++ b/static/resources/25.8.2/simnodes.core.eda.nokia.com/v1.yaml @@ -0,0 +1,114 @@ +name: v1 +schema: + openAPIV3Schema: + description: SimNode is the Schema for the simnodes API + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + description: SimNodeSpec defines the desired state of SimTopoNode + properties: + component: + description: A list of components within a node. Used to define the type and location of linecards, fabrics (sfm), media adapter cards (mda) and control cards. + items: + properties: + kind: + description: The kind of Component, e.g. lineCard. + enum: + - controlCard + - lineCard + - fabric + - mda + - connector + - xiom + - powerShelf + - powerModule + type: string + slot: + description: |- + The slot this Component resides in, unset for Components that do not have a slot or ID. + e.g. 1 would denote the linecard slot 1, 1/1 would denote linecard slot 1 mda slot 1. + type: string + type: + description: Denotes the type of hardware being provisioned, e.g. xcm-x20. + type: string + required: + - kind + - type + type: object + type: array + containerImage: + description: Reference URL to the container image for the associated operatingSystem and version + type: string + dhcp: + properties: + preferredAddressFamily: + description: Preferred IP address family + enum: + - IPv4 + - IPv6 + type: string + type: object + imagePullSecret: + description: Secret used to authenticate to the container registry where the container image is hosted + type: string + license: + description: Reference to a URL path hosting the license for the TopoNode. + type: string + operatingSystem: + description: Operational operating system running on this TopoNode, e.g. srl, sros, nxos, eos + type: string + platform: + description: Operational platform type of this TopoNode, e.g. 7220 IXR-D3L + type: string + platformPath: + description: JSPath to use for retrieving the version string from nodes matching this NodeProfile + type: string + port: + default: 57400 + description: The port used to establish a connection to the TargetNode + maximum: 65535 + minimum: 1 + type: integer + serialNumberPath: + description: JSPath to use for retrieving the serial number string from nodes matching this NodeProfile + type: string + version: + description: Operational software version of this TopoNode, e.g. 24.7.1 (for srl), or 24.7.r1 (for sros) + type: string + versionMatch: + description: |- + Match the node-retrieved version string to TopoNode version + The value should be a regular expression matching the version string that would appear on the node + type: string + versionPath: + description: JSPath to use for retrieving the version string from nodes matching this NodeProfile + type: string + type: object + status: + description: SimNodeStatus defines the observed state of SimNode + properties: + ipAddress: + description: IP address of the simnode, this is the address the simulated instance of this SimNode uses. + type: string + type: object + type: object +served: true +storage: true +subresources: + status: {} diff --git a/static/resources/25.8.2/stateconfigs.services.eda.nokia.com/v1.yaml b/static/resources/25.8.2/stateconfigs.services.eda.nokia.com/v1.yaml new file mode 100644 index 0000000..11e9cf1 --- /dev/null +++ b/static/resources/25.8.2/stateconfigs.services.eda.nokia.com/v1.yaml @@ -0,0 +1,47 @@ +name: v1 +schema: + openAPIV3Schema: + description: StateConfig is the Schema for the StateConfigs API + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + properties: + configs: + items: + properties: + config: + type: string + path: + type: string + required: + - path + type: object + type: array + required: + - configs + type: object + status: + type: object + required: + - spec + type: object +served: true +storage: true +subresources: + status: {} diff --git a/static/resources/25.8.2/stateconfigs.services.eda.nokia.com/v1alpha1.yaml b/static/resources/25.8.2/stateconfigs.services.eda.nokia.com/v1alpha1.yaml new file mode 100644 index 0000000..fc9774c --- /dev/null +++ b/static/resources/25.8.2/stateconfigs.services.eda.nokia.com/v1alpha1.yaml @@ -0,0 +1,49 @@ +deprecated: true +deprecationWarning: This version is deprecated and will no longer be supported in the next version. +name: v1alpha1 +schema: + openAPIV3Schema: + description: StateConfig is the Schema for the StateConfigs API + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + properties: + configs: + items: + properties: + config: + type: string + path: + type: string + required: + - path + type: object + type: array + required: + - configs + type: object + status: + type: object + required: + - spec + type: object +served: true +storage: false +subresources: + status: {} diff --git a/static/resources/25.8.2/staticroutes.protocols.eda.nokia.com/v1.yaml b/static/resources/25.8.2/staticroutes.protocols.eda.nokia.com/v1.yaml new file mode 100644 index 0000000..022e3e8 --- /dev/null +++ b/static/resources/25.8.2/staticroutes.protocols.eda.nokia.com/v1.yaml @@ -0,0 +1,130 @@ +name: v1 +schema: + openAPIV3Schema: + description: StaticRoute is the Schema for the static routes API + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + description: StaticRoute allows for the specification of destination prefixes, route preferences, and the associated Router. It also supports configuring nexthop groups and specifying the nodes where the static routes should be provisioned. + properties: + nexthopGroup: + description: Group of nexthops for the list of prefixes. + properties: + bfd: + description: Enables BFD to the next-hops in the group. Local and Remote discriminator parameters have been deprecated at this level. Use Nexthop to set these parameters. + properties: + enabled: + default: false + description: Defines whether BFD should be enabled towards the nexthops. + type: boolean + localAddress: + description: Defines the local address to use when establishing the BFD session with the nexthop. + type: string + type: object + blackhole: + default: false + description: If set to true all traffic destined to the prefixes will be blackholed. If enabled, next-hops are ignored and this takes precedence. + type: boolean + blackholeSendICMP: + description: When enabled, the router will generate ICMP Unreachable messages for packets destined to the blackhole route. + type: boolean + nexthops: + description: Ordered list of nexthops. + items: + properties: + bfd: + description: Enables BFD to the next-hops in the group. This overrides the configuration at the group. + properties: + enabled: + default: false + description: Defines whether BFD should be enabled towards the nexthops. + type: boolean + localAddress: + description: Defines the local address to use when establishing the BFD session with the nexthop. + type: string + localDiscriminator: + description: Defines the local discriminator. + type: integer + remoteDiscriminator: + description: Defines the remote discriminator. + type: integer + type: object + ipPrefix: + description: Address to use. + type: string + resolve: + default: false + description: If set to true the next-hops can be destinations which are resolved in the route table. This overrides the configuration at the group. + type: boolean + required: + - ipPrefix + type: object + type: array + resolve: + default: false + description: If set to true the next-hops can be destinations which are resolved in the route table. + type: boolean + type: object + nodes: + description: List of nodes on which to configure the static routes. An AND operation is executed against the nodes in this list and the nodes on which the Router is configured to determine the Nodes on which to configure the static routes. + items: + type: string + type: array + preference: + description: Defines the route preference. + type: integer + prefixes: + description: List of destination prefixes and mask to use for the static routes. + items: + type: string + type: array + router: + description: Reference to a Router on which to configure the static routes. If no Nodes are provided then the static routes will be provisioned on all Nodes on which the Router is provisioned. + type: string + required: + - nexthopGroup + - prefixes + - router + type: object + status: + description: StaticRouteStatus defines the observed state of Static Route + properties: + health: + description: Indicates the health score of the static routes. + type: integer + healthScoreReason: + description: Indicates the reason for the health score. + type: string + lastChange: + description: The time when the state of the resource last changed. + type: string + nodes: + description: List of Nodes on which the static routes are configured. + items: + type: string + type: array + operationalState: + description: Operational state of the static routes. + type: string + type: object + type: object +served: true +storage: true +subresources: + status: {} diff --git a/static/resources/25.8.2/staticroutes.protocols.eda.nokia.com/v1alpha1.yaml b/static/resources/25.8.2/staticroutes.protocols.eda.nokia.com/v1alpha1.yaml new file mode 100644 index 0000000..f65e6e8 --- /dev/null +++ b/static/resources/25.8.2/staticroutes.protocols.eda.nokia.com/v1alpha1.yaml @@ -0,0 +1,138 @@ +deprecated: true +deprecationWarning: This version is deprecated and will no longer be supported in the next version. +name: v1alpha1 +schema: + openAPIV3Schema: + description: StaticRoute is the Schema for the static routes API + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + description: StaticRoute allows for the specification of destination prefixes, route preferences, and the associated Router. It also supports configuring nexthop groups and specifying the nodes where the static routes should be provisioned. + properties: + nexthopGroup: + description: Group of nexthops for the list of prefixes. + properties: + bfd: + description: Enables BFD to the next-hops in the group. Local and Remote discriminator parameters have been deprecated at this level. Use Nexthop to set these parameters. + properties: + enabled: + default: false + description: Defines whether BFD should be enabled towards the nexthops. + type: boolean + localAddress: + description: Defines the local address to use when establishing the BFD session with the nexthop. + type: string + localDiscriminator: + description: Defines the local discriminator. + type: integer + remoteDiscriminator: + description: Defines the remote discriminator. + type: integer + type: object + blackhole: + default: false + description: If set to true all traffic destined to the prefixes will be blackholed. If enabled, next-hops are ignored and this takes precedence. + type: boolean + blackholeSendICMP: + description: When enabled, the router will generate ICMP Unreachable messages for packets destined to the blackhole route. + type: boolean + nexthops: + description: Ordered list of nexthops. + items: + properties: + bfd: + description: Enables BFD to the next-hops in the group. This overrides the configuration at the group. + properties: + enabled: + default: false + description: Defines whether BFD should be enabled towards the nexthops. + type: boolean + localAddress: + description: Defines the local address to use when establishing the BFD session with the nexthop. + type: string + localDiscriminator: + description: Defines the local discriminator. + type: integer + remoteDiscriminator: + description: Defines the remote discriminator. + type: integer + type: object + ipPrefix: + description: Address to use. + type: string + resolve: + default: false + description: If set to true the next-hops can be destinations which are resolved in the route table. This overrides the configuration at the group. + type: boolean + required: + - ipPrefix + type: object + type: array + resolve: + default: false + description: If set to true the next-hops can be destinations which are resolved in the route table. + type: boolean + type: object + nodes: + description: List of nodes on which to configure the static routes. An AND operation is executed against the nodes in this list and the nodes on which the Router is configured to determine the Nodes on which to configure the static routes. + items: + type: string + type: array + preference: + description: Defines the route preference. + type: integer + prefixes: + description: List of destination prefixes and mask to use for the static routes. + items: + type: string + type: array + router: + description: Reference to a Router on which to configure the static routes. If no Nodes are provided then the static routes will be provisioned on all Nodes on which the Router is provisioned. + type: string + required: + - nexthopGroup + - prefixes + - router + type: object + status: + description: StaticRouteStatus defines the observed state of Static Route + properties: + health: + description: Indicates the health score of the static routes. + type: integer + healthScoreReason: + description: Indicates the reason for the health score. + type: string + lastChange: + description: The time when the state of the resource last changed. + type: string + nodes: + description: List of Nodes on which the static routes are configured. + items: + type: string + type: array + operationalState: + description: Operational state of the static routes. + type: string + type: object + type: object +served: true +storage: false +subresources: + status: {} diff --git a/static/resources/25.8.2/subnetallocationpools.core.eda.nokia.com/v1.yaml b/static/resources/25.8.2/subnetallocationpools.core.eda.nokia.com/v1.yaml new file mode 100644 index 0000000..839785c --- /dev/null +++ b/static/resources/25.8.2/subnetallocationpools.core.eda.nokia.com/v1.yaml @@ -0,0 +1,90 @@ +name: v1 +schema: + openAPIV3Schema: + description: SubnetAllocationPool is the Schema for the subnetallocationpools API + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + description: |- + SubnetAllocationPool is a generic subnet allocation pool supporting allocation of IPv4 and/or IPv6 child subnets from a list of parent subnet segments. + It allocates a subnet of the configured length from the provided parent subnet. + For example a pool could return 10.1.0.8/29 when a segment is defined as subnet 10.1.0.0/16 with subnet length 29. + Consult application documentation to know which pool type to use for a given use case. + properties: + publishAllocations: + description: If true, allocations in segments will be published to EDB, available to query via EQL and trigger state applications off of. + type: boolean + segments: + description: List of segments containing subnets to allocate. + items: + properties: + allocations: + description: List of reservations to exclude from allocations from this segment. + items: + properties: + name: + description: Name of this allocation. + type: string + value: + description: Allocation to reserve. + type: string + required: + - name + - value + type: object + type: array + reservations: + description: List of ranges to exclude from allocations from this segment. + items: + properties: + end: + description: Value to reserve to. + type: string + start: + description: Value to start reserving. + type: string + required: + - end + - start + type: object + type: array + subnet: + description: IPv4 or IPv6 subnet to allocate subnets from, e.g. 10.1.0.0/16. + type: string + subnetLength: + description: The size of the subnets to be allocated from within the parent subnet, e.g. 29 (which could allocate 10.1.0.8/29, for example). + format: int32 + type: integer + required: + - subnet + - subnetLength + type: object + minItems: 1 + type: array + required: + - segments + type: object + status: + description: SubnetAllocationPoolStatus defines the observed state of SubnetAllocationPool + type: object + type: object +served: true +storage: true +subresources: + status: {} diff --git a/static/resources/25.8.2/systeminterfaces.routing.eda.nokia.com/v1alpha1.yaml b/static/resources/25.8.2/systeminterfaces.routing.eda.nokia.com/v1alpha1.yaml new file mode 100644 index 0000000..3b76471 --- /dev/null +++ b/static/resources/25.8.2/systeminterfaces.routing.eda.nokia.com/v1alpha1.yaml @@ -0,0 +1,117 @@ +additionalPrinterColumns: + - jsonPath: .status.lastChange + name: Last Change + type: date + - jsonPath: .status.operationalState + name: Operational State + type: string + - jsonPath: .spec.ipv4Address + name: IPv4 Address + type: string + - jsonPath: .spec.ipv6Address + name: IPv6 Address + type: string +name: v1alpha1 +schema: + openAPIV3Schema: + description: SystemInterface is the Schema for the systeminterfaces API + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + description: SystemInterfaceSpec defines the desired state of SystemInterface + properties: + bfd: + description: Enable or disable BFD on this SystemInterface. + properties: + desiredMinTransmitInt: + default: 1000000 + description: The minimum interval in microseconds between transmission of BFD control packets[default=1000000]. + maximum: 100000000 + minimum: 10000 + type: integer + detectionMultiplier: + default: 3 + description: The number of packets that must be missed to declare this session as down. [default=3] + maximum: 20 + minimum: 3 + type: integer + enabled: + default: false + description: Enable Biforward Detection[default=false]. + type: boolean + minEchoReceiveInterval: + default: 1000000 + description: The minimum interval between echo packets the local node can receive in microseconds + maximum: 100000000 + minimum: 0 + type: integer + requiredMinReceive: + default: 1000000 + description: The minimum interval in microseconds between received BFD control packets that this system should support.[default=1000000]. + maximum: 100000000 + minimum: 10000 + type: integer + ttl: + description: Sets custom IP TTL or Hop Limit for multi-hop BFD sessions packets. Not appllicable to single-hop BFD sessions. + maximum: 255 + minimum: 2 + type: integer + required: + - desiredMinTransmitInt + - detectionMultiplier + - enabled + - minEchoReceiveInterval + - requiredMinReceive + type: object + defaultRouter: + description: Reference to a DefaultRouter. + type: string + description: + description: The description of the SystemInterface. + type: string + ipv4Address: + description: IPv4 address in ip/mask form, e.g., 192.168.0.1/32. + type: string + ipv6Address: + description: IPv6 address in ip/mask form, e.g., fc00::1/128. + type: string + required: + - defaultRouter + type: object + status: + description: SystemInterfaceStatus defines the observed state of SystemInterface + properties: + health: + description: Indicates the health score of the SystemInterface. + type: integer + healthScoreReason: + description: Indicates the reason for the health score. + type: string + lastChange: + description: Indicates when this Interface last changed state. + type: string + operationalState: + description: Indicates the current operational state of the SystemInterface. + type: string + type: object + type: object +served: true +storage: true +subresources: + status: {} diff --git a/static/resources/25.8.2/systeminterfacestates.routing.eda.nokia.com/v1alpha1.yaml b/static/resources/25.8.2/systeminterfacestates.routing.eda.nokia.com/v1alpha1.yaml new file mode 100644 index 0000000..095e3ed --- /dev/null +++ b/static/resources/25.8.2/systeminterfacestates.routing.eda.nokia.com/v1alpha1.yaml @@ -0,0 +1,68 @@ +name: v1alpha1 +schema: + openAPIV3Schema: + description: SystemInterfaceState is the Schema for the systeminterfacestates API + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + description: SystemInterfaceStateSpec defines the desired state of SystemInterfaceState + properties: + defaultRouter: + description: Reference to a DefaultRouter + type: string + interface: + description: Reference to an interface + type: string + ipv4Address: + description: IPv4 address of the system interface + type: string + ipv6Address: + description: IPv6 addresses of the system interface + type: string + networkInstanceName: + description: The name of the network-instance or base routing instance in which the SystemInterface is configured + type: string + node: + description: Reference to Node object + type: string + nodeInterface: + description: Node specific interface name, for example "ethernet-1/1", "1/1/c1/1" + type: string + operatingSystem: + description: Operating System of the Node + type: string + subInterfaceIndex: + description: Index of the subinterface + type: integer + required: + - defaultRouter + - interface + - ipv4Address + - networkInstanceName + - node + - nodeInterface + type: object + status: + description: SystemInterfaceStateStatus defines the observed state of SystemInterfaceState + type: object + type: object +served: true +storage: true +subresources: + status: {} diff --git a/static/resources/25.8.2/targetnodes.core.eda.nokia.com/v1.yaml b/static/resources/25.8.2/targetnodes.core.eda.nokia.com/v1.yaml new file mode 100644 index 0000000..c40500a --- /dev/null +++ b/static/resources/25.8.2/targetnodes.core.eda.nokia.com/v1.yaml @@ -0,0 +1,443 @@ +additionalPrinterColumns: + - jsonPath: .status.tlsStatus.nodeSecurityProfile + name: NodeSecurityProfile + type: string + - jsonPath: .status.bootstrapStatus + name: Status + type: string + - jsonPath: .status.dhcpStatus + name: DHCP + type: string + - jsonPath: .spec.address + name: Address + type: string + - jsonPath: .spec.port + name: Port + type: string +name: v1 +schema: + openAPIV3Schema: + description: TargetNode is the Schema for the targetnodes API + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + description: TargetNodeSpec defines the desired state of TargetNode + properties: + address: + description: Addressed used to connect to TopoNode + type: string + dhcp4: + description: DHCPv4 configuration + properties: + address: + description: Assigned address in DHCP4 reply + type: string + options: + description: DHCP4 Options + items: + properties: + option: + description: DHCPv4 option to return to the TopoNode. + enum: + - 1-SubnetMask + - 2-TimeOffset + - 3-Router + - 4-TimeServer + - 5-NameServer + - 6-DomainNameServer + - 7-LogServer + - 8-QuoteServer + - 9-LPRServer + - 10-ImpressServer + - 11-ResourceLocationServer + - 12-HostName + - 13-BootFileSize + - 14-MeritDumpFile + - 15-DomainName + - 16-SwapServer + - 17-RootPath + - 18-ExtensionsPath + - 19-IPForwarding + - 20-NonLocalSourceRouting + - 21-PolicyFilter + - 22-MaximumDatagramAssemblySize + - 23-DefaultIPTTL + - 24-PathMTUAgingTimeout + - 25-PathMTUPlateauTable + - 26-InterfaceMTU + - 27-AllSubnetsAreLocal + - 28-BroadcastAddress + - 29-PerformMaskDiscovery + - 30-MaskSupplier + - 31-PerformRouterDiscovery + - 32-RouterSolicitationAddress + - 33-StaticRoutingTable + - 34-TrailerEncapsulation + - 35-ArpCacheTimeout + - 36-EthernetEncapsulation + - 37-DefaulTCPTTL + - 38-TCPKeepaliveInterval + - 39-TCPKeepaliveGarbage + - 40-NetworkInformationServiceDomain + - 41-NetworkInformationServers + - 42-NTPServers + - 43-VendorSpecificInformation + - 44-NetBIOSOverTCPIPNameServer + - 45-NetBIOSOverTCPIPDatagramDistributionServer + - 46-NetBIOSOverTCPIPNodeType + - 47-NetBIOSOverTCPIPScope + - 48-XWindowSystemFontServer + - 49-XWindowSystemDisplayManager + - 50-RequestedIPAddress + - 51-IPAddressLeaseTime + - 52-OptionOverload + - 53-DHCPMessageType + - 54-ServerIdentifier + - 55-ParameterRequestList + - 56-Message + - 57-MaximumDHCPMessageSize + - 58-RenewTimeValue + - 59-RebindingTimeValue + - 60-ClassIdentifier + - 61-ClientIdentifier + - 62-NetWareIPDomainName + - 63-NetWareIPInformation + - 64-NetworkInformationServicePlusDomain + - 65-NetworkInformationServicePlusServers + - 66-TFTPServerName + - 67-BootfileName + - 68-MobileIPHomeAgent + - 69-SimpleMailTransportProtocolServer + - 70-PostOfficeProtocolServer + - 71-NetworkNewsTransportProtocolServer + - 72-DefaultWorldWideWebServer + - 73-DefaultFingerServer + - 74-DefaultInternetRelayChatServer + - 75-StreetTalkServer + - 76-StreetTalkDirectoryAssistanceServer + - 77-UserClassInformation + - 78-SLPDirectoryAgent + - 79-SLPServiceScope + - 80-RapidCommit + - 81-FQDN + - 82-RelayAgentInformation + - 83-InternetStorageNameService + - 85-NDSServers + - 86-NDSTreeName + - 87-NDSContext + - 88-BCMCSControllerDomainNameList + - 89-BCMCSControllerIPv4AddressList + - 90-Authentication + - 91-ClientLastTransactionTime + - 92-AssociatedIP + - 93-ClientSystemArchitectureType + - 94-ClientNetworkInterfaceIdentifier + - 95-LDAP + - 97-ClientMachineIdentifier + - 98-OpenGroupUserAuthentication + - 99-GeoConfCivic + - 100-IEEE10031TZString + - 101-ReferenceToTZDatabase + - 112-NetInfoParentServerAddress + - 113-NetInfoParentServerTag + - 114-URL + - 116-AutoConfigure + - 117-NameServiceSearch + - 118-SubnetSelection + - 119-DNSDomainSearchList + - 120-SIPServers + - 121-ClasslessStaticRoute + - 122-CCC + - 123-GeoConf + - 124-VendorIdentifyingVendorClass + - 125-VendorIdentifyingVendorSpecific + - 128-TFTPServerIPAddress + - 129-CallServerIPAddress + - 130-DiscriminationString + - 131-RemoteStatisticsServerIPAddress + - 132-8021PVLANID + - 133-8021QL2Priority + - 134-DiffservCodePoint + - 135-HTTPProxyForPhoneSpecificApplications + - 136-PANAAuthenticationAgent + - 137-LoSTServer + - 138-CAPWAPAccessControllerAddresses + - 139-OPTIONIPv4AddressMoS + - 140-OPTIONIPv4FQDNMoS + - 141-SIPUAConfigurationServiceDomains + - 142-OPTIONIPv4AddressANDSF + - 143-OPTIONIPv6AddressANDSF + - 150-TFTPServerAddress + - 151-StatusCode + - 152-BaseTime + - 153-StartTimeOfState + - 154-QueryStartTime + - 155-QueryEndTime + - 156-DHCPState + - 157-DataSource + - 175-Etherboot + - 176-IPTelephone + - 177-EtherbootPacketCableAndCableHome + - 208-PXELinuxMagicString + - 209-PXELinuxConfigFile + - 210-PXELinuxPathPrefix + - 211-PXELinuxRebootTime + - 212-OPTION6RD + - 213-OPTIONv4AccessDomain + - 220-SubnetAllocation + - 221-VirtualSubnetAllocation + - 224-Reserved + - 225-Reserved + - 226-Reserved + - 227-Reserved + - 228-Reserved + - 229-Reserved + - 230-Reserved + - 231-Reserved + - 232-Reserved + - 233-Reserved + - 234-Reserved + - 235-Reserved + - 236-Reserved + - 237-Reserved + - 238-Reserved + - 239-Reserved + - 240-Reserved + - 241-Reserved + - 242-Reserved + - 243-Reserved + - 244-Reserved + - 245-Reserved + - 246-Reserved + - 247-Reserved + - 248-Reserved + - 249-Reserved + - 250-Reserved + - 251-Reserved + - 252-Reserved + - 253-Reserved + - 254-Reserved + - 255-End + type: string + value: + description: Value to return to the TopoNode for the specified option. + items: + type: string + minItems: 1 + type: array + required: + - option + - value + type: object + type: array + required: + - address + - options + type: object + dhcp6: + description: DHCPv6 configuration + properties: + address: + description: Assigned address in DHCP6 reply + type: string + options: + description: DHCP6 Options + items: + properties: + option: + description: DHCPv6 option to return to the TopoNode. + enum: + - 59-BootfileUrl + type: string + value: + description: Value to return to the TopoNode for the specified option. + items: + type: string + minItems: 1 + type: array + required: + - option + - value + type: object + type: array + required: + - address + - options + type: object + macAddress: + description: ' MAC address of the TopoNode' + type: string + operatingSystem: + description: The OS matching this NodeProfile + enum: + - srl + - sros + - eos + - sonic + - ios-xr + - nxos + type: string + platform: + description: Platform type of this Node, e.g. 7220 IXR-D3L + type: string + platformPath: + description: JSPath to use for retrieving the chassis string from the node + type: string + port: + description: Port used to connect to the TopoNode + type: integer + serialNumber: + description: Serial number of the TopoNode + type: string + serialNumberPath: + description: JSPath to use for retrieving the serial number string from the node + type: string + versionMatch: + description: |- + Match the node-retrieved version string to TargetNode version + The value should be a regular expression matching the version string that would appear on the node + type: string + versionPath: + description: JSPath to use for retrieving the version string from the node + type: string + required: + - address + - operatingSystem + type: object + status: + description: TargetNodeStatus defines the observed state of TargetNode + properties: + bootstrapStatus: + description: Bootstrap status of the Target + enum: + - Init + - Ready + - Failed + type: string + bootstrapStatusReason: + description: Human-readable message indicating details about the bootstrapStatus's Failed state + type: string + dhcpStatus: + description: DHCP status of the Target + enum: + - Offered + - Acknowledged + type: string + tlsStatus: + description: TLS status of the Target + properties: + nodeSecurityProfile: + description: NodeSecurity Profile Used + type: string + tls: + description: NodeSecurity Profile Used + properties: + csrParams: + description: A set of certificate signing request parameters used when asking for a CSR from the toponode. + properties: + certificateValidity: + default: 2160h + description: CertificateValidity defines the duration for which the certificate is considered valid after issuance. + type: string + city: + description: City denotes the city where the organization is based. + type: string + commonName: + description: CommonName specifies the common name field of the CSR, typically representing the domain name. + type: string + country: + description: Country indicates the country in which the organization is legally registered. + type: string + csrSuite: + default: CSRSUITE_X509_KEY_TYPE_RSA_2048_SIGNATURE_ALGORITHM_SHA_2_256 + description: The CSRSuite value used when asking for a CSR from the toponode + enum: + - CSRSUITE_X509_KEY_TYPE_RSA_2048_SIGNATURE_ALGORITHM_SHA_2_256 + - CSRSUITE_X509_KEY_TYPE_RSA_2048_SIGNATURE_ALGORITHM_SHA_2_384 + - CSRSUITE_X509_KEY_TYPE_RSA_2048_SIGNATURE_ALGORITHM_SHA_2_512 + - CSRSUITE_X509_KEY_TYPE_RSA_3072_SIGNATURE_ALGORITHM_SHA_2_256 + - CSRSUITE_X509_KEY_TYPE_RSA_3072_SIGNATURE_ALGORITHM_SHA_2_384 + - CSRSUITE_X509_KEY_TYPE_RSA_3072_SIGNATURE_ALGORITHM_SHA_2_512 + - CSRSUITE_X509_KEY_TYPE_RSA_4096_SIGNATURE_ALGORITHM_SHA_2_256 + - CSRSUITE_X509_KEY_TYPE_RSA_4096_SIGNATURE_ALGORITHM_SHA_2_384 + - CSRSUITE_X509_KEY_TYPE_RSA_4096_SIGNATURE_ALGORITHM_SHA_2_512 + - CSRSUITE_X509_KEY_TYPE_ECDSA_PRIME256V1_SIGNATURE_ALGORITHM_SHA_2_256 + - CSRSUITE_X509_KEY_TYPE_ECDSA_PRIME256V1_SIGNATURE_ALGORITHM_SHA_2_384 + - CSRSUITE_X509_KEY_TYPE_ECDSA_PRIME256V1_SIGNATURE_ALGORITHM_SHA_2_512 + - CSRSUITE_X509_KEY_TYPE_ECDSA_SECP384R1_SIGNATURE_ALGORITHM_SHA_2_256 + - CSRSUITE_X509_KEY_TYPE_ECDSA_SECP384R1_SIGNATURE_ALGORITHM_SHA_2_384 + - CSRSUITE_X509_KEY_TYPE_ECDSA_SECP384R1_SIGNATURE_ALGORITHM_SHA_2_512 + - CSRSUITE_X509_KEY_TYPE_ECDSA_SECP521R1_SIGNATURE_ALGORITHM_SHA_2_256 + - CSRSUITE_X509_KEY_TYPE_ECDSA_SECP521R1_SIGNATURE_ALGORITHM_SHA_2_384 + - CSRSUITE_X509_KEY_TYPE_ECDSA_SECP521R1_SIGNATURE_ALGORITHM_SHA_2_512 + - CSRSUITE_X509_KEY_TYPE_EDDSA_ED25519 + type: string + org: + description: Org is the name of the organization requesting the CSR. + type: string + orgUnit: + description: OrgUnit specifies the organizational unit (like department or division) within the organization. + type: string + san: + description: Subject Alternative Names contains additional hostnames or IP addresses covered by the CSR. + properties: + dns: + description: Dns contains a list of DNS names that can be used to access the server. + items: + type: string + type: array + emails: + description: Emails consists of email addresses that should be associated with the certificate. + items: + type: string + type: array + ips: + description: Ips includes IP addresses that the certificate should validate. + items: + type: string + type: array + uris: + description: Uris lists specific URIs that the certificate will authenticate. + items: + type: string + type: array + type: object + state: + description: State represents the state or province where the organization is located. + type: string + type: object + issuerRef: + description: Reference to a CertManager issuer that must be used to sign nodes certificates. + type: string + skipVerify: + description: Skip certificate verification. + type: boolean + trustBundle: + description: |- + Reference to configMap that contains a CA certificate that is used to verify the node certificate + when certificates are not managed by EDA. + type: string + type: object + type: object + type: object + type: object +served: true +storage: true +subresources: + status: {} diff --git a/static/resources/25.8.2/techsupports.oam.eda.nokia.com/v1alpha1.yaml b/static/resources/25.8.2/techsupports.oam.eda.nokia.com/v1alpha1.yaml new file mode 100644 index 0000000..eb2e365 --- /dev/null +++ b/static/resources/25.8.2/techsupports.oam.eda.nokia.com/v1alpha1.yaml @@ -0,0 +1,65 @@ +additionalPrinterColumns: + - jsonPath: .status.id + name: ID + type: integer + - jsonPath: .status.result + name: Result + type: string + - jsonPath: .metadata.creationTimestamp + name: Age + type: date +name: v1alpha1 +schema: + openAPIV3Schema: + description: TechSupport is the Schema for the techsupports API + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + description: Generate technical support packages for a node or set of nodes. + properties: + nodeSelectors: + description: |- + List of node selectors to select nodes generate technical support packages for. + This matches labels on TopoNode resources. + If no nodes are specified, and no node selectors are specified, all nodes in the given namespace will be selected. + This is a list of label expressions, e.g. ["eda.nokia.com/role=leaf"]. + items: + type: string + type: array + nodes: + description: List of nodes to generate and collect technical support packages for. + items: + type: string + type: array + type: object + status: + description: Result of the technical support package generation. + properties: + id: + description: Id + type: integer + result: + description: Result + type: string + type: object + type: object +served: true +storage: true +subresources: + status: {} diff --git a/static/resources/25.8.2/thresholds.oam.eda.nokia.com/v1alpha1.yaml b/static/resources/25.8.2/thresholds.oam.eda.nokia.com/v1alpha1.yaml new file mode 100644 index 0000000..67242c3 --- /dev/null +++ b/static/resources/25.8.2/thresholds.oam.eda.nokia.com/v1alpha1.yaml @@ -0,0 +1,127 @@ +name: v1alpha1 +schema: + openAPIV3Schema: + description: Threshold is the Schema for the thresholds API + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + description: |- + A Threshold allows you to monitor a field in EDB and trigger severity-correct alarms based on the value of that field. + By using EDB as a source you are able to trigger thresholds on any published field from a TopoNode, or any other EDB source. + properties: + alarm: + description: Alarm details for this threshold. + properties: + description: + description: The description of the alarm. + type: string + probableCause: + description: The probable cause of the alarm. + type: string + remedialAction: + description: The remedial action for the alarm. + type: string + type: object + enabled: + default: true + description: Enable or disable this threshold. + type: boolean + field: + description: Field to monitor for this threshold, for example `utilization`. + type: string + generateOverlay: + default: false + description: Enable or disable generation of a topology overlay for this threshold. + type: boolean + name: + description: The name of this threshold. This name will be used to generate the alarm name, so should follow CamelCase conventions, e.g. VolumeUtilization. + type: string + path: + description: |- + Path to monitor for this threshold. This should be the full EDB path to the table containing the field you wish to trigger a threshold on. + For example, to monitor the utilization field of the component volume table, you would use `.namespace.node.normal.components_eda_nokia_com.v1.controlmodule.volume`, and set field to `utilization`. + type: string + resource: + description: |- + Which resource to associate with this threshold. This overrides the destination resource in alarms raised as a result of threshold breaches. + By default a resource will attempt to be derived based on the monitored path. + properties: + group: + description: The group of the resource to monitor. + type: string + kind: + description: The kind of resource to monitor. + type: string + name: + description: The name of the resource to monitor. + type: string + required: + - group + - kind + - name + type: object + thresholds: + description: Severities and their associated values. + properties: + criticalThreshold: + description: |- + The minimum average utilization over the last 1 minute to trigger a critical alarm. + This value must be greater than the majorThreshold. + type: integer + delta: + default: 5 + description: |- + The delta value for clearing a threshold. + For example, with a critical threshold of 90, direction of Rising and a delta of 5, the critical alarm will clear when the utilization drops below 85. + type: integer + direction: + default: Rising + description: 'Direction of the threshold: "Rising" or "Falling".' + enum: + - Rising + - Falling + type: string + majorThreshold: + description: |- + The minimum average utilization over the last 1 minute to trigger a major alarm. + This value must be greater than the minorThreshold. + type: integer + minorThreshold: + description: The minimum average utilization over the last 1 minute to trigger a minor alarm. + type: integer + warningThreshold: + description: The minimum average utilization over the last 1 minute to trigger a warning alarm. + type: integer + required: + - direction + type: object + required: + - field + - name + - path + - thresholds + type: object + status: + description: ThresholdStatus defines the observed state of Threshold + type: object + type: object +served: true +storage: true +subresources: + status: {} diff --git a/static/resources/25.8.2/thresholds.platformmetrics.eda.nokia.com/v1.yaml b/static/resources/25.8.2/thresholds.platformmetrics.eda.nokia.com/v1.yaml new file mode 100644 index 0000000..0693102 --- /dev/null +++ b/static/resources/25.8.2/thresholds.platformmetrics.eda.nokia.com/v1.yaml @@ -0,0 +1,37 @@ +name: v1 +schema: + openAPIV3Schema: + description: Threshold is the Schema for the thresholds API + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + description: ThresholdSpec defines the desired state of Threshold + properties: + foo: + description: Foo is an example field of Threshold. Edit threshold_types.go to remove/update + type: string + type: object + status: + description: ThresholdStatus defines the observed state of Threshold + type: object + type: object +served: true +storage: true +subresources: + status: {} diff --git a/static/resources/25.8.2/topobreakouts.core.eda.nokia.com/v1.yaml b/static/resources/25.8.2/topobreakouts.core.eda.nokia.com/v1.yaml new file mode 100644 index 0000000..47dc96b --- /dev/null +++ b/static/resources/25.8.2/topobreakouts.core.eda.nokia.com/v1.yaml @@ -0,0 +1,65 @@ +name: v1 +schema: + openAPIV3Schema: + description: TopoBreakout is the Schema for the topobreakouts API + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + description: TopoBreakoutSpec defines the desired state of TopoBreakout + properties: + channels: + description: The number of breakout channels to create + maximum: 8 + minimum: 1 + type: integer + interface: + description: A list of normalized parent interface/port + items: + type: string + type: array + node: + description: Reference to a list of TopoNodes where the parent interfaces are to be broken out + items: + type: string + type: array + speed: + description: The speed of each breakout channel + enum: + - 800G + - 400G + - 200G + - 100G + - 50G + - 40G + - 25G + - 10G + type: string + required: + - channels + - node + - speed + type: object + status: + description: TopoBreakoutStatus defines the observed state of TopoBreakout + type: object + type: object +served: true +storage: true +subresources: + status: {} diff --git a/static/resources/25.8.2/topolinkmonitors.topologies.eda.nokia.com/v1alpha1.yaml b/static/resources/25.8.2/topolinkmonitors.topologies.eda.nokia.com/v1alpha1.yaml new file mode 100644 index 0000000..9a8aaa1 --- /dev/null +++ b/static/resources/25.8.2/topolinkmonitors.topologies.eda.nokia.com/v1alpha1.yaml @@ -0,0 +1,33 @@ +name: v1alpha1 +schema: + openAPIV3Schema: + description: TopoLinkMonitor is the Schema for the topolinkmonitors API + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + description: TopoLinkMonitorSpec triggers the monitoring of TopoLinks. + type: object + status: + description: TopoLinkMonitorStatus defines the observed state of TopoLinkMonitor. + type: object + type: object +served: true +storage: true +subresources: + status: {} diff --git a/static/resources/25.8.2/topolinks.core.eda.nokia.com/v1.yaml b/static/resources/25.8.2/topolinks.core.eda.nokia.com/v1.yaml new file mode 100644 index 0000000..de70203 --- /dev/null +++ b/static/resources/25.8.2/topolinks.core.eda.nokia.com/v1.yaml @@ -0,0 +1,132 @@ +name: v1 +schema: + openAPIV3Schema: + description: TopoLink is the Schema for the topolinks API + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + description: |- + TopoLink represents a logical link between two TopoNodes. It may include more than one physical link, being used to represent a LAG or multihomed link. + To create a point to point link with a single interface on both sides use a single link property. + To create a point to point link with a LAG configured on both side, use two links with matching nodes. + A multihomed LAG is created by using two or more links where the A side and/or B side can be different. + Creating a link with only A specified will create an edge interface. + properties: + links: + description: Define the set of physical links making up this TopoLink. + items: + properties: + local: + description: Local, or "A" endpoint of the link. + properties: + interface: + description: Normalized name of the interface/port, e.g. ethernet-1-1. + type: string + interfaceResource: + description: Reference to a Interface. + type: string + node: + description: Reference to a TopoNode. + type: string + required: + - interfaceResource + - node + type: object + remote: + description: Remote, or "B" endpoint of the link. + properties: + interface: + description: Normalized name of the interface/port, e.g. ethernet-1-1. + type: string + interfaceResource: + description: Reference to a Interface. + type: string + node: + description: Reference to a TopoNode. + type: string + required: + - interfaceResource + - node + type: object + speed: + description: Speed of the link. + enum: + - 800G + - 400G + - 200G + - 100G + - 50G + - 40G + - 25G + - 10G + - 2.5G + - 1G + - 100M + type: string + type: + description: |- + Specify the type of link. + If type is set to edge, topology information for the remote device can be set; when doing so the Remote Node can be set as the hostname of the remote device and Remote Interface as the remote interface name in the device specific format, e.g. eth0. + enum: + - edge + - interSwitch + - loopback + type: string + required: + - local + - type + type: object + minItems: 1 + type: array + required: + - links + type: object + status: + description: TopoLinkStatus defines the observed state of TopoLink + properties: + members: + description: List of members present on the TopoLink. + items: + description: MemberStatus defines the state of each member of a TopoLink + properties: + interface: + description: Reference to an Interface + type: string + node: + description: Reference to a TopoNode + type: string + operationalState: + description: Indicates the operational state of the TopoLink member. + type: string + required: + - node + - operationalState + type: object + type: array + operationalState: + description: Indicates the aggregate operational state of the TopoLink. + type: string + required: + - operationalState + type: object + type: object +served: true +storage: true +subresources: + status: {} diff --git a/static/resources/25.8.2/topolinkstates.topologies.eda.nokia.com/v1alpha1.yaml b/static/resources/25.8.2/topolinkstates.topologies.eda.nokia.com/v1alpha1.yaml new file mode 100644 index 0000000..60f86d7 --- /dev/null +++ b/static/resources/25.8.2/topolinkstates.topologies.eda.nokia.com/v1alpha1.yaml @@ -0,0 +1,107 @@ +name: v1alpha1 +schema: + openAPIV3Schema: + description: TopoLinkState is the Schema for the topolinkstates API + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + description: |- + TopoLinkStateSpec represents a logical link between two TopoNodes. It may include more than one physical link, being used to represent a LAG or multihomed link. + To create a point to point link with a single interface on both sides use a single link property. + To create a point to point link with a LAG configured on both side, use two links with matching nodes. + A multihomed LAG is created by using two or more links where the A side and/or B side can be different. + Creating a link with only A specified will create an edge interface. + properties: + links: + description: Define the set of physical links making up this TopoLink. + items: + properties: + local: + description: Local, or "A" endpoint of the link. + properties: + interface: + description: Normalized name of the interface/port, e.g. ethernet-1-1. + type: string + interfaceResource: + description: Reference to a Interface. + type: string + node: + description: Reference to a TopoNode. + type: string + required: + - interfaceResource + - node + type: object + remote: + description: Remote, or "B" endpoint of the link. + properties: + interface: + description: Normalized name of the interface/port, e.g. ethernet-1-1. + type: string + interfaceResource: + description: Reference to a Interface. + type: string + node: + description: Reference to a TopoNode. + type: string + required: + - interfaceResource + - node + type: object + speed: + description: Speed of the link. + enum: + - 800G + - 400G + - 200G + - 100G + - 50G + - 40G + - 25G + - 10G + - 2.5G + - 1G + - 100M + type: string + type: + description: |- + Specify the type of link. + If type is set to edge, topology information for the remote device can be set; when doing so the Remote Node can be set as the hostname of the remote device and Remote Interface as the remote interface name in the device specific format, e.g. eth0. + enum: + - edge + - interSwitch + - loopback + type: string + required: + - local + - type + type: object + minItems: 1 + type: array + required: + - links + type: object + status: + description: TopoLinkStatus defines the observed state of TopoLink + type: object + type: object +served: true +storage: true +subresources: + status: {} diff --git a/static/resources/25.8.2/topologies.topologies.eda.nokia.com/v1alpha1.yaml b/static/resources/25.8.2/topologies.topologies.eda.nokia.com/v1alpha1.yaml new file mode 100644 index 0000000..19a65db --- /dev/null +++ b/static/resources/25.8.2/topologies.topologies.eda.nokia.com/v1alpha1.yaml @@ -0,0 +1,78 @@ +name: v1alpha1 +schema: + openAPIV3Schema: + description: Topology is the Schema for the topology state API + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + description: TopologySpec defines the desired state of Topology + properties: + enabled: + description: Enable or disable the generation of the status of this topology + type: boolean + endpointSubtitle: + description: Override the subtitle to show for endpoints in the topology + type: string + linkSubtitle: + description: Override the subtitle to show for links in the topology + type: string + nodeSubtitle: + description: Override the subtitle to show for nodes in the topology + type: string + overlays: + description: The set of overlays supported with this topology + items: + properties: + enabled: + description: Enable or disable the generation of the status of this overlay + type: boolean + key: + description: |- + A unique key for identifying this overlay within the topology. This is used internally + only. + type: string + required: + - enabled + - key + type: object + type: array + uiDescription: + description: A description of the topology to expose in the UI + type: string + uiDescriptionKey: + description: The translation key for the description of the topology to expose in the UI + type: string + uiName: + description: The name of the topology to expose in the UI + type: string + uiNameKey: + description: The translation key for the name of the topology to expose in the UI + type: string + required: + - enabled + - overlays + type: object + status: + description: TopologyStatus defines the observed state of Topology + type: object + type: object +served: true +storage: true +subresources: + status: {} diff --git a/static/resources/25.8.2/topologygroupings.topologies.eda.nokia.com/v1alpha1.yaml b/static/resources/25.8.2/topologygroupings.topologies.eda.nokia.com/v1alpha1.yaml new file mode 100644 index 0000000..22853ac --- /dev/null +++ b/static/resources/25.8.2/topologygroupings.topologies.eda.nokia.com/v1alpha1.yaml @@ -0,0 +1,79 @@ +name: v1alpha1 +schema: + openAPIV3Schema: + description: TopologyGrouping is the Schema for the topology grouping API + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + description: TopologyGroupingSpec defines the desired state of TopologyGrouping + properties: + groupSelectors: + description: The set of selectors for assigning nodes to groups + items: + properties: + group: + description: The group to assign to nodes that match the selector. + type: string + nodeSelector: + description: Label selector to use to match nodes that should be assigned to this group. + items: + type: string + type: array + required: + - group + type: object + type: array + tierSelectors: + description: The set of selectors for assigning nodes to tiers + items: + properties: + nodeSelector: + description: Label selector to use to match nodes that should be assigned to this tier. + items: + type: string + type: array + tier: + description: The tier to assign to nodes that match the selector. + format: int32 + type: integer + required: + - tier + type: object + type: array + uiDescription: + description: A description of the topology grouping to expose in the UI + type: string + uiDescriptionKey: + description: The translation key for the description of the topology grouping to expose in the UI + type: string + uiName: + description: The name of the topology grouping to expose in the UI + type: string + uiNameKey: + description: The translation key for the name of the topology grouping to expose in the UI + type: string + type: object + status: + description: TopologyGroupingStatus defines the observed state of TopologyGrouping + type: object + type: object +served: true +storage: true +subresources: + status: {} diff --git a/static/resources/25.8.2/toponodes.core.eda.nokia.com/v1.yaml b/static/resources/25.8.2/toponodes.core.eda.nokia.com/v1.yaml new file mode 100644 index 0000000..bb44864 --- /dev/null +++ b/static/resources/25.8.2/toponodes.core.eda.nokia.com/v1.yaml @@ -0,0 +1,222 @@ +additionalPrinterColumns: + - jsonPath: .spec.platform + name: Platform + type: string + - jsonPath: .spec.version + name: Version + type: string + - jsonPath: .spec.operatingSystem + name: OS + type: string + - jsonPath: .spec.onBoarded + name: OnBoarded + type: boolean + - jsonPath: .spec.npp.mode + name: Mode + type: string + - jsonPath: .status.npp-state + name: NPP + type: string + - jsonPath: .status.node-state + name: Node + type: string + - jsonPath: .metadata.creationTimestamp + name: Age + type: date +name: v1 +schema: + openAPIV3Schema: + description: TopoNode is the Schema for the toponodes API + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + description: A managed network element is represented via a TopoNode resource, describing characteristics of a specific element in the topology. + properties: + component: + description: |- + List of components within the TopoNode. + Used to define the type and location of linecards, fabrics (SFM), media adapter cards (MDA) and control cards (CPM). + items: + properties: + kind: + description: The kind of Component, e.g. lineCard. + enum: + - controlCard + - lineCard + - fabric + - mda + - connector + - xiom + - powerShelf + - powerModule + type: string + slot: + description: |- + The slot this Component resides in, unset for Components that do not have a slot or ID. + e.g. 1 would denote the linecard slot 1, 1/1 would denote linecard slot 1 mda slot 1. + type: string + type: + description: Denotes the type of hardware being provisioned, e.g. xcm-x20. + type: string + required: + - kind + - type + type: object + type: array + license: + description: Reference to a ConfigMap containing a license for the TopoNode. Overrides the license set in the referenced NodeProfile, if present. + type: string + macAddress: + description: |- + MAC address to associate with this TopoNode. + Typically the chassis MAC address, optionally sent by a node in DHCP requests. + Not required when a TopoNode is not being bootstrapped by EDA, or is simulated through CX. + type: string + nodeProfile: + description: Reference to a NodeProfile to use with this TopoNode. + type: string + npp: + description: Options relating to NPP interactions with the node. + properties: + mode: + default: normal + description: |- + The mode in which this TopoNode is functioning. + "normal" (the default) + indicates that NPP is expecting an endpoint to exist, and will accept and confirm changes only if the endpoint + accepts them. + "maintenance" + indicates that no changes will be accepted for the TopoNode, irrespective if the endpoint is up and reachable. + The exception is if an upgrade is occuring, in which case changes will be accepted. + "null" + indicates that changes will be accepted from CRs and no NPP will be spun up. NPP validation will not occur. + This may be useful in playground mode to avoid spinning up of 1000s of NPPs. + "emulate" + indicates that changes will be accepted at the NPP level, without pushing them to a endpoint. NPP validation + still occurs. If no IP address is present, we also run in emulate mode. + enum: + - normal + - maintenance + - "null" + - emulate + type: string + type: object + onBoarded: + default: false + description: |- + Indicates if this TopoNode has been bootstrapped or is reachable via configured credentials. Set by BootstrapServer when it completes onboarding functions for a given TopoNode. + Most applications ignore TopoNodes that have not been onboarded yet. + type: boolean + operatingSystem: + default: srl + description: Operating system running on this TopoNode, e.g. srl. + enum: + - srl + - sros + - eos + - sonic + - ios-xr + - nxos + - linux + type: string + platform: + description: Platform type of this TopoNode, e.g. 7220 IXR-D3L. + type: string + productionAddress: + description: |- + Production address of this TopoNode - this is the address the real, production instance of this TopoNode uses. + If left blank, an address will be allocated from the management IP pool specified in the referenced NodeProfile. + If this TopoNode is not bootstrapped by EDA this field must be provided. + properties: + ipv4: + description: The IPv4 production address + type: string + ipv6: + description: The IPv6 production address + type: string + type: object + serialNumber: + description: |- + Serial number of this TopoNode, optionally sent by a node in DHCP requests. + Not required when a TopoNode is not being bootstrapped by EDA, or is simulated through CX. + type: string + systemInterface: + description: 'Deprecated: Name of the Interface resource representing the primary loopback on the TopoNode, this field will be removed in the future version.' + type: string + version: + description: Sets the software version of this TopoNode, e.g. 24.7.1 (for srl), or 24.7.r1 (for sros). + type: string + required: + - nodeProfile + - operatingSystem + - platform + - version + type: object + status: + description: TopoNodeStatus defines the observed state of TopoNode + properties: + node-details: + description: Address and port used to connected to the node. + type: string + node-state: + description: |- + The current state of the connection between NPP and the node. + "TryingToConnect" + NPP is attempting to connect and establish connectivity to the node + "WaitingForInitialCfg" + NPP is connected to the node but waiting for intial config to push + "Committing" + NPP is in progress of commiting + "RetryingCommit" + NPP lost sync to node and is re-pushing current config + "Synced" + NPP is in fully synced state + "Standby" + NPP is running in standby mode. This state is only used on standby clusters with georedundancy. + "NoIpAddress" + NPP is running but there is no IP address for node. This only happen in sim setups when + CX has not created the simulated node, or the simulated pod failed to launch due to image error. + type: string + npp-details: + description: NPP address and port for this TopoNode. + type: string + npp-pod: + description: NPP pod name + type: string + npp-state: + description: The current state of the connection between ConfigEngine and NPP. + type: string + operatingSystem: + description: Operational operating system running on this TopoNode, e.g. srl, sros. + type: string + platform: + description: Operational platform type of this TopoNode, e.g. 7220 IXR-D3L. + type: string + simulate: + description: Simulate using CX - if true CX is reponsible for generating the TargetNode resource. + type: boolean + version: + description: Operational software version of this TopoNode, e.g. 24.7.1 (for srl), or 24.7.r1 (for sros). + type: string + type: object + type: object +served: true +storage: true +subresources: + status: {} diff --git a/static/resources/25.8.2/trafficrateoverlays.topologies.eda.nokia.com/v1alpha1.yaml b/static/resources/25.8.2/trafficrateoverlays.topologies.eda.nokia.com/v1alpha1.yaml new file mode 100644 index 0000000..0670216 --- /dev/null +++ b/static/resources/25.8.2/trafficrateoverlays.topologies.eda.nokia.com/v1alpha1.yaml @@ -0,0 +1,69 @@ +name: v1alpha1 +schema: + openAPIV3Schema: + description: TrafficRateOverlay is the Schema for trafficrateoverlays + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + description: TrafficRateOverlaySpec defines the desired state of TrafficRateOverlay + properties: + enabled: + description: Enable or disable the generation of the status of this overlay + type: boolean + topology: + description: Reference to the topology that this overlay is extending. + properties: + group: + description: The group of the application which published the topology this overlay is extending. + type: string + name: + description: The name of the resource which published the topology this overlay is extending. + type: string + version: + description: The version of the application which published the topology this overlay is extending. + type: string + required: + - group + - name + - version + type: object + uiDescription: + description: A description of the overlay to expose in the UI + type: string + uiDescriptionKey: + description: The translation key for the description of the overlay to expose in the UI + type: string + uiName: + description: The name of the overlay to expose in the UI + type: string + uiNameKey: + description: The translation key for the name of the overlay to expose in the UI + type: string + required: + - enabled + - topology + type: object + status: + description: TrafficRateOverlayStatus defines the observed state of TrafficRateOverlay + type: object + type: object +served: true +storage: true +subresources: + status: {} diff --git a/static/resources/25.8.2/transactionresults.core.eda.nokia.com/v1.yaml b/static/resources/25.8.2/transactionresults.core.eda.nokia.com/v1.yaml new file mode 100644 index 0000000..7eac55e --- /dev/null +++ b/static/resources/25.8.2/transactionresults.core.eda.nokia.com/v1.yaml @@ -0,0 +1,210 @@ +additionalPrinterColumns: + - jsonPath: .spec.result + name: Result + type: string + - jsonPath: .metadata.creationTimestamp + name: Age + type: date + - jsonPath: .spec.dryRun + name: DryRun + type: string + - jsonPath: .spec.description + name: Description + type: string +name: v1 +schema: + openAPIV3Schema: + description: TransactionResult is the Schema for the transactionresults API + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + description: TransactionResultSpec defines the desired state of TransactionResult + properties: + applicationErrors: + description: Any errors generated by applications run in this transaction. + items: + properties: + errors: + description: Errors returned by this application, if any. + items: + type: string + type: array + gvk: + description: Group, version, kind of the application. + type: string + name: + description: Name of the application. + type: string + namespace: + description: Namespace of the application. + type: string + script: + description: Application execution information. + properties: + executionTimeUs: + description: Execution time in microseconds. + type: integer + output: + description: Any output from the application. + type: string + type: object + required: + - gvk + - name + - namespace + - script + type: object + type: array + bundledTransactionId: + description: The transaction Id of the transaction that this transaction is bundled with, if any. + type: integer + commit: + description: The git commit hash of the transaction + type: string + description: + description: The description passed through from the input transaction, if any. + type: string + dryRun: + description: Indicates if the transaction was a dry run. + type: boolean + executionSummary: + description: A summary of this transaction + properties: + appSummary: + description: Summary of applications run in this transaction. + items: + properties: + gvk: + description: Group, version, kind of the application. + type: string + instancesRun: + description: The number of resources of this kind that were processed. + type: integer + totalExecutionTimeMs: + description: Total execution time in milliseconds. + type: integer + required: + - gvk + - instancesRun + - totalExecutionTimeMs + type: object + type: array + engineTimeMs: + description: The time spent in the engine computing the transaction in milliseconds. + type: integer + inputResourceCount: + description: The number of input resources processed in this transaction. + type: integer + publishTimeMs: + description: The time spent publishing changes to Kubernetes. + type: integer + pushTimeMs: + description: The time spent pushing changes to targets. + type: integer + saveTimeMs: + description: The time spent saving changes to git. + type: integer + targetsModified: + description: Targets with configuration changes in this transaction. + items: + properties: + name: + description: The name of a target that generated an error. + type: string + namespace: + description: Namespace of the application. + type: string + required: + - name + - namespace + type: object + type: array + targetsModifiedCount: + description: The number of targets with configuration changes in this transaction. + type: integer + totalTimeMs: + description: The total time spent executing the transaction. Due to parallelism, this may be less than the sum of the other times. + type: integer + type: object + generalErrors: + description: Any errors that aren't specific or can't be mapped to an individual application. + items: + type: string + type: array + inputResources: + description: The set of input resources that were processed in the transaction. + items: + properties: + action: + description: Action on the resource. + type: string + gvk: + description: Group, version, kind of the resource. + type: string + name: + description: Name of the resource. + type: string + namespace: + description: Namespace of the resource. + type: string + required: + - gvk + - name + - namespace + type: object + type: array + result: + description: The transaction result. + type: string + targetErrors: + description: Any errors generated by targets in this transaction. + items: + properties: + errors: + description: Errors returned by this target. + items: + type: string + type: array + name: + description: The name of a target that generated an error. + type: string + namespace: + description: Namespace of the application. + type: string + required: + - name + - namespace + type: object + type: array + timestamp: + description: The timestamp when the transaction finished + format: date-time + type: string + username: + description: The username of the user that initiated the transaction + type: string + type: object + status: + description: TransactionResultStatus defines the observed state of TransactionResult + type: object + type: object +served: true +storage: true +subresources: + status: {} diff --git a/static/resources/25.8.2/transactions.core.eda.nokia.com/v1.yaml b/static/resources/25.8.2/transactions.core.eda.nokia.com/v1.yaml new file mode 100644 index 0000000..82032b5 --- /dev/null +++ b/static/resources/25.8.2/transactions.core.eda.nokia.com/v1.yaml @@ -0,0 +1,102 @@ +additionalPrinterColumns: + - jsonPath: .metadata.creationTimestamp + name: Age + type: date + - jsonPath: .status.result + name: Result + type: string +name: v1 +schema: + openAPIV3Schema: + description: Transaction is the Schema for the transactions API + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + description: TransactionSpec defines the desired state of Transaction + properties: + description: + description: A user provided description of the transaction. + type: string + dryRun: + description: Indicates the system should dry run the transaction without actually performing it. A transaction that is dry run will perform all steps other than pushing changes to endpoints. + type: boolean + items: + description: Items to include in this transaction. + items: + properties: + delete: + description: Delete is a reference to a GVK and name of a resource to delete. + properties: + gvk: + description: GVK is the Group, Version, Kind of the resource to delete. + properties: + group: + type: string + kind: + type: string + version: + type: string + required: + - kind + - version + type: object + name: + description: Name is the name of the resource to delete. + type: string + namespace: + description: Namespace is the namespace of the resource to delete. + type: string + required: + - gvk + - name + type: object + replace: + description: Replace is an unstructured, "free-form" Kubernetes resource, complete with GVK, metadata and spec. + type: object + x-kubernetes-embedded-resource: true + x-kubernetes-preserve-unknown-fields: true + type: object + minItems: 1 + type: array + keepDetailedLog: + description: Indicates the system should keep a detailed log of the transaction. + type: boolean + required: + - items + type: object + status: + description: TransactionStatus defines the observed state of Transaction + properties: + errors: + description: Errors is a list of error messages encountered during the transaction, if any. + items: + type: string + type: array + result: + description: Result is the overall status of the transaction. + type: string + transactionId: + description: Reference to the transaction id storing detailed information about the transaction. + type: integer + type: object + type: object +served: true +storage: true +subresources: + status: {} diff --git a/static/resources/25.8.2/udpproxies.core.eda.nokia.com/v1.yaml b/static/resources/25.8.2/udpproxies.core.eda.nokia.com/v1.yaml new file mode 100644 index 0000000..c8ade48 --- /dev/null +++ b/static/resources/25.8.2/udpproxies.core.eda.nokia.com/v1.yaml @@ -0,0 +1,76 @@ +additionalPrinterColumns: + - jsonPath: .spec.proxyPort + name: Proxy Port + type: integer + - jsonPath: .spec.destHost + name: Dest Host + type: string + - jsonPath: .spec.destPort + name: Dest Port + type: integer +name: v1 +schema: + openAPIV3Schema: + description: UdpProxy is the Schema for the UDP proxy API + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + description: UdpProxySpec defines the desired state of UdpProxy + properties: + bufferSize: + description: |- + The proxy will use a buffer of this size for all datagrams it receives and this must be sized + to accommodate the largest datagrams expected + maximum: 65535 + minimum: 64 + type: integer + destHost: + description: The destination hostname or IP address to forward the datagrams to + type: string + destPort: + description: The destination UDP port to forward the datagrams to + maximum: 65535 + minimum: 1 + type: integer + idleTimeout: + description: |- + The proxy will listen for responses from the destination and forward it back to the source + of the datagram until there is no traffic at all for at least the idle timeout in seconds + minimum: 1 + type: integer + proxyPort: + description: The UDP port on which to listen for datagrams and then proxy to the destination + maximum: 65535 + minimum: 1 + type: integer + required: + - bufferSize + - destHost + - destPort + - idleTimeout + - proxyPort + type: object + status: + description: UdpProxyStatus defines the observed state of UdpProxy + type: object + type: object +served: true +storage: true +subresources: + status: {} diff --git a/static/resources/25.8.2/userdeployments.aaa.eda.nokia.com/v1alpha1.yaml b/static/resources/25.8.2/userdeployments.aaa.eda.nokia.com/v1alpha1.yaml new file mode 100644 index 0000000..8a4c374 --- /dev/null +++ b/static/resources/25.8.2/userdeployments.aaa.eda.nokia.com/v1alpha1.yaml @@ -0,0 +1,33 @@ +name: v1alpha1 +schema: + openAPIV3Schema: + description: UserDeployment is the Schema for the userdeployments API + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + description: UserDeploymentSpec defines the desired state of UserDeployment + type: object + status: + description: UserDeploymentStatus defines the observed state of UserDeployment + type: object + type: object +served: true +storage: true +subresources: + status: {} diff --git a/static/resources/25.8.2/virtualnetworks.services.eda.nokia.com/v1.yaml b/static/resources/25.8.2/virtualnetworks.services.eda.nokia.com/v1.yaml new file mode 100644 index 0000000..318ce30 --- /dev/null +++ b/static/resources/25.8.2/virtualnetworks.services.eda.nokia.com/v1.yaml @@ -0,0 +1,2316 @@ +additionalPrinterColumns: + - jsonPath: .status.operationalState + name: OperationalState + type: string + - jsonPath: .status.lastChange + name: LastChange + type: string +name: v1 +schema: + openAPIV3Schema: + description: VirtualNetwork is the Schema for the virtualnetworks API + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + description: VirtualNetworkSpec defines the desired state of VirtualNetwork + properties: + bridgeDomains: + description: List of Subnets. [emits=BridgeDomain] + items: + properties: + name: + description: The name of the BridgeDomain. + type: string + spec: + description: Specification of the BridgeDomain + properties: + description: + description: The description of the BridgeDomain. + type: string + evi: + description: EVI to use for this BridgeDomain, can be optionally left blank to have it automatically allocated using the EVI Pool. + maximum: 65535 + minimum: 1 + type: integer + eviPool: + default: evi-pool + description: Reference to an EVI pool to use for allocations if EVI is left blank. + type: string + exportTarget: + description: Export route target in 'target:N:N' format, if not specified, the default value taken as "target:1:". + pattern: ^target.*$ + type: string + importTarget: + description: Import route target in 'target:N:N' format, if not specified, the default value taken as "target:1:". + pattern: ^target.*$ + type: string + l2proxyARPND: + description: Enables / Disabled Proxy ARP / Proxy ND. + properties: + dynamicLearning: + properties: + ageTime: + description: Aging timer value for the proxy entries in seconds. If not set, this indicates that the entries are never flushed. + maximum: 86400 + minimum: 60 + type: integer + enabled: + default: false + description: Enables or disables Dynamic Learning. + type: boolean + sendRefresh: + description: The interval determines the frequency at which the system generates three ARP Requests or Neighbor Solicitations with the intent to refresh the proxy entry. The refresh is sent within the age-time window. + maximum: 86400 + minimum: 120 + type: integer + type: object + ipDuplication: + properties: + enabled: + default: false + description: Enables or disables IP Duplication. + type: boolean + holdDownTime: + default: 9 + description: Time to wait in minutes from the moment an IP is declared duplicate to the time the IP is removed from the proxy ARP/ND table. + maximum: 60 + minimum: 2 + type: integer + monitoringWindow: + default: 3 + description: Monitoring window for detecting duplication on a given IP address in the proxy ARP/ND table. + maximum: 15 + minimum: 1 + type: integer + numMoves: + default: 5 + description: Number of moves in the proxy ARP/ND table that an IP is allowed within the monitoring-window. + maximum: 10 + minimum: 3 + type: integer + type: object + proxyARP: + default: false + description: Enables proxy ARP. + type: boolean + proxyND: + default: false + description: Enables proxy ND. + type: boolean + tableSize: + default: 250 + description: Maximum number of entries allowed in the proxy table of the bridge domain. + maximum: 8192 + minimum: 1 + type: integer + type: object + macAging: + default: 300 + description: Configurable aging time for dynamically learned mac addresses. + format: int32 + maximum: 86400 + minimum: 60 + type: integer + macDuplicationDetection: + description: Enable or disable MAC duplication detection and resolution mechanisms. + properties: + action: + default: StopLearning + description: Action to take on the subinterface upon detecting at least one mac addresses as duplicate on the subinterface. + enum: + - Blackhole + - OperDown + - StopLearning + type: string + enabled: + default: false + description: Enables or disables Mac Duplication Detection. + type: boolean + holdDownTime: + default: 9 + description: Time to wait in minutes from the moment a mac is declared duplicate to the mac is flushed from the bridge table. + maximum: 60 + minimum: 2 + type: integer + monitoringWindow: + default: 3 + description: Monitoring window in minutes for detecting duplication on a given mac address. + maximum: 15 + minimum: 1 + type: integer + numMoves: + default: 5 + description: Number of moves a mac is allowed within the monitoring-window, before it is declared duplicate. + minimum: 3 + type: integer + type: object + macLearning: + default: true + description: Enable MAC learning for this BridgeDomain. + type: boolean + macLimit: + description: Sets the maximum number of MAC entries accepted in the bridge table. + format: int32 + minimum: 1 + type: integer + tunnelIndexPool: + default: tunnel-index-pool + description: Reference to a tunnel index pool to use for allocations. + type: string + type: + default: EVPNVXLAN + description: Select the type of BridgeDomain. Simple doesn't include any overlay control plane or dataplane properties (EVPN/VXLAN). EVPNVXLAN includes the properties needed to provision this BridgeDomain over an IP Fabric. + enum: + - SIMPLE + - EVPNVXLAN + type: string + vni: + description: VNI to use for this BridgeDomain, can be optionally left blank to have it allocated using the VNI Pool. + maximum: 16777215 + minimum: 1 + type: integer + vniPool: + default: vni-pool + description: Reference to a VNI pool to use for allocations if VNI is left blank. + type: string + type: object + required: + - name + - spec + type: object + type: array + bridgeInterfaces: + description: List of BridgeInterfaces. [emits=BridgeInterface] + items: + properties: + name: + description: The name of the BridgeInterface. + type: string + spec: + description: Specification of the BridgeInterface + properties: + bridgeDomain: + description: Reference to a BridgeDomain in which to attach the BridgeInterface. + type: string + description: + description: The description of the BridgeInterface. + type: string + egress: + description: Manages actions on traffic at Egress. + properties: + filters: + description: List of Filter references to use at egress. + items: + type: string + type: array + qosPolicy: + description: List of QoS Egress policy references to use at egress. + items: + type: string + type: array + type: object + ingress: + description: Manages actions on traffic at Ingress. + properties: + filters: + description: List of Filter references to use at ingress. + items: + type: string + type: array + qosPolicy: + description: List of QoS Ingress policy references to use at ingress. + items: + type: string + type: array + type: object + interface: + description: Reference to an Interface resource to attach this BridgeInterface. + type: string + l2MTU: + description: L2 MTU specifies the maximum sized Ethernet frame that can be transmitted on the subinterface. If a frame exceeds this size it is discarded. If the l2-mtu of the subinterface exceeds the port-mtu of the associated interface, the subinterface will remain operationally down. + maximum: 9500 + minimum: 1450 + type: integer + macDuplicationDetectionAction: + description: Override for Mac Duplication Detection action if enabled in the associated BridgeDomain. + enum: + - Blackhole + - OperDown + - StopLearning + - UseBridgeDomainAction + type: string + splitHorizonGroup: + description: Split Horizon Group to be used for this BridgeInterface. The subinterface within this BridgeInterface will be a member of this Split Horizon Group. + type: string + uplink: + description: The Uplink between your access breakout switch and your leaf switch. + properties: + egress: + description: Manages actions on traffic at Egress of the Local enpoint of the Uplink. + properties: + filters: + description: List of Filter references to use at egress. + items: + type: string + type: array + qosPolicy: + description: List of QoS Egress policy references to use at egress. + items: + type: string + type: array + type: object + ingress: + description: Manages actions on traffic at Ingress of the Local enpoint of the Uplink. + properties: + filters: + description: List of Filter references to use at ingress. + items: + type: string + type: array + qosPolicy: + description: List of QoS Ingress policy references to use at ingress. + items: + type: string + type: array + type: object + uplinkSelector: + description: Selects TopoLinks which connect a leaf switch to a breakout switch. This is the uplink between your access breakout switch and your leaf switch. There can only be a single TopoLink between the access breakout switch and the leaf switch, if more than one TopoLink is present between two devices the transaction will fail. + items: + type: string + type: array + uplinkVLANID: + default: pool + description: The VLAN ID to be utilized to isolate traffic from the VLAN on the access breakout switch to the leaf switch on the selected uplink TopoLink. + type: string + uplinkVLANPool: + description: A VLAN from this pool will be utilized to isolate traffic from the VLAN on the access breakout switch to the leaf switch on the selected uplink TopoLink. + type: string + type: object + vlanID: + description: Single value between 1-4094 support, ranges supported in the format x-y,x-y, or the special keyword null, any, untagged or pool for auto allocation. + type: string + required: + - bridgeDomain + - interface + - vlanID + type: object + required: + - name + - spec + type: object + type: array + irbInterfaces: + description: List of IRBInterfaces. [emits=IRBInterface] + items: + properties: + name: + description: The name of the IrbInterface. + type: string + spec: + description: Specification of the IrbInterface + properties: + anycastGatewayMAC: + description: The gateway MAC to use on the anycast address, if left empty the node will automatically assign one. + type: string + arpTimeout: + default: 14400 + description: Duration of time that dynamic ARP entries remain in the ARP cache before they expire. + format: int32 + type: integer + bfd: + description: Enable BFD on the IRBInterface. + properties: + desiredMinTransmitInt: + default: 1000000 + description: The minimum interval in microseconds between transmission of BFD control packets. + maximum: 100000000 + minimum: 10000 + type: integer + detectionMultiplier: + default: 3 + description: The number of packets that must be missed to declare this session as down. + maximum: 20 + minimum: 3 + type: integer + enabled: + default: false + description: Enables Biforward Detection. + type: boolean + minEchoReceiveInterval: + default: 0 + description: The minimum interval between echo packets the local node can receive. + maximum: 100000000 + minimum: 0 + type: integer + requiredMinReceive: + default: 1000000 + description: The minimum interval in microseconds between received BFD control packets that this system should support. + maximum: 100000000 + minimum: 10000 + type: integer + ttl: + description: Sets custom IP TTL or Hop Limit for multi-hop BFD sessions packets. Not appllicable to single-hop BFD sessions. + maximum: 255 + minimum: 2 + type: integer + required: + - enabled + type: object + bridgeDomain: + description: Reference to a BridgeDomain. + type: string + description: + description: The description of the IRBInterface. + type: string + egress: + description: Manages actions on traffic at Egress. + properties: + filters: + description: List of Filter references to use at egress. + items: + type: string + type: array + qosPolicy: + description: List of QoS Egress policy references to use at egress. + items: + type: string + type: array + type: object + evpnRouteAdvertisementType: + description: Controls the type of ARP/ND entries to advertise. + properties: + arpDynamic: + default: false + description: Advertise dynamic ARP entries. + type: boolean + arpStatic: + default: false + description: Advertise static ARP entries. + type: boolean + ndDynamic: + default: false + description: Advertise dynamic ND entries. + type: boolean + ndStatic: + default: false + description: Advertise static ND entries. + type: boolean + type: object + hostRoutePopulate: + description: Configures host route population based on ARP entries. + properties: + dynamic: + default: true + description: Create host routes out of dynamic ARP entries. + type: boolean + evpn: + default: false + description: Create host routes out of EVPN learned ARP entries. + type: boolean + static: + default: true + description: Create host routes out of static ARP entries. + type: boolean + type: object + ingress: + description: Manages actions on traffic at Ingress. + properties: + filters: + description: List of Filter references to use at ingress. + items: + type: string + type: array + qosPolicy: + description: List of QoS Ingress policy references to use at ingress. + items: + type: string + type: array + type: object + ipAddresses: + items: + properties: + ipv4Address: + description: IPv4 address in IP/mask form, e.g., 192.168.0.1/24. + properties: + ipPrefix: + description: Address and mask to use + type: string + primary: + description: Indicates which address to use as primary for broadcast + type: boolean + required: + - ipPrefix + type: object + ipv6Address: + description: IPv6 address in IP/mask form, e.g., fc00::1/120. + properties: + ipPrefix: + description: Address and mask to use + type: string + primary: + description: Indicates which address to use as primary for broadcast + type: boolean + required: + - ipPrefix + type: object + node: + description: Reference to a TopoNode resource, if not specified the IP address will be assigned to all nodes on which the IRB is deployed. If specified the IP address will be assigned to the specified node. + type: string + type: object + type: array + ipMTU: + default: 1500 + description: IP MTU for the IRBInterface [default=1500]. + maximum: 9486 + minimum: 1280 + type: integer + ipv4Parameters: + properties: + directedBroadcast: + description: Allow receiving and forwarding of directed broadcast packets. Enabled when set to true. + type: boolean + type: object + ipv6RouterAdvertisement: + properties: + currentHopLimit: + default: 64 + description: The current hop limit to advertise in the router advertisement messages. + format: int32 + maximum: 255 + minimum: 0 + type: integer + enabled: + default: false + description: Enable or disable IPv6 router advertisements. + type: boolean + ipMTU: + description: The IP MTU to advertise in the router advertisement messages. + format: int32 + maximum: 9486 + minimum: 1280 + type: integer + managedConfigurationFlag: + default: false + description: Enable DHCPv6 for address configuration (M-bit). + type: boolean + maxAdvertisementInterval: + default: 600 + description: Maximum time between router advertisements (in seconds). + format: int32 + maximum: 1800 + minimum: 4 + type: integer + minAdvertisementInterval: + default: 200 + description: Minimum time between router advertisements (in seconds). + format: int32 + maximum: 1350 + minimum: 3 + type: integer + otherConfigurationFlag: + default: false + description: Enable DHCPv6 for other configuration (O-bit). + type: boolean + prefixes: + description: IPv6 prefixes to advertise in router advertisements. + items: + description: IPv6Prefix defines the configuration for an IPv6 prefix advertisement. + properties: + autonomousFlag: + default: true + description: When this is set in the prefix information option hosts can use the prefix for stateless address autoconfiguration (SLAAC). + type: boolean + onLinkFlag: + default: true + description: When this is set in the prefix information option hosts can use the prefix for on-link determination. + type: boolean + preferredLifetime: + default: 604800 + description: The length of time in seconds (relative to the time the packet is sent) that addresses generated from the prefix via stateless address autoconfiguration remain preferred. + format: int32 + maximum: 4294967295 + minimum: 0 + type: integer + prefix: + description: An IPv6 global unicast address prefix. + type: string + validLifetime: + default: 2592000 + description: The length of time in seconds (relative to the time the packet is sent) that the prefix is valid for the purpose of on-link determination. + format: int32 + maximum: 4294967295 + minimum: 0 + type: integer + required: + - prefix + type: object + type: array + reachableTime: + default: 0 + description: Time in milliseconds for Neighbor Unreachability Detection. + format: int32 + maximum: 3600000 + minimum: 0 + type: integer + retransmitTime: + default: 0 + description: Time in milliseconds between retransmitted NS messages. + format: int32 + maximum: 1800000 + minimum: 0 + type: integer + routerLifetime: + default: 1800 + description: Router lifetime in seconds for default gateway. + format: int32 + maximum: 9000 + minimum: 0 + type: integer + required: + - currentHopLimit + - enabled + - managedConfigurationFlag + - maxAdvertisementInterval + - minAdvertisementInterval + - otherConfigurationFlag + - retransmitTime + - routerLifetime + type: object + l3ProxyARPND: + description: L3 Proxy ARP and ND configuration. + properties: + proxyARP: + default: false + description: Select whether Proxy ARP should be enabled. + type: boolean + proxyND: + default: false + description: Select whether Proxy ND should be enabled. + type: boolean + type: object + learnUnsolicited: + default: NONE + description: Enable or disable learning of unsolicited ARPs. + enum: + - BOTH + - GLOBAL + - LINK-LOCAL + - NONE + type: string + router: + description: Reference to a Router. + type: string + unnumbered: + description: Enables the use of unnumbered interfaces on the IRBInterface. If IPv6 is specified, no IP address are configured on the sub-interface and only the link local address will be used. If any IP addresses are specified for either IPv4 or IPv6 that will take precedence and IPs will be assigned to the interfaces.(Deprecated, Use IPv6RouterAdvertisement) + enum: + - IPV6 + type: string + virtualIPDiscovery: + description: Configuration for Virtual IP discovery on the interface. + items: + properties: + address: + description: Virtual IP Address. + type: string + allowedMAC: + description: List of allowed MAC addresses for a discovered virtual IP address. + items: + type: string + type: array + bridgeInterfaceToProbe: + description: List of BridgeInterfaces on the associated MAC-VRF to which the ARP probes are sent. If left blank, the probes are sent on all BridgeInterfaces associated with the BridgeDomain. + items: + type: string + type: array + probeInterval: + default: 0 + description: ARP probe interval in seconds. + maximum: 86400 + minimum: 0 + type: integer + vlanToProbe: + description: List of VLANs on the associated BridgeDomain to which the ARP probes are sent. If left blank, the probes are sent on all VLANs associated with the BridgeDomain. + items: + type: string + type: array + required: + - address + type: object + type: array + required: + - bridgeDomain + - router + type: object + required: + - name + - spec + type: object + type: array + protocols: + description: Protocols to configure. + properties: + bgp: + description: BGP Protocol. + properties: + bgpGroups: + description: List of BgpGroups. [emits=BGPGroup] + items: + properties: + name: + description: The name of the BgpGroup. + type: string + spec: + description: Specification of the BgpGroup + properties: + asPathOptions: + description: AS Path Options + properties: + allowOwnAS: + default: 0 + description: The maximum number of times the global AS number or a local AS number of the BGP instance can appear in any received AS_PATH before it is considered a loop and considered invalid. + maximum: 255 + minimum: 0 + type: integer + removePrivateAS: + description: Options for removing private AS numbers (2-byte and 4-byte) from the advertised AS path towards all peers. + properties: + ignorePeerAS: + default: false + description: If set to true then do not delete or replace a private AS number that is the same as the peer AS number. + type: boolean + leadingOnly: + default: false + description: If set to true then only delete or replace private AS numbers that appear before the first occurrence of a non-private ASN in the sequence of most recent ASNs in the AS path. + type: boolean + removePrivateASMode: + default: DISABLED + description: The method by which private AS numbers are removed from the advertised AS_PATH attribute. + enum: + - DISABLED + - REPLACE + - DELETE + type: string + required: + - ignorePeerAS + - leadingOnly + - removePrivateASMode + type: object + required: + - allowOwnAS + type: object + bfd: + description: Enable or disable Bi-forward Forwarding Detection (BFD) with fast failover. + type: boolean + client: + description: When set to true, all configured and dynamic BGP peers are considered RR clients. + type: boolean + clusterID: + description: Enables route reflect client and sets the cluster ID. + type: string + description: + description: Sets the description on the BGP group. + type: string + exportPolicy: + description: Reference to a Policy CR that will be used to filter routes advertised to peers. + items: + type: string + type: array + grStaleRouteTime: + description: Enables Graceful Restart on the peer and sets the stale route time. + maximum: 3600 + minimum: 1 + type: integer + importPolicy: + description: Reference to a Policy CR that will be used to filter routes received from peers. + items: + type: string + type: array + ipv4Unicast: + description: Parameters relating to the IPv4 unicast AFI/SAFI. + properties: + advertiseIPV6NextHops: + description: Enables advertisement of IPv4 Unicast routes with IPv6 next-hops to peers. + type: boolean + enabled: + description: Enables the IPv4 unicast AFISAFI. + type: boolean + prefixLimit: + properties: + prefixLimitAccepted: + properties: + logOnly: + description: Defines the action to take when the maximum number of prefixes is exceeded. Session is reset if set to false, otherwise only a warning is logged. + type: boolean + maxReceivedRoutes: + description: Maximum number of prefixes allowed to be received from the neighbor, counting only accepted routes. + format: int32 + maximum: 4294967295 + minimum: 1 + type: integer + warningThreshold: + description: A percentage of the maximum number of prefixes that can be accepted before a warning is logged. + maximum: 100 + minimum: 1 + type: integer + type: object + prefixLimitReceived: + properties: + logOnly: + description: Defines the action to take when the maximum number of prefixes is exceeded. Session is reset if set to false, otherwise only a warning is logged. + type: boolean + maxReceivedRoutes: + description: Maximum number of prefixes allowed to be received from the neighbor, counting all routes (accepted and rejected by import policies). + format: int32 + maximum: 4294967295 + minimum: 1 + type: integer + warningThreshold: + description: A percentage of the maximum number of prefixes that can be received before a warning is logged. + maximum: 100 + minimum: 1 + type: integer + type: object + type: object + receiveIPV6NextHops: + description: Enables the advertisement of the RFC 5549 capability to receive IPv4 routes with IPv6 next-hops. + type: boolean + type: object + ipv6Unicast: + description: Parameters relating to the IPv6 unicast AFI/SAFI. + properties: + enabled: + description: Enables the IPv6 unicast AFISAFI + type: boolean + prefixLimit: + properties: + prefixLimitAccepted: + properties: + logOnly: + description: Defines the action to take when the maximum number of prefixes is exceeded. Session is reset if set to false, otherwise only a warning is logged. + type: boolean + maxReceivedRoutes: + description: Maximum number of prefixes allowed to be received from the neighbor, counting only accepted routes. + format: int32 + maximum: 4294967295 + minimum: 1 + type: integer + warningThreshold: + description: A percentage of the maximum number of prefixes that can be accepted before a warning is logged. + maximum: 100 + minimum: 1 + type: integer + type: object + prefixLimitReceived: + properties: + logOnly: + description: Defines the action to take when the maximum number of prefixes is exceeded. Session is reset if set to false, otherwise only a warning is logged. + type: boolean + maxReceivedRoutes: + description: Maximum number of prefixes allowed to be received from the neighbor, counting all routes (accepted and rejected by import policies). + format: int32 + maximum: 4294967295 + minimum: 1 + type: integer + warningThreshold: + description: A percentage of the maximum number of prefixes that can be received before a warning is logged. + maximum: 100 + minimum: 1 + type: integer + type: object + type: object + type: object + keychain: + description: Reference to a Keychain resource that will be used for authentication with the BGP peer. + type: string + localAS: + description: The local autonomous system number advertised to peers. + properties: + autonomousSystem: + description: Local Autonomous System number. + maximum: 4294967295 + minimum: 1 + type: integer + prependGlobalAS: + description: When set to true, the global ASN value is prepended to the AS path in outbound routes towards each BGP peer. + type: boolean + prependLocalAS: + description: When set to true, the local AS value is prepended to the AS path of inbound routes from each EBGP peer. + type: boolean + required: + - autonomousSystem + type: object + localPreference: + description: Local Preference attribute added to received routes from the BGP peers, also sets local preference for generated routes. + maximum: 4294967295 + minimum: 0 + type: integer + multiHopMaxHop: + description: Enable multihop for eBGP peers and sets the maximum number of hops allowed. + maximum: 255 + minimum: 1 + type: integer + nextHopSelf: + description: When set to true, the next-hop in all IPv4-unicast, IPv6-unicast and EVPN BGP routes advertised to the peer is set to the local-address. + type: boolean + peerAS: + description: The autonomous system number expected from peers. + properties: + autonomousSystem: + description: Local Autonomous System number. + maximum: 4294967295 + minimum: 1 + type: integer + required: + - autonomousSystem + type: object + sendCommunityLarge: + description: When false, all large (12 byte) BGP communities from all outbound routes advertised to the peer are stripped. + type: boolean + sendCommunityStandard: + description: When false, all standard (4 byte) communities from all outbound routes advertised to the peer are stripped. + type: boolean + sendDefaultRoute: + description: Options for controlling the generation of default routes towards BGP peers. + properties: + addressFamily: + description: Enables the sending of a synthetically generated default IPv4 or IPV6 route to each peer. + items: + enum: + - IPV4-UNICAST + - IPV6-UNICAST + type: string + type: array + exportPolicy: + description: Reference to a Policy that should be applied to the advertised default routes, in order to set their attributes to non-default values. + type: string + required: + - addressFamily + type: object + timers: + description: Timer configurations + properties: + connectRetry: + description: The time interval in seconds between successive attempts to establish a session with a peer. + maximum: 65535 + minimum: 1 + type: integer + holdTime: + description: The hold-time interval in seconds that the router proposes to the peer in its OPEN message. + maximum: 65535 + minimum: 0 + type: integer + keepAlive: + description: The interval in seconds between successive keepalive messages sent to the peer. + maximum: 21845 + minimum: 0 + type: integer + minimumAdvertisementInterval: + description: The value assigned to the MinRouteAdvertisementIntervalTimer of RFC 4271, for both EBGP and IBGP sessions. + maximum: 255 + minimum: 1 + type: integer + type: object + type: object + required: + - name + - spec + type: object + type: array + bgpPeers: + description: List of BgpPeers [emits=BGPPeer] + items: + properties: + name: + description: The name of the BgpPeer. + type: string + spec: + description: Specification of the BgpPeer + properties: + asPathOptions: + description: AS Path Options + properties: + allowOwnAS: + default: 0 + description: The maximum number of times the global AS number or a local AS number of the BGP instance can appear in any received AS_PATH before it is considered a loop and considered invalid. + maximum: 255 + minimum: 0 + type: integer + removePrivateAS: + description: Options for removing private AS numbers (2-byte and 4-byte) from the advertised AS path towards all peers. + properties: + ignorePeerAS: + default: false + description: If set to true then do not delete or replace a private AS number that is the same as the peer AS number. + type: boolean + leadingOnly: + default: false + description: If set to true then only delete or replace private AS numbers that appear before the first occurrence of a non-private ASN in the sequence of most recent ASNs in the AS path. + type: boolean + removePrivateASMode: + default: DISABLED + description: The method by which private AS numbers are removed from the advertised AS_PATH attribute. + enum: + - DISABLED + - REPLACE + - DELETE + type: string + required: + - ignorePeerAS + - leadingOnly + - removePrivateASMode + type: object + required: + - allowOwnAS + type: object + bfd: + description: Enable or disable Bi-forward Forwarding Detection (BFD) with fast failover. + type: boolean + client: + description: When set to true, all configured and dynamic BGP peers are considered RR clients. + type: boolean + clusterID: + description: Enables route reflect client and sets the cluster ID. + type: string + description: + description: Sets the description on the BGP peer + type: string + dynamicNeighbor: + default: false + description: When set to true the Interface is added to the dynamic-neighbor list for dynamic peering. + type: boolean + dynamicNeighborAllowedPeerAS: + description: The autonomous system numbers allowed from peers if dynamic peering is enabled. + items: + type: integer + type: array + exportPolicy: + description: Reference to a Policy CR that will be used to filter routes advertised to peers. + items: + type: string + type: array + grStaleRouteTime: + description: Enables Graceful Restart on the peer and sets the stale route time. + maximum: 3600 + minimum: 1 + type: integer + group: + description: Reference to a BGPGroup. When present this BGP peer will be added to the BGP group + type: string + importPolicy: + description: Reference to a Policy CR that will be used to filter routes received from peers. + items: + type: string + type: array + interface: + description: Reference to a RoutedInterface or IrbInterface resource whose IP will be used as a source IP for the BGP session. + type: string + interfaceKind: + description: InterfaceReference type defines whether the provided Reference is a RoutedInterface or IrbInterface. + enum: + - ROUTEDINTERFACE + - IRBINTERFACE + type: string + ipv4Unicast: + description: Parameters relating to the IPv4 unicast AFI/SAFI. + properties: + advertiseIPV6NextHops: + description: Enables advertisement of IPv4 Unicast routes with IPv6 next-hops to peers. + type: boolean + enabled: + description: Enables the IPv4 unicast AFISAFI. + type: boolean + prefixLimit: + properties: + prefixLimitAccepted: + properties: + logOnly: + description: Defines the action to take when the maximum number of prefixes is exceeded. Session is reset if set to false, otherwise only a warning is logged. + type: boolean + maxReceivedRoutes: + description: Maximum number of prefixes allowed to be received from the neighbor, counting only accepted routes. + format: int32 + maximum: 4294967295 + minimum: 1 + type: integer + warningThreshold: + description: A percentage of the maximum number of prefixes that can be accepted before a warning is logged. + maximum: 100 + minimum: 1 + type: integer + type: object + prefixLimitReceived: + properties: + logOnly: + description: Defines the action to take when the maximum number of prefixes is exceeded. Session is reset if set to false, otherwise only a warning is logged. + type: boolean + maxReceivedRoutes: + description: Maximum number of prefixes allowed to be received from the neighbor, counting all routes (accepted and rejected by import policies). + format: int32 + maximum: 4294967295 + minimum: 1 + type: integer + warningThreshold: + description: A percentage of the maximum number of prefixes that can be received before a warning is logged. + maximum: 100 + minimum: 1 + type: integer + type: object + type: object + receiveIPV6NextHops: + description: Enables the advertisement of the RFC 5549 capability to receive IPv4 routes with IPv6 next-hops. + type: boolean + type: object + ipv6Unicast: + description: Parameters relating to the IPv6 unicast AFI/SAFI. + properties: + enabled: + description: Enables the IPv6 unicast AFISAFI + type: boolean + prefixLimit: + properties: + prefixLimitAccepted: + properties: + logOnly: + description: Defines the action to take when the maximum number of prefixes is exceeded. Session is reset if set to false, otherwise only a warning is logged. + type: boolean + maxReceivedRoutes: + description: Maximum number of prefixes allowed to be received from the neighbor, counting only accepted routes. + format: int32 + maximum: 4294967295 + minimum: 1 + type: integer + warningThreshold: + description: A percentage of the maximum number of prefixes that can be accepted before a warning is logged. + maximum: 100 + minimum: 1 + type: integer + type: object + prefixLimitReceived: + properties: + logOnly: + description: Defines the action to take when the maximum number of prefixes is exceeded. Session is reset if set to false, otherwise only a warning is logged. + type: boolean + maxReceivedRoutes: + description: Maximum number of prefixes allowed to be received from the neighbor, counting all routes (accepted and rejected by import policies). + format: int32 + maximum: 4294967295 + minimum: 1 + type: integer + warningThreshold: + description: A percentage of the maximum number of prefixes that can be received before a warning is logged. + maximum: 100 + minimum: 1 + type: integer + type: object + type: object + type: object + keychain: + description: Reference to a Keychain resource that will be used for authentication with the BGP peer. + type: string + localAS: + description: The local autonomous system number advertised to peers. + properties: + autonomousSystem: + description: Local Autonomous System number. + maximum: 4294967295 + minimum: 1 + type: integer + prependGlobalAS: + description: When set to true, the global ASN value is prepended to the AS path in outbound routes towards each BGP peer. + type: boolean + prependLocalAS: + description: When set to true, the local AS value is prepended to the AS path of inbound routes from each EBGP peer. + type: boolean + required: + - autonomousSystem + type: object + localPreference: + description: Local Preference attribute added to received routes from the BGP peers, also sets local preference for generated routes. + maximum: 4294967295 + minimum: 0 + type: integer + multiHopMaxHop: + description: Enable multihop for eBGP peers and sets the maximum number of hops allowed. + maximum: 255 + minimum: 1 + type: integer + nextHopSelf: + description: When set to true, the next-hop in all IPv4-unicast, IPv6-unicast and EVPN BGP routes advertised to the peer is set to the local-address. + type: boolean + node: + description: Node on which to configure the BGP peer. This node must be one of the nodes on which the IRBInterface is configured. When left blank or if the node is not part of the IRBInterface, the peer will not be deployed. Ignored for RoutedInterfaces. + type: string + peerAS: + description: The autonomous system number expected from peers. + properties: + autonomousSystem: + description: Local Autonomous System number. + maximum: 4294967295 + minimum: 1 + type: integer + required: + - autonomousSystem + type: object + peerIP: + description: Peer IP to which the peering session will be established. + type: string + sendCommunityLarge: + description: When false, all large (12 byte) BGP communities from all outbound routes advertised to the peer are stripped. + type: boolean + sendCommunityStandard: + description: When false, all standard (4 byte) communities from all outbound routes advertised to the peer are stripped. + type: boolean + sendDefaultRoute: + description: Options for controlling the generation of default routes towards BGP peers. + properties: + addressFamily: + description: Enables the sending of a synthetically generated default IPv4 or IPV6 route to each peer. + items: + enum: + - IPV4-UNICAST + - IPV6-UNICAST + type: string + type: array + exportPolicy: + description: Reference to a Policy that should be applied to the advertised default routes, in order to set their attributes to non-default values. + type: string + required: + - addressFamily + type: object + timers: + description: Timer configurations + properties: + connectRetry: + description: The time interval in seconds between successive attempts to establish a session with a peer. + maximum: 65535 + minimum: 1 + type: integer + holdTime: + description: The hold-time interval in seconds that the router proposes to the peer in its OPEN message. + maximum: 65535 + minimum: 0 + type: integer + keepAlive: + description: The interval in seconds between successive keepalive messages sent to the peer. + maximum: 21845 + minimum: 0 + type: integer + minimumAdvertisementInterval: + description: The value assigned to the MinRouteAdvertisementIntervalTimer of RFC 4271, for both EBGP and IBGP sessions. + maximum: 255 + minimum: 1 + type: integer + type: object + required: + - group + - interface + - interfaceKind + type: object + required: + - name + - spec + type: object + type: array + type: object + routingPolicies: + description: Routing Policies. + properties: + policies: + description: List of Policies. [emits=Policy] + items: + properties: + name: + description: Name of the Policy. + type: string + spec: + description: A policy + properties: + defaultAction: + description: The default action to apply if no other actions are defined. + properties: + bgp: + description: Actions related to the BGP protocol. + properties: + asPathPrepend: + description: AS number to prepend to the AS Path attributes. + format: int32 + maximum: 4294967295 + minimum: 1 + type: integer + asPathRemove: + description: Clear the AS path to make it empty. + type: boolean + asPathReplace: + description: Replace the existing AS path with a new AS_SEQUENCE containing the listed AS numbers. + items: + format: int32 + type: integer + type: array + communitySet: + description: Modify BGP communities associated with the route using hybrid Community Sets. + properties: + add: + description: List of community sets to add to the route. + items: + type: string + maxItems: 1 + type: array + remove: + description: List of community sets to remove from the route. + items: + type: string + maxItems: 1 + type: array + replace: + description: List of community sets to replace the existing communities with. Cannot be combined with Add or Remove. + items: + type: string + maxItems: 1 + type: array + type: object + localPreference: + description: Set a new LOCAL_PREF value for matching BGP routes. + format: int32 + maximum: 4294967295 + minimum: 0 + type: integer + med: + description: Set a new MED value. + properties: + numericalValue: + description: Fixed numerical value to set or add/subtract. + maximum: 4294967295 + minimum: 0 + type: integer + operation: + description: The operation to perform on the MED value. + enum: + - Set + - Add + - Subtract + type: string + valueType: + description: Use a fixed value or an IGP metric to adjust the MED. + enum: + - Fixed + - IGP + type: string + type: object + setOrigin: + description: Set a new ORIGIN attribute for matching BGP routes. + enum: + - egp + - igp + - incomplete + type: string + type: object + policyResult: + description: Final disposition for the route. + enum: + - accept + - reject + - NextPolicy + - NextStatement + type: string + type: object + statement: + description: List of policy statements. + items: + properties: + action: + description: Actions for routes that match the policy statement. + properties: + bgp: + description: Actions related to the BGP protocol. + properties: + asPathPrepend: + description: AS number to prepend to the AS Path attributes. + format: int32 + maximum: 4294967295 + minimum: 1 + type: integer + asPathRemove: + description: Clear the AS path to make it empty. + type: boolean + asPathReplace: + description: Replace the existing AS path with a new AS_SEQUENCE containing the listed AS numbers. + items: + format: int32 + type: integer + type: array + communitySet: + description: Modify BGP communities associated with the route using hybrid Community Sets. + properties: + add: + description: List of community sets to add to the route. + items: + type: string + maxItems: 1 + type: array + remove: + description: List of community sets to remove from the route. + items: + type: string + maxItems: 1 + type: array + replace: + description: List of community sets to replace the existing communities with. Cannot be combined with Add or Remove. + items: + type: string + maxItems: 1 + type: array + type: object + localPreference: + description: Set a new LOCAL_PREF value for matching BGP routes. + format: int32 + maximum: 4294967295 + minimum: 0 + type: integer + med: + description: Set a new MED value. + properties: + numericalValue: + description: Fixed numerical value to set or add/subtract. + maximum: 4294967295 + minimum: 0 + type: integer + operation: + description: The operation to perform on the MED value. + enum: + - Set + - Add + - Subtract + type: string + valueType: + description: Use a fixed value or an IGP metric to adjust the MED. + enum: + - Fixed + - IGP + type: string + type: object + setOrigin: + description: Set a new ORIGIN attribute for matching BGP routes. + enum: + - egp + - igp + - incomplete + type: string + type: object + policyResult: + description: Final disposition for the route. + enum: + - accept + - reject + - NextPolicy + - NextStatement + type: string + type: object + match: + description: Match conditions of the policy statement. + properties: + bgp: + description: Configuration for BGP-specific policy match criteria. + properties: + asPathMatch: + description: AS Path match criteria. + properties: + asPathExpression: + description: A singular regular expression string to match against AS_PATH objects. Mutually exclusive with the ASPathSet reference. + type: string + asPathSet: + description: Reference to an ASPathSet resource. Mutually exclusive with the ASPathExpression. + type: string + matchSetOptions: + description: The matching criteria that applies to the members in the referenced set. + enum: + - Any + - All + - Invert + type: string + type: object + communitySet: + description: Match conditions for BGP communities. + type: string + evpnRouteType: + description: Match conditions for EVPN route types. + items: + type: integer + type: array + type: object + family: + description: Address families that the route belongs to. + items: + type: string + type: array + prefixSet: + description: Reference to a PrefixSet resource. + type: string + protocol: + description: The route protocol type to match. + enum: + - AGGREGATE + - ARP_ND + - BGP + - BGP_EVPN + - DHCP + - GRIBI + - HOST + - ISIS + - LOCAL + - LINUX + - NDK1 + - NDK2 + - OSPFV2 + - OSPFV3 + - STATIC + type: string + type: object + name: + description: Name of the policy statement. + type: string + required: + - name + type: object + type: array + type: object + required: + - name + type: object + type: array + prefixSets: + description: List of PrefixSet [emits=PrefixSet] + items: + properties: + name: + description: Name of the PrefixSet. + type: string + spec: + description: A PrefixSets + properties: + prefix: + description: List of IPv4 or IPv6 prefixes in CIDR notation. + items: + properties: + endRange: + description: The end range when using a range to match prefixes. + maximum: 128 + minimum: 0 + type: integer + exact: + description: Indicates if it is an exact match. Ignores the StartRange and EndRange if this param is set. + type: boolean + prefix: + description: The IPv4 or IPv6 prefix in CIDR notation with mask. + type: string + startRange: + description: If specifying a range, this is the start of the range. + maximum: 128 + minimum: 0 + type: integer + required: + - prefix + type: object + type: array + required: + - prefix + type: object + required: + - name + type: object + type: array + type: object + staticRoutes: + description: List of Static Routes within this VirtualNetwork. [emits=StaticRoute] + items: + properties: + name: + description: Name of the StaticRoute. + type: string + spec: + description: A StaticRoutes + properties: + nexthopGroup: + description: Group of nexthops for the list of prefixes. + properties: + bfd: + description: Enables BFD to the next-hops in the group. Local and Remote discriminator parameters have been deprecated at this level. Use Nexthop to set these parameters. + properties: + enabled: + default: false + description: Defines whether BFD should be enabled towards the nexthops. + type: boolean + localAddress: + description: Defines the local address to use when establishing the BFD session with the nexthop. + type: string + type: object + blackhole: + default: false + description: If set to true all traffic destined to the prefixes will be blackholed. If enabled, next-hops are ignored and this takes precedence. + type: boolean + blackholeSendICMP: + description: When enabled, the router will generate ICMP Unreachable messages for packets destined to the blackhole route. + type: boolean + nexthops: + description: Ordered list of nexthops. + items: + properties: + bfd: + description: Enables BFD to the next-hops in the group. This overrides the configuration at the group. + properties: + enabled: + default: false + description: Defines whether BFD should be enabled towards the nexthops. + type: boolean + localAddress: + description: Defines the local address to use when establishing the BFD session with the nexthop. + type: string + localDiscriminator: + description: Defines the local discriminator. + type: integer + remoteDiscriminator: + description: Defines the remote discriminator. + type: integer + type: object + ipPrefix: + description: Address to use. + type: string + resolve: + default: false + description: If set to true the next-hops can be destinations which are resolved in the route table. This overrides the configuration at the group. + type: boolean + required: + - ipPrefix + type: object + type: array + resolve: + default: false + description: If set to true the next-hops can be destinations which are resolved in the route table. + type: boolean + type: object + nodes: + description: List of nodes on which to configure the static routes. An AND operation is executed against the nodes in this list and the nodes on which the Router is configured to determine the Nodes on which to configure the static routes. + items: + type: string + type: array + preference: + description: Defines the route preference. + type: integer + prefixes: + description: List of destination prefixes and mask to use for the static routes. + items: + type: string + type: array + router: + description: Reference to a Router on which to configure the static routes. If no Nodes are provided then the static routes will be provisioned on all Nodes on which the Router is provisioned. + type: string + required: + - nexthopGroup + - prefixes + - router + type: object + required: + - name + type: object + type: array + type: object + routedInterfaces: + description: List of RoutedInterface. [emits=RoutedInterface] + items: + properties: + name: + description: The name of the RoutedInterface. + type: string + spec: + description: Specification of the RoutedInterface + properties: + arpTimeout: + default: 14400 + description: Duration of time that dynamic ARP entries remain in the ARP cache before they expire. + format: int32 + type: integer + bfd: + description: Enables BFD on the RoutedInterface. + properties: + desiredMinTransmitInt: + default: 1000000 + description: The minimum interval in microseconds between transmission of BFD control packets. + maximum: 100000000 + minimum: 10000 + type: integer + detectionMultiplier: + default: 3 + description: The number of packets that must be missed to declare this session as down. + maximum: 20 + minimum: 3 + type: integer + enabled: + default: false + description: Enables Biforward Detection. + type: boolean + minEchoReceiveInterval: + default: 0 + description: The minimum interval between echo packets the local node can receive. + maximum: 100000000 + minimum: 0 + type: integer + requiredMinReceive: + default: 1000000 + description: The minimum interval in microseconds between received BFD control packets that this system should support. + maximum: 100000000 + minimum: 10000 + type: integer + ttl: + description: Sets custom IP TTL or Hop Limit for multi-hop BFD sessions packets. Not appllicable to single-hop BFD sessions. + maximum: 255 + minimum: 2 + type: integer + required: + - enabled + type: object + description: + description: The description of the RoutedInterface. + type: string + egress: + description: Manages actions on traffic at Egress. + properties: + filters: + description: List of Filter references to use at egress. + items: + type: string + type: array + qosPolicy: + description: List of QoS Egress policy references to use at egress. + items: + type: string + type: array + type: object + ingress: + description: Manages actions on traffic at Ingress. + properties: + filters: + description: List of Filter references to use at ingress. + items: + type: string + type: array + qosPolicy: + description: List of QoS Ingress policy references to use at ingress. + items: + type: string + type: array + type: object + interface: + description: Reference to an Interface to use for attachment. + type: string + ipMTU: + default: 1500 + description: IP MTU for the RoutedInterface. + maximum: 9486 + minimum: 1280 + type: integer + ipv4Addresses: + description: List of IPv4 addresses in IP/mask form, e.g., 192.168.0.1/24. + items: + properties: + ipPrefix: + description: Address and mask to use + type: string + primary: + description: Indicates which address to use as primary for broadcast + type: boolean + required: + - ipPrefix + type: object + type: array + ipv4Parameters: + properties: + directedBroadcast: + description: Allow receiving and forwarding of directed broadcast packets. Enabled when set to true. + type: boolean + type: object + ipv6Addresses: + description: List of IPv6 addresses in IP/mask form, e.g., fc00::1/120. + items: + properties: + ipPrefix: + description: Address and mask to use + type: string + primary: + description: Indicates which address to use as primary for broadcast + type: boolean + required: + - ipPrefix + type: object + type: array + ipv6RouterAdvertisement: + properties: + currentHopLimit: + default: 64 + description: The current hop limit to advertise in the router advertisement messages. + format: int32 + maximum: 255 + minimum: 0 + type: integer + enabled: + default: false + description: Enable or disable IPv6 router advertisements. + type: boolean + ipMTU: + description: The IP MTU to advertise in the router advertisement messages. + format: int32 + maximum: 9486 + minimum: 1280 + type: integer + managedConfigurationFlag: + default: false + description: Enable DHCPv6 for address configuration (M-bit). + type: boolean + maxAdvertisementInterval: + default: 600 + description: Maximum time between router advertisements (in seconds). + format: int32 + maximum: 1800 + minimum: 4 + type: integer + minAdvertisementInterval: + default: 200 + description: Minimum time between router advertisements (in seconds). + format: int32 + maximum: 1350 + minimum: 3 + type: integer + otherConfigurationFlag: + default: false + description: Enable DHCPv6 for other configuration (O-bit). + type: boolean + prefixes: + description: IPv6 prefixes to advertise in router advertisements. + items: + description: IPv6Prefix defines the configuration for an IPv6 prefix advertisement. + properties: + autonomousFlag: + default: true + description: When this is set in the prefix information option hosts can use the prefix for stateless address autoconfiguration (SLAAC). + type: boolean + onLinkFlag: + default: true + description: When this is set in the prefix information option hosts can use the prefix for on-link determination. + type: boolean + preferredLifetime: + default: 604800 + description: The length of time in seconds (relative to the time the packet is sent) that addresses generated from the prefix via stateless address autoconfiguration remain preferred. + format: int32 + maximum: 4294967295 + minimum: 0 + type: integer + prefix: + description: An IPv6 global unicast address prefix. + type: string + validLifetime: + default: 2592000 + description: The length of time in seconds (relative to the time the packet is sent) that the prefix is valid for the purpose of on-link determination. + format: int32 + maximum: 4294967295 + minimum: 0 + type: integer + required: + - prefix + type: object + type: array + reachableTime: + default: 0 + description: Time in milliseconds for Neighbor Unreachability Detection. + format: int32 + maximum: 3600000 + minimum: 0 + type: integer + retransmitTime: + default: 0 + description: Time in milliseconds between retransmitted NS messages. + format: int32 + maximum: 1800000 + minimum: 0 + type: integer + routerLifetime: + default: 1800 + description: Router lifetime in seconds for default gateway. + format: int32 + maximum: 9000 + minimum: 0 + type: integer + required: + - currentHopLimit + - enabled + - managedConfigurationFlag + - maxAdvertisementInterval + - minAdvertisementInterval + - otherConfigurationFlag + - retransmitTime + - routerLifetime + type: object + l3ProxyARPND: + description: L3 Proxy ARP and ND configuration. + properties: + proxyARP: + default: false + description: Select whether Proxy ARP should be enabled. + type: boolean + proxyND: + default: false + description: Select whether Proxy ND should be enabled. + type: boolean + type: object + learnUnsolicited: + default: NONE + description: Enable or disable learning of unsolicited ARPs. + enum: + - BOTH + - GLOBAL + - LINK-LOCAL + - NONE + type: string + router: + description: Reference to a Router. + type: string + unnumbered: + description: Enables the use of unnumbered interfaces on the IRBInterface. If IPv6 is specified, no IP address are configured on the sub-interface and only the link local address will be used. If any IP addresses are specified for either IPv4 or IPv6 that will take precedence and IPs will be assigned to the interfaces. (Deprecated, Use IPv6RouterAdvertisement) + enum: + - IPV6 + type: string + vlanID: + default: pool + description: Single value between 1-4094 support, ranges supported in the format x-y,x-y, or the special keyword null, any, untagged or pool for auto allocation. + type: string + vlanPool: + default: vlan-pool + description: Reference to a VLAN pool to use for allocations. + type: string + required: + - interface + - router + type: object + required: + - name + - spec + type: object + type: array + routers: + description: List of Routers.[emits=Router] + items: + properties: + name: + description: The name of the Router. + type: string + spec: + description: Specification of the Router + properties: + bgp: + description: BGP configuration. + properties: + autonomousSystem: + description: Autonomous System number for BGP. + maximum: 4294967295 + minimum: 1 + type: integer + ebgpPreference: + default: 170 + description: Preference to be set for eBGP [default=170]. + maximum: 255 + minimum: 1 + type: integer + enabled: + default: false + description: Enable or disable BGP. + type: boolean + ibgpPreference: + default: 170 + description: Preference to be set for iBGP [default=170]. + maximum: 255 + minimum: 1 + type: integer + ipAliasNexthops: + description: IP aliasing configuration. + items: + properties: + esi: + default: auto + description: 10 byte Ethernet Segment Identifier, if not set a type 0 ESI is generated. + type: string + nextHop: + description: The nexthop IP address to track for the IP alias. + type: string + preferredActiveNode: + description: When not set the ES is used in an all active mode. This references the ToppNode object and when set, the DF algorithm is configured to type preference and the selected Node is set with a higher preference value. All other Nodes have a lower value configured. + type: string + required: + - nextHop + type: object + type: array + ipv4Unicast: + description: Parameters relating to the IPv4 unicast AFI/SAFI. + properties: + advertiseIPV6NextHops: + description: Enables advertisement of IPv4 Unicast routes with IPv6 next-hops to peers. + type: boolean + enabled: + default: false + description: Enables the IPv4 unicast AFISAFI. + type: boolean + multipath: + description: Enable multipath. + properties: + allowMultipleAS: + default: true + description: When set to true, BGP is allowed to build a multipath set using BGP routes with different neighbor AS (most recent AS in the AS_PATH), When set to false, BGP is only allowed to use non-best paths for ECMP if they meet the multipath criteria and they have the same neighbor AS as the best path. + type: boolean + maxAllowedPaths: + description: The maximum number of BGP ECMP next-hops for BGP routes with an NLRI belonging to the address family of this configuration context. + maximum: 256 + minimum: 1 + type: integer + required: + - allowMultipleAS + - maxAllowedPaths + type: object + receiveIPV6NextHops: + description: Enables the advertisement of the RFC 5549 capability to receive IPv4 routes with IPv6 next-hops. + type: boolean + required: + - enabled + type: object + ipv6Unicast: + description: Parameters relating to the IPv6 unicast AFI/SAFI. + properties: + enabled: + default: false + description: Enables the IPv6 unicast AFISAFI + type: boolean + multipath: + description: Enable multipath + properties: + allowMultipleAS: + default: true + description: When set to true, BGP is allowed to build a multipath set using BGP routes with different neighbor AS (most recent AS in the AS_PATH), When set to false, BGP is only allowed to use non-best paths for ECMP if they meet the multipath criteria and they have the same neighbor AS as the best path. + type: boolean + maxAllowedPaths: + description: The maximum number of BGP ECMP next-hops for BGP routes with an NLRI belonging to the address family of this configuration context. + maximum: 256 + minimum: 1 + type: integer + required: + - allowMultipleAS + - maxAllowedPaths + type: object + required: + - enabled + type: object + keychain: + description: Keychain to be used for authentication + type: string + minWaitToAdvertise: + default: 0 + description: Minimum wait time before advertising routes post BGP restart. + maximum: 3600 + minimum: 0 + type: integer + rapidWithdrawl: + default: true + description: Enable rapid withdrawal in BGP. + type: boolean + waitForFIBInstall: + default: false + description: Wait for FIB installation before advertising routes. + type: boolean + type: object + description: + description: The description of the Router. + type: string + evi: + description: EVI for the Router; leave blank for auto-allocation from EVI pool. + maximum: 65535 + minimum: 1 + type: integer + eviPool: + default: evi-pool + description: Reference to EVI pool for auto-allocation. + type: string + exportTarget: + description: Export route target in 'target:N:N' format, if not specified, the default value taken as "target:1:". + pattern: ^target.*$ + type: string + importTarget: + description: Import route target in 'target:N:N' format, if not specified, the default value taken as "target:1:". + pattern: ^target.*$ + type: string + ipLoadBalancing: + description: IPv4 or IPv6 prefix. Active routes in the FIB that exactly match this prefix or that are longer matches of this prefix are provided with resilient-hash programming. + properties: + prefix: + description: IPv4 or IPv6 prefix. Active routes in the FIB that exactly match this prefix or that are longer matches of this prefix are provided with resilient-hash programming. + items: + properties: + hashBucketsPerPath: + default: 1 + description: The number of times each next-hop is repeated in the fill pattern if there are max-paths ECMP next-hops. + maximum: 32 + minimum: 1 + type: integer + maxECMP: + default: 1 + description: The maximum number of ECMP next-hops per route associated with the resilient-hash prefix. + maximum: 64 + minimum: 1 + type: integer + prefix: + description: IPv4 or IPv6 prefix. Active routes in the FIB that exactly match this prefix or that are longer matches of this prefix are provided with resilient-hash programming. + type: string + required: + - hashBucketsPerPath + - maxECMP + - prefix + type: object + type: array + type: object + nodeSelector: + description: Node selectors for deployment constraints. If Nodes are selected, the Router will only be deployed on the Nodes selected, if left blank it will be deployed on all Nodes for which there are IRB or RoutedInterfaces referencing this Router. + items: + type: string + type: array + routeLeaking: + description: Route leaking controlled by routing policies in and out of the DefaultRouter. + properties: + exportPolicy: + description: Reference to a Policy resource to use when evaluating route exports from the DefaultRouter. + type: string + importPolicy: + description: Reference to a Policy resource to use when evaluating route imports into the DefaultRouter. + type: string + type: object + routerID: + description: Router ID. + type: string + tunnelIndexPool: + default: tunnel-index-pool + description: Reference to tunnel index allocation pool. + type: string + type: + default: EVPNVXLAN + description: Select the type of Router. Simple doesn't include any overlay control plane or dataplane properties (EVPN/VXLAN). EVPNVXLAN includes the properties needed to provision this Router over an IP Fabric. + enum: + - SIMPLE + - EVPNVXLAN + type: string + vni: + description: VNI for the Router; leave blank for auto-allocation from VNI pool. + maximum: 16777215 + minimum: 1 + type: integer + vniPool: + default: vni-pool + description: Reference to VNI pool for auto-allocation. + type: string + type: object + required: + - name + - spec + type: object + type: array + vlans: + description: List of VLANs. [emits=VLAN] + items: + properties: + name: + description: The name of the VLAN. + type: string + spec: + description: Specification of the Vlan + properties: + bridgeDomain: + description: Reference to a BridgeDomain or SimpleBridgeDomain. + type: string + description: + description: The description of the VLAN. + type: string + egress: + description: Manages actions on traffic at Egress. + properties: + filters: + description: List of Filter references to use at egress. + items: + type: string + type: array + qosPolicy: + description: List of QoS Egress policy references to use at egress. + items: + type: string + type: array + type: object + ingress: + description: Manages actions on traffic at Ingress. + properties: + filters: + description: List of Filter references to use at ingress. + items: + type: string + type: array + qosPolicy: + description: List of QoS Ingress policy references to use at ingress. + items: + type: string + type: array + type: object + interfaceSelector: + description: Interfaces to use for attachment to this VLAN based on the label selector. Selects Interfaces based on their associated labels. + items: + type: string + type: array + l2MTU: + description: L2 MTU specifies the maximum sized Ethernet frame that can be transmitted on the subinterface. If a frame exceeds this size it is discarded. If the l2-mtu of the subinterface exceeds the port-mtu of the associated interface, the subinterface will remain operationally down. + maximum: 9500 + minimum: 1450 + type: integer + macDuplicationDetectionAction: + description: If Mac Duplication Detection is enabled on the associated Bridge Domain, this property will override the MDD action set in the BridgeDomain. + enum: + - Blackhole + - OperDown + - StopLearning + - UseBridgeDomainAction + type: string + splitHorizonGroup: + description: Name of the Split Horizon Group to be used for this VLAN. All subinterfaces within this VLAN will be members of this Split Horizon Group. + type: string + uplink: + description: The Uplink between your access breakout switch and your leaf switch. + properties: + egress: + description: Manages actions on traffic at Egress of the Local enpoint of the Uplink. + properties: + filters: + description: List of Filter references to use at egress. + items: + type: string + type: array + qosPolicy: + description: List of QoS Egress policy references to use at egress. + items: + type: string + type: array + type: object + ingress: + description: Manages actions on traffic at Ingress of the Local enpoint of the Uplink. + properties: + filters: + description: List of Filter references to use at ingress. + items: + type: string + type: array + qosPolicy: + description: List of QoS Ingress policy references to use at ingress. + items: + type: string + type: array + type: object + uplinkSelector: + description: Selects TopoLinks which connect a leaf switch to a breakout switch. This is the uplink between your access breakout switch and your leaf switch. There can only be a single TopoLink between the access breakout switch and the leaf switch, if more than one TopoLink is present between two devices the transaction will fail. + items: + type: string + type: array + uplinkVLANID: + default: pool + description: The VLAN ID to be utilized to isolate traffic from the VLAN on the access breakout switch to the leaf switch on the selected uplink TopoLink. + type: string + uplinkVLANPool: + description: A VLAN from this pool will be utilized to isolate traffic from the VLAN on the access breakout switch to the leaf switch on the selected uplink TopoLink. + type: string + type: object + vlanID: + default: pool + description: Single value between 1-4094 support, ranges supported in the format x-y,x-y, or the special keyword null, any, untagged or pool for auto allocation. + type: string + vlanPool: + description: Reference to a VLAN pool to use for allocations. [default="vlan-pool"] + type: string + required: + - bridgeDomain + - interfaceSelector + type: object + required: + - name + - spec + type: object + type: array + type: object + status: + properties: + health: + description: Indicates the health score of the VNET. + type: integer + healthScoreReason: + description: Indicates the reason for the health score. + type: string + lastChange: + description: The time when the state of the resource last changed. + type: string + nodes: + description: List of Nodes on which the Router is deployed. + items: + type: string + type: array + numBGPPeers: + description: Total number of configured BGP Peers. + type: integer + numBGPPeersOperDown: + description: Total Number of BGP Peer operationally down. + type: integer + numIRBInterfaces: + description: Total number of irb-interfaces configured by the VNET. + format: int32 + type: integer + numIRBInterfacesOperDown: + description: Total number of irb-interfaces configured by the VNET which are oper-down. + format: int32 + type: integer + numNodes: + description: Total number of Nodes on which the VNET is configured. + type: integer + numRoutedInterfaces: + description: Total number of routed-interfaces configured by the VNET. + format: int32 + type: integer + numRoutedInterfacesOperDown: + description: Total number of routed-interfaces configured by the VNET which are oper-down. + format: int32 + type: integer + numSubInterfaces: + description: Total number of sub-interfaces configured by the VNET. + format: int32 + type: integer + numSubInterfacesOperDown: + description: Total number of sub-interfaces configured by the VNET which are oper-down. + format: int32 + type: integer + operationalState: + description: Operational state of the VNET. + type: string + type: object + type: object +served: true +storage: true +subresources: + status: {} diff --git a/static/resources/25.8.2/virtualnetworks.services.eda.nokia.com/v1alpha1.yaml b/static/resources/25.8.2/virtualnetworks.services.eda.nokia.com/v1alpha1.yaml new file mode 100644 index 0000000..6fe1360 --- /dev/null +++ b/static/resources/25.8.2/virtualnetworks.services.eda.nokia.com/v1alpha1.yaml @@ -0,0 +1,2191 @@ +additionalPrinterColumns: + - jsonPath: .status.operationalState + name: OperationalState + type: string + - jsonPath: .status.lastChange + name: LastChange + type: string +deprecated: true +deprecationWarning: This version is deprecated and will no longer be supported in the next version. +name: v1alpha1 +schema: + openAPIV3Schema: + description: VirtualNetwork is the Schema for the virtualnetworks API + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + description: VirtualNetworkSpec defines the desired state of VirtualNetwork + properties: + bridgeDomains: + description: List of Subnets. [emits=BridgeDomain] + items: + properties: + name: + description: The name of the BridgeDomain. + type: string + spec: + description: Specification of the BridgeDomain + properties: + description: + description: The description of the BridgeDomain. + type: string + evi: + description: EVI to use for this BridgeDomain, can be optionally left blank to have it automatically allocated using the EVI Pool. + maximum: 65535 + minimum: 1 + type: integer + eviPool: + default: evi-pool + description: Reference to an EVI pool to use for allocations if EVI is left blank. + type: string + exportTarget: + description: Export route target in 'target:N:N' format, if not specified, the default value taken as "target:1:". + pattern: ^target.*$ + type: string + importTarget: + description: Import route target in 'target:N:N' format, if not specified, the default value taken as "target:1:". + pattern: ^target.*$ + type: string + l2proxyARPND: + description: Enables / Disabled Proxy ARP / Proxy ND. + properties: + dynamicLearning: + properties: + ageTime: + description: Aging timer value for the proxy entries in seconds. If not set, this indicates that the entries are never flushed. + maximum: 86400 + minimum: 60 + type: integer + enabled: + default: false + description: Enables or disables Dynamic Learning. + type: boolean + sendRefresh: + description: The interval determines the frequency at which the system generates three ARP Requests or Neighbor Solicitations with the intent to refresh the proxy entry. The refresh is sent within the age-time window. + maximum: 86400 + minimum: 120 + type: integer + type: object + ipDuplication: + properties: + enabled: + default: false + description: Enables or disables IP Duplication. + type: boolean + holdDownTime: + default: 9 + description: Time to wait in minutes from the moment an IP is declared duplicate to the time the IP is removed from the proxy ARP/ND table. + maximum: 60 + minimum: 2 + type: integer + monitoringWindow: + default: 3 + description: Monitoring window for detecting duplication on a given IP address in the proxy ARP/ND table. + maximum: 15 + minimum: 1 + type: integer + numMoves: + default: 5 + description: Number of moves in the proxy ARP/ND table that an IP is allowed within the monitoring-window. + maximum: 10 + minimum: 3 + type: integer + type: object + proxyARP: + default: false + description: Enables proxy ARP. + type: boolean + proxyND: + default: false + description: Enables proxy ND. + type: boolean + tableSize: + default: 250 + description: Maximum number of entries allowed in the proxy table of the bridge domain. + maximum: 8192 + minimum: 1 + type: integer + type: object + macAging: + default: 300 + description: Configurable aging time for dynamically learned mac addresses. + format: int32 + maximum: 86400 + minimum: 60 + type: integer + macDuplicationDetection: + description: Enable or disable MAC duplication detection and resolution mechanisms. + properties: + action: + default: StopLearning + description: Action to take on the subinterface upon detecting at least one mac addresses as duplicate on the subinterface. + enum: + - Blackhole + - OperDown + - StopLearning + type: string + enabled: + default: false + description: Enables or disables Mac Duplication Detection. + type: boolean + holdDownTime: + default: 9 + description: Time to wait in minutes from the moment a mac is declared duplicate to the mac is flushed from the bridge table. + maximum: 60 + minimum: 2 + type: integer + monitoringWindow: + default: 3 + description: Monitoring window in minutes for detecting duplication on a given mac address. + maximum: 15 + minimum: 1 + type: integer + numMoves: + default: 5 + description: Number of moves a mac is allowed within the monitoring-window, before it is declared duplicate. + minimum: 3 + type: integer + type: object + macLimit: + description: Sets the maximum number of MAC entries accepted in the bridge table. + format: int32 + type: integer + tunnelIndexPool: + default: tunnel-index-pool + description: Reference to a tunnel index pool to use for allocations. + type: string + type: + default: EVPNVXLAN + description: Select the type of BridgeDomain. Simple doesn't include any overlay control plane or dataplane properties (EVPN/VXLAN). EVPNVXLAN includes the properties needed to provision this BridgeDomain over an IP Fabric. + enum: + - SIMPLE + - EVPNVXLAN + type: string + vni: + description: VNI to use for this BridgeDomain, can be optionally left blank to have it allocated using the VNI Pool. + maximum: 16777215 + minimum: 1 + type: integer + vniPool: + default: vni-pool + description: Reference to a VNI pool to use for allocations if VNI is left blank. + type: string + type: object + required: + - name + - spec + type: object + type: array + bridgeInterfaces: + description: List of BridgeInterfaces. [emits=BridgeInterface] + items: + properties: + name: + description: The name of the BridgeInterface. + type: string + spec: + description: Specification of the BridgeInterface + properties: + bridgeDomain: + description: Reference to a BridgeDomain in which to attach the BridgeInterface. + type: string + description: + description: The description of the BridgeInterface. + type: string + egress: + description: Manages actions on traffic at Egress. + properties: + filters: + description: List of Filter references to use at egress. + items: + type: string + type: array + qosPolicy: + description: List of QoS Egress policy references to use at egress. + items: + type: string + type: array + type: object + ingress: + description: Manages actions on traffic at Ingress. + properties: + filters: + description: List of Filter references to use at ingress. + items: + type: string + type: array + qosPolicy: + description: List of QoS Ingress policy references to use at ingress. + items: + type: string + type: array + type: object + interface: + description: Reference to an Interface resource to attach this BridgeInterface. + type: string + l2MTU: + description: L2 MTU specifies the maximum sized Ethernet frame that can be transmitted on the subinterface. If a frame exceeds this size it is discarded. If the l2-mtu of the subinterface exceeds the port-mtu of the associated interface, the subinterface will remain operationally down. + maximum: 9500 + minimum: 1450 + type: integer + macDuplicationDetectionAction: + description: Override for Mac Duplication Detection action if enabled in the associated BridgeDomain. + enum: + - Blackhole + - OperDown + - StopLearning + - UseBridgeDomainAction + type: string + splitHorizonGroup: + description: Split Horizon Group to be used for this BridgeInterface. The subinterface within this BridgeInterface will be a member of this Split Horizon Group. + type: string + uplink: + description: The Uplink between your access breakout switch and your leaf switch. + properties: + egress: + description: Manages actions on traffic at Egress of the Local enpoint of the Uplink. + properties: + filters: + description: List of Filter references to use at egress. + items: + type: string + type: array + qosPolicy: + description: List of QoS Egress policy references to use at egress. + items: + type: string + type: array + type: object + ingress: + description: Manages actions on traffic at Ingress of the Local enpoint of the Uplink. + properties: + filters: + description: List of Filter references to use at ingress. + items: + type: string + type: array + qosPolicy: + description: List of QoS Ingress policy references to use at ingress. + items: + type: string + type: array + type: object + uplinkSelector: + description: Selects TopoLinks which connect a leaf switch to a breakout switch. This is the uplink between your access breakout switch and your leaf switch. There can only be a single TopoLink between the access breakout switch and the leaf switch, if more than one TopoLink is present between two devices the transaction will fail. + items: + type: string + type: array + uplinkVLANID: + default: pool + description: The VLAN ID to be utilized to isolate traffic from the VLAN on the access breakout switch to the leaf switch on the selected uplink TopoLink. + type: string + uplinkVLANPool: + description: A VLAN from this pool will be utilized to isolate traffic from the VLAN on the access breakout switch to the leaf switch on the selected uplink TopoLink. + type: string + type: object + vlanID: + description: Single value between 1-4094 support, ranges supported in the format x-y,x-y, or the special keyword null, any, untagged or pool for auto allocation. + type: string + required: + - bridgeDomain + - interface + - vlanID + type: object + required: + - name + - spec + type: object + type: array + irbInterfaces: + description: List of IRBInterfaces. [emits=IRBInterface] + items: + properties: + name: + description: The name of the IrbInterface. + type: string + spec: + description: Specification of the IrbInterface + properties: + anycastGatewayMAC: + description: The gateway MAC to use on the anycast address, if left empty the node will automatically assign one. + type: string + arpTimeout: + default: 14400 + description: Duration of time that dynamic ARP entries remain in the ARP cache before they expire. + format: int32 + type: integer + bfd: + description: Enable BFD on the IRBInterface. + properties: + desiredMinTransmitInt: + default: 1000000 + description: The minimum interval in microseconds between transmission of BFD control packets. + maximum: 100000000 + minimum: 10000 + type: integer + detectionMultiplier: + default: 3 + description: The number of packets that must be missed to declare this session as down. + maximum: 20 + minimum: 3 + type: integer + enabled: + default: false + description: Enables Biforward Detection. + type: boolean + minEchoReceiveInterval: + default: 0 + description: The minimum interval between echo packets the local node can receive. + maximum: 100000000 + minimum: 0 + type: integer + requiredMinReceive: + default: 1000000 + description: The minimum interval in microseconds between received BFD control packets that this system should support. + maximum: 100000000 + minimum: 10000 + type: integer + ttl: + description: Sets custom IP TTL or Hop Limit for multi-hop BFD sessions packets. Not appllicable to single-hop BFD sessions. + maximum: 255 + minimum: 2 + type: integer + required: + - enabled + type: object + bridgeDomain: + description: Reference to a BridgeDomain. + type: string + description: + description: The description of the IRBInterface. + type: string + egress: + description: Manages actions on traffic at Egress. + properties: + filters: + description: List of Filter references to use at egress. + items: + type: string + type: array + qosPolicy: + description: List of QoS Egress policy references to use at egress. + items: + type: string + type: array + type: object + evpnRouteAdvertisementType: + description: Controls the type of ARP/ND entries to advertise. + properties: + arpDynamic: + default: false + description: Advertise dynamic ARP entries. + type: boolean + arpStatic: + default: false + description: Advertise static ARP entries. + type: boolean + ndDynamic: + default: false + description: Advertise dynamic ND entries. + type: boolean + ndStatic: + default: false + description: Advertise static ND entries. + type: boolean + type: object + hostRoutePopulate: + description: Configures host route population based on ARP entries. + properties: + dynamic: + default: true + description: Create host routes out of dynamic ARP entries. + type: boolean + evpn: + default: false + description: Create host routes out of EVPN learned ARP entries. + type: boolean + static: + default: true + description: Create host routes out of static ARP entries. + type: boolean + type: object + ingress: + description: Manages actions on traffic at Ingress. + properties: + filters: + description: List of Filter references to use at ingress. + items: + type: string + type: array + qosPolicy: + description: List of QoS Ingress policy references to use at ingress. + items: + type: string + type: array + type: object + ipAddresses: + items: + properties: + ipv4Address: + description: IPv4 address in IP/mask form, e.g., 192.168.0.1/24. + properties: + ipPrefix: + description: Address and mask to use + type: string + primary: + description: Indicates which address to use as primary for broadcast + type: boolean + required: + - ipPrefix + type: object + ipv6Address: + description: IPv6 address in IP/mask form, e.g., fc00::1/120. + properties: + ipPrefix: + description: Address and mask to use + type: string + primary: + description: Indicates which address to use as primary for broadcast + type: boolean + required: + - ipPrefix + type: object + node: + description: Reference to a TopoNode resource, if not specified the IP address will be assigned to all nodes on which the IRB is deployed. If specified the IP address will be assigned to the specified node. + type: string + type: object + type: array + ipMTU: + default: 1500 + description: IP MTU for the IRBInterface [default=1500]. + maximum: 9486 + minimum: 1280 + type: integer + ipv4Parameters: + properties: + directedBroadcast: + description: Allow receiving and forwarding of directed broadcast packets. Enabled when set to true. + type: boolean + type: object + ipv6RouterAdvertisement: + properties: + currentHopLimit: + default: 64 + description: The current hop limit to advertise in the router advertisement messages. + format: int32 + maximum: 255 + minimum: 0 + type: integer + enabled: + default: false + description: Enable or disable IPv6 router advertisements. + type: boolean + ipMTU: + description: The IP MTU to advertise in the router advertisement messages. + format: int32 + maximum: 9486 + minimum: 1280 + type: integer + managedConfigurationFlag: + default: false + description: Enable DHCPv6 for address configuration (M-bit). + type: boolean + maxAdvertisementInterval: + default: 600 + description: Maximum time between router advertisements (in seconds). + format: int32 + maximum: 1800 + minimum: 4 + type: integer + minAdvertisementInterval: + default: 200 + description: Minimum time between router advertisements (in seconds). + format: int32 + maximum: 1350 + minimum: 3 + type: integer + otherConfigurationFlag: + default: false + description: Enable DHCPv6 for other configuration (O-bit). + type: boolean + prefixes: + description: IPv6 prefixes to advertise in router advertisements. + items: + description: IPv6Prefix defines the configuration for an IPv6 prefix advertisement. + properties: + autonomousFlag: + default: true + description: When this is set in the prefix information option hosts can use the prefix for stateless address autoconfiguration (SLAAC). + type: boolean + onLinkFlag: + default: true + description: When this is set in the prefix information option hosts can use the prefix for on-link determination. + type: boolean + preferredLifetime: + default: 604800 + description: The length of time in seconds (relative to the time the packet is sent) that addresses generated from the prefix via stateless address autoconfiguration remain preferred. + format: int32 + maximum: 4294967295 + minimum: 0 + type: integer + prefix: + description: An IPv6 global unicast address prefix. + type: string + validLifetime: + default: 2592000 + description: The length of time in seconds (relative to the time the packet is sent) that the prefix is valid for the purpose of on-link determination. + format: int32 + maximum: 4294967295 + minimum: 0 + type: integer + required: + - prefix + type: object + type: array + reachableTime: + default: 0 + description: Time in milliseconds for Neighbor Unreachability Detection. + format: int32 + maximum: 3600000 + minimum: 0 + type: integer + retransmitTime: + default: 0 + description: Time in milliseconds between retransmitted NS messages. + format: int32 + maximum: 1800000 + minimum: 0 + type: integer + routerLifetime: + default: 1800 + description: Router lifetime in seconds for default gateway. + format: int32 + maximum: 9000 + minimum: 0 + type: integer + required: + - currentHopLimit + - enabled + - managedConfigurationFlag + - maxAdvertisementInterval + - minAdvertisementInterval + - otherConfigurationFlag + - retransmitTime + - routerLifetime + type: object + l3ProxyARPND: + description: L3 Proxy ARP and ND configuration. + properties: + proxyARP: + default: false + description: Select whether Proxy ARP should be enabled. + type: boolean + proxyND: + default: false + description: Select whether Proxy ND should be enabled. + type: boolean + type: object + learnUnsolicited: + default: NONE + description: Enable or disable learning of unsolicited ARPs. + enum: + - BOTH + - GLOBAL + - LINK-LOCAL + - NONE + type: string + router: + description: Reference to a Router. + type: string + unnumbered: + description: Enables the use of unnumbered interfaces on the IRBInterface. If IPv6 is specified, no IP address are configured on the sub-interface and only the link local address will be used. If any IP addresses are specified for either IPv4 or IPv6 that will take precedence and IPs will be assigned to the interfaces.(Deprecated, Use IPv6RouterAdvertisement) + enum: + - IPV6 + type: string + virtualIPDiscovery: + description: Configuration for Virtual IP discovery on the interface. + items: + properties: + address: + description: Virtual IP Address. + type: string + allowedMAC: + description: List of allowed MAC addresses for a discovered virtual IP address. + items: + type: string + type: array + bridgeInterfaceToProbe: + description: List of BridgeInterfaces on the associated MAC-VRF to which the ARP probes are sent. If left blank, the probes are sent on all BridgeInterfaces associated with the BridgeDomain. + items: + type: string + type: array + probeInterval: + default: 0 + description: ARP probe interval in seconds. + maximum: 86400 + minimum: 0 + type: integer + vlanToProbe: + description: List of VLANs on the associated BridgeDomain to which the ARP probes are sent. If left blank, the probes are sent on all VLANs associated with the BridgeDomain. + items: + type: string + type: array + required: + - address + type: object + type: array + required: + - bridgeDomain + - router + type: object + required: + - name + - spec + type: object + type: array + protocols: + description: Protocols to configure. + properties: + bgp: + description: BGP Protocol. + properties: + bgpGroups: + description: List of BgpGroups. [emits=BGPGroup] + items: + properties: + name: + description: The name of the BgpGroup. + type: string + spec: + description: Specification of the BgpGroup + properties: + asPathOptions: + description: AS Path Options + properties: + allowOwnAS: + default: 0 + description: The maximum number of times the global AS number or a local AS number of the BGP instance can appear in any received AS_PATH before it is considered a loop and considered invalid. + maximum: 255 + minimum: 0 + type: integer + removePrivateAS: + description: Options for removing private AS numbers (2-byte and 4-byte) from the advertised AS path towards all peers. + properties: + ignorePeerAS: + default: false + description: If set to true then do not delete or replace a private AS number that is the same as the peer AS number. + type: boolean + leadingOnly: + default: false + description: If set to true then only delete or replace private AS numbers that appear before the first occurrence of a non-private ASN in the sequence of most recent ASNs in the AS path. + type: boolean + removePrivateASMode: + default: DISABLED + description: The method by which private AS numbers are removed from the advertised AS_PATH attribute. + enum: + - DISABLED + - REPLACE + - DELETE + type: string + required: + - ignorePeerAS + - leadingOnly + - removePrivateASMode + type: object + required: + - allowOwnAS + type: object + bfd: + description: Enable or disable Bi-forward Forwarding Detection (BFD) with fast failover. + type: boolean + client: + description: When set to true, all configured and dynamic BGP peers are considered RR clients. + type: boolean + clusterID: + description: Enables route reflect client and sets the cluster ID. + type: string + description: + description: Sets the description on the BGP group. + type: string + exportPolicy: + description: Reference to a Policy CR that will be used to filter routes advertised to peers. + items: + type: string + type: array + grStaleRouteTime: + description: Enables Graceful Restart on the peer and sets the stale route time. + maximum: 3600 + minimum: 1 + type: integer + importPolicy: + description: Reference to a Policy CR that will be used to filter routes received from peers. + items: + type: string + type: array + ipv4Unicast: + description: Parameters relating to the IPv4 unicast AFI/SAFI. + properties: + advertiseIPV6NextHops: + description: Enables advertisement of IPv4 Unicast routes with IPv6 next-hops to peers. + type: boolean + enabled: + description: Enables the IPv4 unicast AFISAFI. + type: boolean + maxReceivedRoutes: + description: Maximum number of IPv4 Unicast routes that will be accepted from the neighbor, counting routes accepted and rejected by import policies. + maximum: 4294967295 + minimum: 1 + type: integer + receiveIPV6NextHops: + description: Enables the advertisement of the RFC 5549 capability to receive IPv4 routes with IPv6 next-hops. + type: boolean + type: object + ipv6Unicast: + description: Parameters relating to the IPv6 unicast AFI/SAFI. + properties: + enabled: + description: Enables the IPv6 unicast AFISAFI + type: boolean + maxReceivedRoutes: + description: Maximum number of IPv6 Unicast routes that will be accepted from the neighbor, counting routes accepted and rejected by import policies. + maximum: 4294967295 + minimum: 1 + type: integer + type: object + keychain: + description: Reference to a Keychain resource that will be used for authentication with the BGP peer. + type: string + localAS: + description: The local autonomous system number advertised to peers. + properties: + autonomousSystem: + description: Local Autonomous System number. + maximum: 4294967295 + minimum: 1 + type: integer + prependGlobalAS: + description: When set to true, the global ASN value is prepended to the AS path in outbound routes towards each BGP peer. + type: boolean + prependLocalAS: + description: When set to true, the local AS value is prepended to the AS path of inbound routes from each EBGP peer. + type: boolean + required: + - autonomousSystem + type: object + localPreference: + description: Local Preference attribute added to received routes from the BGP peers, also sets local preference for generated routes. + maximum: 4294967295 + minimum: 0 + type: integer + multiHopMaxHop: + description: Enable multihop for eBGP peers and sets the maximum number of hops allowed. + maximum: 255 + minimum: 1 + type: integer + nextHopSelf: + description: When set to true, the next-hop in all IPv4-unicast, IPv6-unicast and EVPN BGP routes advertised to the peer is set to the local-address. + type: boolean + peerAS: + description: The autonomous system number expected from peers. + properties: + autonomousSystem: + description: Local Autonomous System number. + maximum: 4294967295 + minimum: 1 + type: integer + required: + - autonomousSystem + type: object + sendCommunityLarge: + description: When false, all large (12 byte) BGP communities from all outbound routes advertised to the peer are stripped. + type: boolean + sendCommunityStandard: + description: When false, all standard (4 byte) communities from all outbound routes advertised to the peer are stripped. + type: boolean + sendDefaultRoute: + description: Options for controlling the generation of default routes towards BGP peers. + properties: + addressFamily: + description: Enables the sending of a synthetically generated default IPv4 or IPV6 route to each peer. + items: + enum: + - IPV4-UNICAST + - IPV6-UNICAST + type: string + type: array + exportPolicy: + description: Reference to a Policy that should be applied to the advertised default routes, in order to set their attributes to non-default values. + type: string + required: + - addressFamily + type: object + timers: + description: Timer configurations + properties: + connectRetry: + description: The time interval in seconds between successive attempts to establish a session with a peer. + maximum: 65535 + minimum: 1 + type: integer + holdTime: + description: The hold-time interval in seconds that the router proposes to the peer in its OPEN message. + maximum: 65535 + minimum: 0 + type: integer + keepAlive: + description: The interval in seconds between successive keepalive messages sent to the peer. + maximum: 21845 + minimum: 0 + type: integer + minimumAdvertisementInterval: + description: The value assigned to the MinRouteAdvertisementIntervalTimer of RFC 4271, for both EBGP and IBGP sessions. + maximum: 255 + minimum: 1 + type: integer + type: object + type: object + required: + - name + - spec + type: object + type: array + bgpPeers: + description: List of BgpPeers [emits=BGPPeer] + items: + properties: + name: + description: The name of the BgpPeer. + type: string + spec: + description: Specification of the BgpPeer + properties: + asPathOptions: + description: AS Path Options + properties: + allowOwnAS: + default: 0 + description: The maximum number of times the global AS number or a local AS number of the BGP instance can appear in any received AS_PATH before it is considered a loop and considered invalid. + maximum: 255 + minimum: 0 + type: integer + removePrivateAS: + description: Options for removing private AS numbers (2-byte and 4-byte) from the advertised AS path towards all peers. + properties: + ignorePeerAS: + default: false + description: If set to true then do not delete or replace a private AS number that is the same as the peer AS number. + type: boolean + leadingOnly: + default: false + description: If set to true then only delete or replace private AS numbers that appear before the first occurrence of a non-private ASN in the sequence of most recent ASNs in the AS path. + type: boolean + removePrivateASMode: + default: DISABLED + description: The method by which private AS numbers are removed from the advertised AS_PATH attribute. + enum: + - DISABLED + - REPLACE + - DELETE + type: string + required: + - ignorePeerAS + - leadingOnly + - removePrivateASMode + type: object + required: + - allowOwnAS + type: object + bfd: + description: Enable or disable Bi-forward Forwarding Detection (BFD) with fast failover. + type: boolean + client: + description: When set to true, all configured and dynamic BGP peers are considered RR clients. + type: boolean + clusterID: + description: Enables route reflect client and sets the cluster ID. + type: string + description: + description: Sets the description on the BGP peer + type: string + dynamicNeighbor: + default: false + description: When set to true the Interface is added to the dynamic-neighbor list for dynamic peering. + type: boolean + dynamicNeighborAllowedPeerAS: + description: The autonomous system numbers allowed from peers if dynamic peering is enabled. + items: + type: integer + type: array + exportPolicy: + description: Reference to a Policy CR that will be used to filter routes advertised to peers. + items: + type: string + type: array + grStaleRouteTime: + description: Enables Graceful Restart on the peer and sets the stale route time. + maximum: 3600 + minimum: 1 + type: integer + group: + description: Reference to a BGPGroup. When present this BGP peer will be added to the BGP group + type: string + importPolicy: + description: Reference to a Policy CR that will be used to filter routes received from peers. + items: + type: string + type: array + interface: + description: Reference to a RoutedInterface or IrbInterface resource whose IP will be used as a source IP for the BGP session. + type: string + interfaceKind: + description: InterfaceReference type defines whether the provided Reference is a RoutedInterface or IrbInterface. + enum: + - ROUTEDINTERFACE + - IRBINTERFACE + type: string + ipv4Unicast: + description: Parameters relating to the IPv4 unicast AFI/SAFI. + properties: + advertiseIPV6NextHops: + description: Enables advertisement of IPv4 Unicast routes with IPv6 next-hops to peers. + type: boolean + enabled: + description: Enables the IPv4 unicast AFISAFI. + type: boolean + maxReceivedRoutes: + description: Maximum number of IPv4 Unicast routes that will be accepted from the neighbor, counting routes accepted and rejected by import policies. + maximum: 4294967295 + minimum: 1 + type: integer + receiveIPV6NextHops: + description: Enables the advertisement of the RFC 5549 capability to receive IPv4 routes with IPv6 next-hops. + type: boolean + type: object + ipv6Unicast: + description: Parameters relating to the IPv6 unicast AFI/SAFI. + properties: + enabled: + description: Enables the IPv6 unicast AFISAFI + type: boolean + maxReceivedRoutes: + description: Maximum number of IPv6 Unicast routes that will be accepted from the neighbor, counting routes accepted and rejected by import policies. + maximum: 4294967295 + minimum: 1 + type: integer + type: object + keychain: + description: Reference to a Keychain resource that will be used for authentication with the BGP peer. + type: string + localAS: + description: The local autonomous system number advertised to peers. + properties: + autonomousSystem: + description: Local Autonomous System number. + maximum: 4294967295 + minimum: 1 + type: integer + prependGlobalAS: + description: When set to true, the global ASN value is prepended to the AS path in outbound routes towards each BGP peer. + type: boolean + prependLocalAS: + description: When set to true, the local AS value is prepended to the AS path of inbound routes from each EBGP peer. + type: boolean + required: + - autonomousSystem + type: object + localPreference: + description: Local Preference attribute added to received routes from the BGP peers, also sets local preference for generated routes. + maximum: 4294967295 + minimum: 0 + type: integer + multiHopMaxHop: + description: Enable multihop for eBGP peers and sets the maximum number of hops allowed. + maximum: 255 + minimum: 1 + type: integer + nextHopSelf: + description: When set to true, the next-hop in all IPv4-unicast, IPv6-unicast and EVPN BGP routes advertised to the peer is set to the local-address. + type: boolean + node: + description: Node on which to configure the BGP peer. This node must be one of the nodes on which the IRBInterface is configured. When left blank or if the node is not part of the IRBInterface, the peer will not be deployed. Ignored for RoutedInterfaces. + type: string + peerAS: + description: The autonomous system number expected from peers. + properties: + autonomousSystem: + description: Local Autonomous System number. + maximum: 4294967295 + minimum: 1 + type: integer + required: + - autonomousSystem + type: object + peerIP: + description: Peer IP to which the peering session will be established. + type: string + sendCommunityLarge: + description: When false, all large (12 byte) BGP communities from all outbound routes advertised to the peer are stripped. + type: boolean + sendCommunityStandard: + description: When false, all standard (4 byte) communities from all outbound routes advertised to the peer are stripped. + type: boolean + sendDefaultRoute: + description: Options for controlling the generation of default routes towards BGP peers. + properties: + addressFamily: + description: Enables the sending of a synthetically generated default IPv4 or IPV6 route to each peer. + items: + enum: + - IPV4-UNICAST + - IPV6-UNICAST + type: string + type: array + exportPolicy: + description: Reference to a Policy that should be applied to the advertised default routes, in order to set their attributes to non-default values. + type: string + required: + - addressFamily + type: object + timers: + description: Timer configurations + properties: + connectRetry: + description: The time interval in seconds between successive attempts to establish a session with a peer. + maximum: 65535 + minimum: 1 + type: integer + holdTime: + description: The hold-time interval in seconds that the router proposes to the peer in its OPEN message. + maximum: 65535 + minimum: 0 + type: integer + keepAlive: + description: The interval in seconds between successive keepalive messages sent to the peer. + maximum: 21845 + minimum: 0 + type: integer + minimumAdvertisementInterval: + description: The value assigned to the MinRouteAdvertisementIntervalTimer of RFC 4271, for both EBGP and IBGP sessions. + maximum: 255 + minimum: 1 + type: integer + type: object + required: + - group + - interface + - interfaceKind + type: object + required: + - name + - spec + type: object + type: array + type: object + routingPolicies: + description: Routing Policies. + properties: + policies: + description: List of Policies. [emits=Policy] + items: + properties: + name: + description: Name of the Policy. + type: string + spec: + description: A policy + properties: + defaultAction: + description: The default action to apply if no other actions are defined. + properties: + bgp: + description: Actions related to the BGP protocol. + properties: + asPathPrepend: + description: AS number to prepend to the AS Path attributes. + format: int32 + maximum: 4294967295 + minimum: 1 + type: integer + asPathRemove: + description: Clear the AS path to make it empty. + type: boolean + asPathReplace: + description: Replace the existing AS path with a new AS_SEQUENCE containing the listed AS numbers. + items: + format: int32 + type: integer + type: array + communitySet: + description: Modify BGP communities associated with the route using hybrid Community Sets. + properties: + add: + description: List of community sets to add to the route. + items: + type: string + maxItems: 1 + type: array + remove: + description: List of community sets to remove from the route. + items: + type: string + maxItems: 1 + type: array + replace: + description: List of community sets to replace the existing communities with. Cannot be combined with Add or Remove. + items: + type: string + maxItems: 1 + type: array + type: object + localPreference: + description: Set a new LOCAL_PREF value for matching BGP routes. + format: int32 + maximum: 4294967295 + minimum: 0 + type: integer + med: + description: Set a new MED value. + properties: + numericalValue: + description: Fixed numerical value to set or add/subtract. + maximum: 4294967295 + minimum: 0 + type: integer + operation: + description: The operation to perform on the MED value. + enum: + - Set + - Add + - Subtract + type: string + valueType: + description: Use a fixed value or an IGP metric to adjust the MED. + enum: + - Fixed + - IGP + type: string + type: object + setOrigin: + description: Set a new ORIGIN attribute for matching BGP routes. + enum: + - egp + - igp + - incomplete + type: string + type: object + policyResult: + description: Final disposition for the route. + enum: + - accept + - reject + - NextPolicy + - NextStatement + type: string + type: object + statement: + description: List of policy statements. + items: + properties: + action: + description: Actions for routes that match the policy statement. + properties: + bgp: + description: Actions related to the BGP protocol. + properties: + asPathPrepend: + description: AS number to prepend to the AS Path attributes. + format: int32 + maximum: 4294967295 + minimum: 1 + type: integer + asPathRemove: + description: Clear the AS path to make it empty. + type: boolean + asPathReplace: + description: Replace the existing AS path with a new AS_SEQUENCE containing the listed AS numbers. + items: + format: int32 + type: integer + type: array + communitySet: + description: Modify BGP communities associated with the route using hybrid Community Sets. + properties: + add: + description: List of community sets to add to the route. + items: + type: string + maxItems: 1 + type: array + remove: + description: List of community sets to remove from the route. + items: + type: string + maxItems: 1 + type: array + replace: + description: List of community sets to replace the existing communities with. Cannot be combined with Add or Remove. + items: + type: string + maxItems: 1 + type: array + type: object + localPreference: + description: Set a new LOCAL_PREF value for matching BGP routes. + format: int32 + maximum: 4294967295 + minimum: 0 + type: integer + med: + description: Set a new MED value. + properties: + numericalValue: + description: Fixed numerical value to set or add/subtract. + maximum: 4294967295 + minimum: 0 + type: integer + operation: + description: The operation to perform on the MED value. + enum: + - Set + - Add + - Subtract + type: string + valueType: + description: Use a fixed value or an IGP metric to adjust the MED. + enum: + - Fixed + - IGP + type: string + type: object + setOrigin: + description: Set a new ORIGIN attribute for matching BGP routes. + enum: + - egp + - igp + - incomplete + type: string + type: object + policyResult: + description: Final disposition for the route. + enum: + - accept + - reject + - NextPolicy + - NextStatement + type: string + type: object + match: + description: Match conditions of the policy statement. + properties: + bgp: + description: Configuration for BGP-specific policy match criteria. + properties: + asPathMatch: + description: AS Path match criteria. + properties: + asPathExpression: + description: A singular regular expression string to match against AS_PATH objects. Mutually exclusive with the ASPathSet reference. + type: string + asPathSet: + description: Reference to an ASPathSet resource. Mutually exclusive with the ASPathExpression. + type: string + matchSetOptions: + description: The matching criteria that applies to the members in the referenced set. + enum: + - Any + - All + - Invert + type: string + type: object + communitySet: + description: Match conditions for BGP communities. + type: string + evpnRouteType: + description: Match conditions for EVPN route types. + items: + type: integer + type: array + type: object + family: + description: Address families that the route belongs to. + items: + type: string + type: array + prefixSet: + description: Reference to a PrefixSet resource. + type: string + protocol: + description: The route protocol type to match. + enum: + - AGGREGATE + - ARP_ND + - BGP + - BGP_EVPN + - DHCP + - GRIBI + - HOST + - ISIS + - LOCAL + - LINUX + - NDK1 + - NDK2 + - OSPFV2 + - OSPFV3 + - STATIC + type: string + type: object + name: + description: Name of the policy statement. + type: string + required: + - name + type: object + type: array + type: object + required: + - name + type: object + type: array + prefixSets: + description: List of PrefixSet [emits=PrefixSet] + items: + properties: + name: + description: Name of the PrefixSet. + type: string + spec: + description: A PrefixSets + properties: + prefix: + description: List of IPv4 or IPv6 prefixes in CIDR notation. + items: + properties: + endRange: + description: The end range when using a range to match prefixes. + maximum: 128 + minimum: 0 + type: integer + exact: + description: Indicates if it is an exact match. Ignores the StartRange and EndRange if this param is set. + type: boolean + prefix: + description: The IPv4 or IPv6 prefix in CIDR notation with mask. + type: string + startRange: + description: If specifying a range, this is the start of the range. + maximum: 128 + minimum: 0 + type: integer + required: + - prefix + type: object + type: array + required: + - prefix + type: object + required: + - name + type: object + type: array + type: object + staticRoutes: + description: List of Static Routes within this VirtualNetwork. [emits=StaticRoute] + items: + properties: + name: + description: Name of the StaticRoute. + type: string + spec: + description: A StaticRoutes + properties: + nexthopGroup: + description: Group of nexthops for the list of prefixes. + properties: + bfd: + description: Enables BFD to the next-hops in the group. Local and Remote discriminator parameters have been deprecated at this level. Use Nexthop to set these parameters. + properties: + enabled: + default: false + description: Defines whether BFD should be enabled towards the nexthops. + type: boolean + localAddress: + description: Defines the local address to use when establishing the BFD session with the nexthop. + type: string + localDiscriminator: + description: Defines the local discriminator. + type: integer + remoteDiscriminator: + description: Defines the remote discriminator. + type: integer + type: object + blackhole: + default: false + description: If set to true all traffic destined to the prefixes will be blackholed. If enabled, next-hops are ignored and this takes precedence. + type: boolean + blackholeSendICMP: + description: When enabled, the router will generate ICMP Unreachable messages for packets destined to the blackhole route. + type: boolean + nexthops: + description: Ordered list of nexthops. + items: + properties: + bfd: + description: Enables BFD to the next-hops in the group. This overrides the configuration at the group. + properties: + enabled: + default: false + description: Defines whether BFD should be enabled towards the nexthops. + type: boolean + localAddress: + description: Defines the local address to use when establishing the BFD session with the nexthop. + type: string + localDiscriminator: + description: Defines the local discriminator. + type: integer + remoteDiscriminator: + description: Defines the remote discriminator. + type: integer + type: object + ipPrefix: + description: Address to use. + type: string + resolve: + default: false + description: If set to true the next-hops can be destinations which are resolved in the route table. This overrides the configuration at the group. + type: boolean + required: + - ipPrefix + type: object + type: array + resolve: + default: false + description: If set to true the next-hops can be destinations which are resolved in the route table. + type: boolean + type: object + nodes: + description: List of nodes on which to configure the static routes. An AND operation is executed against the nodes in this list and the nodes on which the Router is configured to determine the Nodes on which to configure the static routes. + items: + type: string + type: array + preference: + description: Defines the route preference. + type: integer + prefixes: + description: List of destination prefixes and mask to use for the static routes. + items: + type: string + type: array + router: + description: Reference to a Router on which to configure the static routes. If no Nodes are provided then the static routes will be provisioned on all Nodes on which the Router is provisioned. + type: string + required: + - nexthopGroup + - prefixes + - router + type: object + required: + - name + type: object + type: array + type: object + routedInterfaces: + description: List of RoutedInterface. [emits=RoutedInterface] + items: + properties: + name: + description: The name of the RoutedInterface. + type: string + spec: + description: Specification of the RoutedInterface + properties: + arpTimeout: + default: 14400 + description: Duration of time that dynamic ARP entries remain in the ARP cache before they expire. + format: int32 + type: integer + bfd: + description: Enables BFD on the RoutedInterface. + properties: + desiredMinTransmitInt: + default: 1000000 + description: The minimum interval in microseconds between transmission of BFD control packets. + maximum: 100000000 + minimum: 10000 + type: integer + detectionMultiplier: + default: 3 + description: The number of packets that must be missed to declare this session as down. + maximum: 20 + minimum: 3 + type: integer + enabled: + default: false + description: Enables Biforward Detection. + type: boolean + minEchoReceiveInterval: + default: 0 + description: The minimum interval between echo packets the local node can receive. + maximum: 100000000 + minimum: 0 + type: integer + requiredMinReceive: + default: 1000000 + description: The minimum interval in microseconds between received BFD control packets that this system should support. + maximum: 100000000 + minimum: 10000 + type: integer + ttl: + description: Sets custom IP TTL or Hop Limit for multi-hop BFD sessions packets. Not appllicable to single-hop BFD sessions. + maximum: 255 + minimum: 2 + type: integer + required: + - enabled + type: object + description: + description: The description of the RoutedInterface. + type: string + egress: + description: Manages actions on traffic at Egress. + properties: + filters: + description: List of Filter references to use at egress. + items: + type: string + type: array + qosPolicy: + description: List of QoS Egress policy references to use at egress. + items: + type: string + type: array + type: object + ingress: + description: Manages actions on traffic at Ingress. + properties: + filters: + description: List of Filter references to use at ingress. + items: + type: string + type: array + qosPolicy: + description: List of QoS Ingress policy references to use at ingress. + items: + type: string + type: array + type: object + interface: + description: Reference to an Interface to use for attachment. + type: string + ipMTU: + default: 1500 + description: IP MTU for the RoutedInterface. + maximum: 9486 + minimum: 1280 + type: integer + ipv4Addresses: + description: List of IPv4 addresses in IP/mask form, e.g., 192.168.0.1/24. + items: + properties: + ipPrefix: + description: Address and mask to use + type: string + primary: + description: Indicates which address to use as primary for broadcast + type: boolean + required: + - ipPrefix + type: object + type: array + ipv4Parameters: + properties: + directedBroadcast: + description: Allow receiving and forwarding of directed broadcast packets. Enabled when set to true. + type: boolean + type: object + ipv6Addresses: + description: List of IPv6 addresses in IP/mask form, e.g., fc00::1/120. + items: + properties: + ipPrefix: + description: Address and mask to use + type: string + primary: + description: Indicates which address to use as primary for broadcast + type: boolean + required: + - ipPrefix + type: object + type: array + ipv6RouterAdvertisement: + properties: + currentHopLimit: + default: 64 + description: The current hop limit to advertise in the router advertisement messages. + format: int32 + maximum: 255 + minimum: 0 + type: integer + enabled: + default: false + description: Enable or disable IPv6 router advertisements. + type: boolean + ipMTU: + description: The IP MTU to advertise in the router advertisement messages. + format: int32 + maximum: 9486 + minimum: 1280 + type: integer + managedConfigurationFlag: + default: false + description: Enable DHCPv6 for address configuration (M-bit). + type: boolean + maxAdvertisementInterval: + default: 600 + description: Maximum time between router advertisements (in seconds). + format: int32 + maximum: 1800 + minimum: 4 + type: integer + minAdvertisementInterval: + default: 200 + description: Minimum time between router advertisements (in seconds). + format: int32 + maximum: 1350 + minimum: 3 + type: integer + otherConfigurationFlag: + default: false + description: Enable DHCPv6 for other configuration (O-bit). + type: boolean + prefixes: + description: IPv6 prefixes to advertise in router advertisements. + items: + description: IPv6Prefix defines the configuration for an IPv6 prefix advertisement. + properties: + autonomousFlag: + default: true + description: When this is set in the prefix information option hosts can use the prefix for stateless address autoconfiguration (SLAAC). + type: boolean + onLinkFlag: + default: true + description: When this is set in the prefix information option hosts can use the prefix for on-link determination. + type: boolean + preferredLifetime: + default: 604800 + description: The length of time in seconds (relative to the time the packet is sent) that addresses generated from the prefix via stateless address autoconfiguration remain preferred. + format: int32 + maximum: 4294967295 + minimum: 0 + type: integer + prefix: + description: An IPv6 global unicast address prefix. + type: string + validLifetime: + default: 2592000 + description: The length of time in seconds (relative to the time the packet is sent) that the prefix is valid for the purpose of on-link determination. + format: int32 + maximum: 4294967295 + minimum: 0 + type: integer + required: + - prefix + type: object + type: array + reachableTime: + default: 0 + description: Time in milliseconds for Neighbor Unreachability Detection. + format: int32 + maximum: 3600000 + minimum: 0 + type: integer + retransmitTime: + default: 0 + description: Time in milliseconds between retransmitted NS messages. + format: int32 + maximum: 1800000 + minimum: 0 + type: integer + routerLifetime: + default: 1800 + description: Router lifetime in seconds for default gateway. + format: int32 + maximum: 9000 + minimum: 0 + type: integer + required: + - currentHopLimit + - enabled + - managedConfigurationFlag + - maxAdvertisementInterval + - minAdvertisementInterval + - otherConfigurationFlag + - retransmitTime + - routerLifetime + type: object + l3ProxyARPND: + description: L3 Proxy ARP and ND configuration. + properties: + proxyARP: + default: false + description: Select whether Proxy ARP should be enabled. + type: boolean + proxyND: + default: false + description: Select whether Proxy ND should be enabled. + type: boolean + type: object + learnUnsolicited: + default: NONE + description: Enable or disable learning of unsolicited ARPs. + enum: + - BOTH + - GLOBAL + - LINK-LOCAL + - NONE + type: string + router: + description: Reference to a Router. + type: string + unnumbered: + description: Enables the use of unnumbered interfaces on the IRBInterface. If IPv6 is specified, no IP address are configured on the sub-interface and only the link local address will be used. If any IP addresses are specified for either IPv4 or IPv6 that will take precedence and IPs will be assigned to the interfaces. (Deprecated, Use IPv6RouterAdvertisement) + enum: + - IPV6 + type: string + vlanID: + default: pool + description: Single value between 1-4094 support, ranges supported in the format x-y,x-y, or the special keyword null, any, untagged or pool for auto allocation. + type: string + vlanPool: + default: vlan-pool + description: Reference to a VLAN pool to use for allocations. + type: string + required: + - interface + - router + type: object + required: + - name + - spec + type: object + type: array + routers: + description: List of Routers.[emits=Router] + items: + properties: + name: + description: The name of the Router. + type: string + spec: + description: Specification of the Router + properties: + bgp: + description: BGP configuration. + properties: + autonomousSystem: + description: Autonomous System number for BGP. + maximum: 4294967295 + minimum: 1 + type: integer + ebgpPreference: + default: 170 + description: Preference to be set for eBGP [default=170]. + maximum: 255 + minimum: 1 + type: integer + enabled: + default: false + description: Enable or disable BGP. + type: boolean + ibgpPreference: + default: 170 + description: Preference to be set for iBGP [default=170]. + maximum: 255 + minimum: 1 + type: integer + ipAliasNexthops: + description: IP aliasing configuration. + items: + properties: + esi: + default: auto + description: 10 byte Ethernet Segment Identifier, if not set a type 0 ESI is generated. + type: string + nextHop: + description: The nexthop IP address to track for the IP alias. + type: string + preferredActiveNode: + description: When not set the ES is used in an all active mode. This references the ToppNode object and when set, the DF algorithm is configured to type preference and the selected Node is set with a higher preference value. All other Nodes have a lower value configured. + type: string + required: + - nextHop + type: object + type: array + ipv4Unicast: + description: Parameters relating to the IPv4 unicast AFI/SAFI. + properties: + advertiseIPV6NextHops: + description: Enables advertisement of IPv4 Unicast routes with IPv6 next-hops to peers. + type: boolean + enabled: + default: false + description: Enables the IPv4 unicast AFISAFI. + type: boolean + multipath: + description: Enable multipath. + properties: + allowMultipleAS: + default: true + description: When set to true, BGP is allowed to build a multipath set using BGP routes with different neighbor AS (most recent AS in the AS_PATH), When set to false, BGP is only allowed to use non-best paths for ECMP if they meet the multipath criteria and they have the same neighbor AS as the best path. + type: boolean + maxAllowedPaths: + description: The maximum number of BGP ECMP next-hops for BGP routes with an NLRI belonging to the address family of this configuration context. + maximum: 256 + minimum: 1 + type: integer + required: + - allowMultipleAS + - maxAllowedPaths + type: object + receiveIPV6NextHops: + description: Enables the advertisement of the RFC 5549 capability to receive IPv4 routes with IPv6 next-hops. + type: boolean + required: + - enabled + type: object + ipv6Unicast: + description: Parameters relating to the IPv6 unicast AFI/SAFI. + properties: + enabled: + default: false + description: Enables the IPv6 unicast AFISAFI + type: boolean + multipath: + description: Enable multipath + properties: + allowMultipleAS: + default: true + description: When set to true, BGP is allowed to build a multipath set using BGP routes with different neighbor AS (most recent AS in the AS_PATH), When set to false, BGP is only allowed to use non-best paths for ECMP if they meet the multipath criteria and they have the same neighbor AS as the best path. + type: boolean + maxAllowedPaths: + description: The maximum number of BGP ECMP next-hops for BGP routes with an NLRI belonging to the address family of this configuration context. + maximum: 256 + minimum: 1 + type: integer + required: + - allowMultipleAS + - maxAllowedPaths + type: object + required: + - enabled + type: object + keychain: + description: Keychain to be used for authentication + type: string + minWaitToAdvertise: + default: 0 + description: Minimum wait time before advertising routes post BGP restart. + maximum: 3600 + minimum: 0 + type: integer + rapidWithdrawl: + default: true + description: Enable rapid withdrawal in BGP. + type: boolean + waitForFIBInstall: + default: false + description: Wait for FIB installation before advertising routes. + type: boolean + type: object + description: + description: The description of the Router. + type: string + evi: + description: EVI for the Router; leave blank for auto-allocation from EVI pool. + maximum: 65535 + minimum: 1 + type: integer + eviPool: + default: evi-pool + description: Reference to EVI pool for auto-allocation. + type: string + exportTarget: + description: Export route target in 'target:N:N' format, if not specified, the default value taken as "target:1:". + pattern: ^target.*$ + type: string + importTarget: + description: Import route target in 'target:N:N' format, if not specified, the default value taken as "target:1:". + pattern: ^target.*$ + type: string + ipLoadBalancing: + description: IPv4 or IPv6 prefix. Active routes in the FIB that exactly match this prefix or that are longer matches of this prefix are provided with resilient-hash programming. + properties: + prefix: + description: IPv4 or IPv6 prefix. Active routes in the FIB that exactly match this prefix or that are longer matches of this prefix are provided with resilient-hash programming. + items: + properties: + hashBucketsPerPath: + default: 1 + description: The number of times each next-hop is repeated in the fill pattern if there are max-paths ECMP next-hops. + maximum: 32 + minimum: 1 + type: integer + maxECMP: + default: 1 + description: The maximum number of ECMP next-hops per route associated with the resilient-hash prefix. + maximum: 64 + minimum: 1 + type: integer + prefix: + description: IPv4 or IPv6 prefix. Active routes in the FIB that exactly match this prefix or that are longer matches of this prefix are provided with resilient-hash programming. + type: string + required: + - hashBucketsPerPath + - maxECMP + - prefix + type: object + type: array + type: object + nodeSelector: + description: Node selectors for deployment constraints. If Nodes are selected, the Router will only be deployed on the Nodes selected, if left blank it will be deployed on all Nodes for which there are IRB or RoutedInterfaces referencing this Router. + items: + type: string + type: array + routeLeaking: + description: Route leaking controlled by routing policies in and out of the DefaultRouter. + properties: + exportPolicy: + description: Reference to a Policy resource to use when evaluating route exports from the DefaultRouter. + type: string + importPolicy: + description: Reference to a Policy resource to use when evaluating route imports into the DefaultRouter. + type: string + type: object + routerID: + description: Router ID. + type: string + tunnelIndexPool: + default: tunnel-index-pool + description: Reference to tunnel index allocation pool. + type: string + type: + default: EVPNVXLAN + description: Select the type of Router. Simple doesn't include any overlay control plane or dataplane properties (EVPN/VXLAN). EVPNVXLAN includes the properties needed to provision this Router over an IP Fabric. + enum: + - SIMPLE + - EVPNVXLAN + type: string + vni: + description: VNI for the Router; leave blank for auto-allocation from VNI pool. + maximum: 16777215 + minimum: 1 + type: integer + vniPool: + default: vni-pool + description: Reference to VNI pool for auto-allocation. + type: string + type: object + required: + - name + - spec + type: object + type: array + vlans: + description: List of VLANs. [emits=VLAN] + items: + properties: + name: + description: The name of the VLAN. + type: string + spec: + description: Specification of the Vlan + properties: + bridgeDomain: + description: Reference to a BridgeDomain or SimpleBridgeDomain. + type: string + description: + description: The description of the VLAN. + type: string + egress: + description: Manages actions on traffic at Egress. + properties: + filters: + description: List of Filter references to use at egress. + items: + type: string + type: array + qosPolicy: + description: List of QoS Egress policy references to use at egress. + items: + type: string + type: array + type: object + ingress: + description: Manages actions on traffic at Ingress. + properties: + filters: + description: List of Filter references to use at ingress. + items: + type: string + type: array + qosPolicy: + description: List of QoS Ingress policy references to use at ingress. + items: + type: string + type: array + type: object + interfaceSelector: + description: Interfaces to use for attachment to this VLAN based on the label selector. Selects Interfaces based on their associated labels. + items: + type: string + type: array + l2MTU: + description: L2 MTU specifies the maximum sized Ethernet frame that can be transmitted on the subinterface. If a frame exceeds this size it is discarded. If the l2-mtu of the subinterface exceeds the port-mtu of the associated interface, the subinterface will remain operationally down. + maximum: 9500 + minimum: 1450 + type: integer + macDuplicationDetectionAction: + description: If Mac Duplication Detection is enabled on the associated Bridge Domain, this property will override the MDD action set in the BridgeDomain. + enum: + - Blackhole + - OperDown + - StopLearning + - UseBridgeDomainAction + type: string + splitHorizonGroup: + description: Name of the Split Horizon Group to be used for this VLAN. All subinterfaces within this VLAN will be members of this Split Horizon Group. + type: string + uplink: + description: The Uplink between your access breakout switch and your leaf switch. + properties: + egress: + description: Manages actions on traffic at Egress of the Local enpoint of the Uplink. + properties: + filters: + description: List of Filter references to use at egress. + items: + type: string + type: array + qosPolicy: + description: List of QoS Egress policy references to use at egress. + items: + type: string + type: array + type: object + ingress: + description: Manages actions on traffic at Ingress of the Local enpoint of the Uplink. + properties: + filters: + description: List of Filter references to use at ingress. + items: + type: string + type: array + qosPolicy: + description: List of QoS Ingress policy references to use at ingress. + items: + type: string + type: array + type: object + uplinkSelector: + description: Selects TopoLinks which connect a leaf switch to a breakout switch. This is the uplink between your access breakout switch and your leaf switch. There can only be a single TopoLink between the access breakout switch and the leaf switch, if more than one TopoLink is present between two devices the transaction will fail. + items: + type: string + type: array + uplinkVLANID: + default: pool + description: The VLAN ID to be utilized to isolate traffic from the VLAN on the access breakout switch to the leaf switch on the selected uplink TopoLink. + type: string + uplinkVLANPool: + description: A VLAN from this pool will be utilized to isolate traffic from the VLAN on the access breakout switch to the leaf switch on the selected uplink TopoLink. + type: string + type: object + vlanID: + default: pool + description: Single value between 1-4094 support, ranges supported in the format x-y,x-y, or the special keyword null, any, untagged or pool for auto allocation. + type: string + vlanPool: + description: Reference to a VLAN pool to use for allocations. [default="vlan-pool"] + type: string + required: + - bridgeDomain + - interfaceSelector + type: object + required: + - name + - spec + type: object + type: array + type: object + status: + properties: + health: + description: Indicates the health score of the VNET. + type: integer + healthScoreReason: + description: Indicates the reason for the health score. + type: string + lastChange: + description: The time when the state of the resource last changed. + type: string + nodes: + description: List of Nodes on which the Router is deployed. + items: + type: string + type: array + numBGPPeers: + description: Total number of configured BGP Peers. + type: integer + numBGPPeersOperDown: + description: Total Number of BGP Peer operationally down. + type: integer + numIRBInterfaces: + description: Total number of irb-interfaces configured by the VNET. + format: int32 + type: integer + numIRBInterfacesOperDown: + description: Total number of irb-interfaces configured by the VNET which are oper-down. + format: int32 + type: integer + numNodes: + description: Total number of Nodes on which the VNET is configured. + type: integer + numRoutedInterfaces: + description: Total number of routed-interfaces configured by the VNET. + format: int32 + type: integer + numRoutedInterfacesOperDown: + description: Total number of routed-interfaces configured by the VNET which are oper-down. + format: int32 + type: integer + numSubInterfaces: + description: Total number of sub-interfaces configured by the VNET. + format: int32 + type: integer + numSubInterfacesOperDown: + description: Total number of sub-interfaces configured by the VNET which are oper-down. + format: int32 + type: integer + operationalState: + description: Operational state of the VNET. + type: string + type: object + type: object +served: true +storage: false +subresources: + status: {} diff --git a/static/resources/25.8.2/virtualnetworkstates.services.eda.nokia.com/v1.yaml b/static/resources/25.8.2/virtualnetworkstates.services.eda.nokia.com/v1.yaml new file mode 100644 index 0000000..be3c2b3 --- /dev/null +++ b/static/resources/25.8.2/virtualnetworkstates.services.eda.nokia.com/v1.yaml @@ -0,0 +1,69 @@ +name: v1 +schema: + openAPIV3Schema: + description: VirtualNetworkState is the Schema for the virtualnetworkstates API + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + description: VirtualNetworkStateSpec defines the desired state of VirtualNetworkState + properties: + bgpPeers: + description: List of BGPPeers created by the VNET + items: + type: string + type: array + bridgeDomains: + description: List of BridgeDomains created by the VNET + items: + type: string + type: array + bridgeInterfaces: + description: List of Bridgeinterfaces created by the VNET + items: + type: string + type: array + irbInterfaces: + description: List of IRBInterfaces created by the VNET + items: + type: string + type: array + routedInterfaces: + description: List of RoutedInterface created by the VNET + items: + type: string + type: array + routers: + description: List of Routers created by the VNET + items: + type: string + type: array + vlans: + description: List of VLANs created by the VNET + items: + type: string + type: array + type: object + status: + description: VirtualNetworkStateStatus defines the observed state of VirtualNetworkState + type: object + type: object +served: true +storage: true +subresources: + status: {} diff --git a/static/resources/25.8.2/virtualnetworkstates.services.eda.nokia.com/v1alpha1.yaml b/static/resources/25.8.2/virtualnetworkstates.services.eda.nokia.com/v1alpha1.yaml new file mode 100644 index 0000000..9cdab03 --- /dev/null +++ b/static/resources/25.8.2/virtualnetworkstates.services.eda.nokia.com/v1alpha1.yaml @@ -0,0 +1,71 @@ +deprecated: true +deprecationWarning: This version is deprecated and will no longer be supported in the next version. +name: v1alpha1 +schema: + openAPIV3Schema: + description: VirtualNetworkState is the Schema for the virtualnetworkstates API + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + description: VirtualNetworkStateSpec defines the desired state of VirtualNetworkState + properties: + bgpPeers: + description: List of BGPPeers created by the VNET + items: + type: string + type: array + bridgeDomains: + description: List of BridgeDomains created by the VNET + items: + type: string + type: array + bridgeInterfaces: + description: List of Bridgeinterfaces created by the VNET + items: + type: string + type: array + irbInterfaces: + description: List of IRBInterfaces created by the VNET + items: + type: string + type: array + routedInterfaces: + description: List of RoutedInterface created by the VNET + items: + type: string + type: array + routers: + description: List of Routers created by the VNET + items: + type: string + type: array + vlans: + description: List of VLANs created by the VNET + items: + type: string + type: array + type: object + status: + description: VirtualNetworkStateStatus defines the observed state of VirtualNetworkState + type: object + type: object +served: true +storage: false +subresources: + status: {} diff --git a/static/resources/25.8.2/vlans.services.eda.nokia.com/v1.yaml b/static/resources/25.8.2/vlans.services.eda.nokia.com/v1.yaml new file mode 100644 index 0000000..2ce4f90 --- /dev/null +++ b/static/resources/25.8.2/vlans.services.eda.nokia.com/v1.yaml @@ -0,0 +1,223 @@ +additionalPrinterColumns: + - jsonPath: .spec.bridgeDomain + name: BridgeDomain + type: string + - jsonPath: .status.numSubInterfacesOperDown + name: OperDown SubIf + type: string + - jsonPath: .status.numSubInterfaces + name: Total SubIf + type: string + - jsonPath: .status.operationalState + name: OperationalState + type: string + - jsonPath: .status.lastChange + name: LastChange + type: string + - jsonPath: .metadata.creationTimestamp + name: Age + type: date +name: v1 +schema: + openAPIV3Schema: + description: VLAN is the Schema for the vlans API + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + description: The VLAN enables the configuration and management of VLAN and their association with BridgeDomains. This resource allows for specifying the associated BridgeDomain, selecting interfaces based on label selectors, and configuring VLAN IDs with options for auto-allocation from a VLAN pool. It also supports advanced configurations such as ingress and egress traffic management, and overrides for MAC Duplication Detection actions when enabled in the associated BridgeDomain. + properties: + bridgeDomain: + description: Reference to a BridgeDomain or SimpleBridgeDomain. + type: string + description: + description: The description of the VLAN. + type: string + egress: + description: Manages actions on traffic at Egress. + properties: + filters: + description: List of Filter references to use at egress. + items: + type: string + type: array + qosPolicy: + description: List of QoS Egress policy references to use at egress. + items: + type: string + type: array + type: object + ingress: + description: Manages actions on traffic at Ingress. + properties: + filters: + description: List of Filter references to use at ingress. + items: + type: string + type: array + qosPolicy: + description: List of QoS Ingress policy references to use at ingress. + items: + type: string + type: array + type: object + interfaceSelector: + description: Interfaces to use for attachment to this VLAN based on the label selector. Selects Interfaces based on their associated labels. + items: + type: string + type: array + l2MTU: + description: L2 MTU specifies the maximum sized Ethernet frame that can be transmitted on the subinterface. If a frame exceeds this size it is discarded. If the l2-mtu of the subinterface exceeds the port-mtu of the associated interface, the subinterface will remain operationally down. + maximum: 9500 + minimum: 1450 + type: integer + macDuplicationDetectionAction: + description: If Mac Duplication Detection is enabled on the associated Bridge Domain, this property will override the MDD action set in the BridgeDomain. + enum: + - Blackhole + - OperDown + - StopLearning + - UseBridgeDomainAction + type: string + splitHorizonGroup: + description: Name of the Split Horizon Group to be used for this VLAN. All subinterfaces within this VLAN will be members of this Split Horizon Group. + type: string + uplink: + description: The Uplink between your access breakout switch and your leaf switch. + properties: + egress: + description: Manages actions on traffic at Egress of the Local enpoint of the Uplink. + properties: + filters: + description: List of Filter references to use at egress. + items: + type: string + type: array + qosPolicy: + description: List of QoS Egress policy references to use at egress. + items: + type: string + type: array + type: object + ingress: + description: Manages actions on traffic at Ingress of the Local enpoint of the Uplink. + properties: + filters: + description: List of Filter references to use at ingress. + items: + type: string + type: array + qosPolicy: + description: List of QoS Ingress policy references to use at ingress. + items: + type: string + type: array + type: object + uplinkSelector: + description: Selects TopoLinks which connect a leaf switch to a breakout switch. This is the uplink between your access breakout switch and your leaf switch. There can only be a single TopoLink between the access breakout switch and the leaf switch, if more than one TopoLink is present between two devices the transaction will fail. + items: + type: string + type: array + uplinkVLANID: + default: pool + description: The VLAN ID to be utilized to isolate traffic from the VLAN on the access breakout switch to the leaf switch on the selected uplink TopoLink. + type: string + uplinkVLANPool: + description: A VLAN from this pool will be utilized to isolate traffic from the VLAN on the access breakout switch to the leaf switch on the selected uplink TopoLink. + type: string + type: object + vlanID: + default: pool + description: Single value between 1-4094 support, ranges supported in the format x-y,x-y, or the special keyword null, any, untagged or pool for auto allocation. + type: string + vlanPool: + description: Reference to a VLAN pool to use for allocations. [default="vlan-pool"] + type: string + required: + - bridgeDomain + - interfaceSelector + type: object + status: + properties: + health: + description: Indicates the health score of the VNET. + type: integer + healthScoreReason: + description: Indicates the reason for the health score. + type: string + lastChange: + description: The time when the state of the resource last changed. + type: string + numSubInterfaces: + description: Total number of sub-interfaces configured by the VNET. + format: int32 + type: integer + numSubInterfacesOperDown: + description: Total number of sub-interfaces configured by the VNET which are oper-down. + format: int32 + type: integer + operationalState: + description: Operational state of the VNET. + type: string + subInterfaces: + description: List of members in this Interface. + items: + properties: + enabled: + description: The administrative status of the SubInterface. + type: boolean + interface: + description: Normalized interface name. + type: string + interfaceResource: + description: Eda interface resource. + type: string + lastChange: + description: Indicates when this SubInterface last changed state. + type: string + node: + description: Reference to Node object. + type: string + nodeInterface: + description: Node specific interface name. + type: string + operatingSystem: + description: Operating System of the Node. + type: string + operationalState: + description: Indicates the current operational state of the SubInterface. + type: string + subInterfaceIndex: + description: Index allocated to the subinterface on the associated interface for the given VLAN. + type: integer + vlanID: + description: vlan assigned to this subinterface. + type: string + required: + - interface + - interfaceResource + - node + - nodeInterface + type: object + type: array + type: object + type: object +served: true +storage: true +subresources: + status: {} diff --git a/static/resources/25.8.2/vlans.services.eda.nokia.com/v1alpha1.yaml b/static/resources/25.8.2/vlans.services.eda.nokia.com/v1alpha1.yaml new file mode 100644 index 0000000..6646d84 --- /dev/null +++ b/static/resources/25.8.2/vlans.services.eda.nokia.com/v1alpha1.yaml @@ -0,0 +1,225 @@ +additionalPrinterColumns: + - jsonPath: .spec.bridgeDomain + name: BridgeDomain + type: string + - jsonPath: .status.numSubInterfacesOperDown + name: OperDown SubIf + type: string + - jsonPath: .status.numSubInterfaces + name: Total SubIf + type: string + - jsonPath: .status.operationalState + name: OperationalState + type: string + - jsonPath: .status.lastChange + name: LastChange + type: string + - jsonPath: .metadata.creationTimestamp + name: Age + type: date +deprecated: true +deprecationWarning: This version is deprecated and will no longer be supported in the next version. +name: v1alpha1 +schema: + openAPIV3Schema: + description: VLAN is the Schema for the vlans API + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + description: The VLAN enables the configuration and management of VLAN and their association with BridgeDomains. This resource allows for specifying the associated BridgeDomain, selecting interfaces based on label selectors, and configuring VLAN IDs with options for auto-allocation from a VLAN pool. It also supports advanced configurations such as ingress and egress traffic management, and overrides for MAC Duplication Detection actions when enabled in the associated BridgeDomain. + properties: + bridgeDomain: + description: Reference to a BridgeDomain or SimpleBridgeDomain. + type: string + description: + description: The description of the VLAN. + type: string + egress: + description: Manages actions on traffic at Egress. + properties: + filters: + description: List of Filter references to use at egress. + items: + type: string + type: array + qosPolicy: + description: List of QoS Egress policy references to use at egress. + items: + type: string + type: array + type: object + ingress: + description: Manages actions on traffic at Ingress. + properties: + filters: + description: List of Filter references to use at ingress. + items: + type: string + type: array + qosPolicy: + description: List of QoS Ingress policy references to use at ingress. + items: + type: string + type: array + type: object + interfaceSelector: + description: Interfaces to use for attachment to this VLAN based on the label selector. Selects Interfaces based on their associated labels. + items: + type: string + type: array + l2MTU: + description: L2 MTU specifies the maximum sized Ethernet frame that can be transmitted on the subinterface. If a frame exceeds this size it is discarded. If the l2-mtu of the subinterface exceeds the port-mtu of the associated interface, the subinterface will remain operationally down. + maximum: 9500 + minimum: 1450 + type: integer + macDuplicationDetectionAction: + description: If Mac Duplication Detection is enabled on the associated Bridge Domain, this property will override the MDD action set in the BridgeDomain. + enum: + - Blackhole + - OperDown + - StopLearning + - UseBridgeDomainAction + type: string + splitHorizonGroup: + description: Name of the Split Horizon Group to be used for this VLAN. All subinterfaces within this VLAN will be members of this Split Horizon Group. + type: string + uplink: + description: The Uplink between your access breakout switch and your leaf switch. + properties: + egress: + description: Manages actions on traffic at Egress of the Local enpoint of the Uplink. + properties: + filters: + description: List of Filter references to use at egress. + items: + type: string + type: array + qosPolicy: + description: List of QoS Egress policy references to use at egress. + items: + type: string + type: array + type: object + ingress: + description: Manages actions on traffic at Ingress of the Local enpoint of the Uplink. + properties: + filters: + description: List of Filter references to use at ingress. + items: + type: string + type: array + qosPolicy: + description: List of QoS Ingress policy references to use at ingress. + items: + type: string + type: array + type: object + uplinkSelector: + description: Selects TopoLinks which connect a leaf switch to a breakout switch. This is the uplink between your access breakout switch and your leaf switch. There can only be a single TopoLink between the access breakout switch and the leaf switch, if more than one TopoLink is present between two devices the transaction will fail. + items: + type: string + type: array + uplinkVLANID: + default: pool + description: The VLAN ID to be utilized to isolate traffic from the VLAN on the access breakout switch to the leaf switch on the selected uplink TopoLink. + type: string + uplinkVLANPool: + description: A VLAN from this pool will be utilized to isolate traffic from the VLAN on the access breakout switch to the leaf switch on the selected uplink TopoLink. + type: string + type: object + vlanID: + default: pool + description: Single value between 1-4094 support, ranges supported in the format x-y,x-y, or the special keyword null, any, untagged or pool for auto allocation. + type: string + vlanPool: + description: Reference to a VLAN pool to use for allocations. [default="vlan-pool"] + type: string + required: + - bridgeDomain + - interfaceSelector + type: object + status: + properties: + health: + description: Indicates the health score of the VNET. + type: integer + healthScoreReason: + description: Indicates the reason for the health score. + type: string + lastChange: + description: The time when the state of the resource last changed. + type: string + numSubInterfaces: + description: Total number of sub-interfaces configured by the VNET. + format: int32 + type: integer + numSubInterfacesOperDown: + description: Total number of sub-interfaces configured by the VNET which are oper-down. + format: int32 + type: integer + operationalState: + description: Operational state of the VNET. + type: string + subInterfaces: + description: List of members in this Interface. + items: + properties: + enabled: + description: The administrative status of the SubInterface. + type: boolean + interface: + description: Normalized interface name. + type: string + interfaceResource: + description: Eda interface resource. + type: string + lastChange: + description: Indicates when this SubInterface last changed state. + type: string + node: + description: Reference to Node object. + type: string + nodeInterface: + description: Node specific interface name. + type: string + operatingSystem: + description: Operating System of the Node. + type: string + operationalState: + description: Indicates the current operational state of the SubInterface. + type: string + subInterfaceIndex: + description: Index allocated to the subinterface on the associated interface for the given VLAN. + type: integer + vlanID: + description: vlan assigned to this subinterface. + type: string + required: + - interface + - interfaceResource + - node + - nodeInterface + type: object + type: array + type: object + type: object +served: true +storage: false +subresources: + status: {} diff --git a/static/resources/25.8.2/vlanstates.services.eda.nokia.com/v1.yaml b/static/resources/25.8.2/vlanstates.services.eda.nokia.com/v1.yaml new file mode 100644 index 0000000..d82685d --- /dev/null +++ b/static/resources/25.8.2/vlanstates.services.eda.nokia.com/v1.yaml @@ -0,0 +1,78 @@ +name: v1 +schema: + openAPIV3Schema: + description: VLANState is the Schema for the vlanstates API + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + description: VLANStateSpec defines the desired state of VLANState + properties: + bridgeDomain: + description: Node BridgeDomain name + type: string + subInterfaces: + items: + properties: + interface: + description: Normalized interface name + type: string + interfaceResource: + description: Eda interface resource + type: string + node: + description: Reference to Node object + type: string + nodeInterface: + description: Node specific interface name + type: string + nodeSubInterface: + description: Node specific subinterface name + type: string + operatingSystem: + description: Operating System of the Node + type: string + subInterfaceIndex: + description: Index allocated to the subinterface on the associated interface for the given VLAN + type: integer + vlanID: + description: vlan assigned to this subinterface + type: string + required: + - interface + - interfaceResource + - node + - nodeInterface + type: object + type: array + vlanID: + description: Single value between 0-4094 support, ranges supported in the format x-y,x-y, or the special keyword any or untagged or pool for auto allocation + type: string + required: + - bridgeDomain + - subInterfaces + - vlanID + type: object + status: + description: VLANStateStatus defines the observed state of VLANState + type: object + type: object +served: true +storage: true +subresources: + status: {} diff --git a/static/resources/25.8.2/vlanstates.services.eda.nokia.com/v1alpha1.yaml b/static/resources/25.8.2/vlanstates.services.eda.nokia.com/v1alpha1.yaml new file mode 100644 index 0000000..90fa651 --- /dev/null +++ b/static/resources/25.8.2/vlanstates.services.eda.nokia.com/v1alpha1.yaml @@ -0,0 +1,80 @@ +deprecated: true +deprecationWarning: This version is deprecated and will no longer be supported in the next version. +name: v1alpha1 +schema: + openAPIV3Schema: + description: VLANState is the Schema for the vlanstates API + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + description: VLANStateSpec defines the desired state of VLANState + properties: + bridgeDomain: + description: Node BridgeDomain name + type: string + subInterfaces: + items: + properties: + interface: + description: Normalized interface name + type: string + interfaceResource: + description: Eda interface resource + type: string + node: + description: Reference to Node object + type: string + nodeInterface: + description: Node specific interface name + type: string + nodeSubInterface: + description: Node specific subinterface name + type: string + operatingSystem: + description: Operating System of the Node + type: string + subInterfaceIndex: + description: Index allocated to the subinterface on the associated interface for the given VLAN + type: integer + vlanID: + description: vlan assigned to this subinterface + type: string + required: + - interface + - interfaceResource + - node + - nodeInterface + type: object + type: array + vlanID: + description: Single value between 0-4094 support, ranges supported in the format x-y,x-y, or the special keyword any or untagged or pool for auto allocation + type: string + required: + - bridgeDomain + - subInterfaces + - vlanID + type: object + status: + description: VLANStateStatus defines the observed state of VLANState + type: object + type: object +served: true +storage: false +subresources: + status: {} diff --git a/static/resources/25.8.2/volumeoverlays.components.eda.nokia.com/v1.yaml b/static/resources/25.8.2/volumeoverlays.components.eda.nokia.com/v1.yaml new file mode 100644 index 0000000..d794973 --- /dev/null +++ b/static/resources/25.8.2/volumeoverlays.components.eda.nokia.com/v1.yaml @@ -0,0 +1,69 @@ +name: v1 +schema: + openAPIV3Schema: + description: VolumeOverlay is the Schema for volumeoverlays + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + description: VolumeOverlaySpec defines the desired state of VolumeOverlay + properties: + enabled: + description: Enable or disable the generation of the status of this overlay + type: boolean + topology: + description: Reference to the topology that this overlay is extending. + properties: + group: + description: The group of the application which published the topology this overlay is extending. + type: string + name: + description: The name of the resource which published the topology this overlay is extending. + type: string + version: + description: The version of the application which published the topology this overlay is extending. + type: string + required: + - group + - name + - version + type: object + uiDescription: + description: A description of the overlay to expose in the UI + type: string + uiDescriptionKey: + description: The translation key for the description of the overlay to expose in the UI + type: string + uiName: + description: The name of the overlay to expose in the UI + type: string + uiNameKey: + description: The translation key for the name of the overlay to expose in the UI + type: string + required: + - enabled + - topology + type: object + status: + description: VolumeOverlayStatus defines the observed state of VolumeOverlay + type: object + type: object +served: true +storage: true +subresources: + status: {} diff --git a/static/resources/25.8.2/waitforinputs.core.eda.nokia.com/v1.yaml b/static/resources/25.8.2/waitforinputs.core.eda.nokia.com/v1.yaml new file mode 100644 index 0000000..19dd660 --- /dev/null +++ b/static/resources/25.8.2/waitforinputs.core.eda.nokia.com/v1.yaml @@ -0,0 +1,42 @@ +name: v1 +schema: + openAPIV3Schema: + description: WaitForInput is the Schema for the waitforinputs API + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + description: WaitForInputSpec defines the desired state of WaitForInput + properties: + id: + type: integer + prompt: + description: Foo is an example field of WaitForInput. Edit waitforinput_types.go to remove/update + type: string + type: object + status: + description: WaitForInputStatus defines the observed state of WaitForInput + properties: + prompt: + type: boolean + type: object + type: object +served: true +storage: true +subresources: + status: {} diff --git a/static/resources/25.8.2/workflowdefinitions.core.eda.nokia.com/v1.yaml b/static/resources/25.8.2/workflowdefinitions.core.eda.nokia.com/v1.yaml new file mode 100644 index 0000000..9b9eefd --- /dev/null +++ b/static/resources/25.8.2/workflowdefinitions.core.eda.nokia.com/v1.yaml @@ -0,0 +1,78 @@ +additionalPrinterColumns: + - jsonPath: .spec.image + name: Image + type: string + - jsonPath: .metadata.creationTimestamp + name: Age + type: date +name: v1 +schema: + openAPIV3Schema: + description: WorkflowDefinition is the Schema for the workflowdefinitions API + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + description: WorkflowDefinitionSpec defines the desired state of FlowDefinition + properties: + flowDefinitionResource: + description: the resource type to be used for this flow, can only be set if Schema is not set + properties: + group: + type: string + kind: + type: string + version: + type: string + required: + - kind + - version + type: object + flowDefinitionSchema: + description: the schema for the flow, can only be set if Resource is not set + properties: + jsonSchemaSpec: + description: A string containing the JSON schema the workflow accepts as input. + type: string + jsonSchemaStatus: + description: A string containing the JSON schema the workflow will populate as output. + type: string + type: object + image: + description: Container image containing the flow. For example "ghcr.io/nokia-eda/apps/operatingsystem:v1.0.0". + type: string + imagePullSecrets: + description: Secrets to use to pull the image for this workflow. + items: + type: string + type: array + namespaced: + default: true + description: If set, resources of this CRD are namespace scoped + type: boolean + required: + - image + type: object + status: + description: WorkflowDefinitionStatus defines the observed state of FlowDefinition + type: object + type: object +served: true +storage: true +subresources: + status: {} diff --git a/static/resources/25.8.2/workflows.core.eda.nokia.com/v1.yaml b/static/resources/25.8.2/workflows.core.eda.nokia.com/v1.yaml new file mode 100644 index 0000000..39e50ad --- /dev/null +++ b/static/resources/25.8.2/workflows.core.eda.nokia.com/v1.yaml @@ -0,0 +1,53 @@ +additionalPrinterColumns: + - jsonPath: .spec.type + name: Type + type: string + - jsonPath: .metadata.creationTimestamp + name: Age + type: date +name: v1 +schema: + openAPIV3Schema: + description: Workflow is the Schema for the workflows API + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + description: WorkflowSpec defines the desired state of Flow + properties: + input: + description: Input to this flow, adhering to the JSON schema defined in the referenced WorkflowDefinition. + x-kubernetes-preserve-unknown-fields: true + type: + description: Select the WorkflowDefinition to execute. + type: string + required: + - type + type: object + status: + description: WorkflowStatus defines the observed state of Flow + properties: + output: + description: Output from this flow, adhering to the JSON schema defined in the referenced FlowDefinition + x-kubernetes-preserve-unknown-fields: true + type: object + type: object +served: true +storage: true +subresources: + status: {} diff --git a/static/resources/25.8.3/aggregateroutes.protocols.eda.nokia.com/v1.yaml b/static/resources/25.8.3/aggregateroutes.protocols.eda.nokia.com/v1.yaml new file mode 100644 index 0000000..c6e6fa7 --- /dev/null +++ b/static/resources/25.8.3/aggregateroutes.protocols.eda.nokia.com/v1.yaml @@ -0,0 +1,63 @@ +name: v1 +schema: + openAPIV3Schema: + description: AggregateRoute is the Schema for the aggregateroutes API + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + description: The AggregateRoute enables the configuration of aggregated routes on a specified Router. This resource allows for the definition of destination prefixes, the selection of a router, and optionally, specific nodes where the aggregate routes should be configured. Advanced options include the ability to generate ICMP unreachable messages for packets matching the aggregate route, and the ability to block the advertisement of all contributing routes in dynamic protocols like BGP. + properties: + aggregatorASN: + description: Specifies the aggregator's ASN. + format: int32 + type: integer + aggregatorIP: + description: Specifies the aggregator's IP address. + type: string + generateICMP: + description: When set to true the router generares ICMP unreachable messages for packets matching the aggregate route (and not a more specific route). + type: boolean + nodes: + description: List of nodes on which to configure the aggregate routes. An AND operation is executed against the nodes in this list and the nodes on which the Router is configured to determine the Nodes on which to configure the aggregate routes. + items: + type: string + type: array + prefixes: + description: List of destination prefixes for the aggregate routes. + items: + type: string + type: array + router: + description: Reference to a Router on which to configure the aggregate routes. If no Nodes are provided then the aggregate routes will be provisioned on all Nodes on which the Router is provisioned. + type: string + summaryOnly: + description: When set to true the router blocks the advertisement of all contributing routes of this aggregate route in dynamic protocols such as BGP. + type: boolean + required: + - prefixes + - router + type: object + status: + description: AggregateRouteStatus defines the observed state of AggregateRoute + type: object + type: object +served: true +storage: true +subresources: + status: {} diff --git a/static/resources/25.8.3/aggregateroutes.protocols.eda.nokia.com/v1alpha1.yaml b/static/resources/25.8.3/aggregateroutes.protocols.eda.nokia.com/v1alpha1.yaml new file mode 100644 index 0000000..055f7b5 --- /dev/null +++ b/static/resources/25.8.3/aggregateroutes.protocols.eda.nokia.com/v1alpha1.yaml @@ -0,0 +1,65 @@ +deprecated: true +deprecationWarning: This version is deprecated and will no longer be supported in the next version. +name: v1alpha1 +schema: + openAPIV3Schema: + description: AggregateRoute is the Schema for the aggregateroutes API + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + description: The AggregateRoute enables the configuration of aggregated routes on a specified Router. This resource allows for the definition of destination prefixes, the selection of a router, and optionally, specific nodes where the aggregate routes should be configured. Advanced options include the ability to generate ICMP unreachable messages for packets matching the aggregate route, and the ability to block the advertisement of all contributing routes in dynamic protocols like BGP. + properties: + aggregatorASN: + description: Specifies the aggregator's ASN. + format: int32 + type: integer + aggregatorIP: + description: Specifies the aggregator's IP address. + type: string + generateICMP: + description: When set to true the router generares ICMP unreachable messages for packets matching the aggregate route (and not a more specific route). + type: boolean + nodes: + description: List of nodes on which to configure the aggregate routes. An AND operation is executed against the nodes in this list and the nodes on which the Router is configured to determine the Nodes on which to configure the aggregate routes. + items: + type: string + type: array + prefixes: + description: List of destination prefixes for the aggregate routes. + items: + type: string + type: array + router: + description: Reference to a Router on which to configure the aggregate routes. If no Nodes are provided then the aggregate routes will be provisioned on all Nodes on which the Router is provisioned. + type: string + summaryOnly: + description: When set to true the router blocks the advertisement of all contributing routes of this aggregate route in dynamic protocols such as BGP. + type: boolean + required: + - prefixes + - router + type: object + status: + description: AggregateRouteStatus defines the observed state of AggregateRoute + type: object + type: object +served: true +storage: false +subresources: + status: {} diff --git a/static/resources/25.8.3/alarms.core.eda.nokia.com/v1.yaml b/static/resources/25.8.3/alarms.core.eda.nokia.com/v1.yaml new file mode 100644 index 0000000..b985673 --- /dev/null +++ b/static/resources/25.8.3/alarms.core.eda.nokia.com/v1.yaml @@ -0,0 +1,104 @@ +name: v1 +schema: + openAPIV3Schema: + description: Alarm is the Schema for the alarms API + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + description: AlarmSpec defines the desired state of Alarm + properties: + clusterSpecific: + description: Specifies if the alarm is within cluster, such as pod issue, or external issue, such as with BGP session on node + type: boolean + description: + description: Description of the alarm + minLength: 1 + type: string + group: + description: The group of the resouce the alarm is associated with, for example core.eda.nokia.com + minLength: 1 + type: string + jsPath: + description: Provide a JSON path to the resource or object that the alarm is associated with, for example .node{.name=='leaf-1-1'}.srl{.version=='24.7.1'}.interface{.name=='ethernet-1-11' + type: string + kind: + description: The kind of the resource the alarm is associated with, for example TopoNode + minLength: 1 + type: string + name: + description: Name of the alarm, this is typically the alarm Kind followed by a unique identifier such as InterfaceDown-leaf-1-1-ethernet-1-11 + minLength: 1 + type: string + parentAlarm: + description: ParentAlarm is the name of the parent alarm, if any, for example LinecardDown-leaf-1-1-Linecard1 + type: string + probableCause: + description: ProbableCause is the probable cause of the alarm + type: string + remedialAction: + description: RemedialAction is the proposed remedial action for the alarm + type: string + resource: + description: The name of the resouce the alarm is associated with, for example leaf-1-1 + minLength: 1 + type: string + severity: + description: Severity for this alarm + enum: + - warning + - minor + - major + - critical + type: string + sourceGroup: + description: The group of the resource that raise the alarm, for example core.eda.nokia.com + minLength: 1 + type: string + sourceKind: + description: The kind of the resource that raised the alarm, for example InterfaceState + minLength: 1 + type: string + sourceResource: + description: The resource that raised the alarm, for example + minLength: 1 + type: string + type: + description: Type of the alarm, for example InterfaceDown + minLength: 1 + type: string + required: + - description + - group + - kind + - name + - resource + - severity + - sourceGroup + - sourceKind + - sourceResource + - type + type: object + status: + description: AlarmStatus defines the observed state of Alarm + type: object + type: object +served: true +storage: true +subresources: + status: {} diff --git a/static/resources/25.8.3/appinstallers.appstore.eda.nokia.com/v1.yaml b/static/resources/25.8.3/appinstallers.appstore.eda.nokia.com/v1.yaml new file mode 100644 index 0000000..63cd0ec --- /dev/null +++ b/static/resources/25.8.3/appinstallers.appstore.eda.nokia.com/v1.yaml @@ -0,0 +1,113 @@ +additionalPrinterColumns: + - jsonPath: .spec.operation + name: Operation + type: string + - jsonPath: .status.result + name: Result + type: string +name: v1 +schema: + openAPIV3Schema: + description: AppInstaller + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + properties: + apps: + description: Apps are the input apps to the installer. + items: + properties: + appId: + description: AppID of the app, which is the unique identifier of an app. It should be equal to the group of the app. + type: string + appSettings: + description: |- + AppSettings defines a list of variables and their value. Only variables that are customised need to be mentioned. + If AppSettings are not again mentioned on upgrade, values will remain as is. + x-kubernetes-preserve-unknown-fields: true + catalog: + description: |- + Catalog of the app to be installed. + This is where app manifest is retrieved from, along with some other metadata. + type: string + version: + description: Version of the App that is to be installed. + properties: + type: + default: semver + description: |- + The version type of the App. Currently supported: semver, commit. + Default is semver. + enum: + - semver + - commit + type: string + value: + description: |- + The version of the App. + If the VersionType is set to semver, + then the semantic version of the git tag in the form of "apps//" is used. + If the VersionType is set to commit, + then the commit reference (e.g. git hash) is expected. + type: string + required: + - value + type: object + required: + - appId + - catalog + - version + type: object + type: array + autoProcessRequirements: + description: |- + AutoProcessRequirements tells the installer what it can do w.r.t. the requirements of an app. + Currently only 'strict' is supported. + items: + type: string + type: array + operation: + description: |- + Operation is the installing operation. + Currently supported are 'install', 'delete'. + enum: + - install + - delete + type: string + required: + - apps + - operation + type: object + status: + properties: + error: + type: string + id: + description: ID is the workflow ID that can be used to get more information on. + type: integer + result: + type: string + required: + - result + type: object + type: object +served: true +storage: true +subresources: + status: {} diff --git a/static/resources/25.8.3/artifacts.artifacts.eda.nokia.com/v1.yaml b/static/resources/25.8.3/artifacts.artifacts.eda.nokia.com/v1.yaml new file mode 100644 index 0000000..8f40090 --- /dev/null +++ b/static/resources/25.8.3/artifacts.artifacts.eda.nokia.com/v1.yaml @@ -0,0 +1,183 @@ +additionalPrinterColumns: + - jsonPath: .status.downloadStatus + name: Status + type: string +name: v1 +schema: + openAPIV3Schema: + description: Artifact is the Schema for the artifacts API + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + description: ArtifactSpec defines the desired state of Artifact + properties: + filePath: + description: |- + Provide the file path, including an optional file name + For Artifacts that are directories themselves a file name is not required + minLength: 1 + type: string + fromConfigMap: + description: The secret from which the file is to be hosted in the artifact server + properties: + key: + description: Key of the data field + minLength: 1 + type: string + name: + description: The name of the configMap + minLength: 1 + type: string + namespace: + description: The namespace of the configMap + type: string + required: + - key + - name + - namespace + type: object + fromSecret: + description: The secret from which the file is to be hosted in the artifact server + properties: + key: + description: Key of the data field + minLength: 1 + type: string + name: + description: The name of the secret + minLength: 1 + type: string + namespace: + description: The namespace of the secret + type: string + required: + - key + - name + - namespace + type: object + git: + description: A git hash can be used to pull down the file from git + properties: + filePath: + description: The file path within the git repository to pull down + type: string + gitHash: + description: Git hash of the file to pull down. + pattern: ^[0-9a-fA-F]+$ + type: string + repoUrl: + description: The remote URL of the git repository from which to pull down the file + format: uri + type: string + required: + - filePath + - gitHash + - repoUrl + type: object + oci: + description: The container and registry to pull down and host in the artifact server registry + properties: + digest: + description: Digest of the file blob which needs to be downloaded + pattern: ^sha256:[a-fA-F0-9]{64}$ + type: string + registry: + description: The remote registry from which to pull down the OCI artifact + minLength: 1 + type: string + repository: + description: The name of the repository to pull down into the artifact server + minLength: 1 + type: string + tag: + description: Tag of the image which need to be pulled + type: string + required: + - registry + - repository + type: object + remoteFileUrl: + description: the remote URL from which to download the file to host in the artifact server + properties: + fileUrl: + description: This is the remote URL from which to download the file to store in the artifact server. Supported protocols are HTTPS and SFTP, URL format should include the protocol. + type: string + md5Url: + description: This is the remote URL from which to download a text file containing the MD5 hash against which the artifact server will validate the artifact before hosting + type: string + required: + - fileUrl + type: object + repo: + description: |- + Provide the repo + Multiple artifacts can have same repo + minLength: 1 + type: string + x-kubernetes-validations: + - message: repo is immutable + rule: self == oldSelf + secret: + description: If provided the secret to use for authenticating + type: string + textFile: + properties: + content: + description: Content of the text file + type: string + required: + - content + type: object + trustBundle: + description: If provided the configmap contains the trust bundle for https upstream + type: string + required: + - filePath + - repo + type: object + status: + description: ArtifactStatus defines the observed state of Artifact + properties: + downloadStatus: + enum: + - InProgress + - Error + - Failed + - Available + type: string + externalUrl: + description: External (outside of cluster) URL where this Artifact is reachable + type: string + internalUrl: + description: Internal (in cluster) URL where this Artifact is reachable + type: string + lastExternalAddress: + type: string + observedGeneration: + format: int64 + type: integer + statusReason: + description: Human-readable message indicating details about the downloadStatus's Error|Failed state + type: string + type: object + type: object +served: true +storage: true +subresources: + status: {} diff --git a/static/resources/25.8.3/aspathsetdeployments.routingpolicies.eda.nokia.com/v1alpha1.yaml b/static/resources/25.8.3/aspathsetdeployments.routingpolicies.eda.nokia.com/v1alpha1.yaml new file mode 100644 index 0000000..474011c --- /dev/null +++ b/static/resources/25.8.3/aspathsetdeployments.routingpolicies.eda.nokia.com/v1alpha1.yaml @@ -0,0 +1,42 @@ +name: v1alpha1 +schema: + openAPIV3Schema: + description: ASPathSetDeployment is the Schema for the aspathsetdeployments API + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + description: ASPathSetDeploymentSpec defines the desired state of ASPathSetDeployment + properties: + asPathSet: + description: Specifies an ASPathSet to deploy to the specified Node + type: string + node: + description: Specifies a Node to deploy this policy on + type: string + required: + - node + type: object + status: + description: ASPathSetDeploymentStatus defines the observed state of ASPathSetDeployment + type: object + type: object +served: true +storage: true +subresources: + status: {} diff --git a/static/resources/25.8.3/aspathsets.routingpolicies.eda.nokia.com/v1alpha1.yaml b/static/resources/25.8.3/aspathsets.routingpolicies.eda.nokia.com/v1alpha1.yaml new file mode 100644 index 0000000..7e0cdd5 --- /dev/null +++ b/static/resources/25.8.3/aspathsets.routingpolicies.eda.nokia.com/v1alpha1.yaml @@ -0,0 +1,45 @@ +name: v1alpha1 +schema: + openAPIV3Schema: + description: ASPathSet is the Schema for the aspathsets API + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + description: ASPathSetSpec defines the desired state of ASPathSet + properties: + members: + description: Members is a list of AS path regular expressions. + items: + type: string + type: array + regexMode: + description: Defines how AS_PATH attribute is converted into a string for regex matching. + enum: + - ASN + - Character + type: string + type: object + status: + description: ASPathSetStatus defines the observed state of ASPathSet + type: object + type: object +served: true +storage: true +subresources: + status: {} diff --git a/static/resources/25.8.3/attachmentlookups.routing.eda.nokia.com/v1alpha1.yaml b/static/resources/25.8.3/attachmentlookups.routing.eda.nokia.com/v1alpha1.yaml new file mode 100644 index 0000000..76f90e2 --- /dev/null +++ b/static/resources/25.8.3/attachmentlookups.routing.eda.nokia.com/v1alpha1.yaml @@ -0,0 +1,83 @@ +name: v1alpha1 +schema: + openAPIV3Schema: + description: AttachmentLookup is the Schema for the attachmentlookups API + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + description: |- + This workflow is used to look up attachments (where an address is attached in the network) on a set of nodes. + It takes an address, and an optional list of nodes (or node selectors - a list of label expressions) to perform the lookup on, + and returns the matching attachments, including the node, + network instance, prefix, interface, and next hop group ID. + properties: + address: + description: |- + Address to perform a lookup for. + This is a standard IPv4 or IPv6 address, excluding mask or prefix length, e.g. 12.0.0.1. + type: string + networkInstance: + description: |- + Network Instance is the locally named network instance to use for the lookup. + Can be omitted if the default network instance is to be used. + type: string + nodeSelectors: + description: |- + NodeSelectors is a list of node selectors to execute lookups on. + This is a list of label expressions, e.g. ["eda.nokia.com/role=leaf", "eda.nokia.com/region=us-west"]. + items: + type: string + type: array + nodes: + description: Nodes is a list of node names to execute lookups on. + items: + type: string + type: array + required: + - address + type: object + status: + description: AttachmentLookupStatus defines the observed state of AttachmentLookup + properties: + found: + type: boolean + results: + items: + properties: + interface: + type: string + networkInstance: + type: string + nextHopGroupId: + format: int64 + type: integer + node: + type: string + prefix: + type: string + type: object + type: array + required: + - found + type: object + type: object +served: true +storage: true +subresources: + status: {} diff --git a/static/resources/25.8.3/backends.aifabrics.eda.nokia.com/v1alpha1.yaml b/static/resources/25.8.3/backends.aifabrics.eda.nokia.com/v1alpha1.yaml new file mode 100644 index 0000000..8b7da72 --- /dev/null +++ b/static/resources/25.8.3/backends.aifabrics.eda.nokia.com/v1alpha1.yaml @@ -0,0 +1,222 @@ +additionalPrinterColumns: + - jsonPath: .status.lastChange + name: Last Change + type: date + - jsonPath: .status.operationalState + name: Operational State + type: string +name: v1alpha1 +schema: + openAPIV3Schema: + description: Backend is the Schema for the backends API + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + description: BackendSpec defines the desired state of Backend + properties: + asnPool: + description: Reference to an IndexAllocationPool pool to use for Autonomous System Number allocations. Used when eBGP is configured as an underlay protocol. + type: string + gpuIsolationGroups: + description: GPU Isolation Groups are used to isolate GPU traffic over the network, GPUs in different GPU isolation groups will not be able to communicate with each other. If all GPUs across all stripes need to be able to communicate with each other, create a single GPUIsolationGroup selecting all GPU facing interfaces. + items: + properties: + interfaceSelector: + items: + type: string + type: array + name: + description: Name of the IsolationGroup. + type: string + required: + - interfaceSelector + - name + type: object + type: array + rocev2QoS: + description: Set of properties to configure the RoCEv2 QoS. + properties: + ecnMaxDropProbabilityPercent: + default: 100 + description: If the queue depth is between min and max threshold then this the probability with which packets are dropped or marked. + type: integer + ecnSlopeMaxThresholdPercent: + default: 80 + description: The maximum threshold parameter for a RED-managed queue in percent. When the average queue length exceeds the max value, all packets are dropped (or marked if ECN is enabled). Mutually exclusive with min-threshold and max-threshold. + type: integer + ecnSlopeMinThresholdPercent: + default: 5 + description: The mininum threshold parameter for a RED-managed queue in percent. When the average queue length is less than min, all packets are admitted to the queue. Mutually exclusive with min-threshold and max-threshold. + type: integer + pfcDeadlockDetectionTimer: + default: 750 + description: Number of milliseconds during which outgoing interface is receiving pfc-pause-frames before triggering recovery-timer. + type: integer + pfcDeadlockRecoveryTimer: + default: 750 + description: Number of milliseconds during which the pfc-pause-frames will be ignored. + type: integer + queueMaximumBurstSize: + default: 52110640 + description: Maximum amount of shared buffer memory available to the queue in bytes. + format: int32 + maximum: 4294967295 + minimum: 0 + type: integer + required: + - ecnMaxDropProbabilityPercent + - ecnSlopeMaxThresholdPercent + - ecnSlopeMinThresholdPercent + - pfcDeadlockDetectionTimer + - pfcDeadlockRecoveryTimer + - queueMaximumBurstSize + type: object + stripeConnector: + description: StripeConnector is the spine layer interconnecting multiple stripes. + properties: + asnPool: + description: Reference to an IndexAllocationPool pool to use for Autonomous System Number allocations. + type: string + linkSelector: + description: Selects TopoLinks to include in this AI Fabric, the selected TopoLinks will be used to create ISLs between the stripe connector devices and the leaf devices. + items: + type: string + type: array + name: + description: The name of the Stripe Connector. + type: string + nodeSelector: + description: Node selector to select the nodes to be used for this stripe connector. + items: + type: string + type: array + systemPoolIPV4: + description: Reference to an IPAllocationPool used to dynamically allocate an IPv4 address to system/lo0 interfaces for the stripe connector devices. If not specified, the system will use the default IPAllocationPool. + type: string + required: + - linkSelector + - name + - nodeSelector + type: object + stripes: + description: A list of stripes, stripes contain a set of nodes (rails). + items: + properties: + asnPool: + description: Optional reference to an IndexAllocationPool pool to use for Autonomous System Number allocations. If left blank, ASN allocation will be done from the ASNAllocationRange. + type: string + gpuVlan: + description: The VLAN used on interfaces facing the GPU servers. + type: integer + name: + description: The name of the Stripe. + type: string + nodeSelector: + description: Node selector to select the nodes to be used for this stripe. + items: + type: string + type: array + stripeID: + description: Unique ID for a stripe + type: integer + systemPoolIPV4: + description: Optional reference to an IPAllocationPool used to dynamically allocate an IPv4 address to system/lo0 interfaces. If left blank, system IP allocation will be done from the SystemIPV4Subnet. + type: string + required: + - gpuVlan + - name + - nodeSelector + - stripeID + type: object + type: array + systemPoolIPV4: + description: Reference to an IPAllocationPool used to dynamically allocate an IPv4 address to system/lo0 interfaces. If specified under the Leaf/Spine/Superspine/Borderleaf those will take precedence. + type: string + required: + - gpuIsolationGroups + - rocev2QoS + - stripes + type: object + status: + description: BackendStatus defines the observed state of Backend + properties: + health: + description: Indicates the health score of the Fabric. The health score of the Fabric is determined by the aggregate health score of the resources emited by the Fabric such as ISL, DefaultRouteReflectors etc. + type: integer + healthScoreReason: + description: Indicates the reason for the health score. + type: string + lastChange: + description: The time when the state of the resource last changed. + type: string + operationalState: + description: 'Operational state of the Fabric. The operational state of the fabric is determined by monitoring the operational state of the following resources (if applicable): DefaultRouters, ISLs.' + type: string + stripeConnector: + description: Stripe connector in the Backend. + properties: + name: + description: The name of the Stripe Connector. + type: string + stripeConnectorNodes: + description: List of stripe connector nodes in the Stripe. + items: + properties: + node: + description: Name of the TopoNode. + type: string + operatingSystem: + description: Operating system running on the node. + type: string + operatingSystemVersion: + description: Operating system version running on the node. + type: string + type: object + type: array + type: object + stripes: + description: List of stripes in the Backend. + items: + properties: + leafNodes: + description: List of leaf nodes in the Stripe. + items: + properties: + node: + description: Name of the TopoNode. + type: string + operatingSystem: + description: Operating system running on the node. + type: string + operatingSystemVersion: + description: Operating system version running on the node. + type: string + type: object + type: array + name: + description: The name of the Stripe. + type: string + type: object + type: array + type: object + type: object +served: true +storage: true +subresources: + status: {} diff --git a/static/resources/25.8.3/backendstates.aifabrics.eda.nokia.com/v1alpha1.yaml b/static/resources/25.8.3/backendstates.aifabrics.eda.nokia.com/v1alpha1.yaml new file mode 100644 index 0000000..6a7b585 --- /dev/null +++ b/static/resources/25.8.3/backendstates.aifabrics.eda.nokia.com/v1alpha1.yaml @@ -0,0 +1,94 @@ +name: v1alpha1 +schema: + openAPIV3Schema: + description: BackendState is the Schema for the backendstates API + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + description: BackendStateSpec defines the desired state of BackendState + properties: + gpuIsolationGroups: + description: IsolationGroups in the Backend. + items: + properties: + interfaces: + description: List of interfaces mapped to the IsolationGroup. + items: + type: string + type: array + name: + description: The name of the IsolationGroup. + type: string + type: object + type: array + stripeConnector: + description: Stripe connector in the Backend. + properties: + name: + description: The name of the Stripe Connector. + type: string + stripeConnectorNodes: + description: List of stripe connector nodes in the Stripe. + items: + properties: + node: + description: Name of the TopoNode. + type: string + operatingSystem: + description: Operating system running on the node. + type: string + operatingSystemVersion: + description: Operating system version running on the node. + type: string + type: object + type: array + type: object + stripes: + description: List of stripes in the Backend. + items: + properties: + leafNodes: + description: List of leaf nodes in the Stripe. + items: + properties: + node: + description: Name of the TopoNode. + type: string + operatingSystem: + description: Operating system running on the node. + type: string + operatingSystemVersion: + description: Operating system version running on the node. + type: string + type: object + type: array + name: + description: The name of the Stripe. + type: string + type: object + type: array + type: object + status: + description: BackendStateStatus defines the observed state of BackendState + type: object + type: object +served: true +storage: true +subresources: + status: {} diff --git a/static/resources/25.8.3/banners.siteinfo.eda.nokia.com/v1alpha1.yaml b/static/resources/25.8.3/banners.siteinfo.eda.nokia.com/v1alpha1.yaml new file mode 100644 index 0000000..96fcedd --- /dev/null +++ b/static/resources/25.8.3/banners.siteinfo.eda.nokia.com/v1alpha1.yaml @@ -0,0 +1,56 @@ +name: v1alpha1 +schema: + openAPIV3Schema: + description: Banner is the Schema for the banners API + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + description: BannerSpec allows the configuration of login and MOTD (Message of the Day) banners on selected nodes. The banners can be applied to specific nodes or selected using label selectors. + properties: + loginBanner: + description: This is the login banner displayed before a user has logged into the Node. + type: string + motd: + description: This is the MOTD banner displayed after a user has logged into the Node. + type: string + nodeSelector: + description: Labe selector to select nodes on which to configure the banners. + items: + type: string + type: array + nodes: + description: List of nodes on which to configure the banners. + items: + type: string + type: array + type: object + status: + description: BannerStatus defines the observed state of Banner + properties: + nodes: + description: List of nodes this banner has been applied to + items: + type: string + type: array + type: object + type: object +served: true +storage: true +subresources: + status: {} diff --git a/static/resources/25.8.3/bannerstates.siteinfo.eda.nokia.com/v1alpha1.yaml b/static/resources/25.8.3/bannerstates.siteinfo.eda.nokia.com/v1alpha1.yaml new file mode 100644 index 0000000..95ef8f2 --- /dev/null +++ b/static/resources/25.8.3/bannerstates.siteinfo.eda.nokia.com/v1alpha1.yaml @@ -0,0 +1,39 @@ +name: v1alpha1 +schema: + openAPIV3Schema: + description: BannerState is the Schema for the bannerstates API + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + description: BannerStateSpec defines the desired state of BannerState + properties: + nodes: + description: List of TopoNodes this banner has been applied to + items: + type: string + type: array + type: object + status: + description: BannerStateStatus defines the observed state of BannerState + type: object + type: object +served: true +storage: true +subresources: + status: {} diff --git a/static/resources/25.8.3/bgpgroupdeployments.protocols.eda.nokia.com/v1.yaml b/static/resources/25.8.3/bgpgroupdeployments.protocols.eda.nokia.com/v1.yaml new file mode 100644 index 0000000..470b027 --- /dev/null +++ b/static/resources/25.8.3/bgpgroupdeployments.protocols.eda.nokia.com/v1.yaml @@ -0,0 +1,47 @@ +name: v1 +schema: + openAPIV3Schema: + description: BGPGroupDeployment is the Schema for the bgpgroupdeployments API + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + description: BGPGroupDeploymentSpec defines the desired state of BGPGroupDeployment + properties: + bgpGroup: + description: Reference to a BgpGroup + type: string + node: + description: Reference to a Node on which to push the BgpGroup + type: string + router: + description: Reference to a Router + type: string + required: + - bgpGroup + - node + - router + type: object + status: + description: BGPGroupDeploymentStatus defines the observed state of BGPGroupDeployment + type: object + type: object +served: true +storage: true +subresources: + status: {} diff --git a/static/resources/25.8.3/bgpgroupdeployments.protocols.eda.nokia.com/v1alpha1.yaml b/static/resources/25.8.3/bgpgroupdeployments.protocols.eda.nokia.com/v1alpha1.yaml new file mode 100644 index 0000000..e2b5fb3 --- /dev/null +++ b/static/resources/25.8.3/bgpgroupdeployments.protocols.eda.nokia.com/v1alpha1.yaml @@ -0,0 +1,49 @@ +deprecated: true +deprecationWarning: This version is deprecated and will no longer be supported in the next version. +name: v1alpha1 +schema: + openAPIV3Schema: + description: BGPGroupDeployment is the Schema for the bgpgroupdeployments API + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + description: BGPGroupDeploymentSpec defines the desired state of BGPGroupDeployment + properties: + bgpGroup: + description: Reference to a BgpGroup + type: string + node: + description: Reference to a Node on which to push the BgpGroup + type: string + router: + description: Reference to a Router + type: string + required: + - bgpGroup + - node + - router + type: object + status: + description: BGPGroupDeploymentStatus defines the observed state of BGPGroupDeployment + type: object + type: object +served: true +storage: false +subresources: + status: {} diff --git a/static/resources/25.8.3/bgpgroups.protocols.eda.nokia.com/v1.yaml b/static/resources/25.8.3/bgpgroups.protocols.eda.nokia.com/v1.yaml new file mode 100644 index 0000000..7c1415e --- /dev/null +++ b/static/resources/25.8.3/bgpgroups.protocols.eda.nokia.com/v1.yaml @@ -0,0 +1,314 @@ +additionalPrinterColumns: + - jsonPath: .status.lastChange + name: Last Change + type: date + - jsonPath: .status.operationalState + name: Operational State + type: string +name: v1 +schema: + openAPIV3Schema: + description: BGPGroup is the Schema for the bgpgroups API + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + description: The BGPGroup enables centralized management of BGP peer configurations. This resource allows setting a description, common BGP settings, and peer-specific configurations, simplifying the consistent application of policies across multiple peers. It also includes transport settings, such as local TCP address configuration, passive mode, and TCP MSS. + properties: + asPathOptions: + description: AS Path Options + properties: + allowOwnAS: + default: 0 + description: The maximum number of times the global AS number or a local AS number of the BGP instance can appear in any received AS_PATH before it is considered a loop and considered invalid. + maximum: 255 + minimum: 0 + type: integer + removePrivateAS: + description: Options for removing private AS numbers (2-byte and 4-byte) from the advertised AS path towards all peers. + properties: + ignorePeerAS: + default: false + description: If set to true then do not delete or replace a private AS number that is the same as the peer AS number. + type: boolean + leadingOnly: + default: false + description: If set to true then only delete or replace private AS numbers that appear before the first occurrence of a non-private ASN in the sequence of most recent ASNs in the AS path. + type: boolean + removePrivateASMode: + default: DISABLED + description: The method by which private AS numbers are removed from the advertised AS_PATH attribute. + enum: + - DISABLED + - REPLACE + - DELETE + type: string + required: + - ignorePeerAS + - leadingOnly + - removePrivateASMode + type: object + required: + - allowOwnAS + type: object + bfd: + description: Enable or disable Bi-forward Forwarding Detection (BFD) with fast failover. + type: boolean + client: + description: When set to true, all configured and dynamic BGP peers are considered RR clients. + type: boolean + clusterID: + description: Enables route reflect client and sets the cluster ID. + type: string + description: + description: Sets the description on the BGP group. + type: string + exportPolicy: + description: Reference to a Policy CR that will be used to filter routes advertised to peers. + items: + type: string + type: array + grStaleRouteTime: + description: Enables Graceful Restart on the peer and sets the stale route time. + maximum: 3600 + minimum: 1 + type: integer + importPolicy: + description: Reference to a Policy CR that will be used to filter routes received from peers. + items: + type: string + type: array + ipv4Unicast: + description: Parameters relating to the IPv4 unicast AFI/SAFI. + properties: + advertiseIPV6NextHops: + description: Enables advertisement of IPv4 Unicast routes with IPv6 next-hops to peers. + type: boolean + enabled: + description: Enables the IPv4 unicast AFISAFI. + type: boolean + prefixLimit: + properties: + prefixLimitAccepted: + properties: + logOnly: + description: Defines the action to take when the maximum number of prefixes is exceeded. Session is reset if set to false, otherwise only a warning is logged. + type: boolean + maxReceivedRoutes: + description: Maximum number of prefixes allowed to be received from the neighbor, counting only accepted routes. + format: int32 + maximum: 4294967295 + minimum: 1 + type: integer + warningThreshold: + description: A percentage of the maximum number of prefixes that can be accepted before a warning is logged. + maximum: 100 + minimum: 1 + type: integer + type: object + prefixLimitReceived: + properties: + logOnly: + description: Defines the action to take when the maximum number of prefixes is exceeded. Session is reset if set to false, otherwise only a warning is logged. + type: boolean + maxReceivedRoutes: + description: Maximum number of prefixes allowed to be received from the neighbor, counting all routes (accepted and rejected by import policies). + format: int32 + maximum: 4294967295 + minimum: 1 + type: integer + warningThreshold: + description: A percentage of the maximum number of prefixes that can be received before a warning is logged. + maximum: 100 + minimum: 1 + type: integer + type: object + type: object + receiveIPV6NextHops: + description: Enables the advertisement of the RFC 5549 capability to receive IPv4 routes with IPv6 next-hops. + type: boolean + type: object + ipv6Unicast: + description: Parameters relating to the IPv6 unicast AFI/SAFI. + properties: + enabled: + description: Enables the IPv6 unicast AFISAFI + type: boolean + prefixLimit: + properties: + prefixLimitAccepted: + properties: + logOnly: + description: Defines the action to take when the maximum number of prefixes is exceeded. Session is reset if set to false, otherwise only a warning is logged. + type: boolean + maxReceivedRoutes: + description: Maximum number of prefixes allowed to be received from the neighbor, counting only accepted routes. + format: int32 + maximum: 4294967295 + minimum: 1 + type: integer + warningThreshold: + description: A percentage of the maximum number of prefixes that can be accepted before a warning is logged. + maximum: 100 + minimum: 1 + type: integer + type: object + prefixLimitReceived: + properties: + logOnly: + description: Defines the action to take when the maximum number of prefixes is exceeded. Session is reset if set to false, otherwise only a warning is logged. + type: boolean + maxReceivedRoutes: + description: Maximum number of prefixes allowed to be received from the neighbor, counting all routes (accepted and rejected by import policies). + format: int32 + maximum: 4294967295 + minimum: 1 + type: integer + warningThreshold: + description: A percentage of the maximum number of prefixes that can be received before a warning is logged. + maximum: 100 + minimum: 1 + type: integer + type: object + type: object + type: object + keychain: + description: Reference to a Keychain resource that will be used for authentication with the BGP peer. + type: string + localAS: + description: The local autonomous system number advertised to peers. + properties: + autonomousSystem: + description: Local Autonomous System number. + maximum: 4294967295 + minimum: 1 + type: integer + prependGlobalAS: + description: When set to true, the global ASN value is prepended to the AS path in outbound routes towards each BGP peer. + type: boolean + prependLocalAS: + description: When set to true, the local AS value is prepended to the AS path of inbound routes from each EBGP peer. + type: boolean + required: + - autonomousSystem + type: object + localPreference: + description: Local Preference attribute added to received routes from the BGP peers, also sets local preference for generated routes. + maximum: 4294967295 + minimum: 0 + type: integer + multiHopMaxHop: + description: Enable multihop for eBGP peers and sets the maximum number of hops allowed. + maximum: 255 + minimum: 1 + type: integer + nextHopSelf: + description: When set to true, the next-hop in all IPv4-unicast, IPv6-unicast and EVPN BGP routes advertised to the peer is set to the local-address. + type: boolean + peerAS: + description: The autonomous system number expected from peers. + properties: + autonomousSystem: + description: Local Autonomous System number. + maximum: 4294967295 + minimum: 1 + type: integer + required: + - autonomousSystem + type: object + sendCommunityLarge: + description: When false, all large (12 byte) BGP communities from all outbound routes advertised to the peer are stripped. + type: boolean + sendCommunityStandard: + description: When false, all standard (4 byte) communities from all outbound routes advertised to the peer are stripped. + type: boolean + sendDefaultRoute: + description: Options for controlling the generation of default routes towards BGP peers. + properties: + addressFamily: + description: Enables the sending of a synthetically generated default IPv4 or IPV6 route to each peer. + items: + enum: + - IPV4-UNICAST + - IPV6-UNICAST + type: string + type: array + exportPolicy: + description: Reference to a Policy that should be applied to the advertised default routes, in order to set their attributes to non-default values. + type: string + required: + - addressFamily + type: object + timers: + description: Timer configurations + properties: + connectRetry: + description: The time interval in seconds between successive attempts to establish a session with a peer. + maximum: 65535 + minimum: 1 + type: integer + holdTime: + description: The hold-time interval in seconds that the router proposes to the peer in its OPEN message. + maximum: 65535 + minimum: 0 + type: integer + keepAlive: + description: The interval in seconds between successive keepalive messages sent to the peer. + maximum: 21845 + minimum: 0 + type: integer + minimumAdvertisementInterval: + description: The value assigned to the MinRouteAdvertisementIntervalTimer of RFC 4271, for both EBGP and IBGP sessions. + maximum: 255 + minimum: 1 + type: integer + type: object + type: object + status: + description: BGPGroupStatus defines the observed state of BGPGroup + properties: + health: + description: Indicates the health score of the BGP group. + type: integer + healthScoreReason: + description: Indicates the reason for the health score. + type: string + lastChange: + description: The time when the state of the resource last changed. + type: string + numPeers: + description: Number of configured BGP peers within the BGP Group. + format: int32 + type: integer + numPeersOperDown: + description: Number of configured BGP peers which have an Operational State of down within the BGP Group. + format: int32 + type: integer + numPeersUnknown: + description: Number of configured BGP peers within the BGP Group which cannot be reached by npp. + format: int32 + type: integer + operationalState: + description: Operational state of the BGP group. + type: string + type: object + type: object +served: true +storage: true +subresources: + status: {} diff --git a/static/resources/25.8.3/bgpgroups.protocols.eda.nokia.com/v1alpha1.yaml b/static/resources/25.8.3/bgpgroups.protocols.eda.nokia.com/v1alpha1.yaml new file mode 100644 index 0000000..5111fe2 --- /dev/null +++ b/static/resources/25.8.3/bgpgroups.protocols.eda.nokia.com/v1alpha1.yaml @@ -0,0 +1,252 @@ +additionalPrinterColumns: + - jsonPath: .status.lastChange + name: Last Change + type: date + - jsonPath: .status.operationalState + name: Operational State + type: string +deprecated: true +deprecationWarning: This version is deprecated and will no longer be supported in the next version. +name: v1alpha1 +schema: + openAPIV3Schema: + description: BGPGroup is the Schema for the bgpgroups API + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + description: The BGPGroup enables centralized management of BGP peer configurations. This resource allows setting a description, common BGP settings, and peer-specific configurations, simplifying the consistent application of policies across multiple peers. It also includes transport settings, such as local TCP address configuration, passive mode, and TCP MSS. + properties: + asPathOptions: + description: AS Path Options + properties: + allowOwnAS: + default: 0 + description: The maximum number of times the global AS number or a local AS number of the BGP instance can appear in any received AS_PATH before it is considered a loop and considered invalid. + maximum: 255 + minimum: 0 + type: integer + removePrivateAS: + description: Options for removing private AS numbers (2-byte and 4-byte) from the advertised AS path towards all peers. + properties: + ignorePeerAS: + default: false + description: If set to true then do not delete or replace a private AS number that is the same as the peer AS number. + type: boolean + leadingOnly: + default: false + description: If set to true then only delete or replace private AS numbers that appear before the first occurrence of a non-private ASN in the sequence of most recent ASNs in the AS path. + type: boolean + removePrivateASMode: + default: DISABLED + description: The method by which private AS numbers are removed from the advertised AS_PATH attribute. + enum: + - DISABLED + - REPLACE + - DELETE + type: string + required: + - ignorePeerAS + - leadingOnly + - removePrivateASMode + type: object + required: + - allowOwnAS + type: object + bfd: + description: Enable or disable Bi-forward Forwarding Detection (BFD) with fast failover. + type: boolean + client: + description: When set to true, all configured and dynamic BGP peers are considered RR clients. + type: boolean + clusterID: + description: Enables route reflect client and sets the cluster ID. + type: string + description: + description: Sets the description on the BGP group. + type: string + exportPolicy: + description: Reference to a Policy CR that will be used to filter routes advertised to peers. + items: + type: string + type: array + grStaleRouteTime: + description: Enables Graceful Restart on the peer and sets the stale route time. + maximum: 3600 + minimum: 1 + type: integer + importPolicy: + description: Reference to a Policy CR that will be used to filter routes received from peers. + items: + type: string + type: array + ipv4Unicast: + description: Parameters relating to the IPv4 unicast AFI/SAFI. + properties: + advertiseIPV6NextHops: + description: Enables advertisement of IPv4 Unicast routes with IPv6 next-hops to peers. + type: boolean + enabled: + description: Enables the IPv4 unicast AFISAFI. + type: boolean + maxReceivedRoutes: + description: Maximum number of IPv4 Unicast routes that will be accepted from the neighbor, counting routes accepted and rejected by import policies. + maximum: 4294967295 + minimum: 1 + type: integer + receiveIPV6NextHops: + description: Enables the advertisement of the RFC 5549 capability to receive IPv4 routes with IPv6 next-hops. + type: boolean + type: object + ipv6Unicast: + description: Parameters relating to the IPv6 unicast AFI/SAFI. + properties: + enabled: + description: Enables the IPv6 unicast AFISAFI + type: boolean + maxReceivedRoutes: + description: Maximum number of IPv6 Unicast routes that will be accepted from the neighbor, counting routes accepted and rejected by import policies. + maximum: 4294967295 + minimum: 1 + type: integer + type: object + keychain: + description: Reference to a Keychain resource that will be used for authentication with the BGP peer. + type: string + localAS: + description: The local autonomous system number advertised to peers. + properties: + autonomousSystem: + description: Local Autonomous System number. + maximum: 4294967295 + minimum: 1 + type: integer + prependGlobalAS: + description: When set to true, the global ASN value is prepended to the AS path in outbound routes towards each BGP peer. + type: boolean + prependLocalAS: + description: When set to true, the local AS value is prepended to the AS path of inbound routes from each EBGP peer. + type: boolean + required: + - autonomousSystem + type: object + localPreference: + description: Local Preference attribute added to received routes from the BGP peers, also sets local preference for generated routes. + maximum: 4294967295 + minimum: 0 + type: integer + multiHopMaxHop: + description: Enable multihop for eBGP peers and sets the maximum number of hops allowed. + maximum: 255 + minimum: 1 + type: integer + nextHopSelf: + description: When set to true, the next-hop in all IPv4-unicast, IPv6-unicast and EVPN BGP routes advertised to the peer is set to the local-address. + type: boolean + peerAS: + description: The autonomous system number expected from peers. + properties: + autonomousSystem: + description: Local Autonomous System number. + maximum: 4294967295 + minimum: 1 + type: integer + required: + - autonomousSystem + type: object + sendCommunityLarge: + description: When false, all large (12 byte) BGP communities from all outbound routes advertised to the peer are stripped. + type: boolean + sendCommunityStandard: + description: When false, all standard (4 byte) communities from all outbound routes advertised to the peer are stripped. + type: boolean + sendDefaultRoute: + description: Options for controlling the generation of default routes towards BGP peers. + properties: + addressFamily: + description: Enables the sending of a synthetically generated default IPv4 or IPV6 route to each peer. + items: + enum: + - IPV4-UNICAST + - IPV6-UNICAST + type: string + type: array + exportPolicy: + description: Reference to a Policy that should be applied to the advertised default routes, in order to set their attributes to non-default values. + type: string + required: + - addressFamily + type: object + timers: + description: Timer configurations + properties: + connectRetry: + description: The time interval in seconds between successive attempts to establish a session with a peer. + maximum: 65535 + minimum: 1 + type: integer + holdTime: + description: The hold-time interval in seconds that the router proposes to the peer in its OPEN message. + maximum: 65535 + minimum: 0 + type: integer + keepAlive: + description: The interval in seconds between successive keepalive messages sent to the peer. + maximum: 21845 + minimum: 0 + type: integer + minimumAdvertisementInterval: + description: The value assigned to the MinRouteAdvertisementIntervalTimer of RFC 4271, for both EBGP and IBGP sessions. + maximum: 255 + minimum: 1 + type: integer + type: object + type: object + status: + description: BGPGroupStatus defines the observed state of BGPGroup + properties: + health: + description: Indicates the health score of the BGP group. + type: integer + healthScoreReason: + description: Indicates the reason for the health score. + type: string + lastChange: + description: The time when the state of the resource last changed. + type: string + numPeers: + description: Number of configured BGP peers within the BGP Group. + format: int32 + type: integer + numPeersOperDown: + description: Number of configured BGP peers which have an Operational State of down within the BGP Group. + format: int32 + type: integer + numPeersUnknown: + description: Number of configured BGP peers within the BGP Group which cannot be reached by npp. + format: int32 + type: integer + operationalState: + description: Operational state of the BGP group. + type: string + type: object + type: object +served: true +storage: false +subresources: + status: {} diff --git a/static/resources/25.8.3/bgpgroupstates.protocols.eda.nokia.com/v1.yaml b/static/resources/25.8.3/bgpgroupstates.protocols.eda.nokia.com/v1.yaml new file mode 100644 index 0000000..0ec71d0 --- /dev/null +++ b/static/resources/25.8.3/bgpgroupstates.protocols.eda.nokia.com/v1.yaml @@ -0,0 +1,42 @@ +name: v1 +schema: + openAPIV3Schema: + description: BGPGroupState is the Schema for the bgpgroupstates API + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + description: BGPGroupStateSpec defines the desired state of BGPGroupState + properties: + defaultBGPGroup: + description: Denotes if the group is a DefaultBGPGroup or BGPGroup + type: boolean + group: + type: string + required: + - defaultBGPGroup + - group + type: object + status: + description: BGPGroupStateStatus defines the observed state of BGPGroupState + type: object + type: object +served: true +storage: true +subresources: + status: {} diff --git a/static/resources/25.8.3/bgpgroupstates.protocols.eda.nokia.com/v1alpha1.yaml b/static/resources/25.8.3/bgpgroupstates.protocols.eda.nokia.com/v1alpha1.yaml new file mode 100644 index 0000000..d6c17dc --- /dev/null +++ b/static/resources/25.8.3/bgpgroupstates.protocols.eda.nokia.com/v1alpha1.yaml @@ -0,0 +1,44 @@ +deprecated: true +deprecationWarning: This version is deprecated and will no longer be supported in the next version. +name: v1alpha1 +schema: + openAPIV3Schema: + description: BGPGroupState is the Schema for the bgpgroupstates API + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + description: BGPGroupStateSpec defines the desired state of BGPGroupState + properties: + defaultBGPGroup: + description: Denotes if the group is a DefaultBGPGroup or BGPGroup + type: boolean + group: + type: string + required: + - defaultBGPGroup + - group + type: object + status: + description: BGPGroupStateStatus defines the observed state of BGPGroupState + type: object + type: object +served: true +storage: false +subresources: + status: {} diff --git a/static/resources/25.8.3/bgppeers.protocols.eda.nokia.com/v1.yaml b/static/resources/25.8.3/bgppeers.protocols.eda.nokia.com/v1.yaml new file mode 100644 index 0000000..cda8f76 --- /dev/null +++ b/static/resources/25.8.3/bgppeers.protocols.eda.nokia.com/v1.yaml @@ -0,0 +1,366 @@ +additionalPrinterColumns: + - jsonPath: .status.sessionState + name: Session State + type: string + - jsonPath: .status.lastChange + name: Last Change + type: date + - jsonPath: .status.enabled + name: Enabled + type: boolean + - jsonPath: .status.operationalState + name: Operational State + type: string + - jsonPath: .status.peerAS + name: PeerAS + type: integer +name: v1 +schema: + openAPIV3Schema: + description: BGPPeer is the Schema for the bgppeers API + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + description: BGPPeer enables the configuration of BGP sessions. It allows specifying a description, an interface reference (either RoutedInterface or IrbInterface), and the peer IP address. The resource also supports dynamic neighbors, common BGP settings, and peer-specific configurations. + properties: + asPathOptions: + description: AS Path Options + properties: + allowOwnAS: + default: 0 + description: The maximum number of times the global AS number or a local AS number of the BGP instance can appear in any received AS_PATH before it is considered a loop and considered invalid. + maximum: 255 + minimum: 0 + type: integer + removePrivateAS: + description: Options for removing private AS numbers (2-byte and 4-byte) from the advertised AS path towards all peers. + properties: + ignorePeerAS: + default: false + description: If set to true then do not delete or replace a private AS number that is the same as the peer AS number. + type: boolean + leadingOnly: + default: false + description: If set to true then only delete or replace private AS numbers that appear before the first occurrence of a non-private ASN in the sequence of most recent ASNs in the AS path. + type: boolean + removePrivateASMode: + default: DISABLED + description: The method by which private AS numbers are removed from the advertised AS_PATH attribute. + enum: + - DISABLED + - REPLACE + - DELETE + type: string + required: + - ignorePeerAS + - leadingOnly + - removePrivateASMode + type: object + required: + - allowOwnAS + type: object + bfd: + description: Enable or disable Bi-forward Forwarding Detection (BFD) with fast failover. + type: boolean + client: + description: When set to true, all configured and dynamic BGP peers are considered RR clients. + type: boolean + clusterID: + description: Enables route reflect client and sets the cluster ID. + type: string + description: + description: Sets the description on the BGP peer + type: string + dynamicNeighbor: + default: false + description: When set to true the Interface is added to the dynamic-neighbor list for dynamic peering. + type: boolean + dynamicNeighborAllowedPeerAS: + description: The autonomous system numbers allowed from peers if dynamic peering is enabled. + items: + type: integer + type: array + exportPolicy: + description: Reference to a Policy CR that will be used to filter routes advertised to peers. + items: + type: string + type: array + grStaleRouteTime: + description: Enables Graceful Restart on the peer and sets the stale route time. + maximum: 3600 + minimum: 1 + type: integer + group: + description: Reference to a BGPGroup. When present this BGP peer will be added to the BGP group + type: string + importPolicy: + description: Reference to a Policy CR that will be used to filter routes received from peers. + items: + type: string + type: array + interface: + description: Reference to a RoutedInterface or IrbInterface resource whose IP will be used as a source IP for the BGP session. + type: string + interfaceKind: + description: InterfaceReference type defines whether the provided Reference is a RoutedInterface or IrbInterface. + enum: + - ROUTEDINTERFACE + - IRBINTERFACE + type: string + ipv4Unicast: + description: Parameters relating to the IPv4 unicast AFI/SAFI. + properties: + advertiseIPV6NextHops: + description: Enables advertisement of IPv4 Unicast routes with IPv6 next-hops to peers. + type: boolean + enabled: + description: Enables the IPv4 unicast AFISAFI. + type: boolean + prefixLimit: + properties: + prefixLimitAccepted: + properties: + logOnly: + description: Defines the action to take when the maximum number of prefixes is exceeded. Session is reset if set to false, otherwise only a warning is logged. + type: boolean + maxReceivedRoutes: + description: Maximum number of prefixes allowed to be received from the neighbor, counting only accepted routes. + format: int32 + maximum: 4294967295 + minimum: 1 + type: integer + warningThreshold: + description: A percentage of the maximum number of prefixes that can be accepted before a warning is logged. + maximum: 100 + minimum: 1 + type: integer + type: object + prefixLimitReceived: + properties: + logOnly: + description: Defines the action to take when the maximum number of prefixes is exceeded. Session is reset if set to false, otherwise only a warning is logged. + type: boolean + maxReceivedRoutes: + description: Maximum number of prefixes allowed to be received from the neighbor, counting all routes (accepted and rejected by import policies). + format: int32 + maximum: 4294967295 + minimum: 1 + type: integer + warningThreshold: + description: A percentage of the maximum number of prefixes that can be received before a warning is logged. + maximum: 100 + minimum: 1 + type: integer + type: object + type: object + receiveIPV6NextHops: + description: Enables the advertisement of the RFC 5549 capability to receive IPv4 routes with IPv6 next-hops. + type: boolean + type: object + ipv6Unicast: + description: Parameters relating to the IPv6 unicast AFI/SAFI. + properties: + enabled: + description: Enables the IPv6 unicast AFISAFI + type: boolean + prefixLimit: + properties: + prefixLimitAccepted: + properties: + logOnly: + description: Defines the action to take when the maximum number of prefixes is exceeded. Session is reset if set to false, otherwise only a warning is logged. + type: boolean + maxReceivedRoutes: + description: Maximum number of prefixes allowed to be received from the neighbor, counting only accepted routes. + format: int32 + maximum: 4294967295 + minimum: 1 + type: integer + warningThreshold: + description: A percentage of the maximum number of prefixes that can be accepted before a warning is logged. + maximum: 100 + minimum: 1 + type: integer + type: object + prefixLimitReceived: + properties: + logOnly: + description: Defines the action to take when the maximum number of prefixes is exceeded. Session is reset if set to false, otherwise only a warning is logged. + type: boolean + maxReceivedRoutes: + description: Maximum number of prefixes allowed to be received from the neighbor, counting all routes (accepted and rejected by import policies). + format: int32 + maximum: 4294967295 + minimum: 1 + type: integer + warningThreshold: + description: A percentage of the maximum number of prefixes that can be received before a warning is logged. + maximum: 100 + minimum: 1 + type: integer + type: object + type: object + type: object + keychain: + description: Reference to a Keychain resource that will be used for authentication with the BGP peer. + type: string + localAS: + description: The local autonomous system number advertised to peers. + properties: + autonomousSystem: + description: Local Autonomous System number. + maximum: 4294967295 + minimum: 1 + type: integer + prependGlobalAS: + description: When set to true, the global ASN value is prepended to the AS path in outbound routes towards each BGP peer. + type: boolean + prependLocalAS: + description: When set to true, the local AS value is prepended to the AS path of inbound routes from each EBGP peer. + type: boolean + required: + - autonomousSystem + type: object + localPreference: + description: Local Preference attribute added to received routes from the BGP peers, also sets local preference for generated routes. + maximum: 4294967295 + minimum: 0 + type: integer + multiHopMaxHop: + description: Enable multihop for eBGP peers and sets the maximum number of hops allowed. + maximum: 255 + minimum: 1 + type: integer + nextHopSelf: + description: When set to true, the next-hop in all IPv4-unicast, IPv6-unicast and EVPN BGP routes advertised to the peer is set to the local-address. + type: boolean + node: + description: Node on which to configure the BGP peer. This node must be one of the nodes on which the IRBInterface is configured. When left blank or if the node is not part of the IRBInterface, the peer will not be deployed. Ignored for RoutedInterfaces. + type: string + peerAS: + description: The autonomous system number expected from peers. + properties: + autonomousSystem: + description: Local Autonomous System number. + maximum: 4294967295 + minimum: 1 + type: integer + required: + - autonomousSystem + type: object + peerIP: + description: Peer IP to which the peering session will be established. + type: string + sendCommunityLarge: + description: When false, all large (12 byte) BGP communities from all outbound routes advertised to the peer are stripped. + type: boolean + sendCommunityStandard: + description: When false, all standard (4 byte) communities from all outbound routes advertised to the peer are stripped. + type: boolean + sendDefaultRoute: + description: Options for controlling the generation of default routes towards BGP peers. + properties: + addressFamily: + description: Enables the sending of a synthetically generated default IPv4 or IPV6 route to each peer. + items: + enum: + - IPV4-UNICAST + - IPV6-UNICAST + type: string + type: array + exportPolicy: + description: Reference to a Policy that should be applied to the advertised default routes, in order to set their attributes to non-default values. + type: string + required: + - addressFamily + type: object + timers: + description: Timer configurations + properties: + connectRetry: + description: The time interval in seconds between successive attempts to establish a session with a peer. + maximum: 65535 + minimum: 1 + type: integer + holdTime: + description: The hold-time interval in seconds that the router proposes to the peer in its OPEN message. + maximum: 65535 + minimum: 0 + type: integer + keepAlive: + description: The interval in seconds between successive keepalive messages sent to the peer. + maximum: 21845 + minimum: 0 + type: integer + minimumAdvertisementInterval: + description: The value assigned to the MinRouteAdvertisementIntervalTimer of RFC 4271, for both EBGP and IBGP sessions. + maximum: 255 + minimum: 1 + type: integer + type: object + required: + - group + - interface + - interfaceKind + type: object + status: + description: BGPPeerStatus defines the observed state of BGPPeer + properties: + enabled: + description: Indicated whether the BGP Peer is administratively enabled. + type: boolean + health: + description: Indicates the health score of the BGP peer. + type: integer + healthScoreReason: + description: Indicates the reason for the health score. + type: string + lastChange: + description: The time when the state of the resource last changed. + type: string + lastEvent: + description: Last event of the BGP peer. + type: string + lastState: + description: Last state of the BGP peer. + type: string + negotiatedHoldTime: + description: Hold time negotiated with the BGP peer. + type: integer + negotiatedKeepaliveInterval: + description: Keepalive interval negotiated with the BGP peer. + type: integer + operationalState: + description: Operational state of the BGP peer + type: string + peerAS: + description: Peer AS of the BGP peer. + type: integer + sessionState: + description: The state of the BGP session. + type: string + underMaintenance: + description: Indicates if the BGP peer is under maintenance. + type: boolean + type: object + type: object +served: true +storage: true +subresources: + status: {} diff --git a/static/resources/25.8.3/bgppeers.protocols.eda.nokia.com/v1alpha1.yaml b/static/resources/25.8.3/bgppeers.protocols.eda.nokia.com/v1alpha1.yaml new file mode 100644 index 0000000..0304ecb --- /dev/null +++ b/static/resources/25.8.3/bgppeers.protocols.eda.nokia.com/v1alpha1.yaml @@ -0,0 +1,304 @@ +additionalPrinterColumns: + - jsonPath: .status.sessionState + name: Session State + type: string + - jsonPath: .status.lastChange + name: Last Change + type: date + - jsonPath: .status.enabled + name: Enabled + type: boolean + - jsonPath: .status.operationalState + name: Operational State + type: string + - jsonPath: .status.peerAS + name: PeerAS + type: integer +deprecated: true +deprecationWarning: This version is deprecated and will no longer be supported in the next version. +name: v1alpha1 +schema: + openAPIV3Schema: + description: BGPPeer is the Schema for the bgppeers API + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + description: BGPPeer enables the configuration of BGP sessions. It allows specifying a description, an interface reference (either RoutedInterface or IrbInterface), and the peer IP address. The resource also supports dynamic neighbors, common BGP settings, and peer-specific configurations. + properties: + asPathOptions: + description: AS Path Options + properties: + allowOwnAS: + default: 0 + description: The maximum number of times the global AS number or a local AS number of the BGP instance can appear in any received AS_PATH before it is considered a loop and considered invalid. + maximum: 255 + minimum: 0 + type: integer + removePrivateAS: + description: Options for removing private AS numbers (2-byte and 4-byte) from the advertised AS path towards all peers. + properties: + ignorePeerAS: + default: false + description: If set to true then do not delete or replace a private AS number that is the same as the peer AS number. + type: boolean + leadingOnly: + default: false + description: If set to true then only delete or replace private AS numbers that appear before the first occurrence of a non-private ASN in the sequence of most recent ASNs in the AS path. + type: boolean + removePrivateASMode: + default: DISABLED + description: The method by which private AS numbers are removed from the advertised AS_PATH attribute. + enum: + - DISABLED + - REPLACE + - DELETE + type: string + required: + - ignorePeerAS + - leadingOnly + - removePrivateASMode + type: object + required: + - allowOwnAS + type: object + bfd: + description: Enable or disable Bi-forward Forwarding Detection (BFD) with fast failover. + type: boolean + client: + description: When set to true, all configured and dynamic BGP peers are considered RR clients. + type: boolean + clusterID: + description: Enables route reflect client and sets the cluster ID. + type: string + description: + description: Sets the description on the BGP peer + type: string + dynamicNeighbor: + default: false + description: When set to true the Interface is added to the dynamic-neighbor list for dynamic peering. + type: boolean + dynamicNeighborAllowedPeerAS: + description: The autonomous system numbers allowed from peers if dynamic peering is enabled. + items: + type: integer + type: array + exportPolicy: + description: Reference to a Policy CR that will be used to filter routes advertised to peers. + items: + type: string + type: array + grStaleRouteTime: + description: Enables Graceful Restart on the peer and sets the stale route time. + maximum: 3600 + minimum: 1 + type: integer + group: + description: Reference to a BGPGroup. When present this BGP peer will be added to the BGP group + type: string + importPolicy: + description: Reference to a Policy CR that will be used to filter routes received from peers. + items: + type: string + type: array + interface: + description: Reference to a RoutedInterface or IrbInterface resource whose IP will be used as a source IP for the BGP session. + type: string + interfaceKind: + description: InterfaceReference type defines whether the provided Reference is a RoutedInterface or IrbInterface. + enum: + - ROUTEDINTERFACE + - IRBINTERFACE + type: string + ipv4Unicast: + description: Parameters relating to the IPv4 unicast AFI/SAFI. + properties: + advertiseIPV6NextHops: + description: Enables advertisement of IPv4 Unicast routes with IPv6 next-hops to peers. + type: boolean + enabled: + description: Enables the IPv4 unicast AFISAFI. + type: boolean + maxReceivedRoutes: + description: Maximum number of IPv4 Unicast routes that will be accepted from the neighbor, counting routes accepted and rejected by import policies. + maximum: 4294967295 + minimum: 1 + type: integer + receiveIPV6NextHops: + description: Enables the advertisement of the RFC 5549 capability to receive IPv4 routes with IPv6 next-hops. + type: boolean + type: object + ipv6Unicast: + description: Parameters relating to the IPv6 unicast AFI/SAFI. + properties: + enabled: + description: Enables the IPv6 unicast AFISAFI + type: boolean + maxReceivedRoutes: + description: Maximum number of IPv6 Unicast routes that will be accepted from the neighbor, counting routes accepted and rejected by import policies. + maximum: 4294967295 + minimum: 1 + type: integer + type: object + keychain: + description: Reference to a Keychain resource that will be used for authentication with the BGP peer. + type: string + localAS: + description: The local autonomous system number advertised to peers. + properties: + autonomousSystem: + description: Local Autonomous System number. + maximum: 4294967295 + minimum: 1 + type: integer + prependGlobalAS: + description: When set to true, the global ASN value is prepended to the AS path in outbound routes towards each BGP peer. + type: boolean + prependLocalAS: + description: When set to true, the local AS value is prepended to the AS path of inbound routes from each EBGP peer. + type: boolean + required: + - autonomousSystem + type: object + localPreference: + description: Local Preference attribute added to received routes from the BGP peers, also sets local preference for generated routes. + maximum: 4294967295 + minimum: 0 + type: integer + multiHopMaxHop: + description: Enable multihop for eBGP peers and sets the maximum number of hops allowed. + maximum: 255 + minimum: 1 + type: integer + nextHopSelf: + description: When set to true, the next-hop in all IPv4-unicast, IPv6-unicast and EVPN BGP routes advertised to the peer is set to the local-address. + type: boolean + node: + description: Node on which to configure the BGP peer. This node must be one of the nodes on which the IRBInterface is configured. When left blank or if the node is not part of the IRBInterface, the peer will not be deployed. Ignored for RoutedInterfaces. + type: string + peerAS: + description: The autonomous system number expected from peers. + properties: + autonomousSystem: + description: Local Autonomous System number. + maximum: 4294967295 + minimum: 1 + type: integer + required: + - autonomousSystem + type: object + peerIP: + description: Peer IP to which the peering session will be established. + type: string + sendCommunityLarge: + description: When false, all large (12 byte) BGP communities from all outbound routes advertised to the peer are stripped. + type: boolean + sendCommunityStandard: + description: When false, all standard (4 byte) communities from all outbound routes advertised to the peer are stripped. + type: boolean + sendDefaultRoute: + description: Options for controlling the generation of default routes towards BGP peers. + properties: + addressFamily: + description: Enables the sending of a synthetically generated default IPv4 or IPV6 route to each peer. + items: + enum: + - IPV4-UNICAST + - IPV6-UNICAST + type: string + type: array + exportPolicy: + description: Reference to a Policy that should be applied to the advertised default routes, in order to set their attributes to non-default values. + type: string + required: + - addressFamily + type: object + timers: + description: Timer configurations + properties: + connectRetry: + description: The time interval in seconds between successive attempts to establish a session with a peer. + maximum: 65535 + minimum: 1 + type: integer + holdTime: + description: The hold-time interval in seconds that the router proposes to the peer in its OPEN message. + maximum: 65535 + minimum: 0 + type: integer + keepAlive: + description: The interval in seconds between successive keepalive messages sent to the peer. + maximum: 21845 + minimum: 0 + type: integer + minimumAdvertisementInterval: + description: The value assigned to the MinRouteAdvertisementIntervalTimer of RFC 4271, for both EBGP and IBGP sessions. + maximum: 255 + minimum: 1 + type: integer + type: object + required: + - group + - interface + - interfaceKind + type: object + status: + description: BGPPeerStatus defines the observed state of BGPPeer + properties: + enabled: + description: Indicated whether the BGP Peer is administratively enabled. + type: boolean + health: + description: Indicates the health score of the BGP peer. + type: integer + healthScoreReason: + description: Indicates the reason for the health score. + type: string + lastChange: + description: The time when the state of the resource last changed. + type: string + lastEvent: + description: Last event of the BGP peer. + type: string + lastState: + description: Last state of the BGP peer. + type: string + negotiatedHoldTime: + description: Hold time negotiated with the BGP peer. + type: integer + negotiatedKeepaliveInterval: + description: Keepalive interval negotiated with the BGP peer. + type: integer + operationalState: + description: Operational state of the BGP peer + type: string + peerAS: + description: Peer AS of the BGP peer. + type: integer + sessionState: + description: The state of the BGP session. + type: string + underMaintenance: + description: Indicates if the BGP peer is under maintenance. + type: boolean + type: object + type: object +served: true +storage: false +subresources: + status: {} diff --git a/static/resources/25.8.3/bgppeerstates.protocols.eda.nokia.com/v1.yaml b/static/resources/25.8.3/bgppeerstates.protocols.eda.nokia.com/v1.yaml new file mode 100644 index 0000000..f9ac91d --- /dev/null +++ b/static/resources/25.8.3/bgppeerstates.protocols.eda.nokia.com/v1.yaml @@ -0,0 +1,75 @@ +name: v1 +schema: + openAPIV3Schema: + description: BGPPeerState is the Schema for the bgppeerstates API + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + description: BGPPeerStateSpec defines the desired state of BGPPeerState + properties: + afiSAFI: + description: List of configured AFI-SAFI on the BGP peer + items: + type: string + type: array + defaultNetworkInstance: + description: Denotes if the router is a DefaultRouter or Router + type: boolean + dynamicNeighbor: + default: false + description: When set to true the PeerDefaultInterface is added to the dynamic-neighbor list for dynamic peering. + type: boolean + group: + description: Reference to a BGPGroup + type: string + networkInstanceName: + description: The name of the network-instance or VPRN in which the BGP peer is configured + type: string + node: + description: The Node on which the BGP peer configuration resides + type: string + nodeInterface: + description: Node interface of the default interface which is configured to peer as a dynamic neighbor + type: string + operatingSystem: + description: Operating System of the Node + type: string + peerIP: + description: The IP of the BGP peer + type: string + router: + description: Router to which the BGP peer is attached + type: string + subInterfaceIndex: + description: Sub interface index of the default interface which is configured to peer as a dynamic neighbor + type: integer + required: + - defaultNetworkInstance + - dynamicNeighbor + - networkInstanceName + - router + type: object + status: + description: BGPPeerStateStatus defines the observed state of BGPPeerState + type: object + type: object +served: true +storage: true +subresources: + status: {} diff --git a/static/resources/25.8.3/bgppeerstates.protocols.eda.nokia.com/v1alpha1.yaml b/static/resources/25.8.3/bgppeerstates.protocols.eda.nokia.com/v1alpha1.yaml new file mode 100644 index 0000000..7252857 --- /dev/null +++ b/static/resources/25.8.3/bgppeerstates.protocols.eda.nokia.com/v1alpha1.yaml @@ -0,0 +1,77 @@ +deprecated: true +deprecationWarning: This version is deprecated and will no longer be supported in the next version. +name: v1alpha1 +schema: + openAPIV3Schema: + description: BGPPeerState is the Schema for the bgppeerstates API + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + description: BGPPeerStateSpec defines the desired state of BGPPeerState + properties: + afiSAFI: + description: List of configured AFI-SAFI on the BGP peer + items: + type: string + type: array + defaultNetworkInstance: + description: Denotes if the router is a DefaultRouter or Router + type: boolean + dynamicNeighbor: + default: false + description: When set to true the PeerDefaultInterface is added to the dynamic-neighbor list for dynamic peering. + type: boolean + group: + description: Reference to a BGPGroup + type: string + networkInstanceName: + description: The name of the network-instance or VPRN in which the BGP peer is configured + type: string + node: + description: The Node on which the BGP peer configuration resides + type: string + nodeInterface: + description: Node interface of the default interface which is configured to peer as a dynamic neighbor + type: string + operatingSystem: + description: Operating System of the Node + type: string + peerIP: + description: The IP of the BGP peer + type: string + router: + description: Router to which the BGP peer is attached + type: string + subInterfaceIndex: + description: Sub interface index of the default interface which is configured to peer as a dynamic neighbor + type: integer + required: + - defaultNetworkInstance + - dynamicNeighbor + - networkInstanceName + - router + type: object + status: + description: BGPPeerStateStatus defines the observed state of BGPPeerState + type: object + type: object +served: true +storage: false +subresources: + status: {} diff --git a/static/resources/25.8.3/breakouts.interfaces.eda.nokia.com/v1alpha1.yaml b/static/resources/25.8.3/breakouts.interfaces.eda.nokia.com/v1alpha1.yaml new file mode 100644 index 0000000..8d7f8d9 --- /dev/null +++ b/static/resources/25.8.3/breakouts.interfaces.eda.nokia.com/v1alpha1.yaml @@ -0,0 +1,70 @@ +name: v1alpha1 +schema: + openAPIV3Schema: + description: Breakout is the Schema for the breakouts API + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + description: Breakout allows for the configuration of interface breakouts on specified Nodes. This resource specifies the Nodes, parent Interfaces, the number of breakout channels, and the speed of each channel. + properties: + channels: + description: The number of breakout channels to create. + maximum: 8 + minimum: 1 + type: integer + interface: + description: A list of normalized parent interface/port. + items: + type: string + type: array + node: + description: Reference to a list of TopoNodes where the parent interfaces are to be broken out. + items: + type: string + type: array + nodeSelector: + description: TopoNode where the parent interfaces are to be broken out. + items: + type: string + type: array + speed: + description: The speed of each breakout channel. + enum: + - 800G + - 400G + - 200G + - 100G + - 50G + - 40G + - 25G + - 10G + type: string + required: + - channels + - node + - speed + type: object + status: + description: BreakoutStatus defines the observed state of Breakout + type: object + type: object +served: true +storage: true +subresources: + status: {} diff --git a/static/resources/25.8.3/bridgedomaindeployments.services.eda.nokia.com/v1.yaml b/static/resources/25.8.3/bridgedomaindeployments.services.eda.nokia.com/v1.yaml new file mode 100644 index 0000000..9abbe1a --- /dev/null +++ b/static/resources/25.8.3/bridgedomaindeployments.services.eda.nokia.com/v1.yaml @@ -0,0 +1,51 @@ +name: v1 +schema: + openAPIV3Schema: + description: BridgeDomainDeployment is the Schema for the bridgedomaindeployments API + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + description: BridgeDomainDeploymentSpec defines the desired state of BridgeDomainDeployment + properties: + bridgeDomain: + description: Reference to a BridgeDomain + type: string + node: + description: Reference to a Node on which to push the BridgeDomain + type: string + type: + default: DEFAULT + description: Specifies the Type of BridgeDomain to be deployed + enum: + - SIMPLE + - DEFAULT + type: string + required: + - bridgeDomain + - node + - type + type: object + status: + description: BridgeDomainDeploymentStatus defines the observed state of BridgeDomainDeployment + type: object + type: object +served: true +storage: true +subresources: + status: {} diff --git a/static/resources/25.8.3/bridgedomaindeployments.services.eda.nokia.com/v1alpha1.yaml b/static/resources/25.8.3/bridgedomaindeployments.services.eda.nokia.com/v1alpha1.yaml new file mode 100644 index 0000000..88eef0a --- /dev/null +++ b/static/resources/25.8.3/bridgedomaindeployments.services.eda.nokia.com/v1alpha1.yaml @@ -0,0 +1,53 @@ +deprecated: true +deprecationWarning: This version is deprecated and will no longer be supported in the next version. +name: v1alpha1 +schema: + openAPIV3Schema: + description: BridgeDomainDeployment is the Schema for the bridgedomaindeployments API + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + description: BridgeDomainDeploymentSpec defines the desired state of BridgeDomainDeployment + properties: + bridgeDomain: + description: Reference to a BridgeDomain + type: string + node: + description: Reference to a Node on which to push the BridgeDomain + type: string + type: + default: DEFAULT + description: Specifies the Type of BridgeDomain to be deployed + enum: + - SIMPLE + - DEFAULT + type: string + required: + - bridgeDomain + - node + - type + type: object + status: + description: BridgeDomainDeploymentStatus defines the observed state of BridgeDomainDeployment + type: object + type: object +served: true +storage: false +subresources: + status: {} diff --git a/static/resources/25.8.3/bridgedomains.services.eda.nokia.com/v1.yaml b/static/resources/25.8.3/bridgedomains.services.eda.nokia.com/v1.yaml new file mode 100644 index 0000000..ae00e98 --- /dev/null +++ b/static/resources/25.8.3/bridgedomains.services.eda.nokia.com/v1.yaml @@ -0,0 +1,251 @@ +additionalPrinterColumns: + - jsonPath: .status.vni + name: VNI + type: string + - jsonPath: .status.evi + name: EVI + type: string + - jsonPath: .status.importTarget + name: Import Target + type: string + - jsonPath: .status.exportTarget + name: Export Target + type: string + - jsonPath: .status.numSubInterfacesOperDown + name: OperDown SubIf + type: string + - jsonPath: .status.numSubInterfaces + name: Total SubIf + type: string + - jsonPath: .status.operationalState + name: OperationalState + type: string + - jsonPath: .status.lastChange + name: LastChange + type: string +name: v1 +schema: + openAPIV3Schema: + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + description: The BridgeDomain enables the configuration and management of Layer 2 virtual networks. It includes settings for VNI, EVI, route targets for import and export, and tunnel index allocation. Additionally, the specification allows for advanced features such as MAC address table limits, aging, Proxy ARP and detection of MAC and IP duplication. + properties: + description: + description: The description of the BridgeDomain. + type: string + evi: + description: EVI to use for this BridgeDomain, can be optionally left blank to have it automatically allocated using the EVI Pool. + maximum: 65535 + minimum: 1 + type: integer + eviPool: + default: evi-pool + description: Reference to an EVI pool to use for allocations if EVI is left blank. + type: string + exportTarget: + description: Export route target in 'target:N:N' format, if not specified, the default value taken as "target:1:". + pattern: ^target.*$ + type: string + importTarget: + description: Import route target in 'target:N:N' format, if not specified, the default value taken as "target:1:". + pattern: ^target.*$ + type: string + l2proxyARPND: + description: Enables / Disabled Proxy ARP / Proxy ND. + properties: + dynamicLearning: + properties: + ageTime: + description: Aging timer value for the proxy entries in seconds. If not set, this indicates that the entries are never flushed. + maximum: 86400 + minimum: 60 + type: integer + enabled: + default: false + description: Enables or disables Dynamic Learning. + type: boolean + sendRefresh: + description: The interval determines the frequency at which the system generates three ARP Requests or Neighbor Solicitations with the intent to refresh the proxy entry. The refresh is sent within the age-time window. + maximum: 86400 + minimum: 120 + type: integer + type: object + ipDuplication: + properties: + enabled: + default: false + description: Enables or disables IP Duplication. + type: boolean + holdDownTime: + default: 9 + description: Time to wait in minutes from the moment an IP is declared duplicate to the time the IP is removed from the proxy ARP/ND table. + maximum: 60 + minimum: 2 + type: integer + monitoringWindow: + default: 3 + description: Monitoring window for detecting duplication on a given IP address in the proxy ARP/ND table. + maximum: 15 + minimum: 1 + type: integer + numMoves: + default: 5 + description: Number of moves in the proxy ARP/ND table that an IP is allowed within the monitoring-window. + maximum: 10 + minimum: 3 + type: integer + type: object + proxyARP: + default: false + description: Enables proxy ARP. + type: boolean + proxyND: + default: false + description: Enables proxy ND. + type: boolean + tableSize: + default: 250 + description: Maximum number of entries allowed in the proxy table of the bridge domain. + maximum: 8192 + minimum: 1 + type: integer + type: object + macAging: + default: 300 + description: Configurable aging time for dynamically learned mac addresses. + format: int32 + maximum: 86400 + minimum: 60 + type: integer + macDuplicationDetection: + description: Enable or disable MAC duplication detection and resolution mechanisms. + properties: + action: + default: StopLearning + description: Action to take on the subinterface upon detecting at least one mac addresses as duplicate on the subinterface. + enum: + - Blackhole + - OperDown + - StopLearning + type: string + enabled: + default: false + description: Enables or disables Mac Duplication Detection. + type: boolean + holdDownTime: + default: 9 + description: Time to wait in minutes from the moment a mac is declared duplicate to the mac is flushed from the bridge table. + maximum: 60 + minimum: 2 + type: integer + monitoringWindow: + default: 3 + description: Monitoring window in minutes for detecting duplication on a given mac address. + maximum: 15 + minimum: 1 + type: integer + numMoves: + default: 5 + description: Number of moves a mac is allowed within the monitoring-window, before it is declared duplicate. + minimum: 3 + type: integer + type: object + macLearning: + default: true + description: Enable MAC learning for this BridgeDomain. + type: boolean + macLimit: + description: Sets the maximum number of MAC entries accepted in the bridge table. + format: int32 + minimum: 1 + type: integer + tunnelIndexPool: + default: tunnel-index-pool + description: Reference to a tunnel index pool to use for allocations. + type: string + type: + default: EVPNVXLAN + description: Select the type of BridgeDomain. Simple doesn't include any overlay control plane or dataplane properties (EVPN/VXLAN). EVPNVXLAN includes the properties needed to provision this BridgeDomain over an IP Fabric. + enum: + - SIMPLE + - EVPNVXLAN + type: string + vni: + description: VNI to use for this BridgeDomain, can be optionally left blank to have it allocated using the VNI Pool. + maximum: 16777215 + minimum: 1 + type: integer + vniPool: + default: vni-pool + description: Reference to a VNI pool to use for allocations if VNI is left blank. + type: string + type: object + status: + description: BridgeDomainStatus defines the observed state of BridgeDomain + properties: + evi: + description: EVI in use for this bridge domain. + type: integer + exportTarget: + description: Export route target for this bridge domain. + type: string + health: + description: Indicates the health score of the VNET. + type: integer + healthScoreReason: + description: Indicates the reason for the health score. + type: string + importTarget: + description: Import route target for this bridge domain. + type: string + lastChange: + description: The time when the state of the resource last changed. + type: string + nodes: + description: Nodes which have the BridgeDomain configured (min 1 sub-interface). + items: + type: string + type: array + numNodes: + description: Number of nodes which have the BridgeDomain configured (min 1 sub-interface). + type: integer + numSubInterfaces: + description: Number of sub-interfaces attached to the BridgeDomain. + format: int32 + type: integer + numSubInterfacesOperDown: + description: Number of oper-down sub-interfaces attached to the BridgeDomain. + format: int32 + type: integer + operationalState: + description: Operational state of the VNET. + type: string + tunnelIndex: + description: Vxlan tunnel index in use. + type: integer + vni: + description: VNI in use for this bridge domain. + type: integer + type: object + type: object +served: true +storage: true +subresources: + status: {} diff --git a/static/resources/25.8.3/bridgedomains.services.eda.nokia.com/v1alpha1.yaml b/static/resources/25.8.3/bridgedomains.services.eda.nokia.com/v1alpha1.yaml new file mode 100644 index 0000000..146c479 --- /dev/null +++ b/static/resources/25.8.3/bridgedomains.services.eda.nokia.com/v1alpha1.yaml @@ -0,0 +1,248 @@ +additionalPrinterColumns: + - jsonPath: .status.vni + name: VNI + type: string + - jsonPath: .status.evi + name: EVI + type: string + - jsonPath: .status.importTarget + name: Import Target + type: string + - jsonPath: .status.exportTarget + name: Export Target + type: string + - jsonPath: .status.numSubInterfacesOperDown + name: OperDown SubIf + type: string + - jsonPath: .status.numSubInterfaces + name: Total SubIf + type: string + - jsonPath: .status.operationalState + name: OperationalState + type: string + - jsonPath: .status.lastChange + name: LastChange + type: string +deprecated: true +deprecationWarning: This version is deprecated and will no longer be supported in the next version. +name: v1alpha1 +schema: + openAPIV3Schema: + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + description: The BridgeDomain enables the configuration and management of Layer 2 virtual networks. It includes settings for VNI, EVI, route targets for import and export, and tunnel index allocation. Additionally, the specification allows for advanced features such as MAC address table limits, aging, Proxy ARP and detection of MAC and IP duplication. + properties: + description: + description: The description of the BridgeDomain. + type: string + evi: + description: EVI to use for this BridgeDomain, can be optionally left blank to have it automatically allocated using the EVI Pool. + maximum: 65535 + minimum: 1 + type: integer + eviPool: + default: evi-pool + description: Reference to an EVI pool to use for allocations if EVI is left blank. + type: string + exportTarget: + description: Export route target in 'target:N:N' format, if not specified, the default value taken as "target:1:". + pattern: ^target.*$ + type: string + importTarget: + description: Import route target in 'target:N:N' format, if not specified, the default value taken as "target:1:". + pattern: ^target.*$ + type: string + l2proxyARPND: + description: Enables / Disabled Proxy ARP / Proxy ND. + properties: + dynamicLearning: + properties: + ageTime: + description: Aging timer value for the proxy entries in seconds. If not set, this indicates that the entries are never flushed. + maximum: 86400 + minimum: 60 + type: integer + enabled: + default: false + description: Enables or disables Dynamic Learning. + type: boolean + sendRefresh: + description: The interval determines the frequency at which the system generates three ARP Requests or Neighbor Solicitations with the intent to refresh the proxy entry. The refresh is sent within the age-time window. + maximum: 86400 + minimum: 120 + type: integer + type: object + ipDuplication: + properties: + enabled: + default: false + description: Enables or disables IP Duplication. + type: boolean + holdDownTime: + default: 9 + description: Time to wait in minutes from the moment an IP is declared duplicate to the time the IP is removed from the proxy ARP/ND table. + maximum: 60 + minimum: 2 + type: integer + monitoringWindow: + default: 3 + description: Monitoring window for detecting duplication on a given IP address in the proxy ARP/ND table. + maximum: 15 + minimum: 1 + type: integer + numMoves: + default: 5 + description: Number of moves in the proxy ARP/ND table that an IP is allowed within the monitoring-window. + maximum: 10 + minimum: 3 + type: integer + type: object + proxyARP: + default: false + description: Enables proxy ARP. + type: boolean + proxyND: + default: false + description: Enables proxy ND. + type: boolean + tableSize: + default: 250 + description: Maximum number of entries allowed in the proxy table of the bridge domain. + maximum: 8192 + minimum: 1 + type: integer + type: object + macAging: + default: 300 + description: Configurable aging time for dynamically learned mac addresses. + format: int32 + maximum: 86400 + minimum: 60 + type: integer + macDuplicationDetection: + description: Enable or disable MAC duplication detection and resolution mechanisms. + properties: + action: + default: StopLearning + description: Action to take on the subinterface upon detecting at least one mac addresses as duplicate on the subinterface. + enum: + - Blackhole + - OperDown + - StopLearning + type: string + enabled: + default: false + description: Enables or disables Mac Duplication Detection. + type: boolean + holdDownTime: + default: 9 + description: Time to wait in minutes from the moment a mac is declared duplicate to the mac is flushed from the bridge table. + maximum: 60 + minimum: 2 + type: integer + monitoringWindow: + default: 3 + description: Monitoring window in minutes for detecting duplication on a given mac address. + maximum: 15 + minimum: 1 + type: integer + numMoves: + default: 5 + description: Number of moves a mac is allowed within the monitoring-window, before it is declared duplicate. + minimum: 3 + type: integer + type: object + macLimit: + description: Sets the maximum number of MAC entries accepted in the bridge table. + format: int32 + type: integer + tunnelIndexPool: + default: tunnel-index-pool + description: Reference to a tunnel index pool to use for allocations. + type: string + type: + default: EVPNVXLAN + description: Select the type of BridgeDomain. Simple doesn't include any overlay control plane or dataplane properties (EVPN/VXLAN). EVPNVXLAN includes the properties needed to provision this BridgeDomain over an IP Fabric. + enum: + - SIMPLE + - EVPNVXLAN + type: string + vni: + description: VNI to use for this BridgeDomain, can be optionally left blank to have it allocated using the VNI Pool. + maximum: 16777215 + minimum: 1 + type: integer + vniPool: + default: vni-pool + description: Reference to a VNI pool to use for allocations if VNI is left blank. + type: string + type: object + status: + description: BridgeDomainStatus defines the observed state of BridgeDomain + properties: + evi: + description: EVI in use for this bridge domain. + type: integer + exportTarget: + description: Export route target for this bridge domain. + type: string + health: + description: Indicates the health score of the VNET. + type: integer + healthScoreReason: + description: Indicates the reason for the health score. + type: string + importTarget: + description: Import route target for this bridge domain. + type: string + lastChange: + description: The time when the state of the resource last changed. + type: string + nodes: + description: Nodes which have the BridgeDomain configured (min 1 sub-interface). + items: + type: string + type: array + numNodes: + description: Number of nodes which have the BridgeDomain configured (min 1 sub-interface). + type: integer + numSubInterfaces: + description: Number of sub-interfaces attached to the BridgeDomain. + format: int32 + type: integer + numSubInterfacesOperDown: + description: Number of oper-down sub-interfaces attached to the BridgeDomain. + format: int32 + type: integer + operationalState: + description: Operational state of the VNET. + type: string + tunnelIndex: + description: Vxlan tunnel index in use. + type: integer + vni: + description: VNI in use for this bridge domain. + type: integer + type: object + type: object +served: true +storage: false +subresources: + status: {} diff --git a/static/resources/25.8.3/bridgedomainstates.services.eda.nokia.com/v1.yaml b/static/resources/25.8.3/bridgedomainstates.services.eda.nokia.com/v1.yaml new file mode 100644 index 0000000..95f3755 --- /dev/null +++ b/static/resources/25.8.3/bridgedomainstates.services.eda.nokia.com/v1.yaml @@ -0,0 +1,55 @@ +name: v1 +schema: + openAPIV3Schema: + description: BridgeDomainState is the Schema for the bridgedomainstates API + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + description: BridgeDomainStateSpec defines the desired state of BridgeDomainState + properties: + evi: + description: EVI in use for this BridgeDomain + maximum: 65535 + minimum: 1 + type: integer + exportTarget: + description: Export route target for this BridgeDomain, in the format 'target:N:N' + pattern: ^target.*$ + type: string + importTarget: + description: Import route target for this BridgeDomain, in the format 'target:N:N' + pattern: ^target.*$ + type: string + tunnelIndex: + description: Vxlan tunnel index in use + type: integer + vni: + description: VNI in use for this BridgeDomain + maximum: 16777215 + minimum: 1 + type: integer + type: object + status: + description: BridgeDomainStateStatus defines the observed state of BridgeDomainState + type: object + type: object +served: true +storage: true +subresources: + status: {} diff --git a/static/resources/25.8.3/bridgedomainstates.services.eda.nokia.com/v1alpha1.yaml b/static/resources/25.8.3/bridgedomainstates.services.eda.nokia.com/v1alpha1.yaml new file mode 100644 index 0000000..866447f --- /dev/null +++ b/static/resources/25.8.3/bridgedomainstates.services.eda.nokia.com/v1alpha1.yaml @@ -0,0 +1,57 @@ +deprecated: true +deprecationWarning: This version is deprecated and will no longer be supported in the next version. +name: v1alpha1 +schema: + openAPIV3Schema: + description: BridgeDomainState is the Schema for the bridgedomainstates API + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + description: BridgeDomainStateSpec defines the desired state of BridgeDomainState + properties: + evi: + description: EVI in use for this BridgeDomain + maximum: 65535 + minimum: 1 + type: integer + exportTarget: + description: Export route target for this BridgeDomain, in the format 'target:N:N' + pattern: ^target.*$ + type: string + importTarget: + description: Import route target for this BridgeDomain, in the format 'target:N:N' + pattern: ^target.*$ + type: string + tunnelIndex: + description: Vxlan tunnel index in use + type: integer + vni: + description: VNI in use for this BridgeDomain + maximum: 16777215 + minimum: 1 + type: integer + type: object + status: + description: BridgeDomainStateStatus defines the observed state of BridgeDomainState + type: object + type: object +served: true +storage: false +subresources: + status: {} diff --git a/static/resources/25.8.3/bridgeinterfaces.services.eda.nokia.com/v1.yaml b/static/resources/25.8.3/bridgeinterfaces.services.eda.nokia.com/v1.yaml new file mode 100644 index 0000000..74b0c42 --- /dev/null +++ b/static/resources/25.8.3/bridgeinterfaces.services.eda.nokia.com/v1.yaml @@ -0,0 +1,198 @@ +additionalPrinterColumns: + - jsonPath: .status.operationalState + name: OperationalState + type: string + - jsonPath: .status.lastChange + name: LastChange + type: string +name: v1 +schema: + openAPIV3Schema: + description: BridgeInterface is the Schema for the bridgeinterfaces API + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + description: The BridgeInterface enables the attachment of network interfaces to a Bridge Domain. It includes settings for VLAN ID allocation, interface attachment, and actions on ingress and egress traffic. The specification supports integration with other network resources, such as Bridge Domains and Interfaces, and provides advanced features like MAC Duplication Detection with configurable actions. + properties: + bridgeDomain: + description: Reference to a BridgeDomain in which to attach the BridgeInterface. + type: string + description: + description: The description of the BridgeInterface. + type: string + egress: + description: Manages actions on traffic at Egress. + properties: + filters: + description: List of Filter references to use at egress. + items: + type: string + type: array + qosPolicy: + description: List of QoS Egress policy references to use at egress. + items: + type: string + type: array + type: object + ingress: + description: Manages actions on traffic at Ingress. + properties: + filters: + description: List of Filter references to use at ingress. + items: + type: string + type: array + qosPolicy: + description: List of QoS Ingress policy references to use at ingress. + items: + type: string + type: array + type: object + interface: + description: Reference to an Interface resource to attach this BridgeInterface. + type: string + l2MTU: + description: L2 MTU specifies the maximum sized Ethernet frame that can be transmitted on the subinterface. If a frame exceeds this size it is discarded. If the l2-mtu of the subinterface exceeds the port-mtu of the associated interface, the subinterface will remain operationally down. + maximum: 9500 + minimum: 1450 + type: integer + macDuplicationDetectionAction: + description: Override for Mac Duplication Detection action if enabled in the associated BridgeDomain. + enum: + - Blackhole + - OperDown + - StopLearning + - UseBridgeDomainAction + type: string + splitHorizonGroup: + description: Split Horizon Group to be used for this BridgeInterface. The subinterface within this BridgeInterface will be a member of this Split Horizon Group. + type: string + uplink: + description: The Uplink between your access breakout switch and your leaf switch. + properties: + egress: + description: Manages actions on traffic at Egress of the Local enpoint of the Uplink. + properties: + filters: + description: List of Filter references to use at egress. + items: + type: string + type: array + qosPolicy: + description: List of QoS Egress policy references to use at egress. + items: + type: string + type: array + type: object + ingress: + description: Manages actions on traffic at Ingress of the Local enpoint of the Uplink. + properties: + filters: + description: List of Filter references to use at ingress. + items: + type: string + type: array + qosPolicy: + description: List of QoS Ingress policy references to use at ingress. + items: + type: string + type: array + type: object + uplinkSelector: + description: Selects TopoLinks which connect a leaf switch to a breakout switch. This is the uplink between your access breakout switch and your leaf switch. There can only be a single TopoLink between the access breakout switch and the leaf switch, if more than one TopoLink is present between two devices the transaction will fail. + items: + type: string + type: array + uplinkVLANID: + default: pool + description: The VLAN ID to be utilized to isolate traffic from the VLAN on the access breakout switch to the leaf switch on the selected uplink TopoLink. + type: string + uplinkVLANPool: + description: A VLAN from this pool will be utilized to isolate traffic from the VLAN on the access breakout switch to the leaf switch on the selected uplink TopoLink. + type: string + type: object + vlanID: + description: Single value between 1-4094 support, ranges supported in the format x-y,x-y, or the special keyword null, any, untagged or pool for auto allocation. + type: string + required: + - bridgeDomain + - interface + - vlanID + type: object + status: + properties: + health: + description: Indicates the health score of the BridgeInterface. + type: integer + healthScoreReason: + description: Indicates the reason for the health score. + type: string + lastChange: + description: The time when the state of the resource last changed. + type: string + operationalState: + description: Operational state of the BridgeInterface. + type: string + subInterfaces: + description: Sub-interfaces status within the BridgeInterface. + items: + properties: + enabled: + description: The administrative status of the SubInterface. + type: boolean + interface: + description: Normalized interface name. + type: string + interfaceResource: + description: Eda interface resource. + type: string + lastChange: + description: Indicates when this SubInterface last changed state. + type: string + node: + description: Reference to Node object. + type: string + nodeInterface: + description: Node specific interface name. + type: string + operatingSystem: + description: Operating System of the Node. + type: string + operationalState: + description: Indicates the current operational state of the SubInterface. + type: string + subInterfaceIndex: + description: Index allocated to the subinterface on the associated interface for the given VLAN. + type: integer + vlanID: + description: vlan assigned to this subinterface. + type: string + required: + - interface + - interfaceResource + - node + - nodeInterface + type: object + type: array + type: object + type: object +served: true +storage: true +subresources: + status: {} diff --git a/static/resources/25.8.3/bridgeinterfaces.services.eda.nokia.com/v1alpha1.yaml b/static/resources/25.8.3/bridgeinterfaces.services.eda.nokia.com/v1alpha1.yaml new file mode 100644 index 0000000..b2365df --- /dev/null +++ b/static/resources/25.8.3/bridgeinterfaces.services.eda.nokia.com/v1alpha1.yaml @@ -0,0 +1,200 @@ +additionalPrinterColumns: + - jsonPath: .status.operationalState + name: OperationalState + type: string + - jsonPath: .status.lastChange + name: LastChange + type: string +deprecated: true +deprecationWarning: This version is deprecated and will no longer be supported in the next version. +name: v1alpha1 +schema: + openAPIV3Schema: + description: BridgeInterface is the Schema for the bridgeinterfaces API + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + description: The BridgeInterface enables the attachment of network interfaces to a Bridge Domain. It includes settings for VLAN ID allocation, interface attachment, and actions on ingress and egress traffic. The specification supports integration with other network resources, such as Bridge Domains and Interfaces, and provides advanced features like MAC Duplication Detection with configurable actions. + properties: + bridgeDomain: + description: Reference to a BridgeDomain in which to attach the BridgeInterface. + type: string + description: + description: The description of the BridgeInterface. + type: string + egress: + description: Manages actions on traffic at Egress. + properties: + filters: + description: List of Filter references to use at egress. + items: + type: string + type: array + qosPolicy: + description: List of QoS Egress policy references to use at egress. + items: + type: string + type: array + type: object + ingress: + description: Manages actions on traffic at Ingress. + properties: + filters: + description: List of Filter references to use at ingress. + items: + type: string + type: array + qosPolicy: + description: List of QoS Ingress policy references to use at ingress. + items: + type: string + type: array + type: object + interface: + description: Reference to an Interface resource to attach this BridgeInterface. + type: string + l2MTU: + description: L2 MTU specifies the maximum sized Ethernet frame that can be transmitted on the subinterface. If a frame exceeds this size it is discarded. If the l2-mtu of the subinterface exceeds the port-mtu of the associated interface, the subinterface will remain operationally down. + maximum: 9500 + minimum: 1450 + type: integer + macDuplicationDetectionAction: + description: Override for Mac Duplication Detection action if enabled in the associated BridgeDomain. + enum: + - Blackhole + - OperDown + - StopLearning + - UseBridgeDomainAction + type: string + splitHorizonGroup: + description: Split Horizon Group to be used for this BridgeInterface. The subinterface within this BridgeInterface will be a member of this Split Horizon Group. + type: string + uplink: + description: The Uplink between your access breakout switch and your leaf switch. + properties: + egress: + description: Manages actions on traffic at Egress of the Local enpoint of the Uplink. + properties: + filters: + description: List of Filter references to use at egress. + items: + type: string + type: array + qosPolicy: + description: List of QoS Egress policy references to use at egress. + items: + type: string + type: array + type: object + ingress: + description: Manages actions on traffic at Ingress of the Local enpoint of the Uplink. + properties: + filters: + description: List of Filter references to use at ingress. + items: + type: string + type: array + qosPolicy: + description: List of QoS Ingress policy references to use at ingress. + items: + type: string + type: array + type: object + uplinkSelector: + description: Selects TopoLinks which connect a leaf switch to a breakout switch. This is the uplink between your access breakout switch and your leaf switch. There can only be a single TopoLink between the access breakout switch and the leaf switch, if more than one TopoLink is present between two devices the transaction will fail. + items: + type: string + type: array + uplinkVLANID: + default: pool + description: The VLAN ID to be utilized to isolate traffic from the VLAN on the access breakout switch to the leaf switch on the selected uplink TopoLink. + type: string + uplinkVLANPool: + description: A VLAN from this pool will be utilized to isolate traffic from the VLAN on the access breakout switch to the leaf switch on the selected uplink TopoLink. + type: string + type: object + vlanID: + description: Single value between 1-4094 support, ranges supported in the format x-y,x-y, or the special keyword null, any, untagged or pool for auto allocation. + type: string + required: + - bridgeDomain + - interface + - vlanID + type: object + status: + properties: + health: + description: Indicates the health score of the BridgeInterface. + type: integer + healthScoreReason: + description: Indicates the reason for the health score. + type: string + lastChange: + description: The time when the state of the resource last changed. + type: string + operationalState: + description: Operational state of the BridgeInterface. + type: string + subInterfaces: + description: Sub-interfaces status within the BridgeInterface. + items: + properties: + enabled: + description: The administrative status of the SubInterface. + type: boolean + interface: + description: Normalized interface name. + type: string + interfaceResource: + description: Eda interface resource. + type: string + lastChange: + description: Indicates when this SubInterface last changed state. + type: string + node: + description: Reference to Node object. + type: string + nodeInterface: + description: Node specific interface name. + type: string + operatingSystem: + description: Operating System of the Node. + type: string + operationalState: + description: Indicates the current operational state of the SubInterface. + type: string + subInterfaceIndex: + description: Index allocated to the subinterface on the associated interface for the given VLAN. + type: integer + vlanID: + description: vlan assigned to this subinterface. + type: string + required: + - interface + - interfaceResource + - node + - nodeInterface + type: object + type: array + type: object + type: object +served: true +storage: false +subresources: + status: {} diff --git a/static/resources/25.8.3/bridgeinterfacestates.services.eda.nokia.com/v1.yaml b/static/resources/25.8.3/bridgeinterfacestates.services.eda.nokia.com/v1.yaml new file mode 100644 index 0000000..7d5f764 --- /dev/null +++ b/static/resources/25.8.3/bridgeinterfacestates.services.eda.nokia.com/v1.yaml @@ -0,0 +1,73 @@ +name: v1 +schema: + openAPIV3Schema: + description: BridgeInterfaceState is the Schema for the bridgeinterfacestates API + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + description: BridgeInterfaceStateSpec defines the desired state of BridgeInterfaceState + properties: + bridgeDomain: + description: Node BridgeDomain name + type: string + subInterfaces: + items: + properties: + interface: + description: Normalized interface name + type: string + interfaceResource: + description: Eda interface resource + type: string + node: + description: Reference to Node object + type: string + nodeInterface: + description: Node specific interface name + type: string + nodeSubInterface: + description: Node specific subinterface name + type: string + operatingSystem: + description: Operating System of the Node + type: string + subInterfaceIndex: + description: Index allocated to the subinterface on the associated interface for the given VLAN + type: integer + vlanID: + description: vlan assigned to this subinterface + type: string + required: + - interface + - interfaceResource + - node + - nodeInterface + type: object + type: array + required: + - bridgeDomain + - subInterfaces + type: object + status: + type: object + type: object +served: true +storage: true +subresources: + status: {} diff --git a/static/resources/25.8.3/bridgeinterfacestates.services.eda.nokia.com/v1alpha1.yaml b/static/resources/25.8.3/bridgeinterfacestates.services.eda.nokia.com/v1alpha1.yaml new file mode 100644 index 0000000..62d08af --- /dev/null +++ b/static/resources/25.8.3/bridgeinterfacestates.services.eda.nokia.com/v1alpha1.yaml @@ -0,0 +1,75 @@ +deprecated: true +deprecationWarning: This version is deprecated and will no longer be supported in the next version. +name: v1alpha1 +schema: + openAPIV3Schema: + description: BridgeInterfaceState is the Schema for the bridgeinterfacestates API + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + description: BridgeInterfaceStateSpec defines the desired state of BridgeInterfaceState + properties: + bridgeDomain: + description: Node BridgeDomain name + type: string + subInterfaces: + items: + properties: + interface: + description: Normalized interface name + type: string + interfaceResource: + description: Eda interface resource + type: string + node: + description: Reference to Node object + type: string + nodeInterface: + description: Node specific interface name + type: string + nodeSubInterface: + description: Node specific subinterface name + type: string + operatingSystem: + description: Operating System of the Node + type: string + subInterfaceIndex: + description: Index allocated to the subinterface on the associated interface for the given VLAN + type: integer + vlanID: + description: vlan assigned to this subinterface + type: string + required: + - interface + - interfaceResource + - node + - nodeInterface + type: object + type: array + required: + - bridgeDomain + - subInterfaces + type: object + status: + type: object + type: object +served: true +storage: false +subresources: + status: {} diff --git a/static/resources/25.8.3/catalogs.appstore.eda.nokia.com/v1.yaml b/static/resources/25.8.3/catalogs.appstore.eda.nokia.com/v1.yaml new file mode 100644 index 0000000..26f5e62 --- /dev/null +++ b/static/resources/25.8.3/catalogs.appstore.eda.nokia.com/v1.yaml @@ -0,0 +1,91 @@ +additionalPrinterColumns: + - jsonPath: .spec.title + name: Title + type: string + - jsonPath: .spec.remoteType + name: Type + type: string + - jsonPath: .status.operational + name: Operational + type: string +name: v1 +schema: + openAPIV3Schema: + description: Catalog is the Schema for the catalogs API + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + description: CatalogSpec defines the desired state of a Catalog. + properties: + authSecretRef: + description: |- + AuthSecretRef is the authentication secret reference, used for authentication. + Must be in the same namespace as the catalog. + type: string + description: + description: Description is an optional short description of the catalog. + maxLength: 70 + type: string + refreshInterval: + default: 180 + description: |- + RefreshInterval tells the controller how often it should check the remote catalog for new updates, in seconds. + Default is 180 seconds. Minimum is 30 seconds for production environments; 10 seconds for test environments. + format: int32 + type: integer + remoteType: + default: git + description: RemoteType type of the catalog, only 'git' is supported at the moment. + enum: + - git + type: string + remoteURL: + description: |- + RemoteURL is the HTTP(S) remote URL of the catalog. Supported URI schemes: 'https://' and 'http://'. + Default is HTTPS if no scheme is given. + type: string + skipTLSVerify: + default: false + description: SkipTLSVerify skips the validity check for the server's certificate. This will make HTTPS connections insecure. + type: boolean + title: + description: Title is an UI-friendly name for the catalog. + maxLength: 50 + type: string + type: object + status: + description: CatalogStatus defines the observed state of a Catalog. + properties: + error: + description: Error denotes the last error that was encountered by the controller. + type: string + lastRefreshTime: + description: LastRefreshTime is the last attempt to refresh the catalog cache by the controller. + format: date-time + type: string + operational: + default: false + description: Operational reports whether the catalog remote is operational. + type: boolean + type: object + type: object +served: true +storage: true +subresources: + status: {} diff --git a/static/resources/25.8.3/certificatechecks.certcheck.eda.nokia.com/v1alpha1.yaml b/static/resources/25.8.3/certificatechecks.certcheck.eda.nokia.com/v1alpha1.yaml new file mode 100644 index 0000000..547d026 --- /dev/null +++ b/static/resources/25.8.3/certificatechecks.certcheck.eda.nokia.com/v1alpha1.yaml @@ -0,0 +1,256 @@ +name: v1alpha1 +schema: + openAPIV3Schema: + description: CertificateCheck is the Schema for the certificatechecks API + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + description: CertificateCheckSpec defines the desired state of CertificateCheck + properties: + address: + description: list of addresses to check + items: + type: string + type: array + interval: + default: 5m + description: Interval specifies the check interval + type: string + podSelector: + description: PodSelector defines a selector for the target Pods to check. + properties: + matchExpressions: + description: matchExpressions is a list of label selector requirements. The requirements are ANDed. + items: + description: |- + A label selector requirement is a selector that contains values, a key, and an operator that + relates the key and values. + properties: + key: + description: key is the label key that the selector applies to. + type: string + operator: + description: |- + operator represents a key's relationship to a set of values. + Valid operators are In, NotIn, Exists and DoesNotExist. + type: string + values: + description: |- + values is an array of string values. If the operator is In or NotIn, + the values array must be non-empty. If the operator is Exists or DoesNotExist, + the values array must be empty. This array is replaced during a strategic + merge patch. + items: + type: string + type: array + x-kubernetes-list-type: atomic + required: + - key + - operator + type: object + type: array + x-kubernetes-list-type: atomic + matchLabels: + additionalProperties: + type: string + description: |- + matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels + map is equivalent to an element of matchExpressions, whose key field is "key", the + operator is "In", and the values array contains only "value". The requirements are ANDed. + type: object + type: object + x-kubernetes-map-type: atomic + service: + description: Service defines the name of the Kubernetes Service to check. + items: + type: string + type: array + serviceSelector: + description: ServiceSelector defines a label selector for dynamically selecting the service + properties: + matchExpressions: + description: matchExpressions is a list of label selector requirements. The requirements are ANDed. + items: + description: |- + A label selector requirement is a selector that contains values, a key, and an operator that + relates the key and values. + properties: + key: + description: key is the label key that the selector applies to. + type: string + operator: + description: |- + operator represents a key's relationship to a set of values. + Valid operators are In, NotIn, Exists and DoesNotExist. + type: string + values: + description: |- + values is an array of string values. If the operator is In or NotIn, + the values array must be non-empty. If the operator is Exists or DoesNotExist, + the values array must be empty. This array is replaced during a strategic + merge patch. + items: + type: string + type: array + x-kubernetes-list-type: atomic + required: + - key + - operator + type: object + type: array + x-kubernetes-list-type: atomic + matchLabels: + additionalProperties: + type: string + description: |- + matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels + map is equivalent to an element of matchExpressions, whose key field is "key", the + operator is "In", and the values array contains only "value". The requirements are ANDed. + type: object + type: object + x-kubernetes-map-type: atomic + targetNode: + description: list of Targetnodes to check + items: + type: string + type: array + targetNodeSelector: + description: TargetNodeSelector defines a label selector for dynamically selecting targetNodes + properties: + matchExpressions: + description: matchExpressions is a list of label selector requirements. The requirements are ANDed. + items: + description: |- + A label selector requirement is a selector that contains values, a key, and an operator that + relates the key and values. + properties: + key: + description: key is the label key that the selector applies to. + type: string + operator: + description: |- + operator represents a key's relationship to a set of values. + Valid operators are In, NotIn, Exists and DoesNotExist. + type: string + values: + description: |- + values is an array of string values. If the operator is In or NotIn, + the values array must be non-empty. If the operator is Exists or DoesNotExist, + the values array must be empty. This array is replaced during a strategic + merge patch. + items: + type: string + type: array + x-kubernetes-list-type: atomic + required: + - key + - operator + type: object + type: array + x-kubernetes-list-type: atomic + matchLabels: + additionalProperties: + type: string + description: |- + matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels + map is equivalent to an element of matchExpressions, whose key field is "key", the + operator is "In", and the values array contains only "value". The requirements are ANDed. + type: object + type: object + x-kubernetes-map-type: atomic + thresholds: + description: Thresholds defines the certificate validity thresholds for raising alarms + properties: + critical: + description: Critical threshold in percentage + maximum: 100 + minimum: 0 + type: integer + major: + description: Major threshold in percentage + maximum: 100 + minimum: 0 + type: integer + minor: + description: Minor threshold in percentage + maximum: 100 + minimum: 0 + type: integer + warning: + description: Warning threshold in percentage + maximum: 100 + minimum: 0 + type: integer + type: object + timeout: + default: 5s + description: Timeout specifies the tls timeout + type: string + trustBundle: + description: |- + TrustBundle is a ConfigMap with a `trust-bundle.pem` key containing + certificate authorities to be used to verify the returned certificates. + type: string + type: object + status: + description: CertificateCheckStatus defines the observed state of CertificateCheck + properties: + endpointStatuses: + description: EndpointStatuses contains the certificate statuses for each target endpoint + items: + description: EndpointStatus defines the status of the certificate for a specific endpoint + properties: + address: + description: Address is the address of the endpoint (service or pod) + type: string + error: + description: Error provides any error message that occurred during the check + type: string + expiryDate: + description: ExpiryDate is the expiration date of the certificate + format: date-time + type: string + issueDate: + description: IssueDate is the date when certificate was issued + format: date-time + type: string + podName: + type: string + serviceName: + type: string + targetNodeName: + type: string + valid: + description: Valid indicates whether the certificate is valid or not + type: boolean + required: + - address + - valid + type: object + type: array + lastChecked: + description: LastChecked indicates the last time the certificate was checked + format: date-time + type: string + type: object + type: object +served: true +storage: true +subresources: + status: {} diff --git a/static/resources/25.8.3/chassis.components.eda.nokia.com/v1.yaml b/static/resources/25.8.3/chassis.components.eda.nokia.com/v1.yaml new file mode 100644 index 0000000..834cfd1 --- /dev/null +++ b/static/resources/25.8.3/chassis.components.eda.nokia.com/v1.yaml @@ -0,0 +1,97 @@ +name: v1 +schema: + openAPIV3Schema: + description: Chassis is the Schema for the chassis API + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + description: ChassisSpec defines the desired state of Chassis + type: object + status: + description: ChassisStatus defines the observed state of Chassis + properties: + chassisMacAddress: + description: MAC Address of the Chassis + type: string + children: + description: References to children components + items: + properties: + name: + description: Reference to a child component + type: string + type: + description: Type of the child component + enum: + - Fan + - FanTray + - PowerSupply + - PowerModule + - PowerShelf + - InterfaceModule + - ControlModule + - FabricModule + - Chassis + - Transceiver + type: string + type: object + type: array + commonLanguageEquipmentIdentifier: + description: The CLEI code of this component + type: string + lastBooted: + description: The date and time this component last booted + type: string + lastChange: + description: The date and time this component last changed operational state + type: string + manufacturedDate: + description: The date this component was manufactured + type: string + operationalState: + description: Indicates the current operational state of this component. + enum: + - Up + - Down + - Rebooting + - Unknown + - Starting + - Empty + type: string + partNumber: + description: The discovered part number of this component + type: string + removable: + description: Indicates if this component is removable + type: boolean + serialNumber: + description: The discovered serial number of this component + type: string + target: + description: Target this component resides on. + type: string + type: + description: Component type, as provided by the target + type: string + type: object + type: object +served: true +storage: true +subresources: + status: {} diff --git a/static/resources/25.8.3/checkdefaultbgppeerss.protocols.eda.nokia.com/v1.yaml b/static/resources/25.8.3/checkdefaultbgppeerss.protocols.eda.nokia.com/v1.yaml new file mode 100644 index 0000000..ac11e0f --- /dev/null +++ b/static/resources/25.8.3/checkdefaultbgppeerss.protocols.eda.nokia.com/v1.yaml @@ -0,0 +1,55 @@ +additionalPrinterColumns: + - jsonPath: .status.result + name: Result + type: string + - jsonPath: .metadata.creationTimestamp + name: Age + type: date +name: v1 +schema: + openAPIV3Schema: + description: CheckDefaultBgpPeers is the Schema for the checkdefaultbgppeerss API + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + description: CheckDefaultBgpPeersSpec defines the desired state of CheckDefaultBgpPeers + properties: + nodeSelector: + items: + type: string + type: array + nodes: + items: + type: string + type: array + waitFor: + type: integer + type: object + status: + description: CheckDefaultBgpPeersStatus defines the observed state of CheckDefaultBgpPeers + properties: + result: + description: Aggregate result of the Flow + type: string + type: object + type: object +served: true +storage: true +subresources: + status: {} diff --git a/static/resources/25.8.3/checkdefaultbgppeerss.protocols.eda.nokia.com/v1alpha1.yaml b/static/resources/25.8.3/checkdefaultbgppeerss.protocols.eda.nokia.com/v1alpha1.yaml new file mode 100644 index 0000000..e071538 --- /dev/null +++ b/static/resources/25.8.3/checkdefaultbgppeerss.protocols.eda.nokia.com/v1alpha1.yaml @@ -0,0 +1,63 @@ +additionalPrinterColumns: + - jsonPath: .status.id + name: ID + type: integer + - jsonPath: .status.result + name: Result + type: string + - jsonPath: .metadata.creationTimestamp + name: Age + type: date +deprecated: true +deprecationWarning: This version is deprecated and will no longer be supported in the next version. +name: v1alpha1 +schema: + openAPIV3Schema: + description: CheckDefaultBgpPeers is the Schema for the checkdefaultbgppeerss API + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + description: CheckDefaultBgpPeersSpec defines the desired state of CheckDefaultBgpPeers + properties: + nodeSelector: + items: + type: string + type: array + nodes: + items: + type: string + type: array + waitFor: + type: integer + type: object + status: + description: CheckDefaultBgpPeersStatus defines the observed state of CheckDefaultBgpPeers + properties: + id: + description: Id + type: integer + result: + description: Aggregate result of the Flow + type: string + type: object + type: object +served: true +storage: false +subresources: + status: {} diff --git a/static/resources/25.8.3/checkinterfacess.interfaces.eda.nokia.com/v1alpha1.yaml b/static/resources/25.8.3/checkinterfacess.interfaces.eda.nokia.com/v1alpha1.yaml new file mode 100644 index 0000000..dd8371c --- /dev/null +++ b/static/resources/25.8.3/checkinterfacess.interfaces.eda.nokia.com/v1alpha1.yaml @@ -0,0 +1,58 @@ +additionalPrinterColumns: + - jsonPath: .status.result + name: Result + type: string + - jsonPath: .metadata.creationTimestamp + name: Age + type: date +name: v1alpha1 +schema: + openAPIV3Schema: + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + description: CheckInterfacesSpec defines the desired state of CheckInterfaces + properties: + interfaceSelector: + items: + type: string + type: array + nodeSelector: + items: + type: string + type: array + nodes: + items: + type: string + type: array + waitFor: + type: integer + type: object + status: + description: CheckInterfacesStatus defines the observed state of CheckInterfaces + properties: + result: + description: Aggregate result of the Flow + type: string + type: object + type: object +served: true +storage: true +subresources: + status: {} diff --git a/static/resources/25.8.3/cliplugins.environment.eda.nokia.com/v1alpha1.yaml b/static/resources/25.8.3/cliplugins.environment.eda.nokia.com/v1alpha1.yaml new file mode 100644 index 0000000..a7a7a68 --- /dev/null +++ b/static/resources/25.8.3/cliplugins.environment.eda.nokia.com/v1alpha1.yaml @@ -0,0 +1,53 @@ +additionalPrinterColumns: + - jsonPath: .status.result + name: Result + type: string + - jsonPath: .metadata.creationTimestamp + name: Age + type: date +name: v1alpha1 +schema: + openAPIV3Schema: + description: CliPlugin is the Schema for the cliplugins API + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + description: This workflow is used to push a CLI plugin to a node. + properties: + content: + description: Content of the plugin to push. + type: string + fileName: + description: |- + Name of the plugin to push. For SR Linux this should include the .py extension, without leading slashes. + e.g. "myplugin.py". + type: string + type: object + status: + description: CliPluginStatus defines the observed state of CliPlugin + properties: + result: + description: Aggregate result of the Flow + type: string + type: object + type: object +served: true +storage: true +subresources: + status: {} diff --git a/static/resources/25.8.3/clusterdiscoveries.components.eda.nokia.com/v1.yaml b/static/resources/25.8.3/clusterdiscoveries.components.eda.nokia.com/v1.yaml new file mode 100644 index 0000000..80a2304 --- /dev/null +++ b/static/resources/25.8.3/clusterdiscoveries.components.eda.nokia.com/v1.yaml @@ -0,0 +1,49 @@ +name: v1 +schema: + openAPIV3Schema: + description: ClusterDiscovery is the Schema for the clusterdiscoveries API + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + description: ClusterDiscoverySpec defines the desired state of ClusterDiscovery + type: object + status: + description: ClusterDiscoveryStatus defines the observed state of ClusterDiscovery + properties: + targets: + description: List of targets component discovery is running for + items: + properties: + name: + description: Name of the target. + type: string + namespace: + description: Namespace of the target. + type: string + required: + - name + - namespace + type: object + type: array + type: object + type: object +served: true +storage: true +subresources: + status: {} diff --git a/static/resources/25.8.3/clusterroles.core.eda.nokia.com/v1.yaml b/static/resources/25.8.3/clusterroles.core.eda.nokia.com/v1.yaml new file mode 100644 index 0000000..81545ff --- /dev/null +++ b/static/resources/25.8.3/clusterroles.core.eda.nokia.com/v1.yaml @@ -0,0 +1,130 @@ +name: v1 +schema: + openAPIV3Schema: + description: ClusterRole is the Schema for the roles API + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + description: |- + ClusterRole defines a set of permissions to access EDA resources. + ClusterRoles and users are bound via groups, selecting a set of users and a set of ClusterRoles to bind. + properties: + description: + description: A description for the role. + type: string + resourceRules: + description: Rules for access to resources. + items: + description: A role rule controlling access to a kubernetes resource. + properties: + apiGroups: + description: |- + The API groups for the resources controlled by the rule. + An API group consists of an apiGroup and a version, e.g. "apigroup/version". + The API group can be a wildcard ("*"), in which case it will match any API group. + items: + minLength: 1 + type: string + minItems: 1 + type: array + permissions: + description: Permissions for resources specified by the rule. + enum: + - none + - read + - readWrite + type: string + resources: + description: |- + Names for the resources controlled by the rule. + It can be a wildcard ("*"), in which case it will match any resource + in the matching API groups. + items: + minLength: 1 + type: string + minItems: 1 + type: array + required: + - apiGroups + - permissions + - resources + type: object + type: array + tableRules: + description: Rules for access to EDB tables, including via EQL. + items: + description: |- + A role rule controlling access to a EDB table. Note that + there is never write access to EDB. + properties: + path: + description: |- + EDB path to which this rule applies. It can end in ".*" + in which case the final portion of the table path can be anything, if the + prefix matches. It can end in ".**" in which case the table path can be + anything if the prefix matches. + minLength: 1 + pattern: ^\..* + type: string + permissions: + description: Permissions for the given EDB path. + enum: + - none + - read + type: string + required: + - path + - permissions + type: object + type: array + urlRules: + description: Rules for access to APIServer proxied routes. + items: + description: A role rule controlling access to an API server proxy. + properties: + path: + description: |- + The API server URL path to which this rule applies. It can end in "/*" + in which case the final portion of the URL path can be anything, if the + prefix matches. It can end in "/**" in which case the URL path can be + anything if the prefix matches. + minLength: 1 + pattern: ^/.* + type: string + permissions: + description: The permissions for the API server URL for the rule. + enum: + - none + - read + - readWrite + type: string + required: + - path + - permissions + type: object + type: array + type: object + status: + description: RoleStatus defines the observed state of Role + type: object + type: object +served: true +storage: true +subresources: + status: {} diff --git a/static/resources/25.8.3/communitysetdeployments.routingpolicies.eda.nokia.com/v1alpha1.yaml b/static/resources/25.8.3/communitysetdeployments.routingpolicies.eda.nokia.com/v1alpha1.yaml new file mode 100644 index 0000000..9052874 --- /dev/null +++ b/static/resources/25.8.3/communitysetdeployments.routingpolicies.eda.nokia.com/v1alpha1.yaml @@ -0,0 +1,42 @@ +name: v1alpha1 +schema: + openAPIV3Schema: + description: CommunitySetDeployment is the schema for the communitysetdeployments API + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + description: CommunitySetDeploymentSpec defines the desired state of CommunitySetDeployment + properties: + communitySet: + description: Specifies a CommunitySet to deploy to the specified Node + type: string + node: + description: Specifies a Node to deploy this policy on + type: string + required: + - node + type: object + status: + description: CommunitySetDeploymentStatus defines the observed state of CommunitySetDeployment + type: object + type: object +served: true +storage: true +subresources: + status: {} diff --git a/static/resources/25.8.3/communitysets.routingpolicies.eda.nokia.com/v1alpha1.yaml b/static/resources/25.8.3/communitysets.routingpolicies.eda.nokia.com/v1alpha1.yaml new file mode 100644 index 0000000..c937bc6 --- /dev/null +++ b/static/resources/25.8.3/communitysets.routingpolicies.eda.nokia.com/v1alpha1.yaml @@ -0,0 +1,49 @@ +name: v1alpha1 +schema: + openAPIV3Schema: + description: CommunitySet is the Schema for the communitysets API + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + description: CommunitySetSpec defines the desired state of CommunitySet + properties: + expressionMatch: + description: Options that determine the matching criteria that applies to the list of community members. + type: string + matchSetOptions: + description: The matching criteria that applies to the Members list. + enum: + - All + - Any + - Invert + type: string + members: + description: A standard BGP community value, regular expression or well-known name or else a large BGP community value or regular expression. + items: + type: string + type: array + type: object + status: + description: CommunitySetStatus defines the observed state of CommunitySet + type: object + type: object +served: true +storage: true +subresources: + status: {} diff --git a/static/resources/25.8.3/components.components.eda.nokia.com/v1.yaml b/static/resources/25.8.3/components.components.eda.nokia.com/v1.yaml new file mode 100644 index 0000000..58fd218 --- /dev/null +++ b/static/resources/25.8.3/components.components.eda.nokia.com/v1.yaml @@ -0,0 +1,110 @@ +additionalPrinterColumns: + - jsonPath: .status.enabled + name: Enabled + type: boolean + - jsonPath: .status.operationalState + name: Operational State + type: string + - jsonPath: .status.type + name: Type + type: string + - jsonPath: .status.lastChange + name: Last Change + type: date + - jsonPath: .status.serialNumber + name: Part Number + type: string + - jsonPath: .status.partNumber + name: Serial Number + type: string + - jsonPath: .metadata.creationTimestamp + name: Age + type: date +name: v1 +schema: + openAPIV3Schema: + description: Component is the Schema for the components API + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + description: ComponentSpec defines the desired state of Component + properties: + node: + description: |- + TopologyNode this Component resides on. + Indicates the operation in which to apply the configuration + type: string + slot: + description: Slot this Component resides in, unset for Components that do not have a slot or ID. + type: string + type: + description: Type of Component. + enum: + - Fan + - FanTray + - PowerSupply + - PowerModule + - PowerShelf + - InterfaceModule + - ControlModule + - FabricModule + - Chassis + - Transceiver + type: string + required: + - node + - type + type: object + status: + description: ComponentStatus defines the observed state of Component + properties: + enabled: + description: The administrative status of this Component. + type: boolean + lastChange: + description: The date and time this Component last changed operational state + type: string + manufacturedDate: + description: The date this Component was manufactured + type: string + operationalState: + description: Indicates the current operational state of this Component. + enum: + - Up + - Down + - Rebooting + - Unknown + - Starting + - Empty + type: string + partNumber: + description: The discovered part number of this Component + type: string + serialNumber: + description: The discovered serial number of this Component + type: string + type: + description: Component type, as provided by the node. + type: string + type: object + type: object +served: true +storage: true +subresources: + status: {} diff --git a/static/resources/25.8.3/components.components.eda.nokia.com/v1alpha1.yaml b/static/resources/25.8.3/components.components.eda.nokia.com/v1alpha1.yaml new file mode 100644 index 0000000..a845192 --- /dev/null +++ b/static/resources/25.8.3/components.components.eda.nokia.com/v1alpha1.yaml @@ -0,0 +1,107 @@ +additionalPrinterColumns: + - jsonPath: .status.enabled + name: Enabled + type: boolean + - jsonPath: .status.operationalState + name: Operational State + type: string + - jsonPath: .status.type + name: Type + type: string + - jsonPath: .status.lastChange + name: Last Change + type: date + - jsonPath: .status.serialNumber + name: Part Number + type: string + - jsonPath: .status.partNumber + name: Serial Number + type: string + - jsonPath: .metadata.creationTimestamp + name: Age + type: date +name: v1alpha1 +schema: + openAPIV3Schema: + description: Component is the Schema for the components API + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + description: ComponentSpec defines the desired state of Component + properties: + node: + description: |- + TopologyNode this Component resides on. + Indicates the operation in which to apply the configuration + type: string + slot: + description: Slot this Component resides in, unset for Components that do not have a slot or ID. + type: string + type: + description: Type of Component. + enum: + - FanTray + - PowerSupply + - LineCard + - Control + - Fabric + - Chassis + - Transceiver + type: string + required: + - node + - type + type: object + status: + description: ComponentStatus defines the observed state of Component + properties: + enabled: + description: The administrative status of this Component. + type: boolean + lastChange: + description: The date and time this Component last changed operational state + type: string + manufacturedDate: + description: The date this Component was manufactured + type: string + operationalState: + description: Indicates the current operational state of this Component. + enum: + - Up + - Down + - Rebooting + - Unknown + - Starting + - Empty + type: string + partNumber: + description: The discovered part number of this Component + type: string + serialNumber: + description: The discovered serial number of this Component + type: string + type: + description: Component type, as provided by the node. + type: string + type: object + type: object +served: true +storage: false +subresources: + status: {} diff --git a/static/resources/25.8.3/configlets.config.eda.nokia.com/v1alpha1.yaml b/static/resources/25.8.3/configlets.config.eda.nokia.com/v1alpha1.yaml new file mode 100644 index 0000000..b4525d1 --- /dev/null +++ b/static/resources/25.8.3/configlets.config.eda.nokia.com/v1alpha1.yaml @@ -0,0 +1,95 @@ +name: v1alpha1 +schema: + openAPIV3Schema: + description: Configlet is the Schema for the configlets API + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + description: |- + Configlet is a configuration snippet that can be applied to a set of targets. + The path on the target is provided in jspath notation, and the configuration is provided as a JSON string. + Configlets can be applied to a set of targets based on a label selector, a list of targets, or a combination of both. + properties: + configs: + description: Configurations to apply, being sets of paths, operations and JSON configurations. + items: + properties: + config: + description: JSON-formatted string representing the configuration to apply. + type: string + operation: + default: Create + description: Indicates the operation in which to apply the configuration. + enum: + - Create + - Update + - Delete + type: string + path: + description: Path to apply the configuration in jspath notation, including any keys if relevant, e.g. .system.information. + type: string + required: + - config + - operation + - path + type: object + type: array + endpointSelector: + description: Label selector to use to match targets to deploy Configlet to. + items: + type: string + type: array + endpoints: + description: Reference to targets to deploy Configlet to. + items: + type: string + type: array + operatingSystem: + description: Operating system to match against when selecting targets. + enum: + - srl + - sros + type: string + priority: + default: 0 + description: Priority of this Configlet, between -100 and 100. Higher priorities overwrite lower priorities in the event of conflicts. + format: int32 + maximum: 100 + minimum: -100 + type: integer + version: + description: Version to match against when selecting targets. + type: string + required: + - configs + type: object + status: + description: Deployment status of this Configlet. + properties: + endpoints: + description: List of targets this configlet has been applied to. + items: + type: string + type: array + type: object + type: object +served: true +storage: true +subresources: + status: {} diff --git a/static/resources/25.8.3/configletstates.config.eda.nokia.com/v1alpha1.yaml b/static/resources/25.8.3/configletstates.config.eda.nokia.com/v1alpha1.yaml new file mode 100644 index 0000000..da2ee7c --- /dev/null +++ b/static/resources/25.8.3/configletstates.config.eda.nokia.com/v1alpha1.yaml @@ -0,0 +1,39 @@ +name: v1alpha1 +schema: + openAPIV3Schema: + description: ConfigletState is the Schema for the configletstates API + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + description: ConfigletStateSpec defines the desired state of ConfigletState + properties: + endpoints: + description: List of endpoints this configlet has been applied to + items: + type: string + type: array + type: object + status: + description: ConfigletStateStatus defines the observed state of ConfigletState + type: object + type: object +served: true +storage: true +subresources: + status: {} diff --git a/static/resources/25.8.3/controlmodules.components.eda.nokia.com/v1.yaml b/static/resources/25.8.3/controlmodules.components.eda.nokia.com/v1.yaml new file mode 100644 index 0000000..565839a --- /dev/null +++ b/static/resources/25.8.3/controlmodules.components.eda.nokia.com/v1.yaml @@ -0,0 +1,122 @@ +name: v1 +schema: + openAPIV3Schema: + description: ControlModule is the Schema for the controlmodules API + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + description: ControlModuleSpec defines the desired state of ControlModule + type: object + status: + description: ControlModuleStatus defines the observed state of ControlModule + properties: + commonLanguageEquipmentIdentifier: + description: The CLEI code of this component + type: string + lastBooted: + description: The date and time this component last booted + type: string + lastChange: + description: The date and time this component last changed operational state + type: string + locatorEnabled: + description: Indicates if the locator LED for the component is active + type: boolean + manufacturedDate: + description: The date this component was manufactured + type: string + operationalState: + description: Indicates the current operational state of this component. + enum: + - Up + - Down + - Rebooting + - Unknown + - Starting + - Empty + type: string + parent: + description: Reference to a parent component + type: string + parentType: + description: Type of the parent component + enum: + - Fan + - FanTray + - PowerSupply + - PowerModule + - PowerShelf + - InterfaceModule + - ControlModule + - FabricModule + - Chassis + - Transceiver + type: string + partNumber: + description: The discovered part number of this component + type: string + removable: + description: Indicates if this component is removable + type: boolean + role: + description: Role of the control module + enum: + - Active + - Standby + type: string + serialNumber: + description: The discovered serial number of this component + type: string + slot: + description: Slot this component resides in, unset for components that do not have a slot or ID + type: string + softwareVersion: + description: Version string of the software running on this component + type: string + target: + description: Target this component resides on. + type: string + temperature: + description: Temperature information for this component + properties: + alarmState: + description: The temperature alarm state, as reported by the component + type: boolean + instant: + description: The current temperature of this component + type: integer + margin: + description: The margin temperature of this component + type: integer + maximum: + description: The maximum temperature of this component + type: integer + threshold: + description: The threshold temperature of this component + type: integer + type: object + type: + description: Component type, as provided by the target + type: string + type: object + type: object +served: true +storage: true +subresources: + status: {} diff --git a/static/resources/25.8.3/controlplanefilters.filters.eda.nokia.com/v1alpha1.yaml b/static/resources/25.8.3/controlplanefilters.filters.eda.nokia.com/v1alpha1.yaml new file mode 100644 index 0000000..49ca962 --- /dev/null +++ b/static/resources/25.8.3/controlplanefilters.filters.eda.nokia.com/v1alpha1.yaml @@ -0,0 +1,652 @@ +name: v1alpha1 +schema: + openAPIV3Schema: + description: ControlPlaneFilter is the Schema for the controlplanefilters API + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + description: ControlPlaneFilter allows for specifying a list of Nodes or Node selectors where the filter should be applied and managing filter entries in order. + properties: + entries: + description: Specifies the list of filter entries, in order. + items: + properties: + description: + description: Description of the FilterEntry. + type: string + ipEntry: + properties: + action: + description: An action to take, either 'Accept','Drop', or 'RateLimit'. + enum: + - Drop + - Accept + - RateLimit + type: string + destinationPortName: + description: Destination port to match by name. + enum: + - ACAP + - AFP-TCP + - ARNS + - ASF-RMCP + - ASHARE + - ATALK-RM + - AURP + - AUTH + - BFD + - BFD-ECHO + - BFTP + - BGMP + - BGP + - BOOTPC + - BOOTPS + - CCSO-NS + - CHARGEN + - CISCO-TDP + - CITADEL + - CLEARCASE + - COMMERCE + - COURIER + - DAYTIME + - DHCP-FAILOVER + - DHCPV6-CLIENT + - DHCPV6-SERVER + - DICOM + - DISCARD + - DNSIX + - DOMAIN + - DSP + - ECHO + - EPP + - ESRO + - EXEC + - FINGER + - FTP + - FTP-DATA + - FTPS + - FTPS-DATA + - GODI + - GOPHER + - GTP-C + - GTP-PRIME + - GTP-U + - HA-CLUSTER + - HOSTNAME + - HP-ALARM-MGR + - HTTP + - HTTP-ALT + - HTTP-MGMT + - HTTP-RPC + - HTTPS + - IEEE-MMS-SSL + - IMAP + - IMAP3 + - IMAPS + - IPP + - IPSEC + - IPX + - IRC + - IRIS-BEEP + - ISAKMP + - ISAKMP-NAT + - ISCSI + - ISO-TSAP + - KERBEROS + - KERBEROS-ADM + - KLOGIN + - KPASSWD + - KSHELL + - L2TP + - LDAP + - LDAPS + - LDP + - LMP + - LOGIN + - LPD + - LSP-PING + - MAC-SERVER-ADM + - MATIP-A + - MATIP-B + - MICRO-BFD + - MICROSOFT-DS + - MOBILE-IP + - MONITOR + - MPP + - MS-EXCHANGE + - MSDP + - MSP + - MSSQL-M + - MSSQL-S + - MULTIHOP-BFD + - NAS + - NCP + - NETBIOS-DATA + - NETBIOS-NS + - NETBIOS-SS + - NETNEWS + - NETRJS-1 + - NETRJS-2 + - NETRJS-3 + - NETRJS-4 + - NETWALL + - NEW-RWHO + - NFS + - NNTP + - NNTPS + - NTP + - ODMR + - OLSR + - OPENVPN + - PIM-AUTO-RP + - PKIX-TIMESTAMP + - POP2 + - POP3 + - POP3S + - PPTP + - PRINT-SRV + - PTP-EVENT + - PTP-GENERAL + - QMTP + - QOTD + - RADIUS + - RADIUS-ACCT + - REMOTE-MAIL + - REMOTEFS + - REMOTECMD + - RIP + - RJE + - RLP + - RLZDB + - RMC + - RMONITOR + - RPC2PORTMAP + - RSYNC + - RTELNET + - RTSP + - SGMP + - SILC + - SMUX + - SNA-GW + - SNMP + - SNMP-TRAP + - SNPP + - SMTP + - SQL-SVCS + - SQL + - SSH + - SUBMISSION + - SUNRPC + - SVCLOC + - SYSLOG + - SYSTAT + - TACACS + - TALK + - TCPMUX + - TCPNETHASPSRV + - TFTP + - TIME + - TIMED + - UPS + - XDMCP + - XNS-CH + - XNS-MAIL + - XNS-TIME + - Z3950 + type: string + destinationPortNumber: + description: Destination port to match by numerical value. + maximum: 65535 + minimum: 0 + type: integer + destinationPortOperator: + description: Operator to use when matching destinationPort, either Equals, GreaterOrEquals, or LessOrEquals. + enum: + - Equals + - GreaterOrEquals + - LessOrEquals + type: string + destinationPortRange: + description: Range of destination ports to match, in the format n-m, e.g. 100-200, The start and end of the range must be port numbers. + type: string + destinationPrefix: + description: Destination prefix to match. + type: string + firstFragment: + description: Match the first fragment only. + type: boolean + fragment: + description: Match any fragment. + type: boolean + icmpCode: + description: Match a specific ICMP code, as a number between 0-255, e.g. 0. + items: + type: integer + maxItems: 255 + minItems: 0 + type: array + icmpTypeName: + description: Match a specific ICMP type by name, e.g. dest-unreachable. + enum: + - DestUnreachable + - Echo + - EchoReply + - EchoRequest + - McastRtrAdv + - McastRtrSolicit + - McastRtrTerm + - MldDone + - MldQuery + - MldReport + - MldV2 + - NeighborAdvertise + - NeighborSolicit + - NodeInfoQuery + - NodeInfoResponse + - PacketTooBig + - ParamProblem + - Redirect + - RouterAdvertise + - RouterRenumber + - RouterSolicit + - SourceQuench + - TimeExceeded + - Timestamp + - TimestampReply + type: string + icmpTypeNumber: + description: Match a specific ICMP type by number. + maximum: 255 + minimum: 0 + type: integer + log: + description: Log the matches for this entry. + type: boolean + protocolName: + description: Match a specific IP protocol name (specified in the type field of the IP header). + enum: + - AH + - EGP + - EIGRP + - ESP + - GGP + - GRE + - ICMP + - ICMP6 + - IDRP + - IGMP + - IGP + - IPV4 + - IPV6 + - IPV6-DEST-OPTS + - IPV6-HOP + - L2TP + - MPLS-IN-IP + - NO-NEXT-HDR + - OSPF + - PIM + - ROHC + - RSVP + - SCTP + - ST + - TCP + - UDP + - VRRP + type: string + protocolNumber: + description: Match a specific IP protocol number (specified in the type field of the IP header). + maximum: 255 + minimum: 0 + type: integer + rateLimit: + description: Rate limit to apply when the action is 'RateLimit'. + properties: + burstSize: + description: The maximum burst size in bytes. + format: int32 + type: integer + entrySpecificPolicer: + default: false + description: 'Controls policer instantiation: false for shared instance, true for per-entry instances' + type: boolean + peakRate: + description: The peak rate in kilobytes per second. + format: int32 + type: integer + scope: + default: Global + description: Determines how the policer is applied across subinterfaces. Global applies the policer across all subinterfaces, while Subinterface applies it individually to each subinterface. + enum: + - Global + - Subinterface + type: string + type: object + sourcePortName: + description: Source port to match by name. + enum: + - ACAP + - AFP-TCP + - ARNS + - ASF-RMCP + - ASHARE + - ATALK-RM + - AURP + - AUTH + - BFD + - BFD-ECHO + - BFTP + - BGMP + - BGP + - BOOTPC + - BOOTPS + - CCSO-NS + - CHARGEN + - CISCO-TDP + - CITADEL + - CLEARCASE + - COMMERCE + - COURIER + - DAYTIME + - DHCP-FAILOVER + - DHCPV6-CLIENT + - DHCPV6-SERVER + - DICOM + - DISCARD + - DNSIX + - DOMAIN + - DSP + - ECHO + - EPP + - ESRO + - EXEC + - FINGER + - FTP + - FTP-DATA + - FTPS + - FTPS-DATA + - GODI + - GOPHER + - GTP-C + - GTP-PRIME + - GTP-U + - HA-CLUSTER + - HOSTNAME + - HP-ALARM-MGR + - HTTP + - HTTP-ALT + - HTTP-MGMT + - HTTP-RPC + - HTTPS + - IEEE-MMS-SSL + - IMAP + - IMAP3 + - IMAPS + - IPP + - IPSEC + - IPX + - IRC + - IRIS-BEEP + - ISAKMP + - ISAKMP-NAT + - ISCSI + - ISO-TSAP + - KERBEROS + - KERBEROS-ADM + - KLOGIN + - KPASSWD + - KSHELL + - L2TP + - LDAP + - LDAPS + - LDP + - LMP + - LOGIN + - LPD + - LSP-PING + - MAC-SERVER-ADM + - MATIP-A + - MATIP-B + - MICRO-BFD + - MICROSOFT-DS + - MOBILE-IP + - MONITOR + - MPP + - MS-EXCHANGE + - MSDP + - MSP + - MSSQL-M + - MSSQL-S + - MULTIHOP-BFD + - NAS + - NCP + - NETBIOS-DATA + - NETBIOS-NS + - NETBIOS-SS + - NETNEWS + - NETRJS-1 + - NETRJS-2 + - NETRJS-3 + - NETRJS-4 + - NETWALL + - NEW-RWHO + - NFS + - NNTP + - NNTPS + - NTP + - ODMR + - OLSR + - OPENVPN + - PIM-AUTO-RP + - PKIX-TIMESTAMP + - POP2 + - POP3 + - POP3S + - PPTP + - PRINT-SRV + - PTP-EVENT + - PTP-GENERAL + - QMTP + - QOTD + - RADIUS + - RADIUS-ACCT + - REMOTE-MAIL + - REMOTEFS + - REMOTECMD + - RIP + - RJE + - RLP + - RLZDB + - RMC + - RMONITOR + - RPC2PORTMAP + - RSYNC + - RTELNET + - RTSP + - SGMP + - SILC + - SMUX + - SNA-GW + - SNMP + - SNMP-TRAP + - SNPP + - SMTP + - SQL-SVCS + - SQL + - SSH + - SUBMISSION + - SUNRPC + - SVCLOC + - SYSLOG + - SYSTAT + - TACACS + - TALK + - TCPMUX + - TCPNETHASPSRV + - TFTP + - TIME + - TIMED + - UPS + - XDMCP + - XNS-CH + - XNS-MAIL + - XNS-TIME + - Z3950 + type: string + sourcePortNumber: + description: Source port to match by numerical value. + maximum: 65535 + minimum: 0 + type: integer + sourcePortOperator: + description: Operator to use when matching sourcePort, either Equals, GreaterOrEquals, or LessOrEquals. + enum: + - Equals + - GreaterOrEquals + - LessOrEquals + type: string + sourcePortRange: + description: Range of source ports to match, in the format n-m, e.g. 100-200. The start and end of the range must be port numbers. + type: string + sourcePrefix: + description: Source prefix to match. + type: string + tcpFlags: + description: Match TCP flags, usable with !, &, | and the flags RST, SYN, and ACK. + type: string + type: object + macEntry: + properties: + action: + description: An action to take, either 'Accept','Drop', or 'RateLimit'. + enum: + - Drop + - Accept + - RateLimit + type: string + destinationMAC: + description: Match an Ethernet frame if its destination MAC address logically anded with the mask equals this MAC address. + type: string + destinationMACMask: + description: Match an Ethernet frame if its destination MAC address logically anded with the mask equals the configured MAC address. + type: string + ethertype: + description: An Ethernet frame matches this condition if its ethertype value (after 802.1Q VLAN tags) matches the specified value. + enum: + - ARP + - AUTHENTICATION8021X + - ETHOAM + - FCOE + - FCOEINITIALIZATION + - FLOWCONTROL + - IPV4 + - IPV6 + - LACP + - LLDP + - MACSEC + - MPLSMULTICAST + - MPLSUNICAST + - PBB + - PPPOEDISCOVERY + - PPPOESESSION + - PTP + - ROCE + type: string + log: + description: Log the matches for this entry. + type: boolean + outerVLANIDOperator: + description: Operator to use when matching OuterVlanIdValue, either Equals, GreaterOrEquals, or LessOrEquals. + enum: + - Equals + - GreaterOrEquals + - LessOrEquals + type: string + outerVLANIDRange: + description: Range of Outer vlan IDs to match, in the format n-m, e.g. 100-200 + type: string + outerVLANIDValue: + description: Ethernet frame matching criteria based on the outermost VLAN ID found before the subinterface-defining VLAN tag (if any) is removed. A value of 'none' will match only untagged frames. + type: string + rateLimit: + description: Rate limit to apply when the action is 'RateLimit'. + properties: + burstSize: + description: The maximum burst size in bytes. + format: int32 + type: integer + entrySpecificPolicer: + default: false + description: 'Controls policer instantiation: false for shared instance, true for per-entry instances' + type: boolean + peakRate: + description: The peak rate in kilobytes per second. + format: int32 + type: integer + scope: + default: Global + description: Determines how the policer is applied across subinterfaces. Global applies the policer across all subinterfaces, while Subinterface applies it individually to each subinterface. + enum: + - Global + - Subinterface + type: string + type: object + sourceMAC: + description: Match an Ethernet frame if its source MAC address logically anded with the mask equals this MAC address. + type: string + sourceMACMask: + description: Match an Ethernet frame if its source MAC address logically anded with the mask equals the configured MAC address. + type: string + type: object + type: + default: Auto + description: Type of the entry which can be IPV4, IPV6, MAC or Auto. + enum: + - IPV4 + - IPV6 + - MAC + - Auto + type: string + required: + - type + type: object + type: array + nodeSelector: + description: Label selector used to select Toponodes on which to deploy the CPM filter. + items: + type: string + type: array + nodes: + description: Reference to a list of TopoNodes on which to deploy the CPM filter. + items: + type: string + type: array + statisticsPerEntry: + description: Enable or disable per-entry counters. + type: boolean + required: + - entries + type: object + status: + description: ControlPlaneFilterStatus defines the observed state of ControlPlaneFilter + type: object + type: object +served: true +storage: true +subresources: + status: {} diff --git a/static/resources/25.8.3/cpuoverlays.components.eda.nokia.com/v1.yaml b/static/resources/25.8.3/cpuoverlays.components.eda.nokia.com/v1.yaml new file mode 100644 index 0000000..7e556fe --- /dev/null +++ b/static/resources/25.8.3/cpuoverlays.components.eda.nokia.com/v1.yaml @@ -0,0 +1,69 @@ +name: v1 +schema: + openAPIV3Schema: + description: CPUOverlay is the Schema for the CPU overlay + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + description: CPUOverlaySpec defines the desired state of CPUOverlay + properties: + enabled: + description: Enable or disable the generation of the status of this overlay + type: boolean + topology: + description: Reference to the topology that this overlay is extending. + properties: + group: + description: The group of the application which published the topology this overlay is extending. + type: string + name: + description: The name of the resource which published the topology this overlay is extending. + type: string + version: + description: The version of the application which published the topology this overlay is extending. + type: string + required: + - group + - name + - version + type: object + uiDescription: + description: A description of the overlay to expose in the UI + type: string + uiDescriptionKey: + description: The translation key for the description of the overlay to expose in the UI + type: string + uiName: + description: The name of the overlay to expose in the UI + type: string + uiNameKey: + description: The translation key for the name of the overlay to expose in the UI + type: string + required: + - enabled + - topology + type: object + status: + description: CPUOverlayStatus defines the observed state of CPUOverlay + type: object + type: object +served: true +storage: true +subresources: + status: {} diff --git a/static/resources/25.8.3/cxclusters.cx.eda.nokia.com/v1alpha1.yaml b/static/resources/25.8.3/cxclusters.cx.eda.nokia.com/v1alpha1.yaml new file mode 100644 index 0000000..c3c6eec --- /dev/null +++ b/static/resources/25.8.3/cxclusters.cx.eda.nokia.com/v1alpha1.yaml @@ -0,0 +1,3713 @@ +name: v1alpha1 +schema: + openAPIV3Schema: + properties: + apiVersion: + type: string + kind: + type: string + metadata: + type: object + spec: + properties: + configMap: + properties: + apiVersion: + type: string + binaryData: + additionalProperties: + format: byte + type: string + type: object + data: + additionalProperties: + type: string + type: object + immutable: + type: boolean + kind: + type: string + metadata: + type: object + type: object + env: + items: + properties: + name: + type: string + value: + type: string + valueFrom: + properties: + configMapKeyRef: + properties: + key: + type: string + name: + default: "" + type: string + optional: + type: boolean + required: + - key + type: object + x-kubernetes-map-type: atomic + fieldRef: + properties: + apiVersion: + type: string + fieldPath: + type: string + required: + - fieldPath + type: object + x-kubernetes-map-type: atomic + resourceFieldRef: + properties: + containerName: + type: string + divisor: + anyOf: + - type: integer + - type: string + pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$ + x-kubernetes-int-or-string: true + resource: + type: string + required: + - resource + type: object + x-kubernetes-map-type: atomic + secretKeyRef: + properties: + key: + type: string + name: + default: "" + type: string + optional: + type: boolean + required: + - key + type: object + x-kubernetes-map-type: atomic + type: object + required: + - name + type: object + type: array + labels: + additionalProperties: + type: string + type: object + links: + x-kubernetes-preserve-unknown-fields: true + name: + type: string + skip: + default: false + type: boolean + topology: + properties: + nodes: + items: + properties: + chassisConfiguration: + properties: + chassisType: + type: integer + macAddress: + type: string + pdType: + type: string + required: + - chassisType + - macAddress + - pdType + type: object + combinedmode: + type: boolean + kind: + default: srl + enum: + - srl + - linux + - srux + - srltest + type: string + name: + type: string + podSpec: + properties: + affinity: + properties: + nodeAffinity: + properties: + preferredDuringSchedulingIgnoredDuringExecution: + items: + properties: + preference: + properties: + matchExpressions: + items: + properties: + key: + type: string + operator: + type: string + values: + items: + type: string + type: array + x-kubernetes-list-type: atomic + required: + - key + - operator + type: object + type: array + x-kubernetes-list-type: atomic + matchFields: + items: + properties: + key: + type: string + operator: + type: string + values: + items: + type: string + type: array + x-kubernetes-list-type: atomic + required: + - key + - operator + type: object + type: array + x-kubernetes-list-type: atomic + type: object + x-kubernetes-map-type: atomic + weight: + format: int32 + type: integer + required: + - preference + - weight + type: object + type: array + x-kubernetes-list-type: atomic + requiredDuringSchedulingIgnoredDuringExecution: + properties: + nodeSelectorTerms: + items: + properties: + matchExpressions: + items: + properties: + key: + type: string + operator: + type: string + values: + items: + type: string + type: array + x-kubernetes-list-type: atomic + required: + - key + - operator + type: object + type: array + x-kubernetes-list-type: atomic + matchFields: + items: + properties: + key: + type: string + operator: + type: string + values: + items: + type: string + type: array + x-kubernetes-list-type: atomic + required: + - key + - operator + type: object + type: array + x-kubernetes-list-type: atomic + type: object + x-kubernetes-map-type: atomic + type: array + x-kubernetes-list-type: atomic + required: + - nodeSelectorTerms + type: object + x-kubernetes-map-type: atomic + type: object + podAffinity: + properties: + preferredDuringSchedulingIgnoredDuringExecution: + items: + properties: + podAffinityTerm: + properties: + labelSelector: + properties: + matchExpressions: + items: + properties: + key: + type: string + operator: + type: string + values: + items: + type: string + type: array + x-kubernetes-list-type: atomic + required: + - key + - operator + type: object + type: array + x-kubernetes-list-type: atomic + matchLabels: + additionalProperties: + type: string + type: object + type: object + x-kubernetes-map-type: atomic + matchLabelKeys: + items: + type: string + type: array + x-kubernetes-list-type: atomic + mismatchLabelKeys: + items: + type: string + type: array + x-kubernetes-list-type: atomic + namespaceSelector: + properties: + matchExpressions: + items: + properties: + key: + type: string + operator: + type: string + values: + items: + type: string + type: array + x-kubernetes-list-type: atomic + required: + - key + - operator + type: object + type: array + x-kubernetes-list-type: atomic + matchLabels: + additionalProperties: + type: string + type: object + type: object + x-kubernetes-map-type: atomic + namespaces: + items: + type: string + type: array + x-kubernetes-list-type: atomic + topologyKey: + type: string + required: + - topologyKey + type: object + weight: + format: int32 + type: integer + required: + - podAffinityTerm + - weight + type: object + type: array + x-kubernetes-list-type: atomic + requiredDuringSchedulingIgnoredDuringExecution: + items: + properties: + labelSelector: + properties: + matchExpressions: + items: + properties: + key: + type: string + operator: + type: string + values: + items: + type: string + type: array + x-kubernetes-list-type: atomic + required: + - key + - operator + type: object + type: array + x-kubernetes-list-type: atomic + matchLabels: + additionalProperties: + type: string + type: object + type: object + x-kubernetes-map-type: atomic + matchLabelKeys: + items: + type: string + type: array + x-kubernetes-list-type: atomic + mismatchLabelKeys: + items: + type: string + type: array + x-kubernetes-list-type: atomic + namespaceSelector: + properties: + matchExpressions: + items: + properties: + key: + type: string + operator: + type: string + values: + items: + type: string + type: array + x-kubernetes-list-type: atomic + required: + - key + - operator + type: object + type: array + x-kubernetes-list-type: atomic + matchLabels: + additionalProperties: + type: string + type: object + type: object + x-kubernetes-map-type: atomic + namespaces: + items: + type: string + type: array + x-kubernetes-list-type: atomic + topologyKey: + type: string + required: + - topologyKey + type: object + type: array + x-kubernetes-list-type: atomic + type: object + podAntiAffinity: + properties: + preferredDuringSchedulingIgnoredDuringExecution: + items: + properties: + podAffinityTerm: + properties: + labelSelector: + properties: + matchExpressions: + items: + properties: + key: + type: string + operator: + type: string + values: + items: + type: string + type: array + x-kubernetes-list-type: atomic + required: + - key + - operator + type: object + type: array + x-kubernetes-list-type: atomic + matchLabels: + additionalProperties: + type: string + type: object + type: object + x-kubernetes-map-type: atomic + matchLabelKeys: + items: + type: string + type: array + x-kubernetes-list-type: atomic + mismatchLabelKeys: + items: + type: string + type: array + x-kubernetes-list-type: atomic + namespaceSelector: + properties: + matchExpressions: + items: + properties: + key: + type: string + operator: + type: string + values: + items: + type: string + type: array + x-kubernetes-list-type: atomic + required: + - key + - operator + type: object + type: array + x-kubernetes-list-type: atomic + matchLabels: + additionalProperties: + type: string + type: object + type: object + x-kubernetes-map-type: atomic + namespaces: + items: + type: string + type: array + x-kubernetes-list-type: atomic + topologyKey: + type: string + required: + - topologyKey + type: object + weight: + format: int32 + type: integer + required: + - podAffinityTerm + - weight + type: object + type: array + x-kubernetes-list-type: atomic + requiredDuringSchedulingIgnoredDuringExecution: + items: + properties: + labelSelector: + properties: + matchExpressions: + items: + properties: + key: + type: string + operator: + type: string + values: + items: + type: string + type: array + x-kubernetes-list-type: atomic + required: + - key + - operator + type: object + type: array + x-kubernetes-list-type: atomic + matchLabels: + additionalProperties: + type: string + type: object + type: object + x-kubernetes-map-type: atomic + matchLabelKeys: + items: + type: string + type: array + x-kubernetes-list-type: atomic + mismatchLabelKeys: + items: + type: string + type: array + x-kubernetes-list-type: atomic + namespaceSelector: + properties: + matchExpressions: + items: + properties: + key: + type: string + operator: + type: string + values: + items: + type: string + type: array + x-kubernetes-list-type: atomic + required: + - key + - operator + type: object + type: array + x-kubernetes-list-type: atomic + matchLabels: + additionalProperties: + type: string + type: object + type: object + x-kubernetes-map-type: atomic + namespaces: + items: + type: string + type: array + x-kubernetes-list-type: atomic + topologyKey: + type: string + required: + - topologyKey + type: object + type: array + x-kubernetes-list-type: atomic + type: object + type: object + annotations: + additionalProperties: + type: string + type: object + containerSpec: + properties: + args: + items: + type: string + type: array + x-kubernetes-list-type: atomic + command: + items: + type: string + type: array + x-kubernetes-list-type: atomic + env: + items: + properties: + name: + type: string + value: + type: string + valueFrom: + properties: + configMapKeyRef: + properties: + key: + type: string + name: + default: "" + type: string + optional: + type: boolean + required: + - key + type: object + x-kubernetes-map-type: atomic + fieldRef: + properties: + apiVersion: + type: string + fieldPath: + type: string + required: + - fieldPath + type: object + x-kubernetes-map-type: atomic + resourceFieldRef: + properties: + containerName: + type: string + divisor: + anyOf: + - type: integer + - type: string + pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$ + x-kubernetes-int-or-string: true + resource: + type: string + required: + - resource + type: object + x-kubernetes-map-type: atomic + secretKeyRef: + properties: + key: + type: string + name: + default: "" + type: string + optional: + type: boolean + required: + - key + type: object + x-kubernetes-map-type: atomic + type: object + required: + - name + type: object + type: array + x-kubernetes-list-map-keys: + - name + x-kubernetes-list-type: map + envFrom: + items: + properties: + configMapRef: + properties: + name: + default: "" + type: string + optional: + type: boolean + type: object + x-kubernetes-map-type: atomic + prefix: + type: string + secretRef: + properties: + name: + default: "" + type: string + optional: + type: boolean + type: object + x-kubernetes-map-type: atomic + type: object + type: array + x-kubernetes-list-type: atomic + image: + type: string + imagePullPolicy: + type: string + lifecycle: + properties: + postStart: + properties: + exec: + properties: + command: + items: + type: string + type: array + x-kubernetes-list-type: atomic + type: object + httpGet: + properties: + host: + type: string + httpHeaders: + items: + properties: + name: + type: string + value: + type: string + required: + - name + - value + type: object + type: array + x-kubernetes-list-type: atomic + path: + type: string + port: + anyOf: + - type: integer + - type: string + x-kubernetes-int-or-string: true + scheme: + type: string + required: + - port + type: object + sleep: + properties: + seconds: + format: int64 + type: integer + required: + - seconds + type: object + tcpSocket: + properties: + host: + type: string + port: + anyOf: + - type: integer + - type: string + x-kubernetes-int-or-string: true + required: + - port + type: object + type: object + preStop: + properties: + exec: + properties: + command: + items: + type: string + type: array + x-kubernetes-list-type: atomic + type: object + httpGet: + properties: + host: + type: string + httpHeaders: + items: + properties: + name: + type: string + value: + type: string + required: + - name + - value + type: object + type: array + x-kubernetes-list-type: atomic + path: + type: string + port: + anyOf: + - type: integer + - type: string + x-kubernetes-int-or-string: true + scheme: + type: string + required: + - port + type: object + sleep: + properties: + seconds: + format: int64 + type: integer + required: + - seconds + type: object + tcpSocket: + properties: + host: + type: string + port: + anyOf: + - type: integer + - type: string + x-kubernetes-int-or-string: true + required: + - port + type: object + type: object + stopSignal: + type: string + type: object + livenessProbe: + properties: + exec: + properties: + command: + items: + type: string + type: array + x-kubernetes-list-type: atomic + type: object + failureThreshold: + format: int32 + type: integer + grpc: + properties: + port: + format: int32 + type: integer + service: + default: "" + type: string + required: + - port + type: object + httpGet: + properties: + host: + type: string + httpHeaders: + items: + properties: + name: + type: string + value: + type: string + required: + - name + - value + type: object + type: array + x-kubernetes-list-type: atomic + path: + type: string + port: + anyOf: + - type: integer + - type: string + x-kubernetes-int-or-string: true + scheme: + type: string + required: + - port + type: object + initialDelaySeconds: + format: int32 + type: integer + periodSeconds: + format: int32 + type: integer + successThreshold: + format: int32 + type: integer + tcpSocket: + properties: + host: + type: string + port: + anyOf: + - type: integer + - type: string + x-kubernetes-int-or-string: true + required: + - port + type: object + terminationGracePeriodSeconds: + format: int64 + type: integer + timeoutSeconds: + format: int32 + type: integer + type: object + name: + type: string + ports: + items: + properties: + containerPort: + format: int32 + type: integer + hostIP: + type: string + hostPort: + format: int32 + type: integer + name: + type: string + protocol: + default: TCP + type: string + required: + - containerPort + type: object + type: array + x-kubernetes-list-map-keys: + - containerPort + - protocol + x-kubernetes-list-type: map + readinessProbe: + properties: + exec: + properties: + command: + items: + type: string + type: array + x-kubernetes-list-type: atomic + type: object + failureThreshold: + format: int32 + type: integer + grpc: + properties: + port: + format: int32 + type: integer + service: + default: "" + type: string + required: + - port + type: object + httpGet: + properties: + host: + type: string + httpHeaders: + items: + properties: + name: + type: string + value: + type: string + required: + - name + - value + type: object + type: array + x-kubernetes-list-type: atomic + path: + type: string + port: + anyOf: + - type: integer + - type: string + x-kubernetes-int-or-string: true + scheme: + type: string + required: + - port + type: object + initialDelaySeconds: + format: int32 + type: integer + periodSeconds: + format: int32 + type: integer + successThreshold: + format: int32 + type: integer + tcpSocket: + properties: + host: + type: string + port: + anyOf: + - type: integer + - type: string + x-kubernetes-int-or-string: true + required: + - port + type: object + terminationGracePeriodSeconds: + format: int64 + type: integer + timeoutSeconds: + format: int32 + type: integer + type: object + resizePolicy: + items: + properties: + resourceName: + type: string + restartPolicy: + type: string + required: + - resourceName + - restartPolicy + type: object + type: array + x-kubernetes-list-type: atomic + resources: + properties: + claims: + items: + properties: + name: + type: string + request: + type: string + required: + - name + type: object + type: array + x-kubernetes-list-map-keys: + - name + x-kubernetes-list-type: map + limits: + additionalProperties: + anyOf: + - type: integer + - type: string + pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$ + x-kubernetes-int-or-string: true + type: object + requests: + additionalProperties: + anyOf: + - type: integer + - type: string + pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$ + x-kubernetes-int-or-string: true + type: object + type: object + restartPolicy: + type: string + securityContext: + properties: + allowPrivilegeEscalation: + type: boolean + appArmorProfile: + properties: + localhostProfile: + type: string + type: + type: string + required: + - type + type: object + capabilities: + properties: + add: + items: + type: string + type: array + x-kubernetes-list-type: atomic + drop: + items: + type: string + type: array + x-kubernetes-list-type: atomic + type: object + privileged: + type: boolean + procMount: + type: string + readOnlyRootFilesystem: + type: boolean + runAsGroup: + format: int64 + type: integer + runAsNonRoot: + type: boolean + runAsUser: + format: int64 + type: integer + seLinuxOptions: + properties: + level: + type: string + role: + type: string + type: + type: string + user: + type: string + type: object + seccompProfile: + properties: + localhostProfile: + type: string + type: + type: string + required: + - type + type: object + windowsOptions: + properties: + gmsaCredentialSpec: + type: string + gmsaCredentialSpecName: + type: string + hostProcess: + type: boolean + runAsUserName: + type: string + type: object + type: object + startupProbe: + properties: + exec: + properties: + command: + items: + type: string + type: array + x-kubernetes-list-type: atomic + type: object + failureThreshold: + format: int32 + type: integer + grpc: + properties: + port: + format: int32 + type: integer + service: + default: "" + type: string + required: + - port + type: object + httpGet: + properties: + host: + type: string + httpHeaders: + items: + properties: + name: + type: string + value: + type: string + required: + - name + - value + type: object + type: array + x-kubernetes-list-type: atomic + path: + type: string + port: + anyOf: + - type: integer + - type: string + x-kubernetes-int-or-string: true + scheme: + type: string + required: + - port + type: object + initialDelaySeconds: + format: int32 + type: integer + periodSeconds: + format: int32 + type: integer + successThreshold: + format: int32 + type: integer + tcpSocket: + properties: + host: + type: string + port: + anyOf: + - type: integer + - type: string + x-kubernetes-int-or-string: true + required: + - port + type: object + terminationGracePeriodSeconds: + format: int64 + type: integer + timeoutSeconds: + format: int32 + type: integer + type: object + stdin: + type: boolean + stdinOnce: + type: boolean + terminationMessagePath: + type: string + terminationMessagePolicy: + type: string + tty: + type: boolean + volumeDevices: + items: + properties: + devicePath: + type: string + name: + type: string + required: + - devicePath + - name + type: object + type: array + x-kubernetes-list-map-keys: + - devicePath + x-kubernetes-list-type: map + volumeMounts: + items: + properties: + mountPath: + type: string + mountPropagation: + type: string + name: + type: string + readOnly: + type: boolean + recursiveReadOnly: + type: string + subPath: + type: string + subPathExpr: + type: string + required: + - mountPath + - name + type: object + type: array + x-kubernetes-list-map-keys: + - mountPath + x-kubernetes-list-type: map + workingDir: + type: string + required: + - name + type: object + env: + items: + properties: + name: + type: string + value: + type: string + valueFrom: + properties: + configMapKeyRef: + properties: + key: + type: string + name: + default: "" + type: string + optional: + type: boolean + required: + - key + type: object + x-kubernetes-map-type: atomic + fieldRef: + properties: + apiVersion: + type: string + fieldPath: + type: string + required: + - fieldPath + type: object + x-kubernetes-map-type: atomic + resourceFieldRef: + properties: + containerName: + type: string + divisor: + anyOf: + - type: integer + - type: string + pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$ + x-kubernetes-int-or-string: true + resource: + type: string + required: + - resource + type: object + x-kubernetes-map-type: atomic + secretKeyRef: + properties: + key: + type: string + name: + default: "" + type: string + optional: + type: boolean + required: + - key + type: object + x-kubernetes-map-type: atomic + type: object + required: + - name + type: object + type: array + image: + type: string + imagePullSecrets: + items: + properties: + name: + default: "" + type: string + type: object + x-kubernetes-map-type: atomic + type: array + initContainers: + items: + properties: + args: + items: + type: string + type: array + x-kubernetes-list-type: atomic + command: + items: + type: string + type: array + x-kubernetes-list-type: atomic + env: + items: + properties: + name: + type: string + value: + type: string + valueFrom: + properties: + configMapKeyRef: + properties: + key: + type: string + name: + default: "" + type: string + optional: + type: boolean + required: + - key + type: object + x-kubernetes-map-type: atomic + fieldRef: + properties: + apiVersion: + type: string + fieldPath: + type: string + required: + - fieldPath + type: object + x-kubernetes-map-type: atomic + resourceFieldRef: + properties: + containerName: + type: string + divisor: + anyOf: + - type: integer + - type: string + pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$ + x-kubernetes-int-or-string: true + resource: + type: string + required: + - resource + type: object + x-kubernetes-map-type: atomic + secretKeyRef: + properties: + key: + type: string + name: + default: "" + type: string + optional: + type: boolean + required: + - key + type: object + x-kubernetes-map-type: atomic + type: object + required: + - name + type: object + type: array + x-kubernetes-list-map-keys: + - name + x-kubernetes-list-type: map + envFrom: + items: + properties: + configMapRef: + properties: + name: + default: "" + type: string + optional: + type: boolean + type: object + x-kubernetes-map-type: atomic + prefix: + type: string + secretRef: + properties: + name: + default: "" + type: string + optional: + type: boolean + type: object + x-kubernetes-map-type: atomic + type: object + type: array + x-kubernetes-list-type: atomic + image: + type: string + imagePullPolicy: + type: string + lifecycle: + properties: + postStart: + properties: + exec: + properties: + command: + items: + type: string + type: array + x-kubernetes-list-type: atomic + type: object + httpGet: + properties: + host: + type: string + httpHeaders: + items: + properties: + name: + type: string + value: + type: string + required: + - name + - value + type: object + type: array + x-kubernetes-list-type: atomic + path: + type: string + port: + anyOf: + - type: integer + - type: string + x-kubernetes-int-or-string: true + scheme: + type: string + required: + - port + type: object + sleep: + properties: + seconds: + format: int64 + type: integer + required: + - seconds + type: object + tcpSocket: + properties: + host: + type: string + port: + anyOf: + - type: integer + - type: string + x-kubernetes-int-or-string: true + required: + - port + type: object + type: object + preStop: + properties: + exec: + properties: + command: + items: + type: string + type: array + x-kubernetes-list-type: atomic + type: object + httpGet: + properties: + host: + type: string + httpHeaders: + items: + properties: + name: + type: string + value: + type: string + required: + - name + - value + type: object + type: array + x-kubernetes-list-type: atomic + path: + type: string + port: + anyOf: + - type: integer + - type: string + x-kubernetes-int-or-string: true + scheme: + type: string + required: + - port + type: object + sleep: + properties: + seconds: + format: int64 + type: integer + required: + - seconds + type: object + tcpSocket: + properties: + host: + type: string + port: + anyOf: + - type: integer + - type: string + x-kubernetes-int-or-string: true + required: + - port + type: object + type: object + stopSignal: + type: string + type: object + livenessProbe: + properties: + exec: + properties: + command: + items: + type: string + type: array + x-kubernetes-list-type: atomic + type: object + failureThreshold: + format: int32 + type: integer + grpc: + properties: + port: + format: int32 + type: integer + service: + default: "" + type: string + required: + - port + type: object + httpGet: + properties: + host: + type: string + httpHeaders: + items: + properties: + name: + type: string + value: + type: string + required: + - name + - value + type: object + type: array + x-kubernetes-list-type: atomic + path: + type: string + port: + anyOf: + - type: integer + - type: string + x-kubernetes-int-or-string: true + scheme: + type: string + required: + - port + type: object + initialDelaySeconds: + format: int32 + type: integer + periodSeconds: + format: int32 + type: integer + successThreshold: + format: int32 + type: integer + tcpSocket: + properties: + host: + type: string + port: + anyOf: + - type: integer + - type: string + x-kubernetes-int-or-string: true + required: + - port + type: object + terminationGracePeriodSeconds: + format: int64 + type: integer + timeoutSeconds: + format: int32 + type: integer + type: object + name: + type: string + ports: + items: + properties: + containerPort: + format: int32 + type: integer + hostIP: + type: string + hostPort: + format: int32 + type: integer + name: + type: string + protocol: + default: TCP + type: string + required: + - containerPort + type: object + type: array + x-kubernetes-list-map-keys: + - containerPort + - protocol + x-kubernetes-list-type: map + readinessProbe: + properties: + exec: + properties: + command: + items: + type: string + type: array + x-kubernetes-list-type: atomic + type: object + failureThreshold: + format: int32 + type: integer + grpc: + properties: + port: + format: int32 + type: integer + service: + default: "" + type: string + required: + - port + type: object + httpGet: + properties: + host: + type: string + httpHeaders: + items: + properties: + name: + type: string + value: + type: string + required: + - name + - value + type: object + type: array + x-kubernetes-list-type: atomic + path: + type: string + port: + anyOf: + - type: integer + - type: string + x-kubernetes-int-or-string: true + scheme: + type: string + required: + - port + type: object + initialDelaySeconds: + format: int32 + type: integer + periodSeconds: + format: int32 + type: integer + successThreshold: + format: int32 + type: integer + tcpSocket: + properties: + host: + type: string + port: + anyOf: + - type: integer + - type: string + x-kubernetes-int-or-string: true + required: + - port + type: object + terminationGracePeriodSeconds: + format: int64 + type: integer + timeoutSeconds: + format: int32 + type: integer + type: object + resizePolicy: + items: + properties: + resourceName: + type: string + restartPolicy: + type: string + required: + - resourceName + - restartPolicy + type: object + type: array + x-kubernetes-list-type: atomic + resources: + properties: + claims: + items: + properties: + name: + type: string + request: + type: string + required: + - name + type: object + type: array + x-kubernetes-list-map-keys: + - name + x-kubernetes-list-type: map + limits: + additionalProperties: + anyOf: + - type: integer + - type: string + pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$ + x-kubernetes-int-or-string: true + type: object + requests: + additionalProperties: + anyOf: + - type: integer + - type: string + pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$ + x-kubernetes-int-or-string: true + type: object + type: object + restartPolicy: + type: string + securityContext: + properties: + allowPrivilegeEscalation: + type: boolean + appArmorProfile: + properties: + localhostProfile: + type: string + type: + type: string + required: + - type + type: object + capabilities: + properties: + add: + items: + type: string + type: array + x-kubernetes-list-type: atomic + drop: + items: + type: string + type: array + x-kubernetes-list-type: atomic + type: object + privileged: + type: boolean + procMount: + type: string + readOnlyRootFilesystem: + type: boolean + runAsGroup: + format: int64 + type: integer + runAsNonRoot: + type: boolean + runAsUser: + format: int64 + type: integer + seLinuxOptions: + properties: + level: + type: string + role: + type: string + type: + type: string + user: + type: string + type: object + seccompProfile: + properties: + localhostProfile: + type: string + type: + type: string + required: + - type + type: object + windowsOptions: + properties: + gmsaCredentialSpec: + type: string + gmsaCredentialSpecName: + type: string + hostProcess: + type: boolean + runAsUserName: + type: string + type: object + type: object + startupProbe: + properties: + exec: + properties: + command: + items: + type: string + type: array + x-kubernetes-list-type: atomic + type: object + failureThreshold: + format: int32 + type: integer + grpc: + properties: + port: + format: int32 + type: integer + service: + default: "" + type: string + required: + - port + type: object + httpGet: + properties: + host: + type: string + httpHeaders: + items: + properties: + name: + type: string + value: + type: string + required: + - name + - value + type: object + type: array + x-kubernetes-list-type: atomic + path: + type: string + port: + anyOf: + - type: integer + - type: string + x-kubernetes-int-or-string: true + scheme: + type: string + required: + - port + type: object + initialDelaySeconds: + format: int32 + type: integer + periodSeconds: + format: int32 + type: integer + successThreshold: + format: int32 + type: integer + tcpSocket: + properties: + host: + type: string + port: + anyOf: + - type: integer + - type: string + x-kubernetes-int-or-string: true + required: + - port + type: object + terminationGracePeriodSeconds: + format: int64 + type: integer + timeoutSeconds: + format: int32 + type: integer + type: object + stdin: + type: boolean + stdinOnce: + type: boolean + terminationMessagePath: + type: string + terminationMessagePolicy: + type: string + tty: + type: boolean + volumeDevices: + items: + properties: + devicePath: + type: string + name: + type: string + required: + - devicePath + - name + type: object + type: array + x-kubernetes-list-map-keys: + - devicePath + x-kubernetes-list-type: map + volumeMounts: + items: + properties: + mountPath: + type: string + mountPropagation: + type: string + name: + type: string + readOnly: + type: boolean + recursiveReadOnly: + type: string + subPath: + type: string + subPathExpr: + type: string + required: + - mountPath + - name + type: object + type: array + x-kubernetes-list-map-keys: + - mountPath + x-kubernetes-list-type: map + workingDir: + type: string + required: + - name + type: object + type: array + labels: + additionalProperties: + type: string + type: object + nodeSelector: + additionalProperties: + type: string + type: object + pullPolicy: + enum: + - Always + - Never + - IfNotPresent + type: string + restartPolicy: + type: string + securityContext: + properties: + appArmorProfile: + properties: + localhostProfile: + type: string + type: + type: string + required: + - type + type: object + fsGroup: + format: int64 + type: integer + fsGroupChangePolicy: + type: string + runAsGroup: + format: int64 + type: integer + runAsNonRoot: + type: boolean + runAsUser: + format: int64 + type: integer + seLinuxChangePolicy: + type: string + seLinuxOptions: + properties: + level: + type: string + role: + type: string + type: + type: string + user: + type: string + type: object + seccompProfile: + properties: + localhostProfile: + type: string + type: + type: string + required: + - type + type: object + supplementalGroups: + items: + format: int64 + type: integer + type: array + x-kubernetes-list-type: atomic + supplementalGroupsPolicy: + type: string + sysctls: + items: + properties: + name: + type: string + value: + type: string + required: + - name + - value + type: object + type: array + x-kubernetes-list-type: atomic + windowsOptions: + properties: + gmsaCredentialSpec: + type: string + gmsaCredentialSpecName: + type: string + hostProcess: + type: boolean + runAsUserName: + type: string + type: object + type: object + sidecars: + items: + properties: + args: + items: + type: string + type: array + x-kubernetes-list-type: atomic + command: + items: + type: string + type: array + x-kubernetes-list-type: atomic + env: + items: + properties: + name: + type: string + value: + type: string + valueFrom: + properties: + configMapKeyRef: + properties: + key: + type: string + name: + default: "" + type: string + optional: + type: boolean + required: + - key + type: object + x-kubernetes-map-type: atomic + fieldRef: + properties: + apiVersion: + type: string + fieldPath: + type: string + required: + - fieldPath + type: object + x-kubernetes-map-type: atomic + resourceFieldRef: + properties: + containerName: + type: string + divisor: + anyOf: + - type: integer + - type: string + pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$ + x-kubernetes-int-or-string: true + resource: + type: string + required: + - resource + type: object + x-kubernetes-map-type: atomic + secretKeyRef: + properties: + key: + type: string + name: + default: "" + type: string + optional: + type: boolean + required: + - key + type: object + x-kubernetes-map-type: atomic + type: object + required: + - name + type: object + type: array + x-kubernetes-list-map-keys: + - name + x-kubernetes-list-type: map + envFrom: + items: + properties: + configMapRef: + properties: + name: + default: "" + type: string + optional: + type: boolean + type: object + x-kubernetes-map-type: atomic + prefix: + type: string + secretRef: + properties: + name: + default: "" + type: string + optional: + type: boolean + type: object + x-kubernetes-map-type: atomic + type: object + type: array + x-kubernetes-list-type: atomic + image: + type: string + imagePullPolicy: + type: string + lifecycle: + properties: + postStart: + properties: + exec: + properties: + command: + items: + type: string + type: array + x-kubernetes-list-type: atomic + type: object + httpGet: + properties: + host: + type: string + httpHeaders: + items: + properties: + name: + type: string + value: + type: string + required: + - name + - value + type: object + type: array + x-kubernetes-list-type: atomic + path: + type: string + port: + anyOf: + - type: integer + - type: string + x-kubernetes-int-or-string: true + scheme: + type: string + required: + - port + type: object + sleep: + properties: + seconds: + format: int64 + type: integer + required: + - seconds + type: object + tcpSocket: + properties: + host: + type: string + port: + anyOf: + - type: integer + - type: string + x-kubernetes-int-or-string: true + required: + - port + type: object + type: object + preStop: + properties: + exec: + properties: + command: + items: + type: string + type: array + x-kubernetes-list-type: atomic + type: object + httpGet: + properties: + host: + type: string + httpHeaders: + items: + properties: + name: + type: string + value: + type: string + required: + - name + - value + type: object + type: array + x-kubernetes-list-type: atomic + path: + type: string + port: + anyOf: + - type: integer + - type: string + x-kubernetes-int-or-string: true + scheme: + type: string + required: + - port + type: object + sleep: + properties: + seconds: + format: int64 + type: integer + required: + - seconds + type: object + tcpSocket: + properties: + host: + type: string + port: + anyOf: + - type: integer + - type: string + x-kubernetes-int-or-string: true + required: + - port + type: object + type: object + stopSignal: + type: string + type: object + livenessProbe: + properties: + exec: + properties: + command: + items: + type: string + type: array + x-kubernetes-list-type: atomic + type: object + failureThreshold: + format: int32 + type: integer + grpc: + properties: + port: + format: int32 + type: integer + service: + default: "" + type: string + required: + - port + type: object + httpGet: + properties: + host: + type: string + httpHeaders: + items: + properties: + name: + type: string + value: + type: string + required: + - name + - value + type: object + type: array + x-kubernetes-list-type: atomic + path: + type: string + port: + anyOf: + - type: integer + - type: string + x-kubernetes-int-or-string: true + scheme: + type: string + required: + - port + type: object + initialDelaySeconds: + format: int32 + type: integer + periodSeconds: + format: int32 + type: integer + successThreshold: + format: int32 + type: integer + tcpSocket: + properties: + host: + type: string + port: + anyOf: + - type: integer + - type: string + x-kubernetes-int-or-string: true + required: + - port + type: object + terminationGracePeriodSeconds: + format: int64 + type: integer + timeoutSeconds: + format: int32 + type: integer + type: object + name: + type: string + ports: + items: + properties: + containerPort: + format: int32 + type: integer + hostIP: + type: string + hostPort: + format: int32 + type: integer + name: + type: string + protocol: + default: TCP + type: string + required: + - containerPort + type: object + type: array + x-kubernetes-list-map-keys: + - containerPort + - protocol + x-kubernetes-list-type: map + readinessProbe: + properties: + exec: + properties: + command: + items: + type: string + type: array + x-kubernetes-list-type: atomic + type: object + failureThreshold: + format: int32 + type: integer + grpc: + properties: + port: + format: int32 + type: integer + service: + default: "" + type: string + required: + - port + type: object + httpGet: + properties: + host: + type: string + httpHeaders: + items: + properties: + name: + type: string + value: + type: string + required: + - name + - value + type: object + type: array + x-kubernetes-list-type: atomic + path: + type: string + port: + anyOf: + - type: integer + - type: string + x-kubernetes-int-or-string: true + scheme: + type: string + required: + - port + type: object + initialDelaySeconds: + format: int32 + type: integer + periodSeconds: + format: int32 + type: integer + successThreshold: + format: int32 + type: integer + tcpSocket: + properties: + host: + type: string + port: + anyOf: + - type: integer + - type: string + x-kubernetes-int-or-string: true + required: + - port + type: object + terminationGracePeriodSeconds: + format: int64 + type: integer + timeoutSeconds: + format: int32 + type: integer + type: object + resizePolicy: + items: + properties: + resourceName: + type: string + restartPolicy: + type: string + required: + - resourceName + - restartPolicy + type: object + type: array + x-kubernetes-list-type: atomic + resources: + properties: + claims: + items: + properties: + name: + type: string + request: + type: string + required: + - name + type: object + type: array + x-kubernetes-list-map-keys: + - name + x-kubernetes-list-type: map + limits: + additionalProperties: + anyOf: + - type: integer + - type: string + pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$ + x-kubernetes-int-or-string: true + type: object + requests: + additionalProperties: + anyOf: + - type: integer + - type: string + pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$ + x-kubernetes-int-or-string: true + type: object + type: object + restartPolicy: + type: string + securityContext: + properties: + allowPrivilegeEscalation: + type: boolean + appArmorProfile: + properties: + localhostProfile: + type: string + type: + type: string + required: + - type + type: object + capabilities: + properties: + add: + items: + type: string + type: array + x-kubernetes-list-type: atomic + drop: + items: + type: string + type: array + x-kubernetes-list-type: atomic + type: object + privileged: + type: boolean + procMount: + type: string + readOnlyRootFilesystem: + type: boolean + runAsGroup: + format: int64 + type: integer + runAsNonRoot: + type: boolean + runAsUser: + format: int64 + type: integer + seLinuxOptions: + properties: + level: + type: string + role: + type: string + type: + type: string + user: + type: string + type: object + seccompProfile: + properties: + localhostProfile: + type: string + type: + type: string + required: + - type + type: object + windowsOptions: + properties: + gmsaCredentialSpec: + type: string + gmsaCredentialSpecName: + type: string + hostProcess: + type: boolean + runAsUserName: + type: string + type: object + type: object + startupProbe: + properties: + exec: + properties: + command: + items: + type: string + type: array + x-kubernetes-list-type: atomic + type: object + failureThreshold: + format: int32 + type: integer + grpc: + properties: + port: + format: int32 + type: integer + service: + default: "" + type: string + required: + - port + type: object + httpGet: + properties: + host: + type: string + httpHeaders: + items: + properties: + name: + type: string + value: + type: string + required: + - name + - value + type: object + type: array + x-kubernetes-list-type: atomic + path: + type: string + port: + anyOf: + - type: integer + - type: string + x-kubernetes-int-or-string: true + scheme: + type: string + required: + - port + type: object + initialDelaySeconds: + format: int32 + type: integer + periodSeconds: + format: int32 + type: integer + successThreshold: + format: int32 + type: integer + tcpSocket: + properties: + host: + type: string + port: + anyOf: + - type: integer + - type: string + x-kubernetes-int-or-string: true + required: + - port + type: object + terminationGracePeriodSeconds: + format: int64 + type: integer + timeoutSeconds: + format: int32 + type: integer + type: object + stdin: + type: boolean + stdinOnce: + type: boolean + terminationMessagePath: + type: string + terminationMessagePolicy: + type: string + tty: + type: boolean + volumeDevices: + items: + properties: + devicePath: + type: string + name: + type: string + required: + - devicePath + - name + type: object + type: array + x-kubernetes-list-map-keys: + - devicePath + x-kubernetes-list-type: map + volumeMounts: + items: + properties: + mountPath: + type: string + mountPropagation: + type: string + name: + type: string + readOnly: + type: boolean + recursiveReadOnly: + type: string + subPath: + type: string + subPathExpr: + type: string + required: + - mountPath + - name + type: object + type: array + x-kubernetes-list-map-keys: + - mountPath + x-kubernetes-list-type: map + workingDir: + type: string + required: + - name + type: object + type: array + terminationGracePeriodSeconds: + format: int64 + minimum: 0 + type: integer + volumeMounts: + items: + properties: + mountPath: + type: string + mountPropagation: + type: string + name: + type: string + readOnly: + type: boolean + recursiveReadOnly: + type: string + subPath: + type: string + subPathExpr: + type: string + required: + - mountPath + - name + type: object + type: array + volumes: + items: + properties: + awsElasticBlockStore: + properties: + fsType: + type: string + partition: + format: int32 + type: integer + readOnly: + type: boolean + volumeID: + type: string + required: + - volumeID + type: object + azureDisk: + properties: + cachingMode: + type: string + diskName: + type: string + diskURI: + type: string + fsType: + default: ext4 + type: string + kind: + type: string + readOnly: + default: false + type: boolean + required: + - diskName + - diskURI + type: object + azureFile: + properties: + readOnly: + type: boolean + secretName: + type: string + shareName: + type: string + required: + - secretName + - shareName + type: object + cephfs: + properties: + monitors: + items: + type: string + type: array + x-kubernetes-list-type: atomic + path: + type: string + readOnly: + type: boolean + secretFile: + type: string + secretRef: + properties: + name: + default: "" + type: string + type: object + x-kubernetes-map-type: atomic + user: + type: string + required: + - monitors + type: object + cinder: + properties: + fsType: + type: string + readOnly: + type: boolean + secretRef: + properties: + name: + default: "" + type: string + type: object + x-kubernetes-map-type: atomic + volumeID: + type: string + required: + - volumeID + type: object + configMap: + properties: + defaultMode: + format: int32 + type: integer + items: + items: + properties: + key: + type: string + mode: + format: int32 + type: integer + path: + type: string + required: + - key + - path + type: object + type: array + x-kubernetes-list-type: atomic + name: + default: "" + type: string + optional: + type: boolean + type: object + x-kubernetes-map-type: atomic + csi: + properties: + driver: + type: string + fsType: + type: string + nodePublishSecretRef: + properties: + name: + default: "" + type: string + type: object + x-kubernetes-map-type: atomic + readOnly: + type: boolean + volumeAttributes: + additionalProperties: + type: string + type: object + required: + - driver + type: object + downwardAPI: + properties: + defaultMode: + format: int32 + type: integer + items: + items: + properties: + fieldRef: + properties: + apiVersion: + type: string + fieldPath: + type: string + required: + - fieldPath + type: object + x-kubernetes-map-type: atomic + mode: + format: int32 + type: integer + path: + type: string + resourceFieldRef: + properties: + containerName: + type: string + divisor: + anyOf: + - type: integer + - type: string + pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$ + x-kubernetes-int-or-string: true + resource: + type: string + required: + - resource + type: object + x-kubernetes-map-type: atomic + required: + - path + type: object + type: array + x-kubernetes-list-type: atomic + type: object + emptyDir: + properties: + medium: + type: string + sizeLimit: + anyOf: + - type: integer + - type: string + pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$ + x-kubernetes-int-or-string: true + type: object + ephemeral: + properties: + volumeClaimTemplate: + properties: + metadata: + type: object + spec: + properties: + accessModes: + items: + type: string + type: array + x-kubernetes-list-type: atomic + dataSource: + properties: + apiGroup: + type: string + kind: + type: string + name: + type: string + required: + - kind + - name + type: object + x-kubernetes-map-type: atomic + dataSourceRef: + properties: + apiGroup: + type: string + kind: + type: string + name: + type: string + namespace: + type: string + required: + - kind + - name + type: object + resources: + properties: + limits: + additionalProperties: + anyOf: + - type: integer + - type: string + pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$ + x-kubernetes-int-or-string: true + type: object + requests: + additionalProperties: + anyOf: + - type: integer + - type: string + pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$ + x-kubernetes-int-or-string: true + type: object + type: object + selector: + properties: + matchExpressions: + items: + properties: + key: + type: string + operator: + type: string + values: + items: + type: string + type: array + x-kubernetes-list-type: atomic + required: + - key + - operator + type: object + type: array + x-kubernetes-list-type: atomic + matchLabels: + additionalProperties: + type: string + type: object + type: object + x-kubernetes-map-type: atomic + storageClassName: + type: string + volumeAttributesClassName: + type: string + volumeMode: + type: string + volumeName: + type: string + type: object + required: + - spec + type: object + type: object + fc: + properties: + fsType: + type: string + lun: + format: int32 + type: integer + readOnly: + type: boolean + targetWWNs: + items: + type: string + type: array + x-kubernetes-list-type: atomic + wwids: + items: + type: string + type: array + x-kubernetes-list-type: atomic + type: object + flexVolume: + properties: + driver: + type: string + fsType: + type: string + options: + additionalProperties: + type: string + type: object + readOnly: + type: boolean + secretRef: + properties: + name: + default: "" + type: string + type: object + x-kubernetes-map-type: atomic + required: + - driver + type: object + flocker: + properties: + datasetName: + type: string + datasetUUID: + type: string + type: object + gcePersistentDisk: + properties: + fsType: + type: string + partition: + format: int32 + type: integer + pdName: + type: string + readOnly: + type: boolean + required: + - pdName + type: object + gitRepo: + properties: + directory: + type: string + repository: + type: string + revision: + type: string + required: + - repository + type: object + glusterfs: + properties: + endpoints: + type: string + path: + type: string + readOnly: + type: boolean + required: + - endpoints + - path + type: object + hostPath: + properties: + path: + type: string + type: + type: string + required: + - path + type: object + image: + properties: + pullPolicy: + type: string + reference: + type: string + type: object + iscsi: + properties: + chapAuthDiscovery: + type: boolean + chapAuthSession: + type: boolean + fsType: + type: string + initiatorName: + type: string + iqn: + type: string + iscsiInterface: + default: default + type: string + lun: + format: int32 + type: integer + portals: + items: + type: string + type: array + x-kubernetes-list-type: atomic + readOnly: + type: boolean + secretRef: + properties: + name: + default: "" + type: string + type: object + x-kubernetes-map-type: atomic + targetPortal: + type: string + required: + - iqn + - lun + - targetPortal + type: object + name: + type: string + nfs: + properties: + path: + type: string + readOnly: + type: boolean + server: + type: string + required: + - path + - server + type: object + persistentVolumeClaim: + properties: + claimName: + type: string + readOnly: + type: boolean + required: + - claimName + type: object + photonPersistentDisk: + properties: + fsType: + type: string + pdID: + type: string + required: + - pdID + type: object + portworxVolume: + properties: + fsType: + type: string + readOnly: + type: boolean + volumeID: + type: string + required: + - volumeID + type: object + projected: + properties: + defaultMode: + format: int32 + type: integer + sources: + items: + properties: + clusterTrustBundle: + properties: + labelSelector: + properties: + matchExpressions: + items: + properties: + key: + type: string + operator: + type: string + values: + items: + type: string + type: array + x-kubernetes-list-type: atomic + required: + - key + - operator + type: object + type: array + x-kubernetes-list-type: atomic + matchLabels: + additionalProperties: + type: string + type: object + type: object + x-kubernetes-map-type: atomic + name: + type: string + optional: + type: boolean + path: + type: string + signerName: + type: string + required: + - path + type: object + configMap: + properties: + items: + items: + properties: + key: + type: string + mode: + format: int32 + type: integer + path: + type: string + required: + - key + - path + type: object + type: array + x-kubernetes-list-type: atomic + name: + default: "" + type: string + optional: + type: boolean + type: object + x-kubernetes-map-type: atomic + downwardAPI: + properties: + items: + items: + properties: + fieldRef: + properties: + apiVersion: + type: string + fieldPath: + type: string + required: + - fieldPath + type: object + x-kubernetes-map-type: atomic + mode: + format: int32 + type: integer + path: + type: string + resourceFieldRef: + properties: + containerName: + type: string + divisor: + anyOf: + - type: integer + - type: string + pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$ + x-kubernetes-int-or-string: true + resource: + type: string + required: + - resource + type: object + x-kubernetes-map-type: atomic + required: + - path + type: object + type: array + x-kubernetes-list-type: atomic + type: object + secret: + properties: + items: + items: + properties: + key: + type: string + mode: + format: int32 + type: integer + path: + type: string + required: + - key + - path + type: object + type: array + x-kubernetes-list-type: atomic + name: + default: "" + type: string + optional: + type: boolean + type: object + x-kubernetes-map-type: atomic + serviceAccountToken: + properties: + audience: + type: string + expirationSeconds: + format: int64 + type: integer + path: + type: string + required: + - path + type: object + type: object + type: array + x-kubernetes-list-type: atomic + type: object + quobyte: + properties: + group: + type: string + readOnly: + type: boolean + registry: + type: string + tenant: + type: string + user: + type: string + volume: + type: string + required: + - registry + - volume + type: object + rbd: + properties: + fsType: + type: string + image: + type: string + keyring: + default: /etc/ceph/keyring + type: string + monitors: + items: + type: string + type: array + x-kubernetes-list-type: atomic + pool: + default: rbd + type: string + readOnly: + type: boolean + secretRef: + properties: + name: + default: "" + type: string + type: object + x-kubernetes-map-type: atomic + user: + default: admin + type: string + required: + - image + - monitors + type: object + scaleIO: + properties: + fsType: + default: xfs + type: string + gateway: + type: string + protectionDomain: + type: string + readOnly: + type: boolean + secretRef: + properties: + name: + default: "" + type: string + type: object + x-kubernetes-map-type: atomic + sslEnabled: + type: boolean + storageMode: + default: ThinProvisioned + type: string + storagePool: + type: string + system: + type: string + volumeName: + type: string + required: + - gateway + - secretRef + - system + type: object + secret: + properties: + defaultMode: + format: int32 + type: integer + items: + items: + properties: + key: + type: string + mode: + format: int32 + type: integer + path: + type: string + required: + - key + - path + type: object + type: array + x-kubernetes-list-type: atomic + optional: + type: boolean + secretName: + type: string + type: object + storageos: + properties: + fsType: + type: string + readOnly: + type: boolean + secretRef: + properties: + name: + default: "" + type: string + type: object + x-kubernetes-map-type: atomic + volumeName: + type: string + volumeNamespace: + type: string + type: object + vsphereVolume: + properties: + fsType: + type: string + storagePolicyID: + type: string + storagePolicyName: + type: string + volumePath: + type: string + required: + - volumePath + type: object + required: + - name + type: object + type: array + type: object + preferredAddressFamily: + type: string + profile: + type: string + slotConfigurations: + items: + properties: + cardStr: + type: string + cardType: + maximum: 255 + type: integer + mdaStr: + items: + type: string + type: array + mdaType: + maximum: 255 + type: integer + sfmStr: + type: string + slotNumber: + maximum: 60 + type: integer + slotStr: + type: string + xiomStr: + items: + type: string + type: array + required: + - cardType + - slotNumber + type: object + maxItems: 20 + minItems: 1 + type: array + type: + type: string + version: + type: string + required: + - combinedmode + - kind + - name + - profile + - type + - version + type: object + type: array + required: + - nodes + type: object + version: + type: string + required: + - topology + type: object + status: + properties: + generations: + properties: + reconciled: + format: int64 + type: integer + type: object + name: + type: string + pods: + additionalProperties: + properties: + chassisName: + type: string + clusterName: + type: string + cxInfo: + properties: + endpoints: + items: + items: + type: string + type: array + type: array + type: object + image: + type: string + podIP: + type: string + required: + - chassisName + - clusterName + - image + - podIP + type: object + type: object + version: + type: string + required: + - pods + type: object + type: object +served: true +storage: true +subresources: + status: {} diff --git a/static/resources/25.8.3/defaultaggregateroutes.protocols.eda.nokia.com/v1.yaml b/static/resources/25.8.3/defaultaggregateroutes.protocols.eda.nokia.com/v1.yaml new file mode 100644 index 0000000..70ad6f1 --- /dev/null +++ b/static/resources/25.8.3/defaultaggregateroutes.protocols.eda.nokia.com/v1.yaml @@ -0,0 +1,58 @@ +name: v1 +schema: + openAPIV3Schema: + description: DefaultAggregateRoute is the Schema for the defaultaggregateroutes API + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + description: DefaultAggregateRoute allows the configuration of aggregate routes on a DefaultRouter. It includes specifying destination prefixes, the DefaultRouter, and settings for generating ICMP unreachable messages or blocking route advertisement. Additionally, it configures the aggregator’s IP address and ASN for efficient route management. + properties: + aggregatorASN: + description: Specifies the aggregator's ASN. + format: int32 + type: integer + aggregatorIP: + description: Specifies the aggregator's IP address. + type: string + defaultRouter: + description: Reference to a Default Router on which to configure the aggregate routes. If no Nodes are provided then the aggregate routes will be provisioned on all Nodes on which the Router is provisioned. + type: string + generateICMP: + description: When set to true the router generares ICMP unreachable messages for packets matching the aggregate route (and not a more specific route). + type: boolean + prefixes: + description: List of destination prefixes for the aggregate routes. + items: + type: string + type: array + summaryOnly: + description: When set to true the router blocks the advertisement of all contributing routes of this aggregate route in dynamic protocols such as BGP. + type: boolean + required: + - defaultRouter + - prefixes + type: object + status: + description: DefaultAggregateRouteStatus defines the observed state of DefaultAggregateRoute + type: object + type: object +served: true +storage: true +subresources: + status: {} diff --git a/static/resources/25.8.3/defaultaggregateroutes.protocols.eda.nokia.com/v1alpha1.yaml b/static/resources/25.8.3/defaultaggregateroutes.protocols.eda.nokia.com/v1alpha1.yaml new file mode 100644 index 0000000..b41b191 --- /dev/null +++ b/static/resources/25.8.3/defaultaggregateroutes.protocols.eda.nokia.com/v1alpha1.yaml @@ -0,0 +1,60 @@ +deprecated: true +deprecationWarning: This version is deprecated and will no longer be supported in the next version. +name: v1alpha1 +schema: + openAPIV3Schema: + description: DefaultAggregateRoute is the Schema for the defaultaggregateroutes API + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + description: DefaultAggregateRoute allows the configuration of aggregate routes on a DefaultRouter. It includes specifying destination prefixes, the DefaultRouter, and settings for generating ICMP unreachable messages or blocking route advertisement. Additionally, it configures the aggregator’s IP address and ASN for efficient route management. + properties: + aggregatorASN: + description: Specifies the aggregator's ASN. + format: int32 + type: integer + aggregatorIP: + description: Specifies the aggregator's IP address. + type: string + defaultRouter: + description: Reference to a Default Router on which to configure the aggregate routes. If no Nodes are provided then the aggregate routes will be provisioned on all Nodes on which the Router is provisioned. + type: string + generateICMP: + description: When set to true the router generares ICMP unreachable messages for packets matching the aggregate route (and not a more specific route). + type: boolean + prefixes: + description: List of destination prefixes for the aggregate routes. + items: + type: string + type: array + summaryOnly: + description: When set to true the router blocks the advertisement of all contributing routes of this aggregate route in dynamic protocols such as BGP. + type: boolean + required: + - defaultRouter + - prefixes + type: object + status: + description: DefaultAggregateRouteStatus defines the observed state of DefaultAggregateRoute + type: object + type: object +served: true +storage: false +subresources: + status: {} diff --git a/static/resources/25.8.3/defaultbgpgroupdeployments.protocols.eda.nokia.com/v1.yaml b/static/resources/25.8.3/defaultbgpgroupdeployments.protocols.eda.nokia.com/v1.yaml new file mode 100644 index 0000000..ceb6520 --- /dev/null +++ b/static/resources/25.8.3/defaultbgpgroupdeployments.protocols.eda.nokia.com/v1.yaml @@ -0,0 +1,43 @@ +name: v1 +schema: + openAPIV3Schema: + description: DefaultBGPGroupDeployment is the Schema for the defaultbgpgroupdeployments API + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + description: DefaultBGPGroupDeploymentSpec defines the desired state of DefaultBGPGroupDeployment + properties: + defaultBGPGroup: + description: Reference to a DefaultBgpGroup + type: string + node: + description: Reference to a Node on which to push the BgpGroup + type: string + required: + - defaultBGPGroup + - node + type: object + status: + description: DefaultBGPGroupDeploymentStatus defines the observed state of DefaultBGPGroupDeployment + type: object + type: object +served: true +storage: true +subresources: + status: {} diff --git a/static/resources/25.8.3/defaultbgpgroupdeployments.protocols.eda.nokia.com/v1alpha1.yaml b/static/resources/25.8.3/defaultbgpgroupdeployments.protocols.eda.nokia.com/v1alpha1.yaml new file mode 100644 index 0000000..1f49bf6 --- /dev/null +++ b/static/resources/25.8.3/defaultbgpgroupdeployments.protocols.eda.nokia.com/v1alpha1.yaml @@ -0,0 +1,45 @@ +deprecated: true +deprecationWarning: This version is deprecated and will no longer be supported in the next version. +name: v1alpha1 +schema: + openAPIV3Schema: + description: DefaultBGPGroupDeployment is the Schema for the defaultbgpgroupdeployments API + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + description: DefaultBGPGroupDeploymentSpec defines the desired state of DefaultBGPGroupDeployment + properties: + defaultBGPGroup: + description: Reference to a DefaultBgpGroup + type: string + node: + description: Reference to a Node on which to push the BgpGroup + type: string + required: + - defaultBGPGroup + - node + type: object + status: + description: DefaultBGPGroupDeploymentStatus defines the observed state of DefaultBGPGroupDeployment + type: object + type: object +served: true +storage: false +subresources: + status: {} diff --git a/static/resources/25.8.3/defaultbgpgroups.protocols.eda.nokia.com/v1.yaml b/static/resources/25.8.3/defaultbgpgroups.protocols.eda.nokia.com/v1.yaml new file mode 100644 index 0000000..052e087 --- /dev/null +++ b/static/resources/25.8.3/defaultbgpgroups.protocols.eda.nokia.com/v1.yaml @@ -0,0 +1,361 @@ +additionalPrinterColumns: + - jsonPath: .status.lastChange + name: Last Change + type: date + - jsonPath: .status.operationalState + name: Operational State + type: string +name: v1 +schema: + openAPIV3Schema: + description: DefaultBGPGroup is the Schema for the defaultbgpgroups API + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + description: The DefaultBGPGroup enables centralized management of BGP peer configurations within a DefaultRouter. This resource allows setting a description, common BGP settings, and peer-specific configurations, simplifying the consistent application of policies across multiple peers. It also includes transport settings, such as local TCP address configuration, passive mode, and TCP MSS. type DefaultBGPGroupSpec struct { + properties: + asPathOptions: + description: AS Path Options + properties: + allowOwnAS: + default: 0 + description: The maximum number of times the global AS number or a local AS number of the BGP instance can appear in any received AS_PATH before it is considered a loop and considered invalid. + maximum: 255 + minimum: 0 + type: integer + removePrivateAS: + description: Options for removing private AS numbers (2-byte and 4-byte) from the advertised AS path towards all peers. + properties: + ignorePeerAS: + default: false + description: If set to true then do not delete or replace a private AS number that is the same as the peer AS number. + type: boolean + leadingOnly: + default: false + description: If set to true then only delete or replace private AS numbers that appear before the first occurrence of a non-private ASN in the sequence of most recent ASNs in the AS path. + type: boolean + removePrivateASMode: + default: DISABLED + description: The method by which private AS numbers are removed from the advertised AS_PATH attribute. + enum: + - DISABLED + - REPLACE + - DELETE + type: string + required: + - ignorePeerAS + - leadingOnly + - removePrivateASMode + type: object + required: + - allowOwnAS + type: object + bfd: + description: Enable or disable Bi-forward Forwarding Detection (BFD) with fast failover. + type: boolean + client: + description: When set to true, all configured and dynamic BGP peers are considered RR clients. + type: boolean + clusterID: + description: Enables route reflect client and sets the cluster ID. + type: string + description: + description: Sets the description on the BGP group. + type: string + exportPolicy: + description: Reference to a Policy CR that will be used to filter routes advertised to peers. + items: + type: string + type: array + grStaleRouteTime: + description: Enables Graceful Restart on the peer and sets the stale route time. + maximum: 3600 + minimum: 1 + type: integer + importPolicy: + description: Reference to a Policy CR that will be used to filter routes received from peers. + items: + type: string + type: array + ipv4Unicast: + description: Parameters relating to the IPv4 unicast AFI/SAFI. + properties: + advertiseIPV6NextHops: + description: Enables advertisement of IPv4 Unicast routes with IPv6 next-hops to peers. + type: boolean + enabled: + description: Enables the IPv4 unicast AFISAFI. + type: boolean + prefixLimit: + properties: + prefixLimitAccepted: + properties: + logOnly: + description: Defines the action to take when the maximum number of prefixes is exceeded. Session is reset if set to false, otherwise only a warning is logged. + type: boolean + maxReceivedRoutes: + description: Maximum number of prefixes allowed to be received from the neighbor, counting only accepted routes. + format: int32 + maximum: 4294967295 + minimum: 1 + type: integer + warningThreshold: + description: A percentage of the maximum number of prefixes that can be accepted before a warning is logged. + maximum: 100 + minimum: 1 + type: integer + type: object + prefixLimitReceived: + properties: + logOnly: + description: Defines the action to take when the maximum number of prefixes is exceeded. Session is reset if set to false, otherwise only a warning is logged. + type: boolean + maxReceivedRoutes: + description: Maximum number of prefixes allowed to be received from the neighbor, counting all routes (accepted and rejected by import policies). + format: int32 + maximum: 4294967295 + minimum: 1 + type: integer + warningThreshold: + description: A percentage of the maximum number of prefixes that can be received before a warning is logged. + maximum: 100 + minimum: 1 + type: integer + type: object + type: object + receiveIPV6NextHops: + description: Enables the advertisement of the RFC 5549 capability to receive IPv4 routes with IPv6 next-hops. + type: boolean + type: object + ipv6Unicast: + description: Parameters relating to the IPv6 unicast AFI/SAFI. + properties: + enabled: + description: Enables the IPv6 unicast AFISAFI + type: boolean + prefixLimit: + properties: + prefixLimitAccepted: + properties: + logOnly: + description: Defines the action to take when the maximum number of prefixes is exceeded. Session is reset if set to false, otherwise only a warning is logged. + type: boolean + maxReceivedRoutes: + description: Maximum number of prefixes allowed to be received from the neighbor, counting only accepted routes. + format: int32 + maximum: 4294967295 + minimum: 1 + type: integer + warningThreshold: + description: A percentage of the maximum number of prefixes that can be accepted before a warning is logged. + maximum: 100 + minimum: 1 + type: integer + type: object + prefixLimitReceived: + properties: + logOnly: + description: Defines the action to take when the maximum number of prefixes is exceeded. Session is reset if set to false, otherwise only a warning is logged. + type: boolean + maxReceivedRoutes: + description: Maximum number of prefixes allowed to be received from the neighbor, counting all routes (accepted and rejected by import policies). + format: int32 + maximum: 4294967295 + minimum: 1 + type: integer + warningThreshold: + description: A percentage of the maximum number of prefixes that can be received before a warning is logged. + maximum: 100 + minimum: 1 + type: integer + type: object + type: object + type: object + keychain: + description: Reference to a Keychain resource that will be used for authentication with the BGP peer. + type: string + l2VPNEVPN: + description: Parameters relating to the EVPN AFI/SAFI. + properties: + advertiseIPV6NextHops: + description: Enables advertisement of EVPN routes with IPv6 next-hops to peers. + type: boolean + enabled: + description: Enables the L2VPN EVPN AFISAFI. + type: boolean + prefixLimit: + properties: + prefixLimitAccepted: + properties: + logOnly: + description: Defines the action to take when the maximum number of prefixes is exceeded. Session is reset if set to false, otherwise only a warning is logged. + type: boolean + maxReceivedRoutes: + description: Maximum number of prefixes allowed to be received from the neighbor, counting only accepted routes. + format: int32 + maximum: 4294967295 + minimum: 1 + type: integer + warningThreshold: + description: A percentage of the maximum number of prefixes that can be accepted before a warning is logged. + maximum: 100 + minimum: 1 + type: integer + type: object + prefixLimitReceived: + properties: + logOnly: + description: Defines the action to take when the maximum number of prefixes is exceeded. Session is reset if set to false, otherwise only a warning is logged. + type: boolean + maxReceivedRoutes: + description: Maximum number of prefixes allowed to be received from the neighbor, counting all routes (accepted and rejected by import policies). + format: int32 + maximum: 4294967295 + minimum: 1 + type: integer + warningThreshold: + description: A percentage of the maximum number of prefixes that can be received before a warning is logged. + maximum: 100 + minimum: 1 + type: integer + type: object + type: object + type: object + localAS: + description: The local autonomous system number advertised to peers. + properties: + autonomousSystem: + description: Local Autonomous System number. + maximum: 4294967295 + minimum: 1 + type: integer + prependGlobalAS: + description: When set to true, the global ASN value is prepended to the AS path in outbound routes towards each BGP peer. + type: boolean + prependLocalAS: + description: When set to true, the local AS value is prepended to the AS path of inbound routes from each EBGP peer. + type: boolean + required: + - autonomousSystem + type: object + localPreference: + description: Local Preference attribute added to received routes from the BGP peers, also sets local preference for generated routes. + maximum: 4294967295 + minimum: 0 + type: integer + multiHopMaxHop: + description: Enable multihop for eBGP peers and sets the maximum number of hops allowed. + maximum: 255 + minimum: 1 + type: integer + nextHopSelf: + description: When set to true, the next-hop in all IPv4-unicast, IPv6-unicast and EVPN BGP routes advertised to the peer is set to the local-address. + type: boolean + peerAS: + description: The autonomous system number expected from peers. + properties: + autonomousSystem: + description: Local Autonomous System number. + maximum: 4294967295 + minimum: 1 + type: integer + required: + - autonomousSystem + type: object + sendCommunityLarge: + description: When false, all large (12 byte) BGP communities from all outbound routes advertised to the peer are stripped. + type: boolean + sendCommunityStandard: + description: When false, all standard (4 byte) communities from all outbound routes advertised to the peer are stripped. + type: boolean + sendDefaultRoute: + description: Options for controlling the generation of default routes towards BGP peers. + properties: + addressFamily: + description: Enables the sending of a synthetically generated default IPv4 or IPV6 route to each peer. + items: + enum: + - IPV4-UNICAST + - IPV6-UNICAST + type: string + type: array + exportPolicy: + description: Reference to a Policy that should be applied to the advertised default routes, in order to set their attributes to non-default values. + type: string + required: + - addressFamily + type: object + timers: + description: Timer configurations + properties: + connectRetry: + description: The time interval in seconds between successive attempts to establish a session with a peer. + maximum: 65535 + minimum: 1 + type: integer + holdTime: + description: The hold-time interval in seconds that the router proposes to the peer in its OPEN message. + maximum: 65535 + minimum: 0 + type: integer + keepAlive: + description: The interval in seconds between successive keepalive messages sent to the peer. + maximum: 21845 + minimum: 0 + type: integer + minimumAdvertisementInterval: + description: The value assigned to the MinRouteAdvertisementIntervalTimer of RFC 4271, for both EBGP and IBGP sessions. + maximum: 255 + minimum: 1 + type: integer + type: object + type: object + status: + description: DefaultBGPGroupStatus defines the observed state of DefaultBGPGroup. + properties: + health: + description: Indicates the health score of the BGP group. + type: integer + healthScoreReason: + description: Indicates the reason for the health score. + type: string + lastChange: + description: The time when the state of the resource last changed. + type: string + numPeers: + description: Number of configured BGP peers within the BGP Group. + format: int32 + type: integer + numPeersOperDown: + description: Number of configured BGP peers which have an Operational State of down within the BGP Group. + format: int32 + type: integer + numPeersUnknown: + description: Number of configured BGP peers within the BGP Group which cannot be reached by npp. + format: int32 + type: integer + operationalState: + description: Operational state of the BGP group. + type: string + type: object + type: object +served: true +storage: true +subresources: + status: {} diff --git a/static/resources/25.8.3/defaultbgpgroups.protocols.eda.nokia.com/v1alpha1.yaml b/static/resources/25.8.3/defaultbgpgroups.protocols.eda.nokia.com/v1alpha1.yaml new file mode 100644 index 0000000..ad6e6e4 --- /dev/null +++ b/static/resources/25.8.3/defaultbgpgroups.protocols.eda.nokia.com/v1alpha1.yaml @@ -0,0 +1,267 @@ +additionalPrinterColumns: + - jsonPath: .status.lastChange + name: Last Change + type: date + - jsonPath: .status.operationalState + name: Operational State + type: string +deprecated: true +deprecationWarning: This version is deprecated and will no longer be supported in the next version. +name: v1alpha1 +schema: + openAPIV3Schema: + description: DefaultBGPGroup is the Schema for the defaultbgpgroups API + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + description: The DefaultBGPGroup enables centralized management of BGP peer configurations within a DefaultRouter. This resource allows setting a description, common BGP settings, and peer-specific configurations, simplifying the consistent application of policies across multiple peers. It also includes transport settings, such as local TCP address configuration, passive mode, and TCP MSS. type DefaultBGPGroupSpec struct { + properties: + asPathOptions: + description: AS Path Options + properties: + allowOwnAS: + default: 0 + description: The maximum number of times the global AS number or a local AS number of the BGP instance can appear in any received AS_PATH before it is considered a loop and considered invalid. + maximum: 255 + minimum: 0 + type: integer + removePrivateAS: + description: Options for removing private AS numbers (2-byte and 4-byte) from the advertised AS path towards all peers. + properties: + ignorePeerAS: + default: false + description: If set to true then do not delete or replace a private AS number that is the same as the peer AS number. + type: boolean + leadingOnly: + default: false + description: If set to true then only delete or replace private AS numbers that appear before the first occurrence of a non-private ASN in the sequence of most recent ASNs in the AS path. + type: boolean + removePrivateASMode: + default: DISABLED + description: The method by which private AS numbers are removed from the advertised AS_PATH attribute. + enum: + - DISABLED + - REPLACE + - DELETE + type: string + required: + - ignorePeerAS + - leadingOnly + - removePrivateASMode + type: object + required: + - allowOwnAS + type: object + bfd: + description: Enable or disable Bi-forward Forwarding Detection (BFD) with fast failover. + type: boolean + client: + description: When set to true, all configured and dynamic BGP peers are considered RR clients. + type: boolean + clusterID: + description: Enables route reflect client and sets the cluster ID. + type: string + description: + description: Sets the description on the BGP group. + type: string + exportPolicy: + description: Reference to a Policy CR that will be used to filter routes advertised to peers. + items: + type: string + type: array + grStaleRouteTime: + description: Enables Graceful Restart on the peer and sets the stale route time. + maximum: 3600 + minimum: 1 + type: integer + importPolicy: + description: Reference to a Policy CR that will be used to filter routes received from peers. + items: + type: string + type: array + ipv4Unicast: + description: Parameters relating to the IPv4 unicast AFI/SAFI. + properties: + advertiseIPV6NextHops: + description: Enables advertisement of IPv4 Unicast routes with IPv6 next-hops to peers. + type: boolean + enabled: + description: Enables the IPv4 unicast AFISAFI. + type: boolean + maxReceivedRoutes: + description: Maximum number of IPv4 Unicast routes that will be accepted from the neighbor, counting routes accepted and rejected by import policies. + maximum: 4294967295 + minimum: 1 + type: integer + receiveIPV6NextHops: + description: Enables the advertisement of the RFC 5549 capability to receive IPv4 routes with IPv6 next-hops. + type: boolean + type: object + ipv6Unicast: + description: Parameters relating to the IPv6 unicast AFI/SAFI. + properties: + enabled: + description: Enables the IPv6 unicast AFISAFI + type: boolean + maxReceivedRoutes: + description: Maximum number of IPv6 Unicast routes that will be accepted from the neighbor, counting routes accepted and rejected by import policies. + maximum: 4294967295 + minimum: 1 + type: integer + type: object + keychain: + description: Reference to a Keychain resource that will be used for authentication with the BGP peer. + type: string + l2VPNEVPN: + description: Parameters relating to the EVPN AFI/SAFI. + properties: + advertiseIPV6NextHops: + description: Enables advertisement of EVPN routes with IPv6 next-hops to peers. + type: boolean + enabled: + description: Enables the L2VPN EVPN AFISAFI. + type: boolean + maxReceivedRoutes: + description: Maximum number of EVPN routes that will be accepted from the neighbor, counting routes accepted and rejected by import policies. + maximum: 4294967295 + minimum: 1 + type: integer + type: object + localAS: + description: The local autonomous system number advertised to peers. + properties: + autonomousSystem: + description: Local Autonomous System number. + maximum: 4294967295 + minimum: 1 + type: integer + prependGlobalAS: + description: When set to true, the global ASN value is prepended to the AS path in outbound routes towards each BGP peer. + type: boolean + prependLocalAS: + description: When set to true, the local AS value is prepended to the AS path of inbound routes from each EBGP peer. + type: boolean + required: + - autonomousSystem + type: object + localPreference: + description: Local Preference attribute added to received routes from the BGP peers, also sets local preference for generated routes. + maximum: 4294967295 + minimum: 0 + type: integer + multiHopMaxHop: + description: Enable multihop for eBGP peers and sets the maximum number of hops allowed. + maximum: 255 + minimum: 1 + type: integer + nextHopSelf: + description: When set to true, the next-hop in all IPv4-unicast, IPv6-unicast and EVPN BGP routes advertised to the peer is set to the local-address. + type: boolean + peerAS: + description: The autonomous system number expected from peers. + properties: + autonomousSystem: + description: Local Autonomous System number. + maximum: 4294967295 + minimum: 1 + type: integer + required: + - autonomousSystem + type: object + sendCommunityLarge: + description: When false, all large (12 byte) BGP communities from all outbound routes advertised to the peer are stripped. + type: boolean + sendCommunityStandard: + description: When false, all standard (4 byte) communities from all outbound routes advertised to the peer are stripped. + type: boolean + sendDefaultRoute: + description: Options for controlling the generation of default routes towards BGP peers. + properties: + addressFamily: + description: Enables the sending of a synthetically generated default IPv4 or IPV6 route to each peer. + items: + enum: + - IPV4-UNICAST + - IPV6-UNICAST + type: string + type: array + exportPolicy: + description: Reference to a Policy that should be applied to the advertised default routes, in order to set their attributes to non-default values. + type: string + required: + - addressFamily + type: object + timers: + description: Timer configurations + properties: + connectRetry: + description: The time interval in seconds between successive attempts to establish a session with a peer. + maximum: 65535 + minimum: 1 + type: integer + holdTime: + description: The hold-time interval in seconds that the router proposes to the peer in its OPEN message. + maximum: 65535 + minimum: 0 + type: integer + keepAlive: + description: The interval in seconds between successive keepalive messages sent to the peer. + maximum: 21845 + minimum: 0 + type: integer + minimumAdvertisementInterval: + description: The value assigned to the MinRouteAdvertisementIntervalTimer of RFC 4271, for both EBGP and IBGP sessions. + maximum: 255 + minimum: 1 + type: integer + type: object + type: object + status: + description: DefaultBGPGroupStatus defines the observed state of DefaultBGPGroup. + properties: + health: + description: Indicates the health score of the BGP group. + type: integer + healthScoreReason: + description: Indicates the reason for the health score. + type: string + lastChange: + description: The time when the state of the resource last changed. + type: string + numPeers: + description: Number of configured BGP peers within the BGP Group. + format: int32 + type: integer + numPeersOperDown: + description: Number of configured BGP peers which have an Operational State of down within the BGP Group. + format: int32 + type: integer + numPeersUnknown: + description: Number of configured BGP peers within the BGP Group which cannot be reached by npp. + format: int32 + type: integer + operationalState: + description: Operational state of the BGP group. + type: string + type: object + type: object +served: true +storage: false +subresources: + status: {} diff --git a/static/resources/25.8.3/defaultbgppeers.protocols.eda.nokia.com/v1.yaml b/static/resources/25.8.3/defaultbgppeers.protocols.eda.nokia.com/v1.yaml new file mode 100644 index 0000000..61ddde7 --- /dev/null +++ b/static/resources/25.8.3/defaultbgppeers.protocols.eda.nokia.com/v1.yaml @@ -0,0 +1,419 @@ +additionalPrinterColumns: + - jsonPath: .status.sessionState + name: Session State + type: string + - jsonPath: .status.lastChange + name: Last Change + type: date + - jsonPath: .status.enabled + name: Enabled + type: boolean + - jsonPath: .status.operationalState + name: Operational State + type: string + - jsonPath: .status.peerAS + name: PeerAS + type: integer +name: v1 +schema: + openAPIV3Schema: + description: DefaultBGPPeer is the Schema for the defaultbgppeers API + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + description: DefaultBGPPeer enables the configuration of BGP sessions within a DefaultRouter. It allows specifying a description, a DefaultInterface reference, and the peer IP address. The resource also supports dynamic neighbors, common BGP settings, and peer-specific configurations. + properties: + asPathOptions: + description: AS Path Options + properties: + allowOwnAS: + default: 0 + description: The maximum number of times the global AS number or a local AS number of the BGP instance can appear in any received AS_PATH before it is considered a loop and considered invalid. + maximum: 255 + minimum: 0 + type: integer + removePrivateAS: + description: Options for removing private AS numbers (2-byte and 4-byte) from the advertised AS path towards all peers. + properties: + ignorePeerAS: + default: false + description: If set to true then do not delete or replace a private AS number that is the same as the peer AS number. + type: boolean + leadingOnly: + default: false + description: If set to true then only delete or replace private AS numbers that appear before the first occurrence of a non-private ASN in the sequence of most recent ASNs in the AS path. + type: boolean + removePrivateASMode: + default: DISABLED + description: The method by which private AS numbers are removed from the advertised AS_PATH attribute. + enum: + - DISABLED + - REPLACE + - DELETE + type: string + required: + - ignorePeerAS + - leadingOnly + - removePrivateASMode + type: object + required: + - allowOwnAS + type: object + bfd: + description: Enable or disable Bi-forward Forwarding Detection (BFD) with fast failover. + type: boolean + client: + description: When set to true, all configured and dynamic BGP peers are considered RR clients. + type: boolean + clusterID: + description: Enables route reflect client and sets the cluster ID. + type: string + description: + description: Sets the description on the BGP peer. + type: string + dynamicNeighbor: + default: false + description: When set to true the DefaultInterface is added to the dynamic-neighbor list for dynamic peering. + type: boolean + dynamicNeighborAllowedPeerAS: + description: The autonomous system numbers allowed from peers if dynamic peering is enabled. + items: + type: integer + type: array + exportPolicy: + description: Reference to a Policy CR that will be used to filter routes advertised to peers. + items: + type: string + type: array + grStaleRouteTime: + description: Enables Graceful Restart on the peer and sets the stale route time. + maximum: 3600 + minimum: 1 + type: integer + group: + description: Reference to a DefaultBGPGroup. + type: string + importPolicy: + description: Reference to a Policy CR that will be used to filter routes received from peers. + items: + type: string + type: array + interface: + description: Reference to either a DefaultInterface or SystemInterface whose IP will be used as a source IP for the BGP session. + type: string + interfaceKind: + description: Reference to a the Kind of interface whose IP will be used as a source IP for the BGP session. + enum: + - DEFAULTINTERFACE + - SYSTEMINTERFACE + type: string + ipv4Unicast: + description: Parameters relating to the IPv4 unicast AFI/SAFI. + properties: + advertiseIPV6NextHops: + description: Enables advertisement of IPv4 Unicast routes with IPv6 next-hops to peers. + type: boolean + enabled: + description: Enables the IPv4 unicast AFISAFI. + type: boolean + prefixLimit: + properties: + prefixLimitAccepted: + properties: + logOnly: + description: Defines the action to take when the maximum number of prefixes is exceeded. Session is reset if set to false, otherwise only a warning is logged. + type: boolean + maxReceivedRoutes: + description: Maximum number of prefixes allowed to be received from the neighbor, counting only accepted routes. + format: int32 + maximum: 4294967295 + minimum: 1 + type: integer + warningThreshold: + description: A percentage of the maximum number of prefixes that can be accepted before a warning is logged. + maximum: 100 + minimum: 1 + type: integer + type: object + prefixLimitReceived: + properties: + logOnly: + description: Defines the action to take when the maximum number of prefixes is exceeded. Session is reset if set to false, otherwise only a warning is logged. + type: boolean + maxReceivedRoutes: + description: Maximum number of prefixes allowed to be received from the neighbor, counting all routes (accepted and rejected by import policies). + format: int32 + maximum: 4294967295 + minimum: 1 + type: integer + warningThreshold: + description: A percentage of the maximum number of prefixes that can be received before a warning is logged. + maximum: 100 + minimum: 1 + type: integer + type: object + type: object + receiveIPV6NextHops: + description: Enables the advertisement of the RFC 5549 capability to receive IPv4 routes with IPv6 next-hops. + type: boolean + type: object + ipv6Unicast: + description: Parameters relating to the IPv6 unicast AFI/SAFI. + properties: + enabled: + description: Enables the IPv6 unicast AFISAFI + type: boolean + prefixLimit: + properties: + prefixLimitAccepted: + properties: + logOnly: + description: Defines the action to take when the maximum number of prefixes is exceeded. Session is reset if set to false, otherwise only a warning is logged. + type: boolean + maxReceivedRoutes: + description: Maximum number of prefixes allowed to be received from the neighbor, counting only accepted routes. + format: int32 + maximum: 4294967295 + minimum: 1 + type: integer + warningThreshold: + description: A percentage of the maximum number of prefixes that can be accepted before a warning is logged. + maximum: 100 + minimum: 1 + type: integer + type: object + prefixLimitReceived: + properties: + logOnly: + description: Defines the action to take when the maximum number of prefixes is exceeded. Session is reset if set to false, otherwise only a warning is logged. + type: boolean + maxReceivedRoutes: + description: Maximum number of prefixes allowed to be received from the neighbor, counting all routes (accepted and rejected by import policies). + format: int32 + maximum: 4294967295 + minimum: 1 + type: integer + warningThreshold: + description: A percentage of the maximum number of prefixes that can be received before a warning is logged. + maximum: 100 + minimum: 1 + type: integer + type: object + type: object + type: object + keychain: + description: Reference to a Keychain resource that will be used for authentication with the BGP peer. + type: string + l2VPNEVPN: + description: Parameters relating to the EVPN AFI/SAFI. + properties: + advertiseIPV6NextHops: + description: Enables advertisement of EVPN routes with IPv6 next-hops to peers. + type: boolean + enabled: + description: Enables the L2VPN EVPN AFISAFI. + type: boolean + prefixLimit: + properties: + prefixLimitAccepted: + properties: + logOnly: + description: Defines the action to take when the maximum number of prefixes is exceeded. Session is reset if set to false, otherwise only a warning is logged. + type: boolean + maxReceivedRoutes: + description: Maximum number of prefixes allowed to be received from the neighbor, counting only accepted routes. + format: int32 + maximum: 4294967295 + minimum: 1 + type: integer + warningThreshold: + description: A percentage of the maximum number of prefixes that can be accepted before a warning is logged. + maximum: 100 + minimum: 1 + type: integer + type: object + prefixLimitReceived: + properties: + logOnly: + description: Defines the action to take when the maximum number of prefixes is exceeded. Session is reset if set to false, otherwise only a warning is logged. + type: boolean + maxReceivedRoutes: + description: Maximum number of prefixes allowed to be received from the neighbor, counting all routes (accepted and rejected by import policies). + format: int32 + maximum: 4294967295 + minimum: 1 + type: integer + warningThreshold: + description: A percentage of the maximum number of prefixes that can be received before a warning is logged. + maximum: 100 + minimum: 1 + type: integer + type: object + type: object + type: object + localAS: + description: The local autonomous system number advertised to peers. + properties: + autonomousSystem: + description: Local Autonomous System number. + maximum: 4294967295 + minimum: 1 + type: integer + prependGlobalAS: + description: When set to true, the global ASN value is prepended to the AS path in outbound routes towards each BGP peer. + type: boolean + prependLocalAS: + description: When set to true, the local AS value is prepended to the AS path of inbound routes from each EBGP peer. + type: boolean + required: + - autonomousSystem + type: object + localPreference: + description: Local Preference attribute added to received routes from the BGP peers, also sets local preference for generated routes. + maximum: 4294967295 + minimum: 0 + type: integer + multiHopMaxHop: + description: Enable multihop for eBGP peers and sets the maximum number of hops allowed. + maximum: 255 + minimum: 1 + type: integer + nextHopSelf: + description: When set to true, the next-hop in all IPv4-unicast, IPv6-unicast and EVPN BGP routes advertised to the peer is set to the local-address. + type: boolean + peerAS: + description: The autonomous system number expected from peers. + properties: + autonomousSystem: + description: Local Autonomous System number. + maximum: 4294967295 + minimum: 1 + type: integer + required: + - autonomousSystem + type: object + peerIP: + description: Peer IP to which the peering session will be established. There cannot be both a PeerIp and PeerDefaultInterface property set. + type: string + peerInterface: + description: Reference to a DefaultInterface or SystemInterface resource to which the peering session will be established. There cannot be both a PeerIp and PeerDefaultInterface property set. + type: string + peerInterfaceKind: + description: Reference to a the Kind of interface to which to peer to. + enum: + - DEFAULTINTERFACE + - SYSTEMINTERFACE + type: string + sendCommunityLarge: + description: When false, all large (12 byte) BGP communities from all outbound routes advertised to the peer are stripped. + type: boolean + sendCommunityStandard: + description: When false, all standard (4 byte) communities from all outbound routes advertised to the peer are stripped. + type: boolean + sendDefaultRoute: + description: Options for controlling the generation of default routes towards BGP peers. + properties: + addressFamily: + description: Enables the sending of a synthetically generated default IPv4 or IPV6 route to each peer. + items: + enum: + - IPV4-UNICAST + - IPV6-UNICAST + type: string + type: array + exportPolicy: + description: Reference to a Policy that should be applied to the advertised default routes, in order to set their attributes to non-default values. + type: string + required: + - addressFamily + type: object + timers: + description: Timer configurations + properties: + connectRetry: + description: The time interval in seconds between successive attempts to establish a session with a peer. + maximum: 65535 + minimum: 1 + type: integer + holdTime: + description: The hold-time interval in seconds that the router proposes to the peer in its OPEN message. + maximum: 65535 + minimum: 0 + type: integer + keepAlive: + description: The interval in seconds between successive keepalive messages sent to the peer. + maximum: 21845 + minimum: 0 + type: integer + minimumAdvertisementInterval: + description: The value assigned to the MinRouteAdvertisementIntervalTimer of RFC 4271, for both EBGP and IBGP sessions. + maximum: 255 + minimum: 1 + type: integer + type: object + required: + - group + - interface + - interfaceKind + type: object + status: + description: DefaultBGPPeerStatus defines the observed state of DefaultBGPPeer + properties: + enabled: + description: Indicated whether the BGP Peer is administratively enabled. + type: boolean + health: + description: Indicates the health score of the BGP peer. + type: integer + healthScoreReason: + description: Indicates the reason for the health score. + type: string + lastChange: + description: The time when the state of the resource last changed. + type: string + lastEvent: + description: Last event of the BGP peer. + type: string + lastState: + description: Last state of the BGP peer. + type: string + negotiatedHoldTime: + description: Hold time negotiated with the BGP peer. + type: integer + negotiatedKeepaliveInterval: + description: Keepalive interval negotiated with the BGP peer. + type: integer + operationalState: + description: Operational state of the BGP peer + type: string + peerAS: + description: Peer AS of the BGP peer. + type: integer + sessionState: + description: The state of the BGP session. + type: string + underMaintenance: + description: Indicates if the BGP peer is under maintenance. + type: boolean + type: object + type: object +served: true +storage: true +subresources: + status: {} diff --git a/static/resources/25.8.3/defaultbgppeers.protocols.eda.nokia.com/v1alpha1.yaml b/static/resources/25.8.3/defaultbgppeers.protocols.eda.nokia.com/v1alpha1.yaml new file mode 100644 index 0000000..fbddd9c --- /dev/null +++ b/static/resources/25.8.3/defaultbgppeers.protocols.eda.nokia.com/v1alpha1.yaml @@ -0,0 +1,325 @@ +additionalPrinterColumns: + - jsonPath: .status.sessionState + name: Session State + type: string + - jsonPath: .status.lastChange + name: Last Change + type: date + - jsonPath: .status.enabled + name: Enabled + type: boolean + - jsonPath: .status.operationalState + name: Operational State + type: string + - jsonPath: .status.peerAS + name: PeerAS + type: integer +deprecated: true +deprecationWarning: This version is deprecated and will no longer be supported in the next version. +name: v1alpha1 +schema: + openAPIV3Schema: + description: DefaultBGPPeer is the Schema for the defaultbgppeers API + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + description: DefaultBGPPeer enables the configuration of BGP sessions within a DefaultRouter. It allows specifying a description, a DefaultInterface reference, and the peer IP address. The resource also supports dynamic neighbors, common BGP settings, and peer-specific configurations. + properties: + asPathOptions: + description: AS Path Options + properties: + allowOwnAS: + default: 0 + description: The maximum number of times the global AS number or a local AS number of the BGP instance can appear in any received AS_PATH before it is considered a loop and considered invalid. + maximum: 255 + minimum: 0 + type: integer + removePrivateAS: + description: Options for removing private AS numbers (2-byte and 4-byte) from the advertised AS path towards all peers. + properties: + ignorePeerAS: + default: false + description: If set to true then do not delete or replace a private AS number that is the same as the peer AS number. + type: boolean + leadingOnly: + default: false + description: If set to true then only delete or replace private AS numbers that appear before the first occurrence of a non-private ASN in the sequence of most recent ASNs in the AS path. + type: boolean + removePrivateASMode: + default: DISABLED + description: The method by which private AS numbers are removed from the advertised AS_PATH attribute. + enum: + - DISABLED + - REPLACE + - DELETE + type: string + required: + - ignorePeerAS + - leadingOnly + - removePrivateASMode + type: object + required: + - allowOwnAS + type: object + bfd: + description: Enable or disable Bi-forward Forwarding Detection (BFD) with fast failover. + type: boolean + client: + description: When set to true, all configured and dynamic BGP peers are considered RR clients. + type: boolean + clusterID: + description: Enables route reflect client and sets the cluster ID. + type: string + description: + description: Sets the description on the BGP peer. + type: string + dynamicNeighbor: + default: false + description: When set to true the DefaultInterface is added to the dynamic-neighbor list for dynamic peering. + type: boolean + dynamicNeighborAllowedPeerAS: + description: The autonomous system numbers allowed from peers if dynamic peering is enabled. + items: + type: integer + type: array + exportPolicy: + description: Reference to a Policy CR that will be used to filter routes advertised to peers. + items: + type: string + type: array + grStaleRouteTime: + description: Enables Graceful Restart on the peer and sets the stale route time. + maximum: 3600 + minimum: 1 + type: integer + group: + description: Reference to a DefaultBGPGroup. + type: string + importPolicy: + description: Reference to a Policy CR that will be used to filter routes received from peers. + items: + type: string + type: array + interface: + description: Reference to either a DefaultInterface or SystemInterface whose IP will be used as a source IP for the BGP session. + type: string + interfaceKind: + description: Reference to a the Kind of interface whose IP will be used as a source IP for the BGP session. + enum: + - DEFAULTINTERFACE + - SYSTEMINTERFACE + type: string + ipv4Unicast: + description: Parameters relating to the IPv4 unicast AFI/SAFI. + properties: + advertiseIPV6NextHops: + description: Enables advertisement of IPv4 Unicast routes with IPv6 next-hops to peers. + type: boolean + enabled: + description: Enables the IPv4 unicast AFISAFI. + type: boolean + maxReceivedRoutes: + description: Maximum number of IPv4 Unicast routes that will be accepted from the neighbor, counting routes accepted and rejected by import policies. + maximum: 4294967295 + minimum: 1 + type: integer + receiveIPV6NextHops: + description: Enables the advertisement of the RFC 5549 capability to receive IPv4 routes with IPv6 next-hops. + type: boolean + type: object + ipv6Unicast: + description: Parameters relating to the IPv6 unicast AFI/SAFI. + properties: + enabled: + description: Enables the IPv6 unicast AFISAFI + type: boolean + maxReceivedRoutes: + description: Maximum number of IPv6 Unicast routes that will be accepted from the neighbor, counting routes accepted and rejected by import policies. + maximum: 4294967295 + minimum: 1 + type: integer + type: object + keychain: + description: Reference to a Keychain resource that will be used for authentication with the BGP peer. + type: string + l2VPNEVPN: + description: Parameters relating to the EVPN AFI/SAFI. + properties: + advertiseIPV6NextHops: + description: Enables advertisement of EVPN routes with IPv6 next-hops to peers. + type: boolean + enabled: + description: Enables the L2VPN EVPN AFISAFI. + type: boolean + maxReceivedRoutes: + description: Maximum number of EVPN routes that will be accepted from the neighbor, counting routes accepted and rejected by import policies. + maximum: 4294967295 + minimum: 1 + type: integer + type: object + localAS: + description: The local autonomous system number advertised to peers. + properties: + autonomousSystem: + description: Local Autonomous System number. + maximum: 4294967295 + minimum: 1 + type: integer + prependGlobalAS: + description: When set to true, the global ASN value is prepended to the AS path in outbound routes towards each BGP peer. + type: boolean + prependLocalAS: + description: When set to true, the local AS value is prepended to the AS path of inbound routes from each EBGP peer. + type: boolean + required: + - autonomousSystem + type: object + localPreference: + description: Local Preference attribute added to received routes from the BGP peers, also sets local preference for generated routes. + maximum: 4294967295 + minimum: 0 + type: integer + multiHopMaxHop: + description: Enable multihop for eBGP peers and sets the maximum number of hops allowed. + maximum: 255 + minimum: 1 + type: integer + nextHopSelf: + description: When set to true, the next-hop in all IPv4-unicast, IPv6-unicast and EVPN BGP routes advertised to the peer is set to the local-address. + type: boolean + peerAS: + description: The autonomous system number expected from peers. + properties: + autonomousSystem: + description: Local Autonomous System number. + maximum: 4294967295 + minimum: 1 + type: integer + required: + - autonomousSystem + type: object + peerIP: + description: Peer IP to which the peering session will be established. There cannot be both a PeerIp and PeerDefaultInterface property set. + type: string + peerInterface: + description: Reference to a DefaultInterface or SystemInterface resource to which the peering session will be established. There cannot be both a PeerIp and PeerDefaultInterface property set. + type: string + peerInterfaceKind: + description: Reference to a the Kind of interface to which to peer to. + enum: + - DEFAULTINTERFACE + - SYSTEMINTERFACE + type: string + sendCommunityLarge: + description: When false, all large (12 byte) BGP communities from all outbound routes advertised to the peer are stripped. + type: boolean + sendCommunityStandard: + description: When false, all standard (4 byte) communities from all outbound routes advertised to the peer are stripped. + type: boolean + sendDefaultRoute: + description: Options for controlling the generation of default routes towards BGP peers. + properties: + addressFamily: + description: Enables the sending of a synthetically generated default IPv4 or IPV6 route to each peer. + items: + enum: + - IPV4-UNICAST + - IPV6-UNICAST + type: string + type: array + exportPolicy: + description: Reference to a Policy that should be applied to the advertised default routes, in order to set their attributes to non-default values. + type: string + required: + - addressFamily + type: object + timers: + description: Timer configurations + properties: + connectRetry: + description: The time interval in seconds between successive attempts to establish a session with a peer. + maximum: 65535 + minimum: 1 + type: integer + holdTime: + description: The hold-time interval in seconds that the router proposes to the peer in its OPEN message. + maximum: 65535 + minimum: 0 + type: integer + keepAlive: + description: The interval in seconds between successive keepalive messages sent to the peer. + maximum: 21845 + minimum: 0 + type: integer + minimumAdvertisementInterval: + description: The value assigned to the MinRouteAdvertisementIntervalTimer of RFC 4271, for both EBGP and IBGP sessions. + maximum: 255 + minimum: 1 + type: integer + type: object + required: + - group + - interface + - interfaceKind + type: object + status: + description: DefaultBGPPeerStatus defines the observed state of DefaultBGPPeer + properties: + enabled: + description: Indicated whether the BGP Peer is administratively enabled. + type: boolean + health: + description: Indicates the health score of the BGP peer. + type: integer + healthScoreReason: + description: Indicates the reason for the health score. + type: string + lastChange: + description: The time when the state of the resource last changed. + type: string + lastEvent: + description: Last event of the BGP peer. + type: string + lastState: + description: Last state of the BGP peer. + type: string + negotiatedHoldTime: + description: Hold time negotiated with the BGP peer. + type: integer + negotiatedKeepaliveInterval: + description: Keepalive interval negotiated with the BGP peer. + type: integer + operationalState: + description: Operational state of the BGP peer + type: string + peerAS: + description: Peer AS of the BGP peer. + type: integer + sessionState: + description: The state of the BGP session. + type: string + underMaintenance: + description: Indicates if the BGP peer is under maintenance. + type: boolean + type: object + type: object +served: true +storage: false +subresources: + status: {} diff --git a/static/resources/25.8.3/defaultinterfaces.routing.eda.nokia.com/v1alpha1.yaml b/static/resources/25.8.3/defaultinterfaces.routing.eda.nokia.com/v1alpha1.yaml new file mode 100644 index 0000000..475feb8 --- /dev/null +++ b/static/resources/25.8.3/defaultinterfaces.routing.eda.nokia.com/v1alpha1.yaml @@ -0,0 +1,152 @@ +additionalPrinterColumns: + - jsonPath: .status.lastChange + name: Last Change + type: date + - jsonPath: .status.operationalState + name: Operational State + type: string +name: v1alpha1 +schema: + openAPIV3Schema: + description: DefaultInterface is the Schema for the defaultinterfaces API + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + description: DefaultInterface enables the configuration of default interfaces, including Interface references, DefaultRouter, VLAN IDs, IP MTU settings, and options for IPv4 and IPv6 addresses. It also supports unnumbered interfaces and BFD (Bidirectional Forwarding Detection) configuration. + properties: + bfd: + description: Enable or disable BFD on this DefaultInterface. + properties: + desiredMinTransmitInt: + default: 1000000 + description: The minimum interval in microseconds between transmission of BFD control packets[default=1000000]. + maximum: 100000000 + minimum: 10000 + type: integer + detectionMultiplier: + default: 3 + description: The number of packets that must be missed to declare this session as down. [default=3] + maximum: 20 + minimum: 3 + type: integer + enabled: + default: false + description: Enable Biforward Detection[default=false]. + type: boolean + minEchoReceiveInterval: + default: 1000000 + description: The minimum interval between echo packets the local node can receive in microseconds + maximum: 100000000 + minimum: 0 + type: integer + requiredMinReceive: + default: 1000000 + description: The minimum interval in microseconds between received BFD control packets that this system should support.[default=1000000]. + maximum: 100000000 + minimum: 10000 + type: integer + ttl: + description: Sets custom IP TTL or Hop Limit for multi-hop BFD sessions packets. Not appllicable to single-hop BFD sessions. + maximum: 255 + minimum: 2 + type: integer + required: + - desiredMinTransmitInt + - detectionMultiplier + - enabled + - minEchoReceiveInterval + - requiredMinReceive + type: object + defaultRouter: + description: Reference to a DefaultRouter. + type: string + description: + description: The description of the DefaultInterface. + type: string + interface: + description: Reference to an Interface to use for attachment. + type: string + ipMTU: + description: Set the IP MTU for the DefaultInterface. + maximum: 9486 + minimum: 1280 + type: integer + ipv4Addresses: + description: List of IPv4 addresses in ip/mask form, e.g., 192.168.0.1/24. + items: + properties: + ipPrefix: + description: Address and mask to use + type: string + primary: + description: Indicates which address to use as primary for broadcast + type: boolean + required: + - ipPrefix + type: object + type: array + ipv6Addresses: + description: List of IPv6 addresses in ip/mask form, e.g., fc00::1/120. + items: + properties: + ipPrefix: + description: Address and mask to use + type: string + primary: + description: Indicates which address to use as primary for broadcast + type: boolean + required: + - ipPrefix + type: object + type: array + unnumbered: + description: Enables the use of unnumbered interfaces on the ISL. For IPv6, no IP address are configured on the sub-interface and only the link local address will be used. If any allocation pool is specified for IPv6 that will take precedence and IPs will be assigned to the interfaces. When using eBGP for an underlay protocol, the DefaultInterfaces which are a part of the ISL will be added to the BGP dynamic neighbor list. + enum: + - IPV6 + type: string + vlanID: + description: VLAN to use with this DefaultInterface. + maximum: 4094 + minimum: 1 + type: integer + required: + - defaultRouter + - interface + type: object + status: + description: DefaultInterfaceStatus defines the observed state of DefaultInterface + properties: + health: + description: Indicates the health score of the DefaultInterface. + type: integer + healthScoreReason: + description: Indicates the reason for the health score. + type: string + lastChange: + description: Indicates when this Interface last changed state. + type: string + operationalState: + description: Indicates the current operational state of the DefaultInterface. + type: string + type: object + type: object +served: true +storage: true +subresources: + status: {} diff --git a/static/resources/25.8.3/defaultinterfacestates.routing.eda.nokia.com/v1alpha1.yaml b/static/resources/25.8.3/defaultinterfacestates.routing.eda.nokia.com/v1alpha1.yaml new file mode 100644 index 0000000..05660ab --- /dev/null +++ b/static/resources/25.8.3/defaultinterfacestates.routing.eda.nokia.com/v1alpha1.yaml @@ -0,0 +1,105 @@ +name: v1alpha1 +schema: + openAPIV3Schema: + description: DefaultInterfaceState is the Schema for the defaultinterfacestates API + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + description: DefaultInterfaceStateSpec defines the desired state of DefaultInterfaceState + properties: + bfdEnabled: + description: Indicates if bfd is enabled or disabled + type: boolean + defaultNodeInterface: + description: Node specific default interface name, for example "ethernet-1/1.0", "if-1/1/c1/1" + type: string + defaultRouter: + description: Reference to a DefaultRouter + type: string + interface: + description: Reference to an interface + type: string + interfaceEnabled: + description: Indicates if the interface is enabled or disabled + type: boolean + ipv4Addresses: + description: List of IPv4 addresses + items: + properties: + ipPrefix: + description: Address and mask to use + type: string + primary: + description: Indicates which address to use as primary for broadcast + type: boolean + required: + - ipPrefix + type: object + type: array + ipv6Addresses: + description: List of IPv6 addresses + items: + properties: + ipPrefix: + description: Address and mask to use + type: string + primary: + description: Indicates which address to use as primary for broadcast + type: boolean + required: + - ipPrefix + type: object + type: array + networkInstanceName: + description: The name of the network-instance or base routing instance in which the DefaultInterface is configured + type: string + node: + description: Reference to Node object + type: string + nodeInterface: + description: Node specific interface name, for example "ethernet-1/1", "1/1/c1/1" + type: string + operatingSystem: + description: Operating System of the Node + type: string + subInterfaceIndex: + description: Index of the subinterface + type: integer + unnumbered: + description: Indicates if the interface is unnumbered + enum: + - IPV6 + type: string + required: + - defaultNodeInterface + - defaultRouter + - interface + - interfaceEnabled + - networkInstanceName + - node + - nodeInterface + type: object + status: + description: DefaultInterfaceStateStatus defines the observed state of DefaultInterfaceState + type: object + type: object +served: true +storage: true +subresources: + status: {} diff --git a/static/resources/25.8.3/defaultroutereflectorclients.protocols.eda.nokia.com/v1.yaml b/static/resources/25.8.3/defaultroutereflectorclients.protocols.eda.nokia.com/v1.yaml new file mode 100644 index 0000000..e8d4e90 --- /dev/null +++ b/static/resources/25.8.3/defaultroutereflectorclients.protocols.eda.nokia.com/v1.yaml @@ -0,0 +1,370 @@ +additionalPrinterColumns: + - jsonPath: .status.lastChange + name: Last Change + type: date + - jsonPath: .status.operationalState + name: OperationalState + type: string + - jsonPath: .status.numRouteReflectorClientBGPPeers + name: NumRouteReflectorClientBGPPeers + type: string + - jsonPath: .status.numRouteReflectorClientBGPPeersOperDown + name: NumRouteReflectorClientBGPPeersOperDown + type: string +name: v1 +schema: + openAPIV3Schema: + description: DefaultRouteReflectorClient is the Schema for the defaultroutereflectorclients API + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + description: DefaultRouteReflectorClient enables the configuration of iBGP sessions from a client to RouteReflectors. It includes settings for the DefaultInterface, BGP group, client selectors, and a list of Route Reflector IPs. Additionally, it allows for the configuration of L2VPN EVPN settings and applies common BGP configuration settings to manage routing efficiently within the network. + properties: + asPathOptions: + description: AS Path Options + properties: + allowOwnAS: + default: 0 + description: The maximum number of times the global AS number or a local AS number of the BGP instance can appear in any received AS_PATH before it is considered a loop and considered invalid. + maximum: 255 + minimum: 0 + type: integer + removePrivateAS: + description: Options for removing private AS numbers (2-byte and 4-byte) from the advertised AS path towards all peers. + properties: + ignorePeerAS: + default: false + description: If set to true then do not delete or replace a private AS number that is the same as the peer AS number. + type: boolean + leadingOnly: + default: false + description: If set to true then only delete or replace private AS numbers that appear before the first occurrence of a non-private ASN in the sequence of most recent ASNs in the AS path. + type: boolean + removePrivateASMode: + default: DISABLED + description: The method by which private AS numbers are removed from the advertised AS_PATH attribute. + enum: + - DISABLED + - REPLACE + - DELETE + type: string + required: + - ignorePeerAS + - leadingOnly + - removePrivateASMode + type: object + required: + - allowOwnAS + type: object + bfd: + description: Enable or disable Bi-forward Forwarding Detection (BFD) with fast failover. + type: boolean + defaultBgpClientGroup: + description: Reference to Default Bgp Group. + type: string + exportPolicy: + description: Reference to a Policy CR that will be used to filter routes advertised to peers. + items: + type: string + type: array + grStaleRouteTime: + description: Enables Graceful Restart on the peer and sets the stale route time. + maximum: 3600 + minimum: 1 + type: integer + importPolicy: + description: Reference to a Policy CR that will be used to filter routes received from peers. + items: + type: string + type: array + interface: + description: Reference to either a DefaultInterface or SystemInterface from which the session to the RR will be done from. + type: string + interfaceKind: + description: Reference to a the Kind of interface from which the session to the RR will be done from. + enum: + - DEFAULTINTERFACE + - SYSTEMINTERFACE + type: string + ipv4Unicast: + description: Parameters relating to the IPv4 unicast AFI/SAFI. + properties: + advertiseIPV6NextHops: + description: Enables advertisement of IPv4 Unicast routes with IPv6 next-hops to peers. + type: boolean + enabled: + description: Enables the IPv4 unicast AFISAFI. + type: boolean + prefixLimit: + properties: + prefixLimitAccepted: + properties: + logOnly: + description: Defines the action to take when the maximum number of prefixes is exceeded. Session is reset if set to false, otherwise only a warning is logged. + type: boolean + maxReceivedRoutes: + description: Maximum number of prefixes allowed to be received from the neighbor, counting only accepted routes. + format: int32 + maximum: 4294967295 + minimum: 1 + type: integer + warningThreshold: + description: A percentage of the maximum number of prefixes that can be accepted before a warning is logged. + maximum: 100 + minimum: 1 + type: integer + type: object + prefixLimitReceived: + properties: + logOnly: + description: Defines the action to take when the maximum number of prefixes is exceeded. Session is reset if set to false, otherwise only a warning is logged. + type: boolean + maxReceivedRoutes: + description: Maximum number of prefixes allowed to be received from the neighbor, counting all routes (accepted and rejected by import policies). + format: int32 + maximum: 4294967295 + minimum: 1 + type: integer + warningThreshold: + description: A percentage of the maximum number of prefixes that can be received before a warning is logged. + maximum: 100 + minimum: 1 + type: integer + type: object + type: object + receiveIPV6NextHops: + description: Enables the advertisement of the RFC 5549 capability to receive IPv4 routes with IPv6 next-hops. + type: boolean + type: object + ipv6Unicast: + description: Parameters relating to the IPv6 unicast AFI/SAFI. + properties: + enabled: + description: Enables the IPv6 unicast AFISAFI + type: boolean + prefixLimit: + properties: + prefixLimitAccepted: + properties: + logOnly: + description: Defines the action to take when the maximum number of prefixes is exceeded. Session is reset if set to false, otherwise only a warning is logged. + type: boolean + maxReceivedRoutes: + description: Maximum number of prefixes allowed to be received from the neighbor, counting only accepted routes. + format: int32 + maximum: 4294967295 + minimum: 1 + type: integer + warningThreshold: + description: A percentage of the maximum number of prefixes that can be accepted before a warning is logged. + maximum: 100 + minimum: 1 + type: integer + type: object + prefixLimitReceived: + properties: + logOnly: + description: Defines the action to take when the maximum number of prefixes is exceeded. Session is reset if set to false, otherwise only a warning is logged. + type: boolean + maxReceivedRoutes: + description: Maximum number of prefixes allowed to be received from the neighbor, counting all routes (accepted and rejected by import policies). + format: int32 + maximum: 4294967295 + minimum: 1 + type: integer + warningThreshold: + description: A percentage of the maximum number of prefixes that can be received before a warning is logged. + maximum: 100 + minimum: 1 + type: integer + type: object + type: object + type: object + keychain: + description: Reference to a Keychain resource that will be used for authentication with the BGP peer. + type: string + l2VPNEVPN: + description: Parameters relating to the EVPN AFI/SAFI. + properties: + advertiseIPV6NextHops: + description: Enables advertisement of EVPN routes with IPv6 next-hops to peers. + type: boolean + enabled: + description: Enables the L2VPN EVPN AFISAFI. + type: boolean + prefixLimit: + properties: + prefixLimitAccepted: + properties: + logOnly: + description: Defines the action to take when the maximum number of prefixes is exceeded. Session is reset if set to false, otherwise only a warning is logged. + type: boolean + maxReceivedRoutes: + description: Maximum number of prefixes allowed to be received from the neighbor, counting only accepted routes. + format: int32 + maximum: 4294967295 + minimum: 1 + type: integer + warningThreshold: + description: A percentage of the maximum number of prefixes that can be accepted before a warning is logged. + maximum: 100 + minimum: 1 + type: integer + type: object + prefixLimitReceived: + properties: + logOnly: + description: Defines the action to take when the maximum number of prefixes is exceeded. Session is reset if set to false, otherwise only a warning is logged. + type: boolean + maxReceivedRoutes: + description: Maximum number of prefixes allowed to be received from the neighbor, counting all routes (accepted and rejected by import policies). + format: int32 + maximum: 4294967295 + minimum: 1 + type: integer + warningThreshold: + description: A percentage of the maximum number of prefixes that can be received before a warning is logged. + maximum: 100 + minimum: 1 + type: integer + type: object + type: object + type: object + localAS: + description: The local autonomous system number advertised to peers. + properties: + autonomousSystem: + description: Local Autonomous System number. + maximum: 4294967295 + minimum: 1 + type: integer + prependGlobalAS: + description: When set to true, the global ASN value is prepended to the AS path in outbound routes towards each BGP peer. + type: boolean + prependLocalAS: + description: When set to true, the local AS value is prepended to the AS path of inbound routes from each EBGP peer. + type: boolean + required: + - autonomousSystem + type: object + peerAS: + description: The autonomous system number expected from peers. + properties: + autonomousSystem: + description: Local Autonomous System number. + maximum: 4294967295 + minimum: 1 + type: integer + required: + - autonomousSystem + type: object + routeReflectorIPs: + description: List of the peering IPs on the RRs to which peering session is established. + items: + type: string + type: array + routeReflectorSelector: + description: Label selector used to select the RouteReflectors to which the iBGP sessions are established. + items: + type: string + type: array + sendCommunityLarge: + description: When false, all large (12 byte) BGP communities from all outbound routes advertised to the peer are stripped. + type: boolean + sendCommunityStandard: + description: When false, all standard (4 byte) communities from all outbound routes advertised to the peer are stripped. + type: boolean + sendDefaultRoute: + description: Options for controlling the generation of default routes towards BGP peers. + properties: + addressFamily: + description: Enables the sending of a synthetically generated default IPv4 or IPV6 route to each peer. + items: + enum: + - IPV4-UNICAST + - IPV6-UNICAST + type: string + type: array + exportPolicy: + description: Reference to a Policy that should be applied to the advertised default routes, in order to set their attributes to non-default values. + type: string + required: + - addressFamily + type: object + timers: + description: Timer configurations + properties: + connectRetry: + description: The time interval in seconds between successive attempts to establish a session with a peer. + maximum: 65535 + minimum: 1 + type: integer + holdTime: + description: The hold-time interval in seconds that the router proposes to the peer in its OPEN message. + maximum: 65535 + minimum: 0 + type: integer + keepAlive: + description: The interval in seconds between successive keepalive messages sent to the peer. + maximum: 21845 + minimum: 0 + type: integer + minimumAdvertisementInterval: + description: The value assigned to the MinRouteAdvertisementIntervalTimer of RFC 4271, for both EBGP and IBGP sessions. + maximum: 255 + minimum: 1 + type: integer + type: object + required: + - defaultBgpClientGroup + - interface + - interfaceKind + type: object + status: + description: DefaultRouteReflectorClientStatus defines the observed state of DefaultRouteReflectorClient + properties: + health: + description: Indicates the health score of the DefaultRouteReflectorClient. + type: integer + healthScoreReason: + description: Indicates the reason for the health score. + type: string + lastChange: + description: The time when the state of the resource last changed. + type: string + numRouteReflectorClientBGPPeers: + description: Total number of configured route reflector peers on the route reflector client. + type: integer + numRouteReflectorClientBGPPeersOperDown: + description: Total number of configured route reflector peers on the route reflector client that are operationally down. + type: integer + operDownRouteReflectorClientPeers: + description: List of route reflector BGPPeers which are operationally down. + items: + type: string + type: array + operationalState: + description: Operational state of the DefaultRouteReflectorClient. + type: string + type: object + type: object +served: true +storage: true +subresources: + status: {} diff --git a/static/resources/25.8.3/defaultroutereflectorclients.protocols.eda.nokia.com/v1alpha1.yaml b/static/resources/25.8.3/defaultroutereflectorclients.protocols.eda.nokia.com/v1alpha1.yaml new file mode 100644 index 0000000..b56ca46 --- /dev/null +++ b/static/resources/25.8.3/defaultroutereflectorclients.protocols.eda.nokia.com/v1alpha1.yaml @@ -0,0 +1,276 @@ +additionalPrinterColumns: + - jsonPath: .status.lastChange + name: Last Change + type: date + - jsonPath: .status.operationalState + name: OperationalState + type: string + - jsonPath: .status.numRouteReflectorClientBGPPeers + name: NumRouteReflectorClientBGPPeers + type: string + - jsonPath: .status.numRouteReflectorClientBGPPeersOperDown + name: NumRouteReflectorClientBGPPeersOperDown + type: string +deprecated: true +deprecationWarning: This version is deprecated and will no longer be supported in the next version. +name: v1alpha1 +schema: + openAPIV3Schema: + description: DefaultRouteReflectorClient is the Schema for the defaultroutereflectorclients API + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + description: DefaultRouteReflectorClient enables the configuration of iBGP sessions from a client to RouteReflectors. It includes settings for the DefaultInterface, BGP group, client selectors, and a list of Route Reflector IPs. Additionally, it allows for the configuration of L2VPN EVPN settings and applies common BGP configuration settings to manage routing efficiently within the network. + properties: + asPathOptions: + description: AS Path Options + properties: + allowOwnAS: + default: 0 + description: The maximum number of times the global AS number or a local AS number of the BGP instance can appear in any received AS_PATH before it is considered a loop and considered invalid. + maximum: 255 + minimum: 0 + type: integer + removePrivateAS: + description: Options for removing private AS numbers (2-byte and 4-byte) from the advertised AS path towards all peers. + properties: + ignorePeerAS: + default: false + description: If set to true then do not delete or replace a private AS number that is the same as the peer AS number. + type: boolean + leadingOnly: + default: false + description: If set to true then only delete or replace private AS numbers that appear before the first occurrence of a non-private ASN in the sequence of most recent ASNs in the AS path. + type: boolean + removePrivateASMode: + default: DISABLED + description: The method by which private AS numbers are removed from the advertised AS_PATH attribute. + enum: + - DISABLED + - REPLACE + - DELETE + type: string + required: + - ignorePeerAS + - leadingOnly + - removePrivateASMode + type: object + required: + - allowOwnAS + type: object + bfd: + description: Enable or disable Bi-forward Forwarding Detection (BFD) with fast failover. + type: boolean + defaultBgpClientGroup: + description: Reference to Default Bgp Group. + type: string + exportPolicy: + description: Reference to a Policy CR that will be used to filter routes advertised to peers. + items: + type: string + type: array + grStaleRouteTime: + description: Enables Graceful Restart on the peer and sets the stale route time. + maximum: 3600 + minimum: 1 + type: integer + importPolicy: + description: Reference to a Policy CR that will be used to filter routes received from peers. + items: + type: string + type: array + interface: + description: Reference to either a DefaultInterface or SystemInterface from which the session to the RR will be done from. + type: string + interfaceKind: + description: Reference to a the Kind of interface from which the session to the RR will be done from. + enum: + - DEFAULTINTERFACE + - SYSTEMINTERFACE + type: string + ipv4Unicast: + description: Parameters relating to the IPv4 unicast AFI/SAFI. + properties: + advertiseIPV6NextHops: + description: Enables advertisement of IPv4 Unicast routes with IPv6 next-hops to peers. + type: boolean + enabled: + description: Enables the IPv4 unicast AFISAFI. + type: boolean + maxReceivedRoutes: + description: Maximum number of IPv4 Unicast routes that will be accepted from the neighbor, counting routes accepted and rejected by import policies. + maximum: 4294967295 + minimum: 1 + type: integer + receiveIPV6NextHops: + description: Enables the advertisement of the RFC 5549 capability to receive IPv4 routes with IPv6 next-hops. + type: boolean + type: object + ipv6Unicast: + description: Parameters relating to the IPv6 unicast AFI/SAFI. + properties: + enabled: + description: Enables the IPv6 unicast AFISAFI + type: boolean + maxReceivedRoutes: + description: Maximum number of IPv6 Unicast routes that will be accepted from the neighbor, counting routes accepted and rejected by import policies. + maximum: 4294967295 + minimum: 1 + type: integer + type: object + keychain: + description: Reference to a Keychain resource that will be used for authentication with the BGP peer. + type: string + l2VPNEVPN: + description: Parameters relating to the EVPN AFI/SAFI. + properties: + advertiseIPV6NextHops: + description: Enables advertisement of EVPN routes with IPv6 next-hops to peers. + type: boolean + enabled: + description: Enables the L2VPN EVPN AFISAFI. + type: boolean + maxReceivedRoutes: + description: Maximum number of EVPN routes that will be accepted from the neighbor, counting routes accepted and rejected by import policies. + maximum: 4294967295 + minimum: 1 + type: integer + type: object + localAS: + description: The local autonomous system number advertised to peers. + properties: + autonomousSystem: + description: Local Autonomous System number. + maximum: 4294967295 + minimum: 1 + type: integer + prependGlobalAS: + description: When set to true, the global ASN value is prepended to the AS path in outbound routes towards each BGP peer. + type: boolean + prependLocalAS: + description: When set to true, the local AS value is prepended to the AS path of inbound routes from each EBGP peer. + type: boolean + required: + - autonomousSystem + type: object + peerAS: + description: The autonomous system number expected from peers. + properties: + autonomousSystem: + description: Local Autonomous System number. + maximum: 4294967295 + minimum: 1 + type: integer + required: + - autonomousSystem + type: object + routeReflectorIPs: + description: List of the peering IPs on the RRs to which peering session is established. + items: + type: string + type: array + routeReflectorSelector: + description: Label selector used to select the RouteReflectors to which the iBGP sessions are established. + items: + type: string + type: array + sendCommunityLarge: + description: When false, all large (12 byte) BGP communities from all outbound routes advertised to the peer are stripped. + type: boolean + sendCommunityStandard: + description: When false, all standard (4 byte) communities from all outbound routes advertised to the peer are stripped. + type: boolean + sendDefaultRoute: + description: Options for controlling the generation of default routes towards BGP peers. + properties: + addressFamily: + description: Enables the sending of a synthetically generated default IPv4 or IPV6 route to each peer. + items: + enum: + - IPV4-UNICAST + - IPV6-UNICAST + type: string + type: array + exportPolicy: + description: Reference to a Policy that should be applied to the advertised default routes, in order to set their attributes to non-default values. + type: string + required: + - addressFamily + type: object + timers: + description: Timer configurations + properties: + connectRetry: + description: The time interval in seconds between successive attempts to establish a session with a peer. + maximum: 65535 + minimum: 1 + type: integer + holdTime: + description: The hold-time interval in seconds that the router proposes to the peer in its OPEN message. + maximum: 65535 + minimum: 0 + type: integer + keepAlive: + description: The interval in seconds between successive keepalive messages sent to the peer. + maximum: 21845 + minimum: 0 + type: integer + minimumAdvertisementInterval: + description: The value assigned to the MinRouteAdvertisementIntervalTimer of RFC 4271, for both EBGP and IBGP sessions. + maximum: 255 + minimum: 1 + type: integer + type: object + required: + - defaultBgpClientGroup + - interface + - interfaceKind + type: object + status: + description: DefaultRouteReflectorClientStatus defines the observed state of DefaultRouteReflectorClient + properties: + health: + description: Indicates the health score of the DefaultRouteReflectorClient. + type: integer + healthScoreReason: + description: Indicates the reason for the health score. + type: string + lastChange: + description: The time when the state of the resource last changed. + type: string + numRouteReflectorClientBGPPeers: + description: Total number of configured route reflector peers on the route reflector client. + type: integer + numRouteReflectorClientBGPPeersOperDown: + description: Total number of configured route reflector peers on the route reflector client that are operationally down. + type: integer + operDownRouteReflectorClientPeers: + description: List of route reflector BGPPeers which are operationally down. + items: + type: string + type: array + operationalState: + description: Operational state of the DefaultRouteReflectorClient. + type: string + type: object + type: object +served: true +storage: false +subresources: + status: {} diff --git a/static/resources/25.8.3/defaultroutereflectors.protocols.eda.nokia.com/v1.yaml b/static/resources/25.8.3/defaultroutereflectors.protocols.eda.nokia.com/v1.yaml new file mode 100644 index 0000000..efbae8a --- /dev/null +++ b/static/resources/25.8.3/defaultroutereflectors.protocols.eda.nokia.com/v1.yaml @@ -0,0 +1,374 @@ +additionalPrinterColumns: + - jsonPath: .status.lastChange + name: Last Change + type: date + - jsonPath: .status.operationalState + name: Operational State + type: string + - jsonPath: .status.numRouteReflectorBGPPeers + name: NumRouteReflectorBGPPeers + type: string + - jsonPath: .status.numRouteReflectorBGPPeersOperDown + name: NumRouteReflectorBGPPeersOperDown + type: string +name: v1 +schema: + openAPIV3Schema: + description: DefaultRouteReflector is the Schema for the defaultroutereflectors API + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + description: DefaultRouteReflector enables the configuration of iBGP sessions to RouteReflectorClients. It includes settings for the DefaultInterface, BGP group, client selectors, and the Cluster ID. Additionally, it allows for the configuration of L2VPN EVPN settings and applies common BGP configuration settings to manage routing efficiently within the network. + properties: + asPathOptions: + description: AS Path Options + properties: + allowOwnAS: + default: 0 + description: The maximum number of times the global AS number or a local AS number of the BGP instance can appear in any received AS_PATH before it is considered a loop and considered invalid. + maximum: 255 + minimum: 0 + type: integer + removePrivateAS: + description: Options for removing private AS numbers (2-byte and 4-byte) from the advertised AS path towards all peers. + properties: + ignorePeerAS: + default: false + description: If set to true then do not delete or replace a private AS number that is the same as the peer AS number. + type: boolean + leadingOnly: + default: false + description: If set to true then only delete or replace private AS numbers that appear before the first occurrence of a non-private ASN in the sequence of most recent ASNs in the AS path. + type: boolean + removePrivateASMode: + default: DISABLED + description: The method by which private AS numbers are removed from the advertised AS_PATH attribute. + enum: + - DISABLED + - REPLACE + - DELETE + type: string + required: + - ignorePeerAS + - leadingOnly + - removePrivateASMode + type: object + required: + - allowOwnAS + type: object + bfd: + description: Enable or disable Bi-forward Forwarding Detection (BFD) with fast failover. + type: boolean + clientIPs: + description: List of RR client IPs to which the iBGP sessions are established. + items: + type: string + type: array + clientSelector: + description: Label selector used to select the RouteReflectorClients to which the iBGP sessions are established. + items: + type: string + type: array + clusterID: + description: Sets the cluster ID for route reflectors. + type: string + defaultBGPRRGroup: + description: Reference to a DefaultBGPGroup. + type: string + exportPolicy: + description: Reference to a Policy CR that will be used to filter routes advertised to peers. + items: + type: string + type: array + grStaleRouteTime: + description: Enables Graceful Restart on the peer and sets the stale route time. + maximum: 3600 + minimum: 1 + type: integer + importPolicy: + description: Reference to a Policy CR that will be used to filter routes received from peers. + items: + type: string + type: array + interface: + description: Reference to either a DefaultInterface or SystemInterface from which the session to the client will be done from. + type: string + interfaceKind: + description: Reference to a the Kind of interface from which the session to the client will be done from. + enum: + - DEFAULTINTERFACE + - SYSTEMINTERFACE + type: string + ipv4Unicast: + description: Parameters relating to the IPv4 unicast AFI/SAFI. + properties: + advertiseIPV6NextHops: + description: Enables advertisement of IPv4 Unicast routes with IPv6 next-hops to peers. + type: boolean + enabled: + description: Enables the IPv4 unicast AFISAFI. + type: boolean + prefixLimit: + properties: + prefixLimitAccepted: + properties: + logOnly: + description: Defines the action to take when the maximum number of prefixes is exceeded. Session is reset if set to false, otherwise only a warning is logged. + type: boolean + maxReceivedRoutes: + description: Maximum number of prefixes allowed to be received from the neighbor, counting only accepted routes. + format: int32 + maximum: 4294967295 + minimum: 1 + type: integer + warningThreshold: + description: A percentage of the maximum number of prefixes that can be accepted before a warning is logged. + maximum: 100 + minimum: 1 + type: integer + type: object + prefixLimitReceived: + properties: + logOnly: + description: Defines the action to take when the maximum number of prefixes is exceeded. Session is reset if set to false, otherwise only a warning is logged. + type: boolean + maxReceivedRoutes: + description: Maximum number of prefixes allowed to be received from the neighbor, counting all routes (accepted and rejected by import policies). + format: int32 + maximum: 4294967295 + minimum: 1 + type: integer + warningThreshold: + description: A percentage of the maximum number of prefixes that can be received before a warning is logged. + maximum: 100 + minimum: 1 + type: integer + type: object + type: object + receiveIPV6NextHops: + description: Enables the advertisement of the RFC 5549 capability to receive IPv4 routes with IPv6 next-hops. + type: boolean + type: object + ipv6Unicast: + description: Parameters relating to the IPv6 unicast AFI/SAFI. + properties: + enabled: + description: Enables the IPv6 unicast AFISAFI + type: boolean + prefixLimit: + properties: + prefixLimitAccepted: + properties: + logOnly: + description: Defines the action to take when the maximum number of prefixes is exceeded. Session is reset if set to false, otherwise only a warning is logged. + type: boolean + maxReceivedRoutes: + description: Maximum number of prefixes allowed to be received from the neighbor, counting only accepted routes. + format: int32 + maximum: 4294967295 + minimum: 1 + type: integer + warningThreshold: + description: A percentage of the maximum number of prefixes that can be accepted before a warning is logged. + maximum: 100 + minimum: 1 + type: integer + type: object + prefixLimitReceived: + properties: + logOnly: + description: Defines the action to take when the maximum number of prefixes is exceeded. Session is reset if set to false, otherwise only a warning is logged. + type: boolean + maxReceivedRoutes: + description: Maximum number of prefixes allowed to be received from the neighbor, counting all routes (accepted and rejected by import policies). + format: int32 + maximum: 4294967295 + minimum: 1 + type: integer + warningThreshold: + description: A percentage of the maximum number of prefixes that can be received before a warning is logged. + maximum: 100 + minimum: 1 + type: integer + type: object + type: object + type: object + keychain: + description: Reference to a Keychain resource that will be used for authentication with the BGP peer. + type: string + l2VPNEVPN: + description: Parameters relating to the EVPN AFI/SAFI. + properties: + advertiseIPV6NextHops: + description: Enables advertisement of EVPN routes with IPv6 next-hops to peers. + type: boolean + enabled: + description: Enables the L2VPN EVPN AFISAFI. + type: boolean + prefixLimit: + properties: + prefixLimitAccepted: + properties: + logOnly: + description: Defines the action to take when the maximum number of prefixes is exceeded. Session is reset if set to false, otherwise only a warning is logged. + type: boolean + maxReceivedRoutes: + description: Maximum number of prefixes allowed to be received from the neighbor, counting only accepted routes. + format: int32 + maximum: 4294967295 + minimum: 1 + type: integer + warningThreshold: + description: A percentage of the maximum number of prefixes that can be accepted before a warning is logged. + maximum: 100 + minimum: 1 + type: integer + type: object + prefixLimitReceived: + properties: + logOnly: + description: Defines the action to take when the maximum number of prefixes is exceeded. Session is reset if set to false, otherwise only a warning is logged. + type: boolean + maxReceivedRoutes: + description: Maximum number of prefixes allowed to be received from the neighbor, counting all routes (accepted and rejected by import policies). + format: int32 + maximum: 4294967295 + minimum: 1 + type: integer + warningThreshold: + description: A percentage of the maximum number of prefixes that can be received before a warning is logged. + maximum: 100 + minimum: 1 + type: integer + type: object + type: object + type: object + localAS: + description: The local autonomous system number advertised to peers. + properties: + autonomousSystem: + description: Local Autonomous System number. + maximum: 4294967295 + minimum: 1 + type: integer + prependGlobalAS: + description: When set to true, the global ASN value is prepended to the AS path in outbound routes towards each BGP peer. + type: boolean + prependLocalAS: + description: When set to true, the local AS value is prepended to the AS path of inbound routes from each EBGP peer. + type: boolean + required: + - autonomousSystem + type: object + peerAS: + description: The autonomous system number expected from peers. + properties: + autonomousSystem: + description: Local Autonomous System number. + maximum: 4294967295 + minimum: 1 + type: integer + required: + - autonomousSystem + type: object + sendCommunityLarge: + description: When false, all large (12 byte) BGP communities from all outbound routes advertised to the peer are stripped. + type: boolean + sendCommunityStandard: + description: When false, all standard (4 byte) communities from all outbound routes advertised to the peer are stripped. + type: boolean + sendDefaultRoute: + description: Options for controlling the generation of default routes towards BGP peers. + properties: + addressFamily: + description: Enables the sending of a synthetically generated default IPv4 or IPV6 route to each peer. + items: + enum: + - IPV4-UNICAST + - IPV6-UNICAST + type: string + type: array + exportPolicy: + description: Reference to a Policy that should be applied to the advertised default routes, in order to set their attributes to non-default values. + type: string + required: + - addressFamily + type: object + timers: + description: Timer configurations + properties: + connectRetry: + description: The time interval in seconds between successive attempts to establish a session with a peer. + maximum: 65535 + minimum: 1 + type: integer + holdTime: + description: The hold-time interval in seconds that the router proposes to the peer in its OPEN message. + maximum: 65535 + minimum: 0 + type: integer + keepAlive: + description: The interval in seconds between successive keepalive messages sent to the peer. + maximum: 21845 + minimum: 0 + type: integer + minimumAdvertisementInterval: + description: The value assigned to the MinRouteAdvertisementIntervalTimer of RFC 4271, for both EBGP and IBGP sessions. + maximum: 255 + minimum: 1 + type: integer + type: object + required: + - clusterID + - defaultBGPRRGroup + - interface + - interfaceKind + type: object + status: + description: DefaultRouteReflectorStatus defines the observed state of DefaultRouteReflector + properties: + health: + description: Indicates the health score of the Route Reflector. + type: integer + healthScoreReason: + description: Indicates the reason for the health score. + type: string + lastChange: + description: The time when the state of the resource last changed. + type: string + numRouteReflectorBGPPeers: + description: Total number of configured route reflector client peers on the route reflector. + type: integer + numRouteReflectorBGPPeersOperDown: + description: Total number of configured route reflector client peers on the route reflector that are operationally down. + type: integer + operDownRouteReflectorPeers: + description: List of route reflector BGPPeers which are operationally down. + items: + type: string + type: array + operationalState: + description: Operational state of the Route Reflector. + type: string + type: object + type: object +served: true +storage: true +subresources: + status: {} diff --git a/static/resources/25.8.3/defaultroutereflectors.protocols.eda.nokia.com/v1alpha1.yaml b/static/resources/25.8.3/defaultroutereflectors.protocols.eda.nokia.com/v1alpha1.yaml new file mode 100644 index 0000000..e56d4dd --- /dev/null +++ b/static/resources/25.8.3/defaultroutereflectors.protocols.eda.nokia.com/v1alpha1.yaml @@ -0,0 +1,280 @@ +additionalPrinterColumns: + - jsonPath: .status.lastChange + name: Last Change + type: date + - jsonPath: .status.operationalState + name: Operational State + type: string + - jsonPath: .status.numRouteReflectorBGPPeers + name: NumRouteReflectorBGPPeers + type: string + - jsonPath: .status.numRouteReflectorBGPPeersOperDown + name: NumRouteReflectorBGPPeersOperDown + type: string +deprecated: true +deprecationWarning: This version is deprecated and will no longer be supported in the next version. +name: v1alpha1 +schema: + openAPIV3Schema: + description: DefaultRouteReflector is the Schema for the defaultroutereflectors API + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + description: DefaultRouteReflector enables the configuration of iBGP sessions to RouteReflectorClients. It includes settings for the DefaultInterface, BGP group, client selectors, and the Cluster ID. Additionally, it allows for the configuration of L2VPN EVPN settings and applies common BGP configuration settings to manage routing efficiently within the network. + properties: + asPathOptions: + description: AS Path Options + properties: + allowOwnAS: + default: 0 + description: The maximum number of times the global AS number or a local AS number of the BGP instance can appear in any received AS_PATH before it is considered a loop and considered invalid. + maximum: 255 + minimum: 0 + type: integer + removePrivateAS: + description: Options for removing private AS numbers (2-byte and 4-byte) from the advertised AS path towards all peers. + properties: + ignorePeerAS: + default: false + description: If set to true then do not delete or replace a private AS number that is the same as the peer AS number. + type: boolean + leadingOnly: + default: false + description: If set to true then only delete or replace private AS numbers that appear before the first occurrence of a non-private ASN in the sequence of most recent ASNs in the AS path. + type: boolean + removePrivateASMode: + default: DISABLED + description: The method by which private AS numbers are removed from the advertised AS_PATH attribute. + enum: + - DISABLED + - REPLACE + - DELETE + type: string + required: + - ignorePeerAS + - leadingOnly + - removePrivateASMode + type: object + required: + - allowOwnAS + type: object + bfd: + description: Enable or disable Bi-forward Forwarding Detection (BFD) with fast failover. + type: boolean + clientIPs: + description: List of RR client IPs to which the iBGP sessions are established. + items: + type: string + type: array + clientSelector: + description: Label selector used to select the RouteReflectorClients to which the iBGP sessions are established. + items: + type: string + type: array + clusterID: + description: Sets the cluster ID for route reflectors. + type: string + defaultBGPRRGroup: + description: Reference to a DefaultBGPGroup. + type: string + exportPolicy: + description: Reference to a Policy CR that will be used to filter routes advertised to peers. + items: + type: string + type: array + grStaleRouteTime: + description: Enables Graceful Restart on the peer and sets the stale route time. + maximum: 3600 + minimum: 1 + type: integer + importPolicy: + description: Reference to a Policy CR that will be used to filter routes received from peers. + items: + type: string + type: array + interface: + description: Reference to either a DefaultInterface or SystemInterface from which the session to the client will be done from. + type: string + interfaceKind: + description: Reference to a the Kind of interface from which the session to the client will be done from. + enum: + - DEFAULTINTERFACE + - SYSTEMINTERFACE + type: string + ipv4Unicast: + description: Parameters relating to the IPv4 unicast AFI/SAFI. + properties: + advertiseIPV6NextHops: + description: Enables advertisement of IPv4 Unicast routes with IPv6 next-hops to peers. + type: boolean + enabled: + description: Enables the IPv4 unicast AFISAFI. + type: boolean + maxReceivedRoutes: + description: Maximum number of IPv4 Unicast routes that will be accepted from the neighbor, counting routes accepted and rejected by import policies. + maximum: 4294967295 + minimum: 1 + type: integer + receiveIPV6NextHops: + description: Enables the advertisement of the RFC 5549 capability to receive IPv4 routes with IPv6 next-hops. + type: boolean + type: object + ipv6Unicast: + description: Parameters relating to the IPv6 unicast AFI/SAFI. + properties: + enabled: + description: Enables the IPv6 unicast AFISAFI + type: boolean + maxReceivedRoutes: + description: Maximum number of IPv6 Unicast routes that will be accepted from the neighbor, counting routes accepted and rejected by import policies. + maximum: 4294967295 + minimum: 1 + type: integer + type: object + keychain: + description: Reference to a Keychain resource that will be used for authentication with the BGP peer. + type: string + l2VPNEVPN: + description: Parameters relating to the EVPN AFI/SAFI. + properties: + advertiseIPV6NextHops: + description: Enables advertisement of EVPN routes with IPv6 next-hops to peers. + type: boolean + enabled: + description: Enables the L2VPN EVPN AFISAFI. + type: boolean + maxReceivedRoutes: + description: Maximum number of EVPN routes that will be accepted from the neighbor, counting routes accepted and rejected by import policies. + maximum: 4294967295 + minimum: 1 + type: integer + type: object + localAS: + description: The local autonomous system number advertised to peers. + properties: + autonomousSystem: + description: Local Autonomous System number. + maximum: 4294967295 + minimum: 1 + type: integer + prependGlobalAS: + description: When set to true, the global ASN value is prepended to the AS path in outbound routes towards each BGP peer. + type: boolean + prependLocalAS: + description: When set to true, the local AS value is prepended to the AS path of inbound routes from each EBGP peer. + type: boolean + required: + - autonomousSystem + type: object + peerAS: + description: The autonomous system number expected from peers. + properties: + autonomousSystem: + description: Local Autonomous System number. + maximum: 4294967295 + minimum: 1 + type: integer + required: + - autonomousSystem + type: object + sendCommunityLarge: + description: When false, all large (12 byte) BGP communities from all outbound routes advertised to the peer are stripped. + type: boolean + sendCommunityStandard: + description: When false, all standard (4 byte) communities from all outbound routes advertised to the peer are stripped. + type: boolean + sendDefaultRoute: + description: Options for controlling the generation of default routes towards BGP peers. + properties: + addressFamily: + description: Enables the sending of a synthetically generated default IPv4 or IPV6 route to each peer. + items: + enum: + - IPV4-UNICAST + - IPV6-UNICAST + type: string + type: array + exportPolicy: + description: Reference to a Policy that should be applied to the advertised default routes, in order to set their attributes to non-default values. + type: string + required: + - addressFamily + type: object + timers: + description: Timer configurations + properties: + connectRetry: + description: The time interval in seconds between successive attempts to establish a session with a peer. + maximum: 65535 + minimum: 1 + type: integer + holdTime: + description: The hold-time interval in seconds that the router proposes to the peer in its OPEN message. + maximum: 65535 + minimum: 0 + type: integer + keepAlive: + description: The interval in seconds between successive keepalive messages sent to the peer. + maximum: 21845 + minimum: 0 + type: integer + minimumAdvertisementInterval: + description: The value assigned to the MinRouteAdvertisementIntervalTimer of RFC 4271, for both EBGP and IBGP sessions. + maximum: 255 + minimum: 1 + type: integer + type: object + required: + - clusterID + - defaultBGPRRGroup + - interface + - interfaceKind + type: object + status: + description: DefaultRouteReflectorStatus defines the observed state of DefaultRouteReflector + properties: + health: + description: Indicates the health score of the Route Reflector. + type: integer + healthScoreReason: + description: Indicates the reason for the health score. + type: string + lastChange: + description: The time when the state of the resource last changed. + type: string + numRouteReflectorBGPPeers: + description: Total number of configured route reflector client peers on the route reflector. + type: integer + numRouteReflectorBGPPeersOperDown: + description: Total number of configured route reflector client peers on the route reflector that are operationally down. + type: integer + operDownRouteReflectorPeers: + description: List of route reflector BGPPeers which are operationally down. + items: + type: string + type: array + operationalState: + description: Operational state of the Route Reflector. + type: string + type: object + type: object +served: true +storage: false +subresources: + status: {} diff --git a/static/resources/25.8.3/defaultrouters.routing.eda.nokia.com/v1alpha1.yaml b/static/resources/25.8.3/defaultrouters.routing.eda.nokia.com/v1alpha1.yaml new file mode 100644 index 0000000..c855d05 --- /dev/null +++ b/static/resources/25.8.3/defaultrouters.routing.eda.nokia.com/v1alpha1.yaml @@ -0,0 +1,228 @@ +additionalPrinterColumns: + - jsonPath: .status.lastChange + name: Last Change + type: date + - jsonPath: .status.operationalState + name: Operational State + type: string +name: v1alpha1 +schema: + openAPIV3Schema: + description: DefaultRouter is the Schema for the defaultrouters API + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + description: DefaultRouter enables the configuration of default routing instances on a specified Node, including options for BGP configuration, import and export policies, and router IDs. + properties: + bgp: + description: BGP configuration. + properties: + autonomousSystem: + description: Autonomous System number for BGP. + maximum: 4294967295 + minimum: 1 + type: integer + ebgpPreference: + default: 170 + description: Preference to be set for eBGP. + maximum: 255 + minimum: 1 + type: integer + enabled: + default: false + description: Enables BGP in the default VRF. + type: boolean + ibgpPreference: + default: 170 + description: Preference to be set for iBGP. + maximum: 255 + minimum: 1 + type: integer + ipv4Unicast: + description: Parameters relating to the IPv4 unicast AFI/SAFI. + properties: + advertiseIPV6NextHops: + description: Enables advertisement of IPv4 Unicast routes with IPv6 next-hops to peers. + type: boolean + enabled: + description: Enables the IPv4 unicast AFISAFI. + type: boolean + multipath: + description: Enable multipath. + properties: + allowMultipleAS: + default: true + description: When set to true, BGP is allowed to build a multipath set using BGP routes with different neighbor AS (most recent AS in the AS_PATH), When set to false, BGP is only allowed to use non-best paths for ECMP if they meet the multipath criteria and they have the same neighbor AS as the best path. + type: boolean + maxAllowedPaths: + description: The maximum number of BGP ECMP next-hops for BGP routes with an NLRI belonging to the address family of this configuration context. + maximum: 256 + minimum: 1 + type: integer + required: + - allowMultipleAS + - maxAllowedPaths + type: object + rapidUpdate: + description: Enables rapid update. + type: boolean + receiveIPV6NextHops: + description: Enables the advertisement of the RFC 5549 capability to receive IPv4 routes with IPv6 next-hops. + type: boolean + type: object + ipv6Unicast: + description: Parameters relating to the IPv6 unicast AFI/SAFI. + properties: + enabled: + description: Enables the IPv6 unicast AFISAFI + type: boolean + multipath: + description: Enable multipath + properties: + allowMultipleAS: + default: true + description: When set to true, BGP is allowed to build a multipath set using BGP routes with different neighbor AS (most recent AS in the AS_PATH), When set to false, BGP is only allowed to use non-best paths for ECMP if they meet the multipath criteria and they have the same neighbor AS as the best path. + type: boolean + maxAllowedPaths: + description: The maximum number of BGP ECMP next-hops for BGP routes with an NLRI belonging to the address family of this configuration context. + maximum: 256 + minimum: 1 + type: integer + required: + - allowMultipleAS + - maxAllowedPaths + type: object + rapidUpdate: + description: Enables rapid update. + type: boolean + type: object + keychain: + description: Keychain to be used for authentication + type: string + l2VPNEVPN: + description: Parameters relating to the EVPN AFI/SAFI. + properties: + advertiseIPV6NextHops: + description: Enables advertisement of EVPN routes with IPv6 next-hops to peers. + type: boolean + enabled: + description: Enables the L2VPN EVPN AFISAFI. + type: boolean + interASVPN: + default: false + description: Enable inter-AS VPN for EVPN. + type: boolean + multipath: + description: Enable multipath + properties: + allowMultipleAS: + default: true + description: When set to true, BGP is allowed to build a multipath set using BGP routes with different neighbor AS (most recent AS in the AS_PATH), When set to false, BGP is only allowed to use non-best paths for ECMP if they meet the multipath criteria and they have the same neighbor AS as the best path. + type: boolean + maxAllowedPaths: + description: The maximum number of BGP ECMP next-hops for BGP routes with an NLRI belonging to the address family of this configuration context. + maximum: 256 + minimum: 1 + type: integer + required: + - allowMultipleAS + - maxAllowedPaths + type: object + rapidUpdate: + description: Enables rapid update. + type: boolean + type: object + minWaitToAdvertise: + default: 0 + description: Minimum wait time before advertising routes post BGP restart. + maximum: 3600 + minimum: 0 + type: integer + rapidWithdrawl: + default: false + description: Enable rapid withdrawal in BGP. + type: boolean + sendCommunityLarge: + description: When false, all large (12 byte) BGP communities from all outbound routes advertised to the peer are stripped. + type: boolean + sendCommunityStandard: + description: When false, all standard (4 byte) communities from all outbound routes advertised to the peer are stripped. + type: boolean + waitForFibInstall: + default: false + description: Wait for FIB installation before advertising routes. + type: boolean + type: object + description: + description: Sets the description on the Default router. + type: string + exportPolicy: + description: Reference to a Policy resource to use when evaluating route exports from the DefaultRouter. + items: + type: string + type: array + importPolicy: + description: Reference to a Policy resource to use when evaluating route imports into the DefaultRouter. + items: + type: string + type: array + node: + description: Reference to a TopoNode on which to configure the default routing instance. + type: string + routeLeaking: + description: Route leaking controlled by routing policies in and out of the DefaultRouter. + properties: + exportPolicy: + description: Reference to a Policy resource to use when evaluating route exports from the DefaultRouter. + type: string + importPolicy: + description: Reference to a Policy resource to use when evaluating route imports into the DefaultRouter. + type: string + required: + - exportPolicy + - importPolicy + type: object + routerID: + description: Router ID in dotted quad notation. + type: string + required: + - node + - routerID + type: object + status: + description: DefaultRouterStatus defines the observed state of DefaultRouter + properties: + health: + description: Indicates the health score of the Router. + type: integer + healthScoreReason: + description: Indicates the reason for the health score. + type: string + lastChange: + description: The time when the state of the resource last changed. + type: string + operationalState: + description: Operational state of the Router. + type: string + type: object + type: object +served: true +storage: true +subresources: + status: {} diff --git a/static/resources/25.8.3/defaultrouterstates.routing.eda.nokia.com/v1alpha1.yaml b/static/resources/25.8.3/defaultrouterstates.routing.eda.nokia.com/v1alpha1.yaml new file mode 100644 index 0000000..0606314 --- /dev/null +++ b/static/resources/25.8.3/defaultrouterstates.routing.eda.nokia.com/v1alpha1.yaml @@ -0,0 +1,42 @@ +name: v1alpha1 +schema: + openAPIV3Schema: + description: DefaultRouterState is the Schema for the defaultrouterstates API + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + description: DefaultRouterStateSpec defines the desired state of DefaultRouterState + properties: + node: + description: Node on which the DefaultRouter is deployed + type: string + operatingSystem: + description: Operating System of the Node + type: string + required: + - node + type: object + status: + description: DefaultRouterStateStatus defines the observed state of DefaultRouterState + type: object + type: object +served: true +storage: true +subresources: + status: {} diff --git a/static/resources/25.8.3/defaultstaticroutes.protocols.eda.nokia.com/v1.yaml b/static/resources/25.8.3/defaultstaticroutes.protocols.eda.nokia.com/v1.yaml new file mode 100644 index 0000000..fe909b4 --- /dev/null +++ b/static/resources/25.8.3/defaultstaticroutes.protocols.eda.nokia.com/v1.yaml @@ -0,0 +1,120 @@ +name: v1 +schema: + openAPIV3Schema: + description: DefaultStaticRoute is the Schema for the default static routes API + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + description: DefaultStaticRoute enables the configuration of static routes within a DefaultRouter. It allows specifying destination prefixes, route preference, and a nexthop group. This resource facilitates precise control over routing behavior, including options for BFD, route resolution, and blackholing traffic. + properties: + defaultRouter: + description: Reference to a DefaultRouter on which to configure the static routes. + type: string + nexthopGroup: + description: Group of nexthops for the list of prefixes. + properties: + bfd: + description: Enables BFD to the next-hops in the group. Local and Remote discriminator parameters have been deprecated at this level. Use Nexthop to set these parameters. + properties: + enabled: + default: false + description: Defines whether BFD should be enabled towards the nexthops. + type: boolean + localAddress: + description: Defines the local address to use when establishing the BFD session with the nexthop. + type: string + type: object + blackhole: + default: false + description: If set to true all traffic destined to the prefixes will be blackholed. If enabled, next-hops are ignored and this takes precedence. + type: boolean + blackholeSendICMP: + description: When enabled, the router will generate ICMP Unreachable messages for packets destined to the blackhole route. + type: boolean + nexthops: + description: Ordered list of nexthops. + items: + properties: + bfd: + description: Enables BFD to the next-hops in the group. This overrides the configuration at the group. + properties: + enabled: + default: false + description: Defines whether BFD should be enabled towards the nexthops. + type: boolean + localAddress: + description: Defines the local address to use when establishing the BFD session with the nexthop. + type: string + localDiscriminator: + description: Defines the local discriminator. + type: integer + remoteDiscriminator: + description: Defines the remote discriminator. + type: integer + type: object + ipPrefix: + description: Address to use. + type: string + resolve: + default: false + description: If set to true the next-hops can be destinations which are resolved in the route table. This overrides the configuration at the group. + type: boolean + required: + - ipPrefix + type: object + type: array + resolve: + default: false + description: If set to true the next-hops can be destinations which are resolved in the route table. + type: boolean + type: object + preference: + description: Defines the route preference. + type: integer + prefixes: + description: List of destination prefixes and mask to use for the static routes. + items: + type: string + type: array + required: + - defaultRouter + - nexthopGroup + - prefixes + type: object + status: + description: DefaultStaticRouteStatus defines the observed state of default static route + properties: + health: + description: Indicates the health score of the static routes. + type: integer + healthScoreReason: + description: Indicates the reason for the health score. + type: string + lastChange: + description: The time when the state of the resource last changed. + type: string + operationalState: + description: Operational state of the static routes. + type: string + type: object + type: object +served: true +storage: true +subresources: + status: {} diff --git a/static/resources/25.8.3/defaultstaticroutes.protocols.eda.nokia.com/v1alpha1.yaml b/static/resources/25.8.3/defaultstaticroutes.protocols.eda.nokia.com/v1alpha1.yaml new file mode 100644 index 0000000..4c8774c --- /dev/null +++ b/static/resources/25.8.3/defaultstaticroutes.protocols.eda.nokia.com/v1alpha1.yaml @@ -0,0 +1,128 @@ +deprecated: true +deprecationWarning: This version is deprecated and will no longer be supported in the next version. +name: v1alpha1 +schema: + openAPIV3Schema: + description: DefaultStaticRoute is the Schema for the default static routes API + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + description: DefaultStaticRoute enables the configuration of static routes within a DefaultRouter. It allows specifying destination prefixes, route preference, and a nexthop group. This resource facilitates precise control over routing behavior, including options for BFD, route resolution, and blackholing traffic. + properties: + defaultRouter: + description: Reference to a DefaultRouter on which to configure the static routes. + type: string + nexthopGroup: + description: Group of nexthops for the list of prefixes. + properties: + bfd: + description: Enables BFD to the next-hops in the group. Local and Remote discriminator parameters have been deprecated at this level. Use Nexthop to set these parameters. + properties: + enabled: + default: false + description: Defines whether BFD should be enabled towards the nexthops. + type: boolean + localAddress: + description: Defines the local address to use when establishing the BFD session with the nexthop. + type: string + localDiscriminator: + description: Defines the local discriminator. + type: integer + remoteDiscriminator: + description: Defines the remote discriminator. + type: integer + type: object + blackhole: + default: false + description: If set to true all traffic destined to the prefixes will be blackholed. If enabled, next-hops are ignored and this takes precedence. + type: boolean + blackholeSendICMP: + description: When enabled, the router will generate ICMP Unreachable messages for packets destined to the blackhole route. + type: boolean + nexthops: + description: Ordered list of nexthops. + items: + properties: + bfd: + description: Enables BFD to the next-hops in the group. This overrides the configuration at the group. + properties: + enabled: + default: false + description: Defines whether BFD should be enabled towards the nexthops. + type: boolean + localAddress: + description: Defines the local address to use when establishing the BFD session with the nexthop. + type: string + localDiscriminator: + description: Defines the local discriminator. + type: integer + remoteDiscriminator: + description: Defines the remote discriminator. + type: integer + type: object + ipPrefix: + description: Address to use. + type: string + resolve: + default: false + description: If set to true the next-hops can be destinations which are resolved in the route table. This overrides the configuration at the group. + type: boolean + required: + - ipPrefix + type: object + type: array + resolve: + default: false + description: If set to true the next-hops can be destinations which are resolved in the route table. + type: boolean + type: object + preference: + description: Defines the route preference. + type: integer + prefixes: + description: List of destination prefixes and mask to use for the static routes. + items: + type: string + type: array + required: + - defaultRouter + - nexthopGroup + - prefixes + type: object + status: + description: DefaultStaticRouteStatus defines the observed state of default static route + properties: + health: + description: Indicates the health score of the static routes. + type: integer + healthScoreReason: + description: Indicates the reason for the health score. + type: string + lastChange: + description: The time when the state of the resource last changed. + type: string + operationalState: + description: Operational state of the static routes. + type: string + type: object + type: object +served: true +storage: false +subresources: + status: {} diff --git a/static/resources/25.8.3/deployimages.os.eda.nokia.com/v1alpha1.yaml b/static/resources/25.8.3/deployimages.os.eda.nokia.com/v1alpha1.yaml new file mode 100644 index 0000000..68086d1 --- /dev/null +++ b/static/resources/25.8.3/deployimages.os.eda.nokia.com/v1alpha1.yaml @@ -0,0 +1,238 @@ +additionalPrinterColumns: + - jsonPath: .status.result + name: Result + type: string + - jsonPath: .metadata.creationTimestamp + name: Age + type: date +name: v1alpha1 +schema: + openAPIV3Schema: + description: DeployImage is the Schema for the deployimages API + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + description: |- + Upgrade / downgrade images on targets. + This workflow can be used directly on a target or list of targets, or with selectors to select targets through labels. + It also supports tranches, which are groups of targets that can be upgraded together. + By default a set of checks are run before and after the image change, but this can be controlled via the checks field. + It also supports canaries, which are upgraded before any other targets. + properties: + canaries: + description: |- + List of node selectors to use to match canary nodes. + This matches labels on TopoNode resources, including those TopoNodes in the list of nodes that will be imaged. + Canary nodes are upgraded before any other nodes, and are used to test images before broader roll out. + This is a list of label expressions, e.g. ["eda.nokia.com/role=canary"]. + items: + type: string + type: array + checks: + description: Configure pre and post checks. + properties: + checks: + description: |- + Checks to run before (pre) and after (post) any image changes. + If none are specified, a default set of checks will be run. + items: + enum: + - Interface + - DefaultBGP + - PingISL + - PingSystem + type: string + type: array + force: + description: Ignore result of pre and post checks, do not prompt on failure. + type: boolean + skip: + description: Do not run any checks pre or post image change. + type: boolean + type: object + drains: + description: Configure drains to gracefully drain traffic away from nodes before imaging. + properties: + minimumWaitTimeSeconds: + default: 60 + description: |- + Seconds to wait before rebooting a node after it has been drained. + This is used to allow time for any traffic to drain away from the node before reboot. + type: integer + skip: + description: Do not run any drain operations. Nodes will be rebooted without attempting to gracefully drain them. + type: boolean + type: object + nodeProfile: + description: |- + Destination profile to use for imaging. + This profile contains the image to deploy, and other configuration for the node. + type: string + nodeSelectors: + description: |- + List of node selectors to select nodes to deploy images on. + This matches labels on TopoNode resources, including those TopoNodes in the list of nodes that will be imaged. + If no nodes are specified, and no node selectors are specified, all nodes in the given namespace will be selected. + This is a list of label expressions, e.g. ["eda.nokia.com/role=leaf"]. + items: + type: string + type: array + nodes: + description: List of nodes to deploy images on. + items: + type: string + type: array + prompt: + description: |- + Control when to prompt the user for input. + If any pre or post checks fail, the user will be prompted for input, but this may be used to prompt even if they're successful. + items: + enum: + - AfterPreChecks + - AfterPostChecks + type: string + type: array + tranches: + description: |- + List of tranches to use for imaging. + A tranche is a list of node selectors, and a name. + Tranches are upgraded in order, sequentially. + items: + properties: + name: + description: |- + Name of the tranche. + This is used to identify the tranche in the UI and in logs. + type: string + nodeSelectors: + description: |- + Node Selectors is a list of node selectors to select nodes to deploy images on in this tranche. + This matches labels on TopoNode resources, including those TopoNodes in the list of nodes that will be imaged. + This is a list of label expressions, e.g. ["eda.nokia.com/role=leaf"]. + items: + type: string + type: array + type: object + type: array + required: + - nodeProfile + type: object + status: + description: Status of the imaging operation. + properties: + details: + description: Per-node image deployment details. + items: + properties: + drainedTime: + description: |- + The time when the node was drained. + This is the time when the node was drained before the imaging operation. + format: date-time + type: string + newNodeProfile: + description: The new profile of the node. + type: string + newVersion: + description: The new version of the node. + type: string + node: + description: The name of the node this result is for. + type: string + postCheckSuccessful: + description: |- + Indicates if post checks were successful for this node. + This is true if all post checks passed, false if any post checks failed. + type: boolean + preCheckSuccessful: + description: |- + Indicates if pre checks were successful for this node. + This is true if all pre checks passed, false if any pre checks failed. + type: boolean + previousNodeProfile: + description: |- + The previous profile of the node. + This is the node profile that was running before the imaging operation. + type: string + previousVersion: + description: |- + The previous version of the node. + This is the version of the image that was running before the imaging operation. + type: string + rebootRecoveryTime: + description: |- + The time when the node was recovered after reboot. + This is the time when the node was recovered after the imaging operation. + format: date-time + type: string + rebootTime: + description: |- + The time when the node was rebooted. + This is the time when the node was rebooted during the imaging operation. + format: date-time + type: string + success: + description: |- + Indicates if the imaging operation was successful for this node. + This is true if the imaging operation was successful, false if it failed. + type: boolean + undrainedTime: + description: |- + The time when the node was undrained. + This is the time when the node was undrained after the imaging operation. + format: date-time + type: string + type: object + type: array + firstNodeDrained: + description: The time when the first node was drained. + format: date-time + type: string + firstNodeRebooted: + description: The time when the first node was rebooted. + format: date-time + type: string + lastNodeRebootRecovered: + description: The time when the last node recovered post reboot. + format: date-time + type: string + lastNodeUndrained: + description: The time when the last node was undrained. + format: date-time + type: string + result: + description: |- + Result is the overall result of the image operation. + It can be one of the following values: + - "Success": All images were successfully deployed. + - "Failed": No images were successfully deployed. + - "PartialSuccess": Some images were successfully deployed, but not all. + enum: + - Success + - Failed + - PartialSuccess + type: string + required: + - result + type: object + type: object +served: true +storage: true +subresources: + status: {} diff --git a/static/resources/25.8.3/designers.core.eda.nokia.com/v1.yaml b/static/resources/25.8.3/designers.core.eda.nokia.com/v1.yaml new file mode 100644 index 0000000..9d3d2c0 --- /dev/null +++ b/static/resources/25.8.3/designers.core.eda.nokia.com/v1.yaml @@ -0,0 +1,98 @@ +name: v1 +schema: + openAPIV3Schema: + description: Designer is the Schema for the designers API + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + description: DesignerSpec defines the desired state of Designer + properties: + nodeTemplate: + description: A list of templates to use with nodes + items: + properties: + interfaceGroup: + description: A list of interfaceGroups + items: + properties: + interfaceTemplate: + description: The interfaceTemplate associated with the interfaceGroup + properties: + fec: + description: Set Forward Error Correction on interfaces + type: string + numberChannel: + description: When set > 0 breakouts are configured on the interfaces + type: integer + speed: + description: The speed set on each interface + type: string + required: + - numberChannel + - speed + type: object + interfaces: + description: List of interfaces within the interfaceGroup in the dut-1/1/1 format (check this format) + items: + type: string + type: array + labels: + description: List of labels to associate with the interfaces within this interface Gropu + items: + type: string + type: array + required: + - interfaceTemplate + - interfaces + type: object + type: array + name: + type: string + operatingSystem: + description: The OS running on this TopoNode, e.g. srl, sros + enum: + - srl + - sros + - eos + - sonic + type: string + platform: + description: Platform type of this Node, e.g. 7220 IXR-D3L + type: string + version: + description: Sets the software version of this TopoNode, e.g. 22.6.1, 22.10.R1 + type: string + required: + - name + - operatingSystem + - platform + - version + type: object + type: array + required: + - nodeTemplate + type: object + status: + description: DesignerStatus defines the observed state of Designer + type: object + type: object +served: true +storage: true +subresources: + status: {} diff --git a/static/resources/25.8.3/deviationactions.core.eda.nokia.com/v1.yaml b/static/resources/25.8.3/deviationactions.core.eda.nokia.com/v1.yaml new file mode 100644 index 0000000..0a9bd4c --- /dev/null +++ b/static/resources/25.8.3/deviationactions.core.eda.nokia.com/v1.yaml @@ -0,0 +1,81 @@ +additionalPrinterColumns: + - jsonPath: .status.result + name: Result + type: string + - jsonPath: .metadata.creationTimestamp + name: Age + type: date +name: v1 +schema: + openAPIV3Schema: + description: DeviationAction is the Schema for the deviationactions API + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + description: |- + DeviationAction allows manual and API-driven actions to be performed on Deviation resources. + They are the only means to which and end user can accept or reject deviations, as Deviation resources themselves are read only. + properties: + actions: + description: The set of actions to perform on the target. + items: + properties: + action: + description: Action to perform on matching Deviations. + enum: + - setAccept + - clearAccept + - reject + type: string + path: + description: Path to match Deviation resources on this target. Only one action is allowed per path. + type: string + recurse: + description: Recursively accept/reject Deviations from the specified path. + type: boolean + required: + - action + - path + type: object + type: array + nodeEndpoint: + description: The target on which this action is to be performed. + type: string + required: + - actions + - nodeEndpoint + type: object + status: + description: DeviationActionStatus defines the observed state of DeviationAction + properties: + result: + description: The result of the set of actions. + enum: + - OK + - Failed + type: string + transactionId: + description: The transaction id these actions were part of. + type: integer + type: object + type: object +served: true +storage: true +subresources: + status: {} diff --git a/static/resources/25.8.3/deviationoverlays.topologies.eda.nokia.com/v1alpha1.yaml b/static/resources/25.8.3/deviationoverlays.topologies.eda.nokia.com/v1alpha1.yaml new file mode 100644 index 0000000..801dc68 --- /dev/null +++ b/static/resources/25.8.3/deviationoverlays.topologies.eda.nokia.com/v1alpha1.yaml @@ -0,0 +1,69 @@ +name: v1alpha1 +schema: + openAPIV3Schema: + description: DeviationOverlay is the Schema for deviationoverlays + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + description: DeviationOverlaySpec defines the desired state of DeviationOverlay + properties: + enabled: + description: Enable or disable the generation of the status of this overlay + type: boolean + topology: + description: Reference to the topology that this overlay is extending. + properties: + group: + description: The group of the application which published the topology this overlay is extending. + type: string + name: + description: The name of the resource which published the topology this overlay is extending. + type: string + version: + description: The version of the application which published the topology this overlay is extending. + type: string + required: + - group + - name + - version + type: object + uiDescription: + description: A description of the overlay to expose in the UI + type: string + uiDescriptionKey: + description: The translation key for the description of the overlay to expose in the UI + type: string + uiName: + description: The name of the overlay to expose in the UI + type: string + uiNameKey: + description: The translation key for the name of the overlay to expose in the UI + type: string + required: + - enabled + - topology + type: object + status: + description: DeviationOverlayStatus defines the observed state of DeviationOverlay + type: object + type: object +served: true +storage: true +subresources: + status: {} diff --git a/static/resources/25.8.3/deviations.core.eda.nokia.com/v1.yaml b/static/resources/25.8.3/deviations.core.eda.nokia.com/v1.yaml new file mode 100644 index 0000000..d6ead7a --- /dev/null +++ b/static/resources/25.8.3/deviations.core.eda.nokia.com/v1.yaml @@ -0,0 +1,90 @@ +additionalPrinterColumns: + - jsonPath: .spec.operation + name: OPERATION + type: string + - jsonPath: .spec.path + name: JSPATH + type: string +name: v1 +schema: + openAPIV3Schema: + description: Deviation is the Schema for the nodeconfigs API + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + description: |- + Deviations are used to represent differences between the intended and actual state of a target. + They indicate the intended state - or the computed configuration EDA expects, and compare this to the actual or running state, or the configuration retrieved from the target. + Deviations are most often generated by out-of-band changes to a target by an external system or user, and + can be accepted or rejected. Rejecting a Deviation will result in the intended configuration being re-applied, undoing the out-of-band change. + Deviations are raised per table, meaning a single change on a target may result in more than one Deviation. + properties: + accepted: + description: Indicates whether this Deviation has been accepted. + type: boolean + associatedCrs: + description: Resources impacted by this Deviation. + items: + properties: + groupVersion: + description: Group and version of the resource. + type: string + kind: + description: Kind of the resource. + type: string + name: + description: Name of the resource. + type: string + required: + - groupVersion + - kind + - name + type: object + type: array + intendedValues: + description: JSON object containing intended values of fields at the specified path. + type: string + nodeEndpoint: + description: Target on which this Deviation is present. + type: string + operation: + description: Indicates the operation in this Deviation. + enum: + - create + - delete + type: string + path: + description: Path on the target this Deviation is present at. This path is relative to the target's root, without any EDA prefixes - for example ".system" rather than ".namespace.node.srl.system". + type: string + runningValues: + description: JSON object containing running values of fields at the specified path. + type: string + required: + - nodeEndpoint + - operation + - path + type: object + status: + description: DeviationStatus defines the observed state of Deviation + type: object + type: object +served: true +storage: true +subresources: + status: {} diff --git a/static/resources/25.8.3/dhcprelays.services.eda.nokia.com/v1.yaml b/static/resources/25.8.3/dhcprelays.services.eda.nokia.com/v1.yaml new file mode 100644 index 0000000..db5d73c --- /dev/null +++ b/static/resources/25.8.3/dhcprelays.services.eda.nokia.com/v1.yaml @@ -0,0 +1,63 @@ +name: v1 +schema: + openAPIV3Schema: + description: DHCPRelay is the Schema for the dhcprelays API + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + description: The DHCPRelay enables the forwarding of DHCP requests and responses between clients and servers across different networks. This resource allows for the configuration of various DHCP relay sub-options, such as CircuitID, RemoteID, and ClientLinkLayerAddress, to provide detailed client information. It also includes settings for specifying the router to reach the DHCP server, the list of DHCP servers to forward requests to, and selectors for Routed and IRB interfaces where the relay will be configured. Additionally, the GI Address option can be set to derive the Gateway IP address from the selected interface, ensuring correct routing of DHCP messages. + properties: + giAddress: + description: Set GI Address to the IP derived from the IRBInterface or RoutedInterface on which the DHCP relay is configured. + type: boolean + irbInterfaceSelector: + description: Label selector to select the IRBInterface on which to configure the DHCP relay. + items: + type: string + type: array + routedInterfaceSelector: + description: Label selector to select the RoutedInterface on which to configure the DHCP relay. + items: + type: string + type: array + router: + description: Router to be used to reach the DHCP server, if not specified the Router under which the source IRBInterface or RoutedInterface resides will be used. + type: string + servers: + description: List of servers to send the DHCP relayed packet to. These can be IP addresses or FQDN. + items: + type: string + minItems: 1 + type: array + subOptions: + description: DHCP Relay sub-options; available options are CircuitID, RemoteID, and ClientLinkLayerAddress. + items: + type: string + type: array + required: + - servers + type: object + status: + description: DHCPRelayStatus defines the observed state of DHCPRelay + type: object + type: object +served: true +storage: true +subresources: + status: {} diff --git a/static/resources/25.8.3/dhcprelays.services.eda.nokia.com/v1alpha1.yaml b/static/resources/25.8.3/dhcprelays.services.eda.nokia.com/v1alpha1.yaml new file mode 100644 index 0000000..9630748 --- /dev/null +++ b/static/resources/25.8.3/dhcprelays.services.eda.nokia.com/v1alpha1.yaml @@ -0,0 +1,65 @@ +deprecated: true +deprecationWarning: This version is deprecated and will no longer be supported in the next version. +name: v1alpha1 +schema: + openAPIV3Schema: + description: DHCPRelay is the Schema for the dhcprelays API + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + description: The DHCPRelay enables the forwarding of DHCP requests and responses between clients and servers across different networks. This resource allows for the configuration of various DHCP relay sub-options, such as CircuitID, RemoteID, and ClientLinkLayerAddress, to provide detailed client information. It also includes settings for specifying the router to reach the DHCP server, the list of DHCP servers to forward requests to, and selectors for Routed and IRB interfaces where the relay will be configured. Additionally, the GI Address option can be set to derive the Gateway IP address from the selected interface, ensuring correct routing of DHCP messages. + properties: + giAddress: + description: Set GI Address to the IP derived from the IRBInterface or RoutedInterface on which the DHCP relay is configured. + type: boolean + irbInterfaceSelector: + description: Label selector to select the IRBInterface on which to configure the DHCP relay. + items: + type: string + type: array + routedInterfaceSelector: + description: Label selector to select the RoutedInterface on which to configure the DHCP relay. + items: + type: string + type: array + router: + description: Router to be used to reach the DHCP server, if not specified the Router under which the source IRBInterface or RoutedInterface resides will be used. + type: string + servers: + description: List of servers to send the DHCP relayed packet to. These can be IP addresses or FQDN. + items: + type: string + minItems: 1 + type: array + subOptions: + description: DHCP Relay sub-options; available options are CircuitID, RemoteID, and ClientLinkLayerAddress. + items: + type: string + type: array + required: + - servers + type: object + status: + description: DHCPRelayStatus defines the observed state of DHCPRelay + type: object + type: object +served: true +storage: false +subresources: + status: {} diff --git a/static/resources/25.8.3/discoveries.components.eda.nokia.com/v1.yaml b/static/resources/25.8.3/discoveries.components.eda.nokia.com/v1.yaml new file mode 100644 index 0000000..fbdeb0b --- /dev/null +++ b/static/resources/25.8.3/discoveries.components.eda.nokia.com/v1.yaml @@ -0,0 +1,53 @@ +name: v1 +schema: + openAPIV3Schema: + description: Discovery is the Schema for the discoveries API + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + description: DiscoverySpec defines the desired state of Discovery + properties: + nodeSelector: + description: Selector to use when selecting TopoNodes to discover components for. + items: + type: string + type: array + nodes: + description: ' TopoNodes to discover components for.' + items: + type: string + type: array + operatingSystem: + description: Operating system to match against when selecting TopoNodes + type: string + type: object + status: + description: DiscoveryStatus defines the observed state of Discovery + properties: + nodes: + description: List of TopoNodes component discovery is running for + items: + type: string + type: array + type: object + type: object +served: true +storage: true +subresources: + status: {} diff --git a/static/resources/25.8.3/discoveries.components.eda.nokia.com/v1alpha1.yaml b/static/resources/25.8.3/discoveries.components.eda.nokia.com/v1alpha1.yaml new file mode 100644 index 0000000..f31a95e --- /dev/null +++ b/static/resources/25.8.3/discoveries.components.eda.nokia.com/v1alpha1.yaml @@ -0,0 +1,53 @@ +name: v1alpha1 +schema: + openAPIV3Schema: + description: Discovery is the Schema for the discoveries API + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + description: DiscoverySpec defines the desired state of Discovery + properties: + nodeSelector: + description: Selector to use when selecting TopoNodes to discover components for. + items: + type: string + type: array + nodes: + description: ' TopoNodes to discover components for.' + items: + type: string + type: array + operatingSystem: + description: Operating system to match against when selecting TopoNodes + type: string + type: object + status: + description: DiscoveryStatus defines the observed state of Discovery + properties: + nodes: + description: List of TopoNodes component discovery is running for + items: + type: string + type: array + type: object + type: object +served: true +storage: false +subresources: + status: {} diff --git a/static/resources/25.8.3/discoveryaggregatestates.components.eda.nokia.com/v1.yaml b/static/resources/25.8.3/discoveryaggregatestates.components.eda.nokia.com/v1.yaml new file mode 100644 index 0000000..96bfc05 --- /dev/null +++ b/static/resources/25.8.3/discoveryaggregatestates.components.eda.nokia.com/v1.yaml @@ -0,0 +1,39 @@ +name: v1 +schema: + openAPIV3Schema: + description: DiscoveryAggregateState is the Schema for the discoveryaggregatestates API + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + description: DiscoveryAggregateStateSpec defines the desired state of DiscoveryAggregateState + properties: + nodes: + description: List of TopoNodes this discovery is for. + items: + type: string + type: array + type: object + status: + description: DiscoveryAggregateStateStatus defines the observed state of DiscoveryAggregateState + type: object + type: object +served: true +storage: true +subresources: + status: {} diff --git a/static/resources/25.8.3/discoveryaggregatestates.components.eda.nokia.com/v1alpha1.yaml b/static/resources/25.8.3/discoveryaggregatestates.components.eda.nokia.com/v1alpha1.yaml new file mode 100644 index 0000000..0bbfbea --- /dev/null +++ b/static/resources/25.8.3/discoveryaggregatestates.components.eda.nokia.com/v1alpha1.yaml @@ -0,0 +1,39 @@ +name: v1alpha1 +schema: + openAPIV3Schema: + description: DiscoveryAggregateState is the Schema for the discoveryaggregatestates API + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + description: DiscoveryAggregateStateSpec defines the desired state of DiscoveryAggregateState + properties: + nodes: + description: List of TopoNodes this discovery is for. + items: + type: string + type: array + type: object + status: + description: DiscoveryAggregateStateStatus defines the observed state of DiscoveryAggregateState + type: object + type: object +served: true +storage: false +subresources: + status: {} diff --git a/static/resources/25.8.3/discoverystates.components.eda.nokia.com/v1.yaml b/static/resources/25.8.3/discoverystates.components.eda.nokia.com/v1.yaml new file mode 100644 index 0000000..6754ccd --- /dev/null +++ b/static/resources/25.8.3/discoverystates.components.eda.nokia.com/v1.yaml @@ -0,0 +1,47 @@ +name: v1 +schema: + openAPIV3Schema: + description: DiscoveryState is the Schema for the discoverystates API + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + description: DiscoveryStateSpec defines the desired state of DiscoveryState + properties: + node: + description: Reference to the TopoNode being discovered + type: string + operatingSystem: + description: The operating system of the TopoNode being discovered + type: string + version: + description: The version of the TopoNode being discovered + type: string + required: + - node + - operatingSystem + - version + type: object + status: + description: DiscoveryStateStatus defines the observed state of DiscoveryState + type: object + type: object +served: true +storage: true +subresources: + status: {} diff --git a/static/resources/25.8.3/discoverystates.components.eda.nokia.com/v1alpha1.yaml b/static/resources/25.8.3/discoverystates.components.eda.nokia.com/v1alpha1.yaml new file mode 100644 index 0000000..c43e4d3 --- /dev/null +++ b/static/resources/25.8.3/discoverystates.components.eda.nokia.com/v1alpha1.yaml @@ -0,0 +1,47 @@ +name: v1alpha1 +schema: + openAPIV3Schema: + description: DiscoveryState is the Schema for the discoverystates API + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + description: DiscoveryStateSpec defines the desired state of DiscoveryState + properties: + node: + description: Reference to the TopoNode being discovered + type: string + operatingSystem: + description: The operating system of the TopoNode being discovered + type: string + version: + description: The version of the TopoNode being discovered + type: string + required: + - node + - operatingSystem + - version + type: object + status: + description: DiscoveryStateStatus defines the observed state of DiscoveryState + type: object + type: object +served: true +storage: false +subresources: + status: {} diff --git a/static/resources/25.8.3/drains.routing.eda.nokia.com/v1alpha1.yaml b/static/resources/25.8.3/drains.routing.eda.nokia.com/v1alpha1.yaml new file mode 100644 index 0000000..f670dfd --- /dev/null +++ b/static/resources/25.8.3/drains.routing.eda.nokia.com/v1alpha1.yaml @@ -0,0 +1,58 @@ +additionalPrinterColumns: + - jsonPath: .spec.enabled + name: Enabled + type: string +name: v1alpha1 +schema: + openAPIV3Schema: + description: Drain is the Schema for the drains API + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + description: Drain allows for the controlled disabling or draining of specific DefaultRouters, either by selecting them through labels or directly referencing them, ensuring traffic is safely rerouted or dropped before the routers are decommissioned. + properties: + defaultRouterSelector: + description: Selector to use when selecting DefaultRouters to drain. + items: + type: string + type: array + defaultRouters: + description: Reference to DefaultRouters to drain. + items: + type: string + type: array + enabled: + default: true + description: Enable this Drain. + type: boolean + type: object + status: + description: DrainStatus defines the observed state of Drain. + properties: + defaultRouters: + description: List of DefaultRouters this Drain has been applied to + items: + type: string + type: array + type: object + type: object +served: true +storage: true +subresources: + status: {} diff --git a/static/resources/25.8.3/drainstates.routing.eda.nokia.com/v1alpha1.yaml b/static/resources/25.8.3/drainstates.routing.eda.nokia.com/v1alpha1.yaml new file mode 100644 index 0000000..d2746fd --- /dev/null +++ b/static/resources/25.8.3/drainstates.routing.eda.nokia.com/v1alpha1.yaml @@ -0,0 +1,39 @@ +name: v1alpha1 +schema: + openAPIV3Schema: + description: DrainState is the Schema for the drainstates API + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + description: DrainStateSpec defines the desired state of DrainState + properties: + defaultRouters: + description: List of DefaultRouters this drain has been applied to + items: + type: string + type: array + type: object + status: + description: DrainStateStatus defines the observed state of DrainState + type: object + type: object +served: true +storage: true +subresources: + status: {} diff --git a/static/resources/25.8.3/edgeinterfaces.core.eda.nokia.com/v1.yaml b/static/resources/25.8.3/edgeinterfaces.core.eda.nokia.com/v1.yaml new file mode 100644 index 0000000..0d467a5 --- /dev/null +++ b/static/resources/25.8.3/edgeinterfaces.core.eda.nokia.com/v1.yaml @@ -0,0 +1,86 @@ +name: v1 +schema: + openAPIV3Schema: + description: EdgeInterface is the Schema for the edgeinterfaces API + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + description: EdgeInterfaceSpec defines the desired state of EdgeInterface + properties: + bridgeDomain: + description: Reference to a Bridge Domain + type: string + encapType: + default: "null" + description: Indicates if the EdgeInterface uses VLAN tagging + enum: + - "null" + - dot1q + type: string + gatewayIPV4Addresses: + description: List of gateway IPv4 addresses in ip/mask form - e.g. 192.168.0.1/24 + items: + properties: + ipPrefix: + description: Address and mask to use + type: string + primary: + description: Indicates which address to use as primary for broadcast + type: boolean + required: + - ipPrefix + type: object + type: array + gatewayIPV6Addresses: + description: List of gateway IPv6 addresses in ip/mask form - e.g. fc00::1/120 + items: + properties: + ipPrefix: + description: Address and mask to use + type: string + primary: + description: Indicates which address to use as primary for broadcast + type: boolean + required: + - ipPrefix + type: object + type: array + interfaceResource: + description: Reference to an interface + type: string + router: + description: Reference to a Router + type: string + vlanID: + description: Single value between 0-4094 supported + maximum: 4094 + minimum: 0 + type: integer + required: + - encapType + - interfaceResource + type: object + status: + description: EdgeInterfaceStatus defines the observed state of EdgeInterface + type: object + type: object +served: true +storage: true +subresources: + status: {} diff --git a/static/resources/25.8.3/edgepings.services.eda.nokia.com/v1.yaml b/static/resources/25.8.3/edgepings.services.eda.nokia.com/v1.yaml new file mode 100644 index 0000000..48693b4 --- /dev/null +++ b/static/resources/25.8.3/edgepings.services.eda.nokia.com/v1.yaml @@ -0,0 +1,61 @@ +additionalPrinterColumns: + - jsonPath: .status.result + name: Result + type: string + - jsonPath: .metadata.creationTimestamp + name: Age + type: date +name: v1 +schema: + openAPIV3Schema: + description: EdgePing is the Schema for the edgepings API + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + description: EdgePingSpec defines the desired state of EdgePing + properties: + destination: + type: string + interfaceResource: + type: string + pingType: + enum: + - gateway + - edgemesh + - edge + type: string + virtualNetwork: + type: string + vlanID: + type: integer + required: + - pingType + type: object + status: + description: EdgePingStatus defines the observed state of EdgePing + properties: + result: + description: Aggregate result of the Flow + type: string + type: object + type: object +served: true +storage: true +subresources: + status: {} diff --git a/static/resources/25.8.3/edgepings.services.eda.nokia.com/v1alpha1.yaml b/static/resources/25.8.3/edgepings.services.eda.nokia.com/v1alpha1.yaml new file mode 100644 index 0000000..d3afcbb --- /dev/null +++ b/static/resources/25.8.3/edgepings.services.eda.nokia.com/v1alpha1.yaml @@ -0,0 +1,69 @@ +additionalPrinterColumns: + - jsonPath: .status.id + name: ID + type: integer + - jsonPath: .status.result + name: Result + type: string + - jsonPath: .metadata.creationTimestamp + name: Age + type: date +deprecated: true +deprecationWarning: This version is deprecated and will no longer be supported in the next version. +name: v1alpha1 +schema: + openAPIV3Schema: + description: EdgePing is the Schema for the edgepings API + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + description: EdgePingSpec defines the desired state of EdgePing + properties: + destination: + type: string + interfaceResource: + type: string + pingType: + enum: + - gateway + - edgemesh + - edge + type: string + virtualNetwork: + type: string + vlanID: + type: integer + required: + - pingType + type: object + status: + description: EdgePingStatus defines the observed state of EdgePing + properties: + id: + description: Id + type: integer + result: + description: Aggregate result of the Flow + type: string + type: object + type: object +served: true +storage: false +subresources: + status: {} diff --git a/static/resources/25.8.3/egresspolicys.qos.eda.nokia.com/v1.yaml b/static/resources/25.8.3/egresspolicys.qos.eda.nokia.com/v1.yaml new file mode 100644 index 0000000..85c610a --- /dev/null +++ b/static/resources/25.8.3/egresspolicys.qos.eda.nokia.com/v1.yaml @@ -0,0 +1,262 @@ +name: v1 +schema: + openAPIV3Schema: + description: EgressPolicy is the Schema for the egresspolicys API + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + description: EgressPolicySpec defines the desired state of EgressPolicy + properties: + dot1pRewritePolicy: + description: Dot1pRewritePolicy enables the configuration of rewrite policies for Dot1p values. It includes mappings of forwarding classes to Dot1p values, with options for drop probability-specific overrides within each forwarding class. + properties: + dot1pMap: + description: Map of forwarding classes to PCP values + items: + properties: + dropProbability: + description: Drop probability specific overrides within the forwarding class + items: + properties: + level: + description: A drop probability level within the forwarding class for which a different remarking is desired + enum: + - High + - Medium + - Low + type: string + pcpValue: + description: The PCP value to be used for packets associated with the forwarding class and the specific drop probability. This overrides the general PCP value. + maximum: 7 + minimum: 0 + type: integer + type: object + type: array + forwardingClasses: + description: The forwarding class matched to apply the rewrite policy + items: + type: string + type: array + pcpValue: + description: The PCP value to be used for all packets associated with the forwarding class, except those with a drop-probability-specific or profile-specific override + maximum: 7 + minimum: 0 + type: integer + required: + - forwardingClasses + type: object + type: array + required: + - dot1pMap + type: object + dscpRewritePolicy: + description: DSCPRewritePolicy enables the configuration of rewrite policies for Differentiated Services Code Point (DSCP) values. It includes mappings of forwarding classes to DSCP values, with options for drop probability-specific overrides within each forwarding class. If a DSCPRewritePolicy is not specified, the DSCP value of the packet is unchanged. If a DSCP policy is specific and ECN is enabled on any of the queues, the DSCP policy will be applied to all ECN capable packets. + properties: + dscpMap: + description: Map of forwarding classes to DSCP values. + items: + properties: + dropProbability: + description: A drop probability within the forwarding class for which a different remarking is desired. + items: + properties: + dscp: + description: The DSCP value to be used for packets associated with the forwarding class and the specific drop probability. This overrides the general DSCP value. + maximum: 63 + minimum: 0 + type: integer + level: + description: A drop probability level within the forwarding class for which a different remarking is desired. + enum: + - High + - Medium + - Low + type: string + type: object + type: array + dscp: + description: The DSCP value to be used for all packets associated with the forwarding class, except those with a drop-probability-specific or profile-specific override. + maximum: 63 + minimum: 0 + type: integer + forwardingClasses: + description: The forwarding class matched to apply the rewrite policy. + items: + type: string + type: array + required: + - forwardingClasses + type: object + type: array + required: + - dscpMap + type: object + forwardingClassToQueueMapping: + description: Forwarding class to queue mapping policy. + items: + properties: + forwardingClasses: + description: The forwarding classes to which the mapping applies, these are references to ForwardingClass resources. + items: + type: string + minItems: 1 + type: array + queue: + description: The queue to which the forwarding classes are mapped, this is a reference to a Queue resource. + type: string + queueGroup: + description: The queue-group name for queue to forwarding class mapping. + type: string + required: + - forwardingClasses + - queue + type: object + type: array + pfcDeadlockAvoidance: + description: Parameters related to avoid a deadlock related to pfc on outgoing interface. + properties: + deadlockAvoidance: + description: Parameters related to avoid a deadlock related to pfc on outgoing interface + type: boolean + deadlockDetectionTimer: + description: Number of milliseconds during which outgoing interface is receiving pfc-pause-frames before triggering recovery-timer. + type: integer + deadlockRecoveryTimer: + description: Number of milliseconds during which the pfc-pause-frames will be ignored. + type: integer + required: + - deadlockAvoidance + - deadlockDetectionTimer + - deadlockRecoveryTimer + type: object + queueManagement: + description: Queue management policy for egress queues. + items: + properties: + queues: + description: List of queues. + items: + properties: + committedBurstSize: + description: Committed Burst Size. + format: int32 + type: integer + maximumBurstSize: + description: Maximum amount of shared buffer memory available to the queue in bytes. + format: int32 + maximum: 4294967295 + minimum: 0 + type: integer + pfcPauseFramePriority: + description: The pfc-priority received in pfc-pause-frame. + type: integer + queue: + description: Reference to a Queue resource. + type: string + schedulerPeakRatePercent: + description: The peak rate percent used by the scheduler for the queue. + maximum: 100 + minimum: 1 + type: integer + schedulerPriorityLevel: + description: The priority level at this Port Scheduler Policy. + maximum: 8 + minimum: 1 + type: integer + schedulerWeight: + description: The weight factor used for the WRR scheduler. If any of the queues have a configured weight the set of queues will use a WRR scheduler and thus all queues must have a weight configured. If no weights are set then the queues are scheduled in strict priority from lowest to higher queue ID. + maximum: 255 + minimum: 0 + type: integer + required: + - maximumBurstSize + - queue + type: object + type: array + slopePolicyWeight: + default: 0 + description: 'The average queue size is calculated using both the previous average and the current queue size: average = (previous average)(1 - 2^(-n)) + (current size)(2^(-n)), where n is a user-configurable weight factor. A higher n gives more importance to the previous average, smoothing peaks and lows in the queue. Lower n makes the average closer to the current queue size. If this leaf is absent, the default value is used.' + maximum: 15 + minimum: 0 + type: integer + wredSlopPolicies: + description: Slope policy to apply to the set of queues. + items: + properties: + drop: + default: false + description: When set to true, and if the ECN field in the packet indicates that the endpoints are not ECN-capable, and the WRED algorithm determines that the packet should be dropped based on the drop probability, the packet will be dropped + type: boolean + dropProbability: + default: All + enum: + - High + - Medium + - Low + - All + type: string + ecn: + default: false + description: When set to true and the queue length is between the thresholds and the ECN field indicates ECN-capable endpoints, the CE bits are set to 1, and the packet is transmitted based on WRED. If false, such packets are discarded. + type: boolean + maxDropProbabilityPercent: + description: If the queue depth is between min and max threshold then this the probability with which packets are dropped or marked. + type: integer + maxThreshold: + description: The maximum threshold parameter for a RED-managed queue in bytes. When the average queue length exceeds the max value, all packets are dropped (or marked if ECN is enabled). Mutually exclusive with min-threshold-percent and max-threshold-percent. + format: int64 + type: integer + maxThresholdPercent: + description: The maximum threshold parameter for a RED-managed queue in percent. When the average queue length exceeds the max value, all packets are dropped (or marked if ECN is enabled). Mutually exclusive with min-threshold and max-threshold. + type: integer + minThreshold: + description: The mininum threshold parameter for a RED-managed queue in bytes. When the average queue length is less than min, all packets are admitted to the queue. Mututally exclusive with min-threshold-percent and max-threshold-percent. + format: int64 + type: integer + minThresholdPercent: + description: The mininum threshold parameter for a RED-managed queue in percent. When the average queue length is less than min, all packets are admitted to the queue. Mutually exclusive with min-threshold and max-threshold. + type: integer + trafficType: + default: All + description: The traffic type to which the WRED slope applies. + enum: + - Tcp + - NonTcp + - All + type: string + required: + - drop + - dropProbability + - ecn + - trafficType + type: object + type: array + required: + - queues + type: object + type: array + type: object + status: + description: EgressPolicyStatus defines the observed state of EgressPolicy + type: object + type: object +served: true +storage: true +subresources: + status: {} diff --git a/static/resources/25.8.3/egresspolicys.qos.eda.nokia.com/v1alpha1.yaml b/static/resources/25.8.3/egresspolicys.qos.eda.nokia.com/v1alpha1.yaml new file mode 100644 index 0000000..b01dfce --- /dev/null +++ b/static/resources/25.8.3/egresspolicys.qos.eda.nokia.com/v1alpha1.yaml @@ -0,0 +1,264 @@ +deprecated: true +deprecationWarning: This version is deprecated and will no longer be supported in the next version. +name: v1alpha1 +schema: + openAPIV3Schema: + description: EgressPolicy is the Schema for the egresspolicys API + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + description: EgressPolicySpec defines the desired state of EgressPolicy + properties: + dot1pRewritePolicy: + description: Dot1pRewritePolicy enables the configuration of rewrite policies for Dot1p values. It includes mappings of forwarding classes to Dot1p values, with options for drop probability-specific overrides within each forwarding class. + properties: + dot1pMap: + description: Map of forwarding classes to PCP values + items: + properties: + dropProbability: + description: Drop probability specific overrides within the forwarding class + items: + properties: + level: + description: A drop probability level within the forwarding class for which a different remarking is desired + enum: + - High + - Medium + - Low + type: string + pcpValue: + description: The PCP value to be used for packets associated with the forwarding class and the specific drop probability. This overrides the general PCP value. + maximum: 7 + minimum: 0 + type: integer + type: object + type: array + forwardingClasses: + description: The forwarding class matched to apply the rewrite policy + items: + type: string + type: array + pcpValue: + description: The PCP value to be used for all packets associated with the forwarding class, except those with a drop-probability-specific or profile-specific override + maximum: 7 + minimum: 0 + type: integer + required: + - forwardingClasses + type: object + type: array + required: + - dot1pMap + type: object + dscpRewritePolicy: + description: DSCPRewritePolicy enables the configuration of rewrite policies for Differentiated Services Code Point (DSCP) values. It includes mappings of forwarding classes to DSCP values, with options for drop probability-specific overrides within each forwarding class. If a DSCPRewritePolicy is not specified, the DSCP value of the packet is unchanged. If a DSCP policy is specific and ECN is enabled on any of the queues, the DSCP policy will be applied to all ECN capable packets. + properties: + dscpMap: + description: Map of forwarding classes to DSCP values. + items: + properties: + dropProbability: + description: A drop probability within the forwarding class for which a different remarking is desired. + items: + properties: + dscp: + description: The DSCP value to be used for packets associated with the forwarding class and the specific drop probability. This overrides the general DSCP value. + maximum: 63 + minimum: 0 + type: integer + level: + description: A drop probability level within the forwarding class for which a different remarking is desired. + enum: + - High + - Medium + - Low + type: string + type: object + type: array + dscp: + description: The DSCP value to be used for all packets associated with the forwarding class, except those with a drop-probability-specific or profile-specific override. + maximum: 63 + minimum: 0 + type: integer + forwardingClasses: + description: The forwarding class matched to apply the rewrite policy. + items: + type: string + type: array + required: + - forwardingClasses + type: object + type: array + required: + - dscpMap + type: object + forwardingClassToQueueMapping: + description: Forwarding class to queue mapping policy. + items: + properties: + forwardingClasses: + description: The forwarding classes to which the mapping applies, these are references to ForwardingClass resources. + items: + type: string + minItems: 1 + type: array + queue: + description: The queue to which the forwarding classes are mapped, this is a reference to a Queue resource. + type: string + queueGroup: + description: The queue-group name for queue to forwarding class mapping. + type: string + required: + - forwardingClasses + - queue + type: object + type: array + pfcDeadlockAvoidance: + description: Parameters related to avoid a deadlock related to pfc on outgoing interface. + properties: + deadlockAvoidance: + description: Parameters related to avoid a deadlock related to pfc on outgoing interface + type: boolean + deadlockDetectionTimer: + description: Number of milliseconds during which outgoing interface is receiving pfc-pause-frames before triggering recovery-timer. + type: integer + deadlockRecoveryTimer: + description: Number of milliseconds during which the pfc-pause-frames will be ignored. + type: integer + required: + - deadlockAvoidance + - deadlockDetectionTimer + - deadlockRecoveryTimer + type: object + queueManagement: + description: Queue management policy for egress queues. + items: + properties: + queues: + description: List of queues. + items: + properties: + committedBurstSize: + description: Committed Burst Size. + format: int32 + type: integer + maximumBurstSize: + description: Maximum amount of shared buffer memory available to the queue in bytes. + format: int32 + maximum: 4294967295 + minimum: 0 + type: integer + pfcPauseFramePriority: + description: The pfc-priority received in pfc-pause-frame. + type: integer + queue: + description: Reference to a Queue resource. + type: string + schedulerPeakRatePercent: + description: The peak rate percent used by the scheduler for the queue. + maximum: 100 + minimum: 1 + type: integer + schedulerPriorityLevel: + description: The priority level at this Port Scheduler Policy. + maximum: 8 + minimum: 1 + type: integer + schedulerWeight: + description: The weight factor used for the WRR scheduler. If any of the queues have a configured weight the set of queues will use a WRR scheduler and thus all queues must have a weight configured. If no weights are set then the queues are scheduled in strict priority from lowest to higher queue ID. + maximum: 255 + minimum: 0 + type: integer + required: + - maximumBurstSize + - queue + type: object + type: array + slopePolicyWeight: + default: 0 + description: 'The average queue size is calculated using both the previous average and the current queue size: average = (previous average)(1 - 2^(-n)) + (current size)(2^(-n)), where n is a user-configurable weight factor. A higher n gives more importance to the previous average, smoothing peaks and lows in the queue. Lower n makes the average closer to the current queue size. If this leaf is absent, the default value is used.' + maximum: 15 + minimum: 0 + type: integer + wredSlopPolicies: + description: Slope policy to apply to the set of queues. + items: + properties: + drop: + default: false + description: When set to true, and if the ECN field in the packet indicates that the endpoints are not ECN-capable, and the WRED algorithm determines that the packet should be dropped based on the drop probability, the packet will be dropped + type: boolean + dropProbability: + default: All + enum: + - High + - Medium + - Low + - All + type: string + ecn: + default: false + description: When set to true and the queue length is between the thresholds and the ECN field indicates ECN-capable endpoints, the CE bits are set to 1, and the packet is transmitted based on WRED. If false, such packets are discarded. + type: boolean + maxDropProbabilityPercent: + description: If the queue depth is between min and max threshold then this the probability with which packets are dropped or marked. + type: integer + maxThreshold: + description: The maximum threshold parameter for a RED-managed queue in bytes. When the average queue length exceeds the max value, all packets are dropped (or marked if ECN is enabled). Mutually exclusive with min-threshold-percent and max-threshold-percent. + format: int64 + type: integer + maxThresholdPercent: + description: The maximum threshold parameter for a RED-managed queue in percent. When the average queue length exceeds the max value, all packets are dropped (or marked if ECN is enabled). Mutually exclusive with min-threshold and max-threshold. + type: integer + minThreshold: + description: The mininum threshold parameter for a RED-managed queue in bytes. When the average queue length is less than min, all packets are admitted to the queue. Mututally exclusive with min-threshold-percent and max-threshold-percent. + format: int64 + type: integer + minThresholdPercent: + description: The mininum threshold parameter for a RED-managed queue in percent. When the average queue length is less than min, all packets are admitted to the queue. Mutually exclusive with min-threshold and max-threshold. + type: integer + trafficType: + default: All + description: The traffic type to which the WRED slope applies. + enum: + - Tcp + - NonTcp + - All + type: string + required: + - drop + - dropProbability + - ecn + - trafficType + type: object + type: array + required: + - queues + type: object + type: array + type: object + status: + description: EgressPolicyStatus defines the observed state of EgressPolicy + type: object + type: object +served: true +storage: false +subresources: + status: {} diff --git a/static/resources/25.8.3/engineconfigs.core.eda.nokia.com/v1.yaml b/static/resources/25.8.3/engineconfigs.core.eda.nokia.com/v1.yaml new file mode 100644 index 0000000..950e239 --- /dev/null +++ b/static/resources/25.8.3/engineconfigs.core.eda.nokia.com/v1.yaml @@ -0,0 +1,917 @@ +name: v1 +schema: + openAPIV3Schema: + description: EngineConfig is the Schema for the engineconfigs API + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + description: EngineConfigSpec defines the desired state of EngineConfig + properties: + allocationPools: + description: Settings related to allocation pools + properties: + alarms: + description: Define alarm thresholds for allocation pool instance utilization + properties: + criticalThreshold: + default: 95 + description: |- + Set the threshold for which a critical alarm will be generated for allocation pool instance utilization, as a percentage. + Using a value of 0 will disable the generation of major threshold alarms. + maximum: 100 + minimum: 0 + type: integer + majorThreshold: + default: 90 + description: |- + Set the threshold for which a major alarm will be generated for allocation pool instance utilization, as a percentage. + Using a value of 0 will disable the generation of major threshold alarms. + maximum: 100 + minimum: 0 + type: integer + minorThreshold: + default: 80 + description: |- + Set the threshold for which a minor alarm will be generated for allocation pool instance utilization, as a percentage. + Using a value of 0 will disable the generation of minor threshold alarms. + maximum: 100 + minimum: 0 + type: integer + type: object + type: object + api: + description: Settings related to APIServer. + properties: + enableLoadBalancerNodePorts: + description: For the service enable the creation of nodePort + type: boolean + image: + description: The full URI to the image + type: string + image-credential: + description: The credential to use when interacting with the image + type: string + replicas: + description: The number of replicas to launch + format: int32 + type: integer + resources: + description: Resource limits and requests for deployments + properties: + limits: + properties: + cpu: + type: string + memory: + type: string + type: object + requests: + properties: + cpu: + type: string + memory: + type: string + type: object + type: object + serviceType: + default: LoadBalancer + description: Describes the type of k8s service + enum: + - ClusterIP + - NodePort + - LoadBalancer + type: string + type: object + appStore: + description: Settings related to AppStore. + properties: + image: + description: The full URI to the image + type: string + image-credential: + description: The credential to use when interacting with the image + type: string + resources: + description: Resource limits and requests for deployments + properties: + limits: + properties: + cpu: + type: string + memory: + type: string + type: object + requests: + properties: + cpu: + type: string + memory: + type: string + type: object + type: object + type: object + appStoreFlow: + description: Settings related to AppStore installer workflow. + properties: + image: + description: The full URI to the image + type: string + image-credential: + description: The credential to use when interacting with the image + type: string + resources: + description: Resource limits and requests for deployments + properties: + limits: + properties: + cpu: + type: string + memory: + type: string + type: object + requests: + properties: + cpu: + type: string + memory: + type: string + type: object + type: object + type: object + artifactServer: + description: Settings related to ArtifactServer. + properties: + image: + description: The full URI to the image + type: string + image-credential: + description: The credential to use when interacting with the image + type: string + resources: + description: Resource limits and requests for deployments + properties: + limits: + properties: + cpu: + type: string + memory: + type: string + type: object + requests: + properties: + cpu: + type: string + memory: + type: string + type: object + type: object + type: object + bootstrapServer: + description: Settings related to BootstrapServer. + properties: + image: + description: The full URI to the image + type: string + image-credential: + description: The credential to use when interacting with the image + type: string + resources: + description: Resource limits and requests for deployments + properties: + limits: + properties: + cpu: + type: string + memory: + type: string + type: object + requests: + properties: + cpu: + type: string + memory: + type: string + type: object + type: object + type: object + certChecker: + description: Settings related to CertChecker. + properties: + image: + description: The full URI to the image + type: string + image-credential: + description: The credential to use when interacting with the image + type: string + resources: + description: Resource limits and requests for deployments + properties: + limits: + properties: + cpu: + type: string + memory: + type: string + type: object + requests: + properties: + cpu: + type: string + memory: + type: string + type: object + type: object + type: object + certificate-git-repo: + description: Settings related to the certificate backup + properties: + remote-path: + description: The full URI to the git repository + type: string + type: object + checkpoint-git-repo: + description: Settings related to the checkpoint or backup git repository. + properties: + remote-path: + description: The full URI to the git repository + type: string + type: object + cluster: + description: Settings related to how the cluster is exposed to external entities, and how the cluster members communicate with each other. + properties: + external: + description: Configure how this cluster is presented to external entities. This is used to configure the external IP address and port that will be used to access the cluster, where values are likely configured on a loadbalancer fronting the cluster. + properties: + domainName: + description: The external domain name of the cluster + type: string + httpPort: + description: HTTP port used to reach this cluster externally + format: int32 + type: integer + httpsPort: + description: HTTPS port used to reach this cluster externally + format: int32 + type: integer + ipv4Address: + description: The external IPv4 address of the cluster + type: string + ipv6Address: + description: The external IPv6 address of the cluster + type: string + relaxDomainNameEnforcement: + default: false + description: Relax enforcement of client origins from configured cluster.external.domainName + type: boolean + type: object + internal: + description: Configure how this cluster is presented at the k8s edge. This is used to configure the eda-api service. + properties: + httpPort: + description: HTTP port used by api service + format: int32 + type: integer + httpsPort: + description: HTTPS port used by api service + format: int32 + type: integer + type: object + redundancy: + description: Configure the redundancy of the cluster. This is used to configure how the cluster members communicate with each other, and how they authenticate each other. + properties: + active: + description: Sets the active cluster from the members list + type: string + credential: + description: The credential used by this cluster to authenticate to each other cluster member. + type: string + members: + description: The list of members in the cluster. + items: + properties: + address: + description: The address of the cluster member, this address is used for synchronization and must be reachable. + type: string + name: + description: The name of the cluster member, this value should match the name of the EngineConfig resource loaded in each member. + type: string + port: + description: The port of the cluster member. + type: integer + required: + - address + - name + type: object + minItems: 1 + type: array + required: + - active + - members + type: object + type: object + customSettings: + description: |- + Directives to override internal application settings + This should be set only at direction of support + items: + properties: + applicationName: + description: Name of application + type: string + settings: + description: List of options to override + items: + properties: + name: + description: Setting Name + type: string + value: + description: Value + type: string + type: object + type: array + type: object + type: array + cx: + description: Settings related to CX. + properties: + image: + description: The full URI to the image + type: string + image-credential: + description: The credential to use when interacting with the image + type: string + resources: + description: Resource limits and requests for deployments + properties: + limits: + properties: + cpu: + type: string + memory: + type: string + type: object + requests: + properties: + cpu: + type: string + memory: + type: string + type: object + type: object + type: object + cxCluster: + description: Settings related to remote CX Cluster. + properties: + address: + description: The address of the remote cx cluster, this address is used to create device sims on remote cluster and must be reachable. + type: string + isCxAgent: + description: Run cx as a agent to reconcile sims on remote cx cluster. + type: boolean + port: + description: The port of the remote cx cluster. + type: integer + required: + - isCxAgent + type: object + flowEngine: + description: Settings related to WorkflowEngine. + properties: + image: + description: The full URI to the image + type: string + image-credential: + description: The credential to use when interacting with the image + type: string + resources: + description: Resource limits and requests for deployments + properties: + limits: + properties: + cpu: + type: string + memory: + type: string + type: object + requests: + properties: + cpu: + type: string + memory: + type: string + type: object + type: object + type: object + git: + description: Settings related to git servers, used for storing and recovering the state of the cluster. + properties: + servers: + description: Define the set of git servers to use when interacting with git repositories. Each server will receive the full set of changes, and any can be used to recover a cluster. + items: + properties: + credential: + description: The credential to use when authenticating with the git server + type: string + name: + description: The name of the git server + type: string + uri: + description: The URI of the git server + type: string + required: + - credential + - uri + type: object + type: array + type: object + identity: + description: Settings related to Identity and Access management server. + properties: + image: + description: The full URI to the image + type: string + image-credential: + description: The credential to use when interacting with the image + type: string + replicas: + description: The number of replicas to launch + format: int32 + type: integer + resources: + description: Resource limits and requests for deployments + properties: + limits: + properties: + cpu: + type: string + memory: + type: string + type: object + requests: + properties: + cpu: + type: string + memory: + type: string + type: object + type: object + type: object + identity-git-repo: + description: Settings related to user identities + properties: + remote-path: + description: The full URI to the git repository + type: string + type: object + identitydb: + description: Settings related to Identity DB server. + properties: + image: + description: The full URI to the image + type: string + image-credential: + description: The credential to use when interacting with the image + type: string + replicas: + description: The number of replicas to launch + format: int32 + type: integer + resources: + description: Resource limits and requests for deployments + properties: + limits: + properties: + cpu: + type: string + memory: + type: string + type: object + requests: + properties: + cpu: + type: string + memory: + type: string + type: object + type: object + type: object + kubernetes: + description: Settings related to interactions with Kubernetes. + properties: + exports: + description: |- + List of GVKs to export to kubernetes. By default, any CR created by a script will not be exported to kubernetes + unless listed in the exports list. + items: + properties: + gvk: + description: The group + version + kind to apply the specified policy to + properties: + group: + description: The group of the resource to import/export + type: string + kind: + description: The kind of the resource to import/export + type: string + version: + description: The version of the resource to import/export + type: string + required: + - kind + - version + type: object + policy: + description: The policy to apply to the GVK + enum: + - all + type: string + required: + - gvk + - policy + type: object + type: array + imports: + description: List of GVKs to import from kubernetes. By default, any CR used by a script will already have its spec imported. + items: + properties: + gvk: + description: The group + version + kind to apply the specified policy to + properties: + group: + description: The group of the resource to import/export + type: string + kind: + description: The kind of the resource to import/export + type: string + version: + description: The version of the resource to import/export + type: string + required: + - kind + - version + type: object + policy: + description: The policy to apply to the GVK + enum: + - all + - spec + type: string + required: + - gvk + - policy + type: object + type: array + mode: + description: |- + Sets the default mode for interacting with resources in Kubernetes. + This controls the set of resources that CE will publish to Kubernetes, and the set of resources that CE will treat as inputs. + This setting can be overridden on a per-resource basis using the imports and exports lists, or by an application within their Manifest. + enum: + - None + type: string + type: object + llm: + description: Settings related to the large language model used for natural language processing. + properties: + apiKey: + description: Set the API key to use when interacting with the LLM API + type: string + model: + default: gpt-4-1106-preview + description: Set the model for natural language processing + type: string + type: object + metricsServer: + description: Settings related to MetricsServer. + properties: + image: + description: The full URI to the image + type: string + image-credential: + description: The credential to use when interacting with the image + type: string + resources: + description: Resource limits and requests for deployments + properties: + limits: + properties: + cpu: + type: string + memory: + type: string + type: object + requests: + properties: + cpu: + type: string + memory: + type: string + type: object + type: object + type: object + npp: + description: Settings related to NPP. + properties: + image: + description: The full URI to the image + type: string + image-credential: + description: The credential to use when interacting with the image + type: string + resources: + description: Resource limits and requests for deployments + properties: + limits: + properties: + cpu: + type: string + memory: + type: string + type: object + requests: + properties: + cpu: + type: string + memory: + type: string + type: object + type: object + type: object + nppNodeLabelSelector: + description: |- + Which nodes to run NPP for - if empty, all nodes are run, e.g. "role in (leaf-group1)" will run NPP only for + toponodes with the label "role=leaf-group1". This also controls which nodes are simulated. + items: + type: string + type: array + playground: + description: |- + Indicates if the current cluster is running in playground mode. If true, TargetNodes are generated by CX. + Additionally a branch is created at startup to support changes in the playground, which can later be merged. + type: string + python: + description: Settings related to Python interpreters. + properties: + heap-size: + description: The maximum heap size for each Python interpreter + type: integer + local-script-dir: + description: |- + Override path to use for the Python interpreter to read scripts from. + LocalScriptDir is deprecated. + type: string + num-interpreters: + description: The number of interpreters to run in parallel + type: integer + script-timeout: + description: How long to allow scripts to run before timing out + type: integer + stdout-capture-limit: + description: The maximum number of lines to capture from STDOUT + type: integer + type: object + scripts-git-repo: + description: Settings related to the apps git repository. + properties: + remote-path: + description: The full URI to the git repository + type: string + type: object + simulate: + default: true + description: |- + Simulate using CX - if true CX is reponsible for generating the TargetNode CRs (this flag is only relevant for + !playground. In the playground case, simulate is always true) + type: boolean + simulateNodeLabelSelector: + description: |- + Which nodes to simulate - if empty, all nodes are simulated, e.g. "role in (leaf-group1)" will simulate only + toponodes with the label "role=leaf-group1" + items: + type: string + type: array + singleStackServices: + description: Run services in single-stack mode instead of PreferredDualStack. + type: boolean + stateAggregator: + description: Settings related to StateAggregator. + properties: + image: + description: The full URI to the image + type: string + image-credential: + description: The credential to use when interacting with the image + type: string + replicas: + description: The number of replicas to launch + format: int32 + type: integer + resources: + description: Resource limits and requests for deployments + properties: + limits: + properties: + cpu: + type: string + memory: + type: string + type: object + requests: + properties: + cpu: + type: string + memory: + type: string + type: object + type: object + type: object + stateController: + description: Settings related to StateController. + properties: + image: + description: The full URI to the image + type: string + image-credential: + description: The credential to use when interacting with the image + type: string + resources: + description: Resource limits and requests for deployments + properties: + limits: + properties: + cpu: + type: string + memory: + type: string + type: object + requests: + properties: + cpu: + type: string + memory: + type: string + type: object + type: object + type: object + stateEngine: + description: Settings related to StateEngine. + properties: + image: + description: The full URI to the image + type: string + image-credential: + description: The credential to use when interacting with the image + type: string + replicas: + description: The number of replicas to launch + format: int32 + type: integer + resources: + description: Resource limits and requests for deployments + properties: + limits: + properties: + cpu: + type: string + memory: + type: string + type: object + requests: + properties: + cpu: + type: string + memory: + type: string + type: object + type: object + type: object + testMan: + description: Settings related to TestMan. + properties: + image: + description: The full URI to the image + type: string + image-credential: + description: The credential to use when interacting with the image + type: string + resources: + description: Resource limits and requests for deployments + properties: + limits: + properties: + cpu: + type: string + memory: + type: string + type: object + requests: + properties: + cpu: + type: string + memory: + type: string + type: object + type: object + type: object + user-settings-git-repo: + description: Settings related to the user settings git repository. + properties: + remote-path: + description: The full URI to the git repository + type: string + type: object + required: + - simulate + type: object + status: + description: EngineConfigStatus defines the observed state of EngineConfig + properties: + activityState: + description: Indicates the activity state of this cluster - either active, standby or unknown. + type: string + cluster: + description: status related to how the cluster is exposed to external entities. + properties: + redundancy: + properties: + members: + description: The list of members in the cluster. + items: + properties: + activityState: + description: The activity state of the cluster member. + type: string + name: + description: The name of the cluster member. + type: string + reachable: + description: Whether this cluster member is reachable. + type: boolean + synchronized: + description: Whether this cluster member is in sync with the active cluster. + type: boolean + required: + - name + - reachable + - synchronized + type: object + type: array + type: object + type: object + git: + description: status related to git servers. + properties: + servers: + description: The status of git servers. + items: + properties: + name: + description: The name of the git server + type: string + status: + description: The status of the git server + type: string + required: + - name + type: object + type: array + type: object + licenses: + description: Status related to licenses. + properties: + activeLicense: + description: Reference to the License currently providing the "base" feature. + type: string + expirationDate: + description: Date and time the currently active license will expire. + type: string + licensedState: + description: Licensed state, indicating the presence of a license providing the "base" feature. + type: string + type: object + run-status: + description: Indicates the current run status of the cluster. + type: string + type: object + type: object +served: true +storage: true +subresources: + status: {} diff --git a/static/resources/25.8.3/fabricmodules.components.eda.nokia.com/v1.yaml b/static/resources/25.8.3/fabricmodules.components.eda.nokia.com/v1.yaml new file mode 100644 index 0000000..0a2460d --- /dev/null +++ b/static/resources/25.8.3/fabricmodules.components.eda.nokia.com/v1.yaml @@ -0,0 +1,116 @@ +name: v1 +schema: + openAPIV3Schema: + description: FabricModule is the Schema for the fabricmodules API + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + description: FabricModuleSpec defines the desired state of FabricModule + type: object + status: + description: FabricModuleStatus defines the observed state of FabricModule + properties: + commonLanguageEquipmentIdentifier: + description: The CLEI code of this component + type: string + lastBooted: + description: The date and time this component last booted + type: string + lastChange: + description: The date and time this component last changed operational state + type: string + locatorEnabled: + description: Indicates if the locator LED for the component is active + type: boolean + manufacturedDate: + description: The date this component was manufactured + type: string + operationalState: + description: Indicates the current operational state of this component. + enum: + - Up + - Down + - Rebooting + - Unknown + - Starting + - Empty + type: string + parent: + description: Reference to a parent component + type: string + parentType: + description: Type of the parent component + enum: + - Fan + - FanTray + - PowerSupply + - PowerModule + - PowerShelf + - InterfaceModule + - ControlModule + - FabricModule + - Chassis + - Transceiver + type: string + partNumber: + description: The discovered part number of this component + type: string + removable: + description: Indicates if this component is removable + type: boolean + serialNumber: + description: The discovered serial number of this component + type: string + slot: + description: Slot this component resides in, unset for components that do not have a slot or ID + type: string + softwareVersion: + description: Version string of the software running on this component + type: string + target: + description: Target this component resides on. + type: string + temperature: + description: Temperature information for this component + properties: + alarmState: + description: The temperature alarm state, as reported by the component + type: boolean + instant: + description: The current temperature of this component + type: integer + margin: + description: The margin temperature of this component + type: integer + maximum: + description: The maximum temperature of this component + type: integer + threshold: + description: The threshold temperature of this component + type: integer + type: object + type: + description: Component type, as provided by the target + type: string + type: object + type: object +served: true +storage: true +subresources: + status: {} diff --git a/static/resources/25.8.3/fabrics.fabrics.eda.nokia.com/v1alpha1.yaml b/static/resources/25.8.3/fabrics.fabrics.eda.nokia.com/v1alpha1.yaml new file mode 100644 index 0000000..c6a220b --- /dev/null +++ b/static/resources/25.8.3/fabrics.fabrics.eda.nokia.com/v1alpha1.yaml @@ -0,0 +1,517 @@ +additionalPrinterColumns: + - jsonPath: .status.lastChange + name: Last Change + type: date + - jsonPath: .status.operationalState + name: Operational State + type: string +name: v1alpha1 +schema: + openAPIV3Schema: + description: Fabric is the Schema for the fabrics API + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + description: The Fabric defines the desired state of a Fabric resource, enabling the automation and management of data center network fabrics. It includes configurations for IP address allocation pools, network topology roles (Leafs, Spines, SuperSpines, BorderLeafs), inter-switch links, and network protocols (underlay and overlay). The specification allows for detailed control over routing strategies, including ASN allocations for BGP-based protocols, and supports advanced features like BFD. + properties: + borderLeafs: + properties: + asnPool: + description: Reference to an IndexAllocationPool pool to use for Autonomous System Number allocations. Used when eBGP is configured as an underlay protocol. This reference will take precedence over the spec.underlayProtocol.asnPool. + type: string + borderLeafNodeSelector: + description: Label selector used to select Toponodes to configure as Borderleaf nodes. + items: + type: string + type: array + routeLeaking: + description: Route leaking controlled by routing policies in and out of the DefaultRouters on each node. If specifided under the Leafs, Spines, SuperSpines, or BorderLeafs those will take precedence. + properties: + exportPolicy: + description: Reference to a Policy resource to use when evaluating route exports from the DefaultRouter. + type: string + importPolicy: + description: Reference to a Policy resource to use when evaluating route imports into the DefaultRouter. + type: string + required: + - exportPolicy + - importPolicy + type: object + systemPoolIPV4: + description: Reference to an IPAllocationPool used to dynamically allocate an IPv4 address to system/lo0 interfaces. This reference will take precedence over the spec.systemPoolIPV4. Both IPv4 and IPv6 pools can be configured simultaneously for dual-stack system/lo0 interfaces. + type: string + systemPoolIPV6: + description: Reference to an IPAllocationPool used to dynamically allocate an IPv6 address to system/lo0 interfaces. This reference will take precedence over the spec.systemPoolIPV6. Both IPv4 and IPv6 pools can be configured simultaneously for dual-stack system/lo0 interfaces. + type: string + type: object + fabricSelector: + description: Selects Fabric resources when connecting multiple Fabrics together. Only one Fabric needs the selector, typically the upper layer (e.g., Superspine) selecting the lower layer (e.g., a pod fabric of leafs and spines). This helps build complete Fabrics in smaller instances of the Fabric resource. This instance selecting other fabrics must also select the InterSwitchLinks connecting itself to the selected Fabrics. + items: + type: string + type: array + interSwitchLinks: + properties: + ipMTU: + description: Sets the IP MTU for the DefaultInterface. + maximum: 9486 + minimum: 1280 + type: integer + linkSelector: + description: Selects TopoLinks to include in this Fabric, creating an ISL resource if both Nodes in the TopoLink are part of this Fabric or a selected Fabric. + items: + type: string + type: array + poolIPV4: + description: Reference to an IPAllocationPool used to dynamically allocate an IPv4 address to DefaultInterfaces which are members of the ISLs. Both IPv4 and IPv6 pools can be configured simultaneously for dual-stack DefaultInterfaces. + type: string + poolIPV6: + description: Reference to an IPAllocationPool used to dynamically allocate an IPv6 address to DefaultInterfaces which are members of the ISLs. Both IPv4 and IPv6 pools can be configured simultaneously for dual-stack DefaultInterfaces. + type: string + qos: + properties: + egressPolicy: + type: string + ingressPolicy: + type: string + type: object + unnumbered: + description: Enables unnumbered interfaces on the ISL; for IPv6, only link-local addresses are used unless a PoolIPV6 is also specified. DefaultInterfaces in the ISL are added to the DefaultBGPPeer dynamic neighbor list when using an eBGP underlay. + enum: + - IPV6 + type: string + vlanID: + description: Configures the provided VLAN on the DefaultInterfaces which are members of the ISLs. + maximum: 4094 + minimum: 1 + type: integer + type: object + leafs: + properties: + asnPool: + description: Reference to an IndexAllocationPool pool to use for Autonomous System Number allocations. Used when eBGP is configured as an underlay protocol. This reference will take precedence over the spec.underlayProtocol.asnPool. + type: string + leafNodeSelector: + description: Label selector used to select Toponodes to configure as Leaf nodes. + items: + type: string + type: array + routeLeaking: + description: Route leaking controlled by routing policies in and out of the DefaultRouters on each node. If specifided under the Leafs, Spines, SuperSpines, or BorderLeafs those will take precedence. + properties: + exportPolicy: + description: Reference to a Policy resource to use when evaluating route exports from the DefaultRouter. + type: string + importPolicy: + description: Reference to a Policy resource to use when evaluating route imports into the DefaultRouter. + type: string + required: + - exportPolicy + - importPolicy + type: object + systemPoolIPV4: + description: Reference to an IPAllocationPool used to dynamically allocate an IPv4 address to system/lo0 interfaces. This reference will take precedence over the spec.systemPoolIPV4. Both IPv4 and IPv6 pools can be configured simultaneously for dual-stack system/lo0 interfaces. + type: string + systemPoolIPV6: + description: Reference to an IPAllocationPool used to dynamically allocate an IPv6 address to system/lo0 interfaces. This reference will take precedence over the spec.systemPoolIPV6. Both IPv4 and IPv6 pools can be configured simultaneously for dual-stack system/lo0 interfaces. + type: string + type: object + overlayProtocol: + description: Set the overlay protocol used + properties: + bfd: + description: Enable BFD on overlay protocol + properties: + desiredMinTransmitInt: + default: 1000000 + description: The minimum interval in microseconds between transmission of BFD control packets. + maximum: 100000000 + minimum: 10000 + type: integer + detectionMultiplier: + default: 3 + description: The number of packets that must be missed to declare this session as down. + maximum: 20 + minimum: 3 + type: integer + enabled: + default: false + description: Enable Biforward Detection. + type: boolean + minEchoReceiveInterval: + default: 1000000 + description: The minimum interval between echo packets the local node can receive in microseconds. + maximum: 100000000 + minimum: 0 + type: integer + requiredMinReceive: + default: 1000000 + description: The minimum interval in microseconds between received BFD control packets that this system should support. + maximum: 100000000 + minimum: 10000 + type: integer + ttl: + description: Sets custom IP TTL or Hop Limit for multi-hop BFD sessions packets. Not appllicable to single-hop BFD sessions. + maximum: 255 + minimum: 2 + type: integer + type: object + bgp: + description: Overlay specific BGP properties. + properties: + autonomousSystem: + description: Autonomous System used for iBGP peering session, when protocol is set to IBGP providing an autonomousSystem is required. + format: int32 + type: integer + clusterID: + description: Sets the cluster ID used by DefaultRouteReflectors, when protocol is set to IBGP providing a clusterID is required. + type: string + exportPolicy: + description: Reference to a Policy, when left empty or not specified the Fabric will automatically generate a policy for the specified protocols. + items: + type: string + type: array + importPolicy: + description: Reference to a Policy, when left empty or not specified the Fabric will automatically generate a policy for the specified protocols. + items: + type: string + type: array + keychain: + description: Keychain to be used for authentication when overlay protocol is IBGP, ignored otherwise + type: string + rrClientNodeSelector: + description: Label selector used to select Toponodes to configure as DefaultRouteReflectorClients, these are typically Leaf or Borderleaf nodes. Used on conjunction with rrNodeSelector in order to configure the DefaultBGPPeers for both the DefaultRouteReflectors and DefaultRouteReflectorClients. + items: + type: string + type: array + rrIPAddresses: + description: List of route reflector IP addresses not provisioned by this instance of a Fabric resource. Used with rrClientNodeSelector to configure the DefaultBGPPeers on the selected nodes to peer the list of external route reflector IPs. + items: + type: string + type: array + rrNodeSelector: + description: Label selector used to select Toponodes to configure as DefaultRouteReflectors, these are typically Spine, Superspine or Borderleaf nodes. Used on conjunction with rrClientNodeSelector in order to configure the DefaultBGPPeers for both the DefaultRouteReflectors and DefaultRouteReflectorClients. + items: + type: string + type: array + timers: + description: Timer configurations + properties: + connectRetry: + description: The time interval in seconds between successive attempts to establish a session with a peer. + maximum: 65535 + minimum: 1 + type: integer + holdTime: + description: The hold-time interval in seconds that the router proposes to the peer in its OPEN message. + maximum: 65535 + minimum: 0 + type: integer + keepAlive: + description: The interval in seconds between successive keepalive messages sent to the peer. + maximum: 21845 + minimum: 0 + type: integer + minimumAdvertisementInterval: + description: The value assigned to the MinRouteAdvertisementIntervalTimer of RFC 4271, for both EBGP and IBGP sessions. + maximum: 255 + minimum: 1 + type: integer + type: object + type: object + protocol: + description: List of routing protocols to used to advertise EVPN routes for overlay services. When EBGP is used, the BGP properties configured under the spec.underlayProtocol will be used. + enum: + - IBGP + - EBGP + type: string + required: + - protocol + type: object + routeLeaking: + description: Route leaking controlled by routing policies in and out of the DefaulRouters on each node. If specifided under the Leafs, Spines, SuperSpines, or BorderLeafs those will take precedence. + properties: + exportPolicy: + description: Reference to a Policy resource to use when evaluating route exports from the DefaultRouter. + type: string + importPolicy: + description: Reference to a Policy resource to use when evaluating route imports into the DefaultRouter. + type: string + required: + - exportPolicy + - importPolicy + type: object + spines: + properties: + asnPool: + description: Reference to an IndexAllocationPool pool to use for Autonomous System Number allocations. Used when eBGP is configured as an underlay protocol. This reference will take precedence over the spec.underlayProtocol.asnPool. + type: string + routeLeaking: + description: Route leaking controlled by routing policies in and out of the DefaultRouters on each node. If specifided under the Leafs, Spines, SuperSpines, or BorderLeafs those will take precedence. + properties: + exportPolicy: + description: Reference to a Policy resource to use when evaluating route exports from the DefaultRouter. + type: string + importPolicy: + description: Reference to a Policy resource to use when evaluating route imports into the DefaultRouter. + type: string + required: + - exportPolicy + - importPolicy + type: object + spineNodeSelector: + description: Label selector used to select Toponodes to configure as Spine nodes. + items: + type: string + type: array + systemPoolIPV4: + description: Reference to an IPAllocationPool used to dynamically allocate an IPv4 address to system/lo0 interfaces. This reference will take precedence over the spec.systemPoolIPV4. Both IPv4 and IPv6 pools can be configured simultaneously for dual-stack system/lo0 interfaces. + type: string + systemPoolIPV6: + description: Reference to an IPAllocationPool used to dynamically allocate an IPv6 address to system/lo0 interfaces. This reference will take precedence over the spec.systemPoolIPV6. Both IPv4 and IPv6 pools can be configured simultaneously for dual-stack system/lo0 interfaces. + type: string + type: object + superSpines: + properties: + asnPool: + description: Reference to an IndexAllocationPool pool to use for Autonomous System Number allocations. Used when eBGP is configured as an underlay protocol. This reference will take precedence over the spec.underlayProtocol.asnPool. + type: string + routeLeaking: + description: Route leaking controlled by routing policies in and out of the DefaultRouters on each node. If specifided under the Leafs, Spines, SuperSpines, or BorderLeafs those will take precedence. + properties: + exportPolicy: + description: Reference to a Policy resource to use when evaluating route exports from the DefaultRouter. + type: string + importPolicy: + description: Reference to a Policy resource to use when evaluating route imports into the DefaultRouter. + type: string + required: + - exportPolicy + - importPolicy + type: object + superSpineNodeSelector: + description: Label selector used to select Toponodes to configure as Superspine nodes. + items: + type: string + type: array + systemPoolIPV4: + description: Reference to an IPAllocationPool used to dynamically allocate an IPv4 address to system/lo0 interfaces. This reference will take precedence over the spec.systemPoolIPV4. Both IPv4 and IPv6 pools can be configured simultaneously for dual-stack system/lo0 interfaces. + type: string + systemPoolIPV6: + description: Reference to an IPAllocationPool used to dynamically allocate an IPv6 address to system/lo0 interfaces. This reference will take precedence over the spec.systemPoolIPV6. Both IPv4 and IPv6 pools can be configured simultaneously for dual-stack system/lo0 interfaces. + type: string + type: object + systemPoolIPV4: + description: Reference to an IPAllocationPool used to dynamically allocate an IPv4 address to system/lo0 interfaces. If specified under the Leaf/Spine/Superspine/Borderleaf those will take precedence. Both IPv4 and IPv6 pools can be configured simultaneously for dual-stack system/lo0 interfaces. + type: string + systemPoolIPV6: + description: Reference to an IPAllocationPool used to dynamically allocate an IPv6 address to system/lo0 interfaces. If specified under the Leaf/Spine/Superspine/Borderleaf those will take precedence. Both IPv4 and IPv6 pools can be configured simultaneously for dual-stack system/lo0 interfaces. + type: string + underlayProtocol: + description: Set the underlay protocol used + properties: + bfd: + description: Enable BFD on underlay protocol + properties: + desiredMinTransmitInt: + default: 1000000 + description: The minimum interval in microseconds between transmission of BFD control packets. + maximum: 100000000 + minimum: 10000 + type: integer + detectionMultiplier: + default: 3 + description: The number of packets that must be missed to declare this session as down. + maximum: 20 + minimum: 3 + type: integer + enabled: + default: false + description: Enable Biforward Detection. + type: boolean + minEchoReceiveInterval: + default: 1000000 + description: The minimum interval between echo packets the local node can receive in microseconds. + maximum: 100000000 + minimum: 0 + type: integer + requiredMinReceive: + default: 1000000 + description: The minimum interval in microseconds between received BFD control packets that this system should support. + maximum: 100000000 + minimum: 10000 + type: integer + ttl: + description: Sets custom IP TTL or Hop Limit for multi-hop BFD sessions packets. Not appllicable to single-hop BFD sessions. + maximum: 255 + minimum: 2 + type: integer + type: object + bgp: + description: Underlay specific BGP properties. + properties: + asnPool: + description: Reference to an IndexAllocationPool pool to use for Autonomous System Number allocations. Used when eBGP is configured as an underlay protocol. If specified under the Leaf/Spine/Superspine/Borderleaf those will take precedence. + type: string + exportPolicy: + description: Reference to a Policy, when left empty or not specified the Fabric will automatically generate a policy for the specified protocols. + items: + type: string + type: array + importPolicy: + description: Reference to a Policy, when left empty or not specified the Fabric will automatically generate a policy for the specified protocols. + items: + type: string + type: array + keychain: + description: Keychain to be used for authentication + type: string + timers: + description: Timer configurations + properties: + connectRetry: + description: The time interval in seconds between successive attempts to establish a session with a peer. + maximum: 65535 + minimum: 1 + type: integer + holdTime: + description: The hold-time interval in seconds that the router proposes to the peer in its OPEN message. + maximum: 65535 + minimum: 0 + type: integer + keepAlive: + description: The interval in seconds between successive keepalive messages sent to the peer. + maximum: 21845 + minimum: 0 + type: integer + minimumAdvertisementInterval: + description: The value assigned to the MinRouteAdvertisementIntervalTimer of RFC 4271, for both EBGP and IBGP sessions. + maximum: 255 + minimum: 1 + type: integer + type: object + type: object + protocol: + description: List of routing protocols to used between peers of an ISL. Multiple protocols may be listed, if so multiple protocols will be used. + items: + enum: + - EBGP + type: string + type: array + required: + - bgp + - protocol + type: object + type: object + status: + description: FabricStatus defines the observed state of Fabric + properties: + borderLeafNodes: + description: List of border leaf nodes in the Fabric. + items: + properties: + node: + description: Name of the TopoNode. + type: string + operatingSystem: + description: Operating system running on the node. + type: string + operatingSystemVersion: + description: Operating system version running on the node. + type: string + underlayAutonomousSystem: + description: Underlay Autonomous System used for eBGP peering session, when protocol is set to eBGP this is required. + format: int32 + type: integer + type: object + type: array + health: + description: Indicates the health score of the Fabric. The health score of the Fabric is determined by the aggregate health score of the resources emited by the Fabric such as ISL, DefaultRouteReflectors etc. + type: integer + healthScoreReason: + description: Indicates the reason for the health score. + type: string + lastChange: + description: The time when the state of the resource last changed. + type: string + leafNodes: + description: List of leaf nodes in the Fabric. + items: + properties: + node: + description: Name of the TopoNode. + type: string + operatingSystem: + description: Operating system running on the node. + type: string + operatingSystemVersion: + description: Operating system version running on the node. + type: string + underlayAutonomousSystem: + description: Underlay Autonomous System used for eBGP peering session, when protocol is set to eBGP this is required. + format: int32 + type: integer + type: object + type: array + operationalState: + description: 'Operational state of the Fabric. The operational state of the fabric is determined by monitoring the operational state of the following resources (if applicable): DefaultRouters, ISLs.' + type: string + spineNodes: + description: List of spine nodes in the Fabric. + items: + properties: + node: + description: Name of the TopoNode. + type: string + operatingSystem: + description: Operating system running on the node. + type: string + operatingSystemVersion: + description: Operating system version running on the node. + type: string + underlayAutonomousSystem: + description: Underlay Autonomous System used for eBGP peering session, when protocol is set to eBGP this is required. + format: int32 + type: integer + type: object + type: array + superSpineNodes: + description: List of super spine nodes in the Fabric. + items: + properties: + node: + description: Name of the TopoNode. + type: string + operatingSystem: + description: Operating system running on the node. + type: string + operatingSystemVersion: + description: Operating system version running on the node. + type: string + underlayAutonomousSystem: + description: Underlay Autonomous System used for eBGP peering session, when protocol is set to eBGP this is required. + format: int32 + type: integer + type: object + type: array + type: object + type: object +served: true +storage: true +subresources: + status: {} diff --git a/static/resources/25.8.3/fabricstates.fabrics.eda.nokia.com/v1alpha1.yaml b/static/resources/25.8.3/fabricstates.fabrics.eda.nokia.com/v1alpha1.yaml new file mode 100644 index 0000000..18933d6 --- /dev/null +++ b/static/resources/25.8.3/fabricstates.fabrics.eda.nokia.com/v1alpha1.yaml @@ -0,0 +1,120 @@ +name: v1alpha1 +schema: + openAPIV3Schema: + description: FabricState is the Schema for the fabricstates API + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + description: FabricStateSpec defines the desired state of FabricState + properties: + borderLeafNodes: + description: List of borderleaf nodes in the fabric + items: + properties: + node: + description: Name of the TopoNode. + type: string + operatingSystem: + description: Operating system running on the node. + type: string + operatingSystemVersion: + description: Operating system version running on the node. + type: string + underlayAutonomousSystem: + description: Underlay Autonomous System used for eBGP peering session, when protocol is set to eBGP this is required. + format: int32 + type: integer + type: object + type: array + defaultRouters: + description: List of DefaultRouters used within the fabric + items: + type: string + type: array + isls: + description: List of ISL used in the Fabric + items: + type: string + type: array + leafNodes: + description: List of leaf nodes in the fabric + items: + properties: + node: + description: Name of the TopoNode. + type: string + operatingSystem: + description: Operating system running on the node. + type: string + operatingSystemVersion: + description: Operating system version running on the node. + type: string + underlayAutonomousSystem: + description: Underlay Autonomous System used for eBGP peering session, when protocol is set to eBGP this is required. + format: int32 + type: integer + type: object + type: array + spineNodes: + description: List of spine nodes in the fabric + items: + properties: + node: + description: Name of the TopoNode. + type: string + operatingSystem: + description: Operating system running on the node. + type: string + operatingSystemVersion: + description: Operating system version running on the node. + type: string + underlayAutonomousSystem: + description: Underlay Autonomous System used for eBGP peering session, when protocol is set to eBGP this is required. + format: int32 + type: integer + type: object + type: array + superSpineNodes: + description: List of super spine nodes in the fabric + items: + properties: + node: + description: Name of the TopoNode. + type: string + operatingSystem: + description: Operating system running on the node. + type: string + operatingSystemVersion: + description: Operating system version running on the node. + type: string + underlayAutonomousSystem: + description: Underlay Autonomous System used for eBGP peering session, when protocol is set to eBGP this is required. + format: int32 + type: integer + type: object + type: array + type: object + status: + description: FabricStateStatus defines the observed state of FabricState + type: object + type: object +served: true +storage: true +subresources: + status: {} diff --git a/static/resources/25.8.3/fans.components.eda.nokia.com/v1.yaml b/static/resources/25.8.3/fans.components.eda.nokia.com/v1.yaml new file mode 100644 index 0000000..e925057 --- /dev/null +++ b/static/resources/25.8.3/fans.components.eda.nokia.com/v1.yaml @@ -0,0 +1,94 @@ +name: v1 +schema: + openAPIV3Schema: + description: Fan is the Schema for the fans API + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + description: FanSpec defines the desired state of Fan + type: object + status: + description: FanStatus defines the observed state of Fan + properties: + commonLanguageEquipmentIdentifier: + description: The CLEI code of this component + type: string + lastBooted: + description: The date and time this component last booted + type: string + lastChange: + description: The date and time this component last changed operational state + type: string + locatorEnabled: + description: Indicates if the locator LED for the component is active + type: boolean + manufacturedDate: + description: The date this component was manufactured + type: string + operationalState: + description: Indicates the current operational state of this component. + enum: + - Up + - Down + - Rebooting + - Unknown + - Starting + - Empty + type: string + parent: + description: Reference to a parent component + type: string + parentType: + description: Type of the parent component + enum: + - Fan + - FanTray + - PowerSupply + - PowerModule + - PowerShelf + - InterfaceModule + - ControlModule + - FabricModule + - Chassis + - Transceiver + type: string + partNumber: + description: The discovered part number of this component + type: string + removable: + description: Indicates if this component is removable + type: boolean + serialNumber: + description: The discovered serial number of this component + type: string + slot: + description: Slot this component resides in, unset for components that do not have a slot or ID + type: string + target: + description: Target this component resides on. + type: string + type: + description: Component type, as provided by the target + type: string + type: object + type: object +served: true +storage: true +subresources: + status: {} diff --git a/static/resources/25.8.3/filterdeployments.filters.eda.nokia.com/v1alpha1.yaml b/static/resources/25.8.3/filterdeployments.filters.eda.nokia.com/v1alpha1.yaml new file mode 100644 index 0000000..9931ed9 --- /dev/null +++ b/static/resources/25.8.3/filterdeployments.filters.eda.nokia.com/v1alpha1.yaml @@ -0,0 +1,50 @@ +name: v1alpha1 +schema: + openAPIV3Schema: + description: FilterDeployment is the Schema for the filterdeployments API + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + description: FilterDeploymentSpec defines the desired state of FilterDeployment + properties: + filter: + description: Specifies a filter to deploy on the specified Node + type: string + node: + description: Specifies a Node to deploy this filter on + type: string + type: + description: Specifies a filter type of the filter + enum: + - CPMFilter + - Filter + type: string + required: + - filter + - node + - type + type: object + status: + description: FilterDeploymentStatus defines the observed state of a FilterDeployment + type: object + type: object +served: true +storage: true +subresources: + status: {} diff --git a/static/resources/25.8.3/filters.filters.eda.nokia.com/v1alpha1.yaml b/static/resources/25.8.3/filters.filters.eda.nokia.com/v1alpha1.yaml new file mode 100644 index 0000000..9ca4ce4 --- /dev/null +++ b/static/resources/25.8.3/filters.filters.eda.nokia.com/v1alpha1.yaml @@ -0,0 +1,642 @@ +name: v1alpha1 +schema: + openAPIV3Schema: + description: Filter is the Schema for the filters API + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + description: Filter allows for the creation and management of ordered filtering rules based on IP or MAC criteria. The resource supports various conditions and actions, enabling fine-grained control over network traffic by specifying rules for source and destination addresses, ports, and protocols. + properties: + entries: + description: Specifies the list of filter entries, in order. + items: + properties: + description: + description: Description of the FilterEntry. + type: string + ipEntry: + properties: + action: + description: An action to take, either 'Accept','Drop', or 'RateLimit'. + enum: + - Drop + - Accept + - RateLimit + type: string + destinationPortName: + description: Destination port to match by name. + enum: + - ACAP + - AFP-TCP + - ARNS + - ASF-RMCP + - ASHARE + - ATALK-RM + - AURP + - AUTH + - BFD + - BFD-ECHO + - BFTP + - BGMP + - BGP + - BOOTPC + - BOOTPS + - CCSO-NS + - CHARGEN + - CISCO-TDP + - CITADEL + - CLEARCASE + - COMMERCE + - COURIER + - DAYTIME + - DHCP-FAILOVER + - DHCPV6-CLIENT + - DHCPV6-SERVER + - DICOM + - DISCARD + - DNSIX + - DOMAIN + - DSP + - ECHO + - EPP + - ESRO + - EXEC + - FINGER + - FTP + - FTP-DATA + - FTPS + - FTPS-DATA + - GODI + - GOPHER + - GTP-C + - GTP-PRIME + - GTP-U + - HA-CLUSTER + - HOSTNAME + - HP-ALARM-MGR + - HTTP + - HTTP-ALT + - HTTP-MGMT + - HTTP-RPC + - HTTPS + - IEEE-MMS-SSL + - IMAP + - IMAP3 + - IMAPS + - IPP + - IPSEC + - IPX + - IRC + - IRIS-BEEP + - ISAKMP + - ISAKMP-NAT + - ISCSI + - ISO-TSAP + - KERBEROS + - KERBEROS-ADM + - KLOGIN + - KPASSWD + - KSHELL + - L2TP + - LDAP + - LDAPS + - LDP + - LMP + - LOGIN + - LPD + - LSP-PING + - MAC-SERVER-ADM + - MATIP-A + - MATIP-B + - MICRO-BFD + - MICROSOFT-DS + - MOBILE-IP + - MONITOR + - MPP + - MS-EXCHANGE + - MSDP + - MSP + - MSSQL-M + - MSSQL-S + - MULTIHOP-BFD + - NAS + - NCP + - NETBIOS-DATA + - NETBIOS-NS + - NETBIOS-SS + - NETNEWS + - NETRJS-1 + - NETRJS-2 + - NETRJS-3 + - NETRJS-4 + - NETWALL + - NEW-RWHO + - NFS + - NNTP + - NNTPS + - NTP + - ODMR + - OLSR + - OPENVPN + - PIM-AUTO-RP + - PKIX-TIMESTAMP + - POP2 + - POP3 + - POP3S + - PPTP + - PRINT-SRV + - PTP-EVENT + - PTP-GENERAL + - QMTP + - QOTD + - RADIUS + - RADIUS-ACCT + - REMOTE-MAIL + - REMOTEFS + - REMOTECMD + - RIP + - RJE + - RLP + - RLZDB + - RMC + - RMONITOR + - RPC2PORTMAP + - RSYNC + - RTELNET + - RTSP + - SGMP + - SILC + - SMUX + - SNA-GW + - SNMP + - SNMP-TRAP + - SNPP + - SMTP + - SQL-SVCS + - SQL + - SSH + - SUBMISSION + - SUNRPC + - SVCLOC + - SYSLOG + - SYSTAT + - TACACS + - TALK + - TCPMUX + - TCPNETHASPSRV + - TFTP + - TIME + - TIMED + - UPS + - XDMCP + - XNS-CH + - XNS-MAIL + - XNS-TIME + - Z3950 + type: string + destinationPortNumber: + description: Destination port to match by numerical value. + maximum: 65535 + minimum: 0 + type: integer + destinationPortOperator: + description: Operator to use when matching destinationPort, either Equals, GreaterOrEquals, or LessOrEquals. + enum: + - Equals + - GreaterOrEquals + - LessOrEquals + type: string + destinationPortRange: + description: Range of destination ports to match, in the format n-m, e.g. 100-200, The start and end of the range must be port numbers. + type: string + destinationPrefix: + description: Destination prefix to match. + type: string + firstFragment: + description: Match the first fragment only. + type: boolean + fragment: + description: Match any fragment. + type: boolean + icmpCode: + description: Match a specific ICMP code, as a number between 0-255, e.g. 0. + items: + type: integer + maxItems: 255 + minItems: 0 + type: array + icmpTypeName: + description: Match a specific ICMP type by name, e.g. dest-unreachable. + enum: + - DestUnreachable + - Echo + - EchoReply + - EchoRequest + - McastRtrAdv + - McastRtrSolicit + - McastRtrTerm + - MldDone + - MldQuery + - MldReport + - MldV2 + - NeighborAdvertise + - NeighborSolicit + - NodeInfoQuery + - NodeInfoResponse + - PacketTooBig + - ParamProblem + - Redirect + - RouterAdvertise + - RouterRenumber + - RouterSolicit + - SourceQuench + - TimeExceeded + - Timestamp + - TimestampReply + type: string + icmpTypeNumber: + description: Match a specific ICMP type by number. + maximum: 255 + minimum: 0 + type: integer + log: + description: Log the matches for this entry. + type: boolean + protocolName: + description: Match a specific IP protocol name (specified in the type field of the IP header). + enum: + - AH + - EGP + - EIGRP + - ESP + - GGP + - GRE + - ICMP + - ICMP6 + - IDRP + - IGMP + - IGP + - IPV4 + - IPV6 + - IPV6-DEST-OPTS + - IPV6-HOP + - L2TP + - MPLS-IN-IP + - NO-NEXT-HDR + - OSPF + - PIM + - ROHC + - RSVP + - SCTP + - ST + - TCP + - UDP + - VRRP + type: string + protocolNumber: + description: Match a specific IP protocol number (specified in the type field of the IP header). + maximum: 255 + minimum: 0 + type: integer + rateLimit: + description: Rate limit to apply when the action is 'RateLimit'. + properties: + burstSize: + description: The maximum burst size in bytes. + format: int32 + type: integer + entrySpecificPolicer: + default: false + description: 'Controls policer instantiation: false for shared instance, true for per-entry instances' + type: boolean + peakRate: + description: The peak rate in kilobytes per second. + format: int32 + type: integer + scope: + default: Global + description: Determines how the policer is applied across subinterfaces. Global applies the policer across all subinterfaces, while Subinterface applies it individually to each subinterface. + enum: + - Global + - Subinterface + type: string + type: object + sourcePortName: + description: Source port to match by name. + enum: + - ACAP + - AFP-TCP + - ARNS + - ASF-RMCP + - ASHARE + - ATALK-RM + - AURP + - AUTH + - BFD + - BFD-ECHO + - BFTP + - BGMP + - BGP + - BOOTPC + - BOOTPS + - CCSO-NS + - CHARGEN + - CISCO-TDP + - CITADEL + - CLEARCASE + - COMMERCE + - COURIER + - DAYTIME + - DHCP-FAILOVER + - DHCPV6-CLIENT + - DHCPV6-SERVER + - DICOM + - DISCARD + - DNSIX + - DOMAIN + - DSP + - ECHO + - EPP + - ESRO + - EXEC + - FINGER + - FTP + - FTP-DATA + - FTPS + - FTPS-DATA + - GODI + - GOPHER + - GTP-C + - GTP-PRIME + - GTP-U + - HA-CLUSTER + - HOSTNAME + - HP-ALARM-MGR + - HTTP + - HTTP-ALT + - HTTP-MGMT + - HTTP-RPC + - HTTPS + - IEEE-MMS-SSL + - IMAP + - IMAP3 + - IMAPS + - IPP + - IPSEC + - IPX + - IRC + - IRIS-BEEP + - ISAKMP + - ISAKMP-NAT + - ISCSI + - ISO-TSAP + - KERBEROS + - KERBEROS-ADM + - KLOGIN + - KPASSWD + - KSHELL + - L2TP + - LDAP + - LDAPS + - LDP + - LMP + - LOGIN + - LPD + - LSP-PING + - MAC-SERVER-ADM + - MATIP-A + - MATIP-B + - MICRO-BFD + - MICROSOFT-DS + - MOBILE-IP + - MONITOR + - MPP + - MS-EXCHANGE + - MSDP + - MSP + - MSSQL-M + - MSSQL-S + - MULTIHOP-BFD + - NAS + - NCP + - NETBIOS-DATA + - NETBIOS-NS + - NETBIOS-SS + - NETNEWS + - NETRJS-1 + - NETRJS-2 + - NETRJS-3 + - NETRJS-4 + - NETWALL + - NEW-RWHO + - NFS + - NNTP + - NNTPS + - NTP + - ODMR + - OLSR + - OPENVPN + - PIM-AUTO-RP + - PKIX-TIMESTAMP + - POP2 + - POP3 + - POP3S + - PPTP + - PRINT-SRV + - PTP-EVENT + - PTP-GENERAL + - QMTP + - QOTD + - RADIUS + - RADIUS-ACCT + - REMOTE-MAIL + - REMOTEFS + - REMOTECMD + - RIP + - RJE + - RLP + - RLZDB + - RMC + - RMONITOR + - RPC2PORTMAP + - RSYNC + - RTELNET + - RTSP + - SGMP + - SILC + - SMUX + - SNA-GW + - SNMP + - SNMP-TRAP + - SNPP + - SMTP + - SQL-SVCS + - SQL + - SSH + - SUBMISSION + - SUNRPC + - SVCLOC + - SYSLOG + - SYSTAT + - TACACS + - TALK + - TCPMUX + - TCPNETHASPSRV + - TFTP + - TIME + - TIMED + - UPS + - XDMCP + - XNS-CH + - XNS-MAIL + - XNS-TIME + - Z3950 + type: string + sourcePortNumber: + description: Source port to match by numerical value. + maximum: 65535 + minimum: 0 + type: integer + sourcePortOperator: + description: Operator to use when matching sourcePort, either Equals, GreaterOrEquals, or LessOrEquals. + enum: + - Equals + - GreaterOrEquals + - LessOrEquals + type: string + sourcePortRange: + description: Range of source ports to match, in the format n-m, e.g. 100-200. The start and end of the range must be port numbers. + type: string + sourcePrefix: + description: Source prefix to match. + type: string + tcpFlags: + description: Match TCP flags, usable with !, &, | and the flags RST, SYN, and ACK. + type: string + type: object + macEntry: + properties: + action: + description: An action to take, either 'Accept','Drop', or 'RateLimit'. + enum: + - Drop + - Accept + - RateLimit + type: string + destinationMAC: + description: Match an Ethernet frame if its destination MAC address logically anded with the mask equals this MAC address. + type: string + destinationMACMask: + description: Match an Ethernet frame if its destination MAC address logically anded with the mask equals the configured MAC address. + type: string + ethertype: + description: An Ethernet frame matches this condition if its ethertype value (after 802.1Q VLAN tags) matches the specified value. + enum: + - ARP + - AUTHENTICATION8021X + - ETHOAM + - FCOE + - FCOEINITIALIZATION + - FLOWCONTROL + - IPV4 + - IPV6 + - LACP + - LLDP + - MACSEC + - MPLSMULTICAST + - MPLSUNICAST + - PBB + - PPPOEDISCOVERY + - PPPOESESSION + - PTP + - ROCE + type: string + log: + description: Log the matches for this entry. + type: boolean + outerVLANIDOperator: + description: Operator to use when matching OuterVlanIdValue, either Equals, GreaterOrEquals, or LessOrEquals. + enum: + - Equals + - GreaterOrEquals + - LessOrEquals + type: string + outerVLANIDRange: + description: Range of Outer vlan IDs to match, in the format n-m, e.g. 100-200 + type: string + outerVLANIDValue: + description: Ethernet frame matching criteria based on the outermost VLAN ID found before the subinterface-defining VLAN tag (if any) is removed. A value of 'none' will match only untagged frames. + type: string + rateLimit: + description: Rate limit to apply when the action is 'RateLimit'. + properties: + burstSize: + description: The maximum burst size in bytes. + format: int32 + type: integer + entrySpecificPolicer: + default: false + description: 'Controls policer instantiation: false for shared instance, true for per-entry instances' + type: boolean + peakRate: + description: The peak rate in kilobytes per second. + format: int32 + type: integer + scope: + default: Global + description: Determines how the policer is applied across subinterfaces. Global applies the policer across all subinterfaces, while Subinterface applies it individually to each subinterface. + enum: + - Global + - Subinterface + type: string + type: object + sourceMAC: + description: Match an Ethernet frame if its source MAC address logically anded with the mask equals this MAC address. + type: string + sourceMACMask: + description: Match an Ethernet frame if its source MAC address logically anded with the mask equals the configured MAC address. + type: string + type: object + type: + default: Auto + description: Type of the entry which can be IPV4, IPV6, MAC or Auto. + enum: + - IPV4 + - IPV6 + - MAC + - Auto + type: string + required: + - type + type: object + type: array + statisticsPerEntry: + description: Enable or disable per-entry counters. + type: boolean + required: + - entries + type: object + status: + description: FilterStatus defines the observed state of Filter + type: object + type: object +served: true +storage: true +subresources: + status: {} diff --git a/static/resources/25.8.3/forwardingclasss.qos.eda.nokia.com/v1.yaml b/static/resources/25.8.3/forwardingclasss.qos.eda.nokia.com/v1.yaml new file mode 100644 index 0000000..98fc481 --- /dev/null +++ b/static/resources/25.8.3/forwardingclasss.qos.eda.nokia.com/v1.yaml @@ -0,0 +1,33 @@ +name: v1 +schema: + openAPIV3Schema: + description: ForwardingClass is the Schema for the forwardingclasss API + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + description: The ForwaringClass is used as a placeholder for to allow multiple other resources to reference the same forwarding class. + type: object + status: + description: ForwardingClassStatus defines the observed state of ForwardingClass + type: object + type: object +served: true +storage: true +subresources: + status: {} diff --git a/static/resources/25.8.3/forwardingclasss.qos.eda.nokia.com/v1alpha1.yaml b/static/resources/25.8.3/forwardingclasss.qos.eda.nokia.com/v1alpha1.yaml new file mode 100644 index 0000000..6a94bfe --- /dev/null +++ b/static/resources/25.8.3/forwardingclasss.qos.eda.nokia.com/v1alpha1.yaml @@ -0,0 +1,35 @@ +deprecated: true +deprecationWarning: This version is deprecated and will no longer be supported in the next version. +name: v1alpha1 +schema: + openAPIV3Schema: + description: ForwardingClass is the Schema for the forwardingclasss API + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + description: The ForwaringClass is used as a placeholder for to allow multiple other resources to reference the same forwarding class. + type: object + status: + description: ForwardingClassStatus defines the observed state of ForwardingClass + type: object + type: object +served: true +storage: false +subresources: + status: {} diff --git a/static/resources/25.8.3/globalconfigs.core.eda.nokia.com/v1.yaml b/static/resources/25.8.3/globalconfigs.core.eda.nokia.com/v1.yaml new file mode 100644 index 0000000..d2aa468 --- /dev/null +++ b/static/resources/25.8.3/globalconfigs.core.eda.nokia.com/v1.yaml @@ -0,0 +1,59 @@ +name: v1 +schema: + openAPIV3Schema: + description: GlobalConfig is the Schema for the GlobalConfigs API + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + properties: + dhcp: + description: External reachability configuration for this cluster + properties: + domainName: + description: The external domain name of the cluster + type: string + httpPort: + description: HTTP port used to reach this cluster externally + format: int32 + type: integer + httpsPort: + description: HTTPS port used to reach this cluster externally + format: int32 + type: integer + ipv4Address: + description: The external IPv4 address of the cluster + type: string + ipv6Address: + description: The external IPv6 address of the cluster + type: string + relaxDomainNameEnforcement: + default: false + description: Relax enforcement of client origins from configured cluster.external.domainName + type: boolean + type: object + required: + - dhcp + type: object + required: + - spec + type: object +served: true +storage: true +subresources: + status: {} diff --git a/static/resources/25.8.3/httpproxies.core.eda.nokia.com/v1.yaml b/static/resources/25.8.3/httpproxies.core.eda.nokia.com/v1.yaml new file mode 100644 index 0000000..117df24 --- /dev/null +++ b/static/resources/25.8.3/httpproxies.core.eda.nokia.com/v1.yaml @@ -0,0 +1,53 @@ +additionalPrinterColumns: + - jsonPath: .spec.rootUrl + name: Root URL + type: string +name: v1 +schema: + openAPIV3Schema: + description: HttpProxy is the Schema for the proxy API + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + description: HttpProxySpec defines the desired state of HttpProxy + properties: + authType: + description: |- + Determines where authentication happens. + If "atDestination", then no authentication happens in API server and any auth tokens are forwarded as is. + If "inApiServer", then authentication happens within the API server and auth tokens are stripped prior to forwarding. + enum: + - atDestination + - inApiServer + type: string + rootUrl: + description: The proxy destination, including the protocol. + type: string + required: + - authType + - rootUrl + type: object + status: + description: HttpProxyStatus defines the observed state of HttpProxy + type: object + type: object +served: true +storage: true +subresources: + status: {} diff --git a/static/resources/25.8.3/indexallocationpools.core.eda.nokia.com/v1.yaml b/static/resources/25.8.3/indexallocationpools.core.eda.nokia.com/v1.yaml new file mode 100644 index 0000000..bc17995 --- /dev/null +++ b/static/resources/25.8.3/indexallocationpools.core.eda.nokia.com/v1.yaml @@ -0,0 +1,92 @@ +name: v1 +schema: + openAPIV3Schema: + description: IndexAllocationPool is the Schema for the indexallocationpools API + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + description: |- + IndexAllocationPool is a generic allocation pool supporting allocation of indexes from a set of segments. + It supports allocating things like VLANs, subinterface indexes, autonomous system numbers, or any other integer-based index. + properties: + publishAllocations: + description: If true, allocations in segments will be published to EDB, available to query via EQL and trigger state applications off of. + type: boolean + segments: + description: List of segments containing indexes to allocate. + items: + properties: + allocations: + description: List of reservations to exclude from allocations from this segment. + items: + properties: + name: + description: Name of this allocation. + type: string + value: + description: Index to reserve. + format: int32 + type: integer + required: + - name + - value + type: object + type: array + reservations: + description: Range of reservations to exclude from allocations from this segment. + items: + properties: + end: + description: Value to reserve to. + format: int32 + type: integer + start: + description: Value to start reserving. + format: int32 + type: integer + required: + - end + - start + type: object + type: array + size: + description: Number of elements in the segment. + format: int32 + type: integer + start: + description: Starting value of the segment. + format: int32 + type: integer + required: + - size + - start + type: object + minItems: 1 + type: array + required: + - segments + type: object + status: + description: IndexAllocationPoolStatus defines the observed state of IndexAllocationPool + type: object + type: object +served: true +storage: true +subresources: + status: {} diff --git a/static/resources/25.8.3/ingresspolicys.qos.eda.nokia.com/v1.yaml b/static/resources/25.8.3/ingresspolicys.qos.eda.nokia.com/v1.yaml new file mode 100644 index 0000000..e090cf3 --- /dev/null +++ b/static/resources/25.8.3/ingresspolicys.qos.eda.nokia.com/v1.yaml @@ -0,0 +1,785 @@ +name: v1 +schema: + openAPIV3Schema: + description: IngressPolicy is the Schema for the ingresspolicys API + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + description: IngressPolicySpec defines the desired state of IngressPolicy + properties: + classifier: + description: Classifier manages the configuration of traffic classification policies in a network. It includes various entry types like IPv4, IPv6, Dot1p, and DSCP policies. Each entry specifies how traffic should be classified and what actions should be taken on the matched packets. + properties: + entries: + description: |- + Specifies the list of filter entries, in order. + A classifier containing multiple entry types may result in multiple classifiers being created on the target node. + IPV4 and IPV6 entries will create multifield classifier policies. + items: + properties: + dot1pPolicyEntry: + description: A Dot1p policy entry - only a single Dot1p entry is allowed per classifier resource. + properties: + directToPFCQueue: + description: In addition to creating a Dot1p PCP value to Forwarding Class mapping, this will map the PCP values directly to the PFC queue specified in the Forwarding Class to Queue mapping. + type: boolean + dropProbabilityLevel: + default: Low + description: Assign matching packets to the specified drop probability level. + enum: + - High + - Medium + - Low + type: string + forwardingClass: + description: Reference to a ForwardingClass resource to which the value is mapped. + type: string + pcpValues: + description: List of PCP values or ranges used to match packets to classify into Forwarding Classes. + items: + properties: + rangeEnd: + description: Optional end of PCP range (inclusive) which would start from the Value to the RangeEnd. + maximum: 7 + minimum: 0 + type: integer + value: + description: Single PCP value or start of range. + maximum: 7 + minimum: 0 + type: integer + required: + - value + type: object + minItems: 1 + type: array + required: + - pcpValues + type: object + dscpPolicyEntry: + description: A DSCP policy entry - only a single DSCP entry is allowed per classifier resource. + properties: + dropProbabilityLevel: + default: Low + description: Assign matching packets to the specified drop probability level. + enum: + - High + - Medium + - Low + type: string + dscpValues: + description: List of DSCP values or ranges used to match packets to classify into Forwarding Classes. + items: + properties: + rangeEnd: + description: Optional end of DSCP range (inclusive) which would start from the Value to the RangeEnd. + maximum: 63 + minimum: 0 + type: integer + value: + description: Single DSCP value or start of range. + maximum: 63 + minimum: 0 + type: integer + required: + - value + type: object + minItems: 1 + type: array + forwardingClass: + description: Reference to a ForwardingClass resource to which the value is mapped. + type: string + required: + - dscpValues + type: object + ipEntry: + description: An IPv4 or IPv6 multifield classifier entry. + properties: + action: + description: An action to take on the matched packets. + properties: + dropProbabilityLevel: + default: Low + description: Assign matching packets to the specified drop probability level. + enum: + - High + - Medium + - Low + type: string + dscpRewriteValue: + description: Rewrite actions associated with packets that match the classifier entry. + maximum: 63 + minimum: 0 + type: integer + forwardingClass: + description: Reference to a ForwardingClass resource to which the value is mapped. + type: string + type: object + destinationPortName: + description: Destination port to match by name. + enum: + - ACAP + - AFP-TCP + - ARNS + - ASF-RMCP + - ASHARE + - ATALK-RM + - AURP + - AUTH + - BFD + - BFD-ECHO + - BFTP + - BGMP + - BGP + - BOOTPC + - BOOTPS + - CCSO-NS + - CHARGEN + - CISCO-TDP + - CITADEL + - CLEARCASE + - COMMERCE + - COURIER + - DAYTIME + - DHCP-FAILOVER + - DHCPV6-CLIENT + - DHCPV6-SERVER + - DICOM + - DISCARD + - DNSIX + - DOMAIN + - DSP + - ECHO + - EPP + - ESRO + - EXEC + - FINGER + - FTP + - FTP-DATA + - FTPS + - FTPS-DATA + - GODI + - GOPHER + - GTP-C + - GTP-PRIME + - GTP-U + - HA-CLUSTER + - HOSTNAME + - HP-ALARM-MGR + - HTTP + - HTTP-ALT + - HTTP-MGMT + - HTTP-RPC + - HTTPS + - IEEE-MMS-SSL + - IMAP + - IMAP3 + - IMAPS + - IPP + - IPSEC + - IPX + - IRC + - IRIS-BEEP + - ISAKMP + - ISAKMP-NAT + - ISCSI + - ISO-TSAP + - KERBEROS + - KERBEROS-ADM + - KLOGIN + - KPASSWD + - KSHELL + - L2TP + - LDAP + - LDAPS + - LDP + - LMP + - LOGIN + - LPD + - LSP-PING + - MAC-SERVER-ADM + - MATIP-A + - MATIP-B + - MICRO-BFD + - MICROSOFT-DS + - MOBILE-IP + - MONITOR + - MPP + - MS-EXCHANGE + - MSDP + - MSP + - MSSQL-M + - MSSQL-S + - MULTIHOP-BFD + - NAS + - NCP + - NETBIOS-DATA + - NETBIOS-NS + - NETBIOS-SS + - NETNEWS + - NETRJS-1 + - NETRJS-2 + - NETRJS-3 + - NETRJS-4 + - NETWALL + - NEW-RWHO + - NFS + - NNTP + - NNTPS + - NTP + - ODMR + - OLSR + - OPENVPN + - PIM-AUTO-RP + - PKIX-TIMESTAMP + - POP2 + - POP3 + - POP3S + - PPTP + - PRINT-SRV + - PTP-EVENT + - PTP-GENERAL + - QMTP + - QOTD + - RADIUS + - RADIUS-ACCT + - REMOTE-MAIL + - REMOTEFS + - REMOTECMD + - RIP + - RJE + - RLP + - RLZDB + - RMC + - RMONITOR + - RPC2PORTMAP + - RSYNC + - RTELNET + - RTSP + - SGMP + - SILC + - SMUX + - SNA-GW + - SNMP + - SNMP-TRAP + - SNPP + - SMTP + - SQL-SVCS + - SQL + - SSH + - SUBMISSION + - SUNRPC + - SVCLOC + - SYSLOG + - SYSTAT + - TACACS + - TALK + - TCPMUX + - TCPNETHASPSRV + - TFTP + - TIME + - TIMED + - UPS + - XDMCP + - XNS-CH + - XNS-MAIL + - XNS-TIME + - Z3950 + type: string + destinationPortNumber: + description: Destination port to match by numerical value. + maximum: 65535 + minimum: 0 + type: integer + destinationPortOperator: + description: Operator to use when matching destinationPort, either Equals, GreaterOrEquals, or LessOrEquals. + enum: + - Equals + - GreaterOrEquals + - LessOrEquals + type: string + destinationPortRange: + description: Range of destination ports to match, in the format n-m, e.g. 100-200, The start and end of the range must be port numbers. + type: string + destinationPrefix: + description: Destination prefix to match. + type: string + firstFragment: + description: Match the first fragment only. + type: boolean + fragment: + description: Match any fragment. + type: boolean + icmpCode: + description: Match a specific ICMP code, as a number between 0-255, e.g. 0. + items: + type: integer + maxItems: 255 + minItems: 0 + type: array + icmpTypeName: + description: Match a specific ICMP type by name, e.g. dest-unreachable. + enum: + - DestUnreachable + - Echo + - EchoReply + - EchoRequest + - McastRtrAdv + - McastRtrSolicit + - McastRtrTerm + - MldDone + - MldQuery + - MldReport + - MldV2 + - NeighborAdvertise + - NeighborSolicit + - NodeInfoQuery + - NodeInfoResponse + - PacketTooBig + - ParamProblem + - Redirect + - RouterAdvertise + - RouterRenumber + - RouterSolicit + - SourceQuench + - TimeExceeded + - Timestamp + - TimestampReply + type: string + icmpTypeNumber: + description: Match a specific ICMP type by number. + maximum: 255 + minimum: 0 + type: integer + protocolName: + description: Match a specific IP protocol name (specified in the type field of the IP header). + enum: + - AH + - EGP + - EIGRP + - ESP + - GGP + - GRE + - ICMP + - ICMP6 + - IDRP + - IGMP + - IGP + - IPV4 + - IPV6 + - IPV6-DEST-OPTS + - IPV6-HOP + - L2TP + - MPLS-IN-IP + - NO-NEXT-HDR + - OSPF + - PIM + - ROHC + - RSVP + - SCTP + - ST + - TCP + - UDP + - VRRP + type: string + protocolNumber: + description: Match a specific IP protocol number (specified in the type field of the IP header). + maximum: 255 + minimum: 0 + type: integer + sourcePortName: + description: Source port to match by name. + enum: + - ACAP + - AFP-TCP + - ARNS + - ASF-RMCP + - ASHARE + - ATALK-RM + - AURP + - AUTH + - BFD + - BFD-ECHO + - BFTP + - BGMP + - BGP + - BOOTPC + - BOOTPS + - CCSO-NS + - CHARGEN + - CISCO-TDP + - CITADEL + - CLEARCASE + - COMMERCE + - COURIER + - DAYTIME + - DHCP-FAILOVER + - DHCPV6-CLIENT + - DHCPV6-SERVER + - DICOM + - DISCARD + - DNSIX + - DOMAIN + - DSP + - ECHO + - EPP + - ESRO + - EXEC + - FINGER + - FTP + - FTP-DATA + - FTPS + - FTPS-DATA + - GODI + - GOPHER + - GTP-C + - GTP-PRIME + - GTP-U + - HA-CLUSTER + - HOSTNAME + - HP-ALARM-MGR + - HTTP + - HTTP-ALT + - HTTP-MGMT + - HTTP-RPC + - HTTPS + - IEEE-MMS-SSL + - IMAP + - IMAP3 + - IMAPS + - IPP + - IPSEC + - IPX + - IRC + - IRIS-BEEP + - ISAKMP + - ISAKMP-NAT + - ISCSI + - ISO-TSAP + - KERBEROS + - KERBEROS-ADM + - KLOGIN + - KPASSWD + - KSHELL + - L2TP + - LDAP + - LDAPS + - LDP + - LMP + - LOGIN + - LPD + - LSP-PING + - MAC-SERVER-ADM + - MATIP-A + - MATIP-B + - MICRO-BFD + - MICROSOFT-DS + - MOBILE-IP + - MONITOR + - MPP + - MS-EXCHANGE + - MSDP + - MSP + - MSSQL-M + - MSSQL-S + - MULTIHOP-BFD + - NAS + - NCP + - NETBIOS-DATA + - NETBIOS-NS + - NETBIOS-SS + - NETNEWS + - NETRJS-1 + - NETRJS-2 + - NETRJS-3 + - NETRJS-4 + - NETWALL + - NEW-RWHO + - NFS + - NNTP + - NNTPS + - NTP + - ODMR + - OLSR + - OPENVPN + - PIM-AUTO-RP + - PKIX-TIMESTAMP + - POP2 + - POP3 + - POP3S + - PPTP + - PRINT-SRV + - PTP-EVENT + - PTP-GENERAL + - QMTP + - QOTD + - RADIUS + - RADIUS-ACCT + - REMOTE-MAIL + - REMOTEFS + - REMOTECMD + - RIP + - RJE + - RLP + - RLZDB + - RMC + - RMONITOR + - RPC2PORTMAP + - RSYNC + - RTELNET + - RTSP + - SGMP + - SILC + - SMUX + - SNA-GW + - SNMP + - SNMP-TRAP + - SNPP + - SMTP + - SQL-SVCS + - SQL + - SSH + - SUBMISSION + - SUNRPC + - SVCLOC + - SYSLOG + - SYSTAT + - TACACS + - TALK + - TCPMUX + - TCPNETHASPSRV + - TFTP + - TIME + - TIMED + - UPS + - XDMCP + - XNS-CH + - XNS-MAIL + - XNS-TIME + - Z3950 + type: string + sourcePortNumber: + description: Source port to match by numerical value. + maximum: 65535 + minimum: 0 + type: integer + sourcePortOperator: + description: Operator to use when matching sourcePort, either Equals, GreaterOrEquals, or LessOrEquals. + enum: + - Equals + - GreaterOrEquals + - LessOrEquals + type: string + sourcePortRange: + description: Range of source ports to match, in the format n-m, e.g. 100-200. The start and end of the range must be port numbers. + type: string + sourcePrefix: + description: Source prefix to match. + type: string + tcpFlags: + description: Match TCP flags, usable with !, &, | and the flags RST, SYN, and ACK. + type: string + required: + - action + type: object + type: + default: AUTO + description: Type of the entry which can be IPV4, IPV6, Dot1pPolicy, DSCPPolicy, or Auto. + enum: + - IPV4 + - IPV6 + - DOT1P + - DSCP + - AUTO + type: string + required: + - type + type: object + type: array + required: + - entries + type: object + forwardingClassToQueueMapping: + description: Forwarding class to queue mapping policy. + items: + properties: + forwardingClasses: + description: The forwarding classes to which the mapping applies, these are references to ForwardingClass resources. + items: + type: string + minItems: 1 + type: array + queue: + description: The queue to which the forwarding classes are mapped, this is a reference to a Queue resource. + type: string + required: + - forwardingClasses + - queue + type: object + type: array + policers: + description: Ordered list of policers where the first policer is evaluated first before proceeding to the next. + items: + properties: + committedBurstSize: + description: Maximum CIR bucket depth in bytes. + format: int32 + maximum: 4294967295 + minimum: 0 + type: integer + committedRate: + description: The committed information rate (CIR) of the policer, defined in kilobits (1024 bits) per second. + format: int32 + type: integer + committedRatePercent: + description: The committed information rate (CIR) of the policer, defined as a percentage of the Interface speed on which it is applied. + maximum: 100 + minimum: 0 + type: integer + exceedAction: + description: Applies a drop-probability to packets that the policer has determined are exceeding (yellow). + properties: + dropProbabilityLevel: + default: Medium + enum: + - High + - Medium + - Low + type: string + type: object + forwardingClasses: + description: The list of forwarding classes with traffic to be sent to the policer. Unless specified all traffic is matched for this policer. + items: + properties: + forwardingClasses: + description: The forwarding class of the packets on which to apply the Policer. To match all traffic set this to 'ALL'. + items: + type: string + type: array + forwardingTypes: + default: + - All + items: + enum: + - Broadcast + - Unicast + - Multicast + - UnknownMulticast + - UnknownUnicast + - All + type: string + type: array + required: + - forwardingTypes + type: object + type: array + maximumBurstSize: + description: Maximum PIR bucket depth in bytes. + format: int32 + maximum: 4294967295 + minimum: 0 + type: integer + minInterfaceSpeed: + description: Minimum interface speed (kbps) to calculate PeakRate and CommittedRate for devices where configuration is not supported in percentage. + format: int32 + type: integer + peakRate: + description: The peak information rate (PIR) of the policer, defined in kilobits (1024 bits) per second. + format: int32 + type: integer + peakRatePercent: + description: The peak information rate (PIR) of the policer, defined as a percentage of the Interface speed on which it is applied. + maximum: 100 + minimum: 0 + type: integer + violateAction: + description: Applies a drop-probability to packets that the policer has determined are exceeding (red). + properties: + dropProbabilityLevel: + default: High + enum: + - High + - Medium + - Low + - All + type: string + type: object + type: object + type: array + queueManagement: + description: Queue management policy for egress queues. + items: + properties: + pfcReservedBufferPercent: + description: 'Percentage of the linecard buffer reserved for accomodating incoming traffic while upstream node reacts to generated PFC-pause frames. Note: this percentage must be common across all EgressPolicies and QueuesSets used on the same linecard.' + maximum: 100 + minimum: 0 + type: integer + queues: + description: List of queues. + items: + properties: + committedBurstSize: + description: Committed Burst Size. + format: int32 + type: integer + maximumBurstSize: + description: Maximum amount of shared buffer memory available to the queue in bytes. + format: int32 + maximum: 4294967295 + minimum: 0 + type: integer + pfcOffThreshold: + description: PFC off threshold. + maximum: 100 + minimum: 0 + type: integer + pfcOnThreshold: + description: PFC on threshold. + maximum: 100 + minimum: 0 + type: integer + pfcPauseFramePriority: + description: PFC priorities indicated in generated pfc-pause-frame if congestion occurs in a given pfc-queue. + type: integer + pfcReservedShareBufferPercent: + description: Maximum level the pfc-queue can take from pfc-reserved buffer configured per given forwarding-complex. + maximum: 100 + minimum: 0 + type: integer + queue: + description: Reference to a Queue resource. + type: string + required: + - queue + type: object + type: array + required: + - queues + type: object + type: array + type: object + status: + description: IngressPolicyStatus defines the observed state of IngressPolicy + type: object + type: object +served: true +storage: true +subresources: + status: {} diff --git a/static/resources/25.8.3/ingresspolicys.qos.eda.nokia.com/v1alpha1.yaml b/static/resources/25.8.3/ingresspolicys.qos.eda.nokia.com/v1alpha1.yaml new file mode 100644 index 0000000..a95159c --- /dev/null +++ b/static/resources/25.8.3/ingresspolicys.qos.eda.nokia.com/v1alpha1.yaml @@ -0,0 +1,787 @@ +deprecated: true +deprecationWarning: This version is deprecated and will no longer be supported in the next version. +name: v1alpha1 +schema: + openAPIV3Schema: + description: IngressPolicy is the Schema for the ingresspolicys API + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + description: IngressPolicySpec defines the desired state of IngressPolicy + properties: + classifier: + description: Classifier manages the configuration of traffic classification policies in a network. It includes various entry types like IPv4, IPv6, Dot1p, and DSCP policies. Each entry specifies how traffic should be classified and what actions should be taken on the matched packets. + properties: + entries: + description: |- + Specifies the list of filter entries, in order. + A classifier containing multiple entry types may result in multiple classifiers being created on the target node. + IPV4 and IPV6 entries will create multifield classifier policies. + items: + properties: + dot1pPolicyEntry: + description: A Dot1p policy entry - only a single Dot1p entry is allowed per classifier resource. + properties: + directToPFCQueue: + description: In addition to creating a Dot1p PCP value to Forwarding Class mapping, this will map the PCP values directly to the PFC queue specified in the Forwarding Class to Queue mapping. + type: boolean + dropProbabilityLevel: + default: Low + description: Assign matching packets to the specified drop probability level. + enum: + - High + - Medium + - Low + type: string + forwardingClass: + description: Reference to a ForwardingClass resource to which the value is mapped. + type: string + pcpValues: + description: List of PCP values or ranges used to match packets to classify into Forwarding Classes. + items: + properties: + rangeEnd: + description: Optional end of PCP range (inclusive) which would start from the Value to the RangeEnd. + maximum: 7 + minimum: 0 + type: integer + value: + description: Single PCP value or start of range. + maximum: 7 + minimum: 0 + type: integer + required: + - value + type: object + minItems: 1 + type: array + required: + - pcpValues + type: object + dscpPolicyEntry: + description: A DSCP policy entry - only a single DSCP entry is allowed per classifier resource. + properties: + dropProbabilityLevel: + default: Low + description: Assign matching packets to the specified drop probability level. + enum: + - High + - Medium + - Low + type: string + dscpValues: + description: List of DSCP values or ranges used to match packets to classify into Forwarding Classes. + items: + properties: + rangeEnd: + description: Optional end of DSCP range (inclusive) which would start from the Value to the RangeEnd. + maximum: 63 + minimum: 0 + type: integer + value: + description: Single DSCP value or start of range. + maximum: 63 + minimum: 0 + type: integer + required: + - value + type: object + minItems: 1 + type: array + forwardingClass: + description: Reference to a ForwardingClass resource to which the value is mapped. + type: string + required: + - dscpValues + type: object + ipEntry: + description: An IPv4 or IPv6 multifield classifier entry. + properties: + action: + description: An action to take on the matched packets. + properties: + dropProbabilityLevel: + default: Low + description: Assign matching packets to the specified drop probability level. + enum: + - High + - Medium + - Low + type: string + dscpRewriteValue: + description: Rewrite actions associated with packets that match the classifier entry. + maximum: 63 + minimum: 0 + type: integer + forwardingClass: + description: Reference to a ForwardingClass resource to which the value is mapped. + type: string + type: object + destinationPortName: + description: Destination port to match by name. + enum: + - ACAP + - AFP-TCP + - ARNS + - ASF-RMCP + - ASHARE + - ATALK-RM + - AURP + - AUTH + - BFD + - BFD-ECHO + - BFTP + - BGMP + - BGP + - BOOTPC + - BOOTPS + - CCSO-NS + - CHARGEN + - CISCO-TDP + - CITADEL + - CLEARCASE + - COMMERCE + - COURIER + - DAYTIME + - DHCP-FAILOVER + - DHCPV6-CLIENT + - DHCPV6-SERVER + - DICOM + - DISCARD + - DNSIX + - DOMAIN + - DSP + - ECHO + - EPP + - ESRO + - EXEC + - FINGER + - FTP + - FTP-DATA + - FTPS + - FTPS-DATA + - GODI + - GOPHER + - GTP-C + - GTP-PRIME + - GTP-U + - HA-CLUSTER + - HOSTNAME + - HP-ALARM-MGR + - HTTP + - HTTP-ALT + - HTTP-MGMT + - HTTP-RPC + - HTTPS + - IEEE-MMS-SSL + - IMAP + - IMAP3 + - IMAPS + - IPP + - IPSEC + - IPX + - IRC + - IRIS-BEEP + - ISAKMP + - ISAKMP-NAT + - ISCSI + - ISO-TSAP + - KERBEROS + - KERBEROS-ADM + - KLOGIN + - KPASSWD + - KSHELL + - L2TP + - LDAP + - LDAPS + - LDP + - LMP + - LOGIN + - LPD + - LSP-PING + - MAC-SERVER-ADM + - MATIP-A + - MATIP-B + - MICRO-BFD + - MICROSOFT-DS + - MOBILE-IP + - MONITOR + - MPP + - MS-EXCHANGE + - MSDP + - MSP + - MSSQL-M + - MSSQL-S + - MULTIHOP-BFD + - NAS + - NCP + - NETBIOS-DATA + - NETBIOS-NS + - NETBIOS-SS + - NETNEWS + - NETRJS-1 + - NETRJS-2 + - NETRJS-3 + - NETRJS-4 + - NETWALL + - NEW-RWHO + - NFS + - NNTP + - NNTPS + - NTP + - ODMR + - OLSR + - OPENVPN + - PIM-AUTO-RP + - PKIX-TIMESTAMP + - POP2 + - POP3 + - POP3S + - PPTP + - PRINT-SRV + - PTP-EVENT + - PTP-GENERAL + - QMTP + - QOTD + - RADIUS + - RADIUS-ACCT + - REMOTE-MAIL + - REMOTEFS + - REMOTECMD + - RIP + - RJE + - RLP + - RLZDB + - RMC + - RMONITOR + - RPC2PORTMAP + - RSYNC + - RTELNET + - RTSP + - SGMP + - SILC + - SMUX + - SNA-GW + - SNMP + - SNMP-TRAP + - SNPP + - SMTP + - SQL-SVCS + - SQL + - SSH + - SUBMISSION + - SUNRPC + - SVCLOC + - SYSLOG + - SYSTAT + - TACACS + - TALK + - TCPMUX + - TCPNETHASPSRV + - TFTP + - TIME + - TIMED + - UPS + - XDMCP + - XNS-CH + - XNS-MAIL + - XNS-TIME + - Z3950 + type: string + destinationPortNumber: + description: Destination port to match by numerical value. + maximum: 65535 + minimum: 0 + type: integer + destinationPortOperator: + description: Operator to use when matching destinationPort, either Equals, GreaterOrEquals, or LessOrEquals. + enum: + - Equals + - GreaterOrEquals + - LessOrEquals + type: string + destinationPortRange: + description: Range of destination ports to match, in the format n-m, e.g. 100-200, The start and end of the range must be port numbers. + type: string + destinationPrefix: + description: Destination prefix to match. + type: string + firstFragment: + description: Match the first fragment only. + type: boolean + fragment: + description: Match any fragment. + type: boolean + icmpCode: + description: Match a specific ICMP code, as a number between 0-255, e.g. 0. + items: + type: integer + maxItems: 255 + minItems: 0 + type: array + icmpTypeName: + description: Match a specific ICMP type by name, e.g. dest-unreachable. + enum: + - DestUnreachable + - Echo + - EchoReply + - EchoRequest + - McastRtrAdv + - McastRtrSolicit + - McastRtrTerm + - MldDone + - MldQuery + - MldReport + - MldV2 + - NeighborAdvertise + - NeighborSolicit + - NodeInfoQuery + - NodeInfoResponse + - PacketTooBig + - ParamProblem + - Redirect + - RouterAdvertise + - RouterRenumber + - RouterSolicit + - SourceQuench + - TimeExceeded + - Timestamp + - TimestampReply + type: string + icmpTypeNumber: + description: Match a specific ICMP type by number. + maximum: 255 + minimum: 0 + type: integer + protocolName: + description: Match a specific IP protocol name (specified in the type field of the IP header). + enum: + - AH + - EGP + - EIGRP + - ESP + - GGP + - GRE + - ICMP + - ICMP6 + - IDRP + - IGMP + - IGP + - IPV4 + - IPV6 + - IPV6-DEST-OPTS + - IPV6-HOP + - L2TP + - MPLS-IN-IP + - NO-NEXT-HDR + - OSPF + - PIM + - ROHC + - RSVP + - SCTP + - ST + - TCP + - UDP + - VRRP + type: string + protocolNumber: + description: Match a specific IP protocol number (specified in the type field of the IP header). + maximum: 255 + minimum: 0 + type: integer + sourcePortName: + description: Source port to match by name. + enum: + - ACAP + - AFP-TCP + - ARNS + - ASF-RMCP + - ASHARE + - ATALK-RM + - AURP + - AUTH + - BFD + - BFD-ECHO + - BFTP + - BGMP + - BGP + - BOOTPC + - BOOTPS + - CCSO-NS + - CHARGEN + - CISCO-TDP + - CITADEL + - CLEARCASE + - COMMERCE + - COURIER + - DAYTIME + - DHCP-FAILOVER + - DHCPV6-CLIENT + - DHCPV6-SERVER + - DICOM + - DISCARD + - DNSIX + - DOMAIN + - DSP + - ECHO + - EPP + - ESRO + - EXEC + - FINGER + - FTP + - FTP-DATA + - FTPS + - FTPS-DATA + - GODI + - GOPHER + - GTP-C + - GTP-PRIME + - GTP-U + - HA-CLUSTER + - HOSTNAME + - HP-ALARM-MGR + - HTTP + - HTTP-ALT + - HTTP-MGMT + - HTTP-RPC + - HTTPS + - IEEE-MMS-SSL + - IMAP + - IMAP3 + - IMAPS + - IPP + - IPSEC + - IPX + - IRC + - IRIS-BEEP + - ISAKMP + - ISAKMP-NAT + - ISCSI + - ISO-TSAP + - KERBEROS + - KERBEROS-ADM + - KLOGIN + - KPASSWD + - KSHELL + - L2TP + - LDAP + - LDAPS + - LDP + - LMP + - LOGIN + - LPD + - LSP-PING + - MAC-SERVER-ADM + - MATIP-A + - MATIP-B + - MICRO-BFD + - MICROSOFT-DS + - MOBILE-IP + - MONITOR + - MPP + - MS-EXCHANGE + - MSDP + - MSP + - MSSQL-M + - MSSQL-S + - MULTIHOP-BFD + - NAS + - NCP + - NETBIOS-DATA + - NETBIOS-NS + - NETBIOS-SS + - NETNEWS + - NETRJS-1 + - NETRJS-2 + - NETRJS-3 + - NETRJS-4 + - NETWALL + - NEW-RWHO + - NFS + - NNTP + - NNTPS + - NTP + - ODMR + - OLSR + - OPENVPN + - PIM-AUTO-RP + - PKIX-TIMESTAMP + - POP2 + - POP3 + - POP3S + - PPTP + - PRINT-SRV + - PTP-EVENT + - PTP-GENERAL + - QMTP + - QOTD + - RADIUS + - RADIUS-ACCT + - REMOTE-MAIL + - REMOTEFS + - REMOTECMD + - RIP + - RJE + - RLP + - RLZDB + - RMC + - RMONITOR + - RPC2PORTMAP + - RSYNC + - RTELNET + - RTSP + - SGMP + - SILC + - SMUX + - SNA-GW + - SNMP + - SNMP-TRAP + - SNPP + - SMTP + - SQL-SVCS + - SQL + - SSH + - SUBMISSION + - SUNRPC + - SVCLOC + - SYSLOG + - SYSTAT + - TACACS + - TALK + - TCPMUX + - TCPNETHASPSRV + - TFTP + - TIME + - TIMED + - UPS + - XDMCP + - XNS-CH + - XNS-MAIL + - XNS-TIME + - Z3950 + type: string + sourcePortNumber: + description: Source port to match by numerical value. + maximum: 65535 + minimum: 0 + type: integer + sourcePortOperator: + description: Operator to use when matching sourcePort, either Equals, GreaterOrEquals, or LessOrEquals. + enum: + - Equals + - GreaterOrEquals + - LessOrEquals + type: string + sourcePortRange: + description: Range of source ports to match, in the format n-m, e.g. 100-200. The start and end of the range must be port numbers. + type: string + sourcePrefix: + description: Source prefix to match. + type: string + tcpFlags: + description: Match TCP flags, usable with !, &, | and the flags RST, SYN, and ACK. + type: string + required: + - action + type: object + type: + default: AUTO + description: Type of the entry which can be IPV4, IPV6, Dot1pPolicy, DSCPPolicy, or Auto. + enum: + - IPV4 + - IPV6 + - DOT1P + - DSCP + - AUTO + type: string + required: + - type + type: object + type: array + required: + - entries + type: object + forwardingClassToQueueMapping: + description: Forwarding class to queue mapping policy. + items: + properties: + forwardingClasses: + description: The forwarding classes to which the mapping applies, these are references to ForwardingClass resources. + items: + type: string + minItems: 1 + type: array + queue: + description: The queue to which the forwarding classes are mapped, this is a reference to a Queue resource. + type: string + required: + - forwardingClasses + - queue + type: object + type: array + policers: + description: Ordered list of policers where the first policer is evaluated first before proceeding to the next. + items: + properties: + committedBurstSize: + description: Maximum CIR bucket depth in bytes. + format: int32 + maximum: 4294967295 + minimum: 0 + type: integer + committedRate: + description: The committed information rate (CIR) of the policer, defined in kilobits (1024 bits) per second. + format: int32 + type: integer + committedRatePercent: + description: The committed information rate (CIR) of the policer, defined as a percentage of the Interface speed on which it is applied. + maximum: 100 + minimum: 0 + type: integer + exceedAction: + description: Applies a drop-probability to packets that the policer has determined are exceeding (yellow). + properties: + dropProbabilityLevel: + default: Medium + enum: + - High + - Medium + - Low + type: string + type: object + forwardingClasses: + description: The list of forwarding classes with traffic to be sent to the policer. Unless specified all traffic is matched for this policer. + items: + properties: + forwardingClasses: + description: The forwarding class of the packets on which to apply the Policer. To match all traffic set this to 'ALL'. + items: + type: string + type: array + forwardingTypes: + default: + - All + items: + enum: + - Broadcast + - Unicast + - Multicast + - UnknownMulticast + - UnknownUnicast + - All + type: string + type: array + required: + - forwardingTypes + type: object + type: array + maximumBurstSize: + description: Maximum PIR bucket depth in bytes. + format: int32 + maximum: 4294967295 + minimum: 0 + type: integer + minInterfaceSpeed: + description: Minimum interface speed (kbps) to calculate PeakRate and CommittedRate for devices where configuration is not supported in percentage. + format: int32 + type: integer + peakRate: + description: The peak information rate (PIR) of the policer, defined in kilobits (1024 bits) per second. + format: int32 + type: integer + peakRatePercent: + description: The peak information rate (PIR) of the policer, defined as a percentage of the Interface speed on which it is applied. + maximum: 100 + minimum: 0 + type: integer + violateAction: + description: Applies a drop-probability to packets that the policer has determined are exceeding (red). + properties: + dropProbabilityLevel: + default: High + enum: + - High + - Medium + - Low + - All + type: string + type: object + type: object + type: array + queueManagement: + description: Queue management policy for egress queues. + items: + properties: + pfcReservedBufferPercent: + description: 'Percentage of the linecard buffer reserved for accomodating incoming traffic while upstream node reacts to generated PFC-pause frames. Note: this percentage must be common across all EgressPolicies and QueuesSets used on the same linecard.' + maximum: 100 + minimum: 0 + type: integer + queues: + description: List of queues. + items: + properties: + committedBurstSize: + description: Committed Burst Size. + format: int32 + type: integer + maximumBurstSize: + description: Maximum amount of shared buffer memory available to the queue in bytes. + format: int32 + maximum: 4294967295 + minimum: 0 + type: integer + pfcOffThreshold: + description: PFC off threshold. + maximum: 100 + minimum: 0 + type: integer + pfcOnThreshold: + description: PFC on threshold. + maximum: 100 + minimum: 0 + type: integer + pfcPauseFramePriority: + description: PFC priorities indicated in generated pfc-pause-frame if congestion occurs in a given pfc-queue. + type: integer + pfcReservedShareBufferPercent: + description: Maximum level the pfc-queue can take from pfc-reserved buffer configured per given forwarding-complex. + maximum: 100 + minimum: 0 + type: integer + queue: + description: Reference to a Queue resource. + type: string + required: + - queue + type: object + type: array + required: + - queues + type: object + type: array + type: object + status: + description: IngressPolicyStatus defines the observed state of IngressPolicy + type: object + type: object +served: true +storage: false +subresources: + status: {} diff --git a/static/resources/25.8.3/inits.bootstrap.eda.nokia.com/v1alpha1.yaml b/static/resources/25.8.3/inits.bootstrap.eda.nokia.com/v1alpha1.yaml new file mode 100644 index 0000000..f892c03 --- /dev/null +++ b/static/resources/25.8.3/inits.bootstrap.eda.nokia.com/v1alpha1.yaml @@ -0,0 +1,72 @@ +name: v1alpha1 +schema: + openAPIV3Schema: + description: Init is the Schema for the inits API + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + description: InitSpec defines the desired state of Init + properties: + commitSave: + description: Save a startup configuration after each commit. + type: boolean + mgmt: + description: |- + Optional management interface settings. + Allows setting DHCP clients or static IPs as well as + the IP MTU. + properties: + ipMTU: + description: Set the management interface IP MTU. + type: integer + ipv4DHCP: + description: Enable IPv4 DHCP client. + type: boolean + ipv6DHCP: + description: Enable IPv6 DHCP client. + type: boolean + staticRoutes: + description: Optional list of static routes to add to the management network instance as part of the initial configuration. + items: + properties: + nextHop: + description: Static route next hop. + type: string + prefix: + description: Static route prefix. + type: string + type: object + type: array + type: object + nodeSelector: + description: |- + Optional node selectors to perform initial configuration for. + If not provided initialization is performed for all nodes. + items: + type: string + type: array + type: object + status: + description: InitStatus defines the observed state of Init + type: object + type: object +served: true +storage: true +subresources: + status: {} diff --git a/static/resources/25.8.3/interfacemodules.components.eda.nokia.com/v1.yaml b/static/resources/25.8.3/interfacemodules.components.eda.nokia.com/v1.yaml new file mode 100644 index 0000000..4c759fe --- /dev/null +++ b/static/resources/25.8.3/interfacemodules.components.eda.nokia.com/v1.yaml @@ -0,0 +1,116 @@ +name: v1 +schema: + openAPIV3Schema: + description: InterfaceModule is the Schema for the interfacemodules API + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + description: InterfaceModuleSpec defines the desired state of InterfaceModule + type: object + status: + description: InterfaceModuleStatus defines the observed state of InterfaceModule + properties: + commonLanguageEquipmentIdentifier: + description: The CLEI code of this component + type: string + lastBooted: + description: The date and time this component last booted + type: string + lastChange: + description: The date and time this component last changed operational state + type: string + locatorEnabled: + description: Indicates if the locator LED for the component is active + type: boolean + manufacturedDate: + description: The date this component was manufactured + type: string + operationalState: + description: Indicates the current operational state of this component. + enum: + - Up + - Down + - Rebooting + - Unknown + - Starting + - Empty + type: string + parent: + description: Reference to a parent component + type: string + parentType: + description: Type of the parent component + enum: + - Fan + - FanTray + - PowerSupply + - PowerModule + - PowerShelf + - InterfaceModule + - ControlModule + - FabricModule + - Chassis + - Transceiver + type: string + partNumber: + description: The discovered part number of this component + type: string + removable: + description: Indicates if this component is removable + type: boolean + serialNumber: + description: The discovered serial number of this component + type: string + slot: + description: Slot this component resides in, unset for components that do not have a slot or ID + type: string + softwareVersion: + description: Version string of the software running on this component + type: string + target: + description: Target this component resides on. + type: string + temperature: + description: Temperature information for this component + properties: + alarmState: + description: The temperature alarm state, as reported by the component + type: boolean + instant: + description: The current temperature of this component + type: integer + margin: + description: The margin temperature of this component + type: integer + maximum: + description: The maximum temperature of this component + type: integer + threshold: + description: The threshold temperature of this component + type: integer + type: object + type: + description: Component type, as provided by the target + type: string + type: object + type: object +served: true +storage: true +subresources: + status: {} diff --git a/static/resources/25.8.3/interfaces.interfaces.eda.nokia.com/v1alpha1.yaml b/static/resources/25.8.3/interfaces.interfaces.eda.nokia.com/v1alpha1.yaml new file mode 100644 index 0000000..f81b61b --- /dev/null +++ b/static/resources/25.8.3/interfaces.interfaces.eda.nokia.com/v1alpha1.yaml @@ -0,0 +1,363 @@ +additionalPrinterColumns: + - jsonPath: .status.enabled + name: Enabled + type: boolean + - jsonPath: .status.operationalState + name: Operational State + type: string + - jsonPath: .status.speed + name: Speed + type: string + - jsonPath: .status.lastChange + name: Last Change + type: date + - jsonPath: .metadata.creationTimestamp + name: Age + type: date +name: v1alpha1 +schema: + openAPIV3Schema: + description: Interface is the Schema for the interfaces API + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + description: Interface allows for the configuration of various interface properties such as enabling/disabling the interface, setting descriptions, specifying interface types (e.g., LAG, interface, loopback), configuring VLAN encapsulation, and setting Ethernet or LAG-specific options. + properties: + ddm: + description: Enables reporting of DDM events. + type: boolean + description: + description: Description of the interface. + type: string + enabled: + default: true + description: Enable or disable the interface. + type: boolean + encapType: + default: "null" + description: Enable or disable VLAN tagging on this interface. [default="null"] + enum: + - "null" + - dot1q + type: string + ethernet: + description: Ethernet configuration options. + properties: + fec: + description: Sets the Forward Error Correction (FEC) on the members of the interface. + enum: + - disabled + - rs528 + - rs544 + - baser + - rs108 + type: string + holdDownTimer: + description: The hold-time down behavior is triggered with events that try to bring the ethernet interface down and can change quickly. It is not triggered with an admin-state disable event or interface disable due to other internal reasons. Units in milliseconds. + format: int32 + maximum: 86400000 + minimum: 100 + type: integer + holdUpTimer: + description: The hold-time up behavior is triggered with any event that tries to bring up the ethernet interface. While the hold-time up is running, the transceiver laser will be enabled, however the higher layers will not be notified that the interface is operationally up until the timer expires. Units in milliseconds. + format: int32 + maximum: 86400000 + minimum: 100 + type: integer + reloadDelayTimer: + description: After the system boots, the reload-delay timer in seconds keeps an interface shut down with the laser off for a configured amount of time until connectivity with the rest of network is established. + maximum: 86400 + minimum: 1 + type: integer + speed: + description: The speed of this interface, in human-readable format - e.g. 25G, 100G. + enum: + - 100G + - 10G + - 1G + - 25G + - 40G + - 50G + - 400G + type: string + standbySignaling: + description: Indicates the standby-signaling used in the interface. + enum: + - lacp + - power-off + type: string + stormControl: + description: Enables storm control. + properties: + broadcastRate: + description: Sets the maximum rate allowed for ingress broadcast frames on the interface. + format: int32 + maximum: 100000000 + minimum: 0 + type: integer + enabled: + description: Enables storm control. + type: boolean + multicastRate: + description: Sets the maximum rate allowed for ingress multicast frames on the interface. + format: int32 + maximum: 100000000 + minimum: 0 + type: integer + units: + description: Set the units to be used for measurement. + enum: + - kbps + - percentage + type: string + unknownUnicastRate: + description: Sets the maximum rate allowed for ingress unknown unicast frames on the interface. + maximum: 100000000 + minimum: 0 + type: integer + type: object + transparentL2CPProtocols: + description: 'A list of L2CP protocols to tunnel. Options: LLDP, LACP, xSTP, Dot1x, PTP, All.' + items: + enum: + - LLDP + - LACP + - xSTP + - Dot1x + - PTP + - All + type: string + type: array + type: object + lag: + description: LAG configuration options. + properties: + lacp: + properties: + adminKey: + description: Configure the LACP admin-key to be advertised by the local system. + maximum: 65535 + minimum: 1 + type: integer + interval: + default: fast + description: Set the period between LACP messages, uses the lacp-period-type enumeration. [default="fast"] + enum: + - fast + - slow + type: string + lacpFallback: + description: LACP fallback allows one or more designated links of an LACP controlled LAG to go into forwarding mode if LACP is not yet operational after a configured timeout period. [default=disabled] + properties: + mode: + default: static + description: Specifies lacp-fallback mode if enabled. + enum: + - static + type: string + timeout: + default: 60 + description: Specifies the LACP-fallback timeout interval in seconds. [default=60] + maximum: 3600 + minimum: 4 + type: integer + type: object + mode: + default: active + description: Active is to initiate the transmission of LACP PDUs. Passive is to wait for peer to initiate the transmission of LACP PDUs.[default="active"] + enum: + - active + - passive + type: string + systemIdMac: + description: The MAC address portion of the Node's System ID. This is combined with the system priority to construct the 8-octet system-id. + type: string + systemPriority: + default: 32768 + description: System priority used by the Node on this LAG interface. Lower value is higher priority for determining which Node is the controlling system.[default=32768] + maximum: 65535 + minimum: 0 + type: integer + type: object + minLinks: + default: 1 + description: The min-link threshold specifies the minimum number of member links that must be active in order for the LAG to be operationally up. If the number of active links falls below this threshold, the entire LAG is brought operationally down.[default=1] + maximum: 64 + minimum: 1 + type: integer + multihoming: + properties: + esi: + default: auto + description: 10 byte Ethernet Segment Identifier, if not set a type 0 ESI is generated. [default=auto] + type: string + mode: + default: all-active + description: |- + "all-active": All interfaces are active. + "single-active": In a single active MH LAG, the active and standby function is handled at the sub-interface layer within a network-instance. That is, the physical interfaces within the same LAG all remain operationally up, however each sub-interface associated with a network-instance has its operational state up or down based on whether it is selected to be the active or standby sub-interface. + "port-active": When port active MH LAG is enabled, the active and standby function is handled at the interface level. + enum: + - all-active + - single-active + - port-active + type: string + preferredActiveNode: + description: To be used in single-active or port-active modes. This references the Node object and when set, the DF algorithm is configured to type preference and the selected Node is set with a higher preference value. All other Nodes have a lower value configured. + type: string + reloadDelayTimer: + default: 100 + description: After the system boots, the reload-delay timer in seconds keeps an interface shut down with the laser off for a configured amount of time until connectivity with the rest of network is established. [default=100] + maximum: 86400 + minimum: 1 + type: integer + revertive: + default: false + description: To be used in single-active or port-active modes. When true, if there is a switch of active interface in the LAG and the original interface comes back up, the LAG will switch back to using the original interface as active. [default=false] + type: boolean + type: object + type: + default: lacp + description: This type defines whether whether it is a static or LACP LAG. [default=lacp] + enum: + - lacp + - static + type: string + type: object + lldp: + default: true + description: Enable or disable LLDP on the members of the interface. + type: boolean + members: + description: List of members on which to apply properties, for single interface this would be a list of 1. + items: + properties: + aggregateId: + description: |- + When using a LAG, the aggregateId can be specified per set of interfaces on a node. + LAG interface with which this interface is associated. + type: string + description: + description: Description of the member, inherited from the interface if not provided. + type: string + enabled: + default: true + description: Enable or disable this member. + type: boolean + interface: + description: 'Reference to an interface in the normalized format. Ex: SRL ethernet-1/1 would be ethernet-1-1. SROS port 2/1/1 would be ethernet-2-1.' + type: string + lacpPortPriority: + default: 32768 + description: Configure the port priority for LACP. This value is used to determine which port should be activated with LACP fallback mode. Lower values are more preferred.[default=32768] + maximum: 65535 + minimum: 0 + type: integer + node: + description: Node name. + type: string + required: + - interface + - node + type: object + type: array + mtu: + description: MTU to apply on the interface(s). + maximum: 9500 + minimum: 1450 + type: integer + type: + default: interface + description: Type defines whether the interface is a Lag or Interface. + enum: + - lag + - interface + - loopback + type: string + required: + - members + type: object + status: + properties: + enabled: + description: The administrative status of the Interface. + type: boolean + lag: + properties: + adminKey: + type: integer + systemIdMac: + type: string + type: object + lastChange: + description: Indicates when this Interface last changed state. + type: string + members: + description: List of members in this Interface. + items: + properties: + enabled: + description: The administrative status of this member. + type: boolean + interface: + description: The name of the interface in normalized format. + type: string + lastChange: + description: Indicates when this member last changed state. + type: string + neighbors: + description: List of discovered neighbors on this member. + items: + properties: + interface: + description: The name of a neighbor interface of this member in node specific format. + type: string + node: + description: The name of a neighbor node of this member in node specific format. + type: string + type: object + type: array + node: + description: The node on which the interface is configured. + type: string + nodeInterface: + description: Node specific interface name, for example "ethernet-1/1", "1/1/c1/1". + type: string + operationalState: + description: Indicates the current operational state of this member. + type: string + speed: + description: Indicates the operational speed of the member. + type: string + required: + - nodeInterface + type: object + type: array + operationalState: + description: Indicates the current operational state of the Interface. + type: string + speed: + description: Indicates the operational speed of the Interface in aggregate. + type: string + type: object + type: object +served: true +storage: true +subresources: + status: {} diff --git a/static/resources/25.8.3/interfacestates.interfaces.eda.nokia.com/v1alpha1.yaml b/static/resources/25.8.3/interfacestates.interfaces.eda.nokia.com/v1alpha1.yaml new file mode 100644 index 0000000..d7df070 --- /dev/null +++ b/static/resources/25.8.3/interfacestates.interfaces.eda.nokia.com/v1alpha1.yaml @@ -0,0 +1,86 @@ +name: v1alpha1 +schema: + openAPIV3Schema: + description: InterfaceState is the Schema for the interfaces API + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + properties: + enabled: + description: Enable or disable the interface. + type: boolean + lag: + properties: + adminKey: + type: integer + systemIdMac: + type: string + type: object + members: + description: List of members on which to monitor state for + items: + properties: + aggregateId: + description: LAG interface with which this interface is associated + type: string + enabled: + description: Enable or disable this member. + type: boolean + interface: + description: Normalized interface name + type: string + node: + description: Reference to the TopoNode on which this member resides + type: string + nodeInterface: + description: Node specific interface name, for example "ethernet-1/1", "1/1/c1/1" + type: string + operatingSystem: + description: The operating system of the TopoNode on which this member resides + type: string + version: + description: The version of the TopoNode on which this interface resides + type: string + required: + - interface + - node + - nodeInterface + - operatingSystem + - version + type: object + type: array + role: + default: edge + description: Role of this interface. This is used to calculate severity of alarms. [default="edge"] + enum: + - isl + - edge + - loopback + type: string + required: + - members + type: object + status: + description: InterfaceStateStatus defines the observed state of Interface + type: object + type: object +served: true +storage: true +subresources: + status: {} diff --git a/static/resources/25.8.3/ipallocationpools.core.eda.nokia.com/v1.yaml b/static/resources/25.8.3/ipallocationpools.core.eda.nokia.com/v1.yaml new file mode 100644 index 0000000..67e797f --- /dev/null +++ b/static/resources/25.8.3/ipallocationpools.core.eda.nokia.com/v1.yaml @@ -0,0 +1,90 @@ +name: v1 +schema: + openAPIV3Schema: + description: IPAllocationPool is the Schema for the ipallocationpools API + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + description: |- + IPAllocationPool is a generic IP allocation pool supporting allocation of IPv4 and/or IPv6 addresses from a set of segments. + It is different from IPInSubnetAllocationPool in that it returns a single unzoned IP address, i.e. an IP address without a subnet. For example a 10.1.1.0/24 segment could return 10.1.1.1. + Consult application documentation to know which pool type to use for a given use case. + properties: + publishAllocations: + description: If true, allocations in segments will be published to EDB, available to query via EQL and trigger state applications off of. + type: boolean + segments: + description: List of segments containing IPv4 or IPv6 addresses to allocate. + items: + properties: + allocateBroadcastAddress: + description: Permit the allocation of the broadcast address. + type: boolean + allocateNetworkAddress: + description: Permit the allocation of the network address. + type: boolean + allocations: + description: List of reservations to exclude from allocations from this segment. + items: + properties: + name: + description: Name of this allocation. + type: string + value: + description: Allocation to reserve. + type: string + required: + - name + - value + type: object + type: array + reservations: + description: List of ranges to exclude from allocations from this segment. + items: + properties: + end: + description: Value to reserve to. + type: string + start: + description: Value to start reserving. + type: string + required: + - end + - start + type: object + type: array + subnet: + description: IPv4 or IPv6 subnet, e.g. 10.1.1.0/24. + type: string + required: + - subnet + type: object + minItems: 1 + type: array + required: + - segments + type: object + status: + description: IPAllocationPoolStatus defines the observed state of IPAllocationPool + type: object + type: object +served: true +storage: true +subresources: + status: {} diff --git a/static/resources/25.8.3/ipinsubnetallocationpools.core.eda.nokia.com/v1.yaml b/static/resources/25.8.3/ipinsubnetallocationpools.core.eda.nokia.com/v1.yaml new file mode 100644 index 0000000..74ab7fc --- /dev/null +++ b/static/resources/25.8.3/ipinsubnetallocationpools.core.eda.nokia.com/v1.yaml @@ -0,0 +1,90 @@ +name: v1 +schema: + openAPIV3Schema: + description: IPInSubnetAllocationPool is the Schema for the ipinsubnetallocationpools API + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + description: |- + IPInSubnetAllocationPool is a generic IP allocation pool supporting allocation of IPv4 and/or IPv6 addresses from a set of segments. + It is different from IPAllocationPool in that it returns a single zoned IP address, i.e. an IP address with a subnet. For example a 10.1.1.0/24 segment could return 10.1.1.1/24. + Consult application documentation to know which pool type to use for a given use case. + properties: + publishAllocations: + description: If true, allocations in segments will be published to EDB, available to query via EQL and trigger state applications off of. + type: boolean + segments: + description: List of segments containing IPv4 or IPv6 addresses to allocate. + items: + properties: + allocateBroadcastAddress: + description: Permit the allocation of the broadcast address. + type: boolean + allocateNetworkAddress: + description: Permit the allocation of the network address. + type: boolean + allocations: + description: List of reservations to exclude from allocations from this segment. + items: + properties: + name: + description: Name of this allocation. + type: string + value: + description: Allocation to reserve. + type: string + required: + - name + - value + type: object + type: array + reservations: + description: List of ranges to exclude from allocations from this segment. + items: + properties: + end: + description: Value to reserve to. + type: string + start: + description: Value to start reserving. + type: string + required: + - end + - start + type: object + type: array + subnet: + description: IPv4 or IPv6 subnet, e.g. 10.1.1.0/24. + type: string + required: + - subnet + type: object + minItems: 1 + type: array + required: + - segments + type: object + status: + description: IPInSubnetAllocationPoolStatus defines the observed state of IPInSubnetAllocationPool + type: object + type: object +served: true +storage: true +subresources: + status: {} diff --git a/static/resources/25.8.3/irbinterfaces.services.eda.nokia.com/v1.yaml b/static/resources/25.8.3/irbinterfaces.services.eda.nokia.com/v1.yaml new file mode 100644 index 0000000..b4bc794 --- /dev/null +++ b/static/resources/25.8.3/irbinterfaces.services.eda.nokia.com/v1.yaml @@ -0,0 +1,443 @@ +additionalPrinterColumns: + - jsonPath: .spec.ipMTU + name: MTU + type: string + - jsonPath: .status.operationalState + name: OperationalState + type: string + - jsonPath: .status.lastChange + name: LastChange + type: string +name: v1 +schema: + openAPIV3Schema: + description: IRBInterface is the Schema for the irbinterfaces API + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + description: The IRBInterface enables the configuration and management of Layer 3 interfaces associated with a BridgeDomain. This resource allows for the specification of various parameters, including IP MTU, learning of unsolicited ARPs, IPv4 and IPv6 addresses, and unnumbered interface settings. It also supports advanced features such as BFD configuration, Virtual IP discovery, and ARP/ND-related settings like Proxy ARP/ND and EVPN route advertisement. + properties: + anycastGatewayMAC: + description: The gateway MAC to use on the anycast address, if left empty the node will automatically assign one. + type: string + arpTimeout: + default: 14400 + description: Duration of time that dynamic ARP entries remain in the ARP cache before they expire. + format: int32 + type: integer + bfd: + description: Enable BFD on the IRBInterface. + properties: + desiredMinTransmitInt: + default: 1000000 + description: The minimum interval in microseconds between transmission of BFD control packets. + maximum: 100000000 + minimum: 10000 + type: integer + detectionMultiplier: + default: 3 + description: The number of packets that must be missed to declare this session as down. + maximum: 20 + minimum: 3 + type: integer + enabled: + default: false + description: Enables Biforward Detection. + type: boolean + minEchoReceiveInterval: + default: 0 + description: The minimum interval between echo packets the local node can receive. + maximum: 100000000 + minimum: 0 + type: integer + requiredMinReceive: + default: 1000000 + description: The minimum interval in microseconds between received BFD control packets that this system should support. + maximum: 100000000 + minimum: 10000 + type: integer + ttl: + description: Sets custom IP TTL or Hop Limit for multi-hop BFD sessions packets. Not appllicable to single-hop BFD sessions. + maximum: 255 + minimum: 2 + type: integer + required: + - enabled + type: object + bridgeDomain: + description: Reference to a BridgeDomain. + type: string + description: + description: The description of the IRBInterface. + type: string + egress: + description: Manages actions on traffic at Egress. + properties: + filters: + description: List of Filter references to use at egress. + items: + type: string + type: array + qosPolicy: + description: List of QoS Egress policy references to use at egress. + items: + type: string + type: array + type: object + evpnRouteAdvertisementType: + description: Controls the type of ARP/ND entries to advertise. + properties: + arpDynamic: + default: false + description: Advertise dynamic ARP entries. + type: boolean + arpStatic: + default: false + description: Advertise static ARP entries. + type: boolean + ndDynamic: + default: false + description: Advertise dynamic ND entries. + type: boolean + ndStatic: + default: false + description: Advertise static ND entries. + type: boolean + type: object + hostRoutePopulate: + description: Configures host route population based on ARP entries. + properties: + dynamic: + default: true + description: Create host routes out of dynamic ARP entries. + type: boolean + evpn: + default: false + description: Create host routes out of EVPN learned ARP entries. + type: boolean + static: + default: true + description: Create host routes out of static ARP entries. + type: boolean + type: object + ingress: + description: Manages actions on traffic at Ingress. + properties: + filters: + description: List of Filter references to use at ingress. + items: + type: string + type: array + qosPolicy: + description: List of QoS Ingress policy references to use at ingress. + items: + type: string + type: array + type: object + ipAddresses: + items: + properties: + ipv4Address: + description: IPv4 address in IP/mask form, e.g., 192.168.0.1/24. + properties: + ipPrefix: + description: Address and mask to use + type: string + primary: + description: Indicates which address to use as primary for broadcast + type: boolean + required: + - ipPrefix + type: object + ipv6Address: + description: IPv6 address in IP/mask form, e.g., fc00::1/120. + properties: + ipPrefix: + description: Address and mask to use + type: string + primary: + description: Indicates which address to use as primary for broadcast + type: boolean + required: + - ipPrefix + type: object + node: + description: Reference to a TopoNode resource, if not specified the IP address will be assigned to all nodes on which the IRB is deployed. If specified the IP address will be assigned to the specified node. + type: string + type: object + type: array + ipMTU: + default: 1500 + description: IP MTU for the IRBInterface [default=1500]. + maximum: 9486 + minimum: 1280 + type: integer + ipv4Parameters: + properties: + directedBroadcast: + description: Allow receiving and forwarding of directed broadcast packets. Enabled when set to true. + type: boolean + type: object + ipv6RouterAdvertisement: + properties: + currentHopLimit: + default: 64 + description: The current hop limit to advertise in the router advertisement messages. + format: int32 + maximum: 255 + minimum: 0 + type: integer + enabled: + default: false + description: Enable or disable IPv6 router advertisements. + type: boolean + ipMTU: + description: The IP MTU to advertise in the router advertisement messages. + format: int32 + maximum: 9486 + minimum: 1280 + type: integer + managedConfigurationFlag: + default: false + description: Enable DHCPv6 for address configuration (M-bit). + type: boolean + maxAdvertisementInterval: + default: 600 + description: Maximum time between router advertisements (in seconds). + format: int32 + maximum: 1800 + minimum: 4 + type: integer + minAdvertisementInterval: + default: 200 + description: Minimum time between router advertisements (in seconds). + format: int32 + maximum: 1350 + minimum: 3 + type: integer + otherConfigurationFlag: + default: false + description: Enable DHCPv6 for other configuration (O-bit). + type: boolean + prefixes: + description: IPv6 prefixes to advertise in router advertisements. + items: + description: IPv6Prefix defines the configuration for an IPv6 prefix advertisement. + properties: + autonomousFlag: + default: true + description: When this is set in the prefix information option hosts can use the prefix for stateless address autoconfiguration (SLAAC). + type: boolean + onLinkFlag: + default: true + description: When this is set in the prefix information option hosts can use the prefix for on-link determination. + type: boolean + preferredLifetime: + default: 604800 + description: The length of time in seconds (relative to the time the packet is sent) that addresses generated from the prefix via stateless address autoconfiguration remain preferred. + format: int32 + maximum: 4294967295 + minimum: 0 + type: integer + prefix: + description: An IPv6 global unicast address prefix. + type: string + validLifetime: + default: 2592000 + description: The length of time in seconds (relative to the time the packet is sent) that the prefix is valid for the purpose of on-link determination. + format: int32 + maximum: 4294967295 + minimum: 0 + type: integer + required: + - prefix + type: object + type: array + reachableTime: + default: 0 + description: Time in milliseconds for Neighbor Unreachability Detection. + format: int32 + maximum: 3600000 + minimum: 0 + type: integer + retransmitTime: + default: 0 + description: Time in milliseconds between retransmitted NS messages. + format: int32 + maximum: 1800000 + minimum: 0 + type: integer + routerLifetime: + default: 1800 + description: Router lifetime in seconds for default gateway. + format: int32 + maximum: 9000 + minimum: 0 + type: integer + required: + - currentHopLimit + - enabled + - managedConfigurationFlag + - maxAdvertisementInterval + - minAdvertisementInterval + - otherConfigurationFlag + - retransmitTime + - routerLifetime + type: object + l3ProxyARPND: + description: L3 Proxy ARP and ND configuration. + properties: + proxyARP: + default: false + description: Select whether Proxy ARP should be enabled. + type: boolean + proxyND: + default: false + description: Select whether Proxy ND should be enabled. + type: boolean + type: object + learnUnsolicited: + default: NONE + description: Enable or disable learning of unsolicited ARPs. + enum: + - BOTH + - GLOBAL + - LINK-LOCAL + - NONE + type: string + router: + description: Reference to a Router. + type: string + unnumbered: + description: Enables the use of unnumbered interfaces on the IRBInterface. If IPv6 is specified, no IP address are configured on the sub-interface and only the link local address will be used. If any IP addresses are specified for either IPv4 or IPv6 that will take precedence and IPs will be assigned to the interfaces.(Deprecated, Use IPv6RouterAdvertisement) + enum: + - IPV6 + type: string + virtualIPDiscovery: + description: Configuration for Virtual IP discovery on the interface. + items: + properties: + address: + description: Virtual IP Address. + type: string + allowedMAC: + description: List of allowed MAC addresses for a discovered virtual IP address. + items: + type: string + type: array + bridgeInterfaceToProbe: + description: List of BridgeInterfaces on the associated MAC-VRF to which the ARP probes are sent. If left blank, the probes are sent on all BridgeInterfaces associated with the BridgeDomain. + items: + type: string + type: array + probeInterval: + default: 0 + description: ARP probe interval in seconds. + maximum: 86400 + minimum: 0 + type: integer + vlanToProbe: + description: List of VLANs on the associated BridgeDomain to which the ARP probes are sent. If left blank, the probes are sent on all VLANs associated with the BridgeDomain. + items: + type: string + type: array + required: + - address + type: object + type: array + required: + - bridgeDomain + - router + type: object + status: + description: IRBInterfaceStatus defines the observed state of IRBInterface + properties: + health: + description: Indicates the health score of the VNET. + type: integer + healthScoreReason: + description: Explains the reason for the health score. + type: string + interfaces: + description: Details of the interfaces associated with the IRB. + items: + properties: + enabled: + description: Administrative status of the SubInterface. + type: boolean + ipv4Addresses: + description: List of IPv4 addresses + items: + properties: + ipPrefix: + description: Address and mask to use + type: string + primary: + description: Indicates which address to use as primary for broadcast + type: boolean + required: + - ipPrefix + type: object + type: array + ipv6Addresses: + description: List of IPv6 addresses + items: + properties: + ipPrefix: + description: Address and mask to use + type: string + primary: + description: Indicates which address to use as primary for broadcast + type: boolean + required: + - ipPrefix + type: object + type: array + lastChange: + description: Timestamp of when this SubInterface last changed state. + type: string + node: + description: Reference to Node object. + type: string + nodeInterface: + description: Node specific interface name. + type: string + operatingSystem: + description: Operating System of the Node. + type: string + operationalState: + description: Current operational state of the SubInterface. + type: string + required: + - node + - nodeInterface + type: object + type: array + lastChange: + description: Timestamp of the last state change. + type: string + operationalState: + description: Operational state of the VNET. + type: string + type: object + type: object +served: true +storage: true +subresources: + status: {} diff --git a/static/resources/25.8.3/irbinterfaces.services.eda.nokia.com/v1alpha1.yaml b/static/resources/25.8.3/irbinterfaces.services.eda.nokia.com/v1alpha1.yaml new file mode 100644 index 0000000..7b7139e --- /dev/null +++ b/static/resources/25.8.3/irbinterfaces.services.eda.nokia.com/v1alpha1.yaml @@ -0,0 +1,445 @@ +additionalPrinterColumns: + - jsonPath: .spec.ipMTU + name: MTU + type: string + - jsonPath: .status.operationalState + name: OperationalState + type: string + - jsonPath: .status.lastChange + name: LastChange + type: string +deprecated: true +deprecationWarning: This version is deprecated and will no longer be supported in the next version. +name: v1alpha1 +schema: + openAPIV3Schema: + description: IRBInterface is the Schema for the irbinterfaces API + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + description: The IRBInterface enables the configuration and management of Layer 3 interfaces associated with a BridgeDomain. This resource allows for the specification of various parameters, including IP MTU, learning of unsolicited ARPs, IPv4 and IPv6 addresses, and unnumbered interface settings. It also supports advanced features such as BFD configuration, Virtual IP discovery, and ARP/ND-related settings like Proxy ARP/ND and EVPN route advertisement. + properties: + anycastGatewayMAC: + description: The gateway MAC to use on the anycast address, if left empty the node will automatically assign one. + type: string + arpTimeout: + default: 14400 + description: Duration of time that dynamic ARP entries remain in the ARP cache before they expire. + format: int32 + type: integer + bfd: + description: Enable BFD on the IRBInterface. + properties: + desiredMinTransmitInt: + default: 1000000 + description: The minimum interval in microseconds between transmission of BFD control packets. + maximum: 100000000 + minimum: 10000 + type: integer + detectionMultiplier: + default: 3 + description: The number of packets that must be missed to declare this session as down. + maximum: 20 + minimum: 3 + type: integer + enabled: + default: false + description: Enables Biforward Detection. + type: boolean + minEchoReceiveInterval: + default: 0 + description: The minimum interval between echo packets the local node can receive. + maximum: 100000000 + minimum: 0 + type: integer + requiredMinReceive: + default: 1000000 + description: The minimum interval in microseconds between received BFD control packets that this system should support. + maximum: 100000000 + minimum: 10000 + type: integer + ttl: + description: Sets custom IP TTL or Hop Limit for multi-hop BFD sessions packets. Not appllicable to single-hop BFD sessions. + maximum: 255 + minimum: 2 + type: integer + required: + - enabled + type: object + bridgeDomain: + description: Reference to a BridgeDomain. + type: string + description: + description: The description of the IRBInterface. + type: string + egress: + description: Manages actions on traffic at Egress. + properties: + filters: + description: List of Filter references to use at egress. + items: + type: string + type: array + qosPolicy: + description: List of QoS Egress policy references to use at egress. + items: + type: string + type: array + type: object + evpnRouteAdvertisementType: + description: Controls the type of ARP/ND entries to advertise. + properties: + arpDynamic: + default: false + description: Advertise dynamic ARP entries. + type: boolean + arpStatic: + default: false + description: Advertise static ARP entries. + type: boolean + ndDynamic: + default: false + description: Advertise dynamic ND entries. + type: boolean + ndStatic: + default: false + description: Advertise static ND entries. + type: boolean + type: object + hostRoutePopulate: + description: Configures host route population based on ARP entries. + properties: + dynamic: + default: true + description: Create host routes out of dynamic ARP entries. + type: boolean + evpn: + default: false + description: Create host routes out of EVPN learned ARP entries. + type: boolean + static: + default: true + description: Create host routes out of static ARP entries. + type: boolean + type: object + ingress: + description: Manages actions on traffic at Ingress. + properties: + filters: + description: List of Filter references to use at ingress. + items: + type: string + type: array + qosPolicy: + description: List of QoS Ingress policy references to use at ingress. + items: + type: string + type: array + type: object + ipAddresses: + items: + properties: + ipv4Address: + description: IPv4 address in IP/mask form, e.g., 192.168.0.1/24. + properties: + ipPrefix: + description: Address and mask to use + type: string + primary: + description: Indicates which address to use as primary for broadcast + type: boolean + required: + - ipPrefix + type: object + ipv6Address: + description: IPv6 address in IP/mask form, e.g., fc00::1/120. + properties: + ipPrefix: + description: Address and mask to use + type: string + primary: + description: Indicates which address to use as primary for broadcast + type: boolean + required: + - ipPrefix + type: object + node: + description: Reference to a TopoNode resource, if not specified the IP address will be assigned to all nodes on which the IRB is deployed. If specified the IP address will be assigned to the specified node. + type: string + type: object + type: array + ipMTU: + default: 1500 + description: IP MTU for the IRBInterface [default=1500]. + maximum: 9486 + minimum: 1280 + type: integer + ipv4Parameters: + properties: + directedBroadcast: + description: Allow receiving and forwarding of directed broadcast packets. Enabled when set to true. + type: boolean + type: object + ipv6RouterAdvertisement: + properties: + currentHopLimit: + default: 64 + description: The current hop limit to advertise in the router advertisement messages. + format: int32 + maximum: 255 + minimum: 0 + type: integer + enabled: + default: false + description: Enable or disable IPv6 router advertisements. + type: boolean + ipMTU: + description: The IP MTU to advertise in the router advertisement messages. + format: int32 + maximum: 9486 + minimum: 1280 + type: integer + managedConfigurationFlag: + default: false + description: Enable DHCPv6 for address configuration (M-bit). + type: boolean + maxAdvertisementInterval: + default: 600 + description: Maximum time between router advertisements (in seconds). + format: int32 + maximum: 1800 + minimum: 4 + type: integer + minAdvertisementInterval: + default: 200 + description: Minimum time between router advertisements (in seconds). + format: int32 + maximum: 1350 + minimum: 3 + type: integer + otherConfigurationFlag: + default: false + description: Enable DHCPv6 for other configuration (O-bit). + type: boolean + prefixes: + description: IPv6 prefixes to advertise in router advertisements. + items: + description: IPv6Prefix defines the configuration for an IPv6 prefix advertisement. + properties: + autonomousFlag: + default: true + description: When this is set in the prefix information option hosts can use the prefix for stateless address autoconfiguration (SLAAC). + type: boolean + onLinkFlag: + default: true + description: When this is set in the prefix information option hosts can use the prefix for on-link determination. + type: boolean + preferredLifetime: + default: 604800 + description: The length of time in seconds (relative to the time the packet is sent) that addresses generated from the prefix via stateless address autoconfiguration remain preferred. + format: int32 + maximum: 4294967295 + minimum: 0 + type: integer + prefix: + description: An IPv6 global unicast address prefix. + type: string + validLifetime: + default: 2592000 + description: The length of time in seconds (relative to the time the packet is sent) that the prefix is valid for the purpose of on-link determination. + format: int32 + maximum: 4294967295 + minimum: 0 + type: integer + required: + - prefix + type: object + type: array + reachableTime: + default: 0 + description: Time in milliseconds for Neighbor Unreachability Detection. + format: int32 + maximum: 3600000 + minimum: 0 + type: integer + retransmitTime: + default: 0 + description: Time in milliseconds between retransmitted NS messages. + format: int32 + maximum: 1800000 + minimum: 0 + type: integer + routerLifetime: + default: 1800 + description: Router lifetime in seconds for default gateway. + format: int32 + maximum: 9000 + minimum: 0 + type: integer + required: + - currentHopLimit + - enabled + - managedConfigurationFlag + - maxAdvertisementInterval + - minAdvertisementInterval + - otherConfigurationFlag + - retransmitTime + - routerLifetime + type: object + l3ProxyARPND: + description: L3 Proxy ARP and ND configuration. + properties: + proxyARP: + default: false + description: Select whether Proxy ARP should be enabled. + type: boolean + proxyND: + default: false + description: Select whether Proxy ND should be enabled. + type: boolean + type: object + learnUnsolicited: + default: NONE + description: Enable or disable learning of unsolicited ARPs. + enum: + - BOTH + - GLOBAL + - LINK-LOCAL + - NONE + type: string + router: + description: Reference to a Router. + type: string + unnumbered: + description: Enables the use of unnumbered interfaces on the IRBInterface. If IPv6 is specified, no IP address are configured on the sub-interface and only the link local address will be used. If any IP addresses are specified for either IPv4 or IPv6 that will take precedence and IPs will be assigned to the interfaces.(Deprecated, Use IPv6RouterAdvertisement) + enum: + - IPV6 + type: string + virtualIPDiscovery: + description: Configuration for Virtual IP discovery on the interface. + items: + properties: + address: + description: Virtual IP Address. + type: string + allowedMAC: + description: List of allowed MAC addresses for a discovered virtual IP address. + items: + type: string + type: array + bridgeInterfaceToProbe: + description: List of BridgeInterfaces on the associated MAC-VRF to which the ARP probes are sent. If left blank, the probes are sent on all BridgeInterfaces associated with the BridgeDomain. + items: + type: string + type: array + probeInterval: + default: 0 + description: ARP probe interval in seconds. + maximum: 86400 + minimum: 0 + type: integer + vlanToProbe: + description: List of VLANs on the associated BridgeDomain to which the ARP probes are sent. If left blank, the probes are sent on all VLANs associated with the BridgeDomain. + items: + type: string + type: array + required: + - address + type: object + type: array + required: + - bridgeDomain + - router + type: object + status: + description: IRBInterfaceStatus defines the observed state of IRBInterface + properties: + health: + description: Indicates the health score of the VNET. + type: integer + healthScoreReason: + description: Explains the reason for the health score. + type: string + interfaces: + description: Details of the interfaces associated with the IRB. + items: + properties: + enabled: + description: Administrative status of the SubInterface. + type: boolean + ipv4Addresses: + description: List of IPv4 addresses + items: + properties: + ipPrefix: + description: Address and mask to use + type: string + primary: + description: Indicates which address to use as primary for broadcast + type: boolean + required: + - ipPrefix + type: object + type: array + ipv6Addresses: + description: List of IPv6 addresses + items: + properties: + ipPrefix: + description: Address and mask to use + type: string + primary: + description: Indicates which address to use as primary for broadcast + type: boolean + required: + - ipPrefix + type: object + type: array + lastChange: + description: Timestamp of when this SubInterface last changed state. + type: string + node: + description: Reference to Node object. + type: string + nodeInterface: + description: Node specific interface name. + type: string + operatingSystem: + description: Operating System of the Node. + type: string + operationalState: + description: Current operational state of the SubInterface. + type: string + required: + - node + - nodeInterface + type: object + type: array + lastChange: + description: Timestamp of the last state change. + type: string + operationalState: + description: Operational state of the VNET. + type: string + type: object + type: object +served: true +storage: false +subresources: + status: {} diff --git a/static/resources/25.8.3/irbinterfacestates.services.eda.nokia.com/v1.yaml b/static/resources/25.8.3/irbinterfacestates.services.eda.nokia.com/v1.yaml new file mode 100644 index 0000000..98c4785 --- /dev/null +++ b/static/resources/25.8.3/irbinterfacestates.services.eda.nokia.com/v1.yaml @@ -0,0 +1,88 @@ +name: v1 +schema: + openAPIV3Schema: + description: IRBInterfaceState is the Schema for the irbinterfacestates API + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + description: IRBInterfaceStateSpec defines the desired state of IRBInterfaceState + properties: + bridgeDomain: + description: Router the IRBInterface is attached to + type: string + interfaces: + items: + properties: + ipv4Addresses: + description: List of IPv4 addresses + items: + properties: + ipPrefix: + description: Address and mask to use + type: string + primary: + description: Indicates which address to use as primary for broadcast + type: boolean + required: + - ipPrefix + type: object + type: array + ipv6Addresses: + description: List of IPv6 addresses + items: + properties: + ipPrefix: + description: Address and mask to use + type: string + primary: + description: Indicates which address to use as primary for broadcast + type: boolean + required: + - ipPrefix + type: object + type: array + node: + description: Reference to Node object. + type: string + nodeInterface: + description: Node specific interface name. + type: string + operatingSystem: + description: Operating System of the Node. + type: string + required: + - node + - nodeInterface + type: object + type: array + router: + description: Router the IRBInterface is attached to + type: string + required: + - bridgeDomain + - router + type: object + status: + description: IRBInterfaceStateStatus defines the observed state of IRBInterfaceState + type: object + type: object +served: true +storage: true +subresources: + status: {} diff --git a/static/resources/25.8.3/irbinterfacestates.services.eda.nokia.com/v1alpha1.yaml b/static/resources/25.8.3/irbinterfacestates.services.eda.nokia.com/v1alpha1.yaml new file mode 100644 index 0000000..2d5e7e0 --- /dev/null +++ b/static/resources/25.8.3/irbinterfacestates.services.eda.nokia.com/v1alpha1.yaml @@ -0,0 +1,90 @@ +deprecated: true +deprecationWarning: This version is deprecated and will no longer be supported in the next version. +name: v1alpha1 +schema: + openAPIV3Schema: + description: IRBInterfaceState is the Schema for the irbinterfacestates API + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + description: IRBInterfaceStateSpec defines the desired state of IRBInterfaceState + properties: + bridgeDomain: + description: Router the IRBInterface is attached to + type: string + interfaces: + items: + properties: + ipv4Addresses: + description: List of IPv4 addresses + items: + properties: + ipPrefix: + description: Address and mask to use + type: string + primary: + description: Indicates which address to use as primary for broadcast + type: boolean + required: + - ipPrefix + type: object + type: array + ipv6Addresses: + description: List of IPv6 addresses + items: + properties: + ipPrefix: + description: Address and mask to use + type: string + primary: + description: Indicates which address to use as primary for broadcast + type: boolean + required: + - ipPrefix + type: object + type: array + node: + description: Reference to Node object. + type: string + nodeInterface: + description: Node specific interface name. + type: string + operatingSystem: + description: Operating System of the Node. + type: string + required: + - node + - nodeInterface + type: object + type: array + router: + description: Router the IRBInterface is attached to + type: string + required: + - bridgeDomain + - router + type: object + status: + description: IRBInterfaceStateStatus defines the observed state of IRBInterfaceState + type: object + type: object +served: true +storage: false +subresources: + status: {} diff --git a/static/resources/25.8.3/islpings.fabrics.eda.nokia.com/v1alpha1.yaml b/static/resources/25.8.3/islpings.fabrics.eda.nokia.com/v1alpha1.yaml new file mode 100644 index 0000000..1b0c3a1 --- /dev/null +++ b/static/resources/25.8.3/islpings.fabrics.eda.nokia.com/v1alpha1.yaml @@ -0,0 +1,122 @@ +name: v1alpha1 +schema: + openAPIV3Schema: + description: IslPing is the Schema for the islpings API + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + description: |- + This workflow is used to ping ISLs (Inter-Switch Links) to verify connectivity within a Fabric. + It accepts a list of fabrics, ISLs, or selectors for both to match ISLs, + and returns the results of the pings, including the status of each ISL. + properties: + count: + default: 1 + description: Count is the number of pings to send. + type: integer + islSelectors: + description: |- + Inter-Switch Link Selectors is a list of selectors to execute ISL pings for. + This is a list of label expressions, e.g. ["eda.nokia.com/role=leaf", "eda.nokia.com/region=us-west"]. + items: + type: string + type: array + isls: + description: Inter-Switch Links is a list of named ISL resources to execute ISL pings for. + items: + type: string + type: array + timeoutSeconds: + default: 5 + description: TimeoutSeconds is the timeout for the ping in seconds. + type: integer + type: object + status: + description: The result of the ISL ping + properties: + details: + description: |- + Details contains the results of the pings performed for each ISL. + Each entry in the list corresponds to an ISL that was pinged. + items: + properties: + details: + description: Details of the ping result, if available. + properties: + averageTimeNanoseconds: + description: Average time taken for a ping reply. + format: int64 + type: integer + maxTimeNanoseconds: + description: Maximum time taken for a ping reply. + format: int64 + type: integer + minTimeNanoseconds: + description: Minimum time taken for a ping reply. + format: int64 + type: integer + received: + description: Number of pings received. + type: integer + sent: + description: Number of pings sent. + type: integer + stdDevNanoseconds: + description: Standard deviation of time taken for all pings. + format: int64 + type: integer + totalTimeNanoseconds: + description: Total time taken for all pings. + format: int64 + type: integer + required: + - received + - sent + type: object + error: + description: Error message, if the ping failed. + type: string + name: + description: Name of the ping result. + type: string + success: + description: Indicates if the ping was successful. + type: boolean + required: + - success + type: object + type: array + result: + description: |- + Result is the overall result of the ping operation. + It can be one of the following values: + - "Success": All pings were successful. + - "Failed": No pings were successful. + - "PartialSuccess": Some pings were successful, but not all. + enum: + - Success + - Failed + - PartialSuccess + type: string + type: object + type: object +served: true +storage: true +subresources: + status: {} diff --git a/static/resources/25.8.3/isls.fabrics.eda.nokia.com/v1alpha1.yaml b/static/resources/25.8.3/isls.fabrics.eda.nokia.com/v1alpha1.yaml new file mode 100644 index 0000000..1b7f516 --- /dev/null +++ b/static/resources/25.8.3/isls.fabrics.eda.nokia.com/v1alpha1.yaml @@ -0,0 +1,212 @@ +additionalPrinterColumns: + - jsonPath: .status.lastChange + name: Last Change + type: date + - jsonPath: .status.operationalState + name: Operational State + type: string +name: v1alpha1 +schema: + openAPIV3Schema: + description: ISL is the Schema for the isls API + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + description: The ISL enables the configuration and management of direct links between Nodes. This resource allows for specifying IPv4 and IPv6 allocation pools, enabling BFD for fast failure detection, and configuring VLAN IDs for the ISL. It also supports BGP peering between the endpoints, with options for setting autonomous systems, AFI/SAFI configurations, and import/export routing policies. + properties: + bfd: + description: Enable or disable BFD on the ISL. [default=false] + properties: + desiredMinTransmitInt: + default: 1000000 + description: The minimum interval in microseconds between transmission of BFD control packets. + maximum: 100000000 + minimum: 10000 + type: integer + detectionMultiplier: + default: 3 + description: The number of packets that must be missed to declare this session as down. + maximum: 20 + minimum: 3 + type: integer + enabled: + default: false + description: Enable Biforward Detection. + type: boolean + minEchoReceiveInterval: + default: 1000000 + description: The minimum interval between echo packets the local node can receive in microseconds. + maximum: 100000000 + minimum: 0 + type: integer + requiredMinReceive: + default: 1000000 + description: The minimum interval in microseconds between received BFD control packets that this system should support. + maximum: 100000000 + minimum: 10000 + type: integer + ttl: + description: Sets custom IP TTL or Hop Limit for multi-hop BFD sessions packets. Not appllicable to single-hop BFD sessions. + maximum: 255 + minimum: 2 + type: integer + type: object + bgp: + properties: + afiSAFI: + description: 'Which AFI and SAFI to advertise on the BGP peering session. Options: ipv4unicast, ipv6unicast, l2vpnevpn' + items: + type: string + type: array + bgpGroup: + description: Reference to a DefaultBgpGroup. + type: string + enabled: + default: false + description: Enable or disable BGP peering between the two endpoints of the ISL. [default=false] + type: boolean + exportPolicy: + description: Reference to a RoutingPolicy to use when evaluating route exports from the DefaultRouter. + items: + type: string + type: array + importPolicy: + description: Reference to a RoutingPolicy to use when evaluating route imports into the DefaultRouter. + items: + type: string + type: array + keychain: + description: Keychain to be used for authentication + type: string + localInterfaceAS: + description: The Autonomous System to configure on the Local Interface. + format: int32 + maximum: 4294967295 + minimum: 0 + type: integer + remoteInterfaceAS: + description: The Autonomous System to configure on the Remote Interface. + format: int32 + maximum: 4294967295 + minimum: 0 + type: integer + required: + - enabled + - localInterfaceAS + - remoteInterfaceAS + type: object + ipMTU: + description: Sets the IP MTU for the local and remote Interfaces + maximum: 9486 + minimum: 1280 + type: integer + localDefaultRouter: + description: Reference to the DefautlRouter associated with the local Interface in which the ISL will be provisioned. + type: string + localInterface: + description: Reference to an Interface. + type: string + poolIPV4: + description: Reference to an IPv4 allocation pool to use for ISL subnet allocations. + type: string + poolIPV6: + description: Reference to an IPv6 allocation pool to use for ISL subnet allocations. + type: string + qos: + properties: + egressPolicy: + type: string + ingressPolicy: + type: string + type: object + remoteDefaultRouter: + description: Reference to the DefautlRouter associated with the remote Interface in which the ISL will be provisioned. + type: string + remoteInterface: + description: Reference to an Interface + type: string + unnumbered: + description: Enables the use of unnumbered interfaces on the ISL. For IPv6, no IP address are configured on the sub-interface and only the link local address will be used. If any allocation pool is specified for IPv6 that will take precedence and IPs will be assigned to the interfaces. When using eBGP for an underlay protocol, the DefaultInterfaces which are a part of the ISL will be added to the BGP dynamic neighbor list. + enum: + - IPV6 + type: string + vlanID: + description: Single VLAN tag value between 1-4094. + maximum: 4094 + minimum: 1 + type: integer + required: + - localDefaultRouter + - localInterface + - remoteDefaultRouter + - remoteInterface + type: object + status: + description: ISLStatus defines the observed state of ISL + properties: + health: + description: Indicates the health score of the ISL + type: integer + healthScoreReason: + description: Indicates the reason for the health score + type: string + lastChange: + description: The time when the state of the resource last changed + type: string + localInterface: + description: Local Interface + properties: + IPv4Address: + description: Local Interface IPv4 address + type: string + IPv6Address: + description: Local Interface IPv4 address + type: string + defaultInterface: + description: Reference to the DefaulInterface assocaited with the local interface + type: string + node: + description: Reference to the TopoNode on which the local interface is configured + type: string + type: object + operationalState: + description: Operational state of the ISL + type: string + remoteInterface: + description: Remote Interface + properties: + IPv4Address: + description: Remote Interface IPv4 address + type: string + IPv6Address: + description: Remote Interface IPv6 address + type: string + defaultInterface: + description: Reference to the DefaulInterface assocaited with the remote interface + type: string + node: + description: Reference to the TopoNode on which the remote interface is configured + type: string + type: object + type: object + type: object +served: true +storage: true +subresources: + status: {} diff --git a/static/resources/25.8.3/islstates.fabrics.eda.nokia.com/v1alpha1.yaml b/static/resources/25.8.3/islstates.fabrics.eda.nokia.com/v1alpha1.yaml new file mode 100644 index 0000000..567cb49 --- /dev/null +++ b/static/resources/25.8.3/islstates.fabrics.eda.nokia.com/v1alpha1.yaml @@ -0,0 +1,106 @@ +name: v1alpha1 +schema: + openAPIV3Schema: + description: ISLState is the Schema for the islstates API + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + description: ISLStateSpec defines the desired state of ISLState + properties: + localInterface: + properties: + BGPPeerIPV4: + description: Reference to the IPV4 BGPPeer created for the local peer + type: string + BGPPeerIPV6: + description: Reference to the IPV6 BGPPeer created for the local peer + type: string + IPv4Address: + description: Local Interface IPv4 address + type: string + IPv6Address: + description: Local Interface IPv4 address + type: string + defaultInterface: + description: Reference to the DefaultInterface configured on the local node + type: string + dynamicBGPPeerIPV6: + description: Reference to the dynamic IPV6 BGPPeer created for the local peer + type: string + node: + description: Reference to the TopoNode on which the local interface is configured + type: string + required: + - defaultInterface + type: object + poolIPV4Enabled: + description: Indicates if IPV4 pool is enabled on the isl interface + type: boolean + poolIPV6Enabled: + description: Indicates if IPV6 pool is enabled on the isl interface + type: boolean + protocols: + description: List of configured protocols on the BGP peer + items: + type: string + type: array + remoteInterface: + properties: + BGPPeerIPV4: + description: Reference to the IPV4 BGPPeer created for the remote peer + type: string + BGPPeerIPV6: + description: Reference to the IPV6 BGPPeer created for the remote peer + type: string + IPv4Address: + description: Remote Interface IPv4 address + type: string + IPv6Address: + description: Remote Interface IPv4 address + type: string + defaultInterface: + description: Reference to the DefaultInterface configured on the remote node + type: string + dynamicBGPPeerIPV6: + description: Reference to the dynamic IPV6 BGPPeer created for the remote peer + type: string + node: + description: Reference to the TopoNode on which the remote interface is configured + type: string + required: + - defaultInterface + type: object + unnumbered: + description: Indicates the dynamic peering type that is enabled on the isl interface. + type: string + required: + - localInterface + - poolIPV4Enabled + - poolIPV6Enabled + - protocols + - remoteInterface + type: object + status: + description: ISLStateStatus defines the observed state of ISLState + type: object + type: object +served: true +storage: true +subresources: + status: {} diff --git a/static/resources/25.8.3/keychaindeployments.security.eda.nokia.com/v1alpha1.yaml b/static/resources/25.8.3/keychaindeployments.security.eda.nokia.com/v1alpha1.yaml new file mode 100644 index 0000000..8c47ac9 --- /dev/null +++ b/static/resources/25.8.3/keychaindeployments.security.eda.nokia.com/v1alpha1.yaml @@ -0,0 +1,43 @@ +name: v1alpha1 +schema: + openAPIV3Schema: + description: KeychainDeployment is the Schema for the keychaindeployments API + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + description: KeychainDeploymentSpec defines the desired state of KeychainDeployment + properties: + keychain: + description: Reference to a Keychain + type: string + node: + description: Reference to a Node on which to push the BgpGroup + type: string + required: + - keychain + - node + type: object + status: + description: KeychainDeploymentStatus defines the observed state of KeychainDeployment + type: object + type: object +served: true +storage: true +subresources: + status: {} diff --git a/static/resources/25.8.3/keychains.security.eda.nokia.com/v1alpha1.yaml b/static/resources/25.8.3/keychains.security.eda.nokia.com/v1alpha1.yaml new file mode 100644 index 0000000..7cd16ba --- /dev/null +++ b/static/resources/25.8.3/keychains.security.eda.nokia.com/v1alpha1.yaml @@ -0,0 +1,48 @@ +name: v1alpha1 +schema: + openAPIV3Schema: + description: Keychain is the Schema for the keychains API + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + description: KeychainSpec defines the desired state of Keychain + properties: + key: + properties: + algorithm: + enum: + - MD5 + type: string + authenticationKey: + type: string + required: + - algorithm + - authenticationKey + type: object + required: + - key + type: object + status: + description: KeychainStatus defines the observed state of Keychain + type: object + type: object +served: true +storage: true +subresources: + status: {} diff --git a/static/resources/25.8.3/licenses.core.eda.nokia.com/v1.yaml b/static/resources/25.8.3/licenses.core.eda.nokia.com/v1.yaml new file mode 100644 index 0000000..7e7a041 --- /dev/null +++ b/static/resources/25.8.3/licenses.core.eda.nokia.com/v1.yaml @@ -0,0 +1,66 @@ +name: v1 +schema: + openAPIV3Schema: + description: License is the Schema for the licenses API + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + description: A License represents an application license providing functionality within EDA. A license providing the "base" feature must be provided/valid for transactions to be processed. + properties: + data: + description: The license key. This is a base64 encoded string. + type: string + enabled: + default: true + description: Indicates if this license is available for use. + type: boolean + required: + - data + type: object + status: + description: Status information for this license. + properties: + comment: + description: Any comment provided in the license. + type: string + expirationDate: + description: Date and time the license expires. + type: string + expired: + description: Indicates if the license has expired. + type: boolean + issuedDate: + description: Date and time the license was issued. + type: string + used: + description: Indicates if license has been used. + type: boolean + valid: + description: Indicates if the license is valid. + type: boolean + required: + - expired + - used + - valid + type: object + type: object +served: true +storage: true +subresources: + status: {} diff --git a/static/resources/25.8.3/lldpoverlays.topologies.eda.nokia.com/v1alpha1.yaml b/static/resources/25.8.3/lldpoverlays.topologies.eda.nokia.com/v1alpha1.yaml new file mode 100644 index 0000000..94f4813 --- /dev/null +++ b/static/resources/25.8.3/lldpoverlays.topologies.eda.nokia.com/v1alpha1.yaml @@ -0,0 +1,69 @@ +name: v1alpha1 +schema: + openAPIV3Schema: + description: LldpOverlay is the Schema for lldpoverlays + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + description: LldpOverlaySpec defines the desired state of lldp + properties: + enabled: + description: Enable or disable the generation of the status of this overlay + type: boolean + topology: + description: Reference to the topology that this overlay is extending. + properties: + group: + description: The group of the application which published the topology this overlay is extending. + type: string + name: + description: The name of the resource which published the topology this overlay is extending. + type: string + version: + description: The version of the application which published the topology this overlay is extending. + type: string + required: + - group + - name + - version + type: object + uiDescription: + description: A description of the overlay to expose in the UI + type: string + uiDescriptionKey: + description: The translation key for the description of the overlay to expose in the UI + type: string + uiName: + description: The name of the overlay to expose in the UI + type: string + uiNameKey: + description: The translation key for the name of the overlay to expose in the UI + type: string + required: + - enabled + - topology + type: object + status: + description: LldpOverlayStatus defines the observed state of LldpOverlay + type: object + type: object +served: true +storage: true +subresources: + status: {} diff --git a/static/resources/25.8.3/managementrouters.bootstrap.eda.nokia.com/v1alpha1.yaml b/static/resources/25.8.3/managementrouters.bootstrap.eda.nokia.com/v1alpha1.yaml new file mode 100644 index 0000000..18ea45c --- /dev/null +++ b/static/resources/25.8.3/managementrouters.bootstrap.eda.nokia.com/v1alpha1.yaml @@ -0,0 +1,44 @@ +name: v1alpha1 +schema: + openAPIV3Schema: + description: ManagementRouter is the Schema for the managementrouters API + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + description: ManagementRouterSpec defines the desired state of ManagementRouter + properties: + nodeSelector: + description: Selects TopoNodes on which to configure the management VRF. When left empty, all TopoNodes are selected. + items: + type: string + type: array + nodes: + description: List of TopoNodes on which to configure the management VRF. When left empty, all TopoNodes are selected. + items: + type: string + type: array + type: object + status: + description: ManagementRouterStatus defines the observed state of ManagementRouter + type: object + type: object +served: true +storage: true +subresources: + status: {} diff --git a/static/resources/25.8.3/managementrouterstates.bootstrap.eda.nokia.com/v1alpha1.yaml b/static/resources/25.8.3/managementrouterstates.bootstrap.eda.nokia.com/v1alpha1.yaml new file mode 100644 index 0000000..e16fda8 --- /dev/null +++ b/static/resources/25.8.3/managementrouterstates.bootstrap.eda.nokia.com/v1alpha1.yaml @@ -0,0 +1,54 @@ +name: v1alpha1 +schema: + openAPIV3Schema: + description: ManagementRouterState is the Schema for the managementrouterstates API + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + description: ManagementRouterStateSpec defines the desired state of ManagementRouterState + properties: + nodes: + description: Reference to Nodes on which the ManagementRouter is deployed + items: + properties: + networkInstanceName: + description: The name of the management network instance in the Node OS format. For example in SR Linux it would be 'mgmt' + type: string + node: + description: Reference to Node object + type: string + operatingSystem: + description: Operating System of the Node + type: string + required: + - networkInstanceName + - node + type: object + type: array + required: + - nodes + type: object + status: + description: ManagementRouterStateStatus defines the observed state of ManagementRouterState + type: object + type: object +served: true +storage: true +subresources: + status: {} diff --git a/static/resources/25.8.3/manifest.json b/static/resources/25.8.3/manifest.json new file mode 100644 index 0000000..634cd3b --- /dev/null +++ b/static/resources/25.8.3/manifest.json @@ -0,0 +1,1997 @@ +[ + { + "name": "aggregateroutes.protocols.eda.nokia.com", + "group": "protocols.eda.nokia.com", + "kind": "AggregateRoute", + "versions": [ + { + "name": "v1", + "appVersion": "v4.0.1" + }, + { + "name": "v1alpha1", + "deprecated": true, + "appVersion": "v3.0.2+25.4.3" + } + ] + }, + { + "name": "alarms.core.eda.nokia.com", + "group": "core.eda.nokia.com", + "kind": "Alarm", + "versions": [ + { + "name": "v1" + } + ] + }, + { + "name": "appinstallers.appstore.eda.nokia.com", + "group": "appstore.eda.nokia.com", + "kind": "AppInstaller", + "versions": [ + { + "name": "v1" + } + ] + }, + { + "name": "artifacts.artifacts.eda.nokia.com", + "group": "artifacts.eda.nokia.com", + "kind": "Artifact", + "versions": [ + { + "name": "v1" + } + ] + }, + { + "name": "aspathsetdeployments.routingpolicies.eda.nokia.com", + "group": "routingpolicies.eda.nokia.com", + "kind": "ASPathSetDeployment", + "versions": [ + { + "name": "v1alpha1", + "appVersion": "v4.0.1" + } + ] + }, + { + "name": "aspathsets.routingpolicies.eda.nokia.com", + "group": "routingpolicies.eda.nokia.com", + "kind": "ASPathSet", + "versions": [ + { + "name": "v1alpha1", + "appVersion": "v4.0.1" + } + ] + }, + { + "name": "attachmentlookups.routing.eda.nokia.com", + "group": "routing.eda.nokia.com", + "kind": "AttachmentLookup", + "versions": [ + { + "name": "v1alpha1", + "appVersion": "v4.0.1" + } + ] + }, + { + "name": "backends.aifabrics.eda.nokia.com", + "group": "aifabrics.eda.nokia.com", + "kind": "Backend", + "versions": [ + { + "name": "v1alpha1", + "appVersion": "v4.0.1" + } + ] + }, + { + "name": "backendstates.aifabrics.eda.nokia.com", + "group": "aifabrics.eda.nokia.com", + "kind": "", + "versions": [ + { + "name": "v1alpha1" + } + ] + }, + { + "name": "banners.siteinfo.eda.nokia.com", + "group": "siteinfo.eda.nokia.com", + "kind": "Banner", + "versions": [ + { + "name": "v1alpha1", + "appVersion": "v4.0.1" + } + ] + }, + { + "name": "bannerstates.siteinfo.eda.nokia.com", + "group": "siteinfo.eda.nokia.com", + "kind": "", + "versions": [ + { + "name": "v1alpha1" + } + ] + }, + { + "name": "bgpgroupdeployments.protocols.eda.nokia.com", + "group": "protocols.eda.nokia.com", + "kind": "BGPGroupDeployment", + "versions": [ + { + "name": "v1", + "appVersion": "v4.0.1" + }, + { + "name": "v1alpha1", + "deprecated": true, + "appVersion": "v3.0.2+25.4.3" + } + ] + }, + { + "name": "bgpgroups.protocols.eda.nokia.com", + "group": "protocols.eda.nokia.com", + "kind": "BGPGroup", + "versions": [ + { + "name": "v1", + "appVersion": "v4.0.1" + }, + { + "name": "v1alpha1", + "deprecated": true, + "appVersion": "v3.0.2+25.4.3" + } + ] + }, + { + "name": "bgpgroupstates.protocols.eda.nokia.com", + "group": "protocols.eda.nokia.com", + "kind": "", + "versions": [ + { + "name": "v1" + }, + { + "name": "v1alpha1", + "deprecated": true + } + ] + }, + { + "name": "bgppeers.protocols.eda.nokia.com", + "group": "protocols.eda.nokia.com", + "kind": "BGPPeer", + "versions": [ + { + "name": "v1", + "appVersion": "v4.0.1" + }, + { + "name": "v1alpha1", + "deprecated": true, + "appVersion": "v3.0.2+25.4.3" + } + ] + }, + { + "name": "bgppeerstates.protocols.eda.nokia.com", + "group": "protocols.eda.nokia.com", + "kind": "", + "versions": [ + { + "name": "v1" + }, + { + "name": "v1alpha1", + "deprecated": true + } + ] + }, + { + "name": "breakouts.interfaces.eda.nokia.com", + "group": "interfaces.eda.nokia.com", + "kind": "Breakout", + "versions": [ + { + "name": "v1alpha1", + "appVersion": "v4.0.1" + } + ] + }, + { + "name": "bridgedomaindeployments.services.eda.nokia.com", + "group": "services.eda.nokia.com", + "kind": "BridgeDomainDeployment", + "versions": [ + { + "name": "v1", + "appVersion": "v4.0.1" + }, + { + "name": "v1alpha1", + "deprecated": true, + "appVersion": "v3.0.2+25.4.3" + } + ] + }, + { + "name": "bridgedomains.services.eda.nokia.com", + "group": "services.eda.nokia.com", + "kind": "BridgeDomain", + "versions": [ + { + "name": "v1", + "appVersion": "v4.0.1" + }, + { + "name": "v1alpha1", + "deprecated": true, + "appVersion": "v3.0.2+25.4.3" + } + ] + }, + { + "name": "bridgedomainstates.services.eda.nokia.com", + "group": "services.eda.nokia.com", + "kind": "", + "versions": [ + { + "name": "v1" + }, + { + "name": "v1alpha1", + "deprecated": true + } + ] + }, + { + "name": "bridgeinterfaces.services.eda.nokia.com", + "group": "services.eda.nokia.com", + "kind": "BridgeInterface", + "versions": [ + { + "name": "v1", + "appVersion": "v4.0.1" + }, + { + "name": "v1alpha1", + "deprecated": true, + "appVersion": "v3.0.2+25.4.3" + } + ] + }, + { + "name": "bridgeinterfacestates.services.eda.nokia.com", + "group": "services.eda.nokia.com", + "kind": "", + "versions": [ + { + "name": "v1" + }, + { + "name": "v1alpha1", + "deprecated": true + } + ] + }, + { + "name": "catalogs.appstore.eda.nokia.com", + "group": "appstore.eda.nokia.com", + "kind": "Catalog", + "versions": [ + { + "name": "v1" + } + ] + }, + { + "name": "certificatechecks.certcheck.eda.nokia.com", + "group": "certcheck.eda.nokia.com", + "kind": "CertificateCheck", + "versions": [ + { + "name": "v1alpha1" + } + ] + }, + { + "name": "chassis.components.eda.nokia.com", + "group": "components.eda.nokia.com", + "kind": "Chassis", + "versions": [ + { + "name": "v1", + "appVersion": "v4.0.1" + } + ] + }, + { + "name": "checkdefaultbgppeerss.protocols.eda.nokia.com", + "group": "protocols.eda.nokia.com", + "kind": "CheckDefaultBgpPeers", + "versions": [ + { + "name": "v1", + "appVersion": "v4.0.1" + }, + { + "name": "v1alpha1", + "deprecated": true + } + ] + }, + { + "name": "checkinterfacess.interfaces.eda.nokia.com", + "group": "interfaces.eda.nokia.com", + "kind": "CheckInterfaces", + "versions": [ + { + "name": "v1alpha1", + "appVersion": "v4.0.1" + } + ] + }, + { + "name": "cliplugins.environment.eda.nokia.com", + "group": "environment.eda.nokia.com", + "kind": "CliPlugin", + "versions": [ + { + "name": "v1alpha1", + "appVersion": "v4.0.1" + } + ] + }, + { + "name": "clusterdiscoveries.components.eda.nokia.com", + "group": "components.eda.nokia.com", + "kind": "ClusterDiscovery", + "versions": [ + { + "name": "v1", + "appVersion": "v4.0.1" + } + ] + }, + { + "name": "clusterroles.core.eda.nokia.com", + "group": "core.eda.nokia.com", + "kind": "ClusterRole", + "versions": [ + { + "name": "v1" + } + ] + }, + { + "name": "communitysetdeployments.routingpolicies.eda.nokia.com", + "group": "routingpolicies.eda.nokia.com", + "kind": "CommunitySetDeployment", + "versions": [ + { + "name": "v1alpha1", + "appVersion": "v4.0.1" + } + ] + }, + { + "name": "communitysets.routingpolicies.eda.nokia.com", + "group": "routingpolicies.eda.nokia.com", + "kind": "CommunitySet", + "versions": [ + { + "name": "v1alpha1", + "appVersion": "v4.0.1" + } + ] + }, + { + "name": "components.components.eda.nokia.com", + "group": "components.eda.nokia.com", + "kind": "Component", + "versions": [ + { + "name": "v1", + "appVersion": "v4.0.1" + }, + { + "name": "v1alpha1" + } + ] + }, + { + "name": "configlets.config.eda.nokia.com", + "group": "config.eda.nokia.com", + "kind": "Configlet", + "versions": [ + { + "name": "v1alpha1", + "appVersion": "v4.0.1" + } + ] + }, + { + "name": "configletstates.config.eda.nokia.com", + "group": "config.eda.nokia.com", + "kind": "", + "versions": [ + { + "name": "v1alpha1" + } + ] + }, + { + "name": "controlmodules.components.eda.nokia.com", + "group": "components.eda.nokia.com", + "kind": "ControlModule", + "versions": [ + { + "name": "v1", + "appVersion": "v4.0.1" + } + ] + }, + { + "name": "controlplanefilters.filters.eda.nokia.com", + "group": "filters.eda.nokia.com", + "kind": "ControlPlaneFilter", + "versions": [ + { + "name": "v1alpha1", + "appVersion": "v4.0.1" + } + ] + }, + { + "name": "cpuoverlays.components.eda.nokia.com", + "group": "components.eda.nokia.com", + "kind": "CPUOverlay", + "versions": [ + { + "name": "v1", + "appVersion": "v4.0.1" + } + ] + }, + { + "name": "cxclusters.cx.eda.nokia.com", + "group": "cx.eda.nokia.com", + "kind": "CxCluster", + "versions": [ + { + "name": "v1alpha1" + } + ] + }, + { + "name": "defaultaggregateroutes.protocols.eda.nokia.com", + "group": "protocols.eda.nokia.com", + "kind": "DefaultAggregateRoute", + "versions": [ + { + "name": "v1", + "appVersion": "v4.0.1" + }, + { + "name": "v1alpha1", + "deprecated": true, + "appVersion": "v3.0.2+25.4.3" + } + ] + }, + { + "name": "defaultbgpgroupdeployments.protocols.eda.nokia.com", + "group": "protocols.eda.nokia.com", + "kind": "DefaultBGPGroupDeployment", + "versions": [ + { + "name": "v1", + "appVersion": "v4.0.1" + }, + { + "name": "v1alpha1", + "deprecated": true, + "appVersion": "v3.0.2+25.4.3" + } + ] + }, + { + "name": "defaultbgpgroups.protocols.eda.nokia.com", + "group": "protocols.eda.nokia.com", + "kind": "DefaultBGPGroup", + "versions": [ + { + "name": "v1", + "appVersion": "v4.0.1" + }, + { + "name": "v1alpha1", + "deprecated": true, + "appVersion": "v3.0.2+25.4.3" + } + ] + }, + { + "name": "defaultbgppeers.protocols.eda.nokia.com", + "group": "protocols.eda.nokia.com", + "kind": "DefaultBGPPeer", + "versions": [ + { + "name": "v1", + "appVersion": "v4.0.1" + }, + { + "name": "v1alpha1", + "deprecated": true, + "appVersion": "v3.0.2+25.4.3" + } + ] + }, + { + "name": "defaultinterfaces.routing.eda.nokia.com", + "group": "routing.eda.nokia.com", + "kind": "DefaultInterface", + "versions": [ + { + "name": "v1alpha1", + "appVersion": "v4.0.1" + } + ] + }, + { + "name": "defaultinterfacestates.routing.eda.nokia.com", + "group": "routing.eda.nokia.com", + "kind": "", + "versions": [ + { + "name": "v1alpha1" + } + ] + }, + { + "name": "defaultroutereflectorclients.protocols.eda.nokia.com", + "group": "protocols.eda.nokia.com", + "kind": "DefaultRouteReflectorClient", + "versions": [ + { + "name": "v1", + "appVersion": "v4.0.1" + }, + { + "name": "v1alpha1", + "deprecated": true, + "appVersion": "v3.0.2+25.4.3" + } + ] + }, + { + "name": "defaultroutereflectors.protocols.eda.nokia.com", + "group": "protocols.eda.nokia.com", + "kind": "DefaultRouteReflector", + "versions": [ + { + "name": "v1", + "appVersion": "v4.0.1" + }, + { + "name": "v1alpha1", + "deprecated": true, + "appVersion": "v3.0.2+25.4.3" + } + ] + }, + { + "name": "defaultrouters.routing.eda.nokia.com", + "group": "routing.eda.nokia.com", + "kind": "DefaultRouter", + "versions": [ + { + "name": "v1alpha1", + "appVersion": "v4.0.1" + } + ] + }, + { + "name": "defaultrouterstates.routing.eda.nokia.com", + "group": "routing.eda.nokia.com", + "kind": "", + "versions": [ + { + "name": "v1alpha1" + } + ] + }, + { + "name": "defaultstaticroutes.protocols.eda.nokia.com", + "group": "protocols.eda.nokia.com", + "kind": "DefaultStaticRoute", + "versions": [ + { + "name": "v1", + "appVersion": "v4.0.1" + }, + { + "name": "v1alpha1", + "deprecated": true, + "appVersion": "v3.0.2+25.4.3" + } + ] + }, + { + "name": "deployimages.os.eda.nokia.com", + "group": "os.eda.nokia.com", + "kind": "DeployImage", + "versions": [ + { + "name": "v1alpha1", + "appVersion": "v4.0.1" + } + ] + }, + { + "name": "designers.core.eda.nokia.com", + "group": "core.eda.nokia.com", + "kind": "Designer", + "versions": [ + { + "name": "v1" + } + ] + }, + { + "name": "deviationactions.core.eda.nokia.com", + "group": "core.eda.nokia.com", + "kind": "DeviationAction", + "versions": [ + { + "name": "v1" + } + ] + }, + { + "name": "deviationoverlays.topologies.eda.nokia.com", + "group": "topologies.eda.nokia.com", + "kind": "DeviationOverlay", + "versions": [ + { + "name": "v1alpha1", + "appVersion": "v4.0.1" + } + ] + }, + { + "name": "deviations.core.eda.nokia.com", + "group": "core.eda.nokia.com", + "kind": "Deviation", + "versions": [ + { + "name": "v1" + } + ] + }, + { + "name": "dhcprelays.services.eda.nokia.com", + "group": "services.eda.nokia.com", + "kind": "DHCPRelay", + "versions": [ + { + "name": "v1", + "appVersion": "v4.0.1" + }, + { + "name": "v1alpha1", + "deprecated": true, + "appVersion": "v3.0.2+25.4.3" + } + ] + }, + { + "name": "discoveries.components.eda.nokia.com", + "group": "components.eda.nokia.com", + "kind": "Discovery", + "versions": [ + { + "name": "v1", + "appVersion": "v4.0.1" + }, + { + "name": "v1alpha1" + } + ] + }, + { + "name": "discoveryaggregatestates.components.eda.nokia.com", + "group": "components.eda.nokia.com", + "kind": "", + "versions": [ + { + "name": "v1" + }, + { + "name": "v1alpha1" + } + ] + }, + { + "name": "discoverystates.components.eda.nokia.com", + "group": "components.eda.nokia.com", + "kind": "", + "versions": [ + { + "name": "v1" + }, + { + "name": "v1alpha1" + } + ] + }, + { + "name": "drains.routing.eda.nokia.com", + "group": "routing.eda.nokia.com", + "kind": "Drain", + "versions": [ + { + "name": "v1alpha1", + "appVersion": "v4.0.1" + } + ] + }, + { + "name": "drainstates.routing.eda.nokia.com", + "group": "routing.eda.nokia.com", + "kind": "", + "versions": [ + { + "name": "v1alpha1" + } + ] + }, + { + "name": "edgeinterfaces.core.eda.nokia.com", + "group": "core.eda.nokia.com", + "kind": "EdgeInterface", + "versions": [ + { + "name": "v1" + } + ] + }, + { + "name": "edgepings.services.eda.nokia.com", + "group": "services.eda.nokia.com", + "kind": "EdgePing", + "versions": [ + { + "name": "v1", + "appVersion": "v4.0.1" + }, + { + "name": "v1alpha1", + "deprecated": true + } + ] + }, + { + "name": "egresspolicys.qos.eda.nokia.com", + "group": "qos.eda.nokia.com", + "kind": "EgressPolicy", + "versions": [ + { + "name": "v1", + "appVersion": "v4.0.1" + }, + { + "name": "v1alpha1", + "deprecated": true, + "appVersion": "v3.0.2+25.4.3" + } + ] + }, + { + "name": "engineconfigs.core.eda.nokia.com", + "group": "core.eda.nokia.com", + "kind": "EngineConfig", + "versions": [ + { + "name": "v1" + } + ] + }, + { + "name": "fabricmodules.components.eda.nokia.com", + "group": "components.eda.nokia.com", + "kind": "FabricModule", + "versions": [ + { + "name": "v1", + "appVersion": "v4.0.1" + } + ] + }, + { + "name": "fabrics.fabrics.eda.nokia.com", + "group": "fabrics.eda.nokia.com", + "kind": "Fabric", + "versions": [ + { + "name": "v1alpha1", + "appVersion": "v4.0.1" + } + ] + }, + { + "name": "fabricstates.fabrics.eda.nokia.com", + "group": "fabrics.eda.nokia.com", + "kind": "", + "versions": [ + { + "name": "v1alpha1" + } + ] + }, + { + "name": "fans.components.eda.nokia.com", + "group": "components.eda.nokia.com", + "kind": "Fan", + "versions": [ + { + "name": "v1", + "appVersion": "v4.0.1" + } + ] + }, + { + "name": "filterdeployments.filters.eda.nokia.com", + "group": "filters.eda.nokia.com", + "kind": "FilterDeployment", + "versions": [ + { + "name": "v1alpha1", + "appVersion": "v4.0.1" + } + ] + }, + { + "name": "filters.filters.eda.nokia.com", + "group": "filters.eda.nokia.com", + "kind": "Filter", + "versions": [ + { + "name": "v1alpha1", + "appVersion": "v4.0.1" + } + ] + }, + { + "name": "forwardingclasss.qos.eda.nokia.com", + "group": "qos.eda.nokia.com", + "kind": "ForwardingClass", + "versions": [ + { + "name": "v1", + "appVersion": "v4.0.1" + }, + { + "name": "v1alpha1", + "deprecated": true, + "appVersion": "v3.0.2+25.4.3" + } + ] + }, + { + "name": "globalconfigs.core.eda.nokia.com", + "group": "core.eda.nokia.com", + "kind": "GlobalConfig", + "versions": [ + { + "name": "v1" + } + ] + }, + { + "name": "httpproxies.core.eda.nokia.com", + "group": "core.eda.nokia.com", + "kind": "HttpProxy", + "versions": [ + { + "name": "v1" + } + ] + }, + { + "name": "indexallocationpools.core.eda.nokia.com", + "group": "core.eda.nokia.com", + "kind": "IndexAllocationPool", + "versions": [ + { + "name": "v1" + } + ] + }, + { + "name": "ingresspolicys.qos.eda.nokia.com", + "group": "qos.eda.nokia.com", + "kind": "IngressPolicy", + "versions": [ + { + "name": "v1", + "appVersion": "v4.0.1" + }, + { + "name": "v1alpha1", + "deprecated": true, + "appVersion": "v3.0.2+25.4.3" + } + ] + }, + { + "name": "inits.bootstrap.eda.nokia.com", + "group": "bootstrap.eda.nokia.com", + "kind": "Init", + "versions": [ + { + "name": "v1alpha1", + "appVersion": "v4.0.1" + } + ] + }, + { + "name": "interfacemodules.components.eda.nokia.com", + "group": "components.eda.nokia.com", + "kind": "InterfaceModule", + "versions": [ + { + "name": "v1", + "appVersion": "v4.0.1" + } + ] + }, + { + "name": "interfaces.interfaces.eda.nokia.com", + "group": "interfaces.eda.nokia.com", + "kind": "Interface", + "versions": [ + { + "name": "v1alpha1", + "appVersion": "v4.0.1" + } + ] + }, + { + "name": "interfacestates.interfaces.eda.nokia.com", + "group": "interfaces.eda.nokia.com", + "kind": "", + "versions": [ + { + "name": "v1alpha1" + } + ] + }, + { + "name": "ipallocationpools.core.eda.nokia.com", + "group": "core.eda.nokia.com", + "kind": "IPAllocationPool", + "versions": [ + { + "name": "v1" + } + ] + }, + { + "name": "ipinsubnetallocationpools.core.eda.nokia.com", + "group": "core.eda.nokia.com", + "kind": "IPInSubnetAllocationPool", + "versions": [ + { + "name": "v1" + } + ] + }, + { + "name": "irbinterfaces.services.eda.nokia.com", + "group": "services.eda.nokia.com", + "kind": "IRBInterface", + "versions": [ + { + "name": "v1", + "appVersion": "v4.0.1" + }, + { + "name": "v1alpha1", + "deprecated": true, + "appVersion": "v3.0.2+25.4.3" + } + ] + }, + { + "name": "irbinterfacestates.services.eda.nokia.com", + "group": "services.eda.nokia.com", + "kind": "", + "versions": [ + { + "name": "v1" + }, + { + "name": "v1alpha1", + "deprecated": true + } + ] + }, + { + "name": "islpings.fabrics.eda.nokia.com", + "group": "fabrics.eda.nokia.com", + "kind": "IslPing", + "versions": [ + { + "name": "v1alpha1", + "appVersion": "v4.0.1" + } + ] + }, + { + "name": "isls.fabrics.eda.nokia.com", + "group": "fabrics.eda.nokia.com", + "kind": "ISL", + "versions": [ + { + "name": "v1alpha1", + "appVersion": "v4.0.1" + } + ] + }, + { + "name": "islstates.fabrics.eda.nokia.com", + "group": "fabrics.eda.nokia.com", + "kind": "", + "versions": [ + { + "name": "v1alpha1" + } + ] + }, + { + "name": "keychaindeployments.security.eda.nokia.com", + "group": "security.eda.nokia.com", + "kind": "KeychainDeployment", + "versions": [ + { + "name": "v1alpha1", + "appVersion": "v4.0.1" + } + ] + }, + { + "name": "keychains.security.eda.nokia.com", + "group": "security.eda.nokia.com", + "kind": "Keychain", + "versions": [ + { + "name": "v1alpha1", + "appVersion": "v4.0.1" + } + ] + }, + { + "name": "licenses.core.eda.nokia.com", + "group": "core.eda.nokia.com", + "kind": "License", + "versions": [ + { + "name": "v1" + } + ] + }, + { + "name": "lldpoverlays.topologies.eda.nokia.com", + "group": "topologies.eda.nokia.com", + "kind": "LldpOverlay", + "versions": [ + { + "name": "v1alpha1", + "appVersion": "v4.0.1" + } + ] + }, + { + "name": "managementrouters.bootstrap.eda.nokia.com", + "group": "bootstrap.eda.nokia.com", + "kind": "ManagementRouter", + "versions": [ + { + "name": "v1alpha1", + "appVersion": "v4.0.1" + } + ] + }, + { + "name": "managementrouterstates.bootstrap.eda.nokia.com", + "group": "bootstrap.eda.nokia.com", + "kind": "", + "versions": [ + { + "name": "v1alpha1" + } + ] + }, + { + "name": "manifests.core.eda.nokia.com", + "group": "core.eda.nokia.com", + "kind": "Manifest", + "versions": [ + { + "name": "v1" + } + ] + }, + { + "name": "memoryoverlays.components.eda.nokia.com", + "group": "components.eda.nokia.com", + "kind": "MemoryOverlay", + "versions": [ + { + "name": "v1", + "appVersion": "v4.0.1" + } + ] + }, + { + "name": "mirrorfilterdeployments.filters.eda.nokia.com", + "group": "filters.eda.nokia.com", + "kind": "MirrorFilterDeployment", + "versions": [ + { + "name": "v1alpha1", + "appVersion": "v4.0.1" + } + ] + }, + { + "name": "mirrorfilters.filters.eda.nokia.com", + "group": "filters.eda.nokia.com", + "kind": "MirrorFilter", + "versions": [ + { + "name": "v1alpha1", + "appVersion": "v4.0.1" + } + ] + }, + { + "name": "mirrors.oam.eda.nokia.com", + "group": "oam.eda.nokia.com", + "kind": "Mirror", + "versions": [ + { + "name": "v1alpha1", + "appVersion": "v4.0.1" + } + ] + }, + { + "name": "mirrorstates.oam.eda.nokia.com", + "group": "oam.eda.nokia.com", + "kind": "", + "versions": [ + { + "name": "v1alpha1" + } + ] + }, + { + "name": "monitoraggregatestates.components.eda.nokia.com", + "group": "components.eda.nokia.com", + "kind": "", + "versions": [ + { + "name": "v1" + } + ] + }, + { + "name": "monitoraggregatestates.system.eda.nokia.com", + "group": "system.eda.nokia.com", + "kind": "", + "versions": [ + { + "name": "v1alpha1" + } + ] + }, + { + "name": "monitors.components.eda.nokia.com", + "group": "components.eda.nokia.com", + "kind": "Monitor", + "versions": [ + { + "name": "v1", + "appVersion": "v4.0.1" + } + ] + }, + { + "name": "monitors.system.eda.nokia.com", + "group": "system.eda.nokia.com", + "kind": "Monitor", + "versions": [ + { + "name": "v1alpha1", + "appVersion": "v4.0.1" + } + ] + }, + { + "name": "monitorstates.components.eda.nokia.com", + "group": "components.eda.nokia.com", + "kind": "", + "versions": [ + { + "name": "v1" + } + ] + }, + { + "name": "monitorstates.system.eda.nokia.com", + "group": "system.eda.nokia.com", + "kind": "", + "versions": [ + { + "name": "v1alpha1" + } + ] + }, + { + "name": "namespaces.core.eda.nokia.com", + "group": "core.eda.nokia.com", + "kind": "Namespace", + "versions": [ + { + "name": "v1" + } + ] + }, + { + "name": "nodeconfigs.core.eda.nokia.com", + "group": "core.eda.nokia.com", + "kind": "NodeConfig", + "versions": [ + { + "name": "v1" + } + ] + }, + { + "name": "nodegroupdeployments.aaa.eda.nokia.com", + "group": "aaa.eda.nokia.com", + "kind": "NodeGroupDeployment", + "versions": [ + { + "name": "v1alpha1", + "appVersion": "v4.0.1" + } + ] + }, + { + "name": "nodegroups.aaa.eda.nokia.com", + "group": "aaa.eda.nokia.com", + "kind": "NodeGroup", + "versions": [ + { + "name": "v1alpha1", + "appVersion": "v4.0.1" + } + ] + }, + { + "name": "nodeprofiles.core.eda.nokia.com", + "group": "core.eda.nokia.com", + "kind": "NodeProfile", + "versions": [ + { + "name": "v1" + } + ] + }, + { + "name": "nodesecurityprofiles.core.eda.nokia.com", + "group": "core.eda.nokia.com", + "kind": "NodeSecurityProfile", + "versions": [ + { + "name": "v1" + } + ] + }, + { + "name": "nodeusers.core.eda.nokia.com", + "group": "core.eda.nokia.com", + "kind": "NodeUser", + "versions": [ + { + "name": "v1" + } + ] + }, + { + "name": "nodeuserstates.aaa.eda.nokia.com", + "group": "aaa.eda.nokia.com", + "kind": "", + "versions": [ + { + "name": "v1alpha1" + } + ] + }, + { + "name": "ntpclients.timing.eda.nokia.com", + "group": "timing.eda.nokia.com", + "kind": "NTPClient", + "versions": [ + { + "name": "v1alpha1", + "appVersion": "v4.0.1" + } + ] + }, + { + "name": "ntpclientstates.timing.eda.nokia.com", + "group": "timing.eda.nokia.com", + "kind": "", + "versions": [ + { + "name": "v1alpha1" + } + ] + }, + { + "name": "pings.oam.eda.nokia.com", + "group": "oam.eda.nokia.com", + "kind": "Ping", + "versions": [ + { + "name": "v1alpha1", + "appVersion": "v4.0.1" + } + ] + }, + { + "name": "policyattachments.qos.eda.nokia.com", + "group": "qos.eda.nokia.com", + "kind": "PolicyAttachment", + "versions": [ + { + "name": "v1", + "appVersion": "v4.0.1" + }, + { + "name": "v1alpha1", + "deprecated": true, + "appVersion": "v3.0.2+25.4.3" + } + ] + }, + { + "name": "policydeployments.qos.eda.nokia.com", + "group": "qos.eda.nokia.com", + "kind": "PolicyDeployment", + "versions": [ + { + "name": "v1", + "appVersion": "v4.0.1" + }, + { + "name": "v1alpha1", + "deprecated": true, + "appVersion": "v3.0.2+25.4.3" + } + ] + }, + { + "name": "policydeployments.routingpolicies.eda.nokia.com", + "group": "routingpolicies.eda.nokia.com", + "kind": "PolicyDeployment", + "versions": [ + { + "name": "v1alpha1", + "appVersion": "v4.0.1" + } + ] + }, + { + "name": "policys.routingpolicies.eda.nokia.com", + "group": "routingpolicies.eda.nokia.com", + "kind": "Policy", + "versions": [ + { + "name": "v1alpha1", + "appVersion": "v4.0.1" + } + ] + }, + { + "name": "powersupplies.components.eda.nokia.com", + "group": "components.eda.nokia.com", + "kind": "PowerSupply", + "versions": [ + { + "name": "v1", + "appVersion": "v4.0.1" + } + ] + }, + { + "name": "prefixsetdeployments.routingpolicies.eda.nokia.com", + "group": "routingpolicies.eda.nokia.com", + "kind": "PrefixSetDeployment", + "versions": [ + { + "name": "v1alpha1", + "appVersion": "v4.0.1" + } + ] + }, + { + "name": "prefixsets.routingpolicies.eda.nokia.com", + "group": "routingpolicies.eda.nokia.com", + "kind": "PrefixSet", + "versions": [ + { + "name": "v1alpha1", + "appVersion": "v4.0.1" + } + ] + }, + { + "name": "queues.qos.eda.nokia.com", + "group": "qos.eda.nokia.com", + "kind": "Queue", + "versions": [ + { + "name": "v1", + "appVersion": "v4.0.1" + }, + { + "name": "v1alpha1", + "deprecated": true, + "appVersion": "v3.0.2+25.4.3" + } + ] + }, + { + "name": "registries.appstore.eda.nokia.com", + "group": "appstore.eda.nokia.com", + "kind": "Registry", + "versions": [ + { + "name": "v1" + } + ] + }, + { + "name": "roles.core.eda.nokia.com", + "group": "core.eda.nokia.com", + "kind": "Role", + "versions": [ + { + "name": "v1" + } + ] + }, + { + "name": "routedinterfaces.services.eda.nokia.com", + "group": "services.eda.nokia.com", + "kind": "RoutedInterface", + "versions": [ + { + "name": "v1", + "appVersion": "v4.0.1" + }, + { + "name": "v1alpha1", + "deprecated": true, + "appVersion": "v3.0.2+25.4.3" + } + ] + }, + { + "name": "routedinterfacestates.services.eda.nokia.com", + "group": "services.eda.nokia.com", + "kind": "", + "versions": [ + { + "name": "v1" + }, + { + "name": "v1alpha1", + "deprecated": true + } + ] + }, + { + "name": "routelookups.routing.eda.nokia.com", + "group": "routing.eda.nokia.com", + "kind": "RouteLookup", + "versions": [ + { + "name": "v1alpha1", + "appVersion": "v4.0.1" + } + ] + }, + { + "name": "routerdeployments.services.eda.nokia.com", + "group": "services.eda.nokia.com", + "kind": "RouterDeployment", + "versions": [ + { + "name": "v1", + "appVersion": "v4.0.1" + }, + { + "name": "v1alpha1", + "deprecated": true, + "appVersion": "v3.0.2+25.4.3" + } + ] + }, + { + "name": "routereflectorclients.protocols.eda.nokia.com", + "group": "protocols.eda.nokia.com", + "kind": "RouteReflectorClient", + "versions": [ + { + "name": "v1", + "appVersion": "v4.0.1" + }, + { + "name": "v1alpha1", + "deprecated": true, + "appVersion": "v3.0.2+25.4.3" + } + ] + }, + { + "name": "routereflectorclientstates.protocols.eda.nokia.com", + "group": "protocols.eda.nokia.com", + "kind": "", + "versions": [ + { + "name": "v1" + }, + { + "name": "v1alpha1", + "deprecated": true + } + ] + }, + { + "name": "routereflectors.protocols.eda.nokia.com", + "group": "protocols.eda.nokia.com", + "kind": "RouteReflector", + "versions": [ + { + "name": "v1", + "appVersion": "v4.0.1" + }, + { + "name": "v1alpha1", + "deprecated": true, + "appVersion": "v3.0.2+25.4.3" + } + ] + }, + { + "name": "routereflectorstates.protocols.eda.nokia.com", + "group": "protocols.eda.nokia.com", + "kind": "", + "versions": [ + { + "name": "v1" + }, + { + "name": "v1alpha1", + "deprecated": true + } + ] + }, + { + "name": "routers.services.eda.nokia.com", + "group": "services.eda.nokia.com", + "kind": "Router", + "versions": [ + { + "name": "v1", + "appVersion": "v4.0.1" + }, + { + "name": "v1alpha1", + "deprecated": true, + "appVersion": "v3.0.2+25.4.3" + } + ] + }, + { + "name": "routerstates.services.eda.nokia.com", + "group": "services.eda.nokia.com", + "kind": "", + "versions": [ + { + "name": "v1" + }, + { + "name": "v1alpha1", + "deprecated": true + } + ] + }, + { + "name": "setupenvs.environment.eda.nokia.com", + "group": "environment.eda.nokia.com", + "kind": "SetupEnv", + "versions": [ + { + "name": "v1alpha1", + "appVersion": "v4.0.1" + } + ] + }, + { + "name": "simlinks.core.eda.nokia.com", + "group": "core.eda.nokia.com", + "kind": "SimLink", + "versions": [ + { + "name": "v1" + } + ] + }, + { + "name": "simnodes.core.eda.nokia.com", + "group": "core.eda.nokia.com", + "kind": "SimNode", + "versions": [ + { + "name": "v1" + } + ] + }, + { + "name": "stateconfigs.services.eda.nokia.com", + "group": "services.eda.nokia.com", + "kind": "StateConfig", + "versions": [ + { + "name": "v1", + "appVersion": "v4.0.1" + }, + { + "name": "v1alpha1", + "deprecated": true, + "appVersion": "v3.0.2+25.4.3" + } + ] + }, + { + "name": "staticroutes.protocols.eda.nokia.com", + "group": "protocols.eda.nokia.com", + "kind": "StaticRoute", + "versions": [ + { + "name": "v1", + "appVersion": "v4.0.1" + }, + { + "name": "v1alpha1", + "deprecated": true, + "appVersion": "v3.0.2+25.4.3" + } + ] + }, + { + "name": "subnetallocationpools.core.eda.nokia.com", + "group": "core.eda.nokia.com", + "kind": "SubnetAllocationPool", + "versions": [ + { + "name": "v1" + } + ] + }, + { + "name": "systeminterfaces.routing.eda.nokia.com", + "group": "routing.eda.nokia.com", + "kind": "SystemInterface", + "versions": [ + { + "name": "v1alpha1", + "appVersion": "v4.0.1" + } + ] + }, + { + "name": "systeminterfacestates.routing.eda.nokia.com", + "group": "routing.eda.nokia.com", + "kind": "", + "versions": [ + { + "name": "v1alpha1" + } + ] + }, + { + "name": "targetnodes.core.eda.nokia.com", + "group": "core.eda.nokia.com", + "kind": "TargetNode", + "versions": [ + { + "name": "v1" + } + ] + }, + { + "name": "techsupports.oam.eda.nokia.com", + "group": "oam.eda.nokia.com", + "kind": "TechSupport", + "versions": [ + { + "name": "v1alpha1", + "appVersion": "v4.0.1" + } + ] + }, + { + "name": "thresholds.oam.eda.nokia.com", + "group": "oam.eda.nokia.com", + "kind": "Threshold", + "versions": [ + { + "name": "v1alpha1", + "appVersion": "v4.0.1" + } + ] + }, + { + "name": "thresholds.platformmetrics.eda.nokia.com", + "group": "platformmetrics.eda.nokia.com", + "kind": "Threshold", + "versions": [ + { + "name": "v1" + } + ] + }, + { + "name": "topobreakouts.core.eda.nokia.com", + "group": "core.eda.nokia.com", + "kind": "TopoBreakout", + "versions": [ + { + "name": "v1" + } + ] + }, + { + "name": "topolinkmonitors.topologies.eda.nokia.com", + "group": "topologies.eda.nokia.com", + "kind": "TopoLinkMonitor", + "versions": [ + { + "name": "v1alpha1", + "appVersion": "v4.0.1" + } + ] + }, + { + "name": "topolinks.core.eda.nokia.com", + "group": "core.eda.nokia.com", + "kind": "TopoLink", + "versions": [ + { + "name": "v1" + } + ] + }, + { + "name": "topolinkstates.topologies.eda.nokia.com", + "group": "topologies.eda.nokia.com", + "kind": "", + "versions": [ + { + "name": "v1alpha1" + } + ] + }, + { + "name": "topologies.topologies.eda.nokia.com", + "group": "topologies.eda.nokia.com", + "kind": "Topology", + "versions": [ + { + "name": "v1alpha1", + "appVersion": "v4.0.1" + } + ] + }, + { + "name": "topologygroupings.topologies.eda.nokia.com", + "group": "topologies.eda.nokia.com", + "kind": "TopologyGrouping", + "versions": [ + { + "name": "v1alpha1", + "appVersion": "v4.0.1" + } + ] + }, + { + "name": "toponodes.core.eda.nokia.com", + "group": "core.eda.nokia.com", + "kind": "TopoNode", + "versions": [ + { + "name": "v1" + } + ] + }, + { + "name": "trafficrateoverlays.topologies.eda.nokia.com", + "group": "topologies.eda.nokia.com", + "kind": "TrafficRateOverlay", + "versions": [ + { + "name": "v1alpha1", + "appVersion": "v4.0.1" + } + ] + }, + { + "name": "transactionresults.core.eda.nokia.com", + "group": "core.eda.nokia.com", + "kind": "TransactionResult", + "versions": [ + { + "name": "v1" + } + ] + }, + { + "name": "transactions.core.eda.nokia.com", + "group": "core.eda.nokia.com", + "kind": "Transaction", + "versions": [ + { + "name": "v1" + } + ] + }, + { + "name": "udpproxies.core.eda.nokia.com", + "group": "core.eda.nokia.com", + "kind": "UdpProxy", + "versions": [ + { + "name": "v1" + } + ] + }, + { + "name": "userdeployments.aaa.eda.nokia.com", + "group": "aaa.eda.nokia.com", + "kind": "UserDeployment", + "versions": [ + { + "name": "v1alpha1", + "appVersion": "v4.0.1" + } + ] + }, + { + "name": "virtualnetworks.services.eda.nokia.com", + "group": "services.eda.nokia.com", + "kind": "VirtualNetwork", + "versions": [ + { + "name": "v1", + "appVersion": "v4.0.1" + }, + { + "name": "v1alpha1", + "deprecated": true, + "appVersion": "v3.0.2+25.4.3" + } + ] + }, + { + "name": "virtualnetworkstates.services.eda.nokia.com", + "group": "services.eda.nokia.com", + "kind": "", + "versions": [ + { + "name": "v1" + }, + { + "name": "v1alpha1", + "deprecated": true + } + ] + }, + { + "name": "vlans.services.eda.nokia.com", + "group": "services.eda.nokia.com", + "kind": "VLAN", + "versions": [ + { + "name": "v1", + "appVersion": "v4.0.1" + }, + { + "name": "v1alpha1", + "deprecated": true, + "appVersion": "v3.0.2+25.4.3" + } + ] + }, + { + "name": "vlanstates.services.eda.nokia.com", + "group": "services.eda.nokia.com", + "kind": "", + "versions": [ + { + "name": "v1" + }, + { + "name": "v1alpha1", + "deprecated": true + } + ] + }, + { + "name": "volumeoverlays.components.eda.nokia.com", + "group": "components.eda.nokia.com", + "kind": "VolumeOverlay", + "versions": [ + { + "name": "v1", + "appVersion": "v4.0.1" + } + ] + }, + { + "name": "waitforinputs.core.eda.nokia.com", + "group": "core.eda.nokia.com", + "kind": "WaitForInput", + "versions": [ + { + "name": "v1" + } + ] + }, + { + "name": "workflowdefinitions.core.eda.nokia.com", + "group": "core.eda.nokia.com", + "kind": "WorkflowDefinition", + "versions": [ + { + "name": "v1" + } + ] + }, + { + "name": "workflows.core.eda.nokia.com", + "group": "core.eda.nokia.com", + "kind": "Workflow", + "versions": [ + { + "name": "v1" + } + ] + } +] \ No newline at end of file diff --git a/static/resources/25.8.3/manifests.core.eda.nokia.com/v1.yaml b/static/resources/25.8.3/manifests.core.eda.nokia.com/v1.yaml new file mode 100644 index 0000000..7e7b110 --- /dev/null +++ b/static/resources/25.8.3/manifests.core.eda.nokia.com/v1.yaml @@ -0,0 +1,477 @@ +name: v1 +schema: + openAPIV3Schema: + description: Manifest is the Schema for the manifests API + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + description: ManifestSpec defines the desired state of Manifest + properties: + appInfo: + description: Additional information relating the application described by this Manifest + properties: + categories: + description: Categories of the application described by this Manifest, used by UI + items: + type: string + type: array + changelog: + description: Relative path to the changelog for the application + type: string + documentation: + description: Relative path to any documentation + type: string + license: + description: Relative path to a LICENSE file + type: string + ociSpecVersion: + description: OCI Spec version of the built app image, populated by the edabuilder cli + type: string + readme: + description: Relative path to the README for the application described by this Manifest + type: string + screenshots: + description: Relative path to any screenshots to present in the App Store + items: + type: string + type: array + settings: + description: |- + Relative path to the OpenApi spec describing the settings that can be set on this application. + This file should be generated using edabuilder. + type: string + source: + description: Relative path to the source repository for the application described by this Manfest + type: string + srcURI: + description: Source URI that points to the source code of the application + type: string + support: + description: Relative path to the support file for the application + type: string + type: object + author: + description: Author of the application described by this Manifest + type: string + components: + description: A list of components provided in this Manifest + items: + properties: + bootstrapResource: + description: |- + Bootstrap resource provided in this component. + This may be a path to a resource, or a path to a directory containing resources. + On new namespace creation, bootstrap resources are loaded into the new namespace by default, "bootstrapping" the namespace. + properties: + path: + description: Relative path in the local application repository + type: string + required: + - path + type: object + cr: + description: Definition of a CR provided in this component + properties: + path: + description: Relative path in the local application repository + type: string + required: + - path + type: object + crd: + description: Definition of a CRD provided in this component + properties: + api: + description: Settings related to how this CRD is exposed in the API + properties: + expose: + default: readWrite + description: |- + Indicates if this Kind will be made available through the EDA API, and what REST functions will be supported + 'readWrite' maps to PUT, POST, PATCH, and DELETE. + 'read' maps to GET, LIST, HEAD. + 'none' results in the Kind not being made available in the API. + enum: + - none + - read + - readWrite + type: string + type: object + conversionScript: + description: Relative path to the conversion script for this CRD + type: string + kubernetes: + description: Define how resources for this CRD will be imported/exported to/from Kubernetes + properties: + exportPolicy: + enum: + - all + type: string + importPolicy: + description: Defines whether resources of this type will be exported to Kubernetes + enum: + - all + - spec + type: string + type: object + names: + description: |- + Names is the CRD Kind names, as specified by its CRD.spec.names field. + Automatically filled in by the edabuilder. + properties: + kind: + description: Kind is the serialized kind of the resource. It is normally CamelCase and singular. + type: string + listKind: + description: ListKind is the serialized kind of the list for this resource. Defaults to List. + type: string + plural: + description: |- + Plural is the plural name of the resource to serve. It must match the name of the CustomResourceDefinition-registration + too: plural.group and it must be all lowercase. + type: string + singular: + description: Singular is the singular name of the resource. It must be all lowercase Defaults to lowercased + type: string + required: + - kind + - listKind + - plural + - singular + type: object + namespaced: + default: true + description: If set, resources of this CRD are namespace scoped + type: boolean + path: + description: Relative path in the local application repository + type: string + resourceType: + description: |- + The type of the resource that this CRD defines. Transactional resources are processed via ConfigEngine, + Kubernetes resources are not exposed in the EDA API, and are not processed via ConfigEngine. + Use Transactional for intent-based resources, or any resources you wish EDA to persist/restore. + Use Kubernetes for resources that are managed by Kubernetes, that you do not want EDA to process in transactions or persist/restore. + enum: + - Transactional + - Kubernetes + type: string + schema: + description: Relative path to the schema to use with this CRD + type: string + ui: + description: If set, this CRD will be exposed in the UI + properties: + category: + description: Category in which to present this resource, these groups exist in the UI navigation menu + type: string + name: + description: Name to use within the category to present this resource + type: string + panel: + description: |- + Panel in which to present this resource. + 'main' renders resource under main panel. + 'system_administration' renders resource under system administration panel. + enum: + - main + - system_administration + type: string + required: + - name + type: object + workflow: + description: If set, resources of this CRD are is in workflows + type: boolean + required: + - path + type: object + dbSchema: + description: Definition of schema for EDB, referencing a table and providing JSONSchema + properties: + schema: + description: Relative path to the JSONSchema that defines the schema of the table + type: string + table: + description: Provide the name of the table in the EDB to which this schema applies, e.g. ".db.example.table" + type: string + required: + - schema + - table + type: object + script: + description: Definition of a script provided in this component + properties: + path: + description: Relative path in the local application repository + type: string + trigger: + description: The trigger used to start execution of provided script resource + properties: + kind: + description: Kind used to trigger the execution of provided script resource, e.g. Interface + type: string + required: + - kind + type: object + type: + description: The type of script + enum: + - config + - state + type: string + required: + - path + - trigger + type: object + view: + description: Definition of a UI view provided in this component + properties: + path: + description: Relative path in the local application repository + type: string + ui: + description: Settings related to how this view is presented in the UI + properties: + category: + description: Category in which to present this resource, these groups exist in the UI navigation menu + type: string + name: + description: Name to use within the category to present this resource + type: string + panel: + description: |- + Panel in which to present this resource. + 'main' renders resource under main panel. + 'system_administration' renders resource under system administration panel. + enum: + - main + - system_administration + type: string + required: + - name + type: object + required: + - path + - ui + type: object + workflow: + description: Definition of workflow provided in this component + properties: + definition: + description: Relative path to the WorkflowDefinition resource that defines this workflow + type: string + image: + description: Provide the container image to execute for this workflow + type: string + required: + - definition + - image + type: object + type: object + type: array + dependencies: + description: A list of other artifacts, images, or files this Manifest depends on + items: + properties: + artifact: + description: Definition of an artifact to be loaded in artifact server + properties: + destination: + description: Destination in the artifact server to host this artifact. This corresponds to the filePath field of an Artifact. + type: string + path: + description: Relative path in the local application repository + type: string + required: + - path + type: object + container: + description: Definition of a container image provided in this application + properties: + image: + description: OCI image to use as a source for artifacts provided in this Manifest + type: string + name: + description: Name of the container dependency + type: string + pullSecret: + description: Pull secret reference that will be populated by the app store + type: string + required: + - image + - name + type: object + file: + description: Definition of an artifact provided in this component + properties: + path: + description: Relative path in the local application repository + type: string + required: + - path + type: object + type: object + type: array + description: + description: Summary description of the application described by this Manifest + type: string + gitPathPrefix: + description: A path prefix to apply when resolving any relative paths within this Manifest in the EDA application repository + type: string + gitReference: + description: Reference to a git hash or tag within the EDA application repository at which to load resources from components in this Manifest + example: v27.3.1 or 69cd4d76c467f6f27e43f3f6284356d8941df8fb + type: string + group: + description: The Group components and their respective Kinds reside in + type: string + image: + description: OCI image to use as a source for artifacts provided in this Manifest + type: string + requirements: + description: Other applications this application depends on/interacts with + items: + properties: + appId: + description: |- + The app ID of an application that this Manifest depends on. + Note: not in use currently: use AppName and Vendor. + type: string + appName: + description: The name of an application that this Manifest depends on. + type: string + kubernetes: + description: |- + Required Kinds to be imported/exported to/from Kubernetes from this application. + This can be used by apps with Kubernetes controllers in them, that depends on other apps with CRDs. + properties: + exports: + description: List of Kinds to ensure are exported to Kubernetes. + items: + properties: + gvk: + description: The group + version + kind to apply the specified policy to + properties: + group: + description: The group of the resource to import/export + type: string + kind: + description: The kind of the resource to import/export + type: string + version: + description: The version of the resource to import/export + type: string + required: + - kind + - version + type: object + policy: + description: The policy to apply to the GVK + enum: + - all + type: string + required: + - gvk + - policy + type: object + type: array + imports: + description: List of Kinds to ensure are imported from Kubernetes. + items: + properties: + gvk: + description: The group + version + kind to apply the specified policy to + properties: + group: + description: The group of the resource to import/export + type: string + kind: + description: The kind of the resource to import/export + type: string + version: + description: The version of the resource to import/export + type: string + required: + - kind + - version + type: object + policy: + description: The policy to apply to the GVK + enum: + - all + - spec + type: string + required: + - gvk + - policy + type: object + type: array + type: object + state: + default: Present + description: The state of the dependency, either Present or Absent. + enum: + - Present + - Absent + type: string + vendor: + description: The vendor of an application that this Manifest depends on. + type: string + version: + description: |- + The version of the application this Manifest depends on or requires to be absent. + Supported values are semantic versions, basic comparisons, wildcards, e.g. v1.0.1, <=v1.0.1, >=v1.0.1, '*' (any version), v2.0.* + type: string + required: + - appName + - vendor + - version + type: object + type: array + supportedCoreVersions: + description: Supported core versions, i.e. the versions of the EDA core that this Manifest is compatible with + items: + type: string + type: array + supportedEndpoints: + description: Endpoints supported by the application described by this Manifest + items: + type: string + type: array + title: + description: Friendly name to use when displaying this Manifest, e.g. Interface + type: string + version: + description: The Version components and their respective Kinds reside in + type: string + required: + - group + - supportedCoreVersions + - title + - version + type: object + status: + description: ManifestStatus defines the observed state of Manifest + type: object + type: object +served: true +storage: true +subresources: + status: {} diff --git a/static/resources/25.8.3/memoryoverlays.components.eda.nokia.com/v1.yaml b/static/resources/25.8.3/memoryoverlays.components.eda.nokia.com/v1.yaml new file mode 100644 index 0000000..8ed1aaa --- /dev/null +++ b/static/resources/25.8.3/memoryoverlays.components.eda.nokia.com/v1.yaml @@ -0,0 +1,69 @@ +name: v1 +schema: + openAPIV3Schema: + description: MemoryOverlay is the Schema for memoryoverlays + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + description: MemoryOverlaySpec defines the desired state of MemoryOverlay + properties: + enabled: + description: Enable or disable the generation of the status of this overlay + type: boolean + topology: + description: Reference to the topology that this overlay is extending. + properties: + group: + description: The group of the application which published the topology this overlay is extending. + type: string + name: + description: The name of the resource which published the topology this overlay is extending. + type: string + version: + description: The version of the application which published the topology this overlay is extending. + type: string + required: + - group + - name + - version + type: object + uiDescription: + description: A description of the overlay to expose in the UI + type: string + uiDescriptionKey: + description: The translation key for the description of the overlay to expose in the UI + type: string + uiName: + description: The name of the overlay to expose in the UI + type: string + uiNameKey: + description: The translation key for the name of the overlay to expose in the UI + type: string + required: + - enabled + - topology + type: object + status: + description: MemoryOverlayStatus defines the observed state of MemoryOverlay + type: object + type: object +served: true +storage: true +subresources: + status: {} diff --git a/static/resources/25.8.3/mirrorfilterdeployments.filters.eda.nokia.com/v1alpha1.yaml b/static/resources/25.8.3/mirrorfilterdeployments.filters.eda.nokia.com/v1alpha1.yaml new file mode 100644 index 0000000..cd68b80 --- /dev/null +++ b/static/resources/25.8.3/mirrorfilterdeployments.filters.eda.nokia.com/v1alpha1.yaml @@ -0,0 +1,43 @@ +name: v1alpha1 +schema: + openAPIV3Schema: + description: MirrorFilterDeployment is the Schema for the mirrorfilterdeployments API + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + description: MirrorFilterDeploymentSpec defines the desired state of MirrorFilterDeployment + properties: + filter: + description: Specifies a filter to deploy on the specified Node + type: string + node: + description: Specifies a Node to deploy this filter on + type: string + required: + - filter + - node + type: object + status: + description: MirrorFilterDeploymentStatus defines the observed state of MirrorFilterDeployment + type: object + type: object +served: true +storage: true +subresources: + status: {} diff --git a/static/resources/25.8.3/mirrorfilters.filters.eda.nokia.com/v1alpha1.yaml b/static/resources/25.8.3/mirrorfilters.filters.eda.nokia.com/v1alpha1.yaml new file mode 100644 index 0000000..5ac5b5d --- /dev/null +++ b/static/resources/25.8.3/mirrorfilters.filters.eda.nokia.com/v1alpha1.yaml @@ -0,0 +1,558 @@ +name: v1alpha1 +schema: + openAPIV3Schema: + description: MirrorFilter is the Schema for the mirrorfilters API + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + description: MirrorFilter specifies a list of filtering rules for mirroring network traffic. The resource allows for the creation of ordered filter entries based on IP criteria, providing flexibility in traffic mirroring configurations. + properties: + entries: + description: Specifies the list of filter entries, in order. + items: + properties: + description: + description: Description of the FilterEntry. + type: string + ipEntry: + properties: + action: + description: An action to take, either 'Accept','Drop', or 'RateLimit'. + enum: + - Drop + - Accept + - RateLimit + type: string + destinationPortName: + description: Destination port to match by name. + enum: + - ACAP + - AFP-TCP + - ARNS + - ASF-RMCP + - ASHARE + - ATALK-RM + - AURP + - AUTH + - BFD + - BFD-ECHO + - BFTP + - BGMP + - BGP + - BOOTPC + - BOOTPS + - CCSO-NS + - CHARGEN + - CISCO-TDP + - CITADEL + - CLEARCASE + - COMMERCE + - COURIER + - DAYTIME + - DHCP-FAILOVER + - DHCPV6-CLIENT + - DHCPV6-SERVER + - DICOM + - DISCARD + - DNSIX + - DOMAIN + - DSP + - ECHO + - EPP + - ESRO + - EXEC + - FINGER + - FTP + - FTP-DATA + - FTPS + - FTPS-DATA + - GODI + - GOPHER + - GTP-C + - GTP-PRIME + - GTP-U + - HA-CLUSTER + - HOSTNAME + - HP-ALARM-MGR + - HTTP + - HTTP-ALT + - HTTP-MGMT + - HTTP-RPC + - HTTPS + - IEEE-MMS-SSL + - IMAP + - IMAP3 + - IMAPS + - IPP + - IPSEC + - IPX + - IRC + - IRIS-BEEP + - ISAKMP + - ISAKMP-NAT + - ISCSI + - ISO-TSAP + - KERBEROS + - KERBEROS-ADM + - KLOGIN + - KPASSWD + - KSHELL + - L2TP + - LDAP + - LDAPS + - LDP + - LMP + - LOGIN + - LPD + - LSP-PING + - MAC-SERVER-ADM + - MATIP-A + - MATIP-B + - MICRO-BFD + - MICROSOFT-DS + - MOBILE-IP + - MONITOR + - MPP + - MS-EXCHANGE + - MSDP + - MSP + - MSSQL-M + - MSSQL-S + - MULTIHOP-BFD + - NAS + - NCP + - NETBIOS-DATA + - NETBIOS-NS + - NETBIOS-SS + - NETNEWS + - NETRJS-1 + - NETRJS-2 + - NETRJS-3 + - NETRJS-4 + - NETWALL + - NEW-RWHO + - NFS + - NNTP + - NNTPS + - NTP + - ODMR + - OLSR + - OPENVPN + - PIM-AUTO-RP + - PKIX-TIMESTAMP + - POP2 + - POP3 + - POP3S + - PPTP + - PRINT-SRV + - PTP-EVENT + - PTP-GENERAL + - QMTP + - QOTD + - RADIUS + - RADIUS-ACCT + - REMOTE-MAIL + - REMOTEFS + - REMOTECMD + - RIP + - RJE + - RLP + - RLZDB + - RMC + - RMONITOR + - RPC2PORTMAP + - RSYNC + - RTELNET + - RTSP + - SGMP + - SILC + - SMUX + - SNA-GW + - SNMP + - SNMP-TRAP + - SNPP + - SMTP + - SQL-SVCS + - SQL + - SSH + - SUBMISSION + - SUNRPC + - SVCLOC + - SYSLOG + - SYSTAT + - TACACS + - TALK + - TCPMUX + - TCPNETHASPSRV + - TFTP + - TIME + - TIMED + - UPS + - XDMCP + - XNS-CH + - XNS-MAIL + - XNS-TIME + - Z3950 + type: string + destinationPortNumber: + description: Destination port to match by numerical value. + maximum: 65535 + minimum: 0 + type: integer + destinationPortOperator: + description: Operator to use when matching destinationPort, either Equals, GreaterOrEquals, or LessOrEquals. + enum: + - Equals + - GreaterOrEquals + - LessOrEquals + type: string + destinationPortRange: + description: Range of destination ports to match, in the format n-m, e.g. 100-200, The start and end of the range must be port numbers. + type: string + destinationPrefix: + description: Destination prefix to match. + type: string + firstFragment: + description: Match the first fragment only. + type: boolean + fragment: + description: Match any fragment. + type: boolean + icmpCode: + description: Match a specific ICMP code, as a number between 0-255, e.g. 0. + items: + type: integer + maxItems: 255 + minItems: 0 + type: array + icmpTypeName: + description: Match a specific ICMP type by name, e.g. dest-unreachable. + enum: + - DestUnreachable + - Echo + - EchoReply + - EchoRequest + - McastRtrAdv + - McastRtrSolicit + - McastRtrTerm + - MldDone + - MldQuery + - MldReport + - MldV2 + - NeighborAdvertise + - NeighborSolicit + - NodeInfoQuery + - NodeInfoResponse + - PacketTooBig + - ParamProblem + - Redirect + - RouterAdvertise + - RouterRenumber + - RouterSolicit + - SourceQuench + - TimeExceeded + - Timestamp + - TimestampReply + type: string + icmpTypeNumber: + description: Match a specific ICMP type by number. + maximum: 255 + minimum: 0 + type: integer + log: + description: Log the matches for this entry. + type: boolean + protocolName: + description: Match a specific IP protocol name (specified in the type field of the IP header). + enum: + - AH + - EGP + - EIGRP + - ESP + - GGP + - GRE + - ICMP + - ICMP6 + - IDRP + - IGMP + - IGP + - IPV4 + - IPV6 + - IPV6-DEST-OPTS + - IPV6-HOP + - L2TP + - MPLS-IN-IP + - NO-NEXT-HDR + - OSPF + - PIM + - ROHC + - RSVP + - SCTP + - ST + - TCP + - UDP + - VRRP + type: string + protocolNumber: + description: Match a specific IP protocol number (specified in the type field of the IP header). + maximum: 255 + minimum: 0 + type: integer + rateLimit: + description: Rate limit to apply when the action is 'RateLimit'. + properties: + burstSize: + description: The maximum burst size in bytes. + format: int32 + type: integer + entrySpecificPolicer: + default: false + description: 'Controls policer instantiation: false for shared instance, true for per-entry instances' + type: boolean + peakRate: + description: The peak rate in kilobytes per second. + format: int32 + type: integer + scope: + default: Global + description: Determines how the policer is applied across subinterfaces. Global applies the policer across all subinterfaces, while Subinterface applies it individually to each subinterface. + enum: + - Global + - Subinterface + type: string + type: object + sourcePortName: + description: Source port to match by name. + enum: + - ACAP + - AFP-TCP + - ARNS + - ASF-RMCP + - ASHARE + - ATALK-RM + - AURP + - AUTH + - BFD + - BFD-ECHO + - BFTP + - BGMP + - BGP + - BOOTPC + - BOOTPS + - CCSO-NS + - CHARGEN + - CISCO-TDP + - CITADEL + - CLEARCASE + - COMMERCE + - COURIER + - DAYTIME + - DHCP-FAILOVER + - DHCPV6-CLIENT + - DHCPV6-SERVER + - DICOM + - DISCARD + - DNSIX + - DOMAIN + - DSP + - ECHO + - EPP + - ESRO + - EXEC + - FINGER + - FTP + - FTP-DATA + - FTPS + - FTPS-DATA + - GODI + - GOPHER + - GTP-C + - GTP-PRIME + - GTP-U + - HA-CLUSTER + - HOSTNAME + - HP-ALARM-MGR + - HTTP + - HTTP-ALT + - HTTP-MGMT + - HTTP-RPC + - HTTPS + - IEEE-MMS-SSL + - IMAP + - IMAP3 + - IMAPS + - IPP + - IPSEC + - IPX + - IRC + - IRIS-BEEP + - ISAKMP + - ISAKMP-NAT + - ISCSI + - ISO-TSAP + - KERBEROS + - KERBEROS-ADM + - KLOGIN + - KPASSWD + - KSHELL + - L2TP + - LDAP + - LDAPS + - LDP + - LMP + - LOGIN + - LPD + - LSP-PING + - MAC-SERVER-ADM + - MATIP-A + - MATIP-B + - MICRO-BFD + - MICROSOFT-DS + - MOBILE-IP + - MONITOR + - MPP + - MS-EXCHANGE + - MSDP + - MSP + - MSSQL-M + - MSSQL-S + - MULTIHOP-BFD + - NAS + - NCP + - NETBIOS-DATA + - NETBIOS-NS + - NETBIOS-SS + - NETNEWS + - NETRJS-1 + - NETRJS-2 + - NETRJS-3 + - NETRJS-4 + - NETWALL + - NEW-RWHO + - NFS + - NNTP + - NNTPS + - NTP + - ODMR + - OLSR + - OPENVPN + - PIM-AUTO-RP + - PKIX-TIMESTAMP + - POP2 + - POP3 + - POP3S + - PPTP + - PRINT-SRV + - PTP-EVENT + - PTP-GENERAL + - QMTP + - QOTD + - RADIUS + - RADIUS-ACCT + - REMOTE-MAIL + - REMOTEFS + - REMOTECMD + - RIP + - RJE + - RLP + - RLZDB + - RMC + - RMONITOR + - RPC2PORTMAP + - RSYNC + - RTELNET + - RTSP + - SGMP + - SILC + - SMUX + - SNA-GW + - SNMP + - SNMP-TRAP + - SNPP + - SMTP + - SQL-SVCS + - SQL + - SSH + - SUBMISSION + - SUNRPC + - SVCLOC + - SYSLOG + - SYSTAT + - TACACS + - TALK + - TCPMUX + - TCPNETHASPSRV + - TFTP + - TIME + - TIMED + - UPS + - XDMCP + - XNS-CH + - XNS-MAIL + - XNS-TIME + - Z3950 + type: string + sourcePortNumber: + description: Source port to match by numerical value. + maximum: 65535 + minimum: 0 + type: integer + sourcePortOperator: + description: Operator to use when matching sourcePort, either Equals, GreaterOrEquals, or LessOrEquals. + enum: + - Equals + - GreaterOrEquals + - LessOrEquals + type: string + sourcePortRange: + description: Range of source ports to match, in the format n-m, e.g. 100-200. The start and end of the range must be port numbers. + type: string + sourcePrefix: + description: Source prefix to match. + type: string + tcpFlags: + description: Match TCP flags, usable with !, &, | and the flags RST, SYN, and ACK. + type: string + type: object + type: + default: Auto + description: Type of the entry which can be IPV4, IPV6 or Auto. + enum: + - IPV4 + - IPV6 + - Auto + type: string + required: + - type + type: object + type: array + statisticsPerEntry: + description: Enable or disable per-entry counters. + type: boolean + required: + - entries + type: object + status: + description: MirrorFilterStatus defines the observed state of MirrorFilter + type: object + type: object +served: true +storage: true +subresources: + status: {} diff --git a/static/resources/25.8.3/mirrors.oam.eda.nokia.com/v1alpha1.yaml b/static/resources/25.8.3/mirrors.oam.eda.nokia.com/v1alpha1.yaml new file mode 100644 index 0000000..e39cff3 --- /dev/null +++ b/static/resources/25.8.3/mirrors.oam.eda.nokia.com/v1alpha1.yaml @@ -0,0 +1,759 @@ +additionalPrinterColumns: + - jsonPath: .status.lastChange + name: Last Change + type: date + - jsonPath: .status.operationalState + name: Operational State + type: string +name: v1alpha1 +schema: + openAPIV3Schema: + description: Mirror is the Schema for the mirrors API + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + description: Mirror allows for the configuration of mirroring sources, including interfaces, subinterfaces, and filters, as well as the destination for the mirrored traffic, which can be either local or remote. + properties: + localDestination: + description: Local destination for the mirror, there can only be either a remote destination or local destination provisioned for a Mirror. + properties: + interface: + description: Reference to an Interface resource to send the mirrored traffic to. This must be on the same Node as the source. + type: string + vlanID: + description: Single value between 0-4094 support, or the special keyword untagged. + type: string + type: object + remoteDestination: + description: Remote destination for the mirror, there can only be either a remote destination or local destination provisioned for a Mirror. + properties: + defaultRouter: + description: Specifies the DefaultRouter to reach the remote destination of the mirror, a Router and DefaultRouter reference cannot be set at the same time. + type: string + destinationIP: + description: Remote destination IP address. When a remote destination is used for the mirror, the destinationIP is mandatory. + type: string + encapsulation: + enum: + - L2OGRE + - L3OGRE + type: string + router: + description: Specifies the Router to reach the remote destination of the mirror, a Router and DefaultRouter reference cannot be set at the same time. + type: string + sourceIP: + description: Source IP to use when sending a mirror to a remote destination. When a remote destination us used for the mirror, the sourceIP is mandatory. + type: string + type: object + sources: + description: Mirror sources. + properties: + direction: + description: The direction of the traffic being mirrored. + enum: + - Ingress + - Egress + - IngressEgress + type: string + filters: + items: + properties: + filter: + description: Emittes an MirrorFilter and uses the filter as a source for the Mirror. + properties: + entries: + description: Specifies the list of filter entries, in order. + items: + properties: + description: + description: Description of the FilterEntry. + type: string + ipEntry: + properties: + action: + description: An action to take, either 'Accept','Drop', or 'RateLimit'. + enum: + - Drop + - Accept + - RateLimit + type: string + destinationPortName: + description: Destination port to match by name. + enum: + - ACAP + - AFP-TCP + - ARNS + - ASF-RMCP + - ASHARE + - ATALK-RM + - AURP + - AUTH + - BFD + - BFD-ECHO + - BFTP + - BGMP + - BGP + - BOOTPC + - BOOTPS + - CCSO-NS + - CHARGEN + - CISCO-TDP + - CITADEL + - CLEARCASE + - COMMERCE + - COURIER + - DAYTIME + - DHCP-FAILOVER + - DHCPV6-CLIENT + - DHCPV6-SERVER + - DICOM + - DISCARD + - DNSIX + - DOMAIN + - DSP + - ECHO + - EPP + - ESRO + - EXEC + - FINGER + - FTP + - FTP-DATA + - FTPS + - FTPS-DATA + - GODI + - GOPHER + - GTP-C + - GTP-PRIME + - GTP-U + - HA-CLUSTER + - HOSTNAME + - HP-ALARM-MGR + - HTTP + - HTTP-ALT + - HTTP-MGMT + - HTTP-RPC + - HTTPS + - IEEE-MMS-SSL + - IMAP + - IMAP3 + - IMAPS + - IPP + - IPSEC + - IPX + - IRC + - IRIS-BEEP + - ISAKMP + - ISAKMP-NAT + - ISCSI + - ISO-TSAP + - KERBEROS + - KERBEROS-ADM + - KLOGIN + - KPASSWD + - KSHELL + - L2TP + - LDAP + - LDAPS + - LDP + - LMP + - LOGIN + - LPD + - LSP-PING + - MAC-SERVER-ADM + - MATIP-A + - MATIP-B + - MICRO-BFD + - MICROSOFT-DS + - MOBILE-IP + - MONITOR + - MPP + - MS-EXCHANGE + - MSDP + - MSP + - MSSQL-M + - MSSQL-S + - MULTIHOP-BFD + - NAS + - NCP + - NETBIOS-DATA + - NETBIOS-NS + - NETBIOS-SS + - NETNEWS + - NETRJS-1 + - NETRJS-2 + - NETRJS-3 + - NETRJS-4 + - NETWALL + - NEW-RWHO + - NFS + - NNTP + - NNTPS + - NTP + - ODMR + - OLSR + - OPENVPN + - PIM-AUTO-RP + - PKIX-TIMESTAMP + - POP2 + - POP3 + - POP3S + - PPTP + - PRINT-SRV + - PTP-EVENT + - PTP-GENERAL + - QMTP + - QOTD + - RADIUS + - RADIUS-ACCT + - REMOTE-MAIL + - REMOTEFS + - REMOTECMD + - RIP + - RJE + - RLP + - RLZDB + - RMC + - RMONITOR + - RPC2PORTMAP + - RSYNC + - RTELNET + - RTSP + - SGMP + - SILC + - SMUX + - SNA-GW + - SNMP + - SNMP-TRAP + - SNPP + - SMTP + - SQL-SVCS + - SQL + - SSH + - SUBMISSION + - SUNRPC + - SVCLOC + - SYSLOG + - SYSTAT + - TACACS + - TALK + - TCPMUX + - TCPNETHASPSRV + - TFTP + - TIME + - TIMED + - UPS + - XDMCP + - XNS-CH + - XNS-MAIL + - XNS-TIME + - Z3950 + type: string + destinationPortNumber: + description: Destination port to match by numerical value. + maximum: 65535 + minimum: 0 + type: integer + destinationPortOperator: + description: Operator to use when matching destinationPort, either Equals, GreaterOrEquals, or LessOrEquals. + enum: + - Equals + - GreaterOrEquals + - LessOrEquals + type: string + destinationPortRange: + description: Range of destination ports to match, in the format n-m, e.g. 100-200, The start and end of the range must be port numbers. + type: string + destinationPrefix: + description: Destination prefix to match. + type: string + firstFragment: + description: Match the first fragment only. + type: boolean + fragment: + description: Match any fragment. + type: boolean + icmpCode: + description: Match a specific ICMP code, as a number between 0-255, e.g. 0. + items: + type: integer + maxItems: 255 + minItems: 0 + type: array + icmpTypeName: + description: Match a specific ICMP type by name, e.g. dest-unreachable. + enum: + - DestUnreachable + - Echo + - EchoReply + - EchoRequest + - McastRtrAdv + - McastRtrSolicit + - McastRtrTerm + - MldDone + - MldQuery + - MldReport + - MldV2 + - NeighborAdvertise + - NeighborSolicit + - NodeInfoQuery + - NodeInfoResponse + - PacketTooBig + - ParamProblem + - Redirect + - RouterAdvertise + - RouterRenumber + - RouterSolicit + - SourceQuench + - TimeExceeded + - Timestamp + - TimestampReply + type: string + icmpTypeNumber: + description: Match a specific ICMP type by number. + maximum: 255 + minimum: 0 + type: integer + log: + description: Log the matches for this entry. + type: boolean + protocolName: + description: Match a specific IP protocol name (specified in the type field of the IP header). + enum: + - AH + - EGP + - EIGRP + - ESP + - GGP + - GRE + - ICMP + - ICMP6 + - IDRP + - IGMP + - IGP + - IPV4 + - IPV6 + - IPV6-DEST-OPTS + - IPV6-HOP + - L2TP + - MPLS-IN-IP + - NO-NEXT-HDR + - OSPF + - PIM + - ROHC + - RSVP + - SCTP + - ST + - TCP + - UDP + - VRRP + type: string + protocolNumber: + description: Match a specific IP protocol number (specified in the type field of the IP header). + maximum: 255 + minimum: 0 + type: integer + rateLimit: + description: Rate limit to apply when the action is 'RateLimit'. + properties: + burstSize: + description: The maximum burst size in bytes. + format: int32 + type: integer + entrySpecificPolicer: + default: false + description: 'Controls policer instantiation: false for shared instance, true for per-entry instances' + type: boolean + peakRate: + description: The peak rate in kilobytes per second. + format: int32 + type: integer + scope: + default: Global + description: Determines how the policer is applied across subinterfaces. Global applies the policer across all subinterfaces, while Subinterface applies it individually to each subinterface. + enum: + - Global + - Subinterface + type: string + type: object + sourcePortName: + description: Source port to match by name. + enum: + - ACAP + - AFP-TCP + - ARNS + - ASF-RMCP + - ASHARE + - ATALK-RM + - AURP + - AUTH + - BFD + - BFD-ECHO + - BFTP + - BGMP + - BGP + - BOOTPC + - BOOTPS + - CCSO-NS + - CHARGEN + - CISCO-TDP + - CITADEL + - CLEARCASE + - COMMERCE + - COURIER + - DAYTIME + - DHCP-FAILOVER + - DHCPV6-CLIENT + - DHCPV6-SERVER + - DICOM + - DISCARD + - DNSIX + - DOMAIN + - DSP + - ECHO + - EPP + - ESRO + - EXEC + - FINGER + - FTP + - FTP-DATA + - FTPS + - FTPS-DATA + - GODI + - GOPHER + - GTP-C + - GTP-PRIME + - GTP-U + - HA-CLUSTER + - HOSTNAME + - HP-ALARM-MGR + - HTTP + - HTTP-ALT + - HTTP-MGMT + - HTTP-RPC + - HTTPS + - IEEE-MMS-SSL + - IMAP + - IMAP3 + - IMAPS + - IPP + - IPSEC + - IPX + - IRC + - IRIS-BEEP + - ISAKMP + - ISAKMP-NAT + - ISCSI + - ISO-TSAP + - KERBEROS + - KERBEROS-ADM + - KLOGIN + - KPASSWD + - KSHELL + - L2TP + - LDAP + - LDAPS + - LDP + - LMP + - LOGIN + - LPD + - LSP-PING + - MAC-SERVER-ADM + - MATIP-A + - MATIP-B + - MICRO-BFD + - MICROSOFT-DS + - MOBILE-IP + - MONITOR + - MPP + - MS-EXCHANGE + - MSDP + - MSP + - MSSQL-M + - MSSQL-S + - MULTIHOP-BFD + - NAS + - NCP + - NETBIOS-DATA + - NETBIOS-NS + - NETBIOS-SS + - NETNEWS + - NETRJS-1 + - NETRJS-2 + - NETRJS-3 + - NETRJS-4 + - NETWALL + - NEW-RWHO + - NFS + - NNTP + - NNTPS + - NTP + - ODMR + - OLSR + - OPENVPN + - PIM-AUTO-RP + - PKIX-TIMESTAMP + - POP2 + - POP3 + - POP3S + - PPTP + - PRINT-SRV + - PTP-EVENT + - PTP-GENERAL + - QMTP + - QOTD + - RADIUS + - RADIUS-ACCT + - REMOTE-MAIL + - REMOTEFS + - REMOTECMD + - RIP + - RJE + - RLP + - RLZDB + - RMC + - RMONITOR + - RPC2PORTMAP + - RSYNC + - RTELNET + - RTSP + - SGMP + - SILC + - SMUX + - SNA-GW + - SNMP + - SNMP-TRAP + - SNPP + - SMTP + - SQL-SVCS + - SQL + - SSH + - SUBMISSION + - SUNRPC + - SVCLOC + - SYSLOG + - SYSTAT + - TACACS + - TALK + - TCPMUX + - TCPNETHASPSRV + - TFTP + - TIME + - TIMED + - UPS + - XDMCP + - XNS-CH + - XNS-MAIL + - XNS-TIME + - Z3950 + type: string + sourcePortNumber: + description: Source port to match by numerical value. + maximum: 65535 + minimum: 0 + type: integer + sourcePortOperator: + description: Operator to use when matching sourcePort, either Equals, GreaterOrEquals, or LessOrEquals. + enum: + - Equals + - GreaterOrEquals + - LessOrEquals + type: string + sourcePortRange: + description: Range of source ports to match, in the format n-m, e.g. 100-200. The start and end of the range must be port numbers. + type: string + sourcePrefix: + description: Source prefix to match. + type: string + tcpFlags: + description: Match TCP flags, usable with !, &, | and the flags RST, SYN, and ACK. + type: string + type: object + type: + default: Auto + description: Type of the entry which can be IPV4, IPV6 or Auto. + enum: + - IPV4 + - IPV6 + - Auto + type: string + required: + - type + type: object + type: array + statisticsPerEntry: + description: Enable or disable per-entry counters. + type: boolean + required: + - entries + type: object + subinterfaces: + description: Subinterfaces on which to deploy the IPFilter to use as a source for the Mirror. + properties: + bridgeInterfaces: + description: List of BridgeInterfaces, all traffic from all BridgeInterfaces in the list will be used as sources to be mirrored. A combination of VLANs, BridgeInterfaces and subinterfaces can be configured as sources together. + items: + type: string + type: array + subinterfaces: + description: List of Interfaces and subinterface indices + items: + properties: + index: + description: Index of the sub-interface. This is ignored on a node running SROS. + type: integer + interfaceName: + description: Reference to an Interface resource, the combination of the Interface and the specified subinterface index will build the subinterface to be used as a source of traffic to be mirrored. A combination of VLANs, BridgeInterfaces and subinterfaces can be configured as sources together. + type: string + vlan: + description: Reference to the VLAN resource under which the sub-interface is configured. This is mandatory when the sub-interface is on a node running SROS and ignored for all other node operating systems. + type: string + required: + - interfaceName + type: object + type: array + vlans: + description: List of VLAN resources, all subinterfaces attached to the VLAN will be used as sources to be mirrored. A combination of VLANs, BridgeInterfaces and subinterfaces can be configured as sources together. + items: + type: string + type: array + type: object + type: object + type: array + interfaces: + description: Reference to an Interface resource to be mirrored. Traffic from the entire Interface will be mirrored for any selected Interfaces. + properties: + interfaceSelector: + description: Select Interfaces using a label selector to be mirrored. Traffic from the entire Interface will be mirrored for any selected Interfaces. If both a label selector is used and a list of Interfaces is provided, a combination of all selected and provided interfaces will be mirrored. + items: + type: string + type: array + interfaces: + description: List of Interfaces to be mirrored. Traffic from the entire Interface will be mirrored for any selected Interfaces. If both a label selector is used and a list of Interfaces is provided, a combination of all selected and provided interfaces will be mirrored. + items: + type: string + type: array + type: object + subinterfaces: + properties: + bridgeInterfaces: + description: List of BridgeInterfaces, all traffic from all BridgeInterfaces in the list will be used as sources to be mirrored. A combination of VLANs, BridgeInterfaces and subinterfaces can be configured as sources together. + items: + type: string + type: array + subinterfaces: + description: List of Interfaces and subinterface indices + items: + properties: + index: + description: Index of the sub-interface. This is ignored on a node running SROS. + type: integer + interfaceName: + description: Reference to an Interface resource, the combination of the Interface and the specified subinterface index will build the subinterface to be used as a source of traffic to be mirrored. A combination of VLANs, BridgeInterfaces and subinterfaces can be configured as sources together. + type: string + vlan: + description: Reference to the VLAN resource under which the sub-interface is configured. This is mandatory when the sub-interface is on a node running SROS and ignored for all other node operating systems. + type: string + required: + - interfaceName + type: object + type: array + vlans: + description: List of VLAN resources, all subinterfaces attached to the VLAN will be used as sources to be mirrored. A combination of VLANs, BridgeInterfaces and subinterfaces can be configured as sources together. + items: + type: string + type: array + type: object + required: + - direction + type: object + required: + - sources + type: object + status: + description: MirrorStatus defines the observed state of Mirror + properties: + lastChange: + description: Indicates when this SubInterface last changed state. + type: string + mirrorID: + description: Mirror Identifier used as the name of the mirror. + type: string + numActiveInterfaces: + description: Total number of active Interfaces used as sources of the mirror. + type: integer + numActiveSubinterfaces: + description: Total number of active subinterfaces used as sources of the mirror. + type: integer + numActiveV4FilterSubinterfaces: + description: Total number of active subinterfaces used as sources of the mirror derived from IPV4Filter associations. + type: integer + numActiveV6FilterSubinterfaces: + description: Total number of active subinterfaces used as sources of the mirror derived from IPV6Filter associations. + type: integer + numActiveVLANSubinterfaces: + description: Total number of active subinterfaces used as sources of the mirror derived from VLAN resource references. + type: integer + numberActiveBridgeInterfaces: + description: Total number of active subinterfaces used as sources of the mirror derived from BridgeInterface resource references. + type: integer + operationalState: + description: Indicates the current operational state of the Mirror instance. + type: string + subinterfaces: + description: List of members in this Interface. + items: + properties: + configuredSource: + description: Indicates what is driving the particular subinterface to be selected as a mirror source. + enum: + - VLAN + - BridgeInterface + - Subinterface + - Interface + - FilterV4 + - FilterV6 + type: string + interface: + description: Node specific interface name. + type: string + node: + description: Reference to Node object. + type: string + operatingSystem: + description: Operating System of the Node. + type: string + subinterfaceIndex: + description: Index allocated to the subinterface which is being mirrored. If an interface is used as a source, this will not be set. + type: integer + vlanID: + description: vlan assigned to this subinterface. + type: string + required: + - configuredSource + - interface + - node + - operatingSystem + type: object + type: array + type: object + type: object +served: true +storage: true +subresources: + status: {} diff --git a/static/resources/25.8.3/mirrorstates.oam.eda.nokia.com/v1alpha1.yaml b/static/resources/25.8.3/mirrorstates.oam.eda.nokia.com/v1alpha1.yaml new file mode 100644 index 0000000..091e18c --- /dev/null +++ b/static/resources/25.8.3/mirrorstates.oam.eda.nokia.com/v1alpha1.yaml @@ -0,0 +1,73 @@ +name: v1alpha1 +schema: + openAPIV3Schema: + description: MirrorState is the Schema for the mirrorstates API + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + description: MirrorStateSpec defines the desired state of MirrorState + properties: + mirrorID: + description: Mirror Identifier used as the name of the mirror + type: string + subinterfaces: + description: List of members in this Interface + items: + properties: + configuredSource: + description: Indicates what is driving the particular subinterface to be selected as a mirror source. + enum: + - VLAN + - BridgeInterface + - Subinterface + - Interface + - FilterV4 + - FilterV6 + type: string + interface: + description: Node specific interface name. + type: string + node: + description: Reference to Node object. + type: string + operatingSystem: + description: Operating System of the Node. + type: string + subinterfaceIndex: + description: Index allocated to the subinterface which is being mirrored. If an interface is used as a source, this will not be set. + type: integer + vlanID: + description: vlan assigned to this subinterface. + type: string + required: + - configuredSource + - interface + - node + - operatingSystem + type: object + type: array + type: object + status: + description: MirrorStateStatus defines the observed state of MirrorState + type: object + type: object +served: true +storage: true +subresources: + status: {} diff --git a/static/resources/25.8.3/monitoraggregatestates.components.eda.nokia.com/v1.yaml b/static/resources/25.8.3/monitoraggregatestates.components.eda.nokia.com/v1.yaml new file mode 100644 index 0000000..b74454e --- /dev/null +++ b/static/resources/25.8.3/monitoraggregatestates.components.eda.nokia.com/v1.yaml @@ -0,0 +1,39 @@ +name: v1 +schema: + openAPIV3Schema: + description: MonitorAggregateState is the Schema for the monitoraggregatestates API + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + description: MonitorAggregateStateSpec defines the desired state of MonitorAggregateState + properties: + targets: + description: List of targets monitored by this instance + items: + type: string + type: array + type: object + status: + description: MonitorAggregateStateStatus defines the observed state of MonitorAggregateState + type: object + type: object +served: true +storage: true +subresources: + status: {} diff --git a/static/resources/25.8.3/monitoraggregatestates.system.eda.nokia.com/v1alpha1.yaml b/static/resources/25.8.3/monitoraggregatestates.system.eda.nokia.com/v1alpha1.yaml new file mode 100644 index 0000000..0189420 --- /dev/null +++ b/static/resources/25.8.3/monitoraggregatestates.system.eda.nokia.com/v1alpha1.yaml @@ -0,0 +1,39 @@ +name: v1alpha1 +schema: + openAPIV3Schema: + description: MonitorAggregateState is the Schema for the monitoraggregatestates API + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + description: MonitorAggregateStateSpec defines the desired state of MonitorAggregateState + properties: + nodes: + description: List of TopoNodes monitored by this instance + items: + type: string + type: array + type: object + status: + description: MonitorAggregateStateStatus defines the observed state of MonitorAggregateState + type: object + type: object +served: true +storage: true +subresources: + status: {} diff --git a/static/resources/25.8.3/monitors.components.eda.nokia.com/v1.yaml b/static/resources/25.8.3/monitors.components.eda.nokia.com/v1.yaml new file mode 100644 index 0000000..eb5e3dc --- /dev/null +++ b/static/resources/25.8.3/monitors.components.eda.nokia.com/v1.yaml @@ -0,0 +1,182 @@ +name: v1 +schema: + openAPIV3Schema: + description: Monitor is the Schema for the monitors API + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + description: MonitorSpec defines the desired state of Monitor + properties: + cpu: + description: CPU monitoring for targets matching this Monitor. + properties: + enabled: + default: true + description: Enable or disable CPU monitoring. + type: boolean + utilization: + description: Parameters relating to CPU utilization monitoring. + properties: + criticalThreshold: + default: 95 + description: |- + The minimum average utilization over the last 1 minute to trigger a critical alarm. + This value must be greater than the majorThreshold. + maximum: 100 + minimum: 1 + type: integer + fallingDelta: + default: 5 + description: |- + The delta in which a triggered threshold must drop below to clear an alarm. + For example, with a criticalThreshold of 90 and a fallingDelta of 5, the critical alarm will clear when the utilization drops below 85. + maximum: 25 + minimum: 1 + type: integer + majorThreshold: + default: 90 + description: |- + The minimum average utilization over the last 1 minute to trigger a major alarm. + This value must be greater than the minorThreshold. + maximum: 100 + minimum: 1 + type: integer + minorThreshold: + default: 80 + description: The minimum average utilization over the last 1 minute to trigger a minor alarm. + maximum: 100 + minimum: 1 + type: integer + type: object + required: + - enabled + type: object + memory: + description: Memory monitoring for targets matching this Monitor. + properties: + enabled: + default: true + description: Enable or disable memory monitoring. + type: boolean + utilization: + description: Parameters relating to memory utilization monitoring. + properties: + criticalThreshold: + default: 95 + description: |- + The minimum average utilization over the last 1 minute to trigger a critical alarm. + This value must be greater than the majorThreshold. + maximum: 100 + minimum: 1 + type: integer + fallingDelta: + default: 5 + description: |- + The delta in which a triggered threshold must drop below to clear an alarm. + For example, with a criticalThreshold of 90 and a fallingDelta of 5, the critical alarm will clear when the utilization drops below 85. + maximum: 25 + minimum: 1 + type: integer + majorThreshold: + default: 90 + description: |- + The minimum average utilization over the last 1 minute to trigger a major alarm. + This value must be greater than the minorThreshold. + maximum: 100 + minimum: 1 + type: integer + minorThreshold: + default: 80 + description: The minimum average utilization over the last 1 minute to trigger a minor alarm. + maximum: 100 + minimum: 1 + type: integer + type: object + required: + - enabled + type: object + targetSelector: + description: Selector to use when including targets to monitor. + items: + type: string + type: array + targets: + description: References to targets to monitor. + items: + type: string + type: array + volume: + description: Volume monitoring for targets matching this Monitor. + properties: + enabled: + default: true + description: Enable or disable volume monitoring. + type: boolean + utilization: + description: Parameters relating to volume utilization monitoring. + properties: + criticalThreshold: + default: 95 + description: |- + The minimum average utilization over the last 1 minute to trigger a critical alarm. + This value must be greater than the majorThreshold. + maximum: 100 + minimum: 1 + type: integer + fallingDelta: + default: 5 + description: |- + The delta in which a triggered threshold must drop below to clear an alarm. + For example, with a criticalThreshold of 90 and a fallingDelta of 5, the critical alarm will clear when the utilization drops below 85. + maximum: 25 + minimum: 1 + type: integer + majorThreshold: + default: 90 + description: |- + The minimum average utilization over the last 1 minute to trigger a major alarm. + This value must be greater than the minorThreshold. + maximum: 100 + minimum: 1 + type: integer + minorThreshold: + default: 80 + description: The minimum average utilization over the last 1 minute to trigger a minor alarm. + maximum: 100 + minimum: 1 + type: integer + type: object + required: + - enabled + type: object + type: object + status: + description: MonitorStatus defines the observed state of Monitor + properties: + targets: + description: Targets being monitored. + items: + type: string + type: array + type: object + type: object +served: true +storage: true +subresources: + status: {} diff --git a/static/resources/25.8.3/monitors.system.eda.nokia.com/v1alpha1.yaml b/static/resources/25.8.3/monitors.system.eda.nokia.com/v1alpha1.yaml new file mode 100644 index 0000000..7b22ea8 --- /dev/null +++ b/static/resources/25.8.3/monitors.system.eda.nokia.com/v1alpha1.yaml @@ -0,0 +1,182 @@ +name: v1alpha1 +schema: + openAPIV3Schema: + description: Monitor is the Schema for the monitors API + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + description: MonitorSpec defines the desired state of Monitor + properties: + cpu: + description: CPU monitoring for targets matching this Monitor. + properties: + enabled: + default: true + description: Enable or disable CPU monitoring. + type: boolean + utilization: + description: Parameters relating to CPU utilization monitoring. + properties: + criticalThreshold: + default: 95 + description: |- + The minimum average utilization over the last 1 minute to trigger a critical alarm. + This value must be greater than the majorThreshold. + maximum: 100 + minimum: 1 + type: integer + fallingDelta: + default: 5 + description: |- + The delta in which a triggered threshold must drop below to clear an alarm. + For example, with a criticalThreshold of 90 and a fallingDelta of 5, the critical alarm will clear when the utilization drops below 85. + maximum: 25 + minimum: 1 + type: integer + majorThreshold: + default: 90 + description: |- + The minimum average utilization over the last 1 minute to trigger a major alarm. + This value must be greater than the minorThreshold. + maximum: 100 + minimum: 1 + type: integer + minorThreshold: + default: 80 + description: The minimum average utilization over the last 1 minute to trigger a minor alarm. + maximum: 100 + minimum: 1 + type: integer + type: object + required: + - enabled + type: object + disk: + description: Disk monitoring for targets matching this Monitor. + properties: + enabled: + default: true + description: Enable or disable disk monitoring. + type: boolean + utilization: + description: Parameters relating to disk utilization monitoring. + properties: + criticalThreshold: + default: 95 + description: |- + The minimum average utilization over the last 1 minute to trigger a critical alarm. + This value must be greater than the majorThreshold. + maximum: 100 + minimum: 1 + type: integer + fallingDelta: + default: 5 + description: |- + The delta in which a triggered threshold must drop below to clear an alarm. + For example, with a criticalThreshold of 90 and a fallingDelta of 5, the critical alarm will clear when the utilization drops below 85. + maximum: 25 + minimum: 1 + type: integer + majorThreshold: + default: 90 + description: |- + The minimum average utilization over the last 1 minute to trigger a major alarm. + This value must be greater than the minorThreshold. + maximum: 100 + minimum: 1 + type: integer + minorThreshold: + default: 80 + description: The minimum average utilization over the last 1 minute to trigger a minor alarm. + maximum: 100 + minimum: 1 + type: integer + type: object + required: + - enabled + type: object + memory: + description: Memory monitoring for targets matching this Monitor. + properties: + enabled: + default: true + description: Enable or disable memory monitoring. + type: boolean + utilization: + description: Parameters relating to memory utilization monitoring. + properties: + criticalThreshold: + default: 95 + description: |- + The minimum average utilization over the last 1 minute to trigger a critical alarm. + This value must be greater than the majorThreshold. + maximum: 100 + minimum: 1 + type: integer + fallingDelta: + default: 5 + description: |- + The delta in which a triggered threshold must drop below to clear an alarm. + For example, with a criticalThreshold of 90 and a fallingDelta of 5, the critical alarm will clear when the utilization drops below 85. + maximum: 25 + minimum: 1 + type: integer + majorThreshold: + default: 90 + description: |- + The minimum average utilization over the last 1 minute to trigger a major alarm. + This value must be greater than the minorThreshold. + maximum: 100 + minimum: 1 + type: integer + minorThreshold: + default: 80 + description: The minimum average utilization over the last 1 minute to trigger a minor alarm. + maximum: 100 + minimum: 1 + type: integer + type: object + required: + - enabled + type: object + nodeSelector: + description: Selector to use when including TopoNodes to monitor. + items: + type: string + type: array + nodes: + description: References to TopoNodes to monitor. + items: + type: string + type: array + type: object + status: + description: MonitorStatus defines the observed state of Monitor + properties: + nodes: + description: TopoNodes being monitored. + items: + type: string + type: array + type: object + type: object +served: true +storage: true +subresources: + status: {} diff --git a/static/resources/25.8.3/monitorstates.components.eda.nokia.com/v1.yaml b/static/resources/25.8.3/monitorstates.components.eda.nokia.com/v1.yaml new file mode 100644 index 0000000..36ff5e5 --- /dev/null +++ b/static/resources/25.8.3/monitorstates.components.eda.nokia.com/v1.yaml @@ -0,0 +1,194 @@ +name: v1 +schema: + openAPIV3Schema: + description: MonitorState is the Schema for the monitorstates API + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + description: MonitorStateSpec defines the desired state of MonitorState + properties: + monitorSpec: + description: The spec of the input Monitor + properties: + cpu: + description: CPU monitoring for targets matching this Monitor. + properties: + enabled: + default: true + description: Enable or disable CPU monitoring. + type: boolean + utilization: + description: Parameters relating to CPU utilization monitoring. + properties: + criticalThreshold: + default: 95 + description: |- + The minimum average utilization over the last 1 minute to trigger a critical alarm. + This value must be greater than the majorThreshold. + maximum: 100 + minimum: 1 + type: integer + fallingDelta: + default: 5 + description: |- + The delta in which a triggered threshold must drop below to clear an alarm. + For example, with a criticalThreshold of 90 and a fallingDelta of 5, the critical alarm will clear when the utilization drops below 85. + maximum: 25 + minimum: 1 + type: integer + majorThreshold: + default: 90 + description: |- + The minimum average utilization over the last 1 minute to trigger a major alarm. + This value must be greater than the minorThreshold. + maximum: 100 + minimum: 1 + type: integer + minorThreshold: + default: 80 + description: The minimum average utilization over the last 1 minute to trigger a minor alarm. + maximum: 100 + minimum: 1 + type: integer + type: object + required: + - enabled + type: object + memory: + description: Memory monitoring for targets matching this Monitor. + properties: + enabled: + default: true + description: Enable or disable memory monitoring. + type: boolean + utilization: + description: Parameters relating to memory utilization monitoring. + properties: + criticalThreshold: + default: 95 + description: |- + The minimum average utilization over the last 1 minute to trigger a critical alarm. + This value must be greater than the majorThreshold. + maximum: 100 + minimum: 1 + type: integer + fallingDelta: + default: 5 + description: |- + The delta in which a triggered threshold must drop below to clear an alarm. + For example, with a criticalThreshold of 90 and a fallingDelta of 5, the critical alarm will clear when the utilization drops below 85. + maximum: 25 + minimum: 1 + type: integer + majorThreshold: + default: 90 + description: |- + The minimum average utilization over the last 1 minute to trigger a major alarm. + This value must be greater than the minorThreshold. + maximum: 100 + minimum: 1 + type: integer + minorThreshold: + default: 80 + description: The minimum average utilization over the last 1 minute to trigger a minor alarm. + maximum: 100 + minimum: 1 + type: integer + type: object + required: + - enabled + type: object + targetSelector: + description: Selector to use when including targets to monitor. + items: + type: string + type: array + targets: + description: References to targets to monitor. + items: + type: string + type: array + volume: + description: Volume monitoring for targets matching this Monitor. + properties: + enabled: + default: true + description: Enable or disable volume monitoring. + type: boolean + utilization: + description: Parameters relating to volume utilization monitoring. + properties: + criticalThreshold: + default: 95 + description: |- + The minimum average utilization over the last 1 minute to trigger a critical alarm. + This value must be greater than the majorThreshold. + maximum: 100 + minimum: 1 + type: integer + fallingDelta: + default: 5 + description: |- + The delta in which a triggered threshold must drop below to clear an alarm. + For example, with a criticalThreshold of 90 and a fallingDelta of 5, the critical alarm will clear when the utilization drops below 85. + maximum: 25 + minimum: 1 + type: integer + majorThreshold: + default: 90 + description: |- + The minimum average utilization over the last 1 minute to trigger a major alarm. + This value must be greater than the minorThreshold. + maximum: 100 + minimum: 1 + type: integer + minorThreshold: + default: 80 + description: The minimum average utilization over the last 1 minute to trigger a minor alarm. + maximum: 100 + minimum: 1 + type: integer + type: object + required: + - enabled + type: object + type: object + operatingSystem: + description: The operating system of the target being monitored + type: string + target: + description: Reference to the target being monitored + type: string + version: + description: The version of the target being monitored + type: string + required: + - monitorSpec + - operatingSystem + - target + - version + type: object + status: + description: MonitorStateStatus defines the observed state of MonitorState + type: object + type: object +served: true +storage: true +subresources: + status: {} diff --git a/static/resources/25.8.3/monitorstates.system.eda.nokia.com/v1alpha1.yaml b/static/resources/25.8.3/monitorstates.system.eda.nokia.com/v1alpha1.yaml new file mode 100644 index 0000000..7281cd4 --- /dev/null +++ b/static/resources/25.8.3/monitorstates.system.eda.nokia.com/v1alpha1.yaml @@ -0,0 +1,194 @@ +name: v1alpha1 +schema: + openAPIV3Schema: + description: MonitorState is the Schema for the monitorstates API + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + description: MonitorStateSpec defines the desired state of MonitorState + properties: + monitorSpec: + description: The spec of the input Monitor + properties: + cpu: + description: CPU monitoring for targets matching this Monitor. + properties: + enabled: + default: true + description: Enable or disable CPU monitoring. + type: boolean + utilization: + description: Parameters relating to CPU utilization monitoring. + properties: + criticalThreshold: + default: 95 + description: |- + The minimum average utilization over the last 1 minute to trigger a critical alarm. + This value must be greater than the majorThreshold. + maximum: 100 + minimum: 1 + type: integer + fallingDelta: + default: 5 + description: |- + The delta in which a triggered threshold must drop below to clear an alarm. + For example, with a criticalThreshold of 90 and a fallingDelta of 5, the critical alarm will clear when the utilization drops below 85. + maximum: 25 + minimum: 1 + type: integer + majorThreshold: + default: 90 + description: |- + The minimum average utilization over the last 1 minute to trigger a major alarm. + This value must be greater than the minorThreshold. + maximum: 100 + minimum: 1 + type: integer + minorThreshold: + default: 80 + description: The minimum average utilization over the last 1 minute to trigger a minor alarm. + maximum: 100 + minimum: 1 + type: integer + type: object + required: + - enabled + type: object + disk: + description: Disk monitoring for targets matching this Monitor. + properties: + enabled: + default: true + description: Enable or disable disk monitoring. + type: boolean + utilization: + description: Parameters relating to disk utilization monitoring. + properties: + criticalThreshold: + default: 95 + description: |- + The minimum average utilization over the last 1 minute to trigger a critical alarm. + This value must be greater than the majorThreshold. + maximum: 100 + minimum: 1 + type: integer + fallingDelta: + default: 5 + description: |- + The delta in which a triggered threshold must drop below to clear an alarm. + For example, with a criticalThreshold of 90 and a fallingDelta of 5, the critical alarm will clear when the utilization drops below 85. + maximum: 25 + minimum: 1 + type: integer + majorThreshold: + default: 90 + description: |- + The minimum average utilization over the last 1 minute to trigger a major alarm. + This value must be greater than the minorThreshold. + maximum: 100 + minimum: 1 + type: integer + minorThreshold: + default: 80 + description: The minimum average utilization over the last 1 minute to trigger a minor alarm. + maximum: 100 + minimum: 1 + type: integer + type: object + required: + - enabled + type: object + memory: + description: Memory monitoring for targets matching this Monitor. + properties: + enabled: + default: true + description: Enable or disable memory monitoring. + type: boolean + utilization: + description: Parameters relating to memory utilization monitoring. + properties: + criticalThreshold: + default: 95 + description: |- + The minimum average utilization over the last 1 minute to trigger a critical alarm. + This value must be greater than the majorThreshold. + maximum: 100 + minimum: 1 + type: integer + fallingDelta: + default: 5 + description: |- + The delta in which a triggered threshold must drop below to clear an alarm. + For example, with a criticalThreshold of 90 and a fallingDelta of 5, the critical alarm will clear when the utilization drops below 85. + maximum: 25 + minimum: 1 + type: integer + majorThreshold: + default: 90 + description: |- + The minimum average utilization over the last 1 minute to trigger a major alarm. + This value must be greater than the minorThreshold. + maximum: 100 + minimum: 1 + type: integer + minorThreshold: + default: 80 + description: The minimum average utilization over the last 1 minute to trigger a minor alarm. + maximum: 100 + minimum: 1 + type: integer + type: object + required: + - enabled + type: object + nodeSelector: + description: Selector to use when including TopoNodes to monitor. + items: + type: string + type: array + nodes: + description: References to TopoNodes to monitor. + items: + type: string + type: array + type: object + node: + description: Reference to the TopoNode being monitored + type: string + operatingSystem: + description: The operating system of the TopoNode being monitored + type: string + version: + description: The version of the TopoNode being monitored + type: string + required: + - monitorSpec + - node + - operatingSystem + - version + type: object + status: + description: MonitorStateStatus defines the observed state of MonitorState + type: object + type: object +served: true +storage: true +subresources: + status: {} diff --git a/static/resources/25.8.3/namespaces.core.eda.nokia.com/v1.yaml b/static/resources/25.8.3/namespaces.core.eda.nokia.com/v1.yaml new file mode 100644 index 0000000..fbd19f9 --- /dev/null +++ b/static/resources/25.8.3/namespaces.core.eda.nokia.com/v1.yaml @@ -0,0 +1,39 @@ +name: v1 +schema: + openAPIV3Schema: + description: Namespace is the Schema for the namespaces API + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + description: |- + A Namespace is a logical partition within the cluster that provides a mechanism for isolating resources. + Namespaces allow for resource segmentation, enabling multiple teams or applications to share the same cluster without conflict. + properties: + description: + description: An optional description of the use of the namespace. + type: string + type: object + status: + description: NamespaceStatus defines the observed state of Namespace + type: object + type: object +served: true +storage: true +subresources: + status: {} diff --git a/static/resources/25.8.3/nodeconfigs.core.eda.nokia.com/v1.yaml b/static/resources/25.8.3/nodeconfigs.core.eda.nokia.com/v1.yaml new file mode 100644 index 0000000..36330fa --- /dev/null +++ b/static/resources/25.8.3/nodeconfigs.core.eda.nokia.com/v1.yaml @@ -0,0 +1,78 @@ +name: v1 +schema: + openAPIV3Schema: + description: NodeConfig is the Schema for the nodeconfigs API + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + description: NodeConfigSpec defines the desired state of NodeConfig + properties: + configs: + description: An array of configurations (paths and corresponding configs) applied in this NodeConfig + items: + properties: + config: + description: |- + For Create/Update operations, this is a mandatory json object representing the configuration. + For Delete operation, this is an optional json array representing the fields to delete + type: string + encrypt: + description: |- + Encrypt the payload of the config. + For Delete operation, this does not apply. + type: boolean + operation: + description: Operation to perform on the configuration + enum: + - Create + - Update + - Delete + type: string + path: + description: Path to place the configuration on the node, in json path format + type: string + required: + - operation + - path + type: object + type: array + node-endpoint: + description: Reference to a TopoNode to which this config is applied + type: string + priority: + default: 0 + description: |- + Sets the priority of this NodeConfig, with lower priorities being overwritten by higher priorities. + Negative priorities may be used to indicate a lower-than-default priority. + format: int32 + maximum: 100 + minimum: -100 + type: integer + required: + - configs + - node-endpoint + type: object + status: + description: NodeConfigStatus defines the observed state of NodeConfig + type: object + type: object +served: true +storage: true +subresources: + status: {} diff --git a/static/resources/25.8.3/nodegroupdeployments.aaa.eda.nokia.com/v1alpha1.yaml b/static/resources/25.8.3/nodegroupdeployments.aaa.eda.nokia.com/v1alpha1.yaml new file mode 100644 index 0000000..06636ba --- /dev/null +++ b/static/resources/25.8.3/nodegroupdeployments.aaa.eda.nokia.com/v1alpha1.yaml @@ -0,0 +1,43 @@ +name: v1alpha1 +schema: + openAPIV3Schema: + description: NodeGroupDeployment is the Schema for the nodegroupdeployments API + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + description: NodeGroupDeploymentSpec defines the desired state of NodeGroupDeployment + properties: + group: + description: Specifies a group to deploy on the specified Node + type: string + node: + description: Specifies a Node to deploy this group on + type: string + required: + - group + - node + type: object + status: + description: NodeGroupDeploymentStatus defines the observed state of a NodeGroupDeployment + type: object + type: object +served: true +storage: true +subresources: + status: {} diff --git a/static/resources/25.8.3/nodegroups.aaa.eda.nokia.com/v1alpha1.yaml b/static/resources/25.8.3/nodegroups.aaa.eda.nokia.com/v1alpha1.yaml new file mode 100644 index 0000000..7bf41f5 --- /dev/null +++ b/static/resources/25.8.3/nodegroups.aaa.eda.nokia.com/v1alpha1.yaml @@ -0,0 +1,105 @@ +name: v1alpha1 +schema: + openAPIV3Schema: + description: NodeGroup is the Schema for the nodegroups API + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + description: |- + NodeGroup is a representation of a group on a node, including the services it has access to, any RBAC, and TACACS configuration. + NodeGroups are deployed to nodes by NodeUser or other permission-consuming resources. + properties: + groupName: + description: Set the local name for this group. If not provided, the resource name will be used. + type: string + rules: + description: Rules for this group. + items: + properties: + action: + default: ReadWrite + description: Set the action for this entry. + enum: + - Deny + - ReadWrite + - Read + type: string + match: + description: |- + Set the match for this entry. This is a string to match input against - for example "interface" for srl or "configure port" for sros. + Rules here should be specified in the target specific format. + type: string + operatingSystem: + default: srl + description: |- + Operating system to match against for this rule. + Operating system to deploy this rule to. + enum: + - srl + - sros + type: string + required: + - action + - operatingSystem + type: object + type: array + services: + description: Enabled services for this group + items: + enum: + - CLI + - FTP + - GNMI + - GNOI + - GNSI + - GRIBI + - Reflection + - JSON-RPC + - NETCONF + type: string + type: array + superuser: + description: Make members of this group superusers. + type: boolean + tacacs: + description: TACACS configuration. + properties: + privilegeLevel: + description: Set the privilege level for this group. + maximum: 15 + minimum: 0 + type: integer + type: object + required: + - services + type: object + status: + description: Deployment status of this NodeGroup. + properties: + nodes: + description: List of TopoNodes group has been deployed to. + items: + type: string + type: array + type: object + type: object +served: true +storage: true +subresources: + status: {} diff --git a/static/resources/25.8.3/nodeprofiles.core.eda.nokia.com/v1.yaml b/static/resources/25.8.3/nodeprofiles.core.eda.nokia.com/v1.yaml new file mode 100644 index 0000000..7f55d0c --- /dev/null +++ b/static/resources/25.8.3/nodeprofiles.core.eda.nokia.com/v1.yaml @@ -0,0 +1,366 @@ +additionalPrinterColumns: + - jsonPath: .spec.operatingSystem + name: OS + type: string + - jsonPath: .spec.version + name: Version + type: string + - jsonPath: .spec.nodeUser + name: Node User + type: string + - jsonPath: .spec.transport + name: Transport + type: string + - jsonPath: .spec.port + name: Port + type: string +name: v1 +schema: + openAPIV3Schema: + description: NodeProfile is the Schema for the toponodes API + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + description: NodeProfileSpec defines the desired state of NodeProfile + properties: + annotate: + default: false + description: Indicates if NPP should annotate sent configuration. + type: boolean + containerImage: + description: Container image to use when simulating TopoNodes referencing this NodeProfile, e.g. ghcr.io/nokia/srlinux:24.7.1. + type: string + dhcp: + description: DHCP options to use when onboarding the TopoNode. Optional if not bootstrapping using EDA. + properties: + dhcp4Options: + description: DHCPv4 options to return to TopoNodes referencing this NodeProfile. + items: + properties: + option: + description: DHCPv4 option to return to the TopoNode. + enum: + - 1-SubnetMask + - 2-TimeOffset + - 3-Router + - 4-TimeServer + - 5-NameServer + - 6-DomainNameServer + - 7-LogServer + - 8-QuoteServer + - 9-LPRServer + - 10-ImpressServer + - 11-ResourceLocationServer + - 12-HostName + - 13-BootFileSize + - 14-MeritDumpFile + - 15-DomainName + - 16-SwapServer + - 17-RootPath + - 18-ExtensionsPath + - 19-IPForwarding + - 20-NonLocalSourceRouting + - 21-PolicyFilter + - 22-MaximumDatagramAssemblySize + - 23-DefaultIPTTL + - 24-PathMTUAgingTimeout + - 25-PathMTUPlateauTable + - 26-InterfaceMTU + - 27-AllSubnetsAreLocal + - 28-BroadcastAddress + - 29-PerformMaskDiscovery + - 30-MaskSupplier + - 31-PerformRouterDiscovery + - 32-RouterSolicitationAddress + - 33-StaticRoutingTable + - 34-TrailerEncapsulation + - 35-ArpCacheTimeout + - 36-EthernetEncapsulation + - 37-DefaulTCPTTL + - 38-TCPKeepaliveInterval + - 39-TCPKeepaliveGarbage + - 40-NetworkInformationServiceDomain + - 41-NetworkInformationServers + - 42-NTPServers + - 43-VendorSpecificInformation + - 44-NetBIOSOverTCPIPNameServer + - 45-NetBIOSOverTCPIPDatagramDistributionServer + - 46-NetBIOSOverTCPIPNodeType + - 47-NetBIOSOverTCPIPScope + - 48-XWindowSystemFontServer + - 49-XWindowSystemDisplayManager + - 50-RequestedIPAddress + - 51-IPAddressLeaseTime + - 52-OptionOverload + - 53-DHCPMessageType + - 54-ServerIdentifier + - 55-ParameterRequestList + - 56-Message + - 57-MaximumDHCPMessageSize + - 58-RenewTimeValue + - 59-RebindingTimeValue + - 60-ClassIdentifier + - 61-ClientIdentifier + - 62-NetWareIPDomainName + - 63-NetWareIPInformation + - 64-NetworkInformationServicePlusDomain + - 65-NetworkInformationServicePlusServers + - 66-TFTPServerName + - 67-BootfileName + - 68-MobileIPHomeAgent + - 69-SimpleMailTransportProtocolServer + - 70-PostOfficeProtocolServer + - 71-NetworkNewsTransportProtocolServer + - 72-DefaultWorldWideWebServer + - 73-DefaultFingerServer + - 74-DefaultInternetRelayChatServer + - 75-StreetTalkServer + - 76-StreetTalkDirectoryAssistanceServer + - 77-UserClassInformation + - 78-SLPDirectoryAgent + - 79-SLPServiceScope + - 80-RapidCommit + - 81-FQDN + - 82-RelayAgentInformation + - 83-InternetStorageNameService + - 85-NDSServers + - 86-NDSTreeName + - 87-NDSContext + - 88-BCMCSControllerDomainNameList + - 89-BCMCSControllerIPv4AddressList + - 90-Authentication + - 91-ClientLastTransactionTime + - 92-AssociatedIP + - 93-ClientSystemArchitectureType + - 94-ClientNetworkInterfaceIdentifier + - 95-LDAP + - 97-ClientMachineIdentifier + - 98-OpenGroupUserAuthentication + - 99-GeoConfCivic + - 100-IEEE10031TZString + - 101-ReferenceToTZDatabase + - 112-NetInfoParentServerAddress + - 113-NetInfoParentServerTag + - 114-URL + - 116-AutoConfigure + - 117-NameServiceSearch + - 118-SubnetSelection + - 119-DNSDomainSearchList + - 120-SIPServers + - 121-ClasslessStaticRoute + - 122-CCC + - 123-GeoConf + - 124-VendorIdentifyingVendorClass + - 125-VendorIdentifyingVendorSpecific + - 128-TFTPServerIPAddress + - 129-CallServerIPAddress + - 130-DiscriminationString + - 131-RemoteStatisticsServerIPAddress + - 132-8021PVLANID + - 133-8021QL2Priority + - 134-DiffservCodePoint + - 135-HTTPProxyForPhoneSpecificApplications + - 136-PANAAuthenticationAgent + - 137-LoSTServer + - 138-CAPWAPAccessControllerAddresses + - 139-OPTIONIPv4AddressMoS + - 140-OPTIONIPv4FQDNMoS + - 141-SIPUAConfigurationServiceDomains + - 142-OPTIONIPv4AddressANDSF + - 143-OPTIONIPv6AddressANDSF + - 150-TFTPServerAddress + - 151-StatusCode + - 152-BaseTime + - 153-StartTimeOfState + - 154-QueryStartTime + - 155-QueryEndTime + - 156-DHCPState + - 157-DataSource + - 175-Etherboot + - 176-IPTelephone + - 177-EtherbootPacketCableAndCableHome + - 208-PXELinuxMagicString + - 209-PXELinuxConfigFile + - 210-PXELinuxPathPrefix + - 211-PXELinuxRebootTime + - 212-OPTION6RD + - 213-OPTIONv4AccessDomain + - 220-SubnetAllocation + - 221-VirtualSubnetAllocation + - 224-Reserved + - 225-Reserved + - 226-Reserved + - 227-Reserved + - 228-Reserved + - 229-Reserved + - 230-Reserved + - 231-Reserved + - 232-Reserved + - 233-Reserved + - 234-Reserved + - 235-Reserved + - 236-Reserved + - 237-Reserved + - 238-Reserved + - 239-Reserved + - 240-Reserved + - 241-Reserved + - 242-Reserved + - 243-Reserved + - 244-Reserved + - 245-Reserved + - 246-Reserved + - 247-Reserved + - 248-Reserved + - 249-Reserved + - 250-Reserved + - 251-Reserved + - 252-Reserved + - 253-Reserved + - 254-Reserved + - 255-End + type: string + value: + description: Value to return to the TopoNode for the specified option. + items: + type: string + minItems: 1 + type: array + required: + - option + - value + type: object + type: array + dhcp6Options: + description: DHCPv6 options to return to TopoNodes referencing this NodeProfile. + items: + properties: + option: + description: DHCPv6 option to return to the TopoNode. + enum: + - 59-BootfileUrl + type: string + value: + description: Value to return to the TopoNode for the specified option. + items: + type: string + minItems: 1 + type: array + required: + - option + - value + type: object + type: array + managementPoolv4: + description: IPInSubnetAllocationPool to use for IPv4 allocations of the management address for TopoNodes referencing this NodeProfile. + type: string + managementPoolv6: + description: IPInSubnetAllocationPool to use for IPv6 allocations of the management address for TopoNodes referencing this NodeProfile. + type: string + preferredAddressFamily: + description: Preferred IP address family + enum: + - IPv4 + - IPv6 + type: string + type: object + imagePullSecret: + description: Secret used to authenticate to the container registry where the container image is hosted. + type: string + images: + description: URLs hosting software images for bootstrapping TopoNodes referencing this NodeProfile. + items: + properties: + image: + description: URL hosting the software image, e.g. srlimages/srlinux-24.7.1.bin. + type: string + imageMd5: + description: URL hosting the software image md5 hash. e.g. srlimages/srlinux-24.7.1.bin.md5. + type: string + required: + - image + type: object + type: array + license: + description: ConfigMap containing a license for TopoNodes referencing this NodeProfile. + type: string + llmDb: + description: URL containing LLDB to use when interacting with LLM-DB and OpenAI for query autocompletion, e.g. http://eda-asvr/llmdb/ce-llm-db-srlinux-24.7.1.tar.gz. + type: string + nodeUser: + description: Reference to a NodeUser to use for authentication to TopoNodes referencing this NodeProfile. + type: string + onboardingPassword: + default: NokiaSrl1! + description: The password to use when onboarding TopoNodes referencing this NodeProfile, e.g. admin. + type: string + onboardingUsername: + default: admin + description: The username to use when onboarding TopoNodes referencing this NodeProfile, e.g. admin. + type: string + operatingSystem: + description: Sets the operating system of this NodeProfile, e.g. srl. + enum: + - srl + - sros + - eos + - sonic + - ios-xr + - nxos + - linux + type: string + platformPath: + description: JSPath to use for retrieving the version string from TopoNodes referencing this NodeProfile, e.g. .platform.chassis.type. + type: string + port: + default: 57400 + description: Port used to establish a connection to the TopoNode, e.g. 57400. + maximum: 65535 + minimum: 1 + type: integer + serialNumberPath: + description: JSPath to use for retrieving the serial number string from TopoNodes referencing this NodeProfile, e.g. .platform.chassis.serial-number. + type: string + version: + description: Sets the software version of this NodeProfile, e.g. 24.7.1 (for srl), or 24.7.r1 (for sros). + type: string + versionMatch: + description: Regular expression to match the node-retrieved version string to TopoNode version, e.g. v0\.0\.0.*. + type: string + versionPath: + description: JSPath to use for retrieving the version string from TopoNodes referencing this NodeProfile, e.g. .system.information.version. + type: string + yang: + description: URL containing YANG modules and schema profile to use when interacting with TopoNodes referencing this NodeProfile, e.g. http://eda-asvr/schemaprofiles/srlinux-24.7.1.zip. + type: string + required: + - nodeUser + - onboardingPassword + - onboardingUsername + - operatingSystem + - version + - yang + type: object + status: + type: object + type: object +served: true +storage: true +subresources: + status: {} diff --git a/static/resources/25.8.3/nodesecurityprofiles.core.eda.nokia.com/v1.yaml b/static/resources/25.8.3/nodesecurityprofiles.core.eda.nokia.com/v1.yaml new file mode 100644 index 0000000..acad983 --- /dev/null +++ b/static/resources/25.8.3/nodesecurityprofiles.core.eda.nokia.com/v1.yaml @@ -0,0 +1,135 @@ +name: v1 +schema: + openAPIV3Schema: + description: NodeSecurityProfile is the Schema for the nodeSecurityProfile API + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + description: NodeSecurityProfileSpec defines the desired state of NodeSecurityProfile + properties: + namespace: + description: Namespace of toponodes to be used to apply this security profile to. + type: string + nodeSelector: + description: Selector to use when selecting TopoNodes to apply this security profile to. + items: + type: string + type: array + nodes: + description: ' TopoNodes to apply this security profile to.' + items: + type: string + type: array + tls: + description: Set of TLS related attributes + properties: + csrParams: + description: A set of certificate signing request parameters used when asking for a CSR from the toponode. + properties: + certificateValidity: + default: 2160h + description: CertificateValidity defines the duration for which the certificate is considered valid after issuance. + type: string + city: + description: City denotes the city where the organization is based. + type: string + commonName: + description: CommonName specifies the common name field of the CSR, typically representing the domain name. + type: string + country: + description: Country indicates the country in which the organization is legally registered. + type: string + csrSuite: + default: CSRSUITE_X509_KEY_TYPE_RSA_2048_SIGNATURE_ALGORITHM_SHA_2_256 + description: The CSRSuite value used when asking for a CSR from the toponode + enum: + - CSRSUITE_X509_KEY_TYPE_RSA_2048_SIGNATURE_ALGORITHM_SHA_2_256 + - CSRSUITE_X509_KEY_TYPE_RSA_2048_SIGNATURE_ALGORITHM_SHA_2_384 + - CSRSUITE_X509_KEY_TYPE_RSA_2048_SIGNATURE_ALGORITHM_SHA_2_512 + - CSRSUITE_X509_KEY_TYPE_RSA_3072_SIGNATURE_ALGORITHM_SHA_2_256 + - CSRSUITE_X509_KEY_TYPE_RSA_3072_SIGNATURE_ALGORITHM_SHA_2_384 + - CSRSUITE_X509_KEY_TYPE_RSA_3072_SIGNATURE_ALGORITHM_SHA_2_512 + - CSRSUITE_X509_KEY_TYPE_RSA_4096_SIGNATURE_ALGORITHM_SHA_2_256 + - CSRSUITE_X509_KEY_TYPE_RSA_4096_SIGNATURE_ALGORITHM_SHA_2_384 + - CSRSUITE_X509_KEY_TYPE_RSA_4096_SIGNATURE_ALGORITHM_SHA_2_512 + - CSRSUITE_X509_KEY_TYPE_ECDSA_PRIME256V1_SIGNATURE_ALGORITHM_SHA_2_256 + - CSRSUITE_X509_KEY_TYPE_ECDSA_PRIME256V1_SIGNATURE_ALGORITHM_SHA_2_384 + - CSRSUITE_X509_KEY_TYPE_ECDSA_PRIME256V1_SIGNATURE_ALGORITHM_SHA_2_512 + - CSRSUITE_X509_KEY_TYPE_ECDSA_SECP384R1_SIGNATURE_ALGORITHM_SHA_2_256 + - CSRSUITE_X509_KEY_TYPE_ECDSA_SECP384R1_SIGNATURE_ALGORITHM_SHA_2_384 + - CSRSUITE_X509_KEY_TYPE_ECDSA_SECP384R1_SIGNATURE_ALGORITHM_SHA_2_512 + - CSRSUITE_X509_KEY_TYPE_ECDSA_SECP521R1_SIGNATURE_ALGORITHM_SHA_2_256 + - CSRSUITE_X509_KEY_TYPE_ECDSA_SECP521R1_SIGNATURE_ALGORITHM_SHA_2_384 + - CSRSUITE_X509_KEY_TYPE_ECDSA_SECP521R1_SIGNATURE_ALGORITHM_SHA_2_512 + - CSRSUITE_X509_KEY_TYPE_EDDSA_ED25519 + type: string + org: + description: Org is the name of the organization requesting the CSR. + type: string + orgUnit: + description: OrgUnit specifies the organizational unit (like department or division) within the organization. + type: string + san: + description: Subject Alternative Names contains additional hostnames or IP addresses covered by the CSR. + properties: + dns: + description: Dns contains a list of DNS names that can be used to access the server. + items: + type: string + type: array + emails: + description: Emails consists of email addresses that should be associated with the certificate. + items: + type: string + type: array + ips: + description: Ips includes IP addresses that the certificate should validate. + items: + type: string + type: array + uris: + description: Uris lists specific URIs that the certificate will authenticate. + items: + type: string + type: array + type: object + state: + description: State represents the state or province where the organization is located. + type: string + type: object + issuerRef: + description: Reference to a CertManager issuer that must be used to sign nodes certificates. + type: string + skipVerify: + description: Skip certificate verification. + type: boolean + trustBundle: + description: |- + Reference to configMap that contains a CA certificate that is used to verify the node certificate + when certificates are not managed by EDA. + type: string + type: object + type: object + status: + type: object + type: object +served: true +storage: true +subresources: + status: {} diff --git a/static/resources/25.8.3/nodeusers.core.eda.nokia.com/v1.yaml b/static/resources/25.8.3/nodeusers.core.eda.nokia.com/v1.yaml new file mode 100644 index 0000000..1781ecb --- /dev/null +++ b/static/resources/25.8.3/nodeusers.core.eda.nokia.com/v1.yaml @@ -0,0 +1,96 @@ +additionalPrinterColumns: + - jsonPath: .spec.username + name: Username + type: string + - jsonPath: .metadata.creationTimestamp + name: Age + type: date +name: v1 +schema: + openAPIV3Schema: + description: NodeUser is the Schemal for the nodeusers API + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + description: |- + The NodeUser resource represents a user that can be deployed to a set of TopoNodes. It supports managing the user's password, SSH keys, and group bindings. + Additionally a NodeUser is referenced by a NodeProfile to indicate how NPP should connect to TopoNodes. + properties: + groupBindings: + description: Matching of this user to node-specific permissions via groups. + items: + properties: + groups: + description: Assigned groups for this user. + items: + type: string + type: array + nodeSelector: + description: Selector to use when selecting TopoNodes to deploy this user to. + items: + type: string + type: array + nodes: + description: ' TopoNodes to deploy this user to.' + items: + type: string + type: array + required: + - groups + type: object + type: array + password: + description: Password for this user. + type: string + sshPublicKeys: + description: SSH public keys to deploy for the user. + items: + type: string + type: array + username: + description: Name of this user. If not provided, the name of the resource will be used. + maxLength: 32 + type: string + required: + - groupBindings + - password + type: object + status: + description: Deployment status of this NodeUser. + properties: + groupBindings: + description: List of TopoNodes user has been deployed to, along with corresponding groups. + items: + properties: + groups: + description: Groups this user is a member of on this node. + items: + type: string + type: array + node: + description: Node this user is deployed to. + type: string + type: object + type: array + type: object + type: object +served: true +storage: true +subresources: + status: {} diff --git a/static/resources/25.8.3/nodeuserstates.aaa.eda.nokia.com/v1alpha1.yaml b/static/resources/25.8.3/nodeuserstates.aaa.eda.nokia.com/v1alpha1.yaml new file mode 100644 index 0000000..2a012cf --- /dev/null +++ b/static/resources/25.8.3/nodeuserstates.aaa.eda.nokia.com/v1alpha1.yaml @@ -0,0 +1,48 @@ +name: v1alpha1 +schema: + openAPIV3Schema: + description: NodeUserState is the Schema for the nodeuserstates API + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + description: NodeUserStateSpec defines the desired state of NodeUserState + properties: + groupBindings: + description: List of TopoNodes user has been deployed to, along with corresponding groups. + items: + properties: + groups: + description: Groups this user is a member of on this node. + items: + type: string + type: array + node: + description: Node this user is deployed to. + type: string + type: object + type: array + type: object + status: + description: NodeUserStateStatus defines the observed state of NodeUserState + type: object + type: object +served: true +storage: true +subresources: + status: {} diff --git a/static/resources/25.8.3/ntpclients.timing.eda.nokia.com/v1alpha1.yaml b/static/resources/25.8.3/ntpclients.timing.eda.nokia.com/v1alpha1.yaml new file mode 100644 index 0000000..d7559a0 --- /dev/null +++ b/static/resources/25.8.3/ntpclients.timing.eda.nokia.com/v1alpha1.yaml @@ -0,0 +1,118 @@ +additionalPrinterColumns: + - jsonPath: .status.lastChange + name: Last Change + type: date + - jsonPath: .status.operationalState + name: Operational State + type: string +name: v1alpha1 +schema: + openAPIV3Schema: + description: NTPClient is the Schema for the ntpclients API + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + description: The NTP client allows for configuring NTP servers and the source of NTP traffic in order for the devices to synchronize their clocks. + properties: + router: + description: Router used to reach the NTP servers. + type: string + routerKind: + description: the Kind of the router used to reach the NTP servers. + enum: + - MANAGEMENTROUTER + - ROUTER + - DEFAULTROUTER + type: string + routerSelector: + description: Selects router resources based on the defined KIND. Applies to DefaultRouter only. Not supported for Router and ManagementRouter. + items: + type: string + type: array + servers: + description: A list of NTP servers, each entry in the list can either be an IP address or an FQDN. + items: + properties: + iBurst: + description: Indicates whether this server should enable burst synchronization or not + type: boolean + preferred: + description: Indicates whether this server should be preferred or not + type: boolean + server: + description: An NTP server can either be an IP address or an FQDN + type: string + required: + - server + type: object + type: array + sourceInterface: + description: Specifies a Interface resource to use as a source of NTP traffic. If none is specified the Node default behavior is used. + type: string + sourceInterfaceKind: + description: Specifies the source interface Kind to use as a source of NTP traffic. + enum: + - IRB + - ROUTED + - DEFAULT + - SYSTEM + type: string + required: + - routerKind + - servers + type: object + status: + description: NTPClientStatus defines the observed state of NTPClient + properties: + health: + description: Indicates the health score of the NTPClient + type: integer + healthScoreReason: + description: Indicates the reason for the health score + type: string + lastChange: + description: The time when the state of the resource last changed + type: string + nodes: + description: List of nodes which are not synchronized + items: + properties: + node: + description: Reference to Node object + type: string + operatingSystem: + description: Operating System of the Node + type: string + synchronized: + description: Synchronized state of the Node + type: string + required: + - node + - operatingSystem + type: object + type: array + operationalState: + description: Operational state of the NTPClient + type: string + type: object + type: object +served: true +storage: true +subresources: + status: {} diff --git a/static/resources/25.8.3/ntpclientstates.timing.eda.nokia.com/v1alpha1.yaml b/static/resources/25.8.3/ntpclientstates.timing.eda.nokia.com/v1alpha1.yaml new file mode 100644 index 0000000..004c817 --- /dev/null +++ b/static/resources/25.8.3/ntpclientstates.timing.eda.nokia.com/v1alpha1.yaml @@ -0,0 +1,52 @@ +name: v1alpha1 +schema: + openAPIV3Schema: + description: NTPClientState is the Schema for the ntpclientstates API + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + description: NTPClientStateSpec defines the desired state of NTPClientState + properties: + nodes: + description: List of Nodes on which was configured the NTPClient + items: + properties: + node: + description: Reference to Node object + type: string + operatingSystem: + description: Operating System of the Node + type: string + synchronized: + description: Synchronized state of the Node + type: string + required: + - node + - operatingSystem + type: object + type: array + type: object + status: + description: NTPClientStateStatus defines the observed state of NTPClientState + type: object + type: object +served: true +storage: true +subresources: + status: {} diff --git a/static/resources/25.8.3/pings.oam.eda.nokia.com/v1alpha1.yaml b/static/resources/25.8.3/pings.oam.eda.nokia.com/v1alpha1.yaml new file mode 100644 index 0000000..fe8e960 --- /dev/null +++ b/static/resources/25.8.3/pings.oam.eda.nokia.com/v1alpha1.yaml @@ -0,0 +1,150 @@ +additionalPrinterColumns: + - jsonPath: .spec.address + name: Address + type: string + - jsonPath: .spec.networkInstance + name: Network Instance + type: string + - jsonPath: .status.result + name: Result + type: string + - jsonPath: .metadata.creationTimestamp + name: Age + type: date +name: v1alpha1 +schema: + openAPIV3Schema: + description: Ping is the Schema for the pings API + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + description: Ping allows a ping to be initiated to a specific address on node/set of nodes. + properties: + address: + description: |- + Address to ping. + This is a single IP address (IPv4 or IPv6) or a hostname that resolves to an IP address. + type: string + count: + default: 1 + description: Count is the number of pings to send. + type: integer + networkInstance: + description: |- + The network instance to use for the ping. This is the named network instance on the node, typically "default" or some other base name. + If not specified, the default network instance will be used, which is typically the main/default/global network interface on the node. + type: string + nodeSelectors: + description: |- + List of selectors to select nodes to perform pings on. + This matches labels on TopoNode resources, including those TopoNodes in the list of nodes that pings will be performed on. + If no nodes are specified, and no node selectors are specified, all nodes in the given namespace will be selected. + items: + type: string + type: array + nodes: + description: |- + List of nodes to perform pings from. + Items in the list should be the names of the nodes, where each node will have a ping performed on it. + If no nodes are specified, and no node selectors are specified, all nodes in the given namespace will be selected. + items: + type: string + type: array + timeoutSeconds: + default: 5 + description: TimeoutSeconds is the timeout for the ping in seconds. + type: integer + required: + - address + type: object + status: + description: PingStatus defines the observed state of Ping + properties: + details: + description: |- + Details contains the results of the pings performed on each node. + Each entry in the list corresponds to a node that was pinged. + items: + properties: + details: + description: Details of the ping result, if available. + properties: + averageTimeNanoseconds: + description: Average time taken for a ping reply. + format: int64 + type: integer + maxTimeNanoseconds: + description: Maximum time taken for a ping reply. + format: int64 + type: integer + minTimeNanoseconds: + description: Minimum time taken for a ping reply. + format: int64 + type: integer + received: + description: Number of pings received. + type: integer + sent: + description: Number of pings sent. + type: integer + stdDevNanoseconds: + description: Standard deviation of time taken for all pings. + format: int64 + type: integer + totalTimeNanoseconds: + description: Total time taken for all pings. + format: int64 + type: integer + required: + - received + - sent + type: object + error: + description: Error message, if the ping failed. + type: string + networkInstance: + description: Network instance used to source the ping from. + type: string + node: + description: Node the ping was sourced from. + type: string + success: + description: Indicates if the ping was successful. + type: boolean + type: object + type: array + result: + default: Success + description: |- + Result is the overall result of the ping operation. + It can be one of the following values: + - "Success": All pings were successful. + - "Failed": No pings were successful. + - "PartialSuccess": Some pings were successful, but not all. + enum: + - Success + - Failed + - PartialSuccess + type: string + type: object + type: object +served: true +storage: true +subresources: + status: {} diff --git a/static/resources/25.8.3/policyattachments.qos.eda.nokia.com/v1.yaml b/static/resources/25.8.3/policyattachments.qos.eda.nokia.com/v1.yaml new file mode 100644 index 0000000..2cf0ad6 --- /dev/null +++ b/static/resources/25.8.3/policyattachments.qos.eda.nokia.com/v1.yaml @@ -0,0 +1,60 @@ +name: v1 +schema: + openAPIV3Schema: + description: PolicyAttachment is the Schema for the policyattachments API + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + description: PolicyAttachmentSpec defines the desired state of PolicyAttachment + properties: + attachments: + description: Specifies a list of Interfaces and subinterfaces on which to deploy the policies. + items: + properties: + interface: + description: Specifies the Interface on which to deploy the policies. + type: string + interfaceType: + description: Used for platforms that differentiate between access/service interfaces and network interface. These platforms may require different classifiers depending on whether they are applied on access/service interfaces or network interfaces. Specifies whether the classifier should be configured as a service Egress classifier or network Egress classifier + enum: + - ACCESS + - NETWORK + type: string + subInterfaceIndex: + description: Specifies the SubInterfaceIndex on which to deploy the policies. + type: integer + type: object + type: array + egressPolicy: + description: Specifies an EgressPolicy to deploy on the specified Node. + type: string + ingressPolicy: + description: Specifies the IngressPolicy to deploy on the specified Node. + type: string + required: + - attachments + type: object + status: + description: PolicyAttachmentStatus defines the observed state of PolicyAttachment + type: object + type: object +served: true +storage: true +subresources: + status: {} diff --git a/static/resources/25.8.3/policyattachments.qos.eda.nokia.com/v1alpha1.yaml b/static/resources/25.8.3/policyattachments.qos.eda.nokia.com/v1alpha1.yaml new file mode 100644 index 0000000..5bce521 --- /dev/null +++ b/static/resources/25.8.3/policyattachments.qos.eda.nokia.com/v1alpha1.yaml @@ -0,0 +1,62 @@ +deprecated: true +deprecationWarning: This version is deprecated and will no longer be supported in the next version. +name: v1alpha1 +schema: + openAPIV3Schema: + description: PolicyAttachment is the Schema for the policyattachments API + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + description: PolicyAttachmentSpec defines the desired state of PolicyAttachment + properties: + attachments: + description: Specifies a list of Interfaces and subinterfaces on which to deploy the policies. + items: + properties: + interface: + description: Specifies the Interface on which to deploy the policies. + type: string + interfaceType: + description: Used for platforms that differentiate between access/service interfaces and network interface. These platforms may require different classifiers depending on whether they are applied on access/service interfaces or network interfaces. Specifies whether the classifier should be configured as a service Egress classifier or network Egress classifier + enum: + - ACCESS + - NETWORK + type: string + subInterfaceIndex: + description: Specifies the SubInterfaceIndex on which to deploy the policies. + type: integer + type: object + type: array + egressPolicy: + description: Specifies an EgressPolicy to deploy on the specified Node. + type: string + ingressPolicy: + description: Specifies the IngressPolicy to deploy on the specified Node. + type: string + required: + - attachments + type: object + status: + description: PolicyAttachmentStatus defines the observed state of PolicyAttachment + type: object + type: object +served: true +storage: false +subresources: + status: {} diff --git a/static/resources/25.8.3/policydeployments.qos.eda.nokia.com/v1.yaml b/static/resources/25.8.3/policydeployments.qos.eda.nokia.com/v1.yaml new file mode 100644 index 0000000..86164b9 --- /dev/null +++ b/static/resources/25.8.3/policydeployments.qos.eda.nokia.com/v1.yaml @@ -0,0 +1,64 @@ +name: v1 +schema: + openAPIV3Schema: + description: PolicyDeployment is the Schema for the policydeployments API + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + description: PolicyDeploymentSpec defines the desired state of PolicyDeployment + properties: + egressPolicy: + description: Specifies an EgressPolicy to deploy on the specified Node. + type: string + ingressPolicy: + description: Specifies the IngressPolicy to deploy on the specified Node. + type: string + interfaceSelector: + description: Specifies a label selector to filter the interfaces on which to deploy the policies. + items: + type: string + type: array + interfaceType: + description: Used for platforms that differentiate between access/service interfaces and network interface. These platforms may require different classifiers depending on whether they are applied on access/service interfaces or network interfaces. Specifies whether the classifier should be configured as a service Egress classifier or network Egress classifier + enum: + - ACCESS + - NETWORK + type: string + interfaces: + description: Specifies a list of Interfaces on which to deploy the policies. + items: + type: string + type: array + node: + description: Specifies a Node to deploy the policies on. + type: string + nodeSelector: + description: Specifies a label selector to filter the nodes on which to deploy the policies. + items: + type: string + type: array + type: object + status: + description: PolicyDeploymentStatus defines the observed state of PolicyDeployment + type: object + type: object +served: true +storage: true +subresources: + status: {} diff --git a/static/resources/25.8.3/policydeployments.qos.eda.nokia.com/v1alpha1.yaml b/static/resources/25.8.3/policydeployments.qos.eda.nokia.com/v1alpha1.yaml new file mode 100644 index 0000000..2611869 --- /dev/null +++ b/static/resources/25.8.3/policydeployments.qos.eda.nokia.com/v1alpha1.yaml @@ -0,0 +1,62 @@ +deprecated: true +deprecationWarning: This version is deprecated and will no longer be supported in the next version. +name: v1alpha1 +schema: + openAPIV3Schema: + description: PolicyDeployment is the Schema for the policydeployments API + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + description: PolicyDeploymentSpec defines the desired state of PolicyDeployment + properties: + egressPolicy: + description: Specifies an EgressPolicy to deploy on the specified Node. + type: string + ingressPolicy: + description: Specifies the IngressPolicy to deploy on the specified Node. + type: string + interfaceSelector: + description: Specifies a label selector to filter the interfaces on which to deploy the policies. + type: string + interfaceType: + description: Used for platforms that differentiate between access/service interfaces and network interface. These platforms may require different classifiers depending on whether they are applied on access/service interfaces or network interfaces. Specifies whether the classifier should be configured as a service Egress classifier or network Egress classifier + enum: + - ACCESS + - NETWORK + type: string + interfaces: + description: Specifies a list of Interfaces on which to deploy the policies. + items: + type: string + type: array + node: + description: Specifies a Node to deploy the policies on. + type: string + nodeSelector: + description: Specifies a label selector to filter the nodes on which to deploy the policies. + type: string + type: object + status: + description: PolicyDeploymentStatus defines the observed state of PolicyDeployment + type: object + type: object +served: true +storage: false +subresources: + status: {} diff --git a/static/resources/25.8.3/policydeployments.routingpolicies.eda.nokia.com/v1alpha1.yaml b/static/resources/25.8.3/policydeployments.routingpolicies.eda.nokia.com/v1alpha1.yaml new file mode 100644 index 0000000..cedf3ae --- /dev/null +++ b/static/resources/25.8.3/policydeployments.routingpolicies.eda.nokia.com/v1alpha1.yaml @@ -0,0 +1,42 @@ +name: v1alpha1 +schema: + openAPIV3Schema: + description: PolicyDeployment is the Schema for the policydeployments API + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + description: PolicyDeploymentSpec defines the desired state of PolicyDeployment + properties: + node: + description: Specifies a Node to deploy this policy on + type: string + policy: + description: Specifies a Policy to deploy on the specified Node + type: string + required: + - node + type: object + status: + description: PolicyDeploymentStatus defines the observed state of PolicyDeployment + type: object + type: object +served: true +storage: true +subresources: + status: {} diff --git a/static/resources/25.8.3/policys.routingpolicies.eda.nokia.com/v1alpha1.yaml b/static/resources/25.8.3/policys.routingpolicies.eda.nokia.com/v1alpha1.yaml new file mode 100644 index 0000000..e2f89d6 --- /dev/null +++ b/static/resources/25.8.3/policys.routingpolicies.eda.nokia.com/v1alpha1.yaml @@ -0,0 +1,281 @@ +name: v1alpha1 +schema: + openAPIV3Schema: + description: Policy is the Schema for the policys API + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + description: Policy defines a set of rules and actions to manage network traffic or routing behavior, with statements that include matching conditions and actions, such as accepting or rejecting routes, or modifying route attributes like BGP parameters. + properties: + defaultAction: + description: The default action to apply if no other actions are defined. + properties: + bgp: + description: Actions related to the BGP protocol. + properties: + asPathPrepend: + description: AS number to prepend to the AS Path attributes. + format: int32 + maximum: 4294967295 + minimum: 1 + type: integer + asPathRemove: + description: Clear the AS path to make it empty. + type: boolean + asPathReplace: + description: Replace the existing AS path with a new AS_SEQUENCE containing the listed AS numbers. + items: + format: int32 + type: integer + type: array + communitySet: + description: Modify BGP communities associated with the route using hybrid Community Sets. + properties: + add: + description: List of community sets to add to the route. + items: + type: string + maxItems: 1 + type: array + remove: + description: List of community sets to remove from the route. + items: + type: string + maxItems: 1 + type: array + replace: + description: List of community sets to replace the existing communities with. Cannot be combined with Add or Remove. + items: + type: string + maxItems: 1 + type: array + type: object + localPreference: + description: Set a new LOCAL_PREF value for matching BGP routes. + format: int32 + maximum: 4294967295 + minimum: 0 + type: integer + med: + description: Set a new MED value. + properties: + numericalValue: + description: Fixed numerical value to set or add/subtract. + maximum: 4294967295 + minimum: 0 + type: integer + operation: + description: The operation to perform on the MED value. + enum: + - Set + - Add + - Subtract + type: string + valueType: + description: Use a fixed value or an IGP metric to adjust the MED. + enum: + - Fixed + - IGP + type: string + type: object + setOrigin: + description: Set a new ORIGIN attribute for matching BGP routes. + enum: + - egp + - igp + - incomplete + type: string + type: object + policyResult: + description: Final disposition for the route. + enum: + - accept + - reject + - NextPolicy + - NextStatement + type: string + type: object + statement: + description: List of policy statements. + items: + properties: + action: + description: Actions for routes that match the policy statement. + properties: + bgp: + description: Actions related to the BGP protocol. + properties: + asPathPrepend: + description: AS number to prepend to the AS Path attributes. + format: int32 + maximum: 4294967295 + minimum: 1 + type: integer + asPathRemove: + description: Clear the AS path to make it empty. + type: boolean + asPathReplace: + description: Replace the existing AS path with a new AS_SEQUENCE containing the listed AS numbers. + items: + format: int32 + type: integer + type: array + communitySet: + description: Modify BGP communities associated with the route using hybrid Community Sets. + properties: + add: + description: List of community sets to add to the route. + items: + type: string + maxItems: 1 + type: array + remove: + description: List of community sets to remove from the route. + items: + type: string + maxItems: 1 + type: array + replace: + description: List of community sets to replace the existing communities with. Cannot be combined with Add or Remove. + items: + type: string + maxItems: 1 + type: array + type: object + localPreference: + description: Set a new LOCAL_PREF value for matching BGP routes. + format: int32 + maximum: 4294967295 + minimum: 0 + type: integer + med: + description: Set a new MED value. + properties: + numericalValue: + description: Fixed numerical value to set or add/subtract. + maximum: 4294967295 + minimum: 0 + type: integer + operation: + description: The operation to perform on the MED value. + enum: + - Set + - Add + - Subtract + type: string + valueType: + description: Use a fixed value or an IGP metric to adjust the MED. + enum: + - Fixed + - IGP + type: string + type: object + setOrigin: + description: Set a new ORIGIN attribute for matching BGP routes. + enum: + - egp + - igp + - incomplete + type: string + type: object + policyResult: + description: Final disposition for the route. + enum: + - accept + - reject + - NextPolicy + - NextStatement + type: string + type: object + match: + description: Match conditions of the policy statement. + properties: + bgp: + description: Configuration for BGP-specific policy match criteria. + properties: + asPathMatch: + description: AS Path match criteria. + properties: + asPathExpression: + description: A singular regular expression string to match against AS_PATH objects. Mutually exclusive with the ASPathSet reference. + type: string + asPathSet: + description: Reference to an ASPathSet resource. Mutually exclusive with the ASPathExpression. + type: string + matchSetOptions: + description: The matching criteria that applies to the members in the referenced set. + enum: + - Any + - All + - Invert + type: string + type: object + communitySet: + description: Match conditions for BGP communities. + type: string + evpnRouteType: + description: Match conditions for EVPN route types. + items: + type: integer + type: array + type: object + family: + description: Address families that the route belongs to. + items: + type: string + type: array + prefixSet: + description: Reference to a PrefixSet resource. + type: string + protocol: + description: The route protocol type to match. + enum: + - AGGREGATE + - ARP_ND + - BGP + - BGP_EVPN + - DHCP + - GRIBI + - HOST + - ISIS + - LOCAL + - LINUX + - NDK1 + - NDK2 + - OSPFV2 + - OSPFV3 + - STATIC + type: string + type: object + name: + description: Name of the policy statement. + type: string + required: + - name + type: object + type: array + type: object + status: + description: PolicyStatus defines the observed state of Policy. + type: object + type: object +served: true +storage: true +subresources: + status: {} diff --git a/static/resources/25.8.3/powersupplies.components.eda.nokia.com/v1.yaml b/static/resources/25.8.3/powersupplies.components.eda.nokia.com/v1.yaml new file mode 100644 index 0000000..067e111 --- /dev/null +++ b/static/resources/25.8.3/powersupplies.components.eda.nokia.com/v1.yaml @@ -0,0 +1,124 @@ +name: v1 +schema: + openAPIV3Schema: + description: PowerSupply is the Schema for the powersupplies API + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + description: PowerSupplySpec defines the desired state of PowerSupply + properties: + foo: + description: |- + INSERT ADDITIONAL SPEC FIELDS - define desired state of cluster + Important: Run "edabuilder generate" to regenerate code after modifying this file + type: string + required: + - foo + type: object + status: + description: PowerSupplyStatus defines the observed state of PowerSupply + properties: + commonLanguageEquipmentIdentifier: + description: The CLEI code of this component + type: string + lastBooted: + description: The date and time this component last booted + type: string + lastChange: + description: The date and time this component last changed operational state + type: string + locatorEnabled: + description: Indicates if the locator LED for the component is active + type: boolean + manufacturedDate: + description: The date this component was manufactured + type: string + operationalState: + description: Indicates the current operational state of this component. + enum: + - Up + - Down + - Rebooting + - Unknown + - Starting + - Empty + type: string + parent: + description: Reference to a parent component + type: string + parentType: + description: Type of the parent component + enum: + - Fan + - FanTray + - PowerSupply + - PowerModule + - PowerShelf + - InterfaceModule + - ControlModule + - FabricModule + - Chassis + - Transceiver + type: string + partNumber: + description: The discovered part number of this component + type: string + removable: + description: Indicates if this component is removable + type: boolean + serialNumber: + description: The discovered serial number of this component + type: string + slot: + description: Slot this component resides in, unset for components that do not have a slot or ID + type: string + softwareVersion: + description: Version string of the software running on this component + type: string + target: + description: Target this component resides on. + type: string + temperature: + description: Temperature information for this component + properties: + alarmState: + description: The temperature alarm state, as reported by the component + type: boolean + instant: + description: The current temperature of this component + type: integer + margin: + description: The margin temperature of this component + type: integer + maximum: + description: The maximum temperature of this component + type: integer + threshold: + description: The threshold temperature of this component + type: integer + type: object + type: + description: Component type, as provided by the target + type: string + type: object + type: object +served: true +storage: true +subresources: + status: {} diff --git a/static/resources/25.8.3/prefixsetdeployments.routingpolicies.eda.nokia.com/v1alpha1.yaml b/static/resources/25.8.3/prefixsetdeployments.routingpolicies.eda.nokia.com/v1alpha1.yaml new file mode 100644 index 0000000..b886afa --- /dev/null +++ b/static/resources/25.8.3/prefixsetdeployments.routingpolicies.eda.nokia.com/v1alpha1.yaml @@ -0,0 +1,42 @@ +name: v1alpha1 +schema: + openAPIV3Schema: + description: PrefixSetDeployment is the Schema for the prefixsetdeployments API + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + description: PrefixSetDeploymentSpec defines the desired state of PrefixSetDeployment + properties: + node: + description: Specifies a Node to deploy this policy on + type: string + prefixSet: + description: Specifies a PrefixSet to deploy to the specified Node + type: string + required: + - node + type: object + status: + description: PrefixSetDeploymentStatus defines the observed state of PrefixSetDeployment + type: object + type: object +served: true +storage: true +subresources: + status: {} diff --git a/static/resources/25.8.3/prefixsets.routingpolicies.eda.nokia.com/v1alpha1.yaml b/static/resources/25.8.3/prefixsets.routingpolicies.eda.nokia.com/v1alpha1.yaml new file mode 100644 index 0000000..8b1577f --- /dev/null +++ b/static/resources/25.8.3/prefixsets.routingpolicies.eda.nokia.com/v1alpha1.yaml @@ -0,0 +1,60 @@ +name: v1alpha1 +schema: + openAPIV3Schema: + description: PrefixSet is the Schema for the prefixsets API + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + description: PrefixSet defines a collection of IP prefixes, which may include specific CIDR blocks or a range of prefixes. This set is typically used for matching routes or implementing routing policies. + properties: + prefix: + description: List of IPv4 or IPv6 prefixes in CIDR notation. + items: + properties: + endRange: + description: The end range when using a range to match prefixes. + maximum: 128 + minimum: 0 + type: integer + exact: + description: Indicates if it is an exact match. Ignores the StartRange and EndRange if this param is set. + type: boolean + prefix: + description: The IPv4 or IPv6 prefix in CIDR notation with mask. + type: string + startRange: + description: If specifying a range, this is the start of the range. + maximum: 128 + minimum: 0 + type: integer + required: + - prefix + type: object + type: array + required: + - prefix + type: object + status: + description: PrefixSetStatus defines the observed state of PrefixSet. + type: object + type: object +served: true +storage: true +subresources: + status: {} diff --git a/static/resources/25.8.3/queues.qos.eda.nokia.com/v1.yaml b/static/resources/25.8.3/queues.qos.eda.nokia.com/v1.yaml new file mode 100644 index 0000000..df58f8e --- /dev/null +++ b/static/resources/25.8.3/queues.qos.eda.nokia.com/v1.yaml @@ -0,0 +1,52 @@ +name: v1 +schema: + openAPIV3Schema: + description: Queue is the Schema for the queues API + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + description: The Queue resource is used to define the properties of a queue, which can then be referenced by other resources. + properties: + queueID: + description: The ID of the queue on which to apply the properties. This is mandatory for usage of queus on SROS and is ignored on other operating systems. + type: integer + queueType: + description: QueueType specifies whether this is a normal queue or a PFC queue + enum: + - Normal + - Pfc + type: string + trafficType: + description: The traffic type of the queue, either unicast or multicast. + enum: + - Unicast + - Multicast + type: string + required: + - queueType + - trafficType + type: object + status: + description: QueueStatus defines the observed state of Queue + type: object + type: object +served: true +storage: true +subresources: + status: {} diff --git a/static/resources/25.8.3/queues.qos.eda.nokia.com/v1alpha1.yaml b/static/resources/25.8.3/queues.qos.eda.nokia.com/v1alpha1.yaml new file mode 100644 index 0000000..7739d1c --- /dev/null +++ b/static/resources/25.8.3/queues.qos.eda.nokia.com/v1alpha1.yaml @@ -0,0 +1,54 @@ +deprecated: true +deprecationWarning: This version is deprecated and will no longer be supported in the next version. +name: v1alpha1 +schema: + openAPIV3Schema: + description: Queue is the Schema for the queues API + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + description: The Queue resource is used to define the properties of a queue, which can then be referenced by other resources. + properties: + queueID: + description: The ID of the queue on which to apply the properties. This is mandatory for usage of queus on SROS and is ignored on other operating systems. + type: integer + queueType: + description: QueueType specifies whether this is a normal queue or a PFC queue + enum: + - Normal + - Pfc + type: string + trafficType: + description: The traffic type of the queue, either unicast or multicast. + enum: + - Unicast + - Multicast + type: string + required: + - queueType + - trafficType + type: object + status: + description: QueueStatus defines the observed state of Queue + type: object + type: object +served: true +storage: false +subresources: + status: {} diff --git a/static/resources/25.8.3/registries.appstore.eda.nokia.com/v1.yaml b/static/resources/25.8.3/registries.appstore.eda.nokia.com/v1.yaml new file mode 100644 index 0000000..676fc8b --- /dev/null +++ b/static/resources/25.8.3/registries.appstore.eda.nokia.com/v1.yaml @@ -0,0 +1,79 @@ +additionalPrinterColumns: + - jsonPath: .spec.remoteURL + name: RemoteURL + type: string + - jsonPath: .spec.mirror + name: Mirror + type: string + - jsonPath: .status.reachable + name: Reachable + type: string +name: v1 +schema: + openAPIV3Schema: + description: Registry is the Schema for the Registry API + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + description: RegistrySpec defines the desired state of a Registry + properties: + authSecretRef: + description: |- + AuthSecretRef is the authentication secret reference, used for authentication. + Must be in the same namespace as the catalog. + type: string + mirror: + description: |- + Mirror registry of the original remote registry. + App store will use the mirror instead of the original registry that is referenced by a catalog. + type: string + remoteURL: + description: |- + RemoteURL is the remote URL of the registry. Supported URI schemes: 'https://' and 'http://'. + Default is HTTPS if no scheme is given. + type: string + skipTLSVerify: + default: false + description: Skip TLS Verification on connection + type: boolean + title: + description: Title is an UI-friendly name for the catalog. + maxLength: 50 + type: string + required: + - remoteURL + type: object + status: + description: RegistryStatus defines the observed state of Registry + properties: + error: + description: Error denotes the last error that was encountered by the controller. + type: string + reachable: + default: false + description: Reachable indicates if the registry is reachable. + type: boolean + required: + - error + type: object + type: object +served: true +storage: true +subresources: + status: {} diff --git a/static/resources/25.8.3/roles.core.eda.nokia.com/v1.yaml b/static/resources/25.8.3/roles.core.eda.nokia.com/v1.yaml new file mode 100644 index 0000000..f1e2566 --- /dev/null +++ b/static/resources/25.8.3/roles.core.eda.nokia.com/v1.yaml @@ -0,0 +1,128 @@ +name: v1 +schema: + openAPIV3Schema: + description: Role is the Schema for the roles API + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + description: RoleSpec defines the desired state of Role + properties: + description: + description: A description for the role. + type: string + resourceRules: + description: The rules for access to kubernetes resources + items: + description: A role rule controlling access to a kubernetes resource. + properties: + apiGroups: + description: |- + The API groups for the resources controlled by the rule. + An API group consists of an apiGroup and a version, e.g. "apigroup/version". + The API group can be a wildcard ("*"), in which case it will match any API group. + items: + minLength: 1 + type: string + minItems: 1 + type: array + permissions: + description: Permissions for resources specified by the rule. + enum: + - none + - read + - readWrite + type: string + resources: + description: |- + Names for the resources controlled by the rule. + It can be a wildcard ("*"), in which case it will match any resource + in the matching API groups. + items: + minLength: 1 + type: string + minItems: 1 + type: array + required: + - apiGroups + - permissions + - resources + type: object + type: array + tableRules: + description: The rules for access to the database tables. + items: + description: |- + A role rule controlling access to a EDB table. Note that + there is never write access to EDB. + properties: + path: + description: |- + EDB path to which this rule applies. It can end in ".*" + in which case the final portion of the table path can be anything, if the + prefix matches. It can end in ".**" in which case the table path can be + anything if the prefix matches. + minLength: 1 + pattern: ^\..* + type: string + permissions: + description: Permissions for the given EDB path. + enum: + - none + - read + type: string + required: + - path + - permissions + type: object + type: array + urlRules: + description: The rules for access to api-server proxied routes. + items: + description: A role rule controlling access to an API server proxy. + properties: + path: + description: |- + The API server URL path to which this rule applies. It can end in "/*" + in which case the final portion of the URL path can be anything, if the + prefix matches. It can end in "/**" in which case the URL path can be + anything if the prefix matches. + minLength: 1 + pattern: ^/.* + type: string + permissions: + description: The permissions for the API server URL for the rule. + enum: + - none + - read + - readWrite + type: string + required: + - path + - permissions + type: object + type: array + type: object + status: + description: RoleStatus defines the observed state of Role + type: object + type: object +served: true +storage: true +subresources: + status: {} diff --git a/static/resources/25.8.3/routedinterfaces.services.eda.nokia.com/v1.yaml b/static/resources/25.8.3/routedinterfaces.services.eda.nokia.com/v1.yaml new file mode 100644 index 0000000..ce56a01 --- /dev/null +++ b/static/resources/25.8.3/routedinterfaces.services.eda.nokia.com/v1.yaml @@ -0,0 +1,365 @@ +additionalPrinterColumns: + - jsonPath: .spec.ipMtu + name: MTU + type: string + - jsonPath: .status.operationalState + name: OperationalState + type: string + - jsonPath: .status.lastChange + name: LastChange + type: string + - jsonPath: .metadata.creationTimestamp + name: Age + type: date +name: v1 +schema: + openAPIV3Schema: + description: RoutedInterface is the Schema for the routedinterfaces API + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + description: The RoutedInterface enables the configuration and management of Layer 3 interfaces for routing traffic between different networks. This resource allows for specifying an underlying Interface and Router, configuring VLAN IDs, and setting the IP MTU. It also supports the learning of unsolicited ARPs, defining both IPv4 and IPv6 addresses, and enabling unnumbered interfaces. Advanced features such as BFD configuration, Proxy ARP/ND, and ARP timeout settings are included to ensure robust and efficient routing. + properties: + arpTimeout: + default: 14400 + description: Duration of time that dynamic ARP entries remain in the ARP cache before they expire. + format: int32 + type: integer + bfd: + description: Enables BFD on the RoutedInterface. + properties: + desiredMinTransmitInt: + default: 1000000 + description: The minimum interval in microseconds between transmission of BFD control packets. + maximum: 100000000 + minimum: 10000 + type: integer + detectionMultiplier: + default: 3 + description: The number of packets that must be missed to declare this session as down. + maximum: 20 + minimum: 3 + type: integer + enabled: + default: false + description: Enables Biforward Detection. + type: boolean + minEchoReceiveInterval: + default: 0 + description: The minimum interval between echo packets the local node can receive. + maximum: 100000000 + minimum: 0 + type: integer + requiredMinReceive: + default: 1000000 + description: The minimum interval in microseconds between received BFD control packets that this system should support. + maximum: 100000000 + minimum: 10000 + type: integer + ttl: + description: Sets custom IP TTL or Hop Limit for multi-hop BFD sessions packets. Not appllicable to single-hop BFD sessions. + maximum: 255 + minimum: 2 + type: integer + required: + - enabled + type: object + description: + description: The description of the RoutedInterface. + type: string + egress: + description: Manages actions on traffic at Egress. + properties: + filters: + description: List of Filter references to use at egress. + items: + type: string + type: array + qosPolicy: + description: List of QoS Egress policy references to use at egress. + items: + type: string + type: array + type: object + ingress: + description: Manages actions on traffic at Ingress. + properties: + filters: + description: List of Filter references to use at ingress. + items: + type: string + type: array + qosPolicy: + description: List of QoS Ingress policy references to use at ingress. + items: + type: string + type: array + type: object + interface: + description: Reference to an Interface to use for attachment. + type: string + ipMTU: + default: 1500 + description: IP MTU for the RoutedInterface. + maximum: 9486 + minimum: 1280 + type: integer + ipv4Addresses: + description: List of IPv4 addresses in IP/mask form, e.g., 192.168.0.1/24. + items: + properties: + ipPrefix: + description: Address and mask to use + type: string + primary: + description: Indicates which address to use as primary for broadcast + type: boolean + required: + - ipPrefix + type: object + type: array + ipv4Parameters: + properties: + directedBroadcast: + description: Allow receiving and forwarding of directed broadcast packets. Enabled when set to true. + type: boolean + type: object + ipv6Addresses: + description: List of IPv6 addresses in IP/mask form, e.g., fc00::1/120. + items: + properties: + ipPrefix: + description: Address and mask to use + type: string + primary: + description: Indicates which address to use as primary for broadcast + type: boolean + required: + - ipPrefix + type: object + type: array + ipv6RouterAdvertisement: + properties: + currentHopLimit: + default: 64 + description: The current hop limit to advertise in the router advertisement messages. + format: int32 + maximum: 255 + minimum: 0 + type: integer + enabled: + default: false + description: Enable or disable IPv6 router advertisements. + type: boolean + ipMTU: + description: The IP MTU to advertise in the router advertisement messages. + format: int32 + maximum: 9486 + minimum: 1280 + type: integer + managedConfigurationFlag: + default: false + description: Enable DHCPv6 for address configuration (M-bit). + type: boolean + maxAdvertisementInterval: + default: 600 + description: Maximum time between router advertisements (in seconds). + format: int32 + maximum: 1800 + minimum: 4 + type: integer + minAdvertisementInterval: + default: 200 + description: Minimum time between router advertisements (in seconds). + format: int32 + maximum: 1350 + minimum: 3 + type: integer + otherConfigurationFlag: + default: false + description: Enable DHCPv6 for other configuration (O-bit). + type: boolean + prefixes: + description: IPv6 prefixes to advertise in router advertisements. + items: + description: IPv6Prefix defines the configuration for an IPv6 prefix advertisement. + properties: + autonomousFlag: + default: true + description: When this is set in the prefix information option hosts can use the prefix for stateless address autoconfiguration (SLAAC). + type: boolean + onLinkFlag: + default: true + description: When this is set in the prefix information option hosts can use the prefix for on-link determination. + type: boolean + preferredLifetime: + default: 604800 + description: The length of time in seconds (relative to the time the packet is sent) that addresses generated from the prefix via stateless address autoconfiguration remain preferred. + format: int32 + maximum: 4294967295 + minimum: 0 + type: integer + prefix: + description: An IPv6 global unicast address prefix. + type: string + validLifetime: + default: 2592000 + description: The length of time in seconds (relative to the time the packet is sent) that the prefix is valid for the purpose of on-link determination. + format: int32 + maximum: 4294967295 + minimum: 0 + type: integer + required: + - prefix + type: object + type: array + reachableTime: + default: 0 + description: Time in milliseconds for Neighbor Unreachability Detection. + format: int32 + maximum: 3600000 + minimum: 0 + type: integer + retransmitTime: + default: 0 + description: Time in milliseconds between retransmitted NS messages. + format: int32 + maximum: 1800000 + minimum: 0 + type: integer + routerLifetime: + default: 1800 + description: Router lifetime in seconds for default gateway. + format: int32 + maximum: 9000 + minimum: 0 + type: integer + required: + - currentHopLimit + - enabled + - managedConfigurationFlag + - maxAdvertisementInterval + - minAdvertisementInterval + - otherConfigurationFlag + - retransmitTime + - routerLifetime + type: object + l3ProxyARPND: + description: L3 Proxy ARP and ND configuration. + properties: + proxyARP: + default: false + description: Select whether Proxy ARP should be enabled. + type: boolean + proxyND: + default: false + description: Select whether Proxy ND should be enabled. + type: boolean + type: object + learnUnsolicited: + default: NONE + description: Enable or disable learning of unsolicited ARPs. + enum: + - BOTH + - GLOBAL + - LINK-LOCAL + - NONE + type: string + router: + description: Reference to a Router. + type: string + unnumbered: + description: Enables the use of unnumbered interfaces on the IRBInterface. If IPv6 is specified, no IP address are configured on the sub-interface and only the link local address will be used. If any IP addresses are specified for either IPv4 or IPv6 that will take precedence and IPs will be assigned to the interfaces. (Deprecated, Use IPv6RouterAdvertisement) + enum: + - IPV6 + type: string + vlanID: + default: pool + description: Single value between 1-4094 support, ranges supported in the format x-y,x-y, or the special keyword null, any, untagged or pool for auto allocation. + type: string + vlanPool: + default: vlan-pool + description: Reference to a VLAN pool to use for allocations. + type: string + required: + - interface + - router + type: object + status: + description: RoutedInterfaceStatus defines the observed state of RoutedInterface + properties: + health: + description: Indicates the health score of the RoutedInterface. + type: integer + healthScoreReason: + description: Indicates the reason for the health score. + type: string + interfaces: + description: Sub-interface status within the RoutedInterface. + items: + properties: + enabled: + description: The administrative status of the SubInterface. + type: boolean + interface: + description: Normalized interface name. + type: string + interfaceResource: + description: Eda interface resource. + type: string + lastChange: + description: Indicates when this SubInterface last changed state. + type: string + node: + description: Reference to Node object. + type: string + nodeInterface: + description: Node specific interface name. + type: string + operatingSystem: + description: Operating System of the Node. + type: string + operationalState: + description: Indicates the current operational state of the SubInterface. + type: string + subInterfaceIndex: + description: Index allocated to the subinterface on the associated interface for the given VLAN. + type: integer + vlanID: + description: vlan assigned to this subinterface. + type: string + required: + - interface + - interfaceResource + - node + - nodeInterface + type: object + type: array + lastChange: + description: The time when the state of the resource last changed. + type: string + operationalState: + description: Operational state of the RoutedInterface. + type: string + type: object + type: object +served: true +storage: true +subresources: + status: {} diff --git a/static/resources/25.8.3/routedinterfaces.services.eda.nokia.com/v1alpha1.yaml b/static/resources/25.8.3/routedinterfaces.services.eda.nokia.com/v1alpha1.yaml new file mode 100644 index 0000000..349758e --- /dev/null +++ b/static/resources/25.8.3/routedinterfaces.services.eda.nokia.com/v1alpha1.yaml @@ -0,0 +1,367 @@ +additionalPrinterColumns: + - jsonPath: .spec.ipMtu + name: MTU + type: string + - jsonPath: .status.operationalState + name: OperationalState + type: string + - jsonPath: .status.lastChange + name: LastChange + type: string + - jsonPath: .metadata.creationTimestamp + name: Age + type: date +deprecated: true +deprecationWarning: This version is deprecated and will no longer be supported in the next version. +name: v1alpha1 +schema: + openAPIV3Schema: + description: RoutedInterface is the Schema for the routedinterfaces API + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + description: The RoutedInterface enables the configuration and management of Layer 3 interfaces for routing traffic between different networks. This resource allows for specifying an underlying Interface and Router, configuring VLAN IDs, and setting the IP MTU. It also supports the learning of unsolicited ARPs, defining both IPv4 and IPv6 addresses, and enabling unnumbered interfaces. Advanced features such as BFD configuration, Proxy ARP/ND, and ARP timeout settings are included to ensure robust and efficient routing. + properties: + arpTimeout: + default: 14400 + description: Duration of time that dynamic ARP entries remain in the ARP cache before they expire. + format: int32 + type: integer + bfd: + description: Enables BFD on the RoutedInterface. + properties: + desiredMinTransmitInt: + default: 1000000 + description: The minimum interval in microseconds between transmission of BFD control packets. + maximum: 100000000 + minimum: 10000 + type: integer + detectionMultiplier: + default: 3 + description: The number of packets that must be missed to declare this session as down. + maximum: 20 + minimum: 3 + type: integer + enabled: + default: false + description: Enables Biforward Detection. + type: boolean + minEchoReceiveInterval: + default: 0 + description: The minimum interval between echo packets the local node can receive. + maximum: 100000000 + minimum: 0 + type: integer + requiredMinReceive: + default: 1000000 + description: The minimum interval in microseconds between received BFD control packets that this system should support. + maximum: 100000000 + minimum: 10000 + type: integer + ttl: + description: Sets custom IP TTL or Hop Limit for multi-hop BFD sessions packets. Not appllicable to single-hop BFD sessions. + maximum: 255 + minimum: 2 + type: integer + required: + - enabled + type: object + description: + description: The description of the RoutedInterface. + type: string + egress: + description: Manages actions on traffic at Egress. + properties: + filters: + description: List of Filter references to use at egress. + items: + type: string + type: array + qosPolicy: + description: List of QoS Egress policy references to use at egress. + items: + type: string + type: array + type: object + ingress: + description: Manages actions on traffic at Ingress. + properties: + filters: + description: List of Filter references to use at ingress. + items: + type: string + type: array + qosPolicy: + description: List of QoS Ingress policy references to use at ingress. + items: + type: string + type: array + type: object + interface: + description: Reference to an Interface to use for attachment. + type: string + ipMTU: + default: 1500 + description: IP MTU for the RoutedInterface. + maximum: 9486 + minimum: 1280 + type: integer + ipv4Addresses: + description: List of IPv4 addresses in IP/mask form, e.g., 192.168.0.1/24. + items: + properties: + ipPrefix: + description: Address and mask to use + type: string + primary: + description: Indicates which address to use as primary for broadcast + type: boolean + required: + - ipPrefix + type: object + type: array + ipv4Parameters: + properties: + directedBroadcast: + description: Allow receiving and forwarding of directed broadcast packets. Enabled when set to true. + type: boolean + type: object + ipv6Addresses: + description: List of IPv6 addresses in IP/mask form, e.g., fc00::1/120. + items: + properties: + ipPrefix: + description: Address and mask to use + type: string + primary: + description: Indicates which address to use as primary for broadcast + type: boolean + required: + - ipPrefix + type: object + type: array + ipv6RouterAdvertisement: + properties: + currentHopLimit: + default: 64 + description: The current hop limit to advertise in the router advertisement messages. + format: int32 + maximum: 255 + minimum: 0 + type: integer + enabled: + default: false + description: Enable or disable IPv6 router advertisements. + type: boolean + ipMTU: + description: The IP MTU to advertise in the router advertisement messages. + format: int32 + maximum: 9486 + minimum: 1280 + type: integer + managedConfigurationFlag: + default: false + description: Enable DHCPv6 for address configuration (M-bit). + type: boolean + maxAdvertisementInterval: + default: 600 + description: Maximum time between router advertisements (in seconds). + format: int32 + maximum: 1800 + minimum: 4 + type: integer + minAdvertisementInterval: + default: 200 + description: Minimum time between router advertisements (in seconds). + format: int32 + maximum: 1350 + minimum: 3 + type: integer + otherConfigurationFlag: + default: false + description: Enable DHCPv6 for other configuration (O-bit). + type: boolean + prefixes: + description: IPv6 prefixes to advertise in router advertisements. + items: + description: IPv6Prefix defines the configuration for an IPv6 prefix advertisement. + properties: + autonomousFlag: + default: true + description: When this is set in the prefix information option hosts can use the prefix for stateless address autoconfiguration (SLAAC). + type: boolean + onLinkFlag: + default: true + description: When this is set in the prefix information option hosts can use the prefix for on-link determination. + type: boolean + preferredLifetime: + default: 604800 + description: The length of time in seconds (relative to the time the packet is sent) that addresses generated from the prefix via stateless address autoconfiguration remain preferred. + format: int32 + maximum: 4294967295 + minimum: 0 + type: integer + prefix: + description: An IPv6 global unicast address prefix. + type: string + validLifetime: + default: 2592000 + description: The length of time in seconds (relative to the time the packet is sent) that the prefix is valid for the purpose of on-link determination. + format: int32 + maximum: 4294967295 + minimum: 0 + type: integer + required: + - prefix + type: object + type: array + reachableTime: + default: 0 + description: Time in milliseconds for Neighbor Unreachability Detection. + format: int32 + maximum: 3600000 + minimum: 0 + type: integer + retransmitTime: + default: 0 + description: Time in milliseconds between retransmitted NS messages. + format: int32 + maximum: 1800000 + minimum: 0 + type: integer + routerLifetime: + default: 1800 + description: Router lifetime in seconds for default gateway. + format: int32 + maximum: 9000 + minimum: 0 + type: integer + required: + - currentHopLimit + - enabled + - managedConfigurationFlag + - maxAdvertisementInterval + - minAdvertisementInterval + - otherConfigurationFlag + - retransmitTime + - routerLifetime + type: object + l3ProxyARPND: + description: L3 Proxy ARP and ND configuration. + properties: + proxyARP: + default: false + description: Select whether Proxy ARP should be enabled. + type: boolean + proxyND: + default: false + description: Select whether Proxy ND should be enabled. + type: boolean + type: object + learnUnsolicited: + default: NONE + description: Enable or disable learning of unsolicited ARPs. + enum: + - BOTH + - GLOBAL + - LINK-LOCAL + - NONE + type: string + router: + description: Reference to a Router. + type: string + unnumbered: + description: Enables the use of unnumbered interfaces on the IRBInterface. If IPv6 is specified, no IP address are configured on the sub-interface and only the link local address will be used. If any IP addresses are specified for either IPv4 or IPv6 that will take precedence and IPs will be assigned to the interfaces. (Deprecated, Use IPv6RouterAdvertisement) + enum: + - IPV6 + type: string + vlanID: + default: pool + description: Single value between 1-4094 support, ranges supported in the format x-y,x-y, or the special keyword null, any, untagged or pool for auto allocation. + type: string + vlanPool: + default: vlan-pool + description: Reference to a VLAN pool to use for allocations. + type: string + required: + - interface + - router + type: object + status: + description: RoutedInterfaceStatus defines the observed state of RoutedInterface + properties: + health: + description: Indicates the health score of the RoutedInterface. + type: integer + healthScoreReason: + description: Indicates the reason for the health score. + type: string + interfaces: + description: Sub-interface status within the RoutedInterface. + items: + properties: + enabled: + description: The administrative status of the SubInterface. + type: boolean + interface: + description: Normalized interface name. + type: string + interfaceResource: + description: Eda interface resource. + type: string + lastChange: + description: Indicates when this SubInterface last changed state. + type: string + node: + description: Reference to Node object. + type: string + nodeInterface: + description: Node specific interface name. + type: string + operatingSystem: + description: Operating System of the Node. + type: string + operationalState: + description: Indicates the current operational state of the SubInterface. + type: string + subInterfaceIndex: + description: Index allocated to the subinterface on the associated interface for the given VLAN. + type: integer + vlanID: + description: vlan assigned to this subinterface. + type: string + required: + - interface + - interfaceResource + - node + - nodeInterface + type: object + type: array + lastChange: + description: The time when the state of the resource last changed. + type: string + operationalState: + description: Operational state of the RoutedInterface. + type: string + type: object + type: object +served: true +storage: false +subresources: + status: {} diff --git a/static/resources/25.8.3/routedinterfacestates.services.eda.nokia.com/v1.yaml b/static/resources/25.8.3/routedinterfacestates.services.eda.nokia.com/v1.yaml new file mode 100644 index 0000000..b329f9b --- /dev/null +++ b/static/resources/25.8.3/routedinterfacestates.services.eda.nokia.com/v1.yaml @@ -0,0 +1,102 @@ +name: v1 +schema: + openAPIV3Schema: + description: RoutedInterfaceState is the Schema for the routedinterfacestates API + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + description: RoutedInterfaceStateSpec defines the desired state of RoutedInterfaceState + properties: + interfaces: + items: + properties: + interface: + description: Normalized interface name + type: string + interfaceResource: + description: Eda interface resource + type: string + node: + description: Reference to Node object + type: string + nodeInterface: + description: Node specific interface name + type: string + nodeSubInterface: + description: Node specific subinterface name + type: string + operatingSystem: + description: Operating System of the Node + type: string + subInterfaceIndex: + description: Index allocated to the subinterface on the associated interface for the given VLAN + type: integer + vlanID: + description: vlan assigned to this subinterface + type: string + required: + - interface + - interfaceResource + - node + - nodeInterface + type: object + type: array + ipv4Addresses: + description: List of IPv4 addresses + items: + properties: + ipPrefix: + description: Address and mask to use + type: string + primary: + description: Indicates which address to use as primary for broadcast + type: boolean + required: + - ipPrefix + type: object + type: array + ipv6Addresses: + description: List of IPv6 addresses + items: + properties: + ipPrefix: + description: Address and mask to use + type: string + primary: + description: Indicates which address to use as primary for broadcast + type: boolean + required: + - ipPrefix + type: object + type: array + router: + description: Router the RoutedInterface is attached to + type: string + required: + - interfaces + - router + type: object + status: + description: RoutedInterfaceStateStatus defines the observed state of RoutedInterfaceState + type: object + type: object +served: true +storage: true +subresources: + status: {} diff --git a/static/resources/25.8.3/routedinterfacestates.services.eda.nokia.com/v1alpha1.yaml b/static/resources/25.8.3/routedinterfacestates.services.eda.nokia.com/v1alpha1.yaml new file mode 100644 index 0000000..0c7b7bf --- /dev/null +++ b/static/resources/25.8.3/routedinterfacestates.services.eda.nokia.com/v1alpha1.yaml @@ -0,0 +1,104 @@ +deprecated: true +deprecationWarning: This version is deprecated and will no longer be supported in the next version. +name: v1alpha1 +schema: + openAPIV3Schema: + description: RoutedInterfaceState is the Schema for the routedinterfacestates API + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + description: RoutedInterfaceStateSpec defines the desired state of RoutedInterfaceState + properties: + interfaces: + items: + properties: + interface: + description: Normalized interface name + type: string + interfaceResource: + description: Eda interface resource + type: string + node: + description: Reference to Node object + type: string + nodeInterface: + description: Node specific interface name + type: string + nodeSubInterface: + description: Node specific subinterface name + type: string + operatingSystem: + description: Operating System of the Node + type: string + subInterfaceIndex: + description: Index allocated to the subinterface on the associated interface for the given VLAN + type: integer + vlanID: + description: vlan assigned to this subinterface + type: string + required: + - interface + - interfaceResource + - node + - nodeInterface + type: object + type: array + ipv4Addresses: + description: List of IPv4 addresses + items: + properties: + ipPrefix: + description: Address and mask to use + type: string + primary: + description: Indicates which address to use as primary for broadcast + type: boolean + required: + - ipPrefix + type: object + type: array + ipv6Addresses: + description: List of IPv6 addresses + items: + properties: + ipPrefix: + description: Address and mask to use + type: string + primary: + description: Indicates which address to use as primary for broadcast + type: boolean + required: + - ipPrefix + type: object + type: array + router: + description: Router the RoutedInterface is attached to + type: string + required: + - interfaces + - router + type: object + status: + description: RoutedInterfaceStateStatus defines the observed state of RoutedInterfaceState + type: object + type: object +served: true +storage: false +subresources: + status: {} diff --git a/static/resources/25.8.3/routelookups.routing.eda.nokia.com/v1alpha1.yaml b/static/resources/25.8.3/routelookups.routing.eda.nokia.com/v1alpha1.yaml new file mode 100644 index 0000000..ad4b308 --- /dev/null +++ b/static/resources/25.8.3/routelookups.routing.eda.nokia.com/v1alpha1.yaml @@ -0,0 +1,134 @@ +name: v1alpha1 +schema: + openAPIV3Schema: + description: RouteLookup is the Schema for the routelookups API + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + description: |- + This workflow is used to look up routes on a set of nodes. + It takes an address, and an optional list of nodes (or node selectors - a list of label expressions) to perform the lookup on, + and returns the matching route, and the set of egress interfaces that would be used to reach it. + properties: + address: + description: |- + Address to perform a lookup for. + This is a standard IPv4 or IPv6 address, excluding mask or prefix length, e.g. 12.0.0.1. + type: string + networkInstance: + description: |- + Network Instance is the locally named network instance to use for the lookup. + Can be omitted if the default network instance is to be used. + type: string + nodeSelectors: + description: |- + Node Selectors is a list of node label selectors to execute lookups on. + This is a list of label expressions, e.g. ["eda.nokia.com/role=leaf", "eda.nokia.com/region=us-west"]. + items: + type: string + type: array + nodes: + description: Nodes is a list of node names to execute lookups on. + items: + type: string + type: array + resolve: + default: true + description: Resolve indicates whether indirect next hops should be resolved. + type: boolean + required: + - address + - resolve + type: object + status: + description: RouteLookupStatus defines the observed state of RouteLookup + properties: + found: + type: boolean + nodesWithRoute: + type: integer + results: + items: + properties: + error: + type: string + found: + type: boolean + networkInstance: + type: string + nextHopGroupId: + format: int64 + type: integer + nextHops: + items: + properties: + indirect: + properties: + ipPrefix: + type: string + nextHopGroupId: + format: int64 + type: integer + resolved: + type: boolean + type: + type: string + type: object + interfaces: + items: + properties: + name: + description: Name of the egress interface. + type: string + peerNode: + description: The node this interface is connected to. + type: string + required: + - name + type: object + type: array + ipAddress: + type: string + nextHopId: + format: int64 + type: integer + type: + type: string + type: object + type: array + node: + type: string + rawOutput: + type: string + route: + type: string + required: + - found + type: object + type: array + totalNodes: + type: integer + required: + - found + type: object + type: object +served: true +storage: true +subresources: + status: {} diff --git a/static/resources/25.8.3/routerdeployments.services.eda.nokia.com/v1.yaml b/static/resources/25.8.3/routerdeployments.services.eda.nokia.com/v1.yaml new file mode 100644 index 0000000..57971de --- /dev/null +++ b/static/resources/25.8.3/routerdeployments.services.eda.nokia.com/v1.yaml @@ -0,0 +1,43 @@ +name: v1 +schema: + openAPIV3Schema: + description: RouterDeployment is the Schema for the routerdeployments API + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + description: RouterDeploymentSpec defines the desired state of RouterDeployment + properties: + node: + description: Reference to a Node on which to push the Router + type: string + router: + description: Reference to a Router + type: string + required: + - node + - router + type: object + status: + description: RouterDeploymentStatus defines the observed state of RouterDeployment + type: object + type: object +served: true +storage: true +subresources: + status: {} diff --git a/static/resources/25.8.3/routerdeployments.services.eda.nokia.com/v1alpha1.yaml b/static/resources/25.8.3/routerdeployments.services.eda.nokia.com/v1alpha1.yaml new file mode 100644 index 0000000..69e7ec2 --- /dev/null +++ b/static/resources/25.8.3/routerdeployments.services.eda.nokia.com/v1alpha1.yaml @@ -0,0 +1,45 @@ +deprecated: true +deprecationWarning: This version is deprecated and will no longer be supported in the next version. +name: v1alpha1 +schema: + openAPIV3Schema: + description: RouterDeployment is the Schema for the routerdeployments API + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + description: RouterDeploymentSpec defines the desired state of RouterDeployment + properties: + node: + description: Reference to a Node on which to push the Router + type: string + router: + description: Reference to a Router + type: string + required: + - node + - router + type: object + status: + description: RouterDeploymentStatus defines the observed state of RouterDeployment + type: object + type: object +served: true +storage: false +subresources: + status: {} diff --git a/static/resources/25.8.3/routereflectorclients.protocols.eda.nokia.com/v1.yaml b/static/resources/25.8.3/routereflectorclients.protocols.eda.nokia.com/v1.yaml new file mode 100644 index 0000000..fe36b61 --- /dev/null +++ b/static/resources/25.8.3/routereflectorclients.protocols.eda.nokia.com/v1.yaml @@ -0,0 +1,328 @@ +additionalPrinterColumns: + - jsonPath: .status.lastChange + name: Last Change + type: date + - jsonPath: .status.operationalState + name: Operational State + type: string + - jsonPath: .status.numRouteReflectorClientBGPPeers + name: NumRouteReflectorClientBGPPeers + type: string + - jsonPath: .status.numRouteReflectorClientBGPPeersOperDown + name: NumRouteReflectorClientBGPPeersOperDown + type: string +name: v1 +schema: + openAPIV3Schema: + description: RouteReflectorClient is the Schema for the routereflectorclients API + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + description: RouteReflectorClient manages the configuration of iBGP sessions between a client and RouteReflectors. This resource allows you to specify the Interface for BGP sessions, set selectors for RouteReflectors, and configure common BGP settings. + properties: + asPathOptions: + description: AS Path Options + properties: + allowOwnAS: + default: 0 + description: The maximum number of times the global AS number or a local AS number of the BGP instance can appear in any received AS_PATH before it is considered a loop and considered invalid. + maximum: 255 + minimum: 0 + type: integer + removePrivateAS: + description: Options for removing private AS numbers (2-byte and 4-byte) from the advertised AS path towards all peers. + properties: + ignorePeerAS: + default: false + description: If set to true then do not delete or replace a private AS number that is the same as the peer AS number. + type: boolean + leadingOnly: + default: false + description: If set to true then only delete or replace private AS numbers that appear before the first occurrence of a non-private ASN in the sequence of most recent ASNs in the AS path. + type: boolean + removePrivateASMode: + default: DISABLED + description: The method by which private AS numbers are removed from the advertised AS_PATH attribute. + enum: + - DISABLED + - REPLACE + - DELETE + type: string + required: + - ignorePeerAS + - leadingOnly + - removePrivateASMode + type: object + required: + - allowOwnAS + type: object + bfd: + description: Enable or disable Bi-forward Forwarding Detection (BFD) with fast failover. + type: boolean + bgpGroup: + description: Reference to BgpGroup. + type: string + exportPolicy: + description: Reference to a Policy CR that will be used to filter routes advertised to peers. + items: + type: string + type: array + grStaleRouteTime: + description: Enables Graceful Restart on the peer and sets the stale route time. + maximum: 3600 + minimum: 1 + type: integer + importPolicy: + description: Reference to a Policy CR that will be used to filter routes received from peers. + items: + type: string + type: array + interface: + description: Reference to a RoutedInterface or IrbInterface resource whose IP will be used as a source IP for the BGP session. + type: string + interfaceKind: + description: InterfaceReference type defines whether the provided Reference is a RoutedInterface or IrbInterface. + enum: + - ROUTEDINTERFACE + - IRBINTERFACE + type: string + ipv4RouteReflectorSelector: + description: Label selector used to select the RouteReflectors to which the iBGP sessions are established for IPv4. + items: + type: string + type: array + ipv4Unicast: + description: Parameters relating to the IPv4 unicast AFI/SAFI. + properties: + advertiseIPV6NextHops: + description: Enables advertisement of IPv4 Unicast routes with IPv6 next-hops to peers. + type: boolean + enabled: + description: Enables the IPv4 unicast AFISAFI. + type: boolean + prefixLimit: + properties: + prefixLimitAccepted: + properties: + logOnly: + description: Defines the action to take when the maximum number of prefixes is exceeded. Session is reset if set to false, otherwise only a warning is logged. + type: boolean + maxReceivedRoutes: + description: Maximum number of prefixes allowed to be received from the neighbor, counting only accepted routes. + format: int32 + maximum: 4294967295 + minimum: 1 + type: integer + warningThreshold: + description: A percentage of the maximum number of prefixes that can be accepted before a warning is logged. + maximum: 100 + minimum: 1 + type: integer + type: object + prefixLimitReceived: + properties: + logOnly: + description: Defines the action to take when the maximum number of prefixes is exceeded. Session is reset if set to false, otherwise only a warning is logged. + type: boolean + maxReceivedRoutes: + description: Maximum number of prefixes allowed to be received from the neighbor, counting all routes (accepted and rejected by import policies). + format: int32 + maximum: 4294967295 + minimum: 1 + type: integer + warningThreshold: + description: A percentage of the maximum number of prefixes that can be received before a warning is logged. + maximum: 100 + minimum: 1 + type: integer + type: object + type: object + receiveIPV6NextHops: + description: Enables the advertisement of the RFC 5549 capability to receive IPv4 routes with IPv6 next-hops. + type: boolean + type: object + ipv6RouteReflectorSelector: + description: Label selector used to select the RouteReflectors to which the iBGP sessions are established for IPv6. + items: + type: string + type: array + ipv6Unicast: + description: Parameters relating to the IPv6 unicast AFI/SAFI. + properties: + enabled: + description: Enables the IPv6 unicast AFISAFI + type: boolean + prefixLimit: + properties: + prefixLimitAccepted: + properties: + logOnly: + description: Defines the action to take when the maximum number of prefixes is exceeded. Session is reset if set to false, otherwise only a warning is logged. + type: boolean + maxReceivedRoutes: + description: Maximum number of prefixes allowed to be received from the neighbor, counting only accepted routes. + format: int32 + maximum: 4294967295 + minimum: 1 + type: integer + warningThreshold: + description: A percentage of the maximum number of prefixes that can be accepted before a warning is logged. + maximum: 100 + minimum: 1 + type: integer + type: object + prefixLimitReceived: + properties: + logOnly: + description: Defines the action to take when the maximum number of prefixes is exceeded. Session is reset if set to false, otherwise only a warning is logged. + type: boolean + maxReceivedRoutes: + description: Maximum number of prefixes allowed to be received from the neighbor, counting all routes (accepted and rejected by import policies). + format: int32 + maximum: 4294967295 + minimum: 1 + type: integer + warningThreshold: + description: A percentage of the maximum number of prefixes that can be received before a warning is logged. + maximum: 100 + minimum: 1 + type: integer + type: object + type: object + type: object + keychain: + description: Reference to a Keychain resource that will be used for authentication with the BGP peer. + type: string + localAS: + description: The local autonomous system number advertised to peers. + properties: + autonomousSystem: + description: Local Autonomous System number. + maximum: 4294967295 + minimum: 1 + type: integer + prependGlobalAS: + description: When set to true, the global ASN value is prepended to the AS path in outbound routes towards each BGP peer. + type: boolean + prependLocalAS: + description: When set to true, the local AS value is prepended to the AS path of inbound routes from each EBGP peer. + type: boolean + required: + - autonomousSystem + type: object + peerAS: + description: The autonomous system number expected from peers. + properties: + autonomousSystem: + description: Local Autonomous System number. + maximum: 4294967295 + minimum: 1 + type: integer + required: + - autonomousSystem + type: object + routeReflectorIPs: + description: List of the peering IPs on the RRs to which peering session is established. + items: + type: string + type: array + sendCommunityLarge: + description: When false, all large (12 byte) BGP communities from all outbound routes advertised to the peer are stripped. + type: boolean + sendCommunityStandard: + description: When false, all standard (4 byte) communities from all outbound routes advertised to the peer are stripped. + type: boolean + sendDefaultRoute: + description: Options for controlling the generation of default routes towards BGP peers. + properties: + addressFamily: + description: Enables the sending of a synthetically generated default IPv4 or IPV6 route to each peer. + items: + enum: + - IPV4-UNICAST + - IPV6-UNICAST + type: string + type: array + exportPolicy: + description: Reference to a Policy that should be applied to the advertised default routes, in order to set their attributes to non-default values. + type: string + required: + - addressFamily + type: object + timers: + description: Timer configurations + properties: + connectRetry: + description: The time interval in seconds between successive attempts to establish a session with a peer. + maximum: 65535 + minimum: 1 + type: integer + holdTime: + description: The hold-time interval in seconds that the router proposes to the peer in its OPEN message. + maximum: 65535 + minimum: 0 + type: integer + keepAlive: + description: The interval in seconds between successive keepalive messages sent to the peer. + maximum: 21845 + minimum: 0 + type: integer + minimumAdvertisementInterval: + description: The value assigned to the MinRouteAdvertisementIntervalTimer of RFC 4271, for both EBGP and IBGP sessions. + maximum: 255 + minimum: 1 + type: integer + type: object + required: + - bgpGroup + - interface + - interfaceKind + type: object + status: + description: RouteReflectorClientStatus defines the observed state of RouteReflectorClient + properties: + health: + description: Indicates the health score of the RouteReflectorClient. + type: integer + healthScoreReason: + description: Indicates the reason for the health score. + type: string + lastChange: + description: The time when the state of the resource last changed. + type: string + numRouteReflectorClientBGPPeers: + description: Total number of configured route reflector peers on the route reflector client. + type: integer + numRouteReflectorClientBGPPeersOperDown: + description: Total number of configured route reflector peers on the route reflector client that are operationally down. + type: integer + operDownRouteReflectorClientPeers: + description: List of route reflector BGPPeers which are operationally down. + items: + type: string + type: array + operationalState: + description: Operational state of the RouteReflectorClient. + type: string + type: object + type: object +served: true +storage: true +subresources: + status: {} diff --git a/static/resources/25.8.3/routereflectorclients.protocols.eda.nokia.com/v1alpha1.yaml b/static/resources/25.8.3/routereflectorclients.protocols.eda.nokia.com/v1alpha1.yaml new file mode 100644 index 0000000..b9fbd90 --- /dev/null +++ b/static/resources/25.8.3/routereflectorclients.protocols.eda.nokia.com/v1alpha1.yaml @@ -0,0 +1,266 @@ +additionalPrinterColumns: + - jsonPath: .status.lastChange + name: Last Change + type: date + - jsonPath: .status.operationalState + name: Operational State + type: string + - jsonPath: .status.numRouteReflectorClientBGPPeers + name: NumRouteReflectorClientBGPPeers + type: string + - jsonPath: .status.numRouteReflectorClientBGPPeersOperDown + name: NumRouteReflectorClientBGPPeersOperDown + type: string +deprecated: true +deprecationWarning: This version is deprecated and will no longer be supported in the next version. +name: v1alpha1 +schema: + openAPIV3Schema: + description: RouteReflectorClient is the Schema for the routereflectorclients API + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + description: RouteReflectorClient manages the configuration of iBGP sessions between a client and RouteReflectors. This resource allows you to specify the Interface for BGP sessions, set selectors for RouteReflectors, and configure common BGP settings. + properties: + asPathOptions: + description: AS Path Options + properties: + allowOwnAS: + default: 0 + description: The maximum number of times the global AS number or a local AS number of the BGP instance can appear in any received AS_PATH before it is considered a loop and considered invalid. + maximum: 255 + minimum: 0 + type: integer + removePrivateAS: + description: Options for removing private AS numbers (2-byte and 4-byte) from the advertised AS path towards all peers. + properties: + ignorePeerAS: + default: false + description: If set to true then do not delete or replace a private AS number that is the same as the peer AS number. + type: boolean + leadingOnly: + default: false + description: If set to true then only delete or replace private AS numbers that appear before the first occurrence of a non-private ASN in the sequence of most recent ASNs in the AS path. + type: boolean + removePrivateASMode: + default: DISABLED + description: The method by which private AS numbers are removed from the advertised AS_PATH attribute. + enum: + - DISABLED + - REPLACE + - DELETE + type: string + required: + - ignorePeerAS + - leadingOnly + - removePrivateASMode + type: object + required: + - allowOwnAS + type: object + bfd: + description: Enable or disable Bi-forward Forwarding Detection (BFD) with fast failover. + type: boolean + bgpGroup: + description: Reference to BgpGroup. + type: string + exportPolicy: + description: Reference to a Policy CR that will be used to filter routes advertised to peers. + items: + type: string + type: array + grStaleRouteTime: + description: Enables Graceful Restart on the peer and sets the stale route time. + maximum: 3600 + minimum: 1 + type: integer + importPolicy: + description: Reference to a Policy CR that will be used to filter routes received from peers. + items: + type: string + type: array + interface: + description: Reference to a RoutedInterface or IrbInterface resource whose IP will be used as a source IP for the BGP session. + type: string + interfaceKind: + description: InterfaceReference type defines whether the provided Reference is a RoutedInterface or IrbInterface. + enum: + - ROUTEDINTERFACE + - IRBINTERFACE + type: string + ipv4RouteReflectorSelector: + description: Label selector used to select the RouteReflectors to which the iBGP sessions are established for IPv4. + items: + type: string + type: array + ipv4Unicast: + description: Parameters relating to the IPv4 unicast AFI/SAFI. + properties: + advertiseIPV6NextHops: + description: Enables advertisement of IPv4 Unicast routes with IPv6 next-hops to peers. + type: boolean + enabled: + description: Enables the IPv4 unicast AFISAFI. + type: boolean + maxReceivedRoutes: + description: Maximum number of IPv4 Unicast routes that will be accepted from the neighbor, counting routes accepted and rejected by import policies. + maximum: 4294967295 + minimum: 1 + type: integer + receiveIPV6NextHops: + description: Enables the advertisement of the RFC 5549 capability to receive IPv4 routes with IPv6 next-hops. + type: boolean + type: object + ipv6RouteReflectorSelector: + description: Label selector used to select the RouteReflectors to which the iBGP sessions are established for IPv6. + items: + type: string + type: array + ipv6Unicast: + description: Parameters relating to the IPv6 unicast AFI/SAFI. + properties: + enabled: + description: Enables the IPv6 unicast AFISAFI + type: boolean + maxReceivedRoutes: + description: Maximum number of IPv6 Unicast routes that will be accepted from the neighbor, counting routes accepted and rejected by import policies. + maximum: 4294967295 + minimum: 1 + type: integer + type: object + keychain: + description: Reference to a Keychain resource that will be used for authentication with the BGP peer. + type: string + localAS: + description: The local autonomous system number advertised to peers. + properties: + autonomousSystem: + description: Local Autonomous System number. + maximum: 4294967295 + minimum: 1 + type: integer + prependGlobalAS: + description: When set to true, the global ASN value is prepended to the AS path in outbound routes towards each BGP peer. + type: boolean + prependLocalAS: + description: When set to true, the local AS value is prepended to the AS path of inbound routes from each EBGP peer. + type: boolean + required: + - autonomousSystem + type: object + peerAS: + description: The autonomous system number expected from peers. + properties: + autonomousSystem: + description: Local Autonomous System number. + maximum: 4294967295 + minimum: 1 + type: integer + required: + - autonomousSystem + type: object + routeReflectorIPs: + description: List of the peering IPs on the RRs to which peering session is established. + items: + type: string + type: array + sendCommunityLarge: + description: When false, all large (12 byte) BGP communities from all outbound routes advertised to the peer are stripped. + type: boolean + sendCommunityStandard: + description: When false, all standard (4 byte) communities from all outbound routes advertised to the peer are stripped. + type: boolean + sendDefaultRoute: + description: Options for controlling the generation of default routes towards BGP peers. + properties: + addressFamily: + description: Enables the sending of a synthetically generated default IPv4 or IPV6 route to each peer. + items: + enum: + - IPV4-UNICAST + - IPV6-UNICAST + type: string + type: array + exportPolicy: + description: Reference to a Policy that should be applied to the advertised default routes, in order to set their attributes to non-default values. + type: string + required: + - addressFamily + type: object + timers: + description: Timer configurations + properties: + connectRetry: + description: The time interval in seconds between successive attempts to establish a session with a peer. + maximum: 65535 + minimum: 1 + type: integer + holdTime: + description: The hold-time interval in seconds that the router proposes to the peer in its OPEN message. + maximum: 65535 + minimum: 0 + type: integer + keepAlive: + description: The interval in seconds between successive keepalive messages sent to the peer. + maximum: 21845 + minimum: 0 + type: integer + minimumAdvertisementInterval: + description: The value assigned to the MinRouteAdvertisementIntervalTimer of RFC 4271, for both EBGP and IBGP sessions. + maximum: 255 + minimum: 1 + type: integer + type: object + required: + - bgpGroup + - interface + - interfaceKind + type: object + status: + description: RouteReflectorClientStatus defines the observed state of RouteReflectorClient + properties: + health: + description: Indicates the health score of the RouteReflectorClient. + type: integer + healthScoreReason: + description: Indicates the reason for the health score. + type: string + lastChange: + description: The time when the state of the resource last changed. + type: string + numRouteReflectorClientBGPPeers: + description: Total number of configured route reflector peers on the route reflector client. + type: integer + numRouteReflectorClientBGPPeersOperDown: + description: Total number of configured route reflector peers on the route reflector client that are operationally down. + type: integer + operDownRouteReflectorClientPeers: + description: List of route reflector BGPPeers which are operationally down. + items: + type: string + type: array + operationalState: + description: Operational state of the RouteReflectorClient. + type: string + type: object + type: object +served: true +storage: false +subresources: + status: {} diff --git a/static/resources/25.8.3/routereflectorclientstates.protocols.eda.nokia.com/v1.yaml b/static/resources/25.8.3/routereflectorclientstates.protocols.eda.nokia.com/v1.yaml new file mode 100644 index 0000000..6de6759 --- /dev/null +++ b/static/resources/25.8.3/routereflectorclientstates.protocols.eda.nokia.com/v1.yaml @@ -0,0 +1,42 @@ +name: v1 +schema: + openAPIV3Schema: + description: RouteReflectorClientState is the Schema for the routereflectorclientstates API + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + description: RouteReflectorClientStateSpec defines the desired state of RouteReflectorClientState + properties: + defaultRouteReflectorClient: + description: Denotes if the route reflector client is a DefaultRouteReflectorClient or RouteReflectorClient + type: boolean + routeReflectorClientBGPPeers: + description: A list of BGPPeers configured on the route reflector client to peer with route reflectors + items: + type: string + type: array + type: object + status: + description: RouteReflectorClientStateStatus defines the observed state of RouteReflectorClientState + type: object + type: object +served: true +storage: true +subresources: + status: {} diff --git a/static/resources/25.8.3/routereflectorclientstates.protocols.eda.nokia.com/v1alpha1.yaml b/static/resources/25.8.3/routereflectorclientstates.protocols.eda.nokia.com/v1alpha1.yaml new file mode 100644 index 0000000..003bc8e --- /dev/null +++ b/static/resources/25.8.3/routereflectorclientstates.protocols.eda.nokia.com/v1alpha1.yaml @@ -0,0 +1,44 @@ +deprecated: true +deprecationWarning: This version is deprecated and will no longer be supported in the next version. +name: v1alpha1 +schema: + openAPIV3Schema: + description: RouteReflectorClientState is the Schema for the routereflectorclientstates API + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + description: RouteReflectorClientStateSpec defines the desired state of RouteReflectorClientState + properties: + defaultRouteReflectorClient: + description: Denotes if the route reflector client is a DefaultRouteReflectorClient or RouteReflectorClient + type: boolean + routeReflectorClientBGPPeers: + description: A list of BGPPeers configured on the route reflector client to peer with route reflectors + items: + type: string + type: array + type: object + status: + description: RouteReflectorClientStateStatus defines the observed state of RouteReflectorClientState + type: object + type: object +served: true +storage: false +subresources: + status: {} diff --git a/static/resources/25.8.3/routereflectors.protocols.eda.nokia.com/v1.yaml b/static/resources/25.8.3/routereflectors.protocols.eda.nokia.com/v1.yaml new file mode 100644 index 0000000..5bf757c --- /dev/null +++ b/static/resources/25.8.3/routereflectors.protocols.eda.nokia.com/v1.yaml @@ -0,0 +1,332 @@ +additionalPrinterColumns: + - jsonPath: .status.lastChange + name: Last Change + type: date + - jsonPath: .status.operationalState + name: Operational State + type: string + - jsonPath: .status.numRouteReflectorBGPPeers + name: NumRouteReflectorBGPPeers + type: string + - jsonPath: .status.numRouteReflectorBGPPeersOperDown + name: NumRouteReflectorBGPPeersOperDown + type: string +name: v1 +schema: + openAPIV3Schema: + description: RouteReflector is the Schema for the routereflectors API + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + description: RouteReflector enables the configuration of iBGP sessions with RouteReflectorClients. It includes settings for selecting Interfaces, client selectors for IPv4 and IPv6, and the option to specify a BGP group and cluster ID. + properties: + asPathOptions: + description: AS Path Options + properties: + allowOwnAS: + default: 0 + description: The maximum number of times the global AS number or a local AS number of the BGP instance can appear in any received AS_PATH before it is considered a loop and considered invalid. + maximum: 255 + minimum: 0 + type: integer + removePrivateAS: + description: Options for removing private AS numbers (2-byte and 4-byte) from the advertised AS path towards all peers. + properties: + ignorePeerAS: + default: false + description: If set to true then do not delete or replace a private AS number that is the same as the peer AS number. + type: boolean + leadingOnly: + default: false + description: If set to true then only delete or replace private AS numbers that appear before the first occurrence of a non-private ASN in the sequence of most recent ASNs in the AS path. + type: boolean + removePrivateASMode: + default: DISABLED + description: The method by which private AS numbers are removed from the advertised AS_PATH attribute. + enum: + - DISABLED + - REPLACE + - DELETE + type: string + required: + - ignorePeerAS + - leadingOnly + - removePrivateASMode + type: object + required: + - allowOwnAS + type: object + bfd: + description: Enable or disable Bi-forward Forwarding Detection (BFD) with fast failover. + type: boolean + bgpGroup: + description: Reference to BgpGroup + type: string + clientIPs: + description: List of RR client IPs to which the iBGP sessions are established. + items: + type: string + type: array + clusterID: + description: Sets the cluster ID for route reflectors. + type: string + exportPolicy: + description: Reference to a Policy CR that will be used to filter routes advertised to peers. + items: + type: string + type: array + grStaleRouteTime: + description: Enables Graceful Restart on the peer and sets the stale route time. + maximum: 3600 + minimum: 1 + type: integer + importPolicy: + description: Reference to a Policy CR that will be used to filter routes received from peers. + items: + type: string + type: array + interface: + description: Reference to a RoutedInterface or IrbInterface resource whose IP will be used as a source IP for the BGP session. + type: string + interfaceKind: + description: InterfaceReference type defines whether the provided Reference is a RoutedInterface or IrbInterface. + enum: + - ROUTEDINTERFACE + - IRBINTERFACE + type: string + ipv4ClientSelector: + description: Label selector used to select the RouteReflectorClients to which the iBGP sessions are established for IPv4. + items: + type: string + type: array + ipv4Unicast: + description: Parameters relating to the IPv4 unicast AFI/SAFI. + properties: + advertiseIPV6NextHops: + description: Enables advertisement of IPv4 Unicast routes with IPv6 next-hops to peers. + type: boolean + enabled: + description: Enables the IPv4 unicast AFISAFI. + type: boolean + prefixLimit: + properties: + prefixLimitAccepted: + properties: + logOnly: + description: Defines the action to take when the maximum number of prefixes is exceeded. Session is reset if set to false, otherwise only a warning is logged. + type: boolean + maxReceivedRoutes: + description: Maximum number of prefixes allowed to be received from the neighbor, counting only accepted routes. + format: int32 + maximum: 4294967295 + minimum: 1 + type: integer + warningThreshold: + description: A percentage of the maximum number of prefixes that can be accepted before a warning is logged. + maximum: 100 + minimum: 1 + type: integer + type: object + prefixLimitReceived: + properties: + logOnly: + description: Defines the action to take when the maximum number of prefixes is exceeded. Session is reset if set to false, otherwise only a warning is logged. + type: boolean + maxReceivedRoutes: + description: Maximum number of prefixes allowed to be received from the neighbor, counting all routes (accepted and rejected by import policies). + format: int32 + maximum: 4294967295 + minimum: 1 + type: integer + warningThreshold: + description: A percentage of the maximum number of prefixes that can be received before a warning is logged. + maximum: 100 + minimum: 1 + type: integer + type: object + type: object + receiveIPV6NextHops: + description: Enables the advertisement of the RFC 5549 capability to receive IPv4 routes with IPv6 next-hops. + type: boolean + type: object + ipv6ClientSelector: + description: Label selector used to select the RouteReflectorClients to which the iBGP sessions are established for IPv6. + items: + type: string + type: array + ipv6Unicast: + description: Parameters relating to the IPv6 unicast AFI/SAFI. + properties: + enabled: + description: Enables the IPv6 unicast AFISAFI + type: boolean + prefixLimit: + properties: + prefixLimitAccepted: + properties: + logOnly: + description: Defines the action to take when the maximum number of prefixes is exceeded. Session is reset if set to false, otherwise only a warning is logged. + type: boolean + maxReceivedRoutes: + description: Maximum number of prefixes allowed to be received from the neighbor, counting only accepted routes. + format: int32 + maximum: 4294967295 + minimum: 1 + type: integer + warningThreshold: + description: A percentage of the maximum number of prefixes that can be accepted before a warning is logged. + maximum: 100 + minimum: 1 + type: integer + type: object + prefixLimitReceived: + properties: + logOnly: + description: Defines the action to take when the maximum number of prefixes is exceeded. Session is reset if set to false, otherwise only a warning is logged. + type: boolean + maxReceivedRoutes: + description: Maximum number of prefixes allowed to be received from the neighbor, counting all routes (accepted and rejected by import policies). + format: int32 + maximum: 4294967295 + minimum: 1 + type: integer + warningThreshold: + description: A percentage of the maximum number of prefixes that can be received before a warning is logged. + maximum: 100 + minimum: 1 + type: integer + type: object + type: object + type: object + keychain: + description: Reference to a Keychain resource that will be used for authentication with the BGP peer. + type: string + localAS: + description: The local autonomous system number advertised to peers. + properties: + autonomousSystem: + description: Local Autonomous System number. + maximum: 4294967295 + minimum: 1 + type: integer + prependGlobalAS: + description: When set to true, the global ASN value is prepended to the AS path in outbound routes towards each BGP peer. + type: boolean + prependLocalAS: + description: When set to true, the local AS value is prepended to the AS path of inbound routes from each EBGP peer. + type: boolean + required: + - autonomousSystem + type: object + peerAS: + description: The autonomous system number expected from peers. + properties: + autonomousSystem: + description: Local Autonomous System number. + maximum: 4294967295 + minimum: 1 + type: integer + required: + - autonomousSystem + type: object + sendCommunityLarge: + description: When false, all large (12 byte) BGP communities from all outbound routes advertised to the peer are stripped. + type: boolean + sendCommunityStandard: + description: When false, all standard (4 byte) communities from all outbound routes advertised to the peer are stripped. + type: boolean + sendDefaultRoute: + description: Options for controlling the generation of default routes towards BGP peers. + properties: + addressFamily: + description: Enables the sending of a synthetically generated default IPv4 or IPV6 route to each peer. + items: + enum: + - IPV4-UNICAST + - IPV6-UNICAST + type: string + type: array + exportPolicy: + description: Reference to a Policy that should be applied to the advertised default routes, in order to set their attributes to non-default values. + type: string + required: + - addressFamily + type: object + timers: + description: Timer configurations + properties: + connectRetry: + description: The time interval in seconds between successive attempts to establish a session with a peer. + maximum: 65535 + minimum: 1 + type: integer + holdTime: + description: The hold-time interval in seconds that the router proposes to the peer in its OPEN message. + maximum: 65535 + minimum: 0 + type: integer + keepAlive: + description: The interval in seconds between successive keepalive messages sent to the peer. + maximum: 21845 + minimum: 0 + type: integer + minimumAdvertisementInterval: + description: The value assigned to the MinRouteAdvertisementIntervalTimer of RFC 4271, for both EBGP and IBGP sessions. + maximum: 255 + minimum: 1 + type: integer + type: object + required: + - bgpGroup + - clusterID + - interface + - interfaceKind + type: object + status: + description: RouteReflectorStatus defines the observed state of RouteReflector + properties: + health: + description: Indicates the health score of the RouteReflector. + type: integer + healthScoreReason: + description: Indicates the reason for the health score. + type: string + lastChange: + description: The time when the state of the resource last changed. + type: string + numRouteReflectorBGPPeers: + description: Total number of configured route reflector client peers on the route reflector. + type: integer + numRouteReflectorBGPPeersOperDown: + description: Total number of configured route reflector client peers on the route reflector that are operationally down. + type: integer + operDownRouteReflectorPeers: + description: List of route reflector BGPPeers which are operationally down. + items: + type: string + type: array + operationalState: + description: Operational state of the RouteReflector. + type: string + type: object + type: object +served: true +storage: true +subresources: + status: {} diff --git a/static/resources/25.8.3/routereflectors.protocols.eda.nokia.com/v1alpha1.yaml b/static/resources/25.8.3/routereflectors.protocols.eda.nokia.com/v1alpha1.yaml new file mode 100644 index 0000000..475a05a --- /dev/null +++ b/static/resources/25.8.3/routereflectors.protocols.eda.nokia.com/v1alpha1.yaml @@ -0,0 +1,270 @@ +additionalPrinterColumns: + - jsonPath: .status.lastChange + name: Last Change + type: date + - jsonPath: .status.operationalState + name: Operational State + type: string + - jsonPath: .status.numRouteReflectorBGPPeers + name: NumRouteReflectorBGPPeers + type: string + - jsonPath: .status.numRouteReflectorBGPPeersOperDown + name: NumRouteReflectorBGPPeersOperDown + type: string +deprecated: true +deprecationWarning: This version is deprecated and will no longer be supported in the next version. +name: v1alpha1 +schema: + openAPIV3Schema: + description: RouteReflector is the Schema for the routereflectors API + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + description: RouteReflector enables the configuration of iBGP sessions with RouteReflectorClients. It includes settings for selecting Interfaces, client selectors for IPv4 and IPv6, and the option to specify a BGP group and cluster ID. + properties: + asPathOptions: + description: AS Path Options + properties: + allowOwnAS: + default: 0 + description: The maximum number of times the global AS number or a local AS number of the BGP instance can appear in any received AS_PATH before it is considered a loop and considered invalid. + maximum: 255 + minimum: 0 + type: integer + removePrivateAS: + description: Options for removing private AS numbers (2-byte and 4-byte) from the advertised AS path towards all peers. + properties: + ignorePeerAS: + default: false + description: If set to true then do not delete or replace a private AS number that is the same as the peer AS number. + type: boolean + leadingOnly: + default: false + description: If set to true then only delete or replace private AS numbers that appear before the first occurrence of a non-private ASN in the sequence of most recent ASNs in the AS path. + type: boolean + removePrivateASMode: + default: DISABLED + description: The method by which private AS numbers are removed from the advertised AS_PATH attribute. + enum: + - DISABLED + - REPLACE + - DELETE + type: string + required: + - ignorePeerAS + - leadingOnly + - removePrivateASMode + type: object + required: + - allowOwnAS + type: object + bfd: + description: Enable or disable Bi-forward Forwarding Detection (BFD) with fast failover. + type: boolean + bgpGroup: + description: Reference to BgpGroup + type: string + clientIPs: + description: List of RR client IPs to which the iBGP sessions are established. + items: + type: string + type: array + clusterID: + description: Sets the cluster ID for route reflectors. + type: string + exportPolicy: + description: Reference to a Policy CR that will be used to filter routes advertised to peers. + items: + type: string + type: array + grStaleRouteTime: + description: Enables Graceful Restart on the peer and sets the stale route time. + maximum: 3600 + minimum: 1 + type: integer + importPolicy: + description: Reference to a Policy CR that will be used to filter routes received from peers. + items: + type: string + type: array + interface: + description: Reference to a RoutedInterface or IrbInterface resource whose IP will be used as a source IP for the BGP session. + type: string + interfaceKind: + description: InterfaceReference type defines whether the provided Reference is a RoutedInterface or IrbInterface. + enum: + - ROUTEDINTERFACE + - IRBINTERFACE + type: string + ipv4ClientSelector: + description: Label selector used to select the RouteReflectorClients to which the iBGP sessions are established for IPv4. + items: + type: string + type: array + ipv4Unicast: + description: Parameters relating to the IPv4 unicast AFI/SAFI. + properties: + advertiseIPV6NextHops: + description: Enables advertisement of IPv4 Unicast routes with IPv6 next-hops to peers. + type: boolean + enabled: + description: Enables the IPv4 unicast AFISAFI. + type: boolean + maxReceivedRoutes: + description: Maximum number of IPv4 Unicast routes that will be accepted from the neighbor, counting routes accepted and rejected by import policies. + maximum: 4294967295 + minimum: 1 + type: integer + receiveIPV6NextHops: + description: Enables the advertisement of the RFC 5549 capability to receive IPv4 routes with IPv6 next-hops. + type: boolean + type: object + ipv6ClientSelector: + description: Label selector used to select the RouteReflectorClients to which the iBGP sessions are established for IPv6. + items: + type: string + type: array + ipv6Unicast: + description: Parameters relating to the IPv6 unicast AFI/SAFI. + properties: + enabled: + description: Enables the IPv6 unicast AFISAFI + type: boolean + maxReceivedRoutes: + description: Maximum number of IPv6 Unicast routes that will be accepted from the neighbor, counting routes accepted and rejected by import policies. + maximum: 4294967295 + minimum: 1 + type: integer + type: object + keychain: + description: Reference to a Keychain resource that will be used for authentication with the BGP peer. + type: string + localAS: + description: The local autonomous system number advertised to peers. + properties: + autonomousSystem: + description: Local Autonomous System number. + maximum: 4294967295 + minimum: 1 + type: integer + prependGlobalAS: + description: When set to true, the global ASN value is prepended to the AS path in outbound routes towards each BGP peer. + type: boolean + prependLocalAS: + description: When set to true, the local AS value is prepended to the AS path of inbound routes from each EBGP peer. + type: boolean + required: + - autonomousSystem + type: object + peerAS: + description: The autonomous system number expected from peers. + properties: + autonomousSystem: + description: Local Autonomous System number. + maximum: 4294967295 + minimum: 1 + type: integer + required: + - autonomousSystem + type: object + sendCommunityLarge: + description: When false, all large (12 byte) BGP communities from all outbound routes advertised to the peer are stripped. + type: boolean + sendCommunityStandard: + description: When false, all standard (4 byte) communities from all outbound routes advertised to the peer are stripped. + type: boolean + sendDefaultRoute: + description: Options for controlling the generation of default routes towards BGP peers. + properties: + addressFamily: + description: Enables the sending of a synthetically generated default IPv4 or IPV6 route to each peer. + items: + enum: + - IPV4-UNICAST + - IPV6-UNICAST + type: string + type: array + exportPolicy: + description: Reference to a Policy that should be applied to the advertised default routes, in order to set their attributes to non-default values. + type: string + required: + - addressFamily + type: object + timers: + description: Timer configurations + properties: + connectRetry: + description: The time interval in seconds between successive attempts to establish a session with a peer. + maximum: 65535 + minimum: 1 + type: integer + holdTime: + description: The hold-time interval in seconds that the router proposes to the peer in its OPEN message. + maximum: 65535 + minimum: 0 + type: integer + keepAlive: + description: The interval in seconds between successive keepalive messages sent to the peer. + maximum: 21845 + minimum: 0 + type: integer + minimumAdvertisementInterval: + description: The value assigned to the MinRouteAdvertisementIntervalTimer of RFC 4271, for both EBGP and IBGP sessions. + maximum: 255 + minimum: 1 + type: integer + type: object + required: + - bgpGroup + - clusterID + - interface + - interfaceKind + type: object + status: + description: RouteReflectorStatus defines the observed state of RouteReflector + properties: + health: + description: Indicates the health score of the RouteReflector. + type: integer + healthScoreReason: + description: Indicates the reason for the health score. + type: string + lastChange: + description: The time when the state of the resource last changed. + type: string + numRouteReflectorBGPPeers: + description: Total number of configured route reflector client peers on the route reflector. + type: integer + numRouteReflectorBGPPeersOperDown: + description: Total number of configured route reflector client peers on the route reflector that are operationally down. + type: integer + operDownRouteReflectorPeers: + description: List of route reflector BGPPeers which are operationally down. + items: + type: string + type: array + operationalState: + description: Operational state of the RouteReflector. + type: string + type: object + type: object +served: true +storage: false +subresources: + status: {} diff --git a/static/resources/25.8.3/routereflectorstates.protocols.eda.nokia.com/v1.yaml b/static/resources/25.8.3/routereflectorstates.protocols.eda.nokia.com/v1.yaml new file mode 100644 index 0000000..d403f40 --- /dev/null +++ b/static/resources/25.8.3/routereflectorstates.protocols.eda.nokia.com/v1.yaml @@ -0,0 +1,42 @@ +name: v1 +schema: + openAPIV3Schema: + description: RouteReflectorState is the Schema for the routereflectorstates API + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + description: RouteReflectorStateSpec defines the desired state of RouteReflectorState + properties: + defaultRouteReflector: + description: Denotes if the route reflector is a DefaultRouteReflector or RouteReflector + type: boolean + routeReflectorBGPPeers: + description: A list of BGPPeers configured on the route reflector to peer with clients + items: + type: string + type: array + type: object + status: + description: RouteReflectorStateStatus defines the observed state of RouteReflectorState + type: object + type: object +served: true +storage: true +subresources: + status: {} diff --git a/static/resources/25.8.3/routereflectorstates.protocols.eda.nokia.com/v1alpha1.yaml b/static/resources/25.8.3/routereflectorstates.protocols.eda.nokia.com/v1alpha1.yaml new file mode 100644 index 0000000..0e0db59 --- /dev/null +++ b/static/resources/25.8.3/routereflectorstates.protocols.eda.nokia.com/v1alpha1.yaml @@ -0,0 +1,44 @@ +deprecated: true +deprecationWarning: This version is deprecated and will no longer be supported in the next version. +name: v1alpha1 +schema: + openAPIV3Schema: + description: RouteReflectorState is the Schema for the routereflectorstates API + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + description: RouteReflectorStateSpec defines the desired state of RouteReflectorState + properties: + defaultRouteReflector: + description: Denotes if the route reflector is a DefaultRouteReflector or RouteReflector + type: boolean + routeReflectorBGPPeers: + description: A list of BGPPeers configured on the route reflector to peer with clients + items: + type: string + type: array + type: object + status: + description: RouteReflectorStateStatus defines the observed state of RouteReflectorState + type: object + type: object +served: true +storage: false +subresources: + status: {} diff --git a/static/resources/25.8.3/routers.services.eda.nokia.com/v1.yaml b/static/resources/25.8.3/routers.services.eda.nokia.com/v1.yaml new file mode 100644 index 0000000..f6d2258 --- /dev/null +++ b/static/resources/25.8.3/routers.services.eda.nokia.com/v1.yaml @@ -0,0 +1,309 @@ +additionalPrinterColumns: + - jsonPath: .status.vni + name: VNI + type: string + - jsonPath: .status.evi + name: EVI + type: string + - jsonPath: .status.importTarget + name: Import Target + type: string + - jsonPath: .status.exportTarget + name: Export Target + type: string + - jsonPath: .status.operationalState + name: OperationalState + type: string + - jsonPath: .status.lastChange + name: LastChange + type: string +name: v1 +schema: + openAPIV3Schema: + description: Router is the Schema for the routers API + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + description: The Router enables the configuration and management of routing functions within a network. This resource allows for setting a unique Router ID, configuring VNIs and EVIs with options for automatic allocation, and defining import and export route targets. It also includes advanced configuration options such as BGP settings, including autonomous system numbers, AFI/SAFI options, and route advertisement preferences. Node selectors can be used to constrain the deployment of the router to specific nodes within the network. + properties: + bgp: + description: BGP configuration. + properties: + autonomousSystem: + description: Autonomous System number for BGP. + maximum: 4294967295 + minimum: 1 + type: integer + ebgpPreference: + default: 170 + description: Preference to be set for eBGP [default=170]. + maximum: 255 + minimum: 1 + type: integer + enabled: + default: false + description: Enable or disable BGP. + type: boolean + ibgpPreference: + default: 170 + description: Preference to be set for iBGP [default=170]. + maximum: 255 + minimum: 1 + type: integer + ipAliasNexthops: + description: IP aliasing configuration. + items: + properties: + esi: + default: auto + description: 10 byte Ethernet Segment Identifier, if not set a type 0 ESI is generated. + type: string + nextHop: + description: The nexthop IP address to track for the IP alias. + type: string + preferredActiveNode: + description: When not set the ES is used in an all active mode. This references the ToppNode object and when set, the DF algorithm is configured to type preference and the selected Node is set with a higher preference value. All other Nodes have a lower value configured. + type: string + required: + - nextHop + type: object + type: array + ipv4Unicast: + description: Parameters relating to the IPv4 unicast AFI/SAFI. + properties: + advertiseIPV6NextHops: + description: Enables advertisement of IPv4 Unicast routes with IPv6 next-hops to peers. + type: boolean + enabled: + default: false + description: Enables the IPv4 unicast AFISAFI. + type: boolean + multipath: + description: Enable multipath. + properties: + allowMultipleAS: + default: true + description: When set to true, BGP is allowed to build a multipath set using BGP routes with different neighbor AS (most recent AS in the AS_PATH), When set to false, BGP is only allowed to use non-best paths for ECMP if they meet the multipath criteria and they have the same neighbor AS as the best path. + type: boolean + maxAllowedPaths: + description: The maximum number of BGP ECMP next-hops for BGP routes with an NLRI belonging to the address family of this configuration context. + maximum: 256 + minimum: 1 + type: integer + required: + - allowMultipleAS + - maxAllowedPaths + type: object + receiveIPV6NextHops: + description: Enables the advertisement of the RFC 5549 capability to receive IPv4 routes with IPv6 next-hops. + type: boolean + required: + - enabled + type: object + ipv6Unicast: + description: Parameters relating to the IPv6 unicast AFI/SAFI. + properties: + enabled: + default: false + description: Enables the IPv6 unicast AFISAFI + type: boolean + multipath: + description: Enable multipath + properties: + allowMultipleAS: + default: true + description: When set to true, BGP is allowed to build a multipath set using BGP routes with different neighbor AS (most recent AS in the AS_PATH), When set to false, BGP is only allowed to use non-best paths for ECMP if they meet the multipath criteria and they have the same neighbor AS as the best path. + type: boolean + maxAllowedPaths: + description: The maximum number of BGP ECMP next-hops for BGP routes with an NLRI belonging to the address family of this configuration context. + maximum: 256 + minimum: 1 + type: integer + required: + - allowMultipleAS + - maxAllowedPaths + type: object + required: + - enabled + type: object + keychain: + description: Keychain to be used for authentication + type: string + minWaitToAdvertise: + default: 0 + description: Minimum wait time before advertising routes post BGP restart. + maximum: 3600 + minimum: 0 + type: integer + rapidWithdrawl: + default: true + description: Enable rapid withdrawal in BGP. + type: boolean + waitForFIBInstall: + default: false + description: Wait for FIB installation before advertising routes. + type: boolean + type: object + description: + description: The description of the Router. + type: string + evi: + description: EVI for the Router; leave blank for auto-allocation from EVI pool. + maximum: 65535 + minimum: 1 + type: integer + eviPool: + default: evi-pool + description: Reference to EVI pool for auto-allocation. + type: string + exportTarget: + description: Export route target in 'target:N:N' format, if not specified, the default value taken as "target:1:". + pattern: ^target.*$ + type: string + importTarget: + description: Import route target in 'target:N:N' format, if not specified, the default value taken as "target:1:". + pattern: ^target.*$ + type: string + ipLoadBalancing: + description: IPv4 or IPv6 prefix. Active routes in the FIB that exactly match this prefix or that are longer matches of this prefix are provided with resilient-hash programming. + properties: + prefix: + description: IPv4 or IPv6 prefix. Active routes in the FIB that exactly match this prefix or that are longer matches of this prefix are provided with resilient-hash programming. + items: + properties: + hashBucketsPerPath: + default: 1 + description: The number of times each next-hop is repeated in the fill pattern if there are max-paths ECMP next-hops. + maximum: 32 + minimum: 1 + type: integer + maxECMP: + default: 1 + description: The maximum number of ECMP next-hops per route associated with the resilient-hash prefix. + maximum: 64 + minimum: 1 + type: integer + prefix: + description: IPv4 or IPv6 prefix. Active routes in the FIB that exactly match this prefix or that are longer matches of this prefix are provided with resilient-hash programming. + type: string + required: + - hashBucketsPerPath + - maxECMP + - prefix + type: object + type: array + type: object + nodeSelector: + description: Node selectors for deployment constraints. If Nodes are selected, the Router will only be deployed on the Nodes selected, if left blank it will be deployed on all Nodes for which there are IRB or RoutedInterfaces referencing this Router. + items: + type: string + type: array + routeLeaking: + description: Route leaking controlled by routing policies in and out of the DefaultRouter. + properties: + exportPolicy: + description: Reference to a Policy resource to use when evaluating route exports from the DefaultRouter. + type: string + importPolicy: + description: Reference to a Policy resource to use when evaluating route imports into the DefaultRouter. + type: string + type: object + routerID: + description: Router ID. + type: string + tunnelIndexPool: + default: tunnel-index-pool + description: Reference to tunnel index allocation pool. + type: string + type: + default: EVPNVXLAN + description: Select the type of Router. Simple doesn't include any overlay control plane or dataplane properties (EVPN/VXLAN). EVPNVXLAN includes the properties needed to provision this Router over an IP Fabric. + enum: + - SIMPLE + - EVPNVXLAN + type: string + vni: + description: VNI for the Router; leave blank for auto-allocation from VNI pool. + maximum: 16777215 + minimum: 1 + type: integer + vniPool: + default: vni-pool + description: Reference to VNI pool for auto-allocation. + type: string + type: object + status: + description: RouterStatus defines the observed state of Router + properties: + bgpPeers: + description: List of BGPPeers attached to the router. + items: + type: string + type: array + evi: + description: EVI in use for this Router. + type: integer + exportTarget: + description: Export route target for this Router. + type: string + health: + description: Indicates the health score of the Router. + type: integer + healthScoreReason: + description: Explains the reason for the health score. + type: string + importTarget: + description: Import route target for this Router. + type: string + irbInterfaces: + description: List of IRBInterfaces attached to the router. + items: + type: string + type: array + lastChange: + description: Timestamp of the last state change. + type: string + nodes: + description: List of nodes on which the Router is deployed. + items: + type: string + type: array + numNodes: + description: Number of nodes on which the Router is configured. + type: integer + operationalState: + description: Operational state of the Router. + type: string + routedInterfaces: + description: List of RoutedInterfaces attached to the router. + items: + type: string + type: array + tunnelIndex: + description: Vxlan tunnel index in use. + type: integer + vni: + description: VNI in use for this Router. + type: integer + type: object + type: object +served: true +storage: true +subresources: + status: {} diff --git a/static/resources/25.8.3/routers.services.eda.nokia.com/v1alpha1.yaml b/static/resources/25.8.3/routers.services.eda.nokia.com/v1alpha1.yaml new file mode 100644 index 0000000..854c0d4 --- /dev/null +++ b/static/resources/25.8.3/routers.services.eda.nokia.com/v1alpha1.yaml @@ -0,0 +1,311 @@ +additionalPrinterColumns: + - jsonPath: .status.vni + name: VNI + type: string + - jsonPath: .status.evi + name: EVI + type: string + - jsonPath: .status.importTarget + name: Import Target + type: string + - jsonPath: .status.exportTarget + name: Export Target + type: string + - jsonPath: .status.operationalState + name: OperationalState + type: string + - jsonPath: .status.lastChange + name: LastChange + type: string +deprecated: true +deprecationWarning: This version is deprecated and will no longer be supported in the next version. +name: v1alpha1 +schema: + openAPIV3Schema: + description: Router is the Schema for the routers API + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + description: The Router enables the configuration and management of routing functions within a network. This resource allows for setting a unique Router ID, configuring VNIs and EVIs with options for automatic allocation, and defining import and export route targets. It also includes advanced configuration options such as BGP settings, including autonomous system numbers, AFI/SAFI options, and route advertisement preferences. Node selectors can be used to constrain the deployment of the router to specific nodes within the network. + properties: + bgp: + description: BGP configuration. + properties: + autonomousSystem: + description: Autonomous System number for BGP. + maximum: 4294967295 + minimum: 1 + type: integer + ebgpPreference: + default: 170 + description: Preference to be set for eBGP [default=170]. + maximum: 255 + minimum: 1 + type: integer + enabled: + default: false + description: Enable or disable BGP. + type: boolean + ibgpPreference: + default: 170 + description: Preference to be set for iBGP [default=170]. + maximum: 255 + minimum: 1 + type: integer + ipAliasNexthops: + description: IP aliasing configuration. + items: + properties: + esi: + default: auto + description: 10 byte Ethernet Segment Identifier, if not set a type 0 ESI is generated. + type: string + nextHop: + description: The nexthop IP address to track for the IP alias. + type: string + preferredActiveNode: + description: When not set the ES is used in an all active mode. This references the ToppNode object and when set, the DF algorithm is configured to type preference and the selected Node is set with a higher preference value. All other Nodes have a lower value configured. + type: string + required: + - nextHop + type: object + type: array + ipv4Unicast: + description: Parameters relating to the IPv4 unicast AFI/SAFI. + properties: + advertiseIPV6NextHops: + description: Enables advertisement of IPv4 Unicast routes with IPv6 next-hops to peers. + type: boolean + enabled: + default: false + description: Enables the IPv4 unicast AFISAFI. + type: boolean + multipath: + description: Enable multipath. + properties: + allowMultipleAS: + default: true + description: When set to true, BGP is allowed to build a multipath set using BGP routes with different neighbor AS (most recent AS in the AS_PATH), When set to false, BGP is only allowed to use non-best paths for ECMP if they meet the multipath criteria and they have the same neighbor AS as the best path. + type: boolean + maxAllowedPaths: + description: The maximum number of BGP ECMP next-hops for BGP routes with an NLRI belonging to the address family of this configuration context. + maximum: 256 + minimum: 1 + type: integer + required: + - allowMultipleAS + - maxAllowedPaths + type: object + receiveIPV6NextHops: + description: Enables the advertisement of the RFC 5549 capability to receive IPv4 routes with IPv6 next-hops. + type: boolean + required: + - enabled + type: object + ipv6Unicast: + description: Parameters relating to the IPv6 unicast AFI/SAFI. + properties: + enabled: + default: false + description: Enables the IPv6 unicast AFISAFI + type: boolean + multipath: + description: Enable multipath + properties: + allowMultipleAS: + default: true + description: When set to true, BGP is allowed to build a multipath set using BGP routes with different neighbor AS (most recent AS in the AS_PATH), When set to false, BGP is only allowed to use non-best paths for ECMP if they meet the multipath criteria and they have the same neighbor AS as the best path. + type: boolean + maxAllowedPaths: + description: The maximum number of BGP ECMP next-hops for BGP routes with an NLRI belonging to the address family of this configuration context. + maximum: 256 + minimum: 1 + type: integer + required: + - allowMultipleAS + - maxAllowedPaths + type: object + required: + - enabled + type: object + keychain: + description: Keychain to be used for authentication + type: string + minWaitToAdvertise: + default: 0 + description: Minimum wait time before advertising routes post BGP restart. + maximum: 3600 + minimum: 0 + type: integer + rapidWithdrawl: + default: true + description: Enable rapid withdrawal in BGP. + type: boolean + waitForFIBInstall: + default: false + description: Wait for FIB installation before advertising routes. + type: boolean + type: object + description: + description: The description of the Router. + type: string + evi: + description: EVI for the Router; leave blank for auto-allocation from EVI pool. + maximum: 65535 + minimum: 1 + type: integer + eviPool: + default: evi-pool + description: Reference to EVI pool for auto-allocation. + type: string + exportTarget: + description: Export route target in 'target:N:N' format, if not specified, the default value taken as "target:1:". + pattern: ^target.*$ + type: string + importTarget: + description: Import route target in 'target:N:N' format, if not specified, the default value taken as "target:1:". + pattern: ^target.*$ + type: string + ipLoadBalancing: + description: IPv4 or IPv6 prefix. Active routes in the FIB that exactly match this prefix or that are longer matches of this prefix are provided with resilient-hash programming. + properties: + prefix: + description: IPv4 or IPv6 prefix. Active routes in the FIB that exactly match this prefix or that are longer matches of this prefix are provided with resilient-hash programming. + items: + properties: + hashBucketsPerPath: + default: 1 + description: The number of times each next-hop is repeated in the fill pattern if there are max-paths ECMP next-hops. + maximum: 32 + minimum: 1 + type: integer + maxECMP: + default: 1 + description: The maximum number of ECMP next-hops per route associated with the resilient-hash prefix. + maximum: 64 + minimum: 1 + type: integer + prefix: + description: IPv4 or IPv6 prefix. Active routes in the FIB that exactly match this prefix or that are longer matches of this prefix are provided with resilient-hash programming. + type: string + required: + - hashBucketsPerPath + - maxECMP + - prefix + type: object + type: array + type: object + nodeSelector: + description: Node selectors for deployment constraints. If Nodes are selected, the Router will only be deployed on the Nodes selected, if left blank it will be deployed on all Nodes for which there are IRB or RoutedInterfaces referencing this Router. + items: + type: string + type: array + routeLeaking: + description: Route leaking controlled by routing policies in and out of the DefaultRouter. + properties: + exportPolicy: + description: Reference to a Policy resource to use when evaluating route exports from the DefaultRouter. + type: string + importPolicy: + description: Reference to a Policy resource to use when evaluating route imports into the DefaultRouter. + type: string + type: object + routerID: + description: Router ID. + type: string + tunnelIndexPool: + default: tunnel-index-pool + description: Reference to tunnel index allocation pool. + type: string + type: + default: EVPNVXLAN + description: Select the type of Router. Simple doesn't include any overlay control plane or dataplane properties (EVPN/VXLAN). EVPNVXLAN includes the properties needed to provision this Router over an IP Fabric. + enum: + - SIMPLE + - EVPNVXLAN + type: string + vni: + description: VNI for the Router; leave blank for auto-allocation from VNI pool. + maximum: 16777215 + minimum: 1 + type: integer + vniPool: + default: vni-pool + description: Reference to VNI pool for auto-allocation. + type: string + type: object + status: + description: RouterStatus defines the observed state of Router + properties: + bgpPeers: + description: List of BGPPeers attached to the router. + items: + type: string + type: array + evi: + description: EVI in use for this Router. + type: integer + exportTarget: + description: Export route target for this Router. + type: string + health: + description: Indicates the health score of the Router. + type: integer + healthScoreReason: + description: Explains the reason for the health score. + type: string + importTarget: + description: Import route target for this Router. + type: string + irbInterfaces: + description: List of IRBInterfaces attached to the router. + items: + type: string + type: array + lastChange: + description: Timestamp of the last state change. + type: string + nodes: + description: List of nodes on which the Router is deployed. + items: + type: string + type: array + numNodes: + description: Number of nodes on which the Router is configured. + type: integer + operationalState: + description: Operational state of the Router. + type: string + routedInterfaces: + description: List of RoutedInterfaces attached to the router. + items: + type: string + type: array + tunnelIndex: + description: Vxlan tunnel index in use. + type: integer + vni: + description: VNI in use for this Router. + type: integer + type: object + type: object +served: true +storage: false +subresources: + status: {} diff --git a/static/resources/25.8.3/routerstates.services.eda.nokia.com/v1.yaml b/static/resources/25.8.3/routerstates.services.eda.nokia.com/v1.yaml new file mode 100644 index 0000000..18ba572 --- /dev/null +++ b/static/resources/25.8.3/routerstates.services.eda.nokia.com/v1.yaml @@ -0,0 +1,55 @@ +name: v1 +schema: + openAPIV3Schema: + description: RouterState is the Schema for the routerstates API + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + description: RouterStateSpec defines the desired state of RouterState + properties: + evi: + description: EVI in use for this Router + maximum: 65535 + minimum: 1 + type: integer + exportTarget: + description: Export route target for this Router, in the format 'target:N:N' + pattern: ^target.*$ + type: string + importTarget: + description: Import route target for this Router, in the format 'target:N:N' + pattern: ^target.*$ + type: string + tunnelIndex: + description: Vxlan tunnel index in use + type: integer + vni: + description: VNI in use for this Router + maximum: 16777215 + minimum: 1 + type: integer + type: object + status: + description: RouterStateStatus defines the observed state of RouterState + type: object + type: object +served: true +storage: true +subresources: + status: {} diff --git a/static/resources/25.8.3/routerstates.services.eda.nokia.com/v1alpha1.yaml b/static/resources/25.8.3/routerstates.services.eda.nokia.com/v1alpha1.yaml new file mode 100644 index 0000000..021e462 --- /dev/null +++ b/static/resources/25.8.3/routerstates.services.eda.nokia.com/v1alpha1.yaml @@ -0,0 +1,57 @@ +deprecated: true +deprecationWarning: This version is deprecated and will no longer be supported in the next version. +name: v1alpha1 +schema: + openAPIV3Schema: + description: RouterState is the Schema for the routerstates API + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + description: RouterStateSpec defines the desired state of RouterState + properties: + evi: + description: EVI in use for this Router + maximum: 65535 + minimum: 1 + type: integer + exportTarget: + description: Export route target for this Router, in the format 'target:N:N' + pattern: ^target.*$ + type: string + importTarget: + description: Import route target for this Router, in the format 'target:N:N' + pattern: ^target.*$ + type: string + tunnelIndex: + description: Vxlan tunnel index in use + type: integer + vni: + description: VNI in use for this Router + maximum: 16777215 + minimum: 1 + type: integer + type: object + status: + description: RouterStateStatus defines the observed state of RouterState + type: object + type: object +served: true +storage: false +subresources: + status: {} diff --git a/static/resources/25.8.3/setupenvs.environment.eda.nokia.com/v1alpha1.yaml b/static/resources/25.8.3/setupenvs.environment.eda.nokia.com/v1alpha1.yaml new file mode 100644 index 0000000..04035d5 --- /dev/null +++ b/static/resources/25.8.3/setupenvs.environment.eda.nokia.com/v1alpha1.yaml @@ -0,0 +1,50 @@ +additionalPrinterColumns: + - jsonPath: .status.result + name: Result + type: string + - jsonPath: .metadata.creationTimestamp + name: Age + type: date +name: v1alpha1 +schema: + openAPIV3Schema: + description: SetupEnv is the Schema for the setupenvs API + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + description: |- + This workflow is used to set up the global environment on a node. + For SR Linux this results in an overwrite of the /etc/opt/srlinux/env file. + properties: + env: + description: Content of the environment file to push. + type: string + type: object + status: + description: SetupEnvStatus defines the observed state of SetupEnv + properties: + result: + description: Aggregate result of the Flow + type: string + type: object + type: object +served: true +storage: true +subresources: + status: {} diff --git a/static/resources/25.8.3/simlinks.core.eda.nokia.com/v1.yaml b/static/resources/25.8.3/simlinks.core.eda.nokia.com/v1.yaml new file mode 100644 index 0000000..07565ca --- /dev/null +++ b/static/resources/25.8.3/simlinks.core.eda.nokia.com/v1.yaml @@ -0,0 +1,87 @@ +name: v1 +schema: + openAPIV3Schema: + description: SimLink is the Schema for the simlinks API + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + description: SimLinkSpec defines the desired state of SimLink + properties: + bondName: + description: |- + When creating a SimLink with more than one member, the bondName is used to create a bond on the SimNode side. + This field must not be used when creating a single member SimLink. + type: string + links: + description: |- + To create a point to point link with a single interface on both sides use a single link object. + To create a point to point link with a LAG configured on both side, use two links with matching nodes. + A multihommed lag is created by using two or more links where the remoteNode and/or localNode can be different. + Creating a link with only localNode specified will create an edge interface. + items: + properties: + local: + properties: + interface: + description: Normalized name of the interface/port, e.g. ethernet-1-1. + type: string + interfaceResource: + description: Reference to a Interface. + type: string + node: + description: Reference to a TopoNode. + type: string + required: + - interfaceResource + - node + type: object + sim: + properties: + interface: + description: Normalized name of the interface/port, e.g. ethernet-1-1. + type: string + interfaceResource: + description: Reference to a Interface. + type: string + node: + description: Reference to a TopoNode. + type: string + required: + - interfaceResource + - node + type: object + speed: + type: string + required: + - local + - sim + type: object + minItems: 1 + type: array + required: + - links + type: object + status: + description: SimLinkStatus defines the observed state of SimLink + type: object + type: object +served: true +storage: true +subresources: + status: {} diff --git a/static/resources/25.8.3/simnodes.core.eda.nokia.com/v1.yaml b/static/resources/25.8.3/simnodes.core.eda.nokia.com/v1.yaml new file mode 100644 index 0000000..cce12ce --- /dev/null +++ b/static/resources/25.8.3/simnodes.core.eda.nokia.com/v1.yaml @@ -0,0 +1,114 @@ +name: v1 +schema: + openAPIV3Schema: + description: SimNode is the Schema for the simnodes API + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + description: SimNodeSpec defines the desired state of SimTopoNode + properties: + component: + description: A list of components within a node. Used to define the type and location of linecards, fabrics (sfm), media adapter cards (mda) and control cards. + items: + properties: + kind: + description: The kind of Component, e.g. lineCard. + enum: + - controlCard + - lineCard + - fabric + - mda + - connector + - xiom + - powerShelf + - powerModule + type: string + slot: + description: |- + The slot this Component resides in, unset for Components that do not have a slot or ID. + e.g. 1 would denote the linecard slot 1, 1/1 would denote linecard slot 1 mda slot 1. + type: string + type: + description: Denotes the type of hardware being provisioned, e.g. xcm-x20. + type: string + required: + - kind + - type + type: object + type: array + containerImage: + description: Reference URL to the container image for the associated operatingSystem and version + type: string + dhcp: + properties: + preferredAddressFamily: + description: Preferred IP address family + enum: + - IPv4 + - IPv6 + type: string + type: object + imagePullSecret: + description: Secret used to authenticate to the container registry where the container image is hosted + type: string + license: + description: Reference to a URL path hosting the license for the TopoNode. + type: string + operatingSystem: + description: Operational operating system running on this TopoNode, e.g. srl, sros, nxos, eos + type: string + platform: + description: Operational platform type of this TopoNode, e.g. 7220 IXR-D3L + type: string + platformPath: + description: JSPath to use for retrieving the version string from nodes matching this NodeProfile + type: string + port: + default: 57400 + description: The port used to establish a connection to the TargetNode + maximum: 65535 + minimum: 1 + type: integer + serialNumberPath: + description: JSPath to use for retrieving the serial number string from nodes matching this NodeProfile + type: string + version: + description: Operational software version of this TopoNode, e.g. 24.7.1 (for srl), or 24.7.r1 (for sros) + type: string + versionMatch: + description: |- + Match the node-retrieved version string to TopoNode version + The value should be a regular expression matching the version string that would appear on the node + type: string + versionPath: + description: JSPath to use for retrieving the version string from nodes matching this NodeProfile + type: string + type: object + status: + description: SimNodeStatus defines the observed state of SimNode + properties: + ipAddress: + description: IP address of the simnode, this is the address the simulated instance of this SimNode uses. + type: string + type: object + type: object +served: true +storage: true +subresources: + status: {} diff --git a/static/resources/25.8.3/stateconfigs.services.eda.nokia.com/v1.yaml b/static/resources/25.8.3/stateconfigs.services.eda.nokia.com/v1.yaml new file mode 100644 index 0000000..11e9cf1 --- /dev/null +++ b/static/resources/25.8.3/stateconfigs.services.eda.nokia.com/v1.yaml @@ -0,0 +1,47 @@ +name: v1 +schema: + openAPIV3Schema: + description: StateConfig is the Schema for the StateConfigs API + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + properties: + configs: + items: + properties: + config: + type: string + path: + type: string + required: + - path + type: object + type: array + required: + - configs + type: object + status: + type: object + required: + - spec + type: object +served: true +storage: true +subresources: + status: {} diff --git a/static/resources/25.8.3/stateconfigs.services.eda.nokia.com/v1alpha1.yaml b/static/resources/25.8.3/stateconfigs.services.eda.nokia.com/v1alpha1.yaml new file mode 100644 index 0000000..fc9774c --- /dev/null +++ b/static/resources/25.8.3/stateconfigs.services.eda.nokia.com/v1alpha1.yaml @@ -0,0 +1,49 @@ +deprecated: true +deprecationWarning: This version is deprecated and will no longer be supported in the next version. +name: v1alpha1 +schema: + openAPIV3Schema: + description: StateConfig is the Schema for the StateConfigs API + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + properties: + configs: + items: + properties: + config: + type: string + path: + type: string + required: + - path + type: object + type: array + required: + - configs + type: object + status: + type: object + required: + - spec + type: object +served: true +storage: false +subresources: + status: {} diff --git a/static/resources/25.8.3/staticroutes.protocols.eda.nokia.com/v1.yaml b/static/resources/25.8.3/staticroutes.protocols.eda.nokia.com/v1.yaml new file mode 100644 index 0000000..022e3e8 --- /dev/null +++ b/static/resources/25.8.3/staticroutes.protocols.eda.nokia.com/v1.yaml @@ -0,0 +1,130 @@ +name: v1 +schema: + openAPIV3Schema: + description: StaticRoute is the Schema for the static routes API + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + description: StaticRoute allows for the specification of destination prefixes, route preferences, and the associated Router. It also supports configuring nexthop groups and specifying the nodes where the static routes should be provisioned. + properties: + nexthopGroup: + description: Group of nexthops for the list of prefixes. + properties: + bfd: + description: Enables BFD to the next-hops in the group. Local and Remote discriminator parameters have been deprecated at this level. Use Nexthop to set these parameters. + properties: + enabled: + default: false + description: Defines whether BFD should be enabled towards the nexthops. + type: boolean + localAddress: + description: Defines the local address to use when establishing the BFD session with the nexthop. + type: string + type: object + blackhole: + default: false + description: If set to true all traffic destined to the prefixes will be blackholed. If enabled, next-hops are ignored and this takes precedence. + type: boolean + blackholeSendICMP: + description: When enabled, the router will generate ICMP Unreachable messages for packets destined to the blackhole route. + type: boolean + nexthops: + description: Ordered list of nexthops. + items: + properties: + bfd: + description: Enables BFD to the next-hops in the group. This overrides the configuration at the group. + properties: + enabled: + default: false + description: Defines whether BFD should be enabled towards the nexthops. + type: boolean + localAddress: + description: Defines the local address to use when establishing the BFD session with the nexthop. + type: string + localDiscriminator: + description: Defines the local discriminator. + type: integer + remoteDiscriminator: + description: Defines the remote discriminator. + type: integer + type: object + ipPrefix: + description: Address to use. + type: string + resolve: + default: false + description: If set to true the next-hops can be destinations which are resolved in the route table. This overrides the configuration at the group. + type: boolean + required: + - ipPrefix + type: object + type: array + resolve: + default: false + description: If set to true the next-hops can be destinations which are resolved in the route table. + type: boolean + type: object + nodes: + description: List of nodes on which to configure the static routes. An AND operation is executed against the nodes in this list and the nodes on which the Router is configured to determine the Nodes on which to configure the static routes. + items: + type: string + type: array + preference: + description: Defines the route preference. + type: integer + prefixes: + description: List of destination prefixes and mask to use for the static routes. + items: + type: string + type: array + router: + description: Reference to a Router on which to configure the static routes. If no Nodes are provided then the static routes will be provisioned on all Nodes on which the Router is provisioned. + type: string + required: + - nexthopGroup + - prefixes + - router + type: object + status: + description: StaticRouteStatus defines the observed state of Static Route + properties: + health: + description: Indicates the health score of the static routes. + type: integer + healthScoreReason: + description: Indicates the reason for the health score. + type: string + lastChange: + description: The time when the state of the resource last changed. + type: string + nodes: + description: List of Nodes on which the static routes are configured. + items: + type: string + type: array + operationalState: + description: Operational state of the static routes. + type: string + type: object + type: object +served: true +storage: true +subresources: + status: {} diff --git a/static/resources/25.8.3/staticroutes.protocols.eda.nokia.com/v1alpha1.yaml b/static/resources/25.8.3/staticroutes.protocols.eda.nokia.com/v1alpha1.yaml new file mode 100644 index 0000000..f65e6e8 --- /dev/null +++ b/static/resources/25.8.3/staticroutes.protocols.eda.nokia.com/v1alpha1.yaml @@ -0,0 +1,138 @@ +deprecated: true +deprecationWarning: This version is deprecated and will no longer be supported in the next version. +name: v1alpha1 +schema: + openAPIV3Schema: + description: StaticRoute is the Schema for the static routes API + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + description: StaticRoute allows for the specification of destination prefixes, route preferences, and the associated Router. It also supports configuring nexthop groups and specifying the nodes where the static routes should be provisioned. + properties: + nexthopGroup: + description: Group of nexthops for the list of prefixes. + properties: + bfd: + description: Enables BFD to the next-hops in the group. Local and Remote discriminator parameters have been deprecated at this level. Use Nexthop to set these parameters. + properties: + enabled: + default: false + description: Defines whether BFD should be enabled towards the nexthops. + type: boolean + localAddress: + description: Defines the local address to use when establishing the BFD session with the nexthop. + type: string + localDiscriminator: + description: Defines the local discriminator. + type: integer + remoteDiscriminator: + description: Defines the remote discriminator. + type: integer + type: object + blackhole: + default: false + description: If set to true all traffic destined to the prefixes will be blackholed. If enabled, next-hops are ignored and this takes precedence. + type: boolean + blackholeSendICMP: + description: When enabled, the router will generate ICMP Unreachable messages for packets destined to the blackhole route. + type: boolean + nexthops: + description: Ordered list of nexthops. + items: + properties: + bfd: + description: Enables BFD to the next-hops in the group. This overrides the configuration at the group. + properties: + enabled: + default: false + description: Defines whether BFD should be enabled towards the nexthops. + type: boolean + localAddress: + description: Defines the local address to use when establishing the BFD session with the nexthop. + type: string + localDiscriminator: + description: Defines the local discriminator. + type: integer + remoteDiscriminator: + description: Defines the remote discriminator. + type: integer + type: object + ipPrefix: + description: Address to use. + type: string + resolve: + default: false + description: If set to true the next-hops can be destinations which are resolved in the route table. This overrides the configuration at the group. + type: boolean + required: + - ipPrefix + type: object + type: array + resolve: + default: false + description: If set to true the next-hops can be destinations which are resolved in the route table. + type: boolean + type: object + nodes: + description: List of nodes on which to configure the static routes. An AND operation is executed against the nodes in this list and the nodes on which the Router is configured to determine the Nodes on which to configure the static routes. + items: + type: string + type: array + preference: + description: Defines the route preference. + type: integer + prefixes: + description: List of destination prefixes and mask to use for the static routes. + items: + type: string + type: array + router: + description: Reference to a Router on which to configure the static routes. If no Nodes are provided then the static routes will be provisioned on all Nodes on which the Router is provisioned. + type: string + required: + - nexthopGroup + - prefixes + - router + type: object + status: + description: StaticRouteStatus defines the observed state of Static Route + properties: + health: + description: Indicates the health score of the static routes. + type: integer + healthScoreReason: + description: Indicates the reason for the health score. + type: string + lastChange: + description: The time when the state of the resource last changed. + type: string + nodes: + description: List of Nodes on which the static routes are configured. + items: + type: string + type: array + operationalState: + description: Operational state of the static routes. + type: string + type: object + type: object +served: true +storage: false +subresources: + status: {} diff --git a/static/resources/25.8.3/subnetallocationpools.core.eda.nokia.com/v1.yaml b/static/resources/25.8.3/subnetallocationpools.core.eda.nokia.com/v1.yaml new file mode 100644 index 0000000..839785c --- /dev/null +++ b/static/resources/25.8.3/subnetallocationpools.core.eda.nokia.com/v1.yaml @@ -0,0 +1,90 @@ +name: v1 +schema: + openAPIV3Schema: + description: SubnetAllocationPool is the Schema for the subnetallocationpools API + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + description: |- + SubnetAllocationPool is a generic subnet allocation pool supporting allocation of IPv4 and/or IPv6 child subnets from a list of parent subnet segments. + It allocates a subnet of the configured length from the provided parent subnet. + For example a pool could return 10.1.0.8/29 when a segment is defined as subnet 10.1.0.0/16 with subnet length 29. + Consult application documentation to know which pool type to use for a given use case. + properties: + publishAllocations: + description: If true, allocations in segments will be published to EDB, available to query via EQL and trigger state applications off of. + type: boolean + segments: + description: List of segments containing subnets to allocate. + items: + properties: + allocations: + description: List of reservations to exclude from allocations from this segment. + items: + properties: + name: + description: Name of this allocation. + type: string + value: + description: Allocation to reserve. + type: string + required: + - name + - value + type: object + type: array + reservations: + description: List of ranges to exclude from allocations from this segment. + items: + properties: + end: + description: Value to reserve to. + type: string + start: + description: Value to start reserving. + type: string + required: + - end + - start + type: object + type: array + subnet: + description: IPv4 or IPv6 subnet to allocate subnets from, e.g. 10.1.0.0/16. + type: string + subnetLength: + description: The size of the subnets to be allocated from within the parent subnet, e.g. 29 (which could allocate 10.1.0.8/29, for example). + format: int32 + type: integer + required: + - subnet + - subnetLength + type: object + minItems: 1 + type: array + required: + - segments + type: object + status: + description: SubnetAllocationPoolStatus defines the observed state of SubnetAllocationPool + type: object + type: object +served: true +storage: true +subresources: + status: {} diff --git a/static/resources/25.8.3/systeminterfaces.routing.eda.nokia.com/v1alpha1.yaml b/static/resources/25.8.3/systeminterfaces.routing.eda.nokia.com/v1alpha1.yaml new file mode 100644 index 0000000..3b76471 --- /dev/null +++ b/static/resources/25.8.3/systeminterfaces.routing.eda.nokia.com/v1alpha1.yaml @@ -0,0 +1,117 @@ +additionalPrinterColumns: + - jsonPath: .status.lastChange + name: Last Change + type: date + - jsonPath: .status.operationalState + name: Operational State + type: string + - jsonPath: .spec.ipv4Address + name: IPv4 Address + type: string + - jsonPath: .spec.ipv6Address + name: IPv6 Address + type: string +name: v1alpha1 +schema: + openAPIV3Schema: + description: SystemInterface is the Schema for the systeminterfaces API + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + description: SystemInterfaceSpec defines the desired state of SystemInterface + properties: + bfd: + description: Enable or disable BFD on this SystemInterface. + properties: + desiredMinTransmitInt: + default: 1000000 + description: The minimum interval in microseconds between transmission of BFD control packets[default=1000000]. + maximum: 100000000 + minimum: 10000 + type: integer + detectionMultiplier: + default: 3 + description: The number of packets that must be missed to declare this session as down. [default=3] + maximum: 20 + minimum: 3 + type: integer + enabled: + default: false + description: Enable Biforward Detection[default=false]. + type: boolean + minEchoReceiveInterval: + default: 1000000 + description: The minimum interval between echo packets the local node can receive in microseconds + maximum: 100000000 + minimum: 0 + type: integer + requiredMinReceive: + default: 1000000 + description: The minimum interval in microseconds between received BFD control packets that this system should support.[default=1000000]. + maximum: 100000000 + minimum: 10000 + type: integer + ttl: + description: Sets custom IP TTL or Hop Limit for multi-hop BFD sessions packets. Not appllicable to single-hop BFD sessions. + maximum: 255 + minimum: 2 + type: integer + required: + - desiredMinTransmitInt + - detectionMultiplier + - enabled + - minEchoReceiveInterval + - requiredMinReceive + type: object + defaultRouter: + description: Reference to a DefaultRouter. + type: string + description: + description: The description of the SystemInterface. + type: string + ipv4Address: + description: IPv4 address in ip/mask form, e.g., 192.168.0.1/32. + type: string + ipv6Address: + description: IPv6 address in ip/mask form, e.g., fc00::1/128. + type: string + required: + - defaultRouter + type: object + status: + description: SystemInterfaceStatus defines the observed state of SystemInterface + properties: + health: + description: Indicates the health score of the SystemInterface. + type: integer + healthScoreReason: + description: Indicates the reason for the health score. + type: string + lastChange: + description: Indicates when this Interface last changed state. + type: string + operationalState: + description: Indicates the current operational state of the SystemInterface. + type: string + type: object + type: object +served: true +storage: true +subresources: + status: {} diff --git a/static/resources/25.8.3/systeminterfacestates.routing.eda.nokia.com/v1alpha1.yaml b/static/resources/25.8.3/systeminterfacestates.routing.eda.nokia.com/v1alpha1.yaml new file mode 100644 index 0000000..095e3ed --- /dev/null +++ b/static/resources/25.8.3/systeminterfacestates.routing.eda.nokia.com/v1alpha1.yaml @@ -0,0 +1,68 @@ +name: v1alpha1 +schema: + openAPIV3Schema: + description: SystemInterfaceState is the Schema for the systeminterfacestates API + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + description: SystemInterfaceStateSpec defines the desired state of SystemInterfaceState + properties: + defaultRouter: + description: Reference to a DefaultRouter + type: string + interface: + description: Reference to an interface + type: string + ipv4Address: + description: IPv4 address of the system interface + type: string + ipv6Address: + description: IPv6 addresses of the system interface + type: string + networkInstanceName: + description: The name of the network-instance or base routing instance in which the SystemInterface is configured + type: string + node: + description: Reference to Node object + type: string + nodeInterface: + description: Node specific interface name, for example "ethernet-1/1", "1/1/c1/1" + type: string + operatingSystem: + description: Operating System of the Node + type: string + subInterfaceIndex: + description: Index of the subinterface + type: integer + required: + - defaultRouter + - interface + - ipv4Address + - networkInstanceName + - node + - nodeInterface + type: object + status: + description: SystemInterfaceStateStatus defines the observed state of SystemInterfaceState + type: object + type: object +served: true +storage: true +subresources: + status: {} diff --git a/static/resources/25.8.3/targetnodes.core.eda.nokia.com/v1.yaml b/static/resources/25.8.3/targetnodes.core.eda.nokia.com/v1.yaml new file mode 100644 index 0000000..c40500a --- /dev/null +++ b/static/resources/25.8.3/targetnodes.core.eda.nokia.com/v1.yaml @@ -0,0 +1,443 @@ +additionalPrinterColumns: + - jsonPath: .status.tlsStatus.nodeSecurityProfile + name: NodeSecurityProfile + type: string + - jsonPath: .status.bootstrapStatus + name: Status + type: string + - jsonPath: .status.dhcpStatus + name: DHCP + type: string + - jsonPath: .spec.address + name: Address + type: string + - jsonPath: .spec.port + name: Port + type: string +name: v1 +schema: + openAPIV3Schema: + description: TargetNode is the Schema for the targetnodes API + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + description: TargetNodeSpec defines the desired state of TargetNode + properties: + address: + description: Addressed used to connect to TopoNode + type: string + dhcp4: + description: DHCPv4 configuration + properties: + address: + description: Assigned address in DHCP4 reply + type: string + options: + description: DHCP4 Options + items: + properties: + option: + description: DHCPv4 option to return to the TopoNode. + enum: + - 1-SubnetMask + - 2-TimeOffset + - 3-Router + - 4-TimeServer + - 5-NameServer + - 6-DomainNameServer + - 7-LogServer + - 8-QuoteServer + - 9-LPRServer + - 10-ImpressServer + - 11-ResourceLocationServer + - 12-HostName + - 13-BootFileSize + - 14-MeritDumpFile + - 15-DomainName + - 16-SwapServer + - 17-RootPath + - 18-ExtensionsPath + - 19-IPForwarding + - 20-NonLocalSourceRouting + - 21-PolicyFilter + - 22-MaximumDatagramAssemblySize + - 23-DefaultIPTTL + - 24-PathMTUAgingTimeout + - 25-PathMTUPlateauTable + - 26-InterfaceMTU + - 27-AllSubnetsAreLocal + - 28-BroadcastAddress + - 29-PerformMaskDiscovery + - 30-MaskSupplier + - 31-PerformRouterDiscovery + - 32-RouterSolicitationAddress + - 33-StaticRoutingTable + - 34-TrailerEncapsulation + - 35-ArpCacheTimeout + - 36-EthernetEncapsulation + - 37-DefaulTCPTTL + - 38-TCPKeepaliveInterval + - 39-TCPKeepaliveGarbage + - 40-NetworkInformationServiceDomain + - 41-NetworkInformationServers + - 42-NTPServers + - 43-VendorSpecificInformation + - 44-NetBIOSOverTCPIPNameServer + - 45-NetBIOSOverTCPIPDatagramDistributionServer + - 46-NetBIOSOverTCPIPNodeType + - 47-NetBIOSOverTCPIPScope + - 48-XWindowSystemFontServer + - 49-XWindowSystemDisplayManager + - 50-RequestedIPAddress + - 51-IPAddressLeaseTime + - 52-OptionOverload + - 53-DHCPMessageType + - 54-ServerIdentifier + - 55-ParameterRequestList + - 56-Message + - 57-MaximumDHCPMessageSize + - 58-RenewTimeValue + - 59-RebindingTimeValue + - 60-ClassIdentifier + - 61-ClientIdentifier + - 62-NetWareIPDomainName + - 63-NetWareIPInformation + - 64-NetworkInformationServicePlusDomain + - 65-NetworkInformationServicePlusServers + - 66-TFTPServerName + - 67-BootfileName + - 68-MobileIPHomeAgent + - 69-SimpleMailTransportProtocolServer + - 70-PostOfficeProtocolServer + - 71-NetworkNewsTransportProtocolServer + - 72-DefaultWorldWideWebServer + - 73-DefaultFingerServer + - 74-DefaultInternetRelayChatServer + - 75-StreetTalkServer + - 76-StreetTalkDirectoryAssistanceServer + - 77-UserClassInformation + - 78-SLPDirectoryAgent + - 79-SLPServiceScope + - 80-RapidCommit + - 81-FQDN + - 82-RelayAgentInformation + - 83-InternetStorageNameService + - 85-NDSServers + - 86-NDSTreeName + - 87-NDSContext + - 88-BCMCSControllerDomainNameList + - 89-BCMCSControllerIPv4AddressList + - 90-Authentication + - 91-ClientLastTransactionTime + - 92-AssociatedIP + - 93-ClientSystemArchitectureType + - 94-ClientNetworkInterfaceIdentifier + - 95-LDAP + - 97-ClientMachineIdentifier + - 98-OpenGroupUserAuthentication + - 99-GeoConfCivic + - 100-IEEE10031TZString + - 101-ReferenceToTZDatabase + - 112-NetInfoParentServerAddress + - 113-NetInfoParentServerTag + - 114-URL + - 116-AutoConfigure + - 117-NameServiceSearch + - 118-SubnetSelection + - 119-DNSDomainSearchList + - 120-SIPServers + - 121-ClasslessStaticRoute + - 122-CCC + - 123-GeoConf + - 124-VendorIdentifyingVendorClass + - 125-VendorIdentifyingVendorSpecific + - 128-TFTPServerIPAddress + - 129-CallServerIPAddress + - 130-DiscriminationString + - 131-RemoteStatisticsServerIPAddress + - 132-8021PVLANID + - 133-8021QL2Priority + - 134-DiffservCodePoint + - 135-HTTPProxyForPhoneSpecificApplications + - 136-PANAAuthenticationAgent + - 137-LoSTServer + - 138-CAPWAPAccessControllerAddresses + - 139-OPTIONIPv4AddressMoS + - 140-OPTIONIPv4FQDNMoS + - 141-SIPUAConfigurationServiceDomains + - 142-OPTIONIPv4AddressANDSF + - 143-OPTIONIPv6AddressANDSF + - 150-TFTPServerAddress + - 151-StatusCode + - 152-BaseTime + - 153-StartTimeOfState + - 154-QueryStartTime + - 155-QueryEndTime + - 156-DHCPState + - 157-DataSource + - 175-Etherboot + - 176-IPTelephone + - 177-EtherbootPacketCableAndCableHome + - 208-PXELinuxMagicString + - 209-PXELinuxConfigFile + - 210-PXELinuxPathPrefix + - 211-PXELinuxRebootTime + - 212-OPTION6RD + - 213-OPTIONv4AccessDomain + - 220-SubnetAllocation + - 221-VirtualSubnetAllocation + - 224-Reserved + - 225-Reserved + - 226-Reserved + - 227-Reserved + - 228-Reserved + - 229-Reserved + - 230-Reserved + - 231-Reserved + - 232-Reserved + - 233-Reserved + - 234-Reserved + - 235-Reserved + - 236-Reserved + - 237-Reserved + - 238-Reserved + - 239-Reserved + - 240-Reserved + - 241-Reserved + - 242-Reserved + - 243-Reserved + - 244-Reserved + - 245-Reserved + - 246-Reserved + - 247-Reserved + - 248-Reserved + - 249-Reserved + - 250-Reserved + - 251-Reserved + - 252-Reserved + - 253-Reserved + - 254-Reserved + - 255-End + type: string + value: + description: Value to return to the TopoNode for the specified option. + items: + type: string + minItems: 1 + type: array + required: + - option + - value + type: object + type: array + required: + - address + - options + type: object + dhcp6: + description: DHCPv6 configuration + properties: + address: + description: Assigned address in DHCP6 reply + type: string + options: + description: DHCP6 Options + items: + properties: + option: + description: DHCPv6 option to return to the TopoNode. + enum: + - 59-BootfileUrl + type: string + value: + description: Value to return to the TopoNode for the specified option. + items: + type: string + minItems: 1 + type: array + required: + - option + - value + type: object + type: array + required: + - address + - options + type: object + macAddress: + description: ' MAC address of the TopoNode' + type: string + operatingSystem: + description: The OS matching this NodeProfile + enum: + - srl + - sros + - eos + - sonic + - ios-xr + - nxos + type: string + platform: + description: Platform type of this Node, e.g. 7220 IXR-D3L + type: string + platformPath: + description: JSPath to use for retrieving the chassis string from the node + type: string + port: + description: Port used to connect to the TopoNode + type: integer + serialNumber: + description: Serial number of the TopoNode + type: string + serialNumberPath: + description: JSPath to use for retrieving the serial number string from the node + type: string + versionMatch: + description: |- + Match the node-retrieved version string to TargetNode version + The value should be a regular expression matching the version string that would appear on the node + type: string + versionPath: + description: JSPath to use for retrieving the version string from the node + type: string + required: + - address + - operatingSystem + type: object + status: + description: TargetNodeStatus defines the observed state of TargetNode + properties: + bootstrapStatus: + description: Bootstrap status of the Target + enum: + - Init + - Ready + - Failed + type: string + bootstrapStatusReason: + description: Human-readable message indicating details about the bootstrapStatus's Failed state + type: string + dhcpStatus: + description: DHCP status of the Target + enum: + - Offered + - Acknowledged + type: string + tlsStatus: + description: TLS status of the Target + properties: + nodeSecurityProfile: + description: NodeSecurity Profile Used + type: string + tls: + description: NodeSecurity Profile Used + properties: + csrParams: + description: A set of certificate signing request parameters used when asking for a CSR from the toponode. + properties: + certificateValidity: + default: 2160h + description: CertificateValidity defines the duration for which the certificate is considered valid after issuance. + type: string + city: + description: City denotes the city where the organization is based. + type: string + commonName: + description: CommonName specifies the common name field of the CSR, typically representing the domain name. + type: string + country: + description: Country indicates the country in which the organization is legally registered. + type: string + csrSuite: + default: CSRSUITE_X509_KEY_TYPE_RSA_2048_SIGNATURE_ALGORITHM_SHA_2_256 + description: The CSRSuite value used when asking for a CSR from the toponode + enum: + - CSRSUITE_X509_KEY_TYPE_RSA_2048_SIGNATURE_ALGORITHM_SHA_2_256 + - CSRSUITE_X509_KEY_TYPE_RSA_2048_SIGNATURE_ALGORITHM_SHA_2_384 + - CSRSUITE_X509_KEY_TYPE_RSA_2048_SIGNATURE_ALGORITHM_SHA_2_512 + - CSRSUITE_X509_KEY_TYPE_RSA_3072_SIGNATURE_ALGORITHM_SHA_2_256 + - CSRSUITE_X509_KEY_TYPE_RSA_3072_SIGNATURE_ALGORITHM_SHA_2_384 + - CSRSUITE_X509_KEY_TYPE_RSA_3072_SIGNATURE_ALGORITHM_SHA_2_512 + - CSRSUITE_X509_KEY_TYPE_RSA_4096_SIGNATURE_ALGORITHM_SHA_2_256 + - CSRSUITE_X509_KEY_TYPE_RSA_4096_SIGNATURE_ALGORITHM_SHA_2_384 + - CSRSUITE_X509_KEY_TYPE_RSA_4096_SIGNATURE_ALGORITHM_SHA_2_512 + - CSRSUITE_X509_KEY_TYPE_ECDSA_PRIME256V1_SIGNATURE_ALGORITHM_SHA_2_256 + - CSRSUITE_X509_KEY_TYPE_ECDSA_PRIME256V1_SIGNATURE_ALGORITHM_SHA_2_384 + - CSRSUITE_X509_KEY_TYPE_ECDSA_PRIME256V1_SIGNATURE_ALGORITHM_SHA_2_512 + - CSRSUITE_X509_KEY_TYPE_ECDSA_SECP384R1_SIGNATURE_ALGORITHM_SHA_2_256 + - CSRSUITE_X509_KEY_TYPE_ECDSA_SECP384R1_SIGNATURE_ALGORITHM_SHA_2_384 + - CSRSUITE_X509_KEY_TYPE_ECDSA_SECP384R1_SIGNATURE_ALGORITHM_SHA_2_512 + - CSRSUITE_X509_KEY_TYPE_ECDSA_SECP521R1_SIGNATURE_ALGORITHM_SHA_2_256 + - CSRSUITE_X509_KEY_TYPE_ECDSA_SECP521R1_SIGNATURE_ALGORITHM_SHA_2_384 + - CSRSUITE_X509_KEY_TYPE_ECDSA_SECP521R1_SIGNATURE_ALGORITHM_SHA_2_512 + - CSRSUITE_X509_KEY_TYPE_EDDSA_ED25519 + type: string + org: + description: Org is the name of the organization requesting the CSR. + type: string + orgUnit: + description: OrgUnit specifies the organizational unit (like department or division) within the organization. + type: string + san: + description: Subject Alternative Names contains additional hostnames or IP addresses covered by the CSR. + properties: + dns: + description: Dns contains a list of DNS names that can be used to access the server. + items: + type: string + type: array + emails: + description: Emails consists of email addresses that should be associated with the certificate. + items: + type: string + type: array + ips: + description: Ips includes IP addresses that the certificate should validate. + items: + type: string + type: array + uris: + description: Uris lists specific URIs that the certificate will authenticate. + items: + type: string + type: array + type: object + state: + description: State represents the state or province where the organization is located. + type: string + type: object + issuerRef: + description: Reference to a CertManager issuer that must be used to sign nodes certificates. + type: string + skipVerify: + description: Skip certificate verification. + type: boolean + trustBundle: + description: |- + Reference to configMap that contains a CA certificate that is used to verify the node certificate + when certificates are not managed by EDA. + type: string + type: object + type: object + type: object + type: object +served: true +storage: true +subresources: + status: {} diff --git a/static/resources/25.8.3/techsupports.oam.eda.nokia.com/v1alpha1.yaml b/static/resources/25.8.3/techsupports.oam.eda.nokia.com/v1alpha1.yaml new file mode 100644 index 0000000..d97136c --- /dev/null +++ b/static/resources/25.8.3/techsupports.oam.eda.nokia.com/v1alpha1.yaml @@ -0,0 +1,66 @@ +additionalPrinterColumns: + - jsonPath: .status.result + name: Result + type: string + - jsonPath: .metadata.creationTimestamp + name: Age + type: date +name: v1alpha1 +schema: + openAPIV3Schema: + description: TechSupport is the Schema for the techsupports API + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + description: Generate technical support packages for a node or set of nodes. + properties: + nodeSelectors: + description: |- + List of node selectors to select nodes generate technical support packages for. + This matches labels on TopoNode resources. + If no nodes are specified, and no node selectors are specified, all nodes in the given namespace will be selected. + This is a list of label expressions, e.g. ["eda.nokia.com/role=leaf"]. + items: + type: string + type: array + nodes: + description: List of nodes to generate and collect technical support packages for. + items: + type: string + type: array + type: object + status: + description: Result of the technical support package generation. + properties: + failedNodes: + description: |- + List of nodes failed to produce tech-support, it is populated in case of PartialSuccess + Items in the list should be the names of the nodes, where tech-support failed + items: + type: string + type: array + result: + description: Result + type: string + type: object + type: object +served: true +storage: true +subresources: + status: {} diff --git a/static/resources/25.8.3/thresholds.oam.eda.nokia.com/v1alpha1.yaml b/static/resources/25.8.3/thresholds.oam.eda.nokia.com/v1alpha1.yaml new file mode 100644 index 0000000..67242c3 --- /dev/null +++ b/static/resources/25.8.3/thresholds.oam.eda.nokia.com/v1alpha1.yaml @@ -0,0 +1,127 @@ +name: v1alpha1 +schema: + openAPIV3Schema: + description: Threshold is the Schema for the thresholds API + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + description: |- + A Threshold allows you to monitor a field in EDB and trigger severity-correct alarms based on the value of that field. + By using EDB as a source you are able to trigger thresholds on any published field from a TopoNode, or any other EDB source. + properties: + alarm: + description: Alarm details for this threshold. + properties: + description: + description: The description of the alarm. + type: string + probableCause: + description: The probable cause of the alarm. + type: string + remedialAction: + description: The remedial action for the alarm. + type: string + type: object + enabled: + default: true + description: Enable or disable this threshold. + type: boolean + field: + description: Field to monitor for this threshold, for example `utilization`. + type: string + generateOverlay: + default: false + description: Enable or disable generation of a topology overlay for this threshold. + type: boolean + name: + description: The name of this threshold. This name will be used to generate the alarm name, so should follow CamelCase conventions, e.g. VolumeUtilization. + type: string + path: + description: |- + Path to monitor for this threshold. This should be the full EDB path to the table containing the field you wish to trigger a threshold on. + For example, to monitor the utilization field of the component volume table, you would use `.namespace.node.normal.components_eda_nokia_com.v1.controlmodule.volume`, and set field to `utilization`. + type: string + resource: + description: |- + Which resource to associate with this threshold. This overrides the destination resource in alarms raised as a result of threshold breaches. + By default a resource will attempt to be derived based on the monitored path. + properties: + group: + description: The group of the resource to monitor. + type: string + kind: + description: The kind of resource to monitor. + type: string + name: + description: The name of the resource to monitor. + type: string + required: + - group + - kind + - name + type: object + thresholds: + description: Severities and their associated values. + properties: + criticalThreshold: + description: |- + The minimum average utilization over the last 1 minute to trigger a critical alarm. + This value must be greater than the majorThreshold. + type: integer + delta: + default: 5 + description: |- + The delta value for clearing a threshold. + For example, with a critical threshold of 90, direction of Rising and a delta of 5, the critical alarm will clear when the utilization drops below 85. + type: integer + direction: + default: Rising + description: 'Direction of the threshold: "Rising" or "Falling".' + enum: + - Rising + - Falling + type: string + majorThreshold: + description: |- + The minimum average utilization over the last 1 minute to trigger a major alarm. + This value must be greater than the minorThreshold. + type: integer + minorThreshold: + description: The minimum average utilization over the last 1 minute to trigger a minor alarm. + type: integer + warningThreshold: + description: The minimum average utilization over the last 1 minute to trigger a warning alarm. + type: integer + required: + - direction + type: object + required: + - field + - name + - path + - thresholds + type: object + status: + description: ThresholdStatus defines the observed state of Threshold + type: object + type: object +served: true +storage: true +subresources: + status: {} diff --git a/static/resources/25.8.3/thresholds.platformmetrics.eda.nokia.com/v1.yaml b/static/resources/25.8.3/thresholds.platformmetrics.eda.nokia.com/v1.yaml new file mode 100644 index 0000000..0693102 --- /dev/null +++ b/static/resources/25.8.3/thresholds.platformmetrics.eda.nokia.com/v1.yaml @@ -0,0 +1,37 @@ +name: v1 +schema: + openAPIV3Schema: + description: Threshold is the Schema for the thresholds API + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + description: ThresholdSpec defines the desired state of Threshold + properties: + foo: + description: Foo is an example field of Threshold. Edit threshold_types.go to remove/update + type: string + type: object + status: + description: ThresholdStatus defines the observed state of Threshold + type: object + type: object +served: true +storage: true +subresources: + status: {} diff --git a/static/resources/25.8.3/topobreakouts.core.eda.nokia.com/v1.yaml b/static/resources/25.8.3/topobreakouts.core.eda.nokia.com/v1.yaml new file mode 100644 index 0000000..47dc96b --- /dev/null +++ b/static/resources/25.8.3/topobreakouts.core.eda.nokia.com/v1.yaml @@ -0,0 +1,65 @@ +name: v1 +schema: + openAPIV3Schema: + description: TopoBreakout is the Schema for the topobreakouts API + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + description: TopoBreakoutSpec defines the desired state of TopoBreakout + properties: + channels: + description: The number of breakout channels to create + maximum: 8 + minimum: 1 + type: integer + interface: + description: A list of normalized parent interface/port + items: + type: string + type: array + node: + description: Reference to a list of TopoNodes where the parent interfaces are to be broken out + items: + type: string + type: array + speed: + description: The speed of each breakout channel + enum: + - 800G + - 400G + - 200G + - 100G + - 50G + - 40G + - 25G + - 10G + type: string + required: + - channels + - node + - speed + type: object + status: + description: TopoBreakoutStatus defines the observed state of TopoBreakout + type: object + type: object +served: true +storage: true +subresources: + status: {} diff --git a/static/resources/25.8.3/topolinkmonitors.topologies.eda.nokia.com/v1alpha1.yaml b/static/resources/25.8.3/topolinkmonitors.topologies.eda.nokia.com/v1alpha1.yaml new file mode 100644 index 0000000..9a8aaa1 --- /dev/null +++ b/static/resources/25.8.3/topolinkmonitors.topologies.eda.nokia.com/v1alpha1.yaml @@ -0,0 +1,33 @@ +name: v1alpha1 +schema: + openAPIV3Schema: + description: TopoLinkMonitor is the Schema for the topolinkmonitors API + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + description: TopoLinkMonitorSpec triggers the monitoring of TopoLinks. + type: object + status: + description: TopoLinkMonitorStatus defines the observed state of TopoLinkMonitor. + type: object + type: object +served: true +storage: true +subresources: + status: {} diff --git a/static/resources/25.8.3/topolinks.core.eda.nokia.com/v1.yaml b/static/resources/25.8.3/topolinks.core.eda.nokia.com/v1.yaml new file mode 100644 index 0000000..de70203 --- /dev/null +++ b/static/resources/25.8.3/topolinks.core.eda.nokia.com/v1.yaml @@ -0,0 +1,132 @@ +name: v1 +schema: + openAPIV3Schema: + description: TopoLink is the Schema for the topolinks API + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + description: |- + TopoLink represents a logical link between two TopoNodes. It may include more than one physical link, being used to represent a LAG or multihomed link. + To create a point to point link with a single interface on both sides use a single link property. + To create a point to point link with a LAG configured on both side, use two links with matching nodes. + A multihomed LAG is created by using two or more links where the A side and/or B side can be different. + Creating a link with only A specified will create an edge interface. + properties: + links: + description: Define the set of physical links making up this TopoLink. + items: + properties: + local: + description: Local, or "A" endpoint of the link. + properties: + interface: + description: Normalized name of the interface/port, e.g. ethernet-1-1. + type: string + interfaceResource: + description: Reference to a Interface. + type: string + node: + description: Reference to a TopoNode. + type: string + required: + - interfaceResource + - node + type: object + remote: + description: Remote, or "B" endpoint of the link. + properties: + interface: + description: Normalized name of the interface/port, e.g. ethernet-1-1. + type: string + interfaceResource: + description: Reference to a Interface. + type: string + node: + description: Reference to a TopoNode. + type: string + required: + - interfaceResource + - node + type: object + speed: + description: Speed of the link. + enum: + - 800G + - 400G + - 200G + - 100G + - 50G + - 40G + - 25G + - 10G + - 2.5G + - 1G + - 100M + type: string + type: + description: |- + Specify the type of link. + If type is set to edge, topology information for the remote device can be set; when doing so the Remote Node can be set as the hostname of the remote device and Remote Interface as the remote interface name in the device specific format, e.g. eth0. + enum: + - edge + - interSwitch + - loopback + type: string + required: + - local + - type + type: object + minItems: 1 + type: array + required: + - links + type: object + status: + description: TopoLinkStatus defines the observed state of TopoLink + properties: + members: + description: List of members present on the TopoLink. + items: + description: MemberStatus defines the state of each member of a TopoLink + properties: + interface: + description: Reference to an Interface + type: string + node: + description: Reference to a TopoNode + type: string + operationalState: + description: Indicates the operational state of the TopoLink member. + type: string + required: + - node + - operationalState + type: object + type: array + operationalState: + description: Indicates the aggregate operational state of the TopoLink. + type: string + required: + - operationalState + type: object + type: object +served: true +storage: true +subresources: + status: {} diff --git a/static/resources/25.8.3/topolinkstates.topologies.eda.nokia.com/v1alpha1.yaml b/static/resources/25.8.3/topolinkstates.topologies.eda.nokia.com/v1alpha1.yaml new file mode 100644 index 0000000..60f86d7 --- /dev/null +++ b/static/resources/25.8.3/topolinkstates.topologies.eda.nokia.com/v1alpha1.yaml @@ -0,0 +1,107 @@ +name: v1alpha1 +schema: + openAPIV3Schema: + description: TopoLinkState is the Schema for the topolinkstates API + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + description: |- + TopoLinkStateSpec represents a logical link between two TopoNodes. It may include more than one physical link, being used to represent a LAG or multihomed link. + To create a point to point link with a single interface on both sides use a single link property. + To create a point to point link with a LAG configured on both side, use two links with matching nodes. + A multihomed LAG is created by using two or more links where the A side and/or B side can be different. + Creating a link with only A specified will create an edge interface. + properties: + links: + description: Define the set of physical links making up this TopoLink. + items: + properties: + local: + description: Local, or "A" endpoint of the link. + properties: + interface: + description: Normalized name of the interface/port, e.g. ethernet-1-1. + type: string + interfaceResource: + description: Reference to a Interface. + type: string + node: + description: Reference to a TopoNode. + type: string + required: + - interfaceResource + - node + type: object + remote: + description: Remote, or "B" endpoint of the link. + properties: + interface: + description: Normalized name of the interface/port, e.g. ethernet-1-1. + type: string + interfaceResource: + description: Reference to a Interface. + type: string + node: + description: Reference to a TopoNode. + type: string + required: + - interfaceResource + - node + type: object + speed: + description: Speed of the link. + enum: + - 800G + - 400G + - 200G + - 100G + - 50G + - 40G + - 25G + - 10G + - 2.5G + - 1G + - 100M + type: string + type: + description: |- + Specify the type of link. + If type is set to edge, topology information for the remote device can be set; when doing so the Remote Node can be set as the hostname of the remote device and Remote Interface as the remote interface name in the device specific format, e.g. eth0. + enum: + - edge + - interSwitch + - loopback + type: string + required: + - local + - type + type: object + minItems: 1 + type: array + required: + - links + type: object + status: + description: TopoLinkStatus defines the observed state of TopoLink + type: object + type: object +served: true +storage: true +subresources: + status: {} diff --git a/static/resources/25.8.3/topologies.topologies.eda.nokia.com/v1alpha1.yaml b/static/resources/25.8.3/topologies.topologies.eda.nokia.com/v1alpha1.yaml new file mode 100644 index 0000000..19a65db --- /dev/null +++ b/static/resources/25.8.3/topologies.topologies.eda.nokia.com/v1alpha1.yaml @@ -0,0 +1,78 @@ +name: v1alpha1 +schema: + openAPIV3Schema: + description: Topology is the Schema for the topology state API + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + description: TopologySpec defines the desired state of Topology + properties: + enabled: + description: Enable or disable the generation of the status of this topology + type: boolean + endpointSubtitle: + description: Override the subtitle to show for endpoints in the topology + type: string + linkSubtitle: + description: Override the subtitle to show for links in the topology + type: string + nodeSubtitle: + description: Override the subtitle to show for nodes in the topology + type: string + overlays: + description: The set of overlays supported with this topology + items: + properties: + enabled: + description: Enable or disable the generation of the status of this overlay + type: boolean + key: + description: |- + A unique key for identifying this overlay within the topology. This is used internally + only. + type: string + required: + - enabled + - key + type: object + type: array + uiDescription: + description: A description of the topology to expose in the UI + type: string + uiDescriptionKey: + description: The translation key for the description of the topology to expose in the UI + type: string + uiName: + description: The name of the topology to expose in the UI + type: string + uiNameKey: + description: The translation key for the name of the topology to expose in the UI + type: string + required: + - enabled + - overlays + type: object + status: + description: TopologyStatus defines the observed state of Topology + type: object + type: object +served: true +storage: true +subresources: + status: {} diff --git a/static/resources/25.8.3/topologygroupings.topologies.eda.nokia.com/v1alpha1.yaml b/static/resources/25.8.3/topologygroupings.topologies.eda.nokia.com/v1alpha1.yaml new file mode 100644 index 0000000..22853ac --- /dev/null +++ b/static/resources/25.8.3/topologygroupings.topologies.eda.nokia.com/v1alpha1.yaml @@ -0,0 +1,79 @@ +name: v1alpha1 +schema: + openAPIV3Schema: + description: TopologyGrouping is the Schema for the topology grouping API + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + description: TopologyGroupingSpec defines the desired state of TopologyGrouping + properties: + groupSelectors: + description: The set of selectors for assigning nodes to groups + items: + properties: + group: + description: The group to assign to nodes that match the selector. + type: string + nodeSelector: + description: Label selector to use to match nodes that should be assigned to this group. + items: + type: string + type: array + required: + - group + type: object + type: array + tierSelectors: + description: The set of selectors for assigning nodes to tiers + items: + properties: + nodeSelector: + description: Label selector to use to match nodes that should be assigned to this tier. + items: + type: string + type: array + tier: + description: The tier to assign to nodes that match the selector. + format: int32 + type: integer + required: + - tier + type: object + type: array + uiDescription: + description: A description of the topology grouping to expose in the UI + type: string + uiDescriptionKey: + description: The translation key for the description of the topology grouping to expose in the UI + type: string + uiName: + description: The name of the topology grouping to expose in the UI + type: string + uiNameKey: + description: The translation key for the name of the topology grouping to expose in the UI + type: string + type: object + status: + description: TopologyGroupingStatus defines the observed state of TopologyGrouping + type: object + type: object +served: true +storage: true +subresources: + status: {} diff --git a/static/resources/25.8.3/toponodes.core.eda.nokia.com/v1.yaml b/static/resources/25.8.3/toponodes.core.eda.nokia.com/v1.yaml new file mode 100644 index 0000000..bb44864 --- /dev/null +++ b/static/resources/25.8.3/toponodes.core.eda.nokia.com/v1.yaml @@ -0,0 +1,222 @@ +additionalPrinterColumns: + - jsonPath: .spec.platform + name: Platform + type: string + - jsonPath: .spec.version + name: Version + type: string + - jsonPath: .spec.operatingSystem + name: OS + type: string + - jsonPath: .spec.onBoarded + name: OnBoarded + type: boolean + - jsonPath: .spec.npp.mode + name: Mode + type: string + - jsonPath: .status.npp-state + name: NPP + type: string + - jsonPath: .status.node-state + name: Node + type: string + - jsonPath: .metadata.creationTimestamp + name: Age + type: date +name: v1 +schema: + openAPIV3Schema: + description: TopoNode is the Schema for the toponodes API + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + description: A managed network element is represented via a TopoNode resource, describing characteristics of a specific element in the topology. + properties: + component: + description: |- + List of components within the TopoNode. + Used to define the type and location of linecards, fabrics (SFM), media adapter cards (MDA) and control cards (CPM). + items: + properties: + kind: + description: The kind of Component, e.g. lineCard. + enum: + - controlCard + - lineCard + - fabric + - mda + - connector + - xiom + - powerShelf + - powerModule + type: string + slot: + description: |- + The slot this Component resides in, unset for Components that do not have a slot or ID. + e.g. 1 would denote the linecard slot 1, 1/1 would denote linecard slot 1 mda slot 1. + type: string + type: + description: Denotes the type of hardware being provisioned, e.g. xcm-x20. + type: string + required: + - kind + - type + type: object + type: array + license: + description: Reference to a ConfigMap containing a license for the TopoNode. Overrides the license set in the referenced NodeProfile, if present. + type: string + macAddress: + description: |- + MAC address to associate with this TopoNode. + Typically the chassis MAC address, optionally sent by a node in DHCP requests. + Not required when a TopoNode is not being bootstrapped by EDA, or is simulated through CX. + type: string + nodeProfile: + description: Reference to a NodeProfile to use with this TopoNode. + type: string + npp: + description: Options relating to NPP interactions with the node. + properties: + mode: + default: normal + description: |- + The mode in which this TopoNode is functioning. + "normal" (the default) + indicates that NPP is expecting an endpoint to exist, and will accept and confirm changes only if the endpoint + accepts them. + "maintenance" + indicates that no changes will be accepted for the TopoNode, irrespective if the endpoint is up and reachable. + The exception is if an upgrade is occuring, in which case changes will be accepted. + "null" + indicates that changes will be accepted from CRs and no NPP will be spun up. NPP validation will not occur. + This may be useful in playground mode to avoid spinning up of 1000s of NPPs. + "emulate" + indicates that changes will be accepted at the NPP level, without pushing them to a endpoint. NPP validation + still occurs. If no IP address is present, we also run in emulate mode. + enum: + - normal + - maintenance + - "null" + - emulate + type: string + type: object + onBoarded: + default: false + description: |- + Indicates if this TopoNode has been bootstrapped or is reachable via configured credentials. Set by BootstrapServer when it completes onboarding functions for a given TopoNode. + Most applications ignore TopoNodes that have not been onboarded yet. + type: boolean + operatingSystem: + default: srl + description: Operating system running on this TopoNode, e.g. srl. + enum: + - srl + - sros + - eos + - sonic + - ios-xr + - nxos + - linux + type: string + platform: + description: Platform type of this TopoNode, e.g. 7220 IXR-D3L. + type: string + productionAddress: + description: |- + Production address of this TopoNode - this is the address the real, production instance of this TopoNode uses. + If left blank, an address will be allocated from the management IP pool specified in the referenced NodeProfile. + If this TopoNode is not bootstrapped by EDA this field must be provided. + properties: + ipv4: + description: The IPv4 production address + type: string + ipv6: + description: The IPv6 production address + type: string + type: object + serialNumber: + description: |- + Serial number of this TopoNode, optionally sent by a node in DHCP requests. + Not required when a TopoNode is not being bootstrapped by EDA, or is simulated through CX. + type: string + systemInterface: + description: 'Deprecated: Name of the Interface resource representing the primary loopback on the TopoNode, this field will be removed in the future version.' + type: string + version: + description: Sets the software version of this TopoNode, e.g. 24.7.1 (for srl), or 24.7.r1 (for sros). + type: string + required: + - nodeProfile + - operatingSystem + - platform + - version + type: object + status: + description: TopoNodeStatus defines the observed state of TopoNode + properties: + node-details: + description: Address and port used to connected to the node. + type: string + node-state: + description: |- + The current state of the connection between NPP and the node. + "TryingToConnect" + NPP is attempting to connect and establish connectivity to the node + "WaitingForInitialCfg" + NPP is connected to the node but waiting for intial config to push + "Committing" + NPP is in progress of commiting + "RetryingCommit" + NPP lost sync to node and is re-pushing current config + "Synced" + NPP is in fully synced state + "Standby" + NPP is running in standby mode. This state is only used on standby clusters with georedundancy. + "NoIpAddress" + NPP is running but there is no IP address for node. This only happen in sim setups when + CX has not created the simulated node, or the simulated pod failed to launch due to image error. + type: string + npp-details: + description: NPP address and port for this TopoNode. + type: string + npp-pod: + description: NPP pod name + type: string + npp-state: + description: The current state of the connection between ConfigEngine and NPP. + type: string + operatingSystem: + description: Operational operating system running on this TopoNode, e.g. srl, sros. + type: string + platform: + description: Operational platform type of this TopoNode, e.g. 7220 IXR-D3L. + type: string + simulate: + description: Simulate using CX - if true CX is reponsible for generating the TargetNode resource. + type: boolean + version: + description: Operational software version of this TopoNode, e.g. 24.7.1 (for srl), or 24.7.r1 (for sros). + type: string + type: object + type: object +served: true +storage: true +subresources: + status: {} diff --git a/static/resources/25.8.3/trafficrateoverlays.topologies.eda.nokia.com/v1alpha1.yaml b/static/resources/25.8.3/trafficrateoverlays.topologies.eda.nokia.com/v1alpha1.yaml new file mode 100644 index 0000000..0670216 --- /dev/null +++ b/static/resources/25.8.3/trafficrateoverlays.topologies.eda.nokia.com/v1alpha1.yaml @@ -0,0 +1,69 @@ +name: v1alpha1 +schema: + openAPIV3Schema: + description: TrafficRateOverlay is the Schema for trafficrateoverlays + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + description: TrafficRateOverlaySpec defines the desired state of TrafficRateOverlay + properties: + enabled: + description: Enable or disable the generation of the status of this overlay + type: boolean + topology: + description: Reference to the topology that this overlay is extending. + properties: + group: + description: The group of the application which published the topology this overlay is extending. + type: string + name: + description: The name of the resource which published the topology this overlay is extending. + type: string + version: + description: The version of the application which published the topology this overlay is extending. + type: string + required: + - group + - name + - version + type: object + uiDescription: + description: A description of the overlay to expose in the UI + type: string + uiDescriptionKey: + description: The translation key for the description of the overlay to expose in the UI + type: string + uiName: + description: The name of the overlay to expose in the UI + type: string + uiNameKey: + description: The translation key for the name of the overlay to expose in the UI + type: string + required: + - enabled + - topology + type: object + status: + description: TrafficRateOverlayStatus defines the observed state of TrafficRateOverlay + type: object + type: object +served: true +storage: true +subresources: + status: {} diff --git a/static/resources/25.8.3/transactionresults.core.eda.nokia.com/v1.yaml b/static/resources/25.8.3/transactionresults.core.eda.nokia.com/v1.yaml new file mode 100644 index 0000000..7eac55e --- /dev/null +++ b/static/resources/25.8.3/transactionresults.core.eda.nokia.com/v1.yaml @@ -0,0 +1,210 @@ +additionalPrinterColumns: + - jsonPath: .spec.result + name: Result + type: string + - jsonPath: .metadata.creationTimestamp + name: Age + type: date + - jsonPath: .spec.dryRun + name: DryRun + type: string + - jsonPath: .spec.description + name: Description + type: string +name: v1 +schema: + openAPIV3Schema: + description: TransactionResult is the Schema for the transactionresults API + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + description: TransactionResultSpec defines the desired state of TransactionResult + properties: + applicationErrors: + description: Any errors generated by applications run in this transaction. + items: + properties: + errors: + description: Errors returned by this application, if any. + items: + type: string + type: array + gvk: + description: Group, version, kind of the application. + type: string + name: + description: Name of the application. + type: string + namespace: + description: Namespace of the application. + type: string + script: + description: Application execution information. + properties: + executionTimeUs: + description: Execution time in microseconds. + type: integer + output: + description: Any output from the application. + type: string + type: object + required: + - gvk + - name + - namespace + - script + type: object + type: array + bundledTransactionId: + description: The transaction Id of the transaction that this transaction is bundled with, if any. + type: integer + commit: + description: The git commit hash of the transaction + type: string + description: + description: The description passed through from the input transaction, if any. + type: string + dryRun: + description: Indicates if the transaction was a dry run. + type: boolean + executionSummary: + description: A summary of this transaction + properties: + appSummary: + description: Summary of applications run in this transaction. + items: + properties: + gvk: + description: Group, version, kind of the application. + type: string + instancesRun: + description: The number of resources of this kind that were processed. + type: integer + totalExecutionTimeMs: + description: Total execution time in milliseconds. + type: integer + required: + - gvk + - instancesRun + - totalExecutionTimeMs + type: object + type: array + engineTimeMs: + description: The time spent in the engine computing the transaction in milliseconds. + type: integer + inputResourceCount: + description: The number of input resources processed in this transaction. + type: integer + publishTimeMs: + description: The time spent publishing changes to Kubernetes. + type: integer + pushTimeMs: + description: The time spent pushing changes to targets. + type: integer + saveTimeMs: + description: The time spent saving changes to git. + type: integer + targetsModified: + description: Targets with configuration changes in this transaction. + items: + properties: + name: + description: The name of a target that generated an error. + type: string + namespace: + description: Namespace of the application. + type: string + required: + - name + - namespace + type: object + type: array + targetsModifiedCount: + description: The number of targets with configuration changes in this transaction. + type: integer + totalTimeMs: + description: The total time spent executing the transaction. Due to parallelism, this may be less than the sum of the other times. + type: integer + type: object + generalErrors: + description: Any errors that aren't specific or can't be mapped to an individual application. + items: + type: string + type: array + inputResources: + description: The set of input resources that were processed in the transaction. + items: + properties: + action: + description: Action on the resource. + type: string + gvk: + description: Group, version, kind of the resource. + type: string + name: + description: Name of the resource. + type: string + namespace: + description: Namespace of the resource. + type: string + required: + - gvk + - name + - namespace + type: object + type: array + result: + description: The transaction result. + type: string + targetErrors: + description: Any errors generated by targets in this transaction. + items: + properties: + errors: + description: Errors returned by this target. + items: + type: string + type: array + name: + description: The name of a target that generated an error. + type: string + namespace: + description: Namespace of the application. + type: string + required: + - name + - namespace + type: object + type: array + timestamp: + description: The timestamp when the transaction finished + format: date-time + type: string + username: + description: The username of the user that initiated the transaction + type: string + type: object + status: + description: TransactionResultStatus defines the observed state of TransactionResult + type: object + type: object +served: true +storage: true +subresources: + status: {} diff --git a/static/resources/25.8.3/transactions.core.eda.nokia.com/v1.yaml b/static/resources/25.8.3/transactions.core.eda.nokia.com/v1.yaml new file mode 100644 index 0000000..82032b5 --- /dev/null +++ b/static/resources/25.8.3/transactions.core.eda.nokia.com/v1.yaml @@ -0,0 +1,102 @@ +additionalPrinterColumns: + - jsonPath: .metadata.creationTimestamp + name: Age + type: date + - jsonPath: .status.result + name: Result + type: string +name: v1 +schema: + openAPIV3Schema: + description: Transaction is the Schema for the transactions API + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + description: TransactionSpec defines the desired state of Transaction + properties: + description: + description: A user provided description of the transaction. + type: string + dryRun: + description: Indicates the system should dry run the transaction without actually performing it. A transaction that is dry run will perform all steps other than pushing changes to endpoints. + type: boolean + items: + description: Items to include in this transaction. + items: + properties: + delete: + description: Delete is a reference to a GVK and name of a resource to delete. + properties: + gvk: + description: GVK is the Group, Version, Kind of the resource to delete. + properties: + group: + type: string + kind: + type: string + version: + type: string + required: + - kind + - version + type: object + name: + description: Name is the name of the resource to delete. + type: string + namespace: + description: Namespace is the namespace of the resource to delete. + type: string + required: + - gvk + - name + type: object + replace: + description: Replace is an unstructured, "free-form" Kubernetes resource, complete with GVK, metadata and spec. + type: object + x-kubernetes-embedded-resource: true + x-kubernetes-preserve-unknown-fields: true + type: object + minItems: 1 + type: array + keepDetailedLog: + description: Indicates the system should keep a detailed log of the transaction. + type: boolean + required: + - items + type: object + status: + description: TransactionStatus defines the observed state of Transaction + properties: + errors: + description: Errors is a list of error messages encountered during the transaction, if any. + items: + type: string + type: array + result: + description: Result is the overall status of the transaction. + type: string + transactionId: + description: Reference to the transaction id storing detailed information about the transaction. + type: integer + type: object + type: object +served: true +storage: true +subresources: + status: {} diff --git a/static/resources/25.8.3/udpproxies.core.eda.nokia.com/v1.yaml b/static/resources/25.8.3/udpproxies.core.eda.nokia.com/v1.yaml new file mode 100644 index 0000000..c8ade48 --- /dev/null +++ b/static/resources/25.8.3/udpproxies.core.eda.nokia.com/v1.yaml @@ -0,0 +1,76 @@ +additionalPrinterColumns: + - jsonPath: .spec.proxyPort + name: Proxy Port + type: integer + - jsonPath: .spec.destHost + name: Dest Host + type: string + - jsonPath: .spec.destPort + name: Dest Port + type: integer +name: v1 +schema: + openAPIV3Schema: + description: UdpProxy is the Schema for the UDP proxy API + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + description: UdpProxySpec defines the desired state of UdpProxy + properties: + bufferSize: + description: |- + The proxy will use a buffer of this size for all datagrams it receives and this must be sized + to accommodate the largest datagrams expected + maximum: 65535 + minimum: 64 + type: integer + destHost: + description: The destination hostname or IP address to forward the datagrams to + type: string + destPort: + description: The destination UDP port to forward the datagrams to + maximum: 65535 + minimum: 1 + type: integer + idleTimeout: + description: |- + The proxy will listen for responses from the destination and forward it back to the source + of the datagram until there is no traffic at all for at least the idle timeout in seconds + minimum: 1 + type: integer + proxyPort: + description: The UDP port on which to listen for datagrams and then proxy to the destination + maximum: 65535 + minimum: 1 + type: integer + required: + - bufferSize + - destHost + - destPort + - idleTimeout + - proxyPort + type: object + status: + description: UdpProxyStatus defines the observed state of UdpProxy + type: object + type: object +served: true +storage: true +subresources: + status: {} diff --git a/static/resources/25.8.3/userdeployments.aaa.eda.nokia.com/v1alpha1.yaml b/static/resources/25.8.3/userdeployments.aaa.eda.nokia.com/v1alpha1.yaml new file mode 100644 index 0000000..8a4c374 --- /dev/null +++ b/static/resources/25.8.3/userdeployments.aaa.eda.nokia.com/v1alpha1.yaml @@ -0,0 +1,33 @@ +name: v1alpha1 +schema: + openAPIV3Schema: + description: UserDeployment is the Schema for the userdeployments API + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + description: UserDeploymentSpec defines the desired state of UserDeployment + type: object + status: + description: UserDeploymentStatus defines the observed state of UserDeployment + type: object + type: object +served: true +storage: true +subresources: + status: {} diff --git a/static/resources/25.8.3/virtualnetworks.services.eda.nokia.com/v1.yaml b/static/resources/25.8.3/virtualnetworks.services.eda.nokia.com/v1.yaml new file mode 100644 index 0000000..318ce30 --- /dev/null +++ b/static/resources/25.8.3/virtualnetworks.services.eda.nokia.com/v1.yaml @@ -0,0 +1,2316 @@ +additionalPrinterColumns: + - jsonPath: .status.operationalState + name: OperationalState + type: string + - jsonPath: .status.lastChange + name: LastChange + type: string +name: v1 +schema: + openAPIV3Schema: + description: VirtualNetwork is the Schema for the virtualnetworks API + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + description: VirtualNetworkSpec defines the desired state of VirtualNetwork + properties: + bridgeDomains: + description: List of Subnets. [emits=BridgeDomain] + items: + properties: + name: + description: The name of the BridgeDomain. + type: string + spec: + description: Specification of the BridgeDomain + properties: + description: + description: The description of the BridgeDomain. + type: string + evi: + description: EVI to use for this BridgeDomain, can be optionally left blank to have it automatically allocated using the EVI Pool. + maximum: 65535 + minimum: 1 + type: integer + eviPool: + default: evi-pool + description: Reference to an EVI pool to use for allocations if EVI is left blank. + type: string + exportTarget: + description: Export route target in 'target:N:N' format, if not specified, the default value taken as "target:1:". + pattern: ^target.*$ + type: string + importTarget: + description: Import route target in 'target:N:N' format, if not specified, the default value taken as "target:1:". + pattern: ^target.*$ + type: string + l2proxyARPND: + description: Enables / Disabled Proxy ARP / Proxy ND. + properties: + dynamicLearning: + properties: + ageTime: + description: Aging timer value for the proxy entries in seconds. If not set, this indicates that the entries are never flushed. + maximum: 86400 + minimum: 60 + type: integer + enabled: + default: false + description: Enables or disables Dynamic Learning. + type: boolean + sendRefresh: + description: The interval determines the frequency at which the system generates three ARP Requests or Neighbor Solicitations with the intent to refresh the proxy entry. The refresh is sent within the age-time window. + maximum: 86400 + minimum: 120 + type: integer + type: object + ipDuplication: + properties: + enabled: + default: false + description: Enables or disables IP Duplication. + type: boolean + holdDownTime: + default: 9 + description: Time to wait in minutes from the moment an IP is declared duplicate to the time the IP is removed from the proxy ARP/ND table. + maximum: 60 + minimum: 2 + type: integer + monitoringWindow: + default: 3 + description: Monitoring window for detecting duplication on a given IP address in the proxy ARP/ND table. + maximum: 15 + minimum: 1 + type: integer + numMoves: + default: 5 + description: Number of moves in the proxy ARP/ND table that an IP is allowed within the monitoring-window. + maximum: 10 + minimum: 3 + type: integer + type: object + proxyARP: + default: false + description: Enables proxy ARP. + type: boolean + proxyND: + default: false + description: Enables proxy ND. + type: boolean + tableSize: + default: 250 + description: Maximum number of entries allowed in the proxy table of the bridge domain. + maximum: 8192 + minimum: 1 + type: integer + type: object + macAging: + default: 300 + description: Configurable aging time for dynamically learned mac addresses. + format: int32 + maximum: 86400 + minimum: 60 + type: integer + macDuplicationDetection: + description: Enable or disable MAC duplication detection and resolution mechanisms. + properties: + action: + default: StopLearning + description: Action to take on the subinterface upon detecting at least one mac addresses as duplicate on the subinterface. + enum: + - Blackhole + - OperDown + - StopLearning + type: string + enabled: + default: false + description: Enables or disables Mac Duplication Detection. + type: boolean + holdDownTime: + default: 9 + description: Time to wait in minutes from the moment a mac is declared duplicate to the mac is flushed from the bridge table. + maximum: 60 + minimum: 2 + type: integer + monitoringWindow: + default: 3 + description: Monitoring window in minutes for detecting duplication on a given mac address. + maximum: 15 + minimum: 1 + type: integer + numMoves: + default: 5 + description: Number of moves a mac is allowed within the monitoring-window, before it is declared duplicate. + minimum: 3 + type: integer + type: object + macLearning: + default: true + description: Enable MAC learning for this BridgeDomain. + type: boolean + macLimit: + description: Sets the maximum number of MAC entries accepted in the bridge table. + format: int32 + minimum: 1 + type: integer + tunnelIndexPool: + default: tunnel-index-pool + description: Reference to a tunnel index pool to use for allocations. + type: string + type: + default: EVPNVXLAN + description: Select the type of BridgeDomain. Simple doesn't include any overlay control plane or dataplane properties (EVPN/VXLAN). EVPNVXLAN includes the properties needed to provision this BridgeDomain over an IP Fabric. + enum: + - SIMPLE + - EVPNVXLAN + type: string + vni: + description: VNI to use for this BridgeDomain, can be optionally left blank to have it allocated using the VNI Pool. + maximum: 16777215 + minimum: 1 + type: integer + vniPool: + default: vni-pool + description: Reference to a VNI pool to use for allocations if VNI is left blank. + type: string + type: object + required: + - name + - spec + type: object + type: array + bridgeInterfaces: + description: List of BridgeInterfaces. [emits=BridgeInterface] + items: + properties: + name: + description: The name of the BridgeInterface. + type: string + spec: + description: Specification of the BridgeInterface + properties: + bridgeDomain: + description: Reference to a BridgeDomain in which to attach the BridgeInterface. + type: string + description: + description: The description of the BridgeInterface. + type: string + egress: + description: Manages actions on traffic at Egress. + properties: + filters: + description: List of Filter references to use at egress. + items: + type: string + type: array + qosPolicy: + description: List of QoS Egress policy references to use at egress. + items: + type: string + type: array + type: object + ingress: + description: Manages actions on traffic at Ingress. + properties: + filters: + description: List of Filter references to use at ingress. + items: + type: string + type: array + qosPolicy: + description: List of QoS Ingress policy references to use at ingress. + items: + type: string + type: array + type: object + interface: + description: Reference to an Interface resource to attach this BridgeInterface. + type: string + l2MTU: + description: L2 MTU specifies the maximum sized Ethernet frame that can be transmitted on the subinterface. If a frame exceeds this size it is discarded. If the l2-mtu of the subinterface exceeds the port-mtu of the associated interface, the subinterface will remain operationally down. + maximum: 9500 + minimum: 1450 + type: integer + macDuplicationDetectionAction: + description: Override for Mac Duplication Detection action if enabled in the associated BridgeDomain. + enum: + - Blackhole + - OperDown + - StopLearning + - UseBridgeDomainAction + type: string + splitHorizonGroup: + description: Split Horizon Group to be used for this BridgeInterface. The subinterface within this BridgeInterface will be a member of this Split Horizon Group. + type: string + uplink: + description: The Uplink between your access breakout switch and your leaf switch. + properties: + egress: + description: Manages actions on traffic at Egress of the Local enpoint of the Uplink. + properties: + filters: + description: List of Filter references to use at egress. + items: + type: string + type: array + qosPolicy: + description: List of QoS Egress policy references to use at egress. + items: + type: string + type: array + type: object + ingress: + description: Manages actions on traffic at Ingress of the Local enpoint of the Uplink. + properties: + filters: + description: List of Filter references to use at ingress. + items: + type: string + type: array + qosPolicy: + description: List of QoS Ingress policy references to use at ingress. + items: + type: string + type: array + type: object + uplinkSelector: + description: Selects TopoLinks which connect a leaf switch to a breakout switch. This is the uplink between your access breakout switch and your leaf switch. There can only be a single TopoLink between the access breakout switch and the leaf switch, if more than one TopoLink is present between two devices the transaction will fail. + items: + type: string + type: array + uplinkVLANID: + default: pool + description: The VLAN ID to be utilized to isolate traffic from the VLAN on the access breakout switch to the leaf switch on the selected uplink TopoLink. + type: string + uplinkVLANPool: + description: A VLAN from this pool will be utilized to isolate traffic from the VLAN on the access breakout switch to the leaf switch on the selected uplink TopoLink. + type: string + type: object + vlanID: + description: Single value between 1-4094 support, ranges supported in the format x-y,x-y, or the special keyword null, any, untagged or pool for auto allocation. + type: string + required: + - bridgeDomain + - interface + - vlanID + type: object + required: + - name + - spec + type: object + type: array + irbInterfaces: + description: List of IRBInterfaces. [emits=IRBInterface] + items: + properties: + name: + description: The name of the IrbInterface. + type: string + spec: + description: Specification of the IrbInterface + properties: + anycastGatewayMAC: + description: The gateway MAC to use on the anycast address, if left empty the node will automatically assign one. + type: string + arpTimeout: + default: 14400 + description: Duration of time that dynamic ARP entries remain in the ARP cache before they expire. + format: int32 + type: integer + bfd: + description: Enable BFD on the IRBInterface. + properties: + desiredMinTransmitInt: + default: 1000000 + description: The minimum interval in microseconds between transmission of BFD control packets. + maximum: 100000000 + minimum: 10000 + type: integer + detectionMultiplier: + default: 3 + description: The number of packets that must be missed to declare this session as down. + maximum: 20 + minimum: 3 + type: integer + enabled: + default: false + description: Enables Biforward Detection. + type: boolean + minEchoReceiveInterval: + default: 0 + description: The minimum interval between echo packets the local node can receive. + maximum: 100000000 + minimum: 0 + type: integer + requiredMinReceive: + default: 1000000 + description: The minimum interval in microseconds between received BFD control packets that this system should support. + maximum: 100000000 + minimum: 10000 + type: integer + ttl: + description: Sets custom IP TTL or Hop Limit for multi-hop BFD sessions packets. Not appllicable to single-hop BFD sessions. + maximum: 255 + minimum: 2 + type: integer + required: + - enabled + type: object + bridgeDomain: + description: Reference to a BridgeDomain. + type: string + description: + description: The description of the IRBInterface. + type: string + egress: + description: Manages actions on traffic at Egress. + properties: + filters: + description: List of Filter references to use at egress. + items: + type: string + type: array + qosPolicy: + description: List of QoS Egress policy references to use at egress. + items: + type: string + type: array + type: object + evpnRouteAdvertisementType: + description: Controls the type of ARP/ND entries to advertise. + properties: + arpDynamic: + default: false + description: Advertise dynamic ARP entries. + type: boolean + arpStatic: + default: false + description: Advertise static ARP entries. + type: boolean + ndDynamic: + default: false + description: Advertise dynamic ND entries. + type: boolean + ndStatic: + default: false + description: Advertise static ND entries. + type: boolean + type: object + hostRoutePopulate: + description: Configures host route population based on ARP entries. + properties: + dynamic: + default: true + description: Create host routes out of dynamic ARP entries. + type: boolean + evpn: + default: false + description: Create host routes out of EVPN learned ARP entries. + type: boolean + static: + default: true + description: Create host routes out of static ARP entries. + type: boolean + type: object + ingress: + description: Manages actions on traffic at Ingress. + properties: + filters: + description: List of Filter references to use at ingress. + items: + type: string + type: array + qosPolicy: + description: List of QoS Ingress policy references to use at ingress. + items: + type: string + type: array + type: object + ipAddresses: + items: + properties: + ipv4Address: + description: IPv4 address in IP/mask form, e.g., 192.168.0.1/24. + properties: + ipPrefix: + description: Address and mask to use + type: string + primary: + description: Indicates which address to use as primary for broadcast + type: boolean + required: + - ipPrefix + type: object + ipv6Address: + description: IPv6 address in IP/mask form, e.g., fc00::1/120. + properties: + ipPrefix: + description: Address and mask to use + type: string + primary: + description: Indicates which address to use as primary for broadcast + type: boolean + required: + - ipPrefix + type: object + node: + description: Reference to a TopoNode resource, if not specified the IP address will be assigned to all nodes on which the IRB is deployed. If specified the IP address will be assigned to the specified node. + type: string + type: object + type: array + ipMTU: + default: 1500 + description: IP MTU for the IRBInterface [default=1500]. + maximum: 9486 + minimum: 1280 + type: integer + ipv4Parameters: + properties: + directedBroadcast: + description: Allow receiving and forwarding of directed broadcast packets. Enabled when set to true. + type: boolean + type: object + ipv6RouterAdvertisement: + properties: + currentHopLimit: + default: 64 + description: The current hop limit to advertise in the router advertisement messages. + format: int32 + maximum: 255 + minimum: 0 + type: integer + enabled: + default: false + description: Enable or disable IPv6 router advertisements. + type: boolean + ipMTU: + description: The IP MTU to advertise in the router advertisement messages. + format: int32 + maximum: 9486 + minimum: 1280 + type: integer + managedConfigurationFlag: + default: false + description: Enable DHCPv6 for address configuration (M-bit). + type: boolean + maxAdvertisementInterval: + default: 600 + description: Maximum time between router advertisements (in seconds). + format: int32 + maximum: 1800 + minimum: 4 + type: integer + minAdvertisementInterval: + default: 200 + description: Minimum time between router advertisements (in seconds). + format: int32 + maximum: 1350 + minimum: 3 + type: integer + otherConfigurationFlag: + default: false + description: Enable DHCPv6 for other configuration (O-bit). + type: boolean + prefixes: + description: IPv6 prefixes to advertise in router advertisements. + items: + description: IPv6Prefix defines the configuration for an IPv6 prefix advertisement. + properties: + autonomousFlag: + default: true + description: When this is set in the prefix information option hosts can use the prefix for stateless address autoconfiguration (SLAAC). + type: boolean + onLinkFlag: + default: true + description: When this is set in the prefix information option hosts can use the prefix for on-link determination. + type: boolean + preferredLifetime: + default: 604800 + description: The length of time in seconds (relative to the time the packet is sent) that addresses generated from the prefix via stateless address autoconfiguration remain preferred. + format: int32 + maximum: 4294967295 + minimum: 0 + type: integer + prefix: + description: An IPv6 global unicast address prefix. + type: string + validLifetime: + default: 2592000 + description: The length of time in seconds (relative to the time the packet is sent) that the prefix is valid for the purpose of on-link determination. + format: int32 + maximum: 4294967295 + minimum: 0 + type: integer + required: + - prefix + type: object + type: array + reachableTime: + default: 0 + description: Time in milliseconds for Neighbor Unreachability Detection. + format: int32 + maximum: 3600000 + minimum: 0 + type: integer + retransmitTime: + default: 0 + description: Time in milliseconds between retransmitted NS messages. + format: int32 + maximum: 1800000 + minimum: 0 + type: integer + routerLifetime: + default: 1800 + description: Router lifetime in seconds for default gateway. + format: int32 + maximum: 9000 + minimum: 0 + type: integer + required: + - currentHopLimit + - enabled + - managedConfigurationFlag + - maxAdvertisementInterval + - minAdvertisementInterval + - otherConfigurationFlag + - retransmitTime + - routerLifetime + type: object + l3ProxyARPND: + description: L3 Proxy ARP and ND configuration. + properties: + proxyARP: + default: false + description: Select whether Proxy ARP should be enabled. + type: boolean + proxyND: + default: false + description: Select whether Proxy ND should be enabled. + type: boolean + type: object + learnUnsolicited: + default: NONE + description: Enable or disable learning of unsolicited ARPs. + enum: + - BOTH + - GLOBAL + - LINK-LOCAL + - NONE + type: string + router: + description: Reference to a Router. + type: string + unnumbered: + description: Enables the use of unnumbered interfaces on the IRBInterface. If IPv6 is specified, no IP address are configured on the sub-interface and only the link local address will be used. If any IP addresses are specified for either IPv4 or IPv6 that will take precedence and IPs will be assigned to the interfaces.(Deprecated, Use IPv6RouterAdvertisement) + enum: + - IPV6 + type: string + virtualIPDiscovery: + description: Configuration for Virtual IP discovery on the interface. + items: + properties: + address: + description: Virtual IP Address. + type: string + allowedMAC: + description: List of allowed MAC addresses for a discovered virtual IP address. + items: + type: string + type: array + bridgeInterfaceToProbe: + description: List of BridgeInterfaces on the associated MAC-VRF to which the ARP probes are sent. If left blank, the probes are sent on all BridgeInterfaces associated with the BridgeDomain. + items: + type: string + type: array + probeInterval: + default: 0 + description: ARP probe interval in seconds. + maximum: 86400 + minimum: 0 + type: integer + vlanToProbe: + description: List of VLANs on the associated BridgeDomain to which the ARP probes are sent. If left blank, the probes are sent on all VLANs associated with the BridgeDomain. + items: + type: string + type: array + required: + - address + type: object + type: array + required: + - bridgeDomain + - router + type: object + required: + - name + - spec + type: object + type: array + protocols: + description: Protocols to configure. + properties: + bgp: + description: BGP Protocol. + properties: + bgpGroups: + description: List of BgpGroups. [emits=BGPGroup] + items: + properties: + name: + description: The name of the BgpGroup. + type: string + spec: + description: Specification of the BgpGroup + properties: + asPathOptions: + description: AS Path Options + properties: + allowOwnAS: + default: 0 + description: The maximum number of times the global AS number or a local AS number of the BGP instance can appear in any received AS_PATH before it is considered a loop and considered invalid. + maximum: 255 + minimum: 0 + type: integer + removePrivateAS: + description: Options for removing private AS numbers (2-byte and 4-byte) from the advertised AS path towards all peers. + properties: + ignorePeerAS: + default: false + description: If set to true then do not delete or replace a private AS number that is the same as the peer AS number. + type: boolean + leadingOnly: + default: false + description: If set to true then only delete or replace private AS numbers that appear before the first occurrence of a non-private ASN in the sequence of most recent ASNs in the AS path. + type: boolean + removePrivateASMode: + default: DISABLED + description: The method by which private AS numbers are removed from the advertised AS_PATH attribute. + enum: + - DISABLED + - REPLACE + - DELETE + type: string + required: + - ignorePeerAS + - leadingOnly + - removePrivateASMode + type: object + required: + - allowOwnAS + type: object + bfd: + description: Enable or disable Bi-forward Forwarding Detection (BFD) with fast failover. + type: boolean + client: + description: When set to true, all configured and dynamic BGP peers are considered RR clients. + type: boolean + clusterID: + description: Enables route reflect client and sets the cluster ID. + type: string + description: + description: Sets the description on the BGP group. + type: string + exportPolicy: + description: Reference to a Policy CR that will be used to filter routes advertised to peers. + items: + type: string + type: array + grStaleRouteTime: + description: Enables Graceful Restart on the peer and sets the stale route time. + maximum: 3600 + minimum: 1 + type: integer + importPolicy: + description: Reference to a Policy CR that will be used to filter routes received from peers. + items: + type: string + type: array + ipv4Unicast: + description: Parameters relating to the IPv4 unicast AFI/SAFI. + properties: + advertiseIPV6NextHops: + description: Enables advertisement of IPv4 Unicast routes with IPv6 next-hops to peers. + type: boolean + enabled: + description: Enables the IPv4 unicast AFISAFI. + type: boolean + prefixLimit: + properties: + prefixLimitAccepted: + properties: + logOnly: + description: Defines the action to take when the maximum number of prefixes is exceeded. Session is reset if set to false, otherwise only a warning is logged. + type: boolean + maxReceivedRoutes: + description: Maximum number of prefixes allowed to be received from the neighbor, counting only accepted routes. + format: int32 + maximum: 4294967295 + minimum: 1 + type: integer + warningThreshold: + description: A percentage of the maximum number of prefixes that can be accepted before a warning is logged. + maximum: 100 + minimum: 1 + type: integer + type: object + prefixLimitReceived: + properties: + logOnly: + description: Defines the action to take when the maximum number of prefixes is exceeded. Session is reset if set to false, otherwise only a warning is logged. + type: boolean + maxReceivedRoutes: + description: Maximum number of prefixes allowed to be received from the neighbor, counting all routes (accepted and rejected by import policies). + format: int32 + maximum: 4294967295 + minimum: 1 + type: integer + warningThreshold: + description: A percentage of the maximum number of prefixes that can be received before a warning is logged. + maximum: 100 + minimum: 1 + type: integer + type: object + type: object + receiveIPV6NextHops: + description: Enables the advertisement of the RFC 5549 capability to receive IPv4 routes with IPv6 next-hops. + type: boolean + type: object + ipv6Unicast: + description: Parameters relating to the IPv6 unicast AFI/SAFI. + properties: + enabled: + description: Enables the IPv6 unicast AFISAFI + type: boolean + prefixLimit: + properties: + prefixLimitAccepted: + properties: + logOnly: + description: Defines the action to take when the maximum number of prefixes is exceeded. Session is reset if set to false, otherwise only a warning is logged. + type: boolean + maxReceivedRoutes: + description: Maximum number of prefixes allowed to be received from the neighbor, counting only accepted routes. + format: int32 + maximum: 4294967295 + minimum: 1 + type: integer + warningThreshold: + description: A percentage of the maximum number of prefixes that can be accepted before a warning is logged. + maximum: 100 + minimum: 1 + type: integer + type: object + prefixLimitReceived: + properties: + logOnly: + description: Defines the action to take when the maximum number of prefixes is exceeded. Session is reset if set to false, otherwise only a warning is logged. + type: boolean + maxReceivedRoutes: + description: Maximum number of prefixes allowed to be received from the neighbor, counting all routes (accepted and rejected by import policies). + format: int32 + maximum: 4294967295 + minimum: 1 + type: integer + warningThreshold: + description: A percentage of the maximum number of prefixes that can be received before a warning is logged. + maximum: 100 + minimum: 1 + type: integer + type: object + type: object + type: object + keychain: + description: Reference to a Keychain resource that will be used for authentication with the BGP peer. + type: string + localAS: + description: The local autonomous system number advertised to peers. + properties: + autonomousSystem: + description: Local Autonomous System number. + maximum: 4294967295 + minimum: 1 + type: integer + prependGlobalAS: + description: When set to true, the global ASN value is prepended to the AS path in outbound routes towards each BGP peer. + type: boolean + prependLocalAS: + description: When set to true, the local AS value is prepended to the AS path of inbound routes from each EBGP peer. + type: boolean + required: + - autonomousSystem + type: object + localPreference: + description: Local Preference attribute added to received routes from the BGP peers, also sets local preference for generated routes. + maximum: 4294967295 + minimum: 0 + type: integer + multiHopMaxHop: + description: Enable multihop for eBGP peers and sets the maximum number of hops allowed. + maximum: 255 + minimum: 1 + type: integer + nextHopSelf: + description: When set to true, the next-hop in all IPv4-unicast, IPv6-unicast and EVPN BGP routes advertised to the peer is set to the local-address. + type: boolean + peerAS: + description: The autonomous system number expected from peers. + properties: + autonomousSystem: + description: Local Autonomous System number. + maximum: 4294967295 + minimum: 1 + type: integer + required: + - autonomousSystem + type: object + sendCommunityLarge: + description: When false, all large (12 byte) BGP communities from all outbound routes advertised to the peer are stripped. + type: boolean + sendCommunityStandard: + description: When false, all standard (4 byte) communities from all outbound routes advertised to the peer are stripped. + type: boolean + sendDefaultRoute: + description: Options for controlling the generation of default routes towards BGP peers. + properties: + addressFamily: + description: Enables the sending of a synthetically generated default IPv4 or IPV6 route to each peer. + items: + enum: + - IPV4-UNICAST + - IPV6-UNICAST + type: string + type: array + exportPolicy: + description: Reference to a Policy that should be applied to the advertised default routes, in order to set their attributes to non-default values. + type: string + required: + - addressFamily + type: object + timers: + description: Timer configurations + properties: + connectRetry: + description: The time interval in seconds between successive attempts to establish a session with a peer. + maximum: 65535 + minimum: 1 + type: integer + holdTime: + description: The hold-time interval in seconds that the router proposes to the peer in its OPEN message. + maximum: 65535 + minimum: 0 + type: integer + keepAlive: + description: The interval in seconds between successive keepalive messages sent to the peer. + maximum: 21845 + minimum: 0 + type: integer + minimumAdvertisementInterval: + description: The value assigned to the MinRouteAdvertisementIntervalTimer of RFC 4271, for both EBGP and IBGP sessions. + maximum: 255 + minimum: 1 + type: integer + type: object + type: object + required: + - name + - spec + type: object + type: array + bgpPeers: + description: List of BgpPeers [emits=BGPPeer] + items: + properties: + name: + description: The name of the BgpPeer. + type: string + spec: + description: Specification of the BgpPeer + properties: + asPathOptions: + description: AS Path Options + properties: + allowOwnAS: + default: 0 + description: The maximum number of times the global AS number or a local AS number of the BGP instance can appear in any received AS_PATH before it is considered a loop and considered invalid. + maximum: 255 + minimum: 0 + type: integer + removePrivateAS: + description: Options for removing private AS numbers (2-byte and 4-byte) from the advertised AS path towards all peers. + properties: + ignorePeerAS: + default: false + description: If set to true then do not delete or replace a private AS number that is the same as the peer AS number. + type: boolean + leadingOnly: + default: false + description: If set to true then only delete or replace private AS numbers that appear before the first occurrence of a non-private ASN in the sequence of most recent ASNs in the AS path. + type: boolean + removePrivateASMode: + default: DISABLED + description: The method by which private AS numbers are removed from the advertised AS_PATH attribute. + enum: + - DISABLED + - REPLACE + - DELETE + type: string + required: + - ignorePeerAS + - leadingOnly + - removePrivateASMode + type: object + required: + - allowOwnAS + type: object + bfd: + description: Enable or disable Bi-forward Forwarding Detection (BFD) with fast failover. + type: boolean + client: + description: When set to true, all configured and dynamic BGP peers are considered RR clients. + type: boolean + clusterID: + description: Enables route reflect client and sets the cluster ID. + type: string + description: + description: Sets the description on the BGP peer + type: string + dynamicNeighbor: + default: false + description: When set to true the Interface is added to the dynamic-neighbor list for dynamic peering. + type: boolean + dynamicNeighborAllowedPeerAS: + description: The autonomous system numbers allowed from peers if dynamic peering is enabled. + items: + type: integer + type: array + exportPolicy: + description: Reference to a Policy CR that will be used to filter routes advertised to peers. + items: + type: string + type: array + grStaleRouteTime: + description: Enables Graceful Restart on the peer and sets the stale route time. + maximum: 3600 + minimum: 1 + type: integer + group: + description: Reference to a BGPGroup. When present this BGP peer will be added to the BGP group + type: string + importPolicy: + description: Reference to a Policy CR that will be used to filter routes received from peers. + items: + type: string + type: array + interface: + description: Reference to a RoutedInterface or IrbInterface resource whose IP will be used as a source IP for the BGP session. + type: string + interfaceKind: + description: InterfaceReference type defines whether the provided Reference is a RoutedInterface or IrbInterface. + enum: + - ROUTEDINTERFACE + - IRBINTERFACE + type: string + ipv4Unicast: + description: Parameters relating to the IPv4 unicast AFI/SAFI. + properties: + advertiseIPV6NextHops: + description: Enables advertisement of IPv4 Unicast routes with IPv6 next-hops to peers. + type: boolean + enabled: + description: Enables the IPv4 unicast AFISAFI. + type: boolean + prefixLimit: + properties: + prefixLimitAccepted: + properties: + logOnly: + description: Defines the action to take when the maximum number of prefixes is exceeded. Session is reset if set to false, otherwise only a warning is logged. + type: boolean + maxReceivedRoutes: + description: Maximum number of prefixes allowed to be received from the neighbor, counting only accepted routes. + format: int32 + maximum: 4294967295 + minimum: 1 + type: integer + warningThreshold: + description: A percentage of the maximum number of prefixes that can be accepted before a warning is logged. + maximum: 100 + minimum: 1 + type: integer + type: object + prefixLimitReceived: + properties: + logOnly: + description: Defines the action to take when the maximum number of prefixes is exceeded. Session is reset if set to false, otherwise only a warning is logged. + type: boolean + maxReceivedRoutes: + description: Maximum number of prefixes allowed to be received from the neighbor, counting all routes (accepted and rejected by import policies). + format: int32 + maximum: 4294967295 + minimum: 1 + type: integer + warningThreshold: + description: A percentage of the maximum number of prefixes that can be received before a warning is logged. + maximum: 100 + minimum: 1 + type: integer + type: object + type: object + receiveIPV6NextHops: + description: Enables the advertisement of the RFC 5549 capability to receive IPv4 routes with IPv6 next-hops. + type: boolean + type: object + ipv6Unicast: + description: Parameters relating to the IPv6 unicast AFI/SAFI. + properties: + enabled: + description: Enables the IPv6 unicast AFISAFI + type: boolean + prefixLimit: + properties: + prefixLimitAccepted: + properties: + logOnly: + description: Defines the action to take when the maximum number of prefixes is exceeded. Session is reset if set to false, otherwise only a warning is logged. + type: boolean + maxReceivedRoutes: + description: Maximum number of prefixes allowed to be received from the neighbor, counting only accepted routes. + format: int32 + maximum: 4294967295 + minimum: 1 + type: integer + warningThreshold: + description: A percentage of the maximum number of prefixes that can be accepted before a warning is logged. + maximum: 100 + minimum: 1 + type: integer + type: object + prefixLimitReceived: + properties: + logOnly: + description: Defines the action to take when the maximum number of prefixes is exceeded. Session is reset if set to false, otherwise only a warning is logged. + type: boolean + maxReceivedRoutes: + description: Maximum number of prefixes allowed to be received from the neighbor, counting all routes (accepted and rejected by import policies). + format: int32 + maximum: 4294967295 + minimum: 1 + type: integer + warningThreshold: + description: A percentage of the maximum number of prefixes that can be received before a warning is logged. + maximum: 100 + minimum: 1 + type: integer + type: object + type: object + type: object + keychain: + description: Reference to a Keychain resource that will be used for authentication with the BGP peer. + type: string + localAS: + description: The local autonomous system number advertised to peers. + properties: + autonomousSystem: + description: Local Autonomous System number. + maximum: 4294967295 + minimum: 1 + type: integer + prependGlobalAS: + description: When set to true, the global ASN value is prepended to the AS path in outbound routes towards each BGP peer. + type: boolean + prependLocalAS: + description: When set to true, the local AS value is prepended to the AS path of inbound routes from each EBGP peer. + type: boolean + required: + - autonomousSystem + type: object + localPreference: + description: Local Preference attribute added to received routes from the BGP peers, also sets local preference for generated routes. + maximum: 4294967295 + minimum: 0 + type: integer + multiHopMaxHop: + description: Enable multihop for eBGP peers and sets the maximum number of hops allowed. + maximum: 255 + minimum: 1 + type: integer + nextHopSelf: + description: When set to true, the next-hop in all IPv4-unicast, IPv6-unicast and EVPN BGP routes advertised to the peer is set to the local-address. + type: boolean + node: + description: Node on which to configure the BGP peer. This node must be one of the nodes on which the IRBInterface is configured. When left blank or if the node is not part of the IRBInterface, the peer will not be deployed. Ignored for RoutedInterfaces. + type: string + peerAS: + description: The autonomous system number expected from peers. + properties: + autonomousSystem: + description: Local Autonomous System number. + maximum: 4294967295 + minimum: 1 + type: integer + required: + - autonomousSystem + type: object + peerIP: + description: Peer IP to which the peering session will be established. + type: string + sendCommunityLarge: + description: When false, all large (12 byte) BGP communities from all outbound routes advertised to the peer are stripped. + type: boolean + sendCommunityStandard: + description: When false, all standard (4 byte) communities from all outbound routes advertised to the peer are stripped. + type: boolean + sendDefaultRoute: + description: Options for controlling the generation of default routes towards BGP peers. + properties: + addressFamily: + description: Enables the sending of a synthetically generated default IPv4 or IPV6 route to each peer. + items: + enum: + - IPV4-UNICAST + - IPV6-UNICAST + type: string + type: array + exportPolicy: + description: Reference to a Policy that should be applied to the advertised default routes, in order to set their attributes to non-default values. + type: string + required: + - addressFamily + type: object + timers: + description: Timer configurations + properties: + connectRetry: + description: The time interval in seconds between successive attempts to establish a session with a peer. + maximum: 65535 + minimum: 1 + type: integer + holdTime: + description: The hold-time interval in seconds that the router proposes to the peer in its OPEN message. + maximum: 65535 + minimum: 0 + type: integer + keepAlive: + description: The interval in seconds between successive keepalive messages sent to the peer. + maximum: 21845 + minimum: 0 + type: integer + minimumAdvertisementInterval: + description: The value assigned to the MinRouteAdvertisementIntervalTimer of RFC 4271, for both EBGP and IBGP sessions. + maximum: 255 + minimum: 1 + type: integer + type: object + required: + - group + - interface + - interfaceKind + type: object + required: + - name + - spec + type: object + type: array + type: object + routingPolicies: + description: Routing Policies. + properties: + policies: + description: List of Policies. [emits=Policy] + items: + properties: + name: + description: Name of the Policy. + type: string + spec: + description: A policy + properties: + defaultAction: + description: The default action to apply if no other actions are defined. + properties: + bgp: + description: Actions related to the BGP protocol. + properties: + asPathPrepend: + description: AS number to prepend to the AS Path attributes. + format: int32 + maximum: 4294967295 + minimum: 1 + type: integer + asPathRemove: + description: Clear the AS path to make it empty. + type: boolean + asPathReplace: + description: Replace the existing AS path with a new AS_SEQUENCE containing the listed AS numbers. + items: + format: int32 + type: integer + type: array + communitySet: + description: Modify BGP communities associated with the route using hybrid Community Sets. + properties: + add: + description: List of community sets to add to the route. + items: + type: string + maxItems: 1 + type: array + remove: + description: List of community sets to remove from the route. + items: + type: string + maxItems: 1 + type: array + replace: + description: List of community sets to replace the existing communities with. Cannot be combined with Add or Remove. + items: + type: string + maxItems: 1 + type: array + type: object + localPreference: + description: Set a new LOCAL_PREF value for matching BGP routes. + format: int32 + maximum: 4294967295 + minimum: 0 + type: integer + med: + description: Set a new MED value. + properties: + numericalValue: + description: Fixed numerical value to set or add/subtract. + maximum: 4294967295 + minimum: 0 + type: integer + operation: + description: The operation to perform on the MED value. + enum: + - Set + - Add + - Subtract + type: string + valueType: + description: Use a fixed value or an IGP metric to adjust the MED. + enum: + - Fixed + - IGP + type: string + type: object + setOrigin: + description: Set a new ORIGIN attribute for matching BGP routes. + enum: + - egp + - igp + - incomplete + type: string + type: object + policyResult: + description: Final disposition for the route. + enum: + - accept + - reject + - NextPolicy + - NextStatement + type: string + type: object + statement: + description: List of policy statements. + items: + properties: + action: + description: Actions for routes that match the policy statement. + properties: + bgp: + description: Actions related to the BGP protocol. + properties: + asPathPrepend: + description: AS number to prepend to the AS Path attributes. + format: int32 + maximum: 4294967295 + minimum: 1 + type: integer + asPathRemove: + description: Clear the AS path to make it empty. + type: boolean + asPathReplace: + description: Replace the existing AS path with a new AS_SEQUENCE containing the listed AS numbers. + items: + format: int32 + type: integer + type: array + communitySet: + description: Modify BGP communities associated with the route using hybrid Community Sets. + properties: + add: + description: List of community sets to add to the route. + items: + type: string + maxItems: 1 + type: array + remove: + description: List of community sets to remove from the route. + items: + type: string + maxItems: 1 + type: array + replace: + description: List of community sets to replace the existing communities with. Cannot be combined with Add or Remove. + items: + type: string + maxItems: 1 + type: array + type: object + localPreference: + description: Set a new LOCAL_PREF value for matching BGP routes. + format: int32 + maximum: 4294967295 + minimum: 0 + type: integer + med: + description: Set a new MED value. + properties: + numericalValue: + description: Fixed numerical value to set or add/subtract. + maximum: 4294967295 + minimum: 0 + type: integer + operation: + description: The operation to perform on the MED value. + enum: + - Set + - Add + - Subtract + type: string + valueType: + description: Use a fixed value or an IGP metric to adjust the MED. + enum: + - Fixed + - IGP + type: string + type: object + setOrigin: + description: Set a new ORIGIN attribute for matching BGP routes. + enum: + - egp + - igp + - incomplete + type: string + type: object + policyResult: + description: Final disposition for the route. + enum: + - accept + - reject + - NextPolicy + - NextStatement + type: string + type: object + match: + description: Match conditions of the policy statement. + properties: + bgp: + description: Configuration for BGP-specific policy match criteria. + properties: + asPathMatch: + description: AS Path match criteria. + properties: + asPathExpression: + description: A singular regular expression string to match against AS_PATH objects. Mutually exclusive with the ASPathSet reference. + type: string + asPathSet: + description: Reference to an ASPathSet resource. Mutually exclusive with the ASPathExpression. + type: string + matchSetOptions: + description: The matching criteria that applies to the members in the referenced set. + enum: + - Any + - All + - Invert + type: string + type: object + communitySet: + description: Match conditions for BGP communities. + type: string + evpnRouteType: + description: Match conditions for EVPN route types. + items: + type: integer + type: array + type: object + family: + description: Address families that the route belongs to. + items: + type: string + type: array + prefixSet: + description: Reference to a PrefixSet resource. + type: string + protocol: + description: The route protocol type to match. + enum: + - AGGREGATE + - ARP_ND + - BGP + - BGP_EVPN + - DHCP + - GRIBI + - HOST + - ISIS + - LOCAL + - LINUX + - NDK1 + - NDK2 + - OSPFV2 + - OSPFV3 + - STATIC + type: string + type: object + name: + description: Name of the policy statement. + type: string + required: + - name + type: object + type: array + type: object + required: + - name + type: object + type: array + prefixSets: + description: List of PrefixSet [emits=PrefixSet] + items: + properties: + name: + description: Name of the PrefixSet. + type: string + spec: + description: A PrefixSets + properties: + prefix: + description: List of IPv4 or IPv6 prefixes in CIDR notation. + items: + properties: + endRange: + description: The end range when using a range to match prefixes. + maximum: 128 + minimum: 0 + type: integer + exact: + description: Indicates if it is an exact match. Ignores the StartRange and EndRange if this param is set. + type: boolean + prefix: + description: The IPv4 or IPv6 prefix in CIDR notation with mask. + type: string + startRange: + description: If specifying a range, this is the start of the range. + maximum: 128 + minimum: 0 + type: integer + required: + - prefix + type: object + type: array + required: + - prefix + type: object + required: + - name + type: object + type: array + type: object + staticRoutes: + description: List of Static Routes within this VirtualNetwork. [emits=StaticRoute] + items: + properties: + name: + description: Name of the StaticRoute. + type: string + spec: + description: A StaticRoutes + properties: + nexthopGroup: + description: Group of nexthops for the list of prefixes. + properties: + bfd: + description: Enables BFD to the next-hops in the group. Local and Remote discriminator parameters have been deprecated at this level. Use Nexthop to set these parameters. + properties: + enabled: + default: false + description: Defines whether BFD should be enabled towards the nexthops. + type: boolean + localAddress: + description: Defines the local address to use when establishing the BFD session with the nexthop. + type: string + type: object + blackhole: + default: false + description: If set to true all traffic destined to the prefixes will be blackholed. If enabled, next-hops are ignored and this takes precedence. + type: boolean + blackholeSendICMP: + description: When enabled, the router will generate ICMP Unreachable messages for packets destined to the blackhole route. + type: boolean + nexthops: + description: Ordered list of nexthops. + items: + properties: + bfd: + description: Enables BFD to the next-hops in the group. This overrides the configuration at the group. + properties: + enabled: + default: false + description: Defines whether BFD should be enabled towards the nexthops. + type: boolean + localAddress: + description: Defines the local address to use when establishing the BFD session with the nexthop. + type: string + localDiscriminator: + description: Defines the local discriminator. + type: integer + remoteDiscriminator: + description: Defines the remote discriminator. + type: integer + type: object + ipPrefix: + description: Address to use. + type: string + resolve: + default: false + description: If set to true the next-hops can be destinations which are resolved in the route table. This overrides the configuration at the group. + type: boolean + required: + - ipPrefix + type: object + type: array + resolve: + default: false + description: If set to true the next-hops can be destinations which are resolved in the route table. + type: boolean + type: object + nodes: + description: List of nodes on which to configure the static routes. An AND operation is executed against the nodes in this list and the nodes on which the Router is configured to determine the Nodes on which to configure the static routes. + items: + type: string + type: array + preference: + description: Defines the route preference. + type: integer + prefixes: + description: List of destination prefixes and mask to use for the static routes. + items: + type: string + type: array + router: + description: Reference to a Router on which to configure the static routes. If no Nodes are provided then the static routes will be provisioned on all Nodes on which the Router is provisioned. + type: string + required: + - nexthopGroup + - prefixes + - router + type: object + required: + - name + type: object + type: array + type: object + routedInterfaces: + description: List of RoutedInterface. [emits=RoutedInterface] + items: + properties: + name: + description: The name of the RoutedInterface. + type: string + spec: + description: Specification of the RoutedInterface + properties: + arpTimeout: + default: 14400 + description: Duration of time that dynamic ARP entries remain in the ARP cache before they expire. + format: int32 + type: integer + bfd: + description: Enables BFD on the RoutedInterface. + properties: + desiredMinTransmitInt: + default: 1000000 + description: The minimum interval in microseconds between transmission of BFD control packets. + maximum: 100000000 + minimum: 10000 + type: integer + detectionMultiplier: + default: 3 + description: The number of packets that must be missed to declare this session as down. + maximum: 20 + minimum: 3 + type: integer + enabled: + default: false + description: Enables Biforward Detection. + type: boolean + minEchoReceiveInterval: + default: 0 + description: The minimum interval between echo packets the local node can receive. + maximum: 100000000 + minimum: 0 + type: integer + requiredMinReceive: + default: 1000000 + description: The minimum interval in microseconds between received BFD control packets that this system should support. + maximum: 100000000 + minimum: 10000 + type: integer + ttl: + description: Sets custom IP TTL or Hop Limit for multi-hop BFD sessions packets. Not appllicable to single-hop BFD sessions. + maximum: 255 + minimum: 2 + type: integer + required: + - enabled + type: object + description: + description: The description of the RoutedInterface. + type: string + egress: + description: Manages actions on traffic at Egress. + properties: + filters: + description: List of Filter references to use at egress. + items: + type: string + type: array + qosPolicy: + description: List of QoS Egress policy references to use at egress. + items: + type: string + type: array + type: object + ingress: + description: Manages actions on traffic at Ingress. + properties: + filters: + description: List of Filter references to use at ingress. + items: + type: string + type: array + qosPolicy: + description: List of QoS Ingress policy references to use at ingress. + items: + type: string + type: array + type: object + interface: + description: Reference to an Interface to use for attachment. + type: string + ipMTU: + default: 1500 + description: IP MTU for the RoutedInterface. + maximum: 9486 + minimum: 1280 + type: integer + ipv4Addresses: + description: List of IPv4 addresses in IP/mask form, e.g., 192.168.0.1/24. + items: + properties: + ipPrefix: + description: Address and mask to use + type: string + primary: + description: Indicates which address to use as primary for broadcast + type: boolean + required: + - ipPrefix + type: object + type: array + ipv4Parameters: + properties: + directedBroadcast: + description: Allow receiving and forwarding of directed broadcast packets. Enabled when set to true. + type: boolean + type: object + ipv6Addresses: + description: List of IPv6 addresses in IP/mask form, e.g., fc00::1/120. + items: + properties: + ipPrefix: + description: Address and mask to use + type: string + primary: + description: Indicates which address to use as primary for broadcast + type: boolean + required: + - ipPrefix + type: object + type: array + ipv6RouterAdvertisement: + properties: + currentHopLimit: + default: 64 + description: The current hop limit to advertise in the router advertisement messages. + format: int32 + maximum: 255 + minimum: 0 + type: integer + enabled: + default: false + description: Enable or disable IPv6 router advertisements. + type: boolean + ipMTU: + description: The IP MTU to advertise in the router advertisement messages. + format: int32 + maximum: 9486 + minimum: 1280 + type: integer + managedConfigurationFlag: + default: false + description: Enable DHCPv6 for address configuration (M-bit). + type: boolean + maxAdvertisementInterval: + default: 600 + description: Maximum time between router advertisements (in seconds). + format: int32 + maximum: 1800 + minimum: 4 + type: integer + minAdvertisementInterval: + default: 200 + description: Minimum time between router advertisements (in seconds). + format: int32 + maximum: 1350 + minimum: 3 + type: integer + otherConfigurationFlag: + default: false + description: Enable DHCPv6 for other configuration (O-bit). + type: boolean + prefixes: + description: IPv6 prefixes to advertise in router advertisements. + items: + description: IPv6Prefix defines the configuration for an IPv6 prefix advertisement. + properties: + autonomousFlag: + default: true + description: When this is set in the prefix information option hosts can use the prefix for stateless address autoconfiguration (SLAAC). + type: boolean + onLinkFlag: + default: true + description: When this is set in the prefix information option hosts can use the prefix for on-link determination. + type: boolean + preferredLifetime: + default: 604800 + description: The length of time in seconds (relative to the time the packet is sent) that addresses generated from the prefix via stateless address autoconfiguration remain preferred. + format: int32 + maximum: 4294967295 + minimum: 0 + type: integer + prefix: + description: An IPv6 global unicast address prefix. + type: string + validLifetime: + default: 2592000 + description: The length of time in seconds (relative to the time the packet is sent) that the prefix is valid for the purpose of on-link determination. + format: int32 + maximum: 4294967295 + minimum: 0 + type: integer + required: + - prefix + type: object + type: array + reachableTime: + default: 0 + description: Time in milliseconds for Neighbor Unreachability Detection. + format: int32 + maximum: 3600000 + minimum: 0 + type: integer + retransmitTime: + default: 0 + description: Time in milliseconds between retransmitted NS messages. + format: int32 + maximum: 1800000 + minimum: 0 + type: integer + routerLifetime: + default: 1800 + description: Router lifetime in seconds for default gateway. + format: int32 + maximum: 9000 + minimum: 0 + type: integer + required: + - currentHopLimit + - enabled + - managedConfigurationFlag + - maxAdvertisementInterval + - minAdvertisementInterval + - otherConfigurationFlag + - retransmitTime + - routerLifetime + type: object + l3ProxyARPND: + description: L3 Proxy ARP and ND configuration. + properties: + proxyARP: + default: false + description: Select whether Proxy ARP should be enabled. + type: boolean + proxyND: + default: false + description: Select whether Proxy ND should be enabled. + type: boolean + type: object + learnUnsolicited: + default: NONE + description: Enable or disable learning of unsolicited ARPs. + enum: + - BOTH + - GLOBAL + - LINK-LOCAL + - NONE + type: string + router: + description: Reference to a Router. + type: string + unnumbered: + description: Enables the use of unnumbered interfaces on the IRBInterface. If IPv6 is specified, no IP address are configured on the sub-interface and only the link local address will be used. If any IP addresses are specified for either IPv4 or IPv6 that will take precedence and IPs will be assigned to the interfaces. (Deprecated, Use IPv6RouterAdvertisement) + enum: + - IPV6 + type: string + vlanID: + default: pool + description: Single value between 1-4094 support, ranges supported in the format x-y,x-y, or the special keyword null, any, untagged or pool for auto allocation. + type: string + vlanPool: + default: vlan-pool + description: Reference to a VLAN pool to use for allocations. + type: string + required: + - interface + - router + type: object + required: + - name + - spec + type: object + type: array + routers: + description: List of Routers.[emits=Router] + items: + properties: + name: + description: The name of the Router. + type: string + spec: + description: Specification of the Router + properties: + bgp: + description: BGP configuration. + properties: + autonomousSystem: + description: Autonomous System number for BGP. + maximum: 4294967295 + minimum: 1 + type: integer + ebgpPreference: + default: 170 + description: Preference to be set for eBGP [default=170]. + maximum: 255 + minimum: 1 + type: integer + enabled: + default: false + description: Enable or disable BGP. + type: boolean + ibgpPreference: + default: 170 + description: Preference to be set for iBGP [default=170]. + maximum: 255 + minimum: 1 + type: integer + ipAliasNexthops: + description: IP aliasing configuration. + items: + properties: + esi: + default: auto + description: 10 byte Ethernet Segment Identifier, if not set a type 0 ESI is generated. + type: string + nextHop: + description: The nexthop IP address to track for the IP alias. + type: string + preferredActiveNode: + description: When not set the ES is used in an all active mode. This references the ToppNode object and when set, the DF algorithm is configured to type preference and the selected Node is set with a higher preference value. All other Nodes have a lower value configured. + type: string + required: + - nextHop + type: object + type: array + ipv4Unicast: + description: Parameters relating to the IPv4 unicast AFI/SAFI. + properties: + advertiseIPV6NextHops: + description: Enables advertisement of IPv4 Unicast routes with IPv6 next-hops to peers. + type: boolean + enabled: + default: false + description: Enables the IPv4 unicast AFISAFI. + type: boolean + multipath: + description: Enable multipath. + properties: + allowMultipleAS: + default: true + description: When set to true, BGP is allowed to build a multipath set using BGP routes with different neighbor AS (most recent AS in the AS_PATH), When set to false, BGP is only allowed to use non-best paths for ECMP if they meet the multipath criteria and they have the same neighbor AS as the best path. + type: boolean + maxAllowedPaths: + description: The maximum number of BGP ECMP next-hops for BGP routes with an NLRI belonging to the address family of this configuration context. + maximum: 256 + minimum: 1 + type: integer + required: + - allowMultipleAS + - maxAllowedPaths + type: object + receiveIPV6NextHops: + description: Enables the advertisement of the RFC 5549 capability to receive IPv4 routes with IPv6 next-hops. + type: boolean + required: + - enabled + type: object + ipv6Unicast: + description: Parameters relating to the IPv6 unicast AFI/SAFI. + properties: + enabled: + default: false + description: Enables the IPv6 unicast AFISAFI + type: boolean + multipath: + description: Enable multipath + properties: + allowMultipleAS: + default: true + description: When set to true, BGP is allowed to build a multipath set using BGP routes with different neighbor AS (most recent AS in the AS_PATH), When set to false, BGP is only allowed to use non-best paths for ECMP if they meet the multipath criteria and they have the same neighbor AS as the best path. + type: boolean + maxAllowedPaths: + description: The maximum number of BGP ECMP next-hops for BGP routes with an NLRI belonging to the address family of this configuration context. + maximum: 256 + minimum: 1 + type: integer + required: + - allowMultipleAS + - maxAllowedPaths + type: object + required: + - enabled + type: object + keychain: + description: Keychain to be used for authentication + type: string + minWaitToAdvertise: + default: 0 + description: Minimum wait time before advertising routes post BGP restart. + maximum: 3600 + minimum: 0 + type: integer + rapidWithdrawl: + default: true + description: Enable rapid withdrawal in BGP. + type: boolean + waitForFIBInstall: + default: false + description: Wait for FIB installation before advertising routes. + type: boolean + type: object + description: + description: The description of the Router. + type: string + evi: + description: EVI for the Router; leave blank for auto-allocation from EVI pool. + maximum: 65535 + minimum: 1 + type: integer + eviPool: + default: evi-pool + description: Reference to EVI pool for auto-allocation. + type: string + exportTarget: + description: Export route target in 'target:N:N' format, if not specified, the default value taken as "target:1:". + pattern: ^target.*$ + type: string + importTarget: + description: Import route target in 'target:N:N' format, if not specified, the default value taken as "target:1:". + pattern: ^target.*$ + type: string + ipLoadBalancing: + description: IPv4 or IPv6 prefix. Active routes in the FIB that exactly match this prefix or that are longer matches of this prefix are provided with resilient-hash programming. + properties: + prefix: + description: IPv4 or IPv6 prefix. Active routes in the FIB that exactly match this prefix or that are longer matches of this prefix are provided with resilient-hash programming. + items: + properties: + hashBucketsPerPath: + default: 1 + description: The number of times each next-hop is repeated in the fill pattern if there are max-paths ECMP next-hops. + maximum: 32 + minimum: 1 + type: integer + maxECMP: + default: 1 + description: The maximum number of ECMP next-hops per route associated with the resilient-hash prefix. + maximum: 64 + minimum: 1 + type: integer + prefix: + description: IPv4 or IPv6 prefix. Active routes in the FIB that exactly match this prefix or that are longer matches of this prefix are provided with resilient-hash programming. + type: string + required: + - hashBucketsPerPath + - maxECMP + - prefix + type: object + type: array + type: object + nodeSelector: + description: Node selectors for deployment constraints. If Nodes are selected, the Router will only be deployed on the Nodes selected, if left blank it will be deployed on all Nodes for which there are IRB or RoutedInterfaces referencing this Router. + items: + type: string + type: array + routeLeaking: + description: Route leaking controlled by routing policies in and out of the DefaultRouter. + properties: + exportPolicy: + description: Reference to a Policy resource to use when evaluating route exports from the DefaultRouter. + type: string + importPolicy: + description: Reference to a Policy resource to use when evaluating route imports into the DefaultRouter. + type: string + type: object + routerID: + description: Router ID. + type: string + tunnelIndexPool: + default: tunnel-index-pool + description: Reference to tunnel index allocation pool. + type: string + type: + default: EVPNVXLAN + description: Select the type of Router. Simple doesn't include any overlay control plane or dataplane properties (EVPN/VXLAN). EVPNVXLAN includes the properties needed to provision this Router over an IP Fabric. + enum: + - SIMPLE + - EVPNVXLAN + type: string + vni: + description: VNI for the Router; leave blank for auto-allocation from VNI pool. + maximum: 16777215 + minimum: 1 + type: integer + vniPool: + default: vni-pool + description: Reference to VNI pool for auto-allocation. + type: string + type: object + required: + - name + - spec + type: object + type: array + vlans: + description: List of VLANs. [emits=VLAN] + items: + properties: + name: + description: The name of the VLAN. + type: string + spec: + description: Specification of the Vlan + properties: + bridgeDomain: + description: Reference to a BridgeDomain or SimpleBridgeDomain. + type: string + description: + description: The description of the VLAN. + type: string + egress: + description: Manages actions on traffic at Egress. + properties: + filters: + description: List of Filter references to use at egress. + items: + type: string + type: array + qosPolicy: + description: List of QoS Egress policy references to use at egress. + items: + type: string + type: array + type: object + ingress: + description: Manages actions on traffic at Ingress. + properties: + filters: + description: List of Filter references to use at ingress. + items: + type: string + type: array + qosPolicy: + description: List of QoS Ingress policy references to use at ingress. + items: + type: string + type: array + type: object + interfaceSelector: + description: Interfaces to use for attachment to this VLAN based on the label selector. Selects Interfaces based on their associated labels. + items: + type: string + type: array + l2MTU: + description: L2 MTU specifies the maximum sized Ethernet frame that can be transmitted on the subinterface. If a frame exceeds this size it is discarded. If the l2-mtu of the subinterface exceeds the port-mtu of the associated interface, the subinterface will remain operationally down. + maximum: 9500 + minimum: 1450 + type: integer + macDuplicationDetectionAction: + description: If Mac Duplication Detection is enabled on the associated Bridge Domain, this property will override the MDD action set in the BridgeDomain. + enum: + - Blackhole + - OperDown + - StopLearning + - UseBridgeDomainAction + type: string + splitHorizonGroup: + description: Name of the Split Horizon Group to be used for this VLAN. All subinterfaces within this VLAN will be members of this Split Horizon Group. + type: string + uplink: + description: The Uplink between your access breakout switch and your leaf switch. + properties: + egress: + description: Manages actions on traffic at Egress of the Local enpoint of the Uplink. + properties: + filters: + description: List of Filter references to use at egress. + items: + type: string + type: array + qosPolicy: + description: List of QoS Egress policy references to use at egress. + items: + type: string + type: array + type: object + ingress: + description: Manages actions on traffic at Ingress of the Local enpoint of the Uplink. + properties: + filters: + description: List of Filter references to use at ingress. + items: + type: string + type: array + qosPolicy: + description: List of QoS Ingress policy references to use at ingress. + items: + type: string + type: array + type: object + uplinkSelector: + description: Selects TopoLinks which connect a leaf switch to a breakout switch. This is the uplink between your access breakout switch and your leaf switch. There can only be a single TopoLink between the access breakout switch and the leaf switch, if more than one TopoLink is present between two devices the transaction will fail. + items: + type: string + type: array + uplinkVLANID: + default: pool + description: The VLAN ID to be utilized to isolate traffic from the VLAN on the access breakout switch to the leaf switch on the selected uplink TopoLink. + type: string + uplinkVLANPool: + description: A VLAN from this pool will be utilized to isolate traffic from the VLAN on the access breakout switch to the leaf switch on the selected uplink TopoLink. + type: string + type: object + vlanID: + default: pool + description: Single value between 1-4094 support, ranges supported in the format x-y,x-y, or the special keyword null, any, untagged or pool for auto allocation. + type: string + vlanPool: + description: Reference to a VLAN pool to use for allocations. [default="vlan-pool"] + type: string + required: + - bridgeDomain + - interfaceSelector + type: object + required: + - name + - spec + type: object + type: array + type: object + status: + properties: + health: + description: Indicates the health score of the VNET. + type: integer + healthScoreReason: + description: Indicates the reason for the health score. + type: string + lastChange: + description: The time when the state of the resource last changed. + type: string + nodes: + description: List of Nodes on which the Router is deployed. + items: + type: string + type: array + numBGPPeers: + description: Total number of configured BGP Peers. + type: integer + numBGPPeersOperDown: + description: Total Number of BGP Peer operationally down. + type: integer + numIRBInterfaces: + description: Total number of irb-interfaces configured by the VNET. + format: int32 + type: integer + numIRBInterfacesOperDown: + description: Total number of irb-interfaces configured by the VNET which are oper-down. + format: int32 + type: integer + numNodes: + description: Total number of Nodes on which the VNET is configured. + type: integer + numRoutedInterfaces: + description: Total number of routed-interfaces configured by the VNET. + format: int32 + type: integer + numRoutedInterfacesOperDown: + description: Total number of routed-interfaces configured by the VNET which are oper-down. + format: int32 + type: integer + numSubInterfaces: + description: Total number of sub-interfaces configured by the VNET. + format: int32 + type: integer + numSubInterfacesOperDown: + description: Total number of sub-interfaces configured by the VNET which are oper-down. + format: int32 + type: integer + operationalState: + description: Operational state of the VNET. + type: string + type: object + type: object +served: true +storage: true +subresources: + status: {} diff --git a/static/resources/25.8.3/virtualnetworks.services.eda.nokia.com/v1alpha1.yaml b/static/resources/25.8.3/virtualnetworks.services.eda.nokia.com/v1alpha1.yaml new file mode 100644 index 0000000..6fe1360 --- /dev/null +++ b/static/resources/25.8.3/virtualnetworks.services.eda.nokia.com/v1alpha1.yaml @@ -0,0 +1,2191 @@ +additionalPrinterColumns: + - jsonPath: .status.operationalState + name: OperationalState + type: string + - jsonPath: .status.lastChange + name: LastChange + type: string +deprecated: true +deprecationWarning: This version is deprecated and will no longer be supported in the next version. +name: v1alpha1 +schema: + openAPIV3Schema: + description: VirtualNetwork is the Schema for the virtualnetworks API + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + description: VirtualNetworkSpec defines the desired state of VirtualNetwork + properties: + bridgeDomains: + description: List of Subnets. [emits=BridgeDomain] + items: + properties: + name: + description: The name of the BridgeDomain. + type: string + spec: + description: Specification of the BridgeDomain + properties: + description: + description: The description of the BridgeDomain. + type: string + evi: + description: EVI to use for this BridgeDomain, can be optionally left blank to have it automatically allocated using the EVI Pool. + maximum: 65535 + minimum: 1 + type: integer + eviPool: + default: evi-pool + description: Reference to an EVI pool to use for allocations if EVI is left blank. + type: string + exportTarget: + description: Export route target in 'target:N:N' format, if not specified, the default value taken as "target:1:". + pattern: ^target.*$ + type: string + importTarget: + description: Import route target in 'target:N:N' format, if not specified, the default value taken as "target:1:". + pattern: ^target.*$ + type: string + l2proxyARPND: + description: Enables / Disabled Proxy ARP / Proxy ND. + properties: + dynamicLearning: + properties: + ageTime: + description: Aging timer value for the proxy entries in seconds. If not set, this indicates that the entries are never flushed. + maximum: 86400 + minimum: 60 + type: integer + enabled: + default: false + description: Enables or disables Dynamic Learning. + type: boolean + sendRefresh: + description: The interval determines the frequency at which the system generates three ARP Requests or Neighbor Solicitations with the intent to refresh the proxy entry. The refresh is sent within the age-time window. + maximum: 86400 + minimum: 120 + type: integer + type: object + ipDuplication: + properties: + enabled: + default: false + description: Enables or disables IP Duplication. + type: boolean + holdDownTime: + default: 9 + description: Time to wait in minutes from the moment an IP is declared duplicate to the time the IP is removed from the proxy ARP/ND table. + maximum: 60 + minimum: 2 + type: integer + monitoringWindow: + default: 3 + description: Monitoring window for detecting duplication on a given IP address in the proxy ARP/ND table. + maximum: 15 + minimum: 1 + type: integer + numMoves: + default: 5 + description: Number of moves in the proxy ARP/ND table that an IP is allowed within the monitoring-window. + maximum: 10 + minimum: 3 + type: integer + type: object + proxyARP: + default: false + description: Enables proxy ARP. + type: boolean + proxyND: + default: false + description: Enables proxy ND. + type: boolean + tableSize: + default: 250 + description: Maximum number of entries allowed in the proxy table of the bridge domain. + maximum: 8192 + minimum: 1 + type: integer + type: object + macAging: + default: 300 + description: Configurable aging time for dynamically learned mac addresses. + format: int32 + maximum: 86400 + minimum: 60 + type: integer + macDuplicationDetection: + description: Enable or disable MAC duplication detection and resolution mechanisms. + properties: + action: + default: StopLearning + description: Action to take on the subinterface upon detecting at least one mac addresses as duplicate on the subinterface. + enum: + - Blackhole + - OperDown + - StopLearning + type: string + enabled: + default: false + description: Enables or disables Mac Duplication Detection. + type: boolean + holdDownTime: + default: 9 + description: Time to wait in minutes from the moment a mac is declared duplicate to the mac is flushed from the bridge table. + maximum: 60 + minimum: 2 + type: integer + monitoringWindow: + default: 3 + description: Monitoring window in minutes for detecting duplication on a given mac address. + maximum: 15 + minimum: 1 + type: integer + numMoves: + default: 5 + description: Number of moves a mac is allowed within the monitoring-window, before it is declared duplicate. + minimum: 3 + type: integer + type: object + macLimit: + description: Sets the maximum number of MAC entries accepted in the bridge table. + format: int32 + type: integer + tunnelIndexPool: + default: tunnel-index-pool + description: Reference to a tunnel index pool to use for allocations. + type: string + type: + default: EVPNVXLAN + description: Select the type of BridgeDomain. Simple doesn't include any overlay control plane or dataplane properties (EVPN/VXLAN). EVPNVXLAN includes the properties needed to provision this BridgeDomain over an IP Fabric. + enum: + - SIMPLE + - EVPNVXLAN + type: string + vni: + description: VNI to use for this BridgeDomain, can be optionally left blank to have it allocated using the VNI Pool. + maximum: 16777215 + minimum: 1 + type: integer + vniPool: + default: vni-pool + description: Reference to a VNI pool to use for allocations if VNI is left blank. + type: string + type: object + required: + - name + - spec + type: object + type: array + bridgeInterfaces: + description: List of BridgeInterfaces. [emits=BridgeInterface] + items: + properties: + name: + description: The name of the BridgeInterface. + type: string + spec: + description: Specification of the BridgeInterface + properties: + bridgeDomain: + description: Reference to a BridgeDomain in which to attach the BridgeInterface. + type: string + description: + description: The description of the BridgeInterface. + type: string + egress: + description: Manages actions on traffic at Egress. + properties: + filters: + description: List of Filter references to use at egress. + items: + type: string + type: array + qosPolicy: + description: List of QoS Egress policy references to use at egress. + items: + type: string + type: array + type: object + ingress: + description: Manages actions on traffic at Ingress. + properties: + filters: + description: List of Filter references to use at ingress. + items: + type: string + type: array + qosPolicy: + description: List of QoS Ingress policy references to use at ingress. + items: + type: string + type: array + type: object + interface: + description: Reference to an Interface resource to attach this BridgeInterface. + type: string + l2MTU: + description: L2 MTU specifies the maximum sized Ethernet frame that can be transmitted on the subinterface. If a frame exceeds this size it is discarded. If the l2-mtu of the subinterface exceeds the port-mtu of the associated interface, the subinterface will remain operationally down. + maximum: 9500 + minimum: 1450 + type: integer + macDuplicationDetectionAction: + description: Override for Mac Duplication Detection action if enabled in the associated BridgeDomain. + enum: + - Blackhole + - OperDown + - StopLearning + - UseBridgeDomainAction + type: string + splitHorizonGroup: + description: Split Horizon Group to be used for this BridgeInterface. The subinterface within this BridgeInterface will be a member of this Split Horizon Group. + type: string + uplink: + description: The Uplink between your access breakout switch and your leaf switch. + properties: + egress: + description: Manages actions on traffic at Egress of the Local enpoint of the Uplink. + properties: + filters: + description: List of Filter references to use at egress. + items: + type: string + type: array + qosPolicy: + description: List of QoS Egress policy references to use at egress. + items: + type: string + type: array + type: object + ingress: + description: Manages actions on traffic at Ingress of the Local enpoint of the Uplink. + properties: + filters: + description: List of Filter references to use at ingress. + items: + type: string + type: array + qosPolicy: + description: List of QoS Ingress policy references to use at ingress. + items: + type: string + type: array + type: object + uplinkSelector: + description: Selects TopoLinks which connect a leaf switch to a breakout switch. This is the uplink between your access breakout switch and your leaf switch. There can only be a single TopoLink between the access breakout switch and the leaf switch, if more than one TopoLink is present between two devices the transaction will fail. + items: + type: string + type: array + uplinkVLANID: + default: pool + description: The VLAN ID to be utilized to isolate traffic from the VLAN on the access breakout switch to the leaf switch on the selected uplink TopoLink. + type: string + uplinkVLANPool: + description: A VLAN from this pool will be utilized to isolate traffic from the VLAN on the access breakout switch to the leaf switch on the selected uplink TopoLink. + type: string + type: object + vlanID: + description: Single value between 1-4094 support, ranges supported in the format x-y,x-y, or the special keyword null, any, untagged or pool for auto allocation. + type: string + required: + - bridgeDomain + - interface + - vlanID + type: object + required: + - name + - spec + type: object + type: array + irbInterfaces: + description: List of IRBInterfaces. [emits=IRBInterface] + items: + properties: + name: + description: The name of the IrbInterface. + type: string + spec: + description: Specification of the IrbInterface + properties: + anycastGatewayMAC: + description: The gateway MAC to use on the anycast address, if left empty the node will automatically assign one. + type: string + arpTimeout: + default: 14400 + description: Duration of time that dynamic ARP entries remain in the ARP cache before they expire. + format: int32 + type: integer + bfd: + description: Enable BFD on the IRBInterface. + properties: + desiredMinTransmitInt: + default: 1000000 + description: The minimum interval in microseconds between transmission of BFD control packets. + maximum: 100000000 + minimum: 10000 + type: integer + detectionMultiplier: + default: 3 + description: The number of packets that must be missed to declare this session as down. + maximum: 20 + minimum: 3 + type: integer + enabled: + default: false + description: Enables Biforward Detection. + type: boolean + minEchoReceiveInterval: + default: 0 + description: The minimum interval between echo packets the local node can receive. + maximum: 100000000 + minimum: 0 + type: integer + requiredMinReceive: + default: 1000000 + description: The minimum interval in microseconds between received BFD control packets that this system should support. + maximum: 100000000 + minimum: 10000 + type: integer + ttl: + description: Sets custom IP TTL or Hop Limit for multi-hop BFD sessions packets. Not appllicable to single-hop BFD sessions. + maximum: 255 + minimum: 2 + type: integer + required: + - enabled + type: object + bridgeDomain: + description: Reference to a BridgeDomain. + type: string + description: + description: The description of the IRBInterface. + type: string + egress: + description: Manages actions on traffic at Egress. + properties: + filters: + description: List of Filter references to use at egress. + items: + type: string + type: array + qosPolicy: + description: List of QoS Egress policy references to use at egress. + items: + type: string + type: array + type: object + evpnRouteAdvertisementType: + description: Controls the type of ARP/ND entries to advertise. + properties: + arpDynamic: + default: false + description: Advertise dynamic ARP entries. + type: boolean + arpStatic: + default: false + description: Advertise static ARP entries. + type: boolean + ndDynamic: + default: false + description: Advertise dynamic ND entries. + type: boolean + ndStatic: + default: false + description: Advertise static ND entries. + type: boolean + type: object + hostRoutePopulate: + description: Configures host route population based on ARP entries. + properties: + dynamic: + default: true + description: Create host routes out of dynamic ARP entries. + type: boolean + evpn: + default: false + description: Create host routes out of EVPN learned ARP entries. + type: boolean + static: + default: true + description: Create host routes out of static ARP entries. + type: boolean + type: object + ingress: + description: Manages actions on traffic at Ingress. + properties: + filters: + description: List of Filter references to use at ingress. + items: + type: string + type: array + qosPolicy: + description: List of QoS Ingress policy references to use at ingress. + items: + type: string + type: array + type: object + ipAddresses: + items: + properties: + ipv4Address: + description: IPv4 address in IP/mask form, e.g., 192.168.0.1/24. + properties: + ipPrefix: + description: Address and mask to use + type: string + primary: + description: Indicates which address to use as primary for broadcast + type: boolean + required: + - ipPrefix + type: object + ipv6Address: + description: IPv6 address in IP/mask form, e.g., fc00::1/120. + properties: + ipPrefix: + description: Address and mask to use + type: string + primary: + description: Indicates which address to use as primary for broadcast + type: boolean + required: + - ipPrefix + type: object + node: + description: Reference to a TopoNode resource, if not specified the IP address will be assigned to all nodes on which the IRB is deployed. If specified the IP address will be assigned to the specified node. + type: string + type: object + type: array + ipMTU: + default: 1500 + description: IP MTU for the IRBInterface [default=1500]. + maximum: 9486 + minimum: 1280 + type: integer + ipv4Parameters: + properties: + directedBroadcast: + description: Allow receiving and forwarding of directed broadcast packets. Enabled when set to true. + type: boolean + type: object + ipv6RouterAdvertisement: + properties: + currentHopLimit: + default: 64 + description: The current hop limit to advertise in the router advertisement messages. + format: int32 + maximum: 255 + minimum: 0 + type: integer + enabled: + default: false + description: Enable or disable IPv6 router advertisements. + type: boolean + ipMTU: + description: The IP MTU to advertise in the router advertisement messages. + format: int32 + maximum: 9486 + minimum: 1280 + type: integer + managedConfigurationFlag: + default: false + description: Enable DHCPv6 for address configuration (M-bit). + type: boolean + maxAdvertisementInterval: + default: 600 + description: Maximum time between router advertisements (in seconds). + format: int32 + maximum: 1800 + minimum: 4 + type: integer + minAdvertisementInterval: + default: 200 + description: Minimum time between router advertisements (in seconds). + format: int32 + maximum: 1350 + minimum: 3 + type: integer + otherConfigurationFlag: + default: false + description: Enable DHCPv6 for other configuration (O-bit). + type: boolean + prefixes: + description: IPv6 prefixes to advertise in router advertisements. + items: + description: IPv6Prefix defines the configuration for an IPv6 prefix advertisement. + properties: + autonomousFlag: + default: true + description: When this is set in the prefix information option hosts can use the prefix for stateless address autoconfiguration (SLAAC). + type: boolean + onLinkFlag: + default: true + description: When this is set in the prefix information option hosts can use the prefix for on-link determination. + type: boolean + preferredLifetime: + default: 604800 + description: The length of time in seconds (relative to the time the packet is sent) that addresses generated from the prefix via stateless address autoconfiguration remain preferred. + format: int32 + maximum: 4294967295 + minimum: 0 + type: integer + prefix: + description: An IPv6 global unicast address prefix. + type: string + validLifetime: + default: 2592000 + description: The length of time in seconds (relative to the time the packet is sent) that the prefix is valid for the purpose of on-link determination. + format: int32 + maximum: 4294967295 + minimum: 0 + type: integer + required: + - prefix + type: object + type: array + reachableTime: + default: 0 + description: Time in milliseconds for Neighbor Unreachability Detection. + format: int32 + maximum: 3600000 + minimum: 0 + type: integer + retransmitTime: + default: 0 + description: Time in milliseconds between retransmitted NS messages. + format: int32 + maximum: 1800000 + minimum: 0 + type: integer + routerLifetime: + default: 1800 + description: Router lifetime in seconds for default gateway. + format: int32 + maximum: 9000 + minimum: 0 + type: integer + required: + - currentHopLimit + - enabled + - managedConfigurationFlag + - maxAdvertisementInterval + - minAdvertisementInterval + - otherConfigurationFlag + - retransmitTime + - routerLifetime + type: object + l3ProxyARPND: + description: L3 Proxy ARP and ND configuration. + properties: + proxyARP: + default: false + description: Select whether Proxy ARP should be enabled. + type: boolean + proxyND: + default: false + description: Select whether Proxy ND should be enabled. + type: boolean + type: object + learnUnsolicited: + default: NONE + description: Enable or disable learning of unsolicited ARPs. + enum: + - BOTH + - GLOBAL + - LINK-LOCAL + - NONE + type: string + router: + description: Reference to a Router. + type: string + unnumbered: + description: Enables the use of unnumbered interfaces on the IRBInterface. If IPv6 is specified, no IP address are configured on the sub-interface and only the link local address will be used. If any IP addresses are specified for either IPv4 or IPv6 that will take precedence and IPs will be assigned to the interfaces.(Deprecated, Use IPv6RouterAdvertisement) + enum: + - IPV6 + type: string + virtualIPDiscovery: + description: Configuration for Virtual IP discovery on the interface. + items: + properties: + address: + description: Virtual IP Address. + type: string + allowedMAC: + description: List of allowed MAC addresses for a discovered virtual IP address. + items: + type: string + type: array + bridgeInterfaceToProbe: + description: List of BridgeInterfaces on the associated MAC-VRF to which the ARP probes are sent. If left blank, the probes are sent on all BridgeInterfaces associated with the BridgeDomain. + items: + type: string + type: array + probeInterval: + default: 0 + description: ARP probe interval in seconds. + maximum: 86400 + minimum: 0 + type: integer + vlanToProbe: + description: List of VLANs on the associated BridgeDomain to which the ARP probes are sent. If left blank, the probes are sent on all VLANs associated with the BridgeDomain. + items: + type: string + type: array + required: + - address + type: object + type: array + required: + - bridgeDomain + - router + type: object + required: + - name + - spec + type: object + type: array + protocols: + description: Protocols to configure. + properties: + bgp: + description: BGP Protocol. + properties: + bgpGroups: + description: List of BgpGroups. [emits=BGPGroup] + items: + properties: + name: + description: The name of the BgpGroup. + type: string + spec: + description: Specification of the BgpGroup + properties: + asPathOptions: + description: AS Path Options + properties: + allowOwnAS: + default: 0 + description: The maximum number of times the global AS number or a local AS number of the BGP instance can appear in any received AS_PATH before it is considered a loop and considered invalid. + maximum: 255 + minimum: 0 + type: integer + removePrivateAS: + description: Options for removing private AS numbers (2-byte and 4-byte) from the advertised AS path towards all peers. + properties: + ignorePeerAS: + default: false + description: If set to true then do not delete or replace a private AS number that is the same as the peer AS number. + type: boolean + leadingOnly: + default: false + description: If set to true then only delete or replace private AS numbers that appear before the first occurrence of a non-private ASN in the sequence of most recent ASNs in the AS path. + type: boolean + removePrivateASMode: + default: DISABLED + description: The method by which private AS numbers are removed from the advertised AS_PATH attribute. + enum: + - DISABLED + - REPLACE + - DELETE + type: string + required: + - ignorePeerAS + - leadingOnly + - removePrivateASMode + type: object + required: + - allowOwnAS + type: object + bfd: + description: Enable or disable Bi-forward Forwarding Detection (BFD) with fast failover. + type: boolean + client: + description: When set to true, all configured and dynamic BGP peers are considered RR clients. + type: boolean + clusterID: + description: Enables route reflect client and sets the cluster ID. + type: string + description: + description: Sets the description on the BGP group. + type: string + exportPolicy: + description: Reference to a Policy CR that will be used to filter routes advertised to peers. + items: + type: string + type: array + grStaleRouteTime: + description: Enables Graceful Restart on the peer and sets the stale route time. + maximum: 3600 + minimum: 1 + type: integer + importPolicy: + description: Reference to a Policy CR that will be used to filter routes received from peers. + items: + type: string + type: array + ipv4Unicast: + description: Parameters relating to the IPv4 unicast AFI/SAFI. + properties: + advertiseIPV6NextHops: + description: Enables advertisement of IPv4 Unicast routes with IPv6 next-hops to peers. + type: boolean + enabled: + description: Enables the IPv4 unicast AFISAFI. + type: boolean + maxReceivedRoutes: + description: Maximum number of IPv4 Unicast routes that will be accepted from the neighbor, counting routes accepted and rejected by import policies. + maximum: 4294967295 + minimum: 1 + type: integer + receiveIPV6NextHops: + description: Enables the advertisement of the RFC 5549 capability to receive IPv4 routes with IPv6 next-hops. + type: boolean + type: object + ipv6Unicast: + description: Parameters relating to the IPv6 unicast AFI/SAFI. + properties: + enabled: + description: Enables the IPv6 unicast AFISAFI + type: boolean + maxReceivedRoutes: + description: Maximum number of IPv6 Unicast routes that will be accepted from the neighbor, counting routes accepted and rejected by import policies. + maximum: 4294967295 + minimum: 1 + type: integer + type: object + keychain: + description: Reference to a Keychain resource that will be used for authentication with the BGP peer. + type: string + localAS: + description: The local autonomous system number advertised to peers. + properties: + autonomousSystem: + description: Local Autonomous System number. + maximum: 4294967295 + minimum: 1 + type: integer + prependGlobalAS: + description: When set to true, the global ASN value is prepended to the AS path in outbound routes towards each BGP peer. + type: boolean + prependLocalAS: + description: When set to true, the local AS value is prepended to the AS path of inbound routes from each EBGP peer. + type: boolean + required: + - autonomousSystem + type: object + localPreference: + description: Local Preference attribute added to received routes from the BGP peers, also sets local preference for generated routes. + maximum: 4294967295 + minimum: 0 + type: integer + multiHopMaxHop: + description: Enable multihop for eBGP peers and sets the maximum number of hops allowed. + maximum: 255 + minimum: 1 + type: integer + nextHopSelf: + description: When set to true, the next-hop in all IPv4-unicast, IPv6-unicast and EVPN BGP routes advertised to the peer is set to the local-address. + type: boolean + peerAS: + description: The autonomous system number expected from peers. + properties: + autonomousSystem: + description: Local Autonomous System number. + maximum: 4294967295 + minimum: 1 + type: integer + required: + - autonomousSystem + type: object + sendCommunityLarge: + description: When false, all large (12 byte) BGP communities from all outbound routes advertised to the peer are stripped. + type: boolean + sendCommunityStandard: + description: When false, all standard (4 byte) communities from all outbound routes advertised to the peer are stripped. + type: boolean + sendDefaultRoute: + description: Options for controlling the generation of default routes towards BGP peers. + properties: + addressFamily: + description: Enables the sending of a synthetically generated default IPv4 or IPV6 route to each peer. + items: + enum: + - IPV4-UNICAST + - IPV6-UNICAST + type: string + type: array + exportPolicy: + description: Reference to a Policy that should be applied to the advertised default routes, in order to set their attributes to non-default values. + type: string + required: + - addressFamily + type: object + timers: + description: Timer configurations + properties: + connectRetry: + description: The time interval in seconds between successive attempts to establish a session with a peer. + maximum: 65535 + minimum: 1 + type: integer + holdTime: + description: The hold-time interval in seconds that the router proposes to the peer in its OPEN message. + maximum: 65535 + minimum: 0 + type: integer + keepAlive: + description: The interval in seconds between successive keepalive messages sent to the peer. + maximum: 21845 + minimum: 0 + type: integer + minimumAdvertisementInterval: + description: The value assigned to the MinRouteAdvertisementIntervalTimer of RFC 4271, for both EBGP and IBGP sessions. + maximum: 255 + minimum: 1 + type: integer + type: object + type: object + required: + - name + - spec + type: object + type: array + bgpPeers: + description: List of BgpPeers [emits=BGPPeer] + items: + properties: + name: + description: The name of the BgpPeer. + type: string + spec: + description: Specification of the BgpPeer + properties: + asPathOptions: + description: AS Path Options + properties: + allowOwnAS: + default: 0 + description: The maximum number of times the global AS number or a local AS number of the BGP instance can appear in any received AS_PATH before it is considered a loop and considered invalid. + maximum: 255 + minimum: 0 + type: integer + removePrivateAS: + description: Options for removing private AS numbers (2-byte and 4-byte) from the advertised AS path towards all peers. + properties: + ignorePeerAS: + default: false + description: If set to true then do not delete or replace a private AS number that is the same as the peer AS number. + type: boolean + leadingOnly: + default: false + description: If set to true then only delete or replace private AS numbers that appear before the first occurrence of a non-private ASN in the sequence of most recent ASNs in the AS path. + type: boolean + removePrivateASMode: + default: DISABLED + description: The method by which private AS numbers are removed from the advertised AS_PATH attribute. + enum: + - DISABLED + - REPLACE + - DELETE + type: string + required: + - ignorePeerAS + - leadingOnly + - removePrivateASMode + type: object + required: + - allowOwnAS + type: object + bfd: + description: Enable or disable Bi-forward Forwarding Detection (BFD) with fast failover. + type: boolean + client: + description: When set to true, all configured and dynamic BGP peers are considered RR clients. + type: boolean + clusterID: + description: Enables route reflect client and sets the cluster ID. + type: string + description: + description: Sets the description on the BGP peer + type: string + dynamicNeighbor: + default: false + description: When set to true the Interface is added to the dynamic-neighbor list for dynamic peering. + type: boolean + dynamicNeighborAllowedPeerAS: + description: The autonomous system numbers allowed from peers if dynamic peering is enabled. + items: + type: integer + type: array + exportPolicy: + description: Reference to a Policy CR that will be used to filter routes advertised to peers. + items: + type: string + type: array + grStaleRouteTime: + description: Enables Graceful Restart on the peer and sets the stale route time. + maximum: 3600 + minimum: 1 + type: integer + group: + description: Reference to a BGPGroup. When present this BGP peer will be added to the BGP group + type: string + importPolicy: + description: Reference to a Policy CR that will be used to filter routes received from peers. + items: + type: string + type: array + interface: + description: Reference to a RoutedInterface or IrbInterface resource whose IP will be used as a source IP for the BGP session. + type: string + interfaceKind: + description: InterfaceReference type defines whether the provided Reference is a RoutedInterface or IrbInterface. + enum: + - ROUTEDINTERFACE + - IRBINTERFACE + type: string + ipv4Unicast: + description: Parameters relating to the IPv4 unicast AFI/SAFI. + properties: + advertiseIPV6NextHops: + description: Enables advertisement of IPv4 Unicast routes with IPv6 next-hops to peers. + type: boolean + enabled: + description: Enables the IPv4 unicast AFISAFI. + type: boolean + maxReceivedRoutes: + description: Maximum number of IPv4 Unicast routes that will be accepted from the neighbor, counting routes accepted and rejected by import policies. + maximum: 4294967295 + minimum: 1 + type: integer + receiveIPV6NextHops: + description: Enables the advertisement of the RFC 5549 capability to receive IPv4 routes with IPv6 next-hops. + type: boolean + type: object + ipv6Unicast: + description: Parameters relating to the IPv6 unicast AFI/SAFI. + properties: + enabled: + description: Enables the IPv6 unicast AFISAFI + type: boolean + maxReceivedRoutes: + description: Maximum number of IPv6 Unicast routes that will be accepted from the neighbor, counting routes accepted and rejected by import policies. + maximum: 4294967295 + minimum: 1 + type: integer + type: object + keychain: + description: Reference to a Keychain resource that will be used for authentication with the BGP peer. + type: string + localAS: + description: The local autonomous system number advertised to peers. + properties: + autonomousSystem: + description: Local Autonomous System number. + maximum: 4294967295 + minimum: 1 + type: integer + prependGlobalAS: + description: When set to true, the global ASN value is prepended to the AS path in outbound routes towards each BGP peer. + type: boolean + prependLocalAS: + description: When set to true, the local AS value is prepended to the AS path of inbound routes from each EBGP peer. + type: boolean + required: + - autonomousSystem + type: object + localPreference: + description: Local Preference attribute added to received routes from the BGP peers, also sets local preference for generated routes. + maximum: 4294967295 + minimum: 0 + type: integer + multiHopMaxHop: + description: Enable multihop for eBGP peers and sets the maximum number of hops allowed. + maximum: 255 + minimum: 1 + type: integer + nextHopSelf: + description: When set to true, the next-hop in all IPv4-unicast, IPv6-unicast and EVPN BGP routes advertised to the peer is set to the local-address. + type: boolean + node: + description: Node on which to configure the BGP peer. This node must be one of the nodes on which the IRBInterface is configured. When left blank or if the node is not part of the IRBInterface, the peer will not be deployed. Ignored for RoutedInterfaces. + type: string + peerAS: + description: The autonomous system number expected from peers. + properties: + autonomousSystem: + description: Local Autonomous System number. + maximum: 4294967295 + minimum: 1 + type: integer + required: + - autonomousSystem + type: object + peerIP: + description: Peer IP to which the peering session will be established. + type: string + sendCommunityLarge: + description: When false, all large (12 byte) BGP communities from all outbound routes advertised to the peer are stripped. + type: boolean + sendCommunityStandard: + description: When false, all standard (4 byte) communities from all outbound routes advertised to the peer are stripped. + type: boolean + sendDefaultRoute: + description: Options for controlling the generation of default routes towards BGP peers. + properties: + addressFamily: + description: Enables the sending of a synthetically generated default IPv4 or IPV6 route to each peer. + items: + enum: + - IPV4-UNICAST + - IPV6-UNICAST + type: string + type: array + exportPolicy: + description: Reference to a Policy that should be applied to the advertised default routes, in order to set their attributes to non-default values. + type: string + required: + - addressFamily + type: object + timers: + description: Timer configurations + properties: + connectRetry: + description: The time interval in seconds between successive attempts to establish a session with a peer. + maximum: 65535 + minimum: 1 + type: integer + holdTime: + description: The hold-time interval in seconds that the router proposes to the peer in its OPEN message. + maximum: 65535 + minimum: 0 + type: integer + keepAlive: + description: The interval in seconds between successive keepalive messages sent to the peer. + maximum: 21845 + minimum: 0 + type: integer + minimumAdvertisementInterval: + description: The value assigned to the MinRouteAdvertisementIntervalTimer of RFC 4271, for both EBGP and IBGP sessions. + maximum: 255 + minimum: 1 + type: integer + type: object + required: + - group + - interface + - interfaceKind + type: object + required: + - name + - spec + type: object + type: array + type: object + routingPolicies: + description: Routing Policies. + properties: + policies: + description: List of Policies. [emits=Policy] + items: + properties: + name: + description: Name of the Policy. + type: string + spec: + description: A policy + properties: + defaultAction: + description: The default action to apply if no other actions are defined. + properties: + bgp: + description: Actions related to the BGP protocol. + properties: + asPathPrepend: + description: AS number to prepend to the AS Path attributes. + format: int32 + maximum: 4294967295 + minimum: 1 + type: integer + asPathRemove: + description: Clear the AS path to make it empty. + type: boolean + asPathReplace: + description: Replace the existing AS path with a new AS_SEQUENCE containing the listed AS numbers. + items: + format: int32 + type: integer + type: array + communitySet: + description: Modify BGP communities associated with the route using hybrid Community Sets. + properties: + add: + description: List of community sets to add to the route. + items: + type: string + maxItems: 1 + type: array + remove: + description: List of community sets to remove from the route. + items: + type: string + maxItems: 1 + type: array + replace: + description: List of community sets to replace the existing communities with. Cannot be combined with Add or Remove. + items: + type: string + maxItems: 1 + type: array + type: object + localPreference: + description: Set a new LOCAL_PREF value for matching BGP routes. + format: int32 + maximum: 4294967295 + minimum: 0 + type: integer + med: + description: Set a new MED value. + properties: + numericalValue: + description: Fixed numerical value to set or add/subtract. + maximum: 4294967295 + minimum: 0 + type: integer + operation: + description: The operation to perform on the MED value. + enum: + - Set + - Add + - Subtract + type: string + valueType: + description: Use a fixed value or an IGP metric to adjust the MED. + enum: + - Fixed + - IGP + type: string + type: object + setOrigin: + description: Set a new ORIGIN attribute for matching BGP routes. + enum: + - egp + - igp + - incomplete + type: string + type: object + policyResult: + description: Final disposition for the route. + enum: + - accept + - reject + - NextPolicy + - NextStatement + type: string + type: object + statement: + description: List of policy statements. + items: + properties: + action: + description: Actions for routes that match the policy statement. + properties: + bgp: + description: Actions related to the BGP protocol. + properties: + asPathPrepend: + description: AS number to prepend to the AS Path attributes. + format: int32 + maximum: 4294967295 + minimum: 1 + type: integer + asPathRemove: + description: Clear the AS path to make it empty. + type: boolean + asPathReplace: + description: Replace the existing AS path with a new AS_SEQUENCE containing the listed AS numbers. + items: + format: int32 + type: integer + type: array + communitySet: + description: Modify BGP communities associated with the route using hybrid Community Sets. + properties: + add: + description: List of community sets to add to the route. + items: + type: string + maxItems: 1 + type: array + remove: + description: List of community sets to remove from the route. + items: + type: string + maxItems: 1 + type: array + replace: + description: List of community sets to replace the existing communities with. Cannot be combined with Add or Remove. + items: + type: string + maxItems: 1 + type: array + type: object + localPreference: + description: Set a new LOCAL_PREF value for matching BGP routes. + format: int32 + maximum: 4294967295 + minimum: 0 + type: integer + med: + description: Set a new MED value. + properties: + numericalValue: + description: Fixed numerical value to set or add/subtract. + maximum: 4294967295 + minimum: 0 + type: integer + operation: + description: The operation to perform on the MED value. + enum: + - Set + - Add + - Subtract + type: string + valueType: + description: Use a fixed value or an IGP metric to adjust the MED. + enum: + - Fixed + - IGP + type: string + type: object + setOrigin: + description: Set a new ORIGIN attribute for matching BGP routes. + enum: + - egp + - igp + - incomplete + type: string + type: object + policyResult: + description: Final disposition for the route. + enum: + - accept + - reject + - NextPolicy + - NextStatement + type: string + type: object + match: + description: Match conditions of the policy statement. + properties: + bgp: + description: Configuration for BGP-specific policy match criteria. + properties: + asPathMatch: + description: AS Path match criteria. + properties: + asPathExpression: + description: A singular regular expression string to match against AS_PATH objects. Mutually exclusive with the ASPathSet reference. + type: string + asPathSet: + description: Reference to an ASPathSet resource. Mutually exclusive with the ASPathExpression. + type: string + matchSetOptions: + description: The matching criteria that applies to the members in the referenced set. + enum: + - Any + - All + - Invert + type: string + type: object + communitySet: + description: Match conditions for BGP communities. + type: string + evpnRouteType: + description: Match conditions for EVPN route types. + items: + type: integer + type: array + type: object + family: + description: Address families that the route belongs to. + items: + type: string + type: array + prefixSet: + description: Reference to a PrefixSet resource. + type: string + protocol: + description: The route protocol type to match. + enum: + - AGGREGATE + - ARP_ND + - BGP + - BGP_EVPN + - DHCP + - GRIBI + - HOST + - ISIS + - LOCAL + - LINUX + - NDK1 + - NDK2 + - OSPFV2 + - OSPFV3 + - STATIC + type: string + type: object + name: + description: Name of the policy statement. + type: string + required: + - name + type: object + type: array + type: object + required: + - name + type: object + type: array + prefixSets: + description: List of PrefixSet [emits=PrefixSet] + items: + properties: + name: + description: Name of the PrefixSet. + type: string + spec: + description: A PrefixSets + properties: + prefix: + description: List of IPv4 or IPv6 prefixes in CIDR notation. + items: + properties: + endRange: + description: The end range when using a range to match prefixes. + maximum: 128 + minimum: 0 + type: integer + exact: + description: Indicates if it is an exact match. Ignores the StartRange and EndRange if this param is set. + type: boolean + prefix: + description: The IPv4 or IPv6 prefix in CIDR notation with mask. + type: string + startRange: + description: If specifying a range, this is the start of the range. + maximum: 128 + minimum: 0 + type: integer + required: + - prefix + type: object + type: array + required: + - prefix + type: object + required: + - name + type: object + type: array + type: object + staticRoutes: + description: List of Static Routes within this VirtualNetwork. [emits=StaticRoute] + items: + properties: + name: + description: Name of the StaticRoute. + type: string + spec: + description: A StaticRoutes + properties: + nexthopGroup: + description: Group of nexthops for the list of prefixes. + properties: + bfd: + description: Enables BFD to the next-hops in the group. Local and Remote discriminator parameters have been deprecated at this level. Use Nexthop to set these parameters. + properties: + enabled: + default: false + description: Defines whether BFD should be enabled towards the nexthops. + type: boolean + localAddress: + description: Defines the local address to use when establishing the BFD session with the nexthop. + type: string + localDiscriminator: + description: Defines the local discriminator. + type: integer + remoteDiscriminator: + description: Defines the remote discriminator. + type: integer + type: object + blackhole: + default: false + description: If set to true all traffic destined to the prefixes will be blackholed. If enabled, next-hops are ignored and this takes precedence. + type: boolean + blackholeSendICMP: + description: When enabled, the router will generate ICMP Unreachable messages for packets destined to the blackhole route. + type: boolean + nexthops: + description: Ordered list of nexthops. + items: + properties: + bfd: + description: Enables BFD to the next-hops in the group. This overrides the configuration at the group. + properties: + enabled: + default: false + description: Defines whether BFD should be enabled towards the nexthops. + type: boolean + localAddress: + description: Defines the local address to use when establishing the BFD session with the nexthop. + type: string + localDiscriminator: + description: Defines the local discriminator. + type: integer + remoteDiscriminator: + description: Defines the remote discriminator. + type: integer + type: object + ipPrefix: + description: Address to use. + type: string + resolve: + default: false + description: If set to true the next-hops can be destinations which are resolved in the route table. This overrides the configuration at the group. + type: boolean + required: + - ipPrefix + type: object + type: array + resolve: + default: false + description: If set to true the next-hops can be destinations which are resolved in the route table. + type: boolean + type: object + nodes: + description: List of nodes on which to configure the static routes. An AND operation is executed against the nodes in this list and the nodes on which the Router is configured to determine the Nodes on which to configure the static routes. + items: + type: string + type: array + preference: + description: Defines the route preference. + type: integer + prefixes: + description: List of destination prefixes and mask to use for the static routes. + items: + type: string + type: array + router: + description: Reference to a Router on which to configure the static routes. If no Nodes are provided then the static routes will be provisioned on all Nodes on which the Router is provisioned. + type: string + required: + - nexthopGroup + - prefixes + - router + type: object + required: + - name + type: object + type: array + type: object + routedInterfaces: + description: List of RoutedInterface. [emits=RoutedInterface] + items: + properties: + name: + description: The name of the RoutedInterface. + type: string + spec: + description: Specification of the RoutedInterface + properties: + arpTimeout: + default: 14400 + description: Duration of time that dynamic ARP entries remain in the ARP cache before they expire. + format: int32 + type: integer + bfd: + description: Enables BFD on the RoutedInterface. + properties: + desiredMinTransmitInt: + default: 1000000 + description: The minimum interval in microseconds between transmission of BFD control packets. + maximum: 100000000 + minimum: 10000 + type: integer + detectionMultiplier: + default: 3 + description: The number of packets that must be missed to declare this session as down. + maximum: 20 + minimum: 3 + type: integer + enabled: + default: false + description: Enables Biforward Detection. + type: boolean + minEchoReceiveInterval: + default: 0 + description: The minimum interval between echo packets the local node can receive. + maximum: 100000000 + minimum: 0 + type: integer + requiredMinReceive: + default: 1000000 + description: The minimum interval in microseconds between received BFD control packets that this system should support. + maximum: 100000000 + minimum: 10000 + type: integer + ttl: + description: Sets custom IP TTL or Hop Limit for multi-hop BFD sessions packets. Not appllicable to single-hop BFD sessions. + maximum: 255 + minimum: 2 + type: integer + required: + - enabled + type: object + description: + description: The description of the RoutedInterface. + type: string + egress: + description: Manages actions on traffic at Egress. + properties: + filters: + description: List of Filter references to use at egress. + items: + type: string + type: array + qosPolicy: + description: List of QoS Egress policy references to use at egress. + items: + type: string + type: array + type: object + ingress: + description: Manages actions on traffic at Ingress. + properties: + filters: + description: List of Filter references to use at ingress. + items: + type: string + type: array + qosPolicy: + description: List of QoS Ingress policy references to use at ingress. + items: + type: string + type: array + type: object + interface: + description: Reference to an Interface to use for attachment. + type: string + ipMTU: + default: 1500 + description: IP MTU for the RoutedInterface. + maximum: 9486 + minimum: 1280 + type: integer + ipv4Addresses: + description: List of IPv4 addresses in IP/mask form, e.g., 192.168.0.1/24. + items: + properties: + ipPrefix: + description: Address and mask to use + type: string + primary: + description: Indicates which address to use as primary for broadcast + type: boolean + required: + - ipPrefix + type: object + type: array + ipv4Parameters: + properties: + directedBroadcast: + description: Allow receiving and forwarding of directed broadcast packets. Enabled when set to true. + type: boolean + type: object + ipv6Addresses: + description: List of IPv6 addresses in IP/mask form, e.g., fc00::1/120. + items: + properties: + ipPrefix: + description: Address and mask to use + type: string + primary: + description: Indicates which address to use as primary for broadcast + type: boolean + required: + - ipPrefix + type: object + type: array + ipv6RouterAdvertisement: + properties: + currentHopLimit: + default: 64 + description: The current hop limit to advertise in the router advertisement messages. + format: int32 + maximum: 255 + minimum: 0 + type: integer + enabled: + default: false + description: Enable or disable IPv6 router advertisements. + type: boolean + ipMTU: + description: The IP MTU to advertise in the router advertisement messages. + format: int32 + maximum: 9486 + minimum: 1280 + type: integer + managedConfigurationFlag: + default: false + description: Enable DHCPv6 for address configuration (M-bit). + type: boolean + maxAdvertisementInterval: + default: 600 + description: Maximum time between router advertisements (in seconds). + format: int32 + maximum: 1800 + minimum: 4 + type: integer + minAdvertisementInterval: + default: 200 + description: Minimum time between router advertisements (in seconds). + format: int32 + maximum: 1350 + minimum: 3 + type: integer + otherConfigurationFlag: + default: false + description: Enable DHCPv6 for other configuration (O-bit). + type: boolean + prefixes: + description: IPv6 prefixes to advertise in router advertisements. + items: + description: IPv6Prefix defines the configuration for an IPv6 prefix advertisement. + properties: + autonomousFlag: + default: true + description: When this is set in the prefix information option hosts can use the prefix for stateless address autoconfiguration (SLAAC). + type: boolean + onLinkFlag: + default: true + description: When this is set in the prefix information option hosts can use the prefix for on-link determination. + type: boolean + preferredLifetime: + default: 604800 + description: The length of time in seconds (relative to the time the packet is sent) that addresses generated from the prefix via stateless address autoconfiguration remain preferred. + format: int32 + maximum: 4294967295 + minimum: 0 + type: integer + prefix: + description: An IPv6 global unicast address prefix. + type: string + validLifetime: + default: 2592000 + description: The length of time in seconds (relative to the time the packet is sent) that the prefix is valid for the purpose of on-link determination. + format: int32 + maximum: 4294967295 + minimum: 0 + type: integer + required: + - prefix + type: object + type: array + reachableTime: + default: 0 + description: Time in milliseconds for Neighbor Unreachability Detection. + format: int32 + maximum: 3600000 + minimum: 0 + type: integer + retransmitTime: + default: 0 + description: Time in milliseconds between retransmitted NS messages. + format: int32 + maximum: 1800000 + minimum: 0 + type: integer + routerLifetime: + default: 1800 + description: Router lifetime in seconds for default gateway. + format: int32 + maximum: 9000 + minimum: 0 + type: integer + required: + - currentHopLimit + - enabled + - managedConfigurationFlag + - maxAdvertisementInterval + - minAdvertisementInterval + - otherConfigurationFlag + - retransmitTime + - routerLifetime + type: object + l3ProxyARPND: + description: L3 Proxy ARP and ND configuration. + properties: + proxyARP: + default: false + description: Select whether Proxy ARP should be enabled. + type: boolean + proxyND: + default: false + description: Select whether Proxy ND should be enabled. + type: boolean + type: object + learnUnsolicited: + default: NONE + description: Enable or disable learning of unsolicited ARPs. + enum: + - BOTH + - GLOBAL + - LINK-LOCAL + - NONE + type: string + router: + description: Reference to a Router. + type: string + unnumbered: + description: Enables the use of unnumbered interfaces on the IRBInterface. If IPv6 is specified, no IP address are configured on the sub-interface and only the link local address will be used. If any IP addresses are specified for either IPv4 or IPv6 that will take precedence and IPs will be assigned to the interfaces. (Deprecated, Use IPv6RouterAdvertisement) + enum: + - IPV6 + type: string + vlanID: + default: pool + description: Single value between 1-4094 support, ranges supported in the format x-y,x-y, or the special keyword null, any, untagged or pool for auto allocation. + type: string + vlanPool: + default: vlan-pool + description: Reference to a VLAN pool to use for allocations. + type: string + required: + - interface + - router + type: object + required: + - name + - spec + type: object + type: array + routers: + description: List of Routers.[emits=Router] + items: + properties: + name: + description: The name of the Router. + type: string + spec: + description: Specification of the Router + properties: + bgp: + description: BGP configuration. + properties: + autonomousSystem: + description: Autonomous System number for BGP. + maximum: 4294967295 + minimum: 1 + type: integer + ebgpPreference: + default: 170 + description: Preference to be set for eBGP [default=170]. + maximum: 255 + minimum: 1 + type: integer + enabled: + default: false + description: Enable or disable BGP. + type: boolean + ibgpPreference: + default: 170 + description: Preference to be set for iBGP [default=170]. + maximum: 255 + minimum: 1 + type: integer + ipAliasNexthops: + description: IP aliasing configuration. + items: + properties: + esi: + default: auto + description: 10 byte Ethernet Segment Identifier, if not set a type 0 ESI is generated. + type: string + nextHop: + description: The nexthop IP address to track for the IP alias. + type: string + preferredActiveNode: + description: When not set the ES is used in an all active mode. This references the ToppNode object and when set, the DF algorithm is configured to type preference and the selected Node is set with a higher preference value. All other Nodes have a lower value configured. + type: string + required: + - nextHop + type: object + type: array + ipv4Unicast: + description: Parameters relating to the IPv4 unicast AFI/SAFI. + properties: + advertiseIPV6NextHops: + description: Enables advertisement of IPv4 Unicast routes with IPv6 next-hops to peers. + type: boolean + enabled: + default: false + description: Enables the IPv4 unicast AFISAFI. + type: boolean + multipath: + description: Enable multipath. + properties: + allowMultipleAS: + default: true + description: When set to true, BGP is allowed to build a multipath set using BGP routes with different neighbor AS (most recent AS in the AS_PATH), When set to false, BGP is only allowed to use non-best paths for ECMP if they meet the multipath criteria and they have the same neighbor AS as the best path. + type: boolean + maxAllowedPaths: + description: The maximum number of BGP ECMP next-hops for BGP routes with an NLRI belonging to the address family of this configuration context. + maximum: 256 + minimum: 1 + type: integer + required: + - allowMultipleAS + - maxAllowedPaths + type: object + receiveIPV6NextHops: + description: Enables the advertisement of the RFC 5549 capability to receive IPv4 routes with IPv6 next-hops. + type: boolean + required: + - enabled + type: object + ipv6Unicast: + description: Parameters relating to the IPv6 unicast AFI/SAFI. + properties: + enabled: + default: false + description: Enables the IPv6 unicast AFISAFI + type: boolean + multipath: + description: Enable multipath + properties: + allowMultipleAS: + default: true + description: When set to true, BGP is allowed to build a multipath set using BGP routes with different neighbor AS (most recent AS in the AS_PATH), When set to false, BGP is only allowed to use non-best paths for ECMP if they meet the multipath criteria and they have the same neighbor AS as the best path. + type: boolean + maxAllowedPaths: + description: The maximum number of BGP ECMP next-hops for BGP routes with an NLRI belonging to the address family of this configuration context. + maximum: 256 + minimum: 1 + type: integer + required: + - allowMultipleAS + - maxAllowedPaths + type: object + required: + - enabled + type: object + keychain: + description: Keychain to be used for authentication + type: string + minWaitToAdvertise: + default: 0 + description: Minimum wait time before advertising routes post BGP restart. + maximum: 3600 + minimum: 0 + type: integer + rapidWithdrawl: + default: true + description: Enable rapid withdrawal in BGP. + type: boolean + waitForFIBInstall: + default: false + description: Wait for FIB installation before advertising routes. + type: boolean + type: object + description: + description: The description of the Router. + type: string + evi: + description: EVI for the Router; leave blank for auto-allocation from EVI pool. + maximum: 65535 + minimum: 1 + type: integer + eviPool: + default: evi-pool + description: Reference to EVI pool for auto-allocation. + type: string + exportTarget: + description: Export route target in 'target:N:N' format, if not specified, the default value taken as "target:1:". + pattern: ^target.*$ + type: string + importTarget: + description: Import route target in 'target:N:N' format, if not specified, the default value taken as "target:1:". + pattern: ^target.*$ + type: string + ipLoadBalancing: + description: IPv4 or IPv6 prefix. Active routes in the FIB that exactly match this prefix or that are longer matches of this prefix are provided with resilient-hash programming. + properties: + prefix: + description: IPv4 or IPv6 prefix. Active routes in the FIB that exactly match this prefix or that are longer matches of this prefix are provided with resilient-hash programming. + items: + properties: + hashBucketsPerPath: + default: 1 + description: The number of times each next-hop is repeated in the fill pattern if there are max-paths ECMP next-hops. + maximum: 32 + minimum: 1 + type: integer + maxECMP: + default: 1 + description: The maximum number of ECMP next-hops per route associated with the resilient-hash prefix. + maximum: 64 + minimum: 1 + type: integer + prefix: + description: IPv4 or IPv6 prefix. Active routes in the FIB that exactly match this prefix or that are longer matches of this prefix are provided with resilient-hash programming. + type: string + required: + - hashBucketsPerPath + - maxECMP + - prefix + type: object + type: array + type: object + nodeSelector: + description: Node selectors for deployment constraints. If Nodes are selected, the Router will only be deployed on the Nodes selected, if left blank it will be deployed on all Nodes for which there are IRB or RoutedInterfaces referencing this Router. + items: + type: string + type: array + routeLeaking: + description: Route leaking controlled by routing policies in and out of the DefaultRouter. + properties: + exportPolicy: + description: Reference to a Policy resource to use when evaluating route exports from the DefaultRouter. + type: string + importPolicy: + description: Reference to a Policy resource to use when evaluating route imports into the DefaultRouter. + type: string + type: object + routerID: + description: Router ID. + type: string + tunnelIndexPool: + default: tunnel-index-pool + description: Reference to tunnel index allocation pool. + type: string + type: + default: EVPNVXLAN + description: Select the type of Router. Simple doesn't include any overlay control plane or dataplane properties (EVPN/VXLAN). EVPNVXLAN includes the properties needed to provision this Router over an IP Fabric. + enum: + - SIMPLE + - EVPNVXLAN + type: string + vni: + description: VNI for the Router; leave blank for auto-allocation from VNI pool. + maximum: 16777215 + minimum: 1 + type: integer + vniPool: + default: vni-pool + description: Reference to VNI pool for auto-allocation. + type: string + type: object + required: + - name + - spec + type: object + type: array + vlans: + description: List of VLANs. [emits=VLAN] + items: + properties: + name: + description: The name of the VLAN. + type: string + spec: + description: Specification of the Vlan + properties: + bridgeDomain: + description: Reference to a BridgeDomain or SimpleBridgeDomain. + type: string + description: + description: The description of the VLAN. + type: string + egress: + description: Manages actions on traffic at Egress. + properties: + filters: + description: List of Filter references to use at egress. + items: + type: string + type: array + qosPolicy: + description: List of QoS Egress policy references to use at egress. + items: + type: string + type: array + type: object + ingress: + description: Manages actions on traffic at Ingress. + properties: + filters: + description: List of Filter references to use at ingress. + items: + type: string + type: array + qosPolicy: + description: List of QoS Ingress policy references to use at ingress. + items: + type: string + type: array + type: object + interfaceSelector: + description: Interfaces to use for attachment to this VLAN based on the label selector. Selects Interfaces based on their associated labels. + items: + type: string + type: array + l2MTU: + description: L2 MTU specifies the maximum sized Ethernet frame that can be transmitted on the subinterface. If a frame exceeds this size it is discarded. If the l2-mtu of the subinterface exceeds the port-mtu of the associated interface, the subinterface will remain operationally down. + maximum: 9500 + minimum: 1450 + type: integer + macDuplicationDetectionAction: + description: If Mac Duplication Detection is enabled on the associated Bridge Domain, this property will override the MDD action set in the BridgeDomain. + enum: + - Blackhole + - OperDown + - StopLearning + - UseBridgeDomainAction + type: string + splitHorizonGroup: + description: Name of the Split Horizon Group to be used for this VLAN. All subinterfaces within this VLAN will be members of this Split Horizon Group. + type: string + uplink: + description: The Uplink between your access breakout switch and your leaf switch. + properties: + egress: + description: Manages actions on traffic at Egress of the Local enpoint of the Uplink. + properties: + filters: + description: List of Filter references to use at egress. + items: + type: string + type: array + qosPolicy: + description: List of QoS Egress policy references to use at egress. + items: + type: string + type: array + type: object + ingress: + description: Manages actions on traffic at Ingress of the Local enpoint of the Uplink. + properties: + filters: + description: List of Filter references to use at ingress. + items: + type: string + type: array + qosPolicy: + description: List of QoS Ingress policy references to use at ingress. + items: + type: string + type: array + type: object + uplinkSelector: + description: Selects TopoLinks which connect a leaf switch to a breakout switch. This is the uplink between your access breakout switch and your leaf switch. There can only be a single TopoLink between the access breakout switch and the leaf switch, if more than one TopoLink is present between two devices the transaction will fail. + items: + type: string + type: array + uplinkVLANID: + default: pool + description: The VLAN ID to be utilized to isolate traffic from the VLAN on the access breakout switch to the leaf switch on the selected uplink TopoLink. + type: string + uplinkVLANPool: + description: A VLAN from this pool will be utilized to isolate traffic from the VLAN on the access breakout switch to the leaf switch on the selected uplink TopoLink. + type: string + type: object + vlanID: + default: pool + description: Single value between 1-4094 support, ranges supported in the format x-y,x-y, or the special keyword null, any, untagged or pool for auto allocation. + type: string + vlanPool: + description: Reference to a VLAN pool to use for allocations. [default="vlan-pool"] + type: string + required: + - bridgeDomain + - interfaceSelector + type: object + required: + - name + - spec + type: object + type: array + type: object + status: + properties: + health: + description: Indicates the health score of the VNET. + type: integer + healthScoreReason: + description: Indicates the reason for the health score. + type: string + lastChange: + description: The time when the state of the resource last changed. + type: string + nodes: + description: List of Nodes on which the Router is deployed. + items: + type: string + type: array + numBGPPeers: + description: Total number of configured BGP Peers. + type: integer + numBGPPeersOperDown: + description: Total Number of BGP Peer operationally down. + type: integer + numIRBInterfaces: + description: Total number of irb-interfaces configured by the VNET. + format: int32 + type: integer + numIRBInterfacesOperDown: + description: Total number of irb-interfaces configured by the VNET which are oper-down. + format: int32 + type: integer + numNodes: + description: Total number of Nodes on which the VNET is configured. + type: integer + numRoutedInterfaces: + description: Total number of routed-interfaces configured by the VNET. + format: int32 + type: integer + numRoutedInterfacesOperDown: + description: Total number of routed-interfaces configured by the VNET which are oper-down. + format: int32 + type: integer + numSubInterfaces: + description: Total number of sub-interfaces configured by the VNET. + format: int32 + type: integer + numSubInterfacesOperDown: + description: Total number of sub-interfaces configured by the VNET which are oper-down. + format: int32 + type: integer + operationalState: + description: Operational state of the VNET. + type: string + type: object + type: object +served: true +storage: false +subresources: + status: {} diff --git a/static/resources/25.8.3/virtualnetworkstates.services.eda.nokia.com/v1.yaml b/static/resources/25.8.3/virtualnetworkstates.services.eda.nokia.com/v1.yaml new file mode 100644 index 0000000..be3c2b3 --- /dev/null +++ b/static/resources/25.8.3/virtualnetworkstates.services.eda.nokia.com/v1.yaml @@ -0,0 +1,69 @@ +name: v1 +schema: + openAPIV3Schema: + description: VirtualNetworkState is the Schema for the virtualnetworkstates API + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + description: VirtualNetworkStateSpec defines the desired state of VirtualNetworkState + properties: + bgpPeers: + description: List of BGPPeers created by the VNET + items: + type: string + type: array + bridgeDomains: + description: List of BridgeDomains created by the VNET + items: + type: string + type: array + bridgeInterfaces: + description: List of Bridgeinterfaces created by the VNET + items: + type: string + type: array + irbInterfaces: + description: List of IRBInterfaces created by the VNET + items: + type: string + type: array + routedInterfaces: + description: List of RoutedInterface created by the VNET + items: + type: string + type: array + routers: + description: List of Routers created by the VNET + items: + type: string + type: array + vlans: + description: List of VLANs created by the VNET + items: + type: string + type: array + type: object + status: + description: VirtualNetworkStateStatus defines the observed state of VirtualNetworkState + type: object + type: object +served: true +storage: true +subresources: + status: {} diff --git a/static/resources/25.8.3/virtualnetworkstates.services.eda.nokia.com/v1alpha1.yaml b/static/resources/25.8.3/virtualnetworkstates.services.eda.nokia.com/v1alpha1.yaml new file mode 100644 index 0000000..9cdab03 --- /dev/null +++ b/static/resources/25.8.3/virtualnetworkstates.services.eda.nokia.com/v1alpha1.yaml @@ -0,0 +1,71 @@ +deprecated: true +deprecationWarning: This version is deprecated and will no longer be supported in the next version. +name: v1alpha1 +schema: + openAPIV3Schema: + description: VirtualNetworkState is the Schema for the virtualnetworkstates API + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + description: VirtualNetworkStateSpec defines the desired state of VirtualNetworkState + properties: + bgpPeers: + description: List of BGPPeers created by the VNET + items: + type: string + type: array + bridgeDomains: + description: List of BridgeDomains created by the VNET + items: + type: string + type: array + bridgeInterfaces: + description: List of Bridgeinterfaces created by the VNET + items: + type: string + type: array + irbInterfaces: + description: List of IRBInterfaces created by the VNET + items: + type: string + type: array + routedInterfaces: + description: List of RoutedInterface created by the VNET + items: + type: string + type: array + routers: + description: List of Routers created by the VNET + items: + type: string + type: array + vlans: + description: List of VLANs created by the VNET + items: + type: string + type: array + type: object + status: + description: VirtualNetworkStateStatus defines the observed state of VirtualNetworkState + type: object + type: object +served: true +storage: false +subresources: + status: {} diff --git a/static/resources/25.8.3/vlans.services.eda.nokia.com/v1.yaml b/static/resources/25.8.3/vlans.services.eda.nokia.com/v1.yaml new file mode 100644 index 0000000..2ce4f90 --- /dev/null +++ b/static/resources/25.8.3/vlans.services.eda.nokia.com/v1.yaml @@ -0,0 +1,223 @@ +additionalPrinterColumns: + - jsonPath: .spec.bridgeDomain + name: BridgeDomain + type: string + - jsonPath: .status.numSubInterfacesOperDown + name: OperDown SubIf + type: string + - jsonPath: .status.numSubInterfaces + name: Total SubIf + type: string + - jsonPath: .status.operationalState + name: OperationalState + type: string + - jsonPath: .status.lastChange + name: LastChange + type: string + - jsonPath: .metadata.creationTimestamp + name: Age + type: date +name: v1 +schema: + openAPIV3Schema: + description: VLAN is the Schema for the vlans API + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + description: The VLAN enables the configuration and management of VLAN and their association with BridgeDomains. This resource allows for specifying the associated BridgeDomain, selecting interfaces based on label selectors, and configuring VLAN IDs with options for auto-allocation from a VLAN pool. It also supports advanced configurations such as ingress and egress traffic management, and overrides for MAC Duplication Detection actions when enabled in the associated BridgeDomain. + properties: + bridgeDomain: + description: Reference to a BridgeDomain or SimpleBridgeDomain. + type: string + description: + description: The description of the VLAN. + type: string + egress: + description: Manages actions on traffic at Egress. + properties: + filters: + description: List of Filter references to use at egress. + items: + type: string + type: array + qosPolicy: + description: List of QoS Egress policy references to use at egress. + items: + type: string + type: array + type: object + ingress: + description: Manages actions on traffic at Ingress. + properties: + filters: + description: List of Filter references to use at ingress. + items: + type: string + type: array + qosPolicy: + description: List of QoS Ingress policy references to use at ingress. + items: + type: string + type: array + type: object + interfaceSelector: + description: Interfaces to use for attachment to this VLAN based on the label selector. Selects Interfaces based on their associated labels. + items: + type: string + type: array + l2MTU: + description: L2 MTU specifies the maximum sized Ethernet frame that can be transmitted on the subinterface. If a frame exceeds this size it is discarded. If the l2-mtu of the subinterface exceeds the port-mtu of the associated interface, the subinterface will remain operationally down. + maximum: 9500 + minimum: 1450 + type: integer + macDuplicationDetectionAction: + description: If Mac Duplication Detection is enabled on the associated Bridge Domain, this property will override the MDD action set in the BridgeDomain. + enum: + - Blackhole + - OperDown + - StopLearning + - UseBridgeDomainAction + type: string + splitHorizonGroup: + description: Name of the Split Horizon Group to be used for this VLAN. All subinterfaces within this VLAN will be members of this Split Horizon Group. + type: string + uplink: + description: The Uplink between your access breakout switch and your leaf switch. + properties: + egress: + description: Manages actions on traffic at Egress of the Local enpoint of the Uplink. + properties: + filters: + description: List of Filter references to use at egress. + items: + type: string + type: array + qosPolicy: + description: List of QoS Egress policy references to use at egress. + items: + type: string + type: array + type: object + ingress: + description: Manages actions on traffic at Ingress of the Local enpoint of the Uplink. + properties: + filters: + description: List of Filter references to use at ingress. + items: + type: string + type: array + qosPolicy: + description: List of QoS Ingress policy references to use at ingress. + items: + type: string + type: array + type: object + uplinkSelector: + description: Selects TopoLinks which connect a leaf switch to a breakout switch. This is the uplink between your access breakout switch and your leaf switch. There can only be a single TopoLink between the access breakout switch and the leaf switch, if more than one TopoLink is present between two devices the transaction will fail. + items: + type: string + type: array + uplinkVLANID: + default: pool + description: The VLAN ID to be utilized to isolate traffic from the VLAN on the access breakout switch to the leaf switch on the selected uplink TopoLink. + type: string + uplinkVLANPool: + description: A VLAN from this pool will be utilized to isolate traffic from the VLAN on the access breakout switch to the leaf switch on the selected uplink TopoLink. + type: string + type: object + vlanID: + default: pool + description: Single value between 1-4094 support, ranges supported in the format x-y,x-y, or the special keyword null, any, untagged or pool for auto allocation. + type: string + vlanPool: + description: Reference to a VLAN pool to use for allocations. [default="vlan-pool"] + type: string + required: + - bridgeDomain + - interfaceSelector + type: object + status: + properties: + health: + description: Indicates the health score of the VNET. + type: integer + healthScoreReason: + description: Indicates the reason for the health score. + type: string + lastChange: + description: The time when the state of the resource last changed. + type: string + numSubInterfaces: + description: Total number of sub-interfaces configured by the VNET. + format: int32 + type: integer + numSubInterfacesOperDown: + description: Total number of sub-interfaces configured by the VNET which are oper-down. + format: int32 + type: integer + operationalState: + description: Operational state of the VNET. + type: string + subInterfaces: + description: List of members in this Interface. + items: + properties: + enabled: + description: The administrative status of the SubInterface. + type: boolean + interface: + description: Normalized interface name. + type: string + interfaceResource: + description: Eda interface resource. + type: string + lastChange: + description: Indicates when this SubInterface last changed state. + type: string + node: + description: Reference to Node object. + type: string + nodeInterface: + description: Node specific interface name. + type: string + operatingSystem: + description: Operating System of the Node. + type: string + operationalState: + description: Indicates the current operational state of the SubInterface. + type: string + subInterfaceIndex: + description: Index allocated to the subinterface on the associated interface for the given VLAN. + type: integer + vlanID: + description: vlan assigned to this subinterface. + type: string + required: + - interface + - interfaceResource + - node + - nodeInterface + type: object + type: array + type: object + type: object +served: true +storage: true +subresources: + status: {} diff --git a/static/resources/25.8.3/vlans.services.eda.nokia.com/v1alpha1.yaml b/static/resources/25.8.3/vlans.services.eda.nokia.com/v1alpha1.yaml new file mode 100644 index 0000000..6646d84 --- /dev/null +++ b/static/resources/25.8.3/vlans.services.eda.nokia.com/v1alpha1.yaml @@ -0,0 +1,225 @@ +additionalPrinterColumns: + - jsonPath: .spec.bridgeDomain + name: BridgeDomain + type: string + - jsonPath: .status.numSubInterfacesOperDown + name: OperDown SubIf + type: string + - jsonPath: .status.numSubInterfaces + name: Total SubIf + type: string + - jsonPath: .status.operationalState + name: OperationalState + type: string + - jsonPath: .status.lastChange + name: LastChange + type: string + - jsonPath: .metadata.creationTimestamp + name: Age + type: date +deprecated: true +deprecationWarning: This version is deprecated and will no longer be supported in the next version. +name: v1alpha1 +schema: + openAPIV3Schema: + description: VLAN is the Schema for the vlans API + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + description: The VLAN enables the configuration and management of VLAN and their association with BridgeDomains. This resource allows for specifying the associated BridgeDomain, selecting interfaces based on label selectors, and configuring VLAN IDs with options for auto-allocation from a VLAN pool. It also supports advanced configurations such as ingress and egress traffic management, and overrides for MAC Duplication Detection actions when enabled in the associated BridgeDomain. + properties: + bridgeDomain: + description: Reference to a BridgeDomain or SimpleBridgeDomain. + type: string + description: + description: The description of the VLAN. + type: string + egress: + description: Manages actions on traffic at Egress. + properties: + filters: + description: List of Filter references to use at egress. + items: + type: string + type: array + qosPolicy: + description: List of QoS Egress policy references to use at egress. + items: + type: string + type: array + type: object + ingress: + description: Manages actions on traffic at Ingress. + properties: + filters: + description: List of Filter references to use at ingress. + items: + type: string + type: array + qosPolicy: + description: List of QoS Ingress policy references to use at ingress. + items: + type: string + type: array + type: object + interfaceSelector: + description: Interfaces to use for attachment to this VLAN based on the label selector. Selects Interfaces based on their associated labels. + items: + type: string + type: array + l2MTU: + description: L2 MTU specifies the maximum sized Ethernet frame that can be transmitted on the subinterface. If a frame exceeds this size it is discarded. If the l2-mtu of the subinterface exceeds the port-mtu of the associated interface, the subinterface will remain operationally down. + maximum: 9500 + minimum: 1450 + type: integer + macDuplicationDetectionAction: + description: If Mac Duplication Detection is enabled on the associated Bridge Domain, this property will override the MDD action set in the BridgeDomain. + enum: + - Blackhole + - OperDown + - StopLearning + - UseBridgeDomainAction + type: string + splitHorizonGroup: + description: Name of the Split Horizon Group to be used for this VLAN. All subinterfaces within this VLAN will be members of this Split Horizon Group. + type: string + uplink: + description: The Uplink between your access breakout switch and your leaf switch. + properties: + egress: + description: Manages actions on traffic at Egress of the Local enpoint of the Uplink. + properties: + filters: + description: List of Filter references to use at egress. + items: + type: string + type: array + qosPolicy: + description: List of QoS Egress policy references to use at egress. + items: + type: string + type: array + type: object + ingress: + description: Manages actions on traffic at Ingress of the Local enpoint of the Uplink. + properties: + filters: + description: List of Filter references to use at ingress. + items: + type: string + type: array + qosPolicy: + description: List of QoS Ingress policy references to use at ingress. + items: + type: string + type: array + type: object + uplinkSelector: + description: Selects TopoLinks which connect a leaf switch to a breakout switch. This is the uplink between your access breakout switch and your leaf switch. There can only be a single TopoLink between the access breakout switch and the leaf switch, if more than one TopoLink is present between two devices the transaction will fail. + items: + type: string + type: array + uplinkVLANID: + default: pool + description: The VLAN ID to be utilized to isolate traffic from the VLAN on the access breakout switch to the leaf switch on the selected uplink TopoLink. + type: string + uplinkVLANPool: + description: A VLAN from this pool will be utilized to isolate traffic from the VLAN on the access breakout switch to the leaf switch on the selected uplink TopoLink. + type: string + type: object + vlanID: + default: pool + description: Single value between 1-4094 support, ranges supported in the format x-y,x-y, or the special keyword null, any, untagged or pool for auto allocation. + type: string + vlanPool: + description: Reference to a VLAN pool to use for allocations. [default="vlan-pool"] + type: string + required: + - bridgeDomain + - interfaceSelector + type: object + status: + properties: + health: + description: Indicates the health score of the VNET. + type: integer + healthScoreReason: + description: Indicates the reason for the health score. + type: string + lastChange: + description: The time when the state of the resource last changed. + type: string + numSubInterfaces: + description: Total number of sub-interfaces configured by the VNET. + format: int32 + type: integer + numSubInterfacesOperDown: + description: Total number of sub-interfaces configured by the VNET which are oper-down. + format: int32 + type: integer + operationalState: + description: Operational state of the VNET. + type: string + subInterfaces: + description: List of members in this Interface. + items: + properties: + enabled: + description: The administrative status of the SubInterface. + type: boolean + interface: + description: Normalized interface name. + type: string + interfaceResource: + description: Eda interface resource. + type: string + lastChange: + description: Indicates when this SubInterface last changed state. + type: string + node: + description: Reference to Node object. + type: string + nodeInterface: + description: Node specific interface name. + type: string + operatingSystem: + description: Operating System of the Node. + type: string + operationalState: + description: Indicates the current operational state of the SubInterface. + type: string + subInterfaceIndex: + description: Index allocated to the subinterface on the associated interface for the given VLAN. + type: integer + vlanID: + description: vlan assigned to this subinterface. + type: string + required: + - interface + - interfaceResource + - node + - nodeInterface + type: object + type: array + type: object + type: object +served: true +storage: false +subresources: + status: {} diff --git a/static/resources/25.8.3/vlanstates.services.eda.nokia.com/v1.yaml b/static/resources/25.8.3/vlanstates.services.eda.nokia.com/v1.yaml new file mode 100644 index 0000000..d82685d --- /dev/null +++ b/static/resources/25.8.3/vlanstates.services.eda.nokia.com/v1.yaml @@ -0,0 +1,78 @@ +name: v1 +schema: + openAPIV3Schema: + description: VLANState is the Schema for the vlanstates API + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + description: VLANStateSpec defines the desired state of VLANState + properties: + bridgeDomain: + description: Node BridgeDomain name + type: string + subInterfaces: + items: + properties: + interface: + description: Normalized interface name + type: string + interfaceResource: + description: Eda interface resource + type: string + node: + description: Reference to Node object + type: string + nodeInterface: + description: Node specific interface name + type: string + nodeSubInterface: + description: Node specific subinterface name + type: string + operatingSystem: + description: Operating System of the Node + type: string + subInterfaceIndex: + description: Index allocated to the subinterface on the associated interface for the given VLAN + type: integer + vlanID: + description: vlan assigned to this subinterface + type: string + required: + - interface + - interfaceResource + - node + - nodeInterface + type: object + type: array + vlanID: + description: Single value between 0-4094 support, ranges supported in the format x-y,x-y, or the special keyword any or untagged or pool for auto allocation + type: string + required: + - bridgeDomain + - subInterfaces + - vlanID + type: object + status: + description: VLANStateStatus defines the observed state of VLANState + type: object + type: object +served: true +storage: true +subresources: + status: {} diff --git a/static/resources/25.8.3/vlanstates.services.eda.nokia.com/v1alpha1.yaml b/static/resources/25.8.3/vlanstates.services.eda.nokia.com/v1alpha1.yaml new file mode 100644 index 0000000..90fa651 --- /dev/null +++ b/static/resources/25.8.3/vlanstates.services.eda.nokia.com/v1alpha1.yaml @@ -0,0 +1,80 @@ +deprecated: true +deprecationWarning: This version is deprecated and will no longer be supported in the next version. +name: v1alpha1 +schema: + openAPIV3Schema: + description: VLANState is the Schema for the vlanstates API + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + description: VLANStateSpec defines the desired state of VLANState + properties: + bridgeDomain: + description: Node BridgeDomain name + type: string + subInterfaces: + items: + properties: + interface: + description: Normalized interface name + type: string + interfaceResource: + description: Eda interface resource + type: string + node: + description: Reference to Node object + type: string + nodeInterface: + description: Node specific interface name + type: string + nodeSubInterface: + description: Node specific subinterface name + type: string + operatingSystem: + description: Operating System of the Node + type: string + subInterfaceIndex: + description: Index allocated to the subinterface on the associated interface for the given VLAN + type: integer + vlanID: + description: vlan assigned to this subinterface + type: string + required: + - interface + - interfaceResource + - node + - nodeInterface + type: object + type: array + vlanID: + description: Single value between 0-4094 support, ranges supported in the format x-y,x-y, or the special keyword any or untagged or pool for auto allocation + type: string + required: + - bridgeDomain + - subInterfaces + - vlanID + type: object + status: + description: VLANStateStatus defines the observed state of VLANState + type: object + type: object +served: true +storage: false +subresources: + status: {} diff --git a/static/resources/25.8.3/volumeoverlays.components.eda.nokia.com/v1.yaml b/static/resources/25.8.3/volumeoverlays.components.eda.nokia.com/v1.yaml new file mode 100644 index 0000000..d794973 --- /dev/null +++ b/static/resources/25.8.3/volumeoverlays.components.eda.nokia.com/v1.yaml @@ -0,0 +1,69 @@ +name: v1 +schema: + openAPIV3Schema: + description: VolumeOverlay is the Schema for volumeoverlays + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + description: VolumeOverlaySpec defines the desired state of VolumeOverlay + properties: + enabled: + description: Enable or disable the generation of the status of this overlay + type: boolean + topology: + description: Reference to the topology that this overlay is extending. + properties: + group: + description: The group of the application which published the topology this overlay is extending. + type: string + name: + description: The name of the resource which published the topology this overlay is extending. + type: string + version: + description: The version of the application which published the topology this overlay is extending. + type: string + required: + - group + - name + - version + type: object + uiDescription: + description: A description of the overlay to expose in the UI + type: string + uiDescriptionKey: + description: The translation key for the description of the overlay to expose in the UI + type: string + uiName: + description: The name of the overlay to expose in the UI + type: string + uiNameKey: + description: The translation key for the name of the overlay to expose in the UI + type: string + required: + - enabled + - topology + type: object + status: + description: VolumeOverlayStatus defines the observed state of VolumeOverlay + type: object + type: object +served: true +storage: true +subresources: + status: {} diff --git a/static/resources/25.8.3/waitforinputs.core.eda.nokia.com/v1.yaml b/static/resources/25.8.3/waitforinputs.core.eda.nokia.com/v1.yaml new file mode 100644 index 0000000..19dd660 --- /dev/null +++ b/static/resources/25.8.3/waitforinputs.core.eda.nokia.com/v1.yaml @@ -0,0 +1,42 @@ +name: v1 +schema: + openAPIV3Schema: + description: WaitForInput is the Schema for the waitforinputs API + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + description: WaitForInputSpec defines the desired state of WaitForInput + properties: + id: + type: integer + prompt: + description: Foo is an example field of WaitForInput. Edit waitforinput_types.go to remove/update + type: string + type: object + status: + description: WaitForInputStatus defines the observed state of WaitForInput + properties: + prompt: + type: boolean + type: object + type: object +served: true +storage: true +subresources: + status: {} diff --git a/static/resources/25.8.3/workflowdefinitions.core.eda.nokia.com/v1.yaml b/static/resources/25.8.3/workflowdefinitions.core.eda.nokia.com/v1.yaml new file mode 100644 index 0000000..9b9eefd --- /dev/null +++ b/static/resources/25.8.3/workflowdefinitions.core.eda.nokia.com/v1.yaml @@ -0,0 +1,78 @@ +additionalPrinterColumns: + - jsonPath: .spec.image + name: Image + type: string + - jsonPath: .metadata.creationTimestamp + name: Age + type: date +name: v1 +schema: + openAPIV3Schema: + description: WorkflowDefinition is the Schema for the workflowdefinitions API + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + description: WorkflowDefinitionSpec defines the desired state of FlowDefinition + properties: + flowDefinitionResource: + description: the resource type to be used for this flow, can only be set if Schema is not set + properties: + group: + type: string + kind: + type: string + version: + type: string + required: + - kind + - version + type: object + flowDefinitionSchema: + description: the schema for the flow, can only be set if Resource is not set + properties: + jsonSchemaSpec: + description: A string containing the JSON schema the workflow accepts as input. + type: string + jsonSchemaStatus: + description: A string containing the JSON schema the workflow will populate as output. + type: string + type: object + image: + description: Container image containing the flow. For example "ghcr.io/nokia-eda/apps/operatingsystem:v1.0.0". + type: string + imagePullSecrets: + description: Secrets to use to pull the image for this workflow. + items: + type: string + type: array + namespaced: + default: true + description: If set, resources of this CRD are namespace scoped + type: boolean + required: + - image + type: object + status: + description: WorkflowDefinitionStatus defines the observed state of FlowDefinition + type: object + type: object +served: true +storage: true +subresources: + status: {} diff --git a/static/resources/25.8.3/workflows.core.eda.nokia.com/v1.yaml b/static/resources/25.8.3/workflows.core.eda.nokia.com/v1.yaml new file mode 100644 index 0000000..39e50ad --- /dev/null +++ b/static/resources/25.8.3/workflows.core.eda.nokia.com/v1.yaml @@ -0,0 +1,53 @@ +additionalPrinterColumns: + - jsonPath: .spec.type + name: Type + type: string + - jsonPath: .metadata.creationTimestamp + name: Age + type: date +name: v1 +schema: + openAPIV3Schema: + description: Workflow is the Schema for the workflows API + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + description: WorkflowSpec defines the desired state of Flow + properties: + input: + description: Input to this flow, adhering to the JSON schema defined in the referenced WorkflowDefinition. + x-kubernetes-preserve-unknown-fields: true + type: + description: Select the WorkflowDefinition to execute. + type: string + required: + - type + type: object + status: + description: WorkflowStatus defines the observed state of Flow + properties: + output: + description: Output from this flow, adhering to the JSON schema defined in the referenced FlowDefinition + x-kubernetes-preserve-unknown-fields: true + type: object + type: object +served: true +storage: true +subresources: + status: {} diff --git a/static/resources/clusterdestinations.remotewrite.eda.nokia.com/v1alpha1.yaml b/static/resources/clusterdestinations.remotewrite.eda.nokia.com/v1alpha1.yaml deleted file mode 100644 index 693bb85..0000000 --- a/static/resources/clusterdestinations.remotewrite.eda.nokia.com/v1alpha1.yaml +++ /dev/null @@ -1,145 +0,0 @@ -name: v1alpha1 -schema: - openAPIV3Schema: - description: ClusterDestination is the Schema for the clusterdestinations API - properties: - apiVersion: - description: |- - APIVersion defines the versioned schema of this representation of an object. - Servers should convert recognized schemas to the latest internal value, and - may reject unrecognized values. - More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources - type: string - kind: - description: |- - Kind is a string value representing the REST resource this object represents. - Servers may infer this from the endpoint the client submits requests to. - Cannot be updated. - In CamelCase. - More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds - type: string - metadata: - type: object - spec: - description: ClusterDestinationSpec defines the desired state of ClusterDestination - properties: - authentication: - description: Authentication details (username and password) for accessing the server. - properties: - password: - description: Client password - type: string - username: - description: Client username - type: string - type: object - authorization: - description: Authorization token for accessing the server. - properties: - credentials: - description: Credentials such as a token value - type: string - type: - default: Bearer - description: Authorization type - type: string - type: object - metadata: - description: Configuration related to sending metadata to the remote server. - properties: - include: - description: If enabled, includes metadata in the write requests. - type: boolean - interval: - default: 60s - description: Interval at which metadata is sent to the remote server. - type: string - maxEntriesPerWrite: - default: 500 - description: Maximum number of metadata entries to be sent per Write request. - format: int64 - type: integer - type: object - tls: - description: TLS configuration for secure connection to the remote server. - properties: - caFile: - description: Path to the Certificate Authority file for verifying the server certificate. - type: string - certFile: - description: Path to the client certificate file. - type: string - keyFile: - description: Path to the client key file. - type: string - skipVerify: - description: Skip verifying the server certificate - type: boolean - type: object - url: - description: Remote server address for sending metrics. - type: string - writeOptions: - description: 'Remote write options such as: Flush interval, Retries, etc.' - properties: - bufferSize: - default: 1000 - description: The buffer size threshold that initiates sending the accumulated metrics to the remote destination once reached. - format: int64 - type: integer - flushInterval: - default: 5s - description: |- - Interval at which metrics stored in the local buffer are sent to the remote server. - Metrics are sent regardless of the buffer size threshold. - type: string - headers: - description: Custom HTTP headers to be sent along with each remote write request. - items: - properties: - name: - description: Header name - type: string - value: - description: Header value - type: string - type: object - type: array - maxRetries: - default: 3 - description: The total number of times to retry sending a message - format: int64 - type: integer - maxTimeSeriesPerWrite: - default: 500 - description: Maximum number of metrics per write request. - format: int64 - type: integer - timeout: - default: 10s - description: Write client timeout. - type: string - type: object - required: - - url - type: object - status: - description: ClusterDestinationStatus defines the observed state of ClusterDestination - properties: - error: - description: Last encountered error for this destination. - type: string - lastChecked: - description: Last checked time for connectivity status - format: date-time - type: string - reachable: - default: false - description: Indicates if the destination is reachable. - type: boolean - type: object - type: object -served: true -storage: true -subresources: - status: {} diff --git a/static/resources/clusterexports.influxdb.eda.nokia.com/v1alpha1.yaml b/static/resources/clusterexports.influxdb.eda.nokia.com/v1alpha1.yaml deleted file mode 100644 index 46a3f6b..0000000 --- a/static/resources/clusterexports.influxdb.eda.nokia.com/v1alpha1.yaml +++ /dev/null @@ -1,175 +0,0 @@ -name: v1alpha1 -schema: - openAPIV3Schema: - description: ClusterExport is the Schema for the clusterexports API - properties: - apiVersion: - description: |- - APIVersion defines the versioned schema of this representation of an object. - Servers should convert recognized schemas to the latest internal value, and - may reject unrecognized values. - More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources - type: string - kind: - description: |- - Kind is a string value representing the REST resource this object represents. - Servers may infer this from the endpoint the client submits requests to. - Cannot be updated. - In CamelCase. - More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds - type: string - metadata: - type: object - spec: - description: ClusterExportSpec defines the desired state of ClusterExport - properties: - description: - description: A short description of the export rules. - type: string - enabled: - default: true - description: Specifies if the Export rules are enabled or not. - type: boolean - exports: - description: List of export rules defining which EDB tables are exported to InfluxDB. - properties: - alarms: - description: Defines Alarms as export source - properties: - exclude: - description: List of Alarm types to exclude. - items: - type: string - type: array - include: - description: List of Alarm types to include. Set it to '*' to include all alarms. - items: - type: string - type: array - namespaces: - description: List of namespaces to include alarms from. Omit to include all namespaces. - items: - type: string - type: array - type: object - query: - description: Defines a custom query as export source - items: - properties: - customization: - description: InfluxDB data point manipulation. - properties: - fields: - description: Field names customization - items: - properties: - match: - description: A regular expression to be matched against the measurement name - type: string - replacement: - description: A regular expression replacement to be applied to the measurement name - type: string - type: object - type: array - measurement: - description: Measurement name renaming regex and replacement - properties: - match: - description: A regular expression to be matched against the measurement name - type: string - replacement: - description: A regular expression replacement to be applied to the measurement name - type: string - type: object - tags: - description: Tags customization - items: - properties: - delimiter: - default: = - description: Delimiter to join the tag name and value - type: string - match: - description: A regular expression to be matched against tag_name + delimiter + tag_value - type: string - replacement: - description: A regular expression replacement to be applied to tag_name + delimiter + tag_value - type: string - type: object - type: array - type: object - fields: - description: |- - Fields to export from the EDB table set in Path. - Exports all fields if not specified. - items: - type: string - type: array - mode: - default: on-change - description: Export mode. - enum: - - on-change - - periodic - - both - type: string - path: - description: |- - The EDB path to export, in the format '.node.srl.interface'. - Should NOT include the namespace path element. - type: string - period: - description: Export period. Applicable when mode is set to 'periodic' or 'both'. - type: string - where: - description: A where clause to use for the query, e.g. 'oper-state = down'. You can omit enclosing parentheses. - type: string - type: object - type: array - resource: - description: Defines EDA resources as export source - items: - properties: - group: - description: The resource group. - type: string - kind: - description: The resource kind. - type: string - name: - description: The resource name to export. Omit to export all resources based on their GVK - type: string - namespaces: - description: List of namespaces to include resources from. Omit to include all namespaces. - items: - type: string - type: array - version: - description: The resource version. - type: string - type: object - type: array - type: object - servers: - description: List of influxDB server destination where EDB tables must be written. - items: - properties: - bucket: - description: InfluxDB Bucket Name. - type: string - name: - description: InfluxDB server Name. - type: string - type: object - type: array - required: - - exports - type: object - status: - description: ClusterExportStatus defines the observed state of ClusterExport - type: object - type: object -served: true -storage: true -subresources: - status: {} diff --git a/static/resources/clusterexports.nats.eda.nokia.com/v1alpha1.yaml b/static/resources/clusterexports.nats.eda.nokia.com/v1alpha1.yaml deleted file mode 100644 index 3e661f2..0000000 --- a/static/resources/clusterexports.nats.eda.nokia.com/v1alpha1.yaml +++ /dev/null @@ -1,123 +0,0 @@ -name: v1alpha1 -schema: - openAPIV3Schema: - description: ClusterExport is the Schema for the clusterexports API - properties: - apiVersion: - description: |- - APIVersion defines the versioned schema of this representation of an object. - Servers should convert recognized schemas to the latest internal value, and - may reject unrecognized values. - More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources - type: string - kind: - description: |- - Kind is a string value representing the REST resource this object represents. - Servers may infer this from the endpoint the client submits requests to. - Cannot be updated. - In CamelCase. - More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds - type: string - metadata: - type: object - spec: - description: ClusterExportSpec defines the desired state of ClusterExport - properties: - description: - description: A short description of the export rules. - type: string - destinations: - description: List of NATS cluster destination where metrics must be exported. - items: - properties: - name: - description: Cluster Publisher name. - type: string - subject: - description: NATS or Jetstream subject. - type: string - subjectFromJsPath: - description: If true, the subject name is based on the received JsPath. - type: boolean - subjectPrefix: - description: A prefix to be appended to the subject in case it's based on the received JsPath. - type: string - required: - - name - type: object - type: array - enabled: - default: true - description: Specifies if the Export rules are enabled or not. - type: boolean - exports: - description: Define data sources to be exported to a NATS cluster. - properties: - alarms: - description: Defines Alarms as export source - properties: - exclude: - description: List of Alarm types to exclude. - items: - type: string - type: array - include: - description: List of Alarm types to include. Set it to '*' for all. - items: - type: string - type: array - namespaces: - description: List of namespaces to export alarms from. - items: - type: string - type: array - type: object - query: - description: Defines a custom query as export source - items: - properties: - fields: - description: |- - Fields to export from the EDB table set in `spec.query.path`. - Exports all fields if not specified. - items: - type: string - type: array - includeTimestamps: - description: Include the export timestamp in the published message. - type: boolean - mode: - default: on-change - description: Export mode. - enum: - - on-change - - periodic - - both - type: string - path: - description: |- - The EDB path to export, in the format '.node.srl.interface'. - Should NOT include the namespace element. - type: string - period: - description: Export period in seconds. Applicable if mode is set to 'periodic' or 'both'. - format: int64 - type: integer - where: - description: A where clause to use for the query, e.g. 'oper-state = down'. You can omit enclosing parentheses. - type: string - type: object - type: array - type: object - required: - - destinations - - exports - type: object - status: - description: ClusterExportStatus defines the observed state of ClusterExport. - type: object - type: object -served: true -storage: true -subresources: - status: {} diff --git a/static/resources/clusterexports.remotewrite.eda.nokia.com/v1alpha1.yaml b/static/resources/clusterexports.remotewrite.eda.nokia.com/v1alpha1.yaml deleted file mode 100644 index bd00d47..0000000 --- a/static/resources/clusterexports.remotewrite.eda.nokia.com/v1alpha1.yaml +++ /dev/null @@ -1,154 +0,0 @@ -name: v1alpha1 -schema: - openAPIV3Schema: - description: ClusterExport is the Schema for the clusterexports API - properties: - apiVersion: - description: |- - APIVersion defines the versioned schema of this representation of an object. - Servers should convert recognized schemas to the latest internal value, and - may reject unrecognized values. - More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources - type: string - kind: - description: |- - Kind is a string value representing the REST resource this object represents. - Servers may infer this from the endpoint the client submits requests to. - Cannot be updated. - In CamelCase. - More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds - type: string - metadata: - type: object - spec: - description: ClusterExportSpec defines the desired state of ClusterExport - properties: - destinations: - description: List of remote destination names where metrics will be written. - items: - type: string - type: array - exports: - description: |- - List of metrics and their sources to be written to a remote server. - Metrics will be sent using the Prometheus remote write protocol. - items: - properties: - fields: - description: Optional set of fields to be exposed by this export. - items: - type: string - type: array - interval: - description: Period defines the frequency at which the metric is polled. - type: string - labels: - description: Allows adding static or dynamic labels to the metrics. - properties: - dynamic: - description: List of dynamic labels to add to the metrics, based on a state DB path. - items: - properties: - field: - description: The field name to add as a label - type: string - path: - description: The state DB path to export, in the format '.node.srl.interface' - type: string - regex: - description: A regular expression to be applied to the field value. - type: string - replacement: - description: A regular expression replacement to be applied to the field value. - type: string - type: object - type: array - static: - description: List of static labels to add to the metrics. - items: - properties: - name: - description: Label name. - pattern: '[a-zA-Z_][a-zA-Z0-9_]*' - type: string - value: - description: Label value. - type: string - type: object - type: array - type: object - mappings: - description: Rules for mapping metric values (e.g., DOWN -> 1, UP -> 2). - items: - properties: - destination: - description: The new value for the mapped source (must convert to float64). - pattern: ^-?\d+(\.\d+)?([eE][+-]?\d+)?$ - type: string - source: - description: The value to be mapped (supports regex with capture groups). - type: string - type: object - type: array - metricName: - description: Regex and replacement for renaming the metric name. - properties: - regex: - description: Regular expression for the metric name transformation. - type: string - replacement: - description: Replacement string for the transformed metric name. - type: string - type: object - mode: - description: 'Mode defines how the metric is collected: periodic, on-change, or periodic-on-change.' - type: string - path: - description: The state DB path to export, in the format '.namespace.node.srl.interface' - type: string - resource: - description: |- - A Custom resource to be used as a source for the metric. - It will generate a metric with the CR labels and a value of 1. - properties: - group: - description: The CR group such as `core.eda.nokia.com`. - type: string - kind: - description: The CR kind such as `toponode`. - type: string - labels: - description: |- - List of labels to include with the metric. - Include all if not set. - items: - type: string - type: array - name: - description: |- - CR name to be queried. - Get all of not set. - type: string - namespace: - description: The CR namespace, it defaults to all if not specified. - type: string - version: - description: The CR version such as `v1` or `v1alpha1`. - type: string - type: object - where: - description: Condition for filtering the metric (e.g., 'oper-state = down'). - type: string - type: object - type: array - required: - - exports - type: object - status: - description: ClusterExportStatus defines the observed state of ClusterExport - type: object - type: object -served: true -storage: true -subresources: - status: {} diff --git a/static/resources/clustermetricexports.otlp.eda.nokia.com/v1alpha1.yaml b/static/resources/clustermetricexports.otlp.eda.nokia.com/v1alpha1.yaml deleted file mode 100644 index ba07225..0000000 --- a/static/resources/clustermetricexports.otlp.eda.nokia.com/v1alpha1.yaml +++ /dev/null @@ -1,173 +0,0 @@ -name: v1alpha1 -schema: - openAPIV3Schema: - description: ClusterMetricExport is the Schema for the clustermetricexports API - properties: - apiVersion: - description: |- - APIVersion defines the versioned schema of this representation of an object. - Servers should convert recognized schemas to the latest internal value, and - may reject unrecognized values. - More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources - type: string - kind: - description: |- - Kind is a string value representing the REST resource this object represents. - Servers may infer this from the endpoint the client submits requests to. - Cannot be updated. - In CamelCase. - More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds - type: string - metadata: - type: object - spec: - description: ClusterMetricExportSpec defines the desired state of ClusterMetricExport - properties: - exports: - description: |- - List of metrics and their sources to be written to a remote server. - Metrics will be sent using the Prometheus remote write protocol. - items: - properties: - attributes: - description: Allows adding static or dynamic attributes to the metrics. - properties: - dynamic: - description: List of dynamic attributes to add to the metrics, based on a state DB path. - items: - properties: - field: - description: The field name to add as a attribute - type: string - path: - description: The state DB path to export, in the format '.node.srl.interface' - type: string - regex: - description: A regular expression to be applied to the field value. - type: string - replacement: - description: A regular expression replacement to be applied to the field value. - type: string - type: object - type: array - static: - description: List of static attributes to add to the metrics. - items: - properties: - metricAttribute: - description: Metric Attribute - type: boolean - name: - description: Attribute name. - pattern: '[a-zA-Z_][a-zA-Z0-9_]*' - type: string - value: - description: Attribute value. - type: string - type: object - type: array - type: object - fields: - description: Optional set of fields to be exposed by this export. - items: - properties: - name: - description: The name of the field. - type: string - type: - default: Gauge - description: The type of the field. - enum: - - Gauge - - Sum - type: string - type: object - type: array - interval: - description: Period defines the frequency at which the metric is polled. - type: string - mappings: - description: Rules for mapping metric values (e.g., DOWN -> 1, UP -> 2). - items: - properties: - destination: - description: The new value for the mapped source (must convert to float64). - pattern: ^-?\d+(\.\d+)?([eE][+-]?\d+)?$ - type: string - source: - description: The value to be mapped (supports regex with capture groups). - type: string - type: object - type: array - metricName: - description: Regex and replacement for renaming the metric name. - properties: - regex: - description: Regular expression for the metric name transformation. - type: string - replacement: - description: Replacement string for the transformed metric name. - type: string - type: object - mode: - default: on-change - description: 'Mode defines how the metric is collected: periodic, on-change, or periodic-on-change.' - enum: - - on-change - - periodic - - periodic-on-change - type: string - path: - description: The state DB path to export, in the format '.node.srl.interface' - type: string - resource: - description: |- - A Custom resource to be used as a source for the metric. - It will generate a metric with the CR attributes and a value of 1. - properties: - attributes: - description: |- - List of attributes to include with the metric. - Include all if not set. - items: - type: string - type: array - group: - description: The CR group such as `core.eda.nokia.com`. - type: string - kind: - description: The CR kind such as `toponode`. - type: string - name: - description: |- - CR name to be queried. - Get all of not set. - type: string - namespace: - description: The CR namespace, it defaults to all if not specified. - type: string - version: - description: The CR version such as `v1` or `v1alpha1`. - type: string - type: object - where: - description: Condition for filtering the metric (e.g., 'oper-state = down'). - type: string - type: object - type: array - receivers: - description: List of remote destination names where metrics will be written. - items: - type: string - type: array - required: - - exports - type: object - status: - description: ClusterMetricExportStatus defines the observed state of ClusterMetricExport - type: object - type: object -served: true -storage: true -subresources: - status: {} diff --git a/static/resources/clusternotifiers.notifiers.eda.nokia.com/v1.yaml b/static/resources/clusternotifiers.notifiers.eda.nokia.com/v1.yaml deleted file mode 100644 index b006f34..0000000 --- a/static/resources/clusternotifiers.notifiers.eda.nokia.com/v1.yaml +++ /dev/null @@ -1,108 +0,0 @@ -name: v1 -schema: - openAPIV3Schema: - description: ClusterNotifier is the Schema for the clusternotifiers API - properties: - apiVersion: - description: |- - APIVersion defines the versioned schema of this representation of an object. - Servers should convert recognized schemas to the latest internal value, and - may reject unrecognized values. - More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources - type: string - kind: - description: |- - Kind is a string value representing the REST resource this object represents. - Servers may infer this from the endpoint the client submits requests to. - Cannot be updated. - In CamelCase. - More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds - type: string - metadata: - type: object - spec: - description: ClusterNotifierSpec defines the desired state of ClusterNotifier - properties: - description: - description: A simple user provided description of this Notifier - type: string - enabled: - default: true - description: Enable or disable this Notifier - type: boolean - providers: - description: A list of references to Providers to send to for notifications matching any source in this Notifier - items: - type: string - type: array - sources: - description: Set the notifier sources - properties: - alarms: - description: Include alarm sources in this notifier - properties: - exclude: - description: |- - A list of alarm excludes for this Notifier, matching the 'kind' field within alarms. - If a source matches both the 'sources' and 'excludes' lists, it will be excluded. - For example, 'InterfaceMemberDown'. - items: - type: string - type: array - include: - description: |- - A list of alarms that this Notifier will listen to, matching the 'kind' field within alarms. - Including all alarms is indicated using the '*' wildcard. - For example, 'InterfaceDown'. - items: - type: string - type: array - namespaces: - description: |- - Namespaces to consider when selecting alarms for this Notifier. - Alarms from these namespaces will be either included or excluded based on the other filters. - items: - type: string - type: array - type: object - query: - description: Include a query source in this notifier - properties: - color: - description: Sets the color of notifications generated from this query. Valid values are web color names, e.g. 'red', 'green', 'blue', 'yellow', 'purple', 'gray', etc. - type: string - fields: - description: |- - Fields to include in the query results, which can then be used in the template, - e.g. '.node.name' or '.node.srl.interface.name"'. - items: - type: string - type: array - table: - description: The table to use for the query, e.g. '.node.srl.interface' - type: string - template: - description: |- - A template to use when sending notifications for this query. The template can use the fields from the query results. - e.g. 'Interface {{ index . "interface.name" }} is down on node {{ index . "node.name" }}'. - type: string - title: - description: The title to use when presenting results for this query, e.g. 'InterfaceDown' - type: string - where: - description: A where clause to use for the query, e.g. 'oper-state = down'. You can omit enclosing parentheses. - type: string - type: object - type: object - required: - - providers - - sources - type: object - status: - description: ClusterNotifierStatus defines the observed state of ClusterNotifier - type: object - type: object -served: true -storage: true -subresources: - status: {} diff --git a/static/resources/clusterpagers.pagers.eda.nokia.com/v1alpha1.yaml b/static/resources/clusterpagers.pagers.eda.nokia.com/v1alpha1.yaml deleted file mode 100644 index b8aea70..0000000 --- a/static/resources/clusterpagers.pagers.eda.nokia.com/v1alpha1.yaml +++ /dev/null @@ -1,133 +0,0 @@ -name: v1alpha1 -schema: - openAPIV3Schema: - description: ClusterPager is the Schema for the clusterpagers API - properties: - apiVersion: - description: |- - APIVersion defines the versioned schema of this representation of an object. - Servers should convert recognized schemas to the latest internal value, and - may reject unrecognized values. - More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources - type: string - kind: - description: |- - Kind is a string value representing the REST resource this object represents. - Servers may infer this from the endpoint the client submits requests to. - Cannot be updated. - In CamelCase. - More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds - type: string - metadata: - type: object - spec: - description: ClusterPagerSpec defines the desired state of ClusterPager - properties: - description: - description: The pager description - type: string - routingKeySecret: - description: |- - A reference to the Secret holding the Pager Duty routing key to use when raising events from this pager. - The routing key must be base64 encoded and set under data.key. - The secret reference follows the format `$namespace/$secretName`, if the namespace is omitted, the pager namespace is used. - type: string - sources: - description: Set the Pager sources - properties: - alarms: - description: Include alarm sources in this pager - properties: - autoResolve: - description: If true this app will automatically change the event status from triggered to resolved when the alarm is cleared. - type: boolean - exclude: - description: |- - A list of alarms that this Pager will ignore, matching the 'type' field within alarms. - If a source matches both the 'includes' and 'excludes' lists, it will be excluded. - For example, 'InterfaceMemberDown'. - items: - type: string - type: array - include: - description: |- - A list of alarms that this Pager will listen to, matching the 'type' field within alarms. - For example, 'InterfaceDown'. - items: - type: string - type: array - namespaces: - description: |- - Namespaces to consider when selecting alarms for this Pager. - Alarms from these namespaces will be either included or excluded based on the other filters. - items: - type: string - type: array - type: object - query: - description: Include a query source in this pager - properties: - autoResolve: - description: If true this app will automatically change the event status from triggered to resolved when the object is deleted. - type: boolean - class: - description: |- - A template to use as class when sending the event to Pager Duty. - The template can use the fields from the subscription results. - type: string - component: - description: |- - A template to use as component when sending the event to Pager Duty. - The template can use the fields from the subscription results. - type: string - fields: - description: |- - Fields to include in the subscribe results, which can then be used in the template, - e.g. '.node.name' or '.node.srl.interface.name"'. - items: - type: string - type: array - group: - description: |- - A template to use as group when sending the event to Pager Duty. - The template can use the fields from the subscription results. - type: string - includeDetails: - description: If true the query response is included in the generated event 'custom_details' field - type: boolean - severity: - description: |- - A template to use as severity when sending the event to Pager Duty. - The template can use the fields from the subscription results. - Must be one of critical , error , warning or info. - type: string - source: - description: |- - A template to use as source when sending the event to Pager Duty. - The template can use the fields from the subscription results. - type: string - summary: - description: |- - A template to use as summary when sending the event to Pager Duty. - The template can use the fields from the subscription results. - e.g. 'Interface {{.node.srl.interface.name}} is down on node {{.node.name}}'. - type: string - table: - description: EDB table to subscribe to. e.g. '.namespace.node.srl.interface' - type: string - where: - description: 'A where clause to use for the subscribe request, e.g: ''oper-state = down''. You can omit enclosing parentheses.' - type: string - type: object - type: object - required: - - sources - type: object - status: - description: ClusterPagerStatus defines the observed state of ClusterPager - type: object - type: object -served: true -storage: true -subresources: - status: {} diff --git a/static/resources/clusterpublishers.nats.eda.nokia.com/v1alpha1.yaml b/static/resources/clusterpublishers.nats.eda.nokia.com/v1alpha1.yaml deleted file mode 100644 index 6984769..0000000 --- a/static/resources/clusterpublishers.nats.eda.nokia.com/v1alpha1.yaml +++ /dev/null @@ -1,92 +0,0 @@ -name: v1alpha1 -schema: - openAPIV3Schema: - description: ClusterPublisher is the Schema for the clusterpublishers API - properties: - apiVersion: - description: |- - APIVersion defines the versioned schema of this representation of an object. - Servers should convert recognized schemas to the latest internal value, and - may reject unrecognized values. - More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources - type: string - kind: - description: |- - Kind is a string value representing the REST resource this object represents. - Servers may infer this from the endpoint the client submits requests to. - Cannot be updated. - In CamelCase. - More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds - type: string - metadata: - type: object - spec: - description: ClusterPublisherSpec defines the desired state of ClusterPublisher - properties: - address: - description: Comma-separated NATS or Jetstream cluster addresses - type: string - clientName: - default: eda-nats-client - description: NATS client name. - type: string - credentialsSecretName: - description: NATS Credentials. A secret name with a 'username' and 'password' keys. - type: string - maxPendingAcks: - default: 4000 - description: The maximum outstanding async publishes that can be inflight at one time - minimum: 1 - type: integer - maxWait: - default: 5 - description: The maximum time (in seconds) a sync publisher waits for an acknowledgment. - minimum: 1 - type: integer - tls: - description: NATS client TLS configuration. - properties: - caFile: - description: Path to a certificate authority file. - type: string - certFile: - description: The client certificate file location. - type: string - keyFile: - description: The client private key location. - type: string - skipVerify: - description: If true the client will not verify the server's certificate. - type: boolean - type: object - type: - default: NATS - description: 'The NATS cluster type: NATS or Jetstream' - enum: - - NATS - - Jetstream - type: string - required: - - address - - clientName - - type - type: object - status: - description: ClusterPublisherStatus defines the observed state of ClusterPublisher. - properties: - connected: - description: Specifies if the client is connected to the NATS cluster - type: boolean - error: - description: Error value if the client is not connected - type: string - lastChecked: - description: Last time the connection was checked - format: date-time - type: string - type: object - type: object -served: true -storage: true -subresources: - status: {} diff --git a/static/resources/clusterreceivers.otlp.eda.nokia.com/v1alpha1.yaml b/static/resources/clusterreceivers.otlp.eda.nokia.com/v1alpha1.yaml deleted file mode 100644 index ed63276..0000000 --- a/static/resources/clusterreceivers.otlp.eda.nokia.com/v1alpha1.yaml +++ /dev/null @@ -1,151 +0,0 @@ -name: v1alpha1 -schema: - openAPIV3Schema: - description: ClusterReceiver is the Schema for the clusterreceivers API - properties: - apiVersion: - description: |- - APIVersion defines the versioned schema of this representation of an object. - Servers should convert recognized schemas to the latest internal value, and - may reject unrecognized values. - More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources - type: string - kind: - description: |- - Kind is a string value representing the REST resource this object represents. - Servers may infer this from the endpoint the client submits requests to. - Cannot be updated. - In CamelCase. - More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds - type: string - metadata: - type: object - spec: - description: ClusterReceiverSpec defines the desired state of ClusterReceiver - properties: - authorization: - description: Authorization token for accessing the server. - properties: - credentials: - description: Credentials such as a token value - type: string - type: - default: Bearer - description: Authorization type - type: string - type: object - endpoint: - description: Receiver endpoint. - type: string - protocol: - default: http - description: Export client protocol. Once of `http` or `grpc`. - enum: - - http - - grpc - type: string - tls: - description: TLS configuration for secure connection to the remote server. - properties: - fromFiles: - description: Certificates files. - properties: - caFile: - description: Path to a certificate authority file. - type: string - certFile: - description: The client certificate file location. - type: string - keyFile: - description: The client private key location. - type: string - skipVerify: - description: If true the client will not verify the server's certificate. - type: boolean - type: object - fromSecret: - description: |- - Secret containing a `tls.crt`, a `tls.key` and a `ca.crt` keys. - Both `tls.crt` and `tls.key` must be present. - If `ca.crt` is not present and `.trustBundle` is not set - the remote server certificate is not verified. - type: string - trustBundle: - description: |- - ConfigMap containing a set of trust bundles (key `trust-bundle.pem`) used to - verify the remote server certificates. - type: string - type: object - writeOptions: - description: 'Remote write options such as: Flush interval, Retries, etc.' - properties: - bufferSize: - default: 1000 - description: The buffer size threshold that initiates sending the accumulated metrics to the receiver. - format: int64 - type: integer - compression: - description: Compression algorithm. Only gzip supported. - enum: - - gzip - type: string - flushInterval: - default: 5s - description: |- - Interval at which metrics stored in the local buffer are sent to the receiver. - Metrics are sent regardless of the buffer size threshold. - type: string - headers: - description: Custom HTTP headers to be sent along with each remote write request. - items: - properties: - name: - description: Header name - type: string - value: - description: Header value - type: string - type: object - type: array - maxMetricsPerExport: - default: 500 - description: Maximum number of metrics per export request. - format: int64 - type: integer - retries: - description: Retries options - properties: - initialInterval: - type: string - maxElapsedTime: - type: string - maxInterval: - type: string - type: object - timeout: - description: Export timeout. - type: string - type: object - required: - - endpoint - type: object - status: - description: ClusterReceiverStatus defines the observed state of ClusterReceiver - properties: - error: - description: Last encountered error for this receiver - type: string - lastChecked: - description: Last checked time for connectivity status - format: date-time - type: string - reachable: - default: false - description: Specifies if the receiver is reachable - type: boolean - type: object - type: object -served: true -storage: true -subresources: - status: {} diff --git a/static/resources/clusterservers.influxdb.eda.nokia.com/v1alpha1.yaml b/static/resources/clusterservers.influxdb.eda.nokia.com/v1alpha1.yaml deleted file mode 100644 index 76b651d..0000000 --- a/static/resources/clusterservers.influxdb.eda.nokia.com/v1alpha1.yaml +++ /dev/null @@ -1,106 +0,0 @@ -name: v1alpha1 -schema: - openAPIV3Schema: - description: ClusterServer is the Schema for the clusterservers API - properties: - apiVersion: - description: |- - APIVersion defines the versioned schema of this representation of an object. - Servers should convert recognized schemas to the latest internal value, and - may reject unrecognized values. - More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources - type: string - kind: - description: |- - Kind is a string value representing the REST resource this object represents. - Servers may infer this from the endpoint the client submits requests to. - Cannot be updated. - In CamelCase. - More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds - type: string - metadata: - type: object - spec: - description: ClusterServerSpec defines the desired state of ClusterServer - properties: - batchSize: - default: 100 - description: Sets number of points sent in single request. - type: integer - credentialsSecret: - description: |- - Secret containing InfluxDB credentials. - the secret must include a username and password keys or a token key. - type: string - flushTimer: - default: 10s - description: Sets the write buffer flush timer. - type: string - org: - description: InfluxDB Organization - type: string - timestampPrecision: - default: milliseconds - description: Sets the timestamp precision to use in writes for timestamp. - enum: - - seconds - - milliseconds - - microseconds - - nanoseconds - type: string - tls: - description: Enable TLS. - properties: - fromFiles: - description: Certificates files. - properties: - caFile: - description: Path to a certificate authority file. - type: string - certFile: - description: The client certificate file location. - type: string - keyFile: - description: The client private key location. - type: string - skipVerify: - description: If true the client will not verify the server's certificate. - type: boolean - type: object - fromSecret: - description: |- - Secret containing a `tls.crt`, a `tls.key` and a `ca.crt` keys. - Both `tls.crt` and `tls.key` must be present. If `ca.crt` is not present - the remote server certificate is not verified. - properties: - name: - description: Secret name containing a ca.crt, a tls.crt and a tls.key keys. - type: string - type: object - type: object - url: - description: InfluxDB server URL - type: string - useGzip: - description: When true, the exporter uses GZIP compression in write requests. - type: boolean - type: object - status: - description: ClusterServerStatus defines the observed state of ClusterServer - properties: - connected: - description: Specifies if the client is connected to the InfluxDB server - type: boolean - error: - description: Error value if the client is not connected - type: string - lastChecked: - description: Last time the connection was checked - format: date-time - type: string - type: object - type: object -served: true -storage: true -subresources: - status: {} diff --git a/static/resources/connectaudits.connect.eda.nokia.com/v1.yaml b/static/resources/connectaudits.connect.eda.nokia.com/v1.yaml deleted file mode 100644 index 8fde924..0000000 --- a/static/resources/connectaudits.connect.eda.nokia.com/v1.yaml +++ /dev/null @@ -1,139 +0,0 @@ -name: v1 -schema: - openAPIV3Schema: - description: ConnectAudit is the Schema for the connectaudits API. - properties: - apiVersion: - description: |- - APIVersion defines the versioned schema of this representation of an object. - Servers should convert recognized schemas to the latest internal value, and - may reject unrecognized values. - More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources - type: string - kind: - description: |- - Kind is a string value representing the REST resource this object represents. - Servers may infer this from the endpoint the client submits requests to. - Cannot be updated. - In CamelCase. - More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds - type: string - metadata: - type: object - spec: - description: ConnectAuditSpec defines the desired state of ConnectAudit. - properties: - connectPluginName: - description: ConnectPluginName refers to the ConnectPlugin being audited. - type: string - finished: - description: Finished indicates whether the ConnectAudit is done running. - type: boolean - scope: - description: |- - Scope indicates the scope of the ConnectAudit. - Currently supported scopes: PLUGIN - type: string - required: - - connectPluginName - - finished - - scope - type: object - status: - description: ConnectAuditStatus defines the observed state of ConnectAudit. - properties: - endTime: - description: EndTime is when the ConnectAudit reaches a completed State. - format: date-time - type: string - enqueueTime: - description: EnqueueTime is the starting time of the ConnectAudit. - format: date-time - type: string - failureReason: - description: FailureReason indicates the reason for a Failure Outcome. - type: string - outcome: - description: |- - Outcome indicates the outcome of the ConnectAudit once it is Finished. - Possible values are Success|Failure. - type: string - results: - description: Results is a list of Audit substeps performed. - items: - properties: - auditType: - description: |- - AuditType is the type of this Result. - Possible values are ConnectPluginAudit - type: string - failureReason: - description: FailureReason indicates the reason for a Failure Outcome. - type: string - foundDiscrepancies: - description: FoundDiscrepancies is a list of found and or corrected discrepancies. - items: - properties: - connectResourceKind: - description: ConnectResourceKind is the kind of the resource in Connect. - type: string - connectResourceName: - description: ConnectResourceName is the (k8s) name of the resource in Connect. - type: string - failureReason: - description: FailureReason indicates the reason for a Failure Outcome. - type: string - outcome: - description: |- - Outcome indicates the outcome of this Discrepancy. - Possible values are Success|Failure - type: string - pluginResourceKind: - description: PluginResourceKind is the kind of the resource in the Plugin environment. - type: string - pluginResourceURI: - description: PluginResourceURI is the URI of the resource in the Plugin environment. - type: string - type: - description: Type of discrepancy found during the Audit. - type: string - required: - - type - type: object - type: array - outcome: - description: |- - Outcome indicates the outcome of this Result once it is Finished. - Possible values are Success|Failure - type: string - state: - description: |- - State indicates the state of this Result. - Possible values are Scheduled|Finished|InProgress - type: string - type: object - type: array - state: - description: |- - State indicates the state of the overall ConnectAudit. - Possible values are Scheduled|Finished|InProgress. - type: string - totalNumberOfDiscrepancies: - description: TotalNumberOfDiscrepancies indicates the amount of entries in the Audit Report. - type: integer - totalNumberOfFailedDiscrepancies: - description: |- - TotalNumberOfFailedDiscrepancies indicates the amount of entries in the Results that have failed - to be resolved. Manual action is required here. - type: integer - totalNumberOfSuccessfulDiscrepancies: - description: |- - TotalNumberOfSuccessfulDiscrepancies indicates the amount of entries in the Audit Report that have successfully - been resolved. - type: integer - type: object - type: object -served: true -storage: true -subresources: - status: {} diff --git a/static/resources/connectinterfaces.connect.eda.nokia.com/v1.yaml b/static/resources/connectinterfaces.connect.eda.nokia.com/v1.yaml deleted file mode 100644 index 3af71bb..0000000 --- a/static/resources/connectinterfaces.connect.eda.nokia.com/v1.yaml +++ /dev/null @@ -1,91 +0,0 @@ -name: v1 -schema: - openAPIV3Schema: - description: ConnectInterface is the Schema for the connectinterfaces API. - properties: - apiVersion: - description: |- - APIVersion defines the versioned schema of this representation of an object. - Servers should convert recognized schemas to the latest internal value, and - may reject unrecognized values. - More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources - type: string - kind: - description: |- - Kind is a string value representing the REST resource this object represents. - Servers may infer this from the endpoint the client submits requests to. - Cannot be updated. - In CamelCase. - More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds - type: string - metadata: - type: object - spec: - description: ConnectInterfaceSpec defines the desired state of ConnectInterface. - properties: - bond: - description: Bond is an Optional Bond definition, indicating the naming of a Bond on the Compute. - properties: - chassisId: - description: ChassisID is the Chassis Id of the top-of-rack switch to which this compute interface is connected, received through LLDP. - type: string - hostName: - description: HostName is the FQDN of the host this compute port belongs to (eg. compute01.example.com). - type: string - interfaceName: - description: InterfaceName is the interface name of the compute port (eg. eth0). - type: string - portId: - description: PortID is the Port Id of the top-of-rack switch to which this compute interface is connected, received through LLDP. - type: string - systemName: - description: SystemName is the name of the top-of-rack switch to which this compute interface is connected, received through LLDP. - type: string - required: - - hostName - - interfaceName - type: object - members: - description: |- - Members is a list of InterfaceMembers indicating which Compute Interfaces are part of this ConnectInterface. - For non-LAG interfaces, this is a list of one element. - items: - properties: - chassisId: - description: ChassisID is the Chassis Id of the top-of-rack switch to which this compute interface is connected, received through LLDP. - type: string - hostName: - description: HostName is the FQDN of the host this compute port belongs to (eg. compute01.example.com). - type: string - interfaceName: - description: InterfaceName is the interface name of the compute port (eg. eth0). - type: string - portId: - description: PortID is the Port Id of the top-of-rack switch to which this compute interface is connected, received through LLDP. - type: string - systemName: - description: SystemName is the name of the top-of-rack switch to which this compute interface is connected, received through LLDP. - type: string - required: - - hostName - - interfaceName - type: object - type: array - required: - - members - type: object - status: - description: ConnectInterfaceStatus defines the observed state of ConnectInterface - properties: - currentInterface: - description: Indicates the current EDA CachedInterface this ConnectInterface is connected to. - type: string - operationalStatus: - description: Indicates the current operational state of the ConnectInterface - type: string - type: object - type: object -served: true -storage: true -subresources: - status: {} diff --git a/static/resources/connectplugins.connect.eda.nokia.com/v1.yaml b/static/resources/connectplugins.connect.eda.nokia.com/v1.yaml deleted file mode 100644 index 7b91f43..0000000 --- a/static/resources/connectplugins.connect.eda.nokia.com/v1.yaml +++ /dev/null @@ -1,74 +0,0 @@ -additionalPrinterColumns: - - jsonPath: .spec.name - name: Provided Name - type: string - - jsonPath: .spec.pluginType - name: Plugin Type - type: string - - jsonPath: .metadata.creationTimestamp - name: Age - type: date -name: v1 -schema: - openAPIV3Schema: - description: ConnectPlugin is the Schema for the connectplugins API. - properties: - apiVersion: - description: |- - APIVersion defines the versioned schema of this representation of an object. - Servers should convert recognized schemas to the latest internal value, and - may reject unrecognized values. - More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources - type: string - kind: - description: |- - Kind is a string value representing the REST resource this object represents. - Servers may infer this from the endpoint the client submits requests to. - Cannot be updated. - In CamelCase. - More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds - type: string - metadata: - type: object - spec: - description: ConnectPluginSpec defines the desired state of ConnectPlugin. - properties: - heartbeatInterval: - description: |- - HeartbeatInterval indicates in seconds the interval in which the Plugin will heartbeat. - When the interval is 0, heartbeating will be disabled. - type: integer - name: - description: Name is a human-readable representation of the Plugin. - type: string - pluginType: - description: PluginType identifies the type of the Plugin. Eg. VMware, OpenStack. - type: string - requiredPlugins: - description: A list of ConnectPlugins whose resources this ConnectPlugin will require - items: - type: string - type: array - supportedActionables: - description: SupportedActionables is a List of Actionable identifiers that this Plugin supports. - items: - type: string - type: array - required: - - name - - pluginType - type: object - status: - description: ConnectPluginStatus defines the observed state of ConnectPlugin. - properties: - stale: - description: |- - When a plugin registers with a certain heartbeatinterval and it does not meet that contract, Connect will assume - that the plugin is Stale / non-responsive. An alarm is raised when the plugin is Stale. - type: boolean - type: object - type: object -served: true -storage: true -subresources: - status: {} diff --git a/static/resources/destinations.remotewrite.eda.nokia.com/v1alpha1.yaml b/static/resources/destinations.remotewrite.eda.nokia.com/v1alpha1.yaml deleted file mode 100644 index 71c88d2..0000000 --- a/static/resources/destinations.remotewrite.eda.nokia.com/v1alpha1.yaml +++ /dev/null @@ -1,145 +0,0 @@ -name: v1alpha1 -schema: - openAPIV3Schema: - description: Destination is the Schema for the destinations API - properties: - apiVersion: - description: |- - APIVersion defines the versioned schema of this representation of an object. - Servers should convert recognized schemas to the latest internal value, and - may reject unrecognized values. - More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources - type: string - kind: - description: |- - Kind is a string value representing the REST resource this object represents. - Servers may infer this from the endpoint the client submits requests to. - Cannot be updated. - In CamelCase. - More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds - type: string - metadata: - type: object - spec: - description: DestinationSpec defines the desired state of Destination - properties: - authentication: - description: Authentication details (username and password) for accessing the server. - properties: - password: - description: Client password - type: string - username: - description: Client username - type: string - type: object - authorization: - description: Authorization token for accessing the server. - properties: - credentials: - description: Credentials such as a token value - type: string - type: - default: Bearer - description: Authorization type - type: string - type: object - metadata: - description: Configuration related to sending metadata to the remote server. - properties: - include: - description: If enabled, includes metadata in the write requests. - type: boolean - interval: - default: 60s - description: Interval at which metadata is sent to the remote server. - type: string - maxEntriesPerWrite: - default: 500 - description: Maximum number of metadata entries to be sent per Write request. - format: int64 - type: integer - type: object - tls: - description: TLS configuration for secure connection to the remote server. - properties: - caFile: - description: Path to the Certificate Authority file for verifying the server certificate. - type: string - certFile: - description: Path to the client certificate file. - type: string - keyFile: - description: Path to the client key file. - type: string - skipVerify: - description: Skip verifying the server certificate - type: boolean - type: object - url: - description: Remote server address for sending metrics. - type: string - writeOptions: - description: 'Remote write options such as: Flush interval, Retries, etc.' - properties: - bufferSize: - default: 1000 - description: The buffer size threshold that initiates sending the accumulated metrics to the remote destination once reached. - format: int64 - type: integer - flushInterval: - default: 5s - description: |- - Interval at which metrics stored in the local buffer are sent to the remote server. - Metrics are sent regardless of the buffer size threshold. - type: string - headers: - description: Custom HTTP headers to be sent along with each remote write request. - items: - properties: - name: - description: Header name - type: string - value: - description: Header value - type: string - type: object - type: array - maxRetries: - default: 3 - description: The total number of times to retry sending a message - format: int64 - type: integer - maxTimeSeriesPerWrite: - default: 500 - description: Maximum number of metrics per write request. - format: int64 - type: integer - timeout: - default: 10s - description: Write client timeout. - type: string - type: object - required: - - url - type: object - status: - description: DestinationStatus defines the observed state of Destination - properties: - error: - description: Last encountered error for this destination. - type: string - lastChecked: - description: Last checked time for connectivity status - format: date-time - type: string - reachable: - default: false - description: Indicates if the destination is reachable. - type: boolean - type: object - type: object -served: true -storage: true -subresources: - status: {} diff --git a/static/resources/exports.influxdb.eda.nokia.com/v1alpha1.yaml b/static/resources/exports.influxdb.eda.nokia.com/v1alpha1.yaml deleted file mode 100644 index 9686543..0000000 --- a/static/resources/exports.influxdb.eda.nokia.com/v1alpha1.yaml +++ /dev/null @@ -1,165 +0,0 @@ -name: v1alpha1 -schema: - openAPIV3Schema: - description: Export is the Schema for the exports API - properties: - apiVersion: - description: |- - APIVersion defines the versioned schema of this representation of an object. - Servers should convert recognized schemas to the latest internal value, and - may reject unrecognized values. - More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources - type: string - kind: - description: |- - Kind is a string value representing the REST resource this object represents. - Servers may infer this from the endpoint the client submits requests to. - Cannot be updated. - In CamelCase. - More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds - type: string - metadata: - type: object - spec: - description: ExportSpec defines the desired state of Export - properties: - description: - description: A short description of the export rules. - type: string - enabled: - default: true - description: Specifies if the Export rules are enabled or not. - type: boolean - exports: - description: List of export rules defining which EDB tables are exported to InfluxDB. - properties: - alarms: - description: Defines Alarms as export source - properties: - exclude: - description: List of Alarm types to exclude. - items: - type: string - type: array - include: - description: List of Alarm types to include. Set it to '*' for all. - items: - type: string - type: array - type: object - query: - description: Defines a custom query as export source - items: - properties: - customization: - description: InfluxDB data point manipulation. - properties: - fields: - description: Field names customization - items: - properties: - match: - description: A regular expression to be matched against the measurement name - type: string - replacement: - description: A regular expression replacement to be applied to the measurement name - type: string - type: object - type: array - measurement: - description: Measurement name renaming regex and replacement - properties: - match: - description: A regular expression to be matched against the measurement name - type: string - replacement: - description: A regular expression replacement to be applied to the measurement name - type: string - type: object - tags: - description: Tags customization - items: - properties: - delimiter: - default: = - description: Delimiter to join the tag name and value - type: string - match: - description: A regular expression to be matched against tag_name + delimiter + tag_value - type: string - replacement: - description: A regular expression replacement to be applied to tag_name + delimiter + tag_value - type: string - type: object - type: array - type: object - fields: - description: |- - Fields to export from the EDB table set in Path. - Exports all fields if not specified. - items: - type: string - type: array - mode: - default: on-change - description: Export mode. - enum: - - on-change - - periodic - - both - type: string - path: - description: |- - The EDB path to export, in the format '.node.srl.interface'. - Should NOT include the namespace path element. - type: string - period: - description: Export period. Applicable when mode is set to 'periodic' or 'both'. - type: string - where: - description: A where clause to use for the query, e.g. 'oper-state = down'. You can omit enclosing parentheses. - type: string - type: object - type: array - resource: - description: Defines EDA resources as export source - items: - properties: - group: - description: The resource group. - type: string - kind: - description: The resource kind. - type: string - name: - description: The resource name to export. Omit to export all resources based on their GVK - type: string - version: - description: The resource version. - type: string - type: object - type: array - type: object - servers: - description: List of influxDB server destination where EDB tables must be written. - items: - properties: - bucket: - description: InfluxDB Bucket Name. - type: string - name: - description: InfluxDB server Name. - type: string - type: object - type: array - required: - - exports - type: object - status: - description: ExportStatus defines the observed state of Export - type: object - type: object -served: true -storage: true -subresources: - status: {} diff --git a/static/resources/exports.nats.eda.nokia.com/v1alpha1.yaml b/static/resources/exports.nats.eda.nokia.com/v1alpha1.yaml deleted file mode 100644 index 92bbc17..0000000 --- a/static/resources/exports.nats.eda.nokia.com/v1alpha1.yaml +++ /dev/null @@ -1,118 +0,0 @@ -name: v1alpha1 -schema: - openAPIV3Schema: - description: Export is the Schema for the exports API - properties: - apiVersion: - description: |- - APIVersion defines the versioned schema of this representation of an object. - Servers should convert recognized schemas to the latest internal value, and - may reject unrecognized values. - More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources - type: string - kind: - description: |- - Kind is a string value representing the REST resource this object represents. - Servers may infer this from the endpoint the client submits requests to. - Cannot be updated. - In CamelCase. - More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds - type: string - metadata: - type: object - spec: - description: ExportSpec defines the desired state of Export - properties: - description: - description: A short description of the export rules. - type: string - destinations: - description: List of NATS cluster destination where EDB tables must be exported. - items: - properties: - name: - description: Publisher name. - type: string - subject: - description: NATS or Jetstream subject. - type: string - subjectFromJsPath: - description: If true, the subject name is based on the received JsPath. - type: boolean - subjectPrefix: - description: A prefix to be appended to the subject in case it's based on the received JsPath. - type: string - required: - - name - type: object - type: array - enabled: - default: true - description: Specifies if the Export rules are enabled or not. - type: boolean - exports: - description: Define data sources to be exported to a NATS cluster. - properties: - alarms: - description: Defines Alarms as export source - properties: - exclude: - description: List of Alarm types to exclude. - items: - type: string - type: array - include: - description: List of Alarm types to include. Set it to '*' for all. - items: - type: string - type: array - type: object - query: - description: Defines a custom query as export source - items: - properties: - fields: - description: |- - Fields to export from the EDB table set in `spec.query.path`. - Exports all fields if not specified. - items: - type: string - type: array - includeTimestamps: - description: Include the export timestamp in the published message. - type: boolean - mode: - default: on-change - description: Export mode. - enum: - - on-change - - periodic - - both - type: string - path: - description: |- - The EDB path to export, in the format '.node.srl.interface'. - Should NOT include the namespace element. - type: string - period: - description: Export period in seconds. Applicable if mode is set to 'periodic' or 'both'. - format: int64 - type: integer - where: - description: A where clause to use for the query, e.g. 'oper-state = down'. You can omit enclosing parentheses. - type: string - type: object - type: array - type: object - required: - - destinations - - exports - type: object - status: - description: ExportStatus defines the observed state of Export. - type: object - type: object -served: true -storage: true -subresources: - status: {} diff --git a/static/resources/exports.remotewrite.eda.nokia.com/v1alpha1.yaml b/static/resources/exports.remotewrite.eda.nokia.com/v1alpha1.yaml deleted file mode 100644 index 18c0b31..0000000 --- a/static/resources/exports.remotewrite.eda.nokia.com/v1alpha1.yaml +++ /dev/null @@ -1,153 +0,0 @@ -name: v1alpha1 -schema: - openAPIV3Schema: - description: Export is the Schema for the exports API - properties: - apiVersion: - description: |- - APIVersion defines the versioned schema of this representation of an object. - Servers should convert recognized schemas to the latest internal value, and - may reject unrecognized values. - More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources - type: string - kind: - description: |- - Kind is a string value representing the REST resource this object represents. - Servers may infer this from the endpoint the client submits requests to. - Cannot be updated. - In CamelCase. - More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds - type: string - metadata: - type: object - spec: - description: ExportSpec defines the desired state of Export - properties: - destinations: - description: List of remote destination names where metrics will be written. - items: - type: string - type: array - exports: - description: |- - List of metrics and their sources to be written to a remote server. - Metrics will be sent using the Prometheus remote write protocol. - items: - properties: - fields: - description: Optional set of fields to be exposed by this export. - items: - type: string - type: array - interval: - description: Period defines the frequency at which the metric is polled. - type: string - labels: - description: Allows adding static or dynamic labels to the metrics. - properties: - dynamic: - description: List of dynamic labels to add to the metrics, based on a state DB path. - items: - properties: - field: - description: The field name to add as a label - type: string - path: - description: The state DB path to export, in the format '.node.srl.interface' - type: string - regex: - description: A regular expression to be applied to the field value. - type: string - replacement: - description: A regular expression replacement to be applied to the field value. - type: string - type: object - type: array - static: - description: List of static labels to add to the metrics. - items: - properties: - name: - description: Label name. - pattern: '[a-zA-Z_][a-zA-Z0-9_]*' - type: string - value: - description: Label value. - type: string - type: object - type: array - type: object - mappings: - description: Rules for mapping metric values (e.g., DOWN -> 1, UP -> 2). - items: - properties: - destination: - description: The new value for the mapped source (must convert to float64). - pattern: ^-?\d+(\.\d+)?([eE][+-]?\d+)?$ - type: string - source: - description: The value to be mapped (supports regex with capture groups). - type: string - type: object - type: array - metricName: - description: Regex and replacement for renaming the metric name. - properties: - regex: - description: Regular expression for the metric name transformation. - type: string - replacement: - description: Replacement string for the transformed metric name. - type: string - type: object - mode: - description: 'Mode defines how the metric is collected: periodic, on-change, or periodic-on-change.' - type: string - path: - description: The state DB path to export, in the format '.node.srl.interface' - type: string - resource: - description: |- - A Custom resource to be used as a source for the metric. - It will generate a metric with the CR labels and a value of 1. - properties: - group: - description: The CR group such as `core.eda.nokia.com`. - type: string - kind: - description: The CR kind such as `toponode`. - type: string - labels: - description: |- - List of labels to include with the metric. - Include all if not set. - items: - type: string - type: array - name: - description: |- - CR name to be queried. - Get all of not set. - type: string - version: - description: The CR version such as `v1` or `v1alpha1`. - type: string - type: object - where: - description: Condition for filtering the metric (e.g., 'oper-state = down'). - type: string - required: - - path - type: object - type: array - required: - - exports - type: object - status: - description: ExportStatus defines the observed state of Export - type: object - type: object -served: true -storage: true -subresources: - status: {} diff --git a/static/resources/metricexports.otlp.eda.nokia.com/v1alpha1.yaml b/static/resources/metricexports.otlp.eda.nokia.com/v1alpha1.yaml deleted file mode 100644 index bc303cb..0000000 --- a/static/resources/metricexports.otlp.eda.nokia.com/v1alpha1.yaml +++ /dev/null @@ -1,170 +0,0 @@ -name: v1alpha1 -schema: - openAPIV3Schema: - description: MetricExport is the Schema for the metricexports API - properties: - apiVersion: - description: |- - APIVersion defines the versioned schema of this representation of an object. - Servers should convert recognized schemas to the latest internal value, and - may reject unrecognized values. - More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources - type: string - kind: - description: |- - Kind is a string value representing the REST resource this object represents. - Servers may infer this from the endpoint the client submits requests to. - Cannot be updated. - In CamelCase. - More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds - type: string - metadata: - type: object - spec: - description: MetricExportSpec defines the desired state of MetricExport - properties: - exports: - description: |- - List of metrics and their sources to be written to a remote server. - Metrics will be sent using the Prometheus remote write protocol. - items: - properties: - attributes: - description: Allows adding static or dynamic attributes to the metrics. - properties: - dynamic: - description: List of dynamic attributes to add to the metrics, based on a state DB path. - items: - properties: - field: - description: The field name to add as a attribute - type: string - path: - description: The state DB path to export, in the format '.node.srl.interface' - type: string - regex: - description: A regular expression to be applied to the field value. - type: string - replacement: - description: A regular expression replacement to be applied to the field value. - type: string - type: object - type: array - static: - description: List of static attributes to add to the metrics. - items: - properties: - metricAttribute: - description: Metric Attribute - type: boolean - name: - description: Attribute name. - pattern: '[a-zA-Z_][a-zA-Z0-9_]*' - type: string - value: - description: Attribute value. - type: string - type: object - type: array - type: object - fields: - description: Optional set of fields to be exposed by this export. - items: - properties: - name: - description: The name of the field. - type: string - type: - default: Gauge - description: The type of the field. - enum: - - Gauge - - Sum - type: string - type: object - type: array - interval: - description: Period defines the frequency at which the metric is polled. - type: string - mappings: - description: Rules for mapping metric values (e.g., DOWN -> 1, UP -> 2). - items: - properties: - destination: - description: The new value for the mapped source (must convert to float64). - pattern: ^-?\d+(\.\d+)?([eE][+-]?\d+)?$ - type: string - source: - description: The value to be mapped (supports regex with capture groups). - type: string - type: object - type: array - metricName: - description: Regex and replacement for renaming the metric name. - properties: - regex: - description: Regular expression for the metric name transformation. - type: string - replacement: - description: Replacement string for the transformed metric name. - type: string - type: object - mode: - default: on-change - description: 'Mode defines how the metric is collected: periodic, on-change, or periodic-on-change.' - enum: - - on-change - - periodic - - periodic-on-change - type: string - path: - description: The state DB path to export, in the format '.node.srl.interface' - type: string - resource: - description: |- - A Custom resource to be used as a source for the metric. - It will generate a metric with the CR attributes and a value of 1. - properties: - attributes: - description: |- - List of attributes to include with the metric. - Include all if not set. - items: - type: string - type: array - group: - description: The CR group such as `core.eda.nokia.com`. - type: string - kind: - description: The CR kind such as `toponode`. - type: string - name: - description: |- - CR name to be queried. - Get all of not set. - type: string - version: - description: The CR version such as `v1` or `v1alpha1`. - type: string - type: object - where: - description: Condition for filtering the metric (e.g., 'oper-state = down'). - type: string - type: object - type: array - receivers: - description: List of remote destination names where metrics will be written. - items: - type: string - type: array - required: - - exports - type: object - status: - description: MetricExportStatus defines the observed state of MetricExport - type: object - type: object -served: true -storage: true -subresources: - status: {} diff --git a/static/resources/notifiers.notifiers.eda.nokia.com/v1.yaml b/static/resources/notifiers.notifiers.eda.nokia.com/v1.yaml deleted file mode 100644 index 2ff0d5c..0000000 --- a/static/resources/notifiers.notifiers.eda.nokia.com/v1.yaml +++ /dev/null @@ -1,101 +0,0 @@ -name: v1 -schema: - openAPIV3Schema: - description: Notifier is the Schema for the notifiers API - properties: - apiVersion: - description: |- - APIVersion defines the versioned schema of this representation of an object. - Servers should convert recognized schemas to the latest internal value, and - may reject unrecognized values. - More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources - type: string - kind: - description: |- - Kind is a string value representing the REST resource this object represents. - Servers may infer this from the endpoint the client submits requests to. - Cannot be updated. - In CamelCase. - More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds - type: string - metadata: - type: object - spec: - description: NotifierSpec defines the desired state of Notifier - properties: - description: - description: A simple user provided description of this Notifier - type: string - enabled: - default: true - description: Enable or disable this Notifier - type: boolean - providers: - description: A list of references to Providers to send to for notifications matching any source in this Notifier - items: - type: string - type: array - sources: - description: Set the notifier sources - properties: - alarms: - description: Include alarm sources in this notifier - properties: - exclude: - description: |- - A list of alarm excludes for this Notifier, matching the 'kind' field within alarms. - If a source matches both the 'sources' and 'excludes' lists, it will be excluded. - For example, 'InterfaceMemberDown'. - items: - type: string - type: array - include: - description: |- - A list of alarms that this Notifier will listen to, matching the 'kind' field within alarms. - Including all alarms is indicated using the '*' wildcard. - For example, 'InterfaceDown'. - items: - type: string - type: array - type: object - query: - description: Include a query source in this notifier - properties: - color: - description: Sets the color of notifications generated from this query. Valid values are web color names, e.g. 'red', 'green', 'blue', 'yellow', 'purple', 'gray', etc. - type: string - fields: - description: |- - Fields to include in the query results, which can then be used in the template, - e.g. '.node.name' or '.node.srl.interface.name"'. - items: - type: string - type: array - table: - description: The table to use for the query, e.g. '.node.srl.interface' - type: string - template: - description: |- - A template to use when sending notifications for this query. The template can use the fields from the query results. - e.g. 'Interface {{ index . "interface.name" }} is down on node {{ index . "node.name" }}'. - type: string - title: - description: The title to use when presenting results for this query, e.g. 'InterfaceDown' - type: string - where: - description: A where clause to use for the query, e.g. 'oper-state = down'. You can omit enclosing parentheses. - type: string - type: object - type: object - required: - - providers - - sources - type: object - status: - description: NotifierStatus defines the observed state of Notifier - type: object - type: object -served: true -storage: true -subresources: - status: {} diff --git a/static/resources/pagers.pagers.eda.nokia.com/v1alpha1.yaml b/static/resources/pagers.pagers.eda.nokia.com/v1alpha1.yaml deleted file mode 100644 index 52ce919..0000000 --- a/static/resources/pagers.pagers.eda.nokia.com/v1alpha1.yaml +++ /dev/null @@ -1,126 +0,0 @@ -name: v1alpha1 -schema: - openAPIV3Schema: - description: Pager is the Schema for the pagers API - properties: - apiVersion: - description: |- - APIVersion defines the versioned schema of this representation of an object. - Servers should convert recognized schemas to the latest internal value, and - may reject unrecognized values. - More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources - type: string - kind: - description: |- - Kind is a string value representing the REST resource this object represents. - Servers may infer this from the endpoint the client submits requests to. - Cannot be updated. - In CamelCase. - More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds - type: string - metadata: - type: object - spec: - description: PagerSpec defines the desired state of Pager - properties: - description: - description: The pager description - type: string - routingKeySecret: - description: |- - A reference to the Secret holding the Pager Duty routing key to use when raising events from this pager. - The routing key must be base64 encoded and set under data.key. - The secret reference follows the format `$namespace/$secretName`, if the namespace is omitted, the pager namespace is used. - type: string - sources: - description: Set the Pager sources - properties: - alarms: - description: Include alarm sources in this pager - properties: - autoResolve: - description: If true this app will automatically change the event status from triggered to resolved when the alarm is cleared. - type: boolean - exclude: - description: |- - A list of alarms that this Pager will ignore, matching the 'type' field within alarms. - If a source matches both the 'includes' and 'excludes' lists, it will be excluded. - For example, 'InterfaceMemberDown'. - items: - type: string - type: array - include: - description: |- - A list of alarms that this Pager will listen to, matching the 'type' field within alarms. - For example, 'InterfaceDown'. - items: - type: string - type: array - type: object - query: - description: Include a query source in this pager - properties: - autoResolve: - description: If true this app will automatically change the event status from triggered to resolved when the object is deleted. - type: boolean - class: - description: |- - A template to use as class when sending the event to Pager Duty. - The template can use the fields from the subscription results. - type: string - component: - description: |- - A template to use as component when sending the event to Pager Duty. - The template can use the fields from the subscription results. - type: string - fields: - description: |- - Fields to include in the subscribe results, which can then be used in the template, - e.g. '.node.name' or '.node.srl.interface.name"'. - items: - type: string - type: array - group: - description: |- - A template to use as group when sending the event to Pager Duty. - The template can use the fields from the subscription results. - type: string - includeDetails: - description: If true the query response is included in the generated event 'custom_details' field - type: boolean - severity: - description: |- - A template to use as severity when sending the event to Pager Duty. - The template can use the fields from the subscription results. - Must be one of critical , error , warning or info. - type: string - source: - description: |- - A template to use as source when sending the event to Pager Duty. - The template can use the fields from the subscription results. - type: string - summary: - description: |- - A template to use as summary when sending the event to Pager Duty. - The template can use the fields from the subscription results. - e.g. 'Interface {{.node.srl.interface.name}} is down on node {{.node.name}}'. - type: string - table: - description: EDB table to subscribe to. e.g. '.namespace.node.srl.interface' - type: string - where: - description: 'A where clause to use for the subscribe request, e.g: ''oper-state = down''. You can omit enclosing parentheses.' - type: string - type: object - type: object - required: - - sources - type: object - status: - description: PagerStatus defines the observed state of Pager - type: object - type: object -served: true -storage: true -subresources: - status: {} diff --git a/static/resources/publishers.nats.eda.nokia.com/v1alpha1.yaml b/static/resources/publishers.nats.eda.nokia.com/v1alpha1.yaml deleted file mode 100644 index d1c217b..0000000 --- a/static/resources/publishers.nats.eda.nokia.com/v1alpha1.yaml +++ /dev/null @@ -1,92 +0,0 @@ -name: v1alpha1 -schema: - openAPIV3Schema: - description: Publisher is the Schema for the publishers API - properties: - apiVersion: - description: |- - APIVersion defines the versioned schema of this representation of an object. - Servers should convert recognized schemas to the latest internal value, and - may reject unrecognized values. - More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources - type: string - kind: - description: |- - Kind is a string value representing the REST resource this object represents. - Servers may infer this from the endpoint the client submits requests to. - Cannot be updated. - In CamelCase. - More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds - type: string - metadata: - type: object - spec: - description: PublisherSpec defines the desired state of Publisher - properties: - address: - description: Comma-separated NATS or Jetstream cluster addresses - type: string - clientName: - default: eda-nats-client - description: NATS client name. - type: string - credentialsSecretName: - description: NATS Credentials. A secret name with a 'username' and 'password' keys. - type: string - maxPendingAcks: - default: 4000 - description: The maximum outstanding async publishes that can be inflight at one time - minimum: 1 - type: integer - maxWait: - default: 5 - description: The maximum time (in seconds) a sync publisher waits for an acknowledgment. - minimum: 1 - type: integer - tls: - description: NATS client TLS configuration. - properties: - caFile: - description: Path to a certificate authority file. - type: string - certFile: - description: The client certificate file location. - type: string - keyFile: - description: The client private key location. - type: string - skipVerify: - description: If true the client will not verify the server's certificate. - type: boolean - type: object - type: - default: NATS - description: 'The NATS cluster type: NATS or Jetstream' - enum: - - NATS - - Jetstream - type: string - required: - - address - - clientName - - type - type: object - status: - description: PublisherStatus defines the observed state of Publisher. - properties: - connected: - description: Specifies if the client is connected to the NATS cluster - type: boolean - error: - description: Error value if the client is not connected - type: string - lastChecked: - description: Last time the connection was checked - format: date-time - type: string - type: object - type: object -served: true -storage: true -subresources: - status: {} diff --git a/static/resources/receivers.otlp.eda.nokia.com/v1alpha1.yaml b/static/resources/receivers.otlp.eda.nokia.com/v1alpha1.yaml deleted file mode 100644 index ffaad8e..0000000 --- a/static/resources/receivers.otlp.eda.nokia.com/v1alpha1.yaml +++ /dev/null @@ -1,151 +0,0 @@ -name: v1alpha1 -schema: - openAPIV3Schema: - description: Receiver is the Schema for the receivers API - properties: - apiVersion: - description: |- - APIVersion defines the versioned schema of this representation of an object. - Servers should convert recognized schemas to the latest internal value, and - may reject unrecognized values. - More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources - type: string - kind: - description: |- - Kind is a string value representing the REST resource this object represents. - Servers may infer this from the endpoint the client submits requests to. - Cannot be updated. - In CamelCase. - More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds - type: string - metadata: - type: object - spec: - description: ReceiverSpec defines the desired state of Receiver - properties: - authorization: - description: Authorization token for accessing the server. - properties: - credentials: - description: Credentials such as a token value - type: string - type: - default: Bearer - description: Authorization type - type: string - type: object - endpoint: - description: Receiver endpoint. - type: string - protocol: - default: http - description: Export client protocol. Once of `http` or `grpc`. - enum: - - http - - grpc - type: string - tls: - description: TLS configuration for secure connection to the remote server. - properties: - fromFiles: - description: Certificates files. - properties: - caFile: - description: Path to a certificate authority file. - type: string - certFile: - description: The client certificate file location. - type: string - keyFile: - description: The client private key location. - type: string - skipVerify: - description: If true the client will not verify the server's certificate. - type: boolean - type: object - fromSecret: - description: |- - Secret containing a `tls.crt`, a `tls.key` and a `ca.crt` keys. - Both `tls.crt` and `tls.key` must be present. - If `ca.crt` is not present and `.trustBundle` is not set - the remote server certificate is not verified. - type: string - trustBundle: - description: |- - ConfigMap containing a set of trust bundles (key `trust-bundle.pem`) used to - verify the remote server certificates. - type: string - type: object - writeOptions: - description: 'Remote write options such as: Flush interval, Retries, etc.' - properties: - bufferSize: - default: 1000 - description: The buffer size threshold that initiates sending the accumulated metrics to the receiver. - format: int64 - type: integer - compression: - description: Compression algorithm. Only gzip supported. - enum: - - gzip - type: string - flushInterval: - default: 5s - description: |- - Interval at which metrics stored in the local buffer are sent to the receiver. - Metrics are sent regardless of the buffer size threshold. - type: string - headers: - description: Custom HTTP headers to be sent along with each remote write request. - items: - properties: - name: - description: Header name - type: string - value: - description: Header value - type: string - type: object - type: array - maxMetricsPerExport: - default: 500 - description: Maximum number of metrics per export request. - format: int64 - type: integer - retries: - description: Retries options - properties: - initialInterval: - type: string - maxElapsedTime: - type: string - maxInterval: - type: string - type: object - timeout: - description: Export timeout. - type: string - type: object - required: - - endpoint - type: object - status: - description: ReceiverStatus defines the observed state of Receiver - properties: - error: - description: Last encountered error for this receiver - type: string - lastChecked: - description: Last checked time for connectivity status - format: date-time - type: string - reachable: - default: false - description: Specifies if the receiver is reachable - type: boolean - type: object - type: object -served: true -storage: true -subresources: - status: {} diff --git a/static/resources/servers.influxdb.eda.nokia.com/v1alpha1.yaml b/static/resources/servers.influxdb.eda.nokia.com/v1alpha1.yaml deleted file mode 100644 index 40b0f03..0000000 --- a/static/resources/servers.influxdb.eda.nokia.com/v1alpha1.yaml +++ /dev/null @@ -1,106 +0,0 @@ -name: v1alpha1 -schema: - openAPIV3Schema: - description: Server is the Schema for the servers API - properties: - apiVersion: - description: |- - APIVersion defines the versioned schema of this representation of an object. - Servers should convert recognized schemas to the latest internal value, and - may reject unrecognized values. - More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources - type: string - kind: - description: |- - Kind is a string value representing the REST resource this object represents. - Servers may infer this from the endpoint the client submits requests to. - Cannot be updated. - In CamelCase. - More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds - type: string - metadata: - type: object - spec: - description: ServerSpec defines the desired state of Server - properties: - batchSize: - default: 100 - description: Sets number of points sent in single request. - type: integer - credentialsSecret: - description: |- - Secret containing InfluxDB credentials. - the secret must include a username and password keys or a token key. - type: string - flushTimer: - default: 10s - description: Sets the write buffer flush timer. - type: string - org: - description: InfluxDB Organization. - type: string - timestampPrecision: - default: milliseconds - description: Sets the timestamp precision to use in writes for timestamp. - enum: - - seconds - - milliseconds - - microseconds - - nanoseconds - type: string - tls: - description: Enable TLS. - properties: - fromFiles: - description: Certificates files. - properties: - caFile: - description: Path to a certificate authority file. - type: string - certFile: - description: The client certificate file location. - type: string - keyFile: - description: The client private key location. - type: string - skipVerify: - description: If true the client will not verify the server's certificate. - type: boolean - type: object - fromSecret: - description: |- - Secret containing a `tls.crt`, a `tls.key` and a `ca.crt` keys. - Both `tls.crt` and `tls.key` must be present. If `ca.crt` is not present - the remote server certificate is not verified. - properties: - name: - description: Secret name containing a ca.crt, a tls.crt and a tls.key keys. - type: string - type: object - type: object - url: - description: InfluxDB server URL. - type: string - useGzip: - description: When true, the exporter uses GZIP compression in write requests. - type: boolean - type: object - status: - description: ServerStatus defines the observed state of Server - properties: - connected: - description: Specifies if the client is connected to the InfluxDB server - type: boolean - error: - description: Error value if the client is not connected - type: string - lastChecked: - description: Last time the connection was checked - format: date-time - type: string - type: object - type: object -served: true -storage: true -subresources: - status: {} diff --git a/svelte.config.js b/svelte.config.js index 7328a05..55ed678 100644 --- a/svelte.config.js +++ b/svelte.config.js @@ -11,12 +11,7 @@ const config = { fallback: 'plaintext', routes: { include: ['/*'], - exclude: [ - "/_app/*", - "/fonts/*", - "/images/*", - "/releases/*", - ] + exclude: ['/_app/*', '/fonts/*', '/images/*', '/releases/*'] } }) } diff --git a/version.json b/version.json new file mode 100644 index 0000000..696da6e --- /dev/null +++ b/version.json @@ -0,0 +1,10 @@ +{ + "version": "1.0.0", + "buildDate": "2025-11-04T00:00:00Z", + "commit": "", + "crdVersion": "v4.0.0", + "compatibility": { + "minEdaVersion": "4.0.0", + "maxEdaVersion": "5.0.0" + } +} diff --git a/vite.config.ts b/vite.config.ts index 1e6bf5a..5ff969f 100644 --- a/vite.config.ts +++ b/vite.config.ts @@ -1,10 +1,41 @@ import devtoolsJson from 'vite-plugin-devtools-json'; import tailwindcss from '@tailwindcss/vite'; import { sveltekit } from '@sveltejs/kit/vite'; -import { defineConfig } from 'vite'; +import { defineConfig, type Plugin } from 'vite'; + +// Plugin to suppress 404 logs for CRD version availability checks +const suppressCrdCheckLogs = (): Plugin => ({ + name: 'suppress-crd-check-logs', + configureServer(server) { + // @ts-ignore - Intercept console output to suppress CRD check 404s + const proc = globalThis.process; + if (!proc) return; + + const originalStdoutWrite = proc.stdout.write.bind(proc.stdout); + const originalStderrWrite = proc.stderr.write.bind(proc.stderr); + + // @ts-ignore - Override stdout + proc.stdout.write = (chunk: any, ...args: any[]) => { + const str = chunk?.toString() || ''; + if (str.includes('Not found:') && str.includes('/resources/') && str.includes('.yaml')) { + return true; // Suppress this output + } + return originalStdoutWrite(chunk, ...args); + }; + + // @ts-ignore - Override stderr + proc.stderr.write = (chunk: any, ...args: any[]) => { + const str = chunk?.toString() || ''; + if (str.includes('Not found:') && str.includes('/resources/') && str.includes('.yaml')) { + return true; // Suppress this output + } + return originalStderrWrite(chunk, ...args); + }; + } +}); export default defineConfig({ - plugins: [tailwindcss(), sveltekit(), devtoolsJson()], + plugins: [suppressCrdCheckLogs(), tailwindcss(), sveltekit(), devtoolsJson()], test: { projects: [ {