Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
213 commits
Select commit Hold shift + click to select a range
34d3662
feat(AIP-3938): AI tier openshift support
kbhos-splunk Jun 12, 2026
64420d8
UPdate test to reflect Gemma431bIt removal
kbhos-splunk Jun 15, 2026
377ff1d
fix(AIP-3938): Revert artifacts.yaml to main — upstream changes leake…
kbhos-splunk Jun 15, 2026
87982bb
successfully deploy gpt-oss20b model
kbhos-splunk Jun 15, 2026
b8ac604
misc
kbhos-splunk Jun 16, 2026
4f6c820
add back gemma model
kbhos-splunk Jun 16, 2026
5b330f9
clean-ups
kbhos-splunk Jun 16, 2026
2a78e36
config map to store the issuer url
kbhos-splunk Jun 16, 2026
918c376
resolve copilot comments
kbhos-splunk Jun 16, 2026
cc16e49
clean up
kbhos-splunk Jun 18, 2026
548a9c3
Merge pull request #102 from splunk/ai-tier-openshift-support
kupratyu-splunk Jun 18, 2026
108a392
feat(): AI pod script enhancements
kbhos-splunk Jun 23, 2026
8116909
Update openshift-cluster-config.yaml
kbhos-splunk Jun 23, 2026
c504626
Apply suggestions from code review
kbhos-splunk Jun 25, 2026
f01144b
Merge pull request #113 from splunk/ai-pod-script-enhancements
kupratyu-splunk Jun 29, 2026
9850883
feat(): Openshift scripts for air gapped env
kbhos-splunk Jul 3, 2026
9049743
fix codex comments
kbhos-splunk Jul 3, 2026
70c0501
Merge pull request #120 from splunk/ai-pod-air-gap-script
kupratyu-splunk Jul 3, 2026
8ebac6d
Merge pull request #125 from splunk/main
kupratyu-splunk Jul 9, 2026
5d89bb3
fix(openshift): route GPU and CPU workers via ai-tier-node label, fix…
kbhos-splunk Jul 10, 2026
208aa7f
feat: Ai pod model downloads (#118)
kbhos-splunk Jul 10, 2026
57beae4
resolve codex comments
kbhos-splunk Jul 10, 2026
733b576
resolve few more codex commnets
kbhos-splunk Jul 10, 2026
ae7cc3c
Merge pull request #127 from splunk/ai-pod-feature-branch
kupratyu-splunk Jul 10, 2026
f102933
feat(infra): add k0s AWS CloudFormation provisioner
kupratyu-splunk Jul 13, 2026
7b93a8b
feat(infra): rewrite k0s AWS provisioner with SCP compliance and EBS …
kupratyu-splunk Jul 13, 2026
519780a
docs(infra): rewrite K0S_AWS_PROVISION.md — SCP compliance, integrati…
kupratyu-splunk Jul 13, 2026
939be20
feat(infra): auto-create network stack when vpcId is empty; default u…
kupratyu-splunk Jul 13, 2026
5ca771e
fix(infra): add UNTESTED warnings to auto-create network; fix dry-run…
kupratyu-splunk Jul 13, 2026
20bd1e5
refactor(infra): push_k0s_config patches infra fields instead of over…
kupratyu-splunk Jul 13, 2026
e6737d3
docs(infra): update K0S_AWS_PROVISION.md for patch-based config manag…
kupratyu-splunk Jul 13, 2026
6113fcf
docs(infra): explain subnet auto-select vs pin in Existing VPC mode
kupratyu-splunk Jul 13, 2026
589e5a3
feat(infra): check NAT outbound connectivity on all private nodes aft…
kupratyu-splunk Jul 13, 2026
9e72756
fix(provision): multi-AZ GPU fallback, per-instance EBS AZ, preflight…
kupratyu-splunk Jul 14, 2026
ad55cd5
fix(provision): symlink model downloads to MinIO data disk to avoid r…
kupratyu-splunk Jul 14, 2026
3c5f8aa
fix(staging): use find -L to follow model_artifacts symlink in upload…
kupratyu-splunk Jul 14, 2026
d0fdb2c
fix(provision): robust data disk detection + UUID-based fstab in moun…
kupratyu-splunk Jul 14, 2026
8fe0da8
docs(provision): rewrite K0S_AWS_PROVISION.md with full prod runbook
kupratyu-splunk Jul 15, 2026
e5effff
fix(provision): forward AWS credentials to installer for ECR auth
kupratyu-splunk Jul 15, 2026
ccc6295
feat(provision): SeaweedFS support + ECR image patching + per-step ti…
kupratyu-splunk Jul 15, 2026
204379f
fix(provision): set ECR_ACCOUNT/ECR_REGION in load_config
kupratyu-splunk Jul 15, 2026
e0cfbbe
fix(nvidia): auto-upgrade kernel + reboot when kernel-devel mismatch …
kupratyu-splunk Jul 15, 2026
f339af6
fix(nvidia): explicitly run dkms build+install when module stuck in '…
kupratyu-splunk Jul 15, 2026
e7fc179
fix(provision): one-shot deploy fixes — correct operator image, clust…
kupratyu-splunk Jul 15, 2026
9d77e26
fix(provision): stop overwriting image tags from provision script
kupratyu-splunk Jul 15, 2026
fa1aff0
docs(provision): update K0S_AWS_PROVISION.md with current one-shot wo…
kupratyu-splunk Jul 15, 2026
cb077bb
fix(provision): print exact copy-paste commands with real EIP after p…
kupratyu-splunk Jul 16, 2026
94d36c5
docs(cluster_setup): add external Splunk integration runbook
kupratyu-splunk Jul 16, 2026
125e2dc
docs(cluster_setup): address Codex review feedback on external Splunk…
kupratyu-splunk Jul 16, 2026
147b3ba
docs(cluster_setup): address second Codex review pass on external Spl…
kupratyu-splunk Jul 16, 2026
3466372
fix(config): remove real SeaweedFS endpoint and default credentials f…
kupratyu-splunk Jul 16, 2026
65d95a0
fix(provision): port all Codex P1/P2 fixes from feat/k0s-aws-cloudfor…
kupratyu-splunk Jul 16, 2026
d543848
fix(provision): do not mount data disk in GPU/installer userdata
kupratyu-splunk Jul 16, 2026
47f7479
docs(cluster_setup): address third Codex review pass on external Splu…
kupratyu-splunk Jul 16, 2026
0a349bb
feat(splunk): make Splunk optional via empty-config graceful skip
kupratyu-splunk Jul 8, 2026
c0b076f
feat(install): make Splunk telemetry optional with disabled/internal/…
kupratyu-splunk Jul 9, 2026
f3dfa30
Merge pull request #128 from splunk/feat/external-splunk-integration-doc
kupratyu-splunk Jul 17, 2026
f3557a9
fix(): force delete stuck terminating namespaces on node failure
kbhos-splunk Jul 17, 2026
b826446
resolve codex comments
kbhos-splunk Jul 17, 2026
be47ecb
fix(splunk): address P1/P2 badge issues for optional Splunk mode
kupratyu-splunk Jul 17, 2026
0d5c639
fix(splunk): address P1/P2 badge issues — correct files
kupratyu-splunk Jul 17, 2026
1cba984
Merge pull request #124 from splunk/feat/splunk-operator-optional
kupratyu-splunk Jul 17, 2026
719b2e1
saia route setup
kbhos-splunk Jul 17, 2026
3ba7604
feat(splunk): add TrustedIssuers field and SAIA issuer config
kupratyu-splunk Jul 17, 2026
08ff7e4
Merge pull request #131 from splunk/ai-pod-final
kupratyu-splunk Jul 17, 2026
526ebcc
fix(saia): address P1/P2 Codex badges for TrustedIssuers issuer deriv…
kupratyu-splunk Jul 17, 2026
6b62f00
fix(tests): update tests to match splunk-optional OTel gate and new v…
kupratyu-splunk Jul 17, 2026
fc1ca50
fix(saia): use comma separator for SPLUNK_ISSUERS to match authorizer
kupratyu-splunk Jul 17, 2026
a238f2a
Merge pull request #132 from splunk/feat/splunk-trusted-issuers
kupratyu-splunk Jul 17, 2026
4b8c88d
fix(cluster_setup): stop reverting artifacts.yaml on repeat installs,…
kupratyu-splunk Jul 17, 2026
b07745c
fix(cluster_setup): anchor operator image sed on position, not content
kupratyu-splunk Jul 20, 2026
75e75ee
fix(cluster_setup): address Codex P3 findings on mutable-tag validation
kupratyu-splunk Jul 21, 2026
31e2f5f
fix(cluster_setup): include OTel collector in mutable-tag check
kupratyu-splunk Jul 21, 2026
1c271c4
Merge branch 'main' into fix/k0s-install-image-upgrade
kupratyu-splunk Jul 21, 2026
3619d3b
fix(cluster_setup): include Splunk Operator image in mutable-tag check
kupratyu-splunk Jul 21, 2026
af817e3
docs(AIP-4503): Openshift customer onboarding doc (#135)
kbhos-splunk Jul 21, 2026
75e1bd1
test(cluster_setup): add upgrade-flow tests and wire into CI
kupratyu-splunk Jul 22, 2026
95f39ad
feat: support slim-api service
spl-arif Jul 17, 2026
1ec5c89
feat: deploy CTSM model
spl-arif Jul 17, 2026
7f2e593
feat: splunk issues for slim-api & deployment support
spl-arif Jul 17, 2026
a4c43a7
fix(k0s): align Splunk issuer_uri with SPLUNK_ISSUERS endpoint for in…
spl-arif Jul 23, 2026
b7f9ff3
fix(slim): address PR #137 P2 review findings
spl-arif Jul 23, 2026
9cbdf85
fix(crds): add slim to the AIPlatform/AIService feature name enum
spl-arif Jul 23, 2026
2d7b1a8
Merge pull request #134 from splunk/fix/k0s-install-image-upgrade
kupratyu-splunk Jul 26, 2026
b1530c6
Initial changes for adding the sole config for model deployment
vvarshney-splunk Jul 16, 2026
4a62cf5
Changes for allowing usage of scale factor to scale deployments
vvarshney-splunk Jul 21, 2026
d0d0949
Remove internal scaling design document
vvarshney-splunk Jul 21, 2026
5402169
Fixing controller tests to set scale-file env vars
vvarshney-splunk Jul 22, 2026
3066194
Fix OpenShift scaleFactor wiring
vvarshney-splunk Jul 22, 2026
28cfc39
Avoid stale installer manifest backups
vvarshney-splunk Jul 26, 2026
69978d0
Merge pull request #136 from splunk/vavarshn/deployment_design_changes
vavarshn Jul 27, 2026
bc9fd52
Support dynamic RayCluster head services
vvarshney-splunk Jul 28, 2026
9436ca2
fix: cdtsm quantiles, slim-api not reaching ai-platform-models
spl-arif Jul 30, 2026
6a54a5f
Merge pull request #139 from splunk/vavarshn/deployment_design_changes
kupratyu-splunk Aug 3, 2026
b9a7afa
Enable tests by default on ai-tier-ga target
vvarshney-splunk Aug 3, 2026
baf5395
Merge pull request #144 from splunk/vavarshn/enable_tests
vavarshn Aug 3, 2026
09f14c5
Added a new function to compare hashes without replicas to check if o…
vvarshney-splunk Jul 29, 2026
cd60fa2
Fix reliable scaling across RayService reconciliation
vvarshney-splunk Aug 3, 2026
eba1f31
Merge pull request #140 from splunk/vavarshn/scale_workers
kupratyu-splunk Aug 3, 2026
36ff2bf
Preserve workloads during scale-only installer reruns
vvarshney-splunk Jul 31, 2026
39b9cd3
Prevent SAIA restarts on installer reruns
vvarshney-splunk Aug 3, 2026
4b74018
Simplify Ray Serve scaling configuration
vvarshney-splunk Aug 4, 2026
4aa847c
Merge pull request #145 from splunk/vavarshn/nvidia_installation
kupratyu-splunk Aug 4, 2026
70f3783
Fix k0s clean-all cleanup flow
vvarshney-splunk Aug 4, 2026
becbf08
Merge pull request #147 from splunk/vavarshn/fix-clean-all
kupratyu-splunk Aug 4, 2026
ec47552
fix(k0s-installer): bake all manual node/cluster fixes into install path
kbhos-splunk Jul 31, 2026
de83b1b
feat(blackwell): add RTX PRO 6000 Blackwell onboarding config
kbhos-splunk Jul 31, 2026
d3f0720
feat(AIP-4445): Add RTX pro 6000 support for ai tier
kbhos-splunk Jul 31, 2026
9e72be1
resolve codex comments
kbhos-splunk Jul 31, 2026
a39cd2d
fix: correct quantized/unquantized Gemma artifact split across accele…
kupratyu-splunk Aug 4, 2026
0594c04
fix: remove redundant replica autoscaling fields from RTX_PRO_6000_BL…
kupratyu-splunk Aug 4, 2026
2fbd9ef
Merge pull request #146 from splunk/fix/AIP-4614-splunk-tls-hostname-…
kupratyu-splunk Aug 4, 2026
4c890c9
Unify model configs and deployment scaling
vvarshney-splunk Aug 6, 2026
c606cc9
Merge pull request #150 from splunk/vavarshn/model-config-openshift-docs
vavarshn Aug 7, 2026
61d2dec
fix(AIP-4614): disable internal Splunk management TLS
kupratyu-splunk Aug 7, 2026
16f0633
fix(otel): separate HEC from management endpoint
kupratyu-splunk Aug 7, 2026
3cf6668
fix(k0s): allow Splunk HTTP fallback to complete
kupratyu-splunk Aug 7, 2026
0a9b9cf
fix(otel): align HEC transport with Splunk
kupratyu-splunk Aug 7, 2026
96241ad
test(k0s): harden internal Splunk acceptance checks
kupratyu-splunk Aug 7, 2026
8c3d829
Merge remote-tracking branch 'origin/ai-tier-ga' into fix/AIP-4614-di…
kupratyu-splunk Aug 9, 2026
ec3bcde
Merge pull request #153 from splunk/fix/AIP-4614-disable-internal-spl…
kupratyu-splunk Aug 10, 2026
eff348f
feat: airgap enhancements & airgap support for rhel 9
spl-arif Aug 7, 2026
54258a3
feat: support for ubuntu 24.04 lts
spl-arif Aug 7, 2026
250869c
Merge pull request #157 from splunk/aitk-on-aitier-ga
kupratyu-splunk Aug 10, 2026
e78b8bd
docs: add k0s deployment quick reference
kupratyu-splunk Aug 10, 2026
a9a0628
docs: refine k0s quick reference GPU sizing and standard-path setup
kupratyu-splunk Aug 10, 2026
52025cd
docs: add Ubuntu 24.04 GPU driver support to deployment docs, clarify…
kupratyu-splunk Aug 10, 2026
9114c57
docs: simplify air-gapped model setup and document GPU verify output
kupratyu-splunk Aug 10, 2026
7f24868
docs: note Ubuntu 24.04 GPU closure support in air-gapped hardware setup
kupratyu-splunk Aug 10, 2026
52b8e79
docs: clarify installer machine must be RHEL 9 for air-gapped installs
kupratyu-splunk Aug 10, 2026
14113d9
docs: add Internal Splunk Access section, dedupe staging requirements…
kupratyu-splunk Aug 10, 2026
7c8d5c7
docs: fix pyyaml troubleshooting row to cover Ubuntu 24.04 nodes
kupratyu-splunk Aug 10, 2026
a12aa86
docs: fix k0s deployment guide accuracy against actual installer beha…
kupratyu-splunk Aug 10, 2026
bcd82ee
docs: fix admin workstation tool prerequisites for RHEL 9
kupratyu-splunk Aug 10, 2026
214a9a5
Merge pull request #158 from splunk/ai-tier-ga-docs-update
kupratyu-splunk Aug 10, 2026
8dd64f0
fix(AIP-4614): restore native Splunk HTTPS compatibility
kupratyu-splunk Aug 10, 2026
f57b564
docs: add post-install SAIA sanity checklist
kupratyu-splunk Aug 11, 2026
f26cada
fix(otel): preserve custom HEC endpoint config
kupratyu-splunk Aug 11, 2026
0b70f07
Merge pull request #159 from splunk/codex/AIP-4614-pr153-review-fixes
kupratyu-splunk Aug 11, 2026
b068fff
chore: update preview workload image defaults
kupratyu-splunk Aug 11, 2026
f901fbb
Merge pull request #160 from splunk/codex/update-preview-image-defaults
vavarshn Aug 11, 2026
b9046c3
docs: trim splunk config comments, fix stale/missing field docs
kupratyu-splunk Aug 11, 2026
ec74743
fix: stop calling Splunk integration "telemetry" when it's the JWT/au…
kupratyu-splunk Aug 11, 2026
e60dbbe
chore: disable FmTimeseries model in default scale config
kupratyu-splunk Aug 11, 2026
6b2e100
fix: review comments
kupratyu-splunk Aug 11, 2026
ad95ab7
fix: log correction
kupratyu-splunk Aug 11, 2026
3b740b6
Merge pull request #161 from splunk/ai-tier-config-update
kupratyu-splunk Aug 11, 2026
b682732
Reducing disk space
vvarshney-splunk Aug 11, 2026
8cf2dfb
Merge pull request #163 from splunk/vavarshn/diskspace
vavarshn Aug 11, 2026
474af81
fix(saia): persist and scope personalization ingestion
kupratyu-splunk Aug 12, 2026
581600a
fix(k0s): extend workload readiness wait
kupratyu-splunk Aug 12, 2026
ca9f51b
Merge pull request #164 from splunk/codex/saia-rag-upload-fix
vavarshn Aug 12, 2026
77d5d1e
fix: config changes for testing
kupratyu-splunk Aug 12, 2026
1543169
Merge pull request #165 from splunk/ai-tier-confi-changes-testing
kupratyu-splunk Aug 12, 2026
4ebb2fe
fix: airgap - allowing model_staging as true, hostname fix & script t…
spl-arif Aug 12, 2026
d48499c
fix: review comments
spl-arif Aug 12, 2026
32ae78e
readme file updates reg airgap envs
spl-arif Aug 12, 2026
9074635
Merge remote-tracking branch 'origin/ai-tier-ga' into airgap-mirror-r…
spl-arif Aug 12, 2026
865b64c
Merge pull request #166 from splunk/airgap-mirror-registry
kupratyu-splunk Aug 12, 2026
92a0694
Adding sock proxy documentation
vvarshney-splunk Aug 12, 2026
4396685
Merge pull request #167 from splunk/vavarshn/sockProxy
kupratyu-splunk Aug 12, 2026
92ea53e
fix: Air gap regression fixes (#168)
kbhos-splunk Aug 13, 2026
eb896ce
fix: Increase saia failure threshold
kbhos-splunk Aug 13, 2026
539b8c0
Merge pull request #169 from splunk/increase-saia-failure-threshold
kupratyu-splunk Aug 13, 2026
59381b5
fix: Update k0s-quick-reference.md for airgap section
spl-arif Aug 13, 2026
bcd16ac
fix(saia,slim): stop persisting generated ServiceAccountName to spec
kupratyu-splunk Aug 14, 2026
0cdbf83
fix(ai): match AIService defaults exactly in buildAIService
kupratyu-splunk Aug 14, 2026
4452443
fix(ray): skip RayService write when nothing owned has changed
kupratyu-splunk Aug 14, 2026
00b1ef4
docs(k0s): document kine compaction/freelist mechanics and prod guidance
kupratyu-splunk Aug 14, 2026
b7f17e6
Backport PRs #168 and #169 to ai-tier-ga-internal (#171)
kbhos-splunk Aug 14, 2026
10168dc
docs: clarify GPU hardware options and update clone steps in k0s quic…
kupratyu-splunk Aug 14, 2026
7b4b5b6
Merge pull request #172 from splunk/docs/k0s-quick-reference-updates
kupratyu-splunk Aug 14, 2026
34f7a92
chore: bump splunk-ai-operator image to v2.4 in k0s cluster config
kupratyu-splunk Aug 14, 2026
6f947ad
docs: add ZIP download fallback for repo clone in k0s quick reference
kupratyu-splunk Aug 14, 2026
283830b
fix: sync air-gap mirror list operator image tag with v2.4 default
kupratyu-splunk Aug 14, 2026
edd3e4f
Merge pull request #173 from splunk/docs/k0s-quick-reference-updates
kupratyu-splunk Aug 14, 2026
c6b35a8
Revert "docs(k0s): document kine compaction/freelist mechanics and pr…
kupratyu-splunk Aug 17, 2026
467a265
revert(k0s): restore slim service config, bump operator image to v2.5
kupratyu-splunk Aug 17, 2026
d647143
Merge pull request #174 from splunk/aip-4778-write-storm-fixes
kupratyu-splunk Aug 17, 2026
bc282a6
feat: rhel 10 support non-airgapped
spl-arif Aug 18, 2026
2e72e66
fix: review comments
spl-arif Aug 18, 2026
bf75c87
Fixing verify pods for Kuberay 1.2.2
vvarshney-splunk Aug 19, 2026
82ed4b6
Merge pull request #177 from splunk/vavarshn/verify_pods_fix
vavarshn Aug 19, 2026
df38823
fix: documentation update
spl-arif Aug 18, 2026
ebbe85c
feat: rhel10 for airgapped (l40s)
spl-arif Aug 19, 2026
8103b4d
fix: codex comments
spl-arif Aug 19, 2026
290b987
feat: align OpenShift SLIM and RTX timeseries support (#179)
kbhos-splunk Aug 20, 2026
9ba66c0
fix: select RHEL 9 NVIDIA stream for airgap (#180)
kbhos-splunk Aug 20, 2026
f59bb1a
docs: clarify GPU hardware options and update clone steps in k0s quic…
kupratyu-splunk Aug 14, 2026
67f6ab0
docs: clarify per-node sizing and add macOS/Ubuntu tool install path
kupratyu-splunk Aug 21, 2026
d403bcd
docs: fix Ubuntu install commands for kubectl/helm/yq
kupratyu-splunk Aug 21, 2026
5a9aaeb
Merge main into ai-tier-ga-internal to resolve PR #182 conflicts
kbhos-splunk Aug 21, 2026
1eab76b
docs: fix RHEL 9/Ubuntu tool install commands, pin k0s/kubectl versions
kupratyu-splunk Aug 21, 2026
7a5b9ff
feat: adding missed changes from ai-tier-ga branch
spl-arif Aug 21, 2026
1af8b89
fix: address PR review comments on RHEL9/Ubuntu setup docs
kupratyu-splunk Aug 21, 2026
be6fd73
docs: consolidate RHEL9/Ubuntu tool setup into K0S_README.md
kupratyu-splunk Aug 21, 2026
b2156f2
Merge remote-tracking branch 'origin/ai-tier-ga-internal' into docs/k…
kupratyu-splunk Aug 21, 2026
ad6ca06
docs: scope dnf-plugins-core/docker to RHEL 9 in quick-reference
kupratyu-splunk Aug 21, 2026
0fd1a15
fix(k0s): resolve registered node names without truncating FQDNs (#186)
kbhos-splunk Aug 21, 2026
e5c7375
docs: add crane install docs and Ubuntu Docker path for image mirroring
kupratyu-splunk Aug 21, 2026
f85348f
Merge pull request #184 from splunk/docs/k0s-clarify-gpu-hw
kupratyu-splunk Aug 21, 2026
46a7087
docs: document SSH SOCKS tunnel for accessing internal Splunk/SAIA
kupratyu-splunk Aug 23, 2026
d1026f7
fix: address PR review comments on SOCKS-tunnel docs
kupratyu-splunk Aug 23, 2026
19fb5ce
Merge pull request #189 from splunk/ai-tier-ga-internal-docs
kupratyu-splunk Aug 23, 2026
74958c3
fix(saia): roll v2 workloads on issuer changes
kupratyu-splunk Aug 23, 2026
2bbd867
Merge pull request #191 from splunk/codex/external-splunk-issuer-rollout
kupratyu-splunk Aug 23, 2026
f32d86f
fix(ai-tier): pin Ray 2.56 and disable BiEncoder
kupratyu-splunk Aug 21, 2026
61766ed
docs(k0s): use one release tag for image mirroring
kupratyu-splunk Aug 21, 2026
958f0b5
fix(saia): reconcile embedding override changes
kupratyu-splunk Aug 21, 2026
22e2f39
Merge pull request #188 from splunk/codex/ray-2.56-disable-biencoder
vavarshn Aug 24, 2026
810547a
docs: Adding k0s air gapped config file (#192)
kbhos-splunk Aug 24, 2026
fc190bc
Merge branch 'ai-tier-ga-internal' into ai-tier-ga
kupratyu-splunk Aug 24, 2026
f44a0c9
Update mirror registry shell file
spl-arif Aug 25, 2026
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
24 changes: 24 additions & 0 deletions .github/workflows/cluster-setup-tests.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,24 @@
name: Cluster Setup Tests
on:
workflow_call:

jobs:
test:
runs-on: ubuntu-latest
steps:
- name: Checkout code
uses: actions/checkout@08eba0b27e820071cde6df949e0beb9ba4906955 # v4

- name: Ensure yq is available
run: |
if ! command -v yq &> /dev/null; then
sudo wget -qO /usr/local/bin/yq https://github.com/mikefarah/yq/releases/latest/download/yq_linux_amd64
sudo chmod +x /usr/local/bin/yq
fi
yq --version

- name: Run cluster_setup unit tests
run: bash tools/cluster_setup/test_k0s_cluster_with_stack.sh

- name: Run Splunk-optional installer dry-run tests
run: bash tools/cluster_setup/test_installer_dry_run.sh
5 changes: 5 additions & 0 deletions .github/workflows/main.yml
Original file line number Diff line number Diff line change
Expand Up @@ -4,6 +4,7 @@ on:
pull_request:
branches:
- main
- ai-tier-ga
push:
branches:
- main
Expand All @@ -23,6 +24,10 @@ jobs:
uses: ./.github/workflows/main-unit-tests.yml
needs: check-formatting

cluster-setup-tests:
uses: ./.github/workflows/cluster-setup-tests.yml
needs: check-formatting

build-image:
uses: ./.github/workflows/main-build-image.yml
secrets: inherit
Expand Down
8 changes: 4 additions & 4 deletions .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -40,8 +40,8 @@ helm-chart/**/charts/
!helm-chart/**/charts/.gitkeep

# Cluster-setup script byproducts (*.original): pristine-snapshot backups
# written by tools/cluster_setup/k0s_cluster_with_stack.sh on first run and
# reused as a reset point on subsequent runs (see configure_images()
# → "Restoring from clean originals"). Needed locally for idempotent
# re-installs; never committed.
# written by tools/cluster_setup/eks_cluster_with_stack.sh on first run and
# reused as a reset point on subsequent runs. Needed locally for idempotent
# re-installs; never committed. (k0s_cluster_with_stack.sh no longer uses
# this snapshot/restore pattern, but the EKS script still does.)
tools/cluster_setup/*.original
5 changes: 4 additions & 1 deletion Dockerfile
Original file line number Diff line number Diff line change
Expand Up @@ -39,7 +39,8 @@ WORKDIR /
COPY --from=builder /workspace/manager .
COPY config/configs/instance.yaml instance.yaml
COPY config/configs/applications.yaml applications.yaml
COPY config/configs/features/ features/
COPY config/configs/model-scale.yaml model-scale.yaml
COPY config/configs/worker-scale.yaml worker-scale.yaml
COPY LICENSE LICENSE-2.0.txt
COPY --from=builder /certs/tls.crt /certs/tls.crt
COPY --from=builder /certs/tls.key /certs/tls.key
Expand All @@ -51,4 +52,6 @@ COPY --from=builder /certs/tls.key /certs/tls.key
USER 1001:0
ENV INSTANCE_FILE=/instance.yaml
ENV APPLICATION_FILE=/applications.yaml
ENV MODEL_SCALE_FILE=/model-scale.yaml
ENV WORKER_SCALE_FILE=/worker-scale.yaml
ENTRYPOINT ["/manager"]
5 changes: 4 additions & 1 deletion Dockerfile.debug
Original file line number Diff line number Diff line change
Expand Up @@ -47,14 +47,17 @@ COPY --from=builder /workspace/manager .
# Copy config files
COPY config/configs/instance.yaml instance.yaml
COPY config/configs/applications.yaml applications.yaml
COPY config/configs/features/ features/
COPY config/configs/model-scale.yaml model-scale.yaml
COPY config/configs/worker-scale.yaml worker-scale.yaml
COPY --from=builder /certs/tls.crt /certs/tls.crt
COPY --from=builder /certs/tls.key /certs/tls.key

USER 65532:65532

ENV INSTANCE_FILE=/instance.yaml
ENV APPLICATION_FILE=/applications.yaml
ENV MODEL_SCALE_FILE=/model-scale.yaml
ENV WORKER_SCALE_FILE=/worker-scale.yaml

# Start with delve for debugging
ENTRYPOINT ["/dlv", "--listen=:2345", "--headless=true", "--api-version=2", "--accept-multiclient", "exec", "/manager", "--"]
37 changes: 29 additions & 8 deletions api/v1/aiplatform_types.go
Original file line number Diff line number Diff line change
Expand Up @@ -65,6 +65,16 @@ type AIPlatformSpec struct {
// +kubebuilder:validation:MaxItems=10
Features []FeatureSpec `json:"features,omitempty"`

// ScaleFactor is a platform-wide capacity multiplier. It uniformly scales
// BOTH the model (Serve) replicas AND the GPU worker-pool pod counts, so a
// single knob grows capacity without needing to know which models exist or
// how many GPUs each uses. The cluster must have proportionally more GPUs
// available before raising it. Defaults to 1 (single-capacity deployment).
// +kubebuilder:validation:Optional
// +kubebuilder:validation:Minimum=1
// +kubebuilder:default=1
ScaleFactor *int32 `json:"scaleFactor,omitempty"`

// WorkerGroupConfig defines the Ray worker group configuration
// +kubebuilder:validation:Optional
WorkerGroupConfig *WorkerGroupConfig `json:"workerGroupConfig,omitempty"`
Expand Down Expand Up @@ -177,17 +187,13 @@ type VectorDBStorageSpec struct {

// FeatureSpec defines the features to enable in the AIPlatform
type FeatureSpec struct {
// Name of the feature, e.g. "saia" or "seca"
// +kubebuilder:validation:Enum=saia;seca
// Name of the feature, e.g. "saia", "seca" or "slim"
// +kubebuilder:validation:Enum=saia;seca;slim
Name string `json:"name,omitempty"`
// ServiceAccountName is the name of the service account to use for the feature
ServiceAccountName string `json:"serviceAccountName,omitempty"`
// Version of the feature, e.g. "1.0.0"
Version string `json:"version,omitempty"`
// ScaleFactor is the desired fixed number of replicas for the feature.
// +kubebuilder:validation:Minimum=1
// +optional
ScaleFactor *int32 `json:"scaleFactor,omitempty"`
}

// WeaviateSpec defines the configuration for the Weaviate vector database
Expand Down Expand Up @@ -295,11 +301,18 @@ type SplunkConfigurationSpec struct {
// +kubebuilder:validation:Optional
SecretRef corev1.SecretReference `json:"secretRef,omitempty"`

// Endpoint is the Splunk HEC endpoint URL or service name (mutually exclusive with SplunkCustomResourceRef)
// Either Endpoint or SplunkCustomResourceRef must be provided
// Endpoint is the Splunk management/JWKS URL used as the JWT issuer for
// SAIA/Slim token validation (mutually exclusive with SplunkCustomResourceRef).
// Either Endpoint or SplunkCustomResourceRef must be provided.
// +kubebuilder:validation:Optional
Endpoint string `json:"endpoint,omitempty"`

// HECEndpoint is the Splunk HTTP Event Collector base URL used only by the
// OTel sidecar to export telemetry. It falls back to Endpoint when unset for
// backward compatibility with configurations that predate this field.
// +kubebuilder:validation:Optional
HECEndpoint string `json:"hecEndpoint,omitempty"`

// Token is the Splunk HEC token (consider using SecretRef instead)
// +kubebuilder:validation:Optional
Token string `json:"token,omitempty"`
Expand All @@ -311,6 +324,14 @@ type SplunkConfigurationSpec struct {
// VaultFilePath is the path where Vault Agent injects the Splunk HEC token
// +kubebuilder:validation:Optional
VaultFilePath string `json:"vaultFilePath,omitempty"`

// TrustedIssuers is a list of Splunk JWT issuer URLs (management port,
// e.g. https://<splunk-host>:8089) that SAIA will trust for token validation.
// When the in-cluster Splunk Standalone is deployed (SplunkCustomResourceRef is set),
// its issuer is included automatically and TrustedIssuers are appended.
// In external or disabled modes, SPLUNK_ISSUERS is populated solely from this list.
// +optional
TrustedIssuers []string `json:"trustedIssuers,omitempty"`
}

// ReplicasSpec sets min/max worker replicas
Expand Down
25 changes: 14 additions & 11 deletions api/v1/zz_generated.deepcopy.go

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

Loading
Loading