Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
80 commits
Select commit Hold shift + click to select a range
22b1eda
Merge pull request #209 from splunk/master
smohan-splunk Dec 16, 2020
b5ac52a
Add date to 0.2.1 Beta in changelog
jkoby Dec 16, 2020
5cf8f74
fix IndexerCluster clusterMasterRef yaml in doc
Dec 1, 2020
e937db7
Updated create eks cluster to use existing VPC
pdhanoyasplunk Dec 1, 2020
b5045ae
Docs fix for pass4Symmkey
akondur Dec 10, 2020
699c6be
Initial commit
gaurav-splunk Dec 11, 2020
5a5c2a0
Merge branch 'develop' of github.com:splunk/splunk-operator into bugf…
gaurav-splunk Dec 17, 2020
585f729
Fixed UT failures
gaurav-splunk Dec 17, 2020
2750a7d
Merge pull request #210 from jkoby/patch-1
smohan-splunk Dec 22, 2020
9bc3a76
Addressed review comment
gaurav-splunk Dec 22, 2020
5574dd2
Merge branch 'develop' into bugfix/CSPL-564
gaurav-splunk Dec 22, 2020
ab35bb7
CSPL-663 Optimize deployment of Splunk apps on SHC
jryb Dec 16, 2020
33db9ad
Merge pull request #211 from splunk/bugfix/CSPL-663_defaultsUrlDeployer
smohan-splunk Dec 23, 2020
1bb0954
CSPL-620: add test to verify disabled SH dont exist on CM
pdhanoyasplunk Dec 9, 2020
e2fbe29
Merge branch 'develop' into CSPL-620-add-test-to-verify-sh-removed-fr…
smohan-splunk Dec 23, 2020
dafd34e
Merge pull request #202 from splunk/CSPL-620-add-test-to-verify-sh-re…
smohan-splunk Dec 23, 2020
e05bb11
Adding API version in multisite examples docs
akondur Jan 5, 2021
a5dc8ca
Merge pull request #217 from splunk/fix_missing_api_version
smohan-splunk Jan 5, 2021
0cea9de
Storage class revamp
akondur Jan 6, 2021
159ef86
Added option to pass test selection env variable through CIRCLE CI
pdhanoyasplunk Jan 5, 2021
52b5daf
Merge pull request #218 from splunk/create_nightly_build_workflow
smohan-splunk Jan 8, 2021
b7abb5f
Addressing review comments
akondur Jan 8, 2021
9aa689b
Adding support to configure a custom serviceaccount per CRD
akondur Jan 8, 2021
d31f937
Addressing review comments
akondur Jan 8, 2021
b0dedf0
CSPL-637 need a naming specification for ports for istio
vebken-splunk Jan 8, 2021
ab58f5b
Added unit tests for different storage volume combinations
akondur Jan 11, 2021
2e3e5f7
templated port name string and made constants for port names, will be…
vebken-splunk Jan 11, 2021
af37d3c
Merge branch 'develop' into bugfix/CSPL-637
vebken-splunk Jan 11, 2021
d025400
CSPL-578: Adding testcase lm with standalone
jambrosiano Jan 8, 2021
1756859
updates after merge conflict
vebken-splunk Jan 12, 2021
b2b5cd3
Added a short name for standalone CRD
akondur Jan 12, 2021
19802f4
Merge pull request #225 from splunk/CSPL-578-lm
smohan-splunk Jan 13, 2021
679c651
Merge branch 'develop' into bugfix/CSPL-637
smohan-splunk Jan 13, 2021
88ff1f2
Merge branch 'develop' into short_name_sa
smohan-splunk Jan 13, 2021
1733818
Merge pull request #221 from splunk/bugfix/CSPL-637
smohan-splunk Jan 13, 2021
f5008c5
Merge branch 'develop' into short_name_sa
smohan-splunk Jan 13, 2021
28a1d95
Merge pull request #224 from splunk/short_name_sa
smohan-splunk Jan 13, 2021
094eead
Monitoring-console: mount emptyDir to var and etc paths to remove dep…
romain-bellanger Dec 9, 2020
ca175f6
Monitoring Console: add a unit test to validate the generated Statefu…
romain-bellanger Jan 13, 2021
10111ef
Merge branch 'develop' into storage_class_config_revamp
akondur Jan 13, 2021
e5f3f57
Fixed unit test after merge conflict
akondur Jan 13, 2021
76ae2a1
Merge pull request #219 from splunk/storage_class_config_revamp
smohan-splunk Jan 13, 2021
679498f
Fix merge conflicts
akondur Jan 14, 2021
c41e0f5
Additional ut check for serviceaccount
akondur Jan 14, 2021
6f3f27e
Fix documentation for defaultsUrl
akondur Jan 15, 2021
90b391b
Additional ut for update scenario
akondur Jan 15, 2021
668a8c0
Added/modified copyright to source code
akondur Jan 15, 2021
c310ca0
Merge pull request #228 from splunk/def_docs_fix
smohan-splunk Jan 15, 2021
afba86e
Addressing review comments
akondur Jan 15, 2021
6f6e8d7
Merge branch 'develop' into bugfix/monitoring_console_empty_dir
smohan-splunk Jan 15, 2021
e739ad0
Merge pull request #201 from romain-bellanger/bugfix/monitoring_conso…
smohan-splunk Jan 18, 2021
af168cf
Fixed MC statefulset JSON
pdhanoyasplunk Jan 18, 2021
b4bf207
Merge pull request #230 from splunk/fix-mc-unit-test-failure
smohan-splunk Jan 19, 2021
f347b90
Give access to the resource serviceaccount
akondur Jan 20, 2021
9cc89e1
Changed logging for GetServiceAccount
akondur Jan 20, 2021
5a97236
Merge branch 'develop' into custom_service_account
akondur Jan 21, 2021
bc17a99
Merge pull request #220 from splunk/custom_service_account
smohan-splunk Jan 22, 2021
f90fe3f
CSPL-720: Added test for service account with standlaone
pdhanoyasplunk Jan 22, 2021
a57a0a9
Merge pull request #238 from splunk/test_service_account
smohan-splunk Jan 27, 2021
2367845
CSPL-526 - Define S2S Ingress Method
mgaldino-splunk Jan 14, 2021
04acd1f
Merge branch 'develop' into CSPL-526-Ingress-Documentation-Update
smohan-splunk Jan 27, 2021
cdb3184
Merge pull request #239 from splunk/CSPL-526-Ingress-Documentation-Up…
smohan-splunk Jan 27, 2021
f7bc91a
CSPL-540: Added utilities and test for s3 indexes
pdhanoyasplunk Jan 26, 2021
bdb443c
Merge pull request #240 from splunk/CSPL-540-s3-secret-object
smohan-splunk Jan 27, 2021
a057142
Merge branch 'develop' into bugfix/CSPL-564
akondur Feb 2, 2021
a067d0e
Fixes to avoid pod recycle while scaling for all CRs except SHC
akondur Feb 2, 2021
ea496f0
CSPL-817 Removes collapsible blocks for Github Pages compatibility
mgaldino-splunk Feb 4, 2021
6c28f50
Merge pull request #244 from splunk/pod_recycle
smohan-splunk Feb 4, 2021
dd4ca30
Merge branch 'develop' into CSPL-817-fix-collapsible-blocks-Ingress-docs
smohan-splunk Feb 4, 2021
6521850
Merge branch 'develop' into bugfix/CSPL-564
akondur Feb 4, 2021
f906331
Merge pull request #246 from splunk/CSPL-817-fix-collapsible-blocks-I…
smohan-splunk Feb 4, 2021
3aeb318
Merge branch 'develop' into bugfix/CSPL-564
akondur Feb 4, 2021
e6bb64b
Merge pull request #212 from splunk/bugfix/CSPL-564
smohan-splunk Feb 4, 2021
3c4d78f
Create hwf.yaml
pogdin Feb 5, 2021
72ef704
Create c1.yaml
pogdin Feb 5, 2021
5595ca2
Create c3.yaml
pogdin Feb 5, 2021
09f4562
Create README.md
pogdin Feb 5, 2021
50ec225
Update hwf.yaml
pogdin Feb 5, 2021
b7ce672
Helper commit for 0.2.2 release
akondur Feb 10, 2021
89ec4b2
Merge pull request #251 from splunk/release_0.2.2
smohan-splunk Feb 10, 2021
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
86 changes: 82 additions & 4 deletions .circleci/config.yml
Original file line number Diff line number Diff line change
Expand Up @@ -8,22 +8,40 @@ orbs:

workflows:
version: 2
build-and-push:
nightly-integration-test:
triggers:
- schedule:
cron: "0 12 * * *"
filters:
branches:
only:
- develop
jobs:
- build-image
- unit-tests
- integration-tests:
requires:
- build-image
- unit-tests
- vulnerability-scan:
requires:
- build-image
build-and-push:
jobs:
- build-image
- unit-tests
- smoke-tests:
requires:
- build-image
- unit-tests
- vulnerability-scan:
requires:
- build-image
- push-latest:
requires:
- build-image
- unit-tests
- integration-tests
- smoke-tests
- vulnerability-scan
filters:
branches:
Expand All @@ -33,7 +51,7 @@ workflows:
requires:
- build-image
- unit-tests
- integration-tests
- smoke-tests
- vulnerability-scan
filters:
branches:
Expand All @@ -43,7 +61,7 @@ workflows:
requires:
- build-image
- unit-tests
- integration-tests
- smoke-tests
- vulnerability-scan
filters:
tags:
Expand Down Expand Up @@ -154,6 +172,64 @@ jobs:
- store_artifacts:
name: Save coverage.out as artifact
path: coverage.out
# Runs smoke tests against a k8s cluster
smoke-tests:
executor: ubuntu-machine
steps:
- run:
name: Setup Splunk operator and enterprise image env vars
command: |
echo 'export SPLUNK_OPERATOR_IMAGE=${IMAGE_NAME}:${CIRCLE_SHA1}' >> $BASH_ENV
echo 'export SPLUNK_ENTERPRISE_IMAGE=${ENTERPRISE_IMAGE_NAME}' >> $BASH_ENV
echo 'export COMMIT_HASH=$(echo ${CIRCLE_SHA1:0:7})' >> $BASH_ENV
- kubernetes/install
- aws-cli/install
- aws-eks/install-eksctl
- run:
name: Install kind tool
command: |
curl -Lo ./kind https://kind.sigs.k8s.io/dl/v0.7.0/kind-$(uname)-amd64
chmod +x ./kind
sudo mv ./kind /usr/local/bin
- checkout
- attach_workspace:
name: Restore workspace
at: /tmp
# load the operator image to local registry in the VM
- load_image
- run:
name: Print out version and environment
command: |
ls -al
echo "GO VERSION=`go version`"
echo "CIRCLE_SHA1=$CIRCLE_SHA1"
echo "SPLUNK_OPERATOR_IMAGE=$SPLUNK_OPERATOR_IMAGE"
echo "SPLUNK_ENTEPRISE_IMAGE=$SPLUNK_ENTERPRISE_IMAGE"
echo "PRIVATE_REGISTRY=$PRIVATE_REGISTRY"
echo "CLUSTER_PROVIDER=$CLUSTER_PROVIDER"
- run:
# Deploys a eks or kind cluster depending of CLUSTER_PROVIDER flag. If cluster already exists,
# it will skip. Uses NUM_WORKERS for size of cluster
name: Deploy k8s cluster
command: |
make cluster-up
kubectl version # log the k8s version
no_output_timeout: 30m
- run:
# Run the smoke tests againsts the cluster deployed above.
# Test againsts the SPLUNK_OPERATOR_IMAGE and SPLUNK_ENTERPRISE_IMAGE
name: Run smoke tests
command: |
make int-test
mkdir -p /tmp/test-results
find ./test -name "*junit.xml" -exec cp {} /tmp/test-results \;
environment:
TEST_FOCUS: smoke
- store_test_results:
name: Save test results
path: /tmp/test-results
- store_artifacts:
path: /tmp/test-results
# Runs integration tests against a k8s cluster
integration-tests:
executor: ubuntu-machine
Expand Down Expand Up @@ -205,6 +281,8 @@ jobs:
make int-test
mkdir -p /tmp/test-results
find ./test -name "*junit.xml" -exec cp {} /tmp/test-results \;
environment:
TEST_FOCUS: "smoke|ingest_search|monitoring_console|deletecr|smartstore"
- store_test_results:
name: Save test results
path: /tmp/test-results
Expand Down
2 changes: 1 addition & 1 deletion LICENSE
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
Copyright 2020 Splunk Inc.
Copyright 2021 Splunk Inc.

Licensed under the Apache License, Version 2.0 (the "License");
you may not use this file except in compliance with the License.
Expand Down
2 changes: 1 addition & 1 deletion cmd/manager/main.go
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
// Copyright (c) 2018-2020 Splunk Inc. All rights reserved.
// Copyright (c) 2018-2021 Splunk Inc. All rights reserved.
//
// Licensed under the Apache License, Version 2.0 (the "License");
// you may not use this file except in compliance with the License.
Expand Down
52 changes: 38 additions & 14 deletions deploy/crds/enterprise.splunk.com_clustermasters_crd.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -659,14 +659,26 @@ spec:
description: Full path or URL for one or more default.yml files, separated
by commas
type: string
ephemeralStorage:
description: If true, ephemeral (emptyDir) storage will be used for
/opt/splunk/etc and /opt/splunk/var volumes
type: boolean
etcStorage:
description: Storage capacity to request for /opt/splunk/etc persistent
volume claims (default=”1Gi”)
defaultsUrlApps:
description: Full path or URL for one or more defaults.yml files specific
to App install, separated by commas. The defaults listed here will
be installed on the CM, standalone, search head deployer or license
master instance.
type: string
etcVolumeStorageConfig:
description: Storage configuration for /opt/splunk/etc volume
properties:
ephemeralStorage:
description: If true, ephemeral (emptyDir) storage will be used
type: boolean
storageCapacity:
description: Storage capacity to request persistent volume claims
(default=”10Gi” for etc and "100Gi" for var)
type: string
storageClassName:
description: Name of StorageClass to use for persistent volume claims
type: string
type: object
image:
description: Image to use for Splunk pod containers (overrides RELATED_IMAGE_SPLUNK_ENTERPRISE
environment variables)
Expand Down Expand Up @@ -740,6 +752,11 @@ spec:
description: Name of Scheduler to use for pod placement (defaults to
“default-scheduler”)
type: string
serviceAccount:
description: ServiceAccount is the service account used by the pods
deployed by the CRD. If not specified uses the default serviceAccount
for the namespace as per https://kubernetes.io/docs/tasks/configure-pod-container/configure-service-account/#use-the-default-service-account-to-access-the-api-server
type: string
serviceTemplate:
description: ServiceTemplate is a template used to create Kubernetes
services
Expand Down Expand Up @@ -1087,9 +1104,6 @@ spec:
to setup the soft links from ../master-apps/splunk-operator/local/
to /mnt/splunk-operator/local/
type: string
storageClassName:
description: Name of StorageClass to use for persistent volume claims
type: string
tolerations:
description: Pod's tolerations for Kubernetes node's taint
items:
Expand Down Expand Up @@ -1130,10 +1144,20 @@ spec:
type: string
type: object
type: array
varStorage:
description: Storage capacity to request for /opt/splunk/var persistent
volume claims (default=”50Gi”)
type: string
varVolumeStorageConfig:
description: Storage configuration for /opt/splunk/var volume
properties:
ephemeralStorage:
description: If true, ephemeral (emptyDir) storage will be used
type: boolean
storageCapacity:
description: Storage capacity to request persistent volume claims
(default=”10Gi” for etc and "100Gi" for var)
type: string
storageClassName:
description: Name of StorageClass to use for persistent volume claims
type: string
type: object
volumes:
description: List of one or more Kubernetes volumes. These will be mounted
in all pod containers as as /mnt/<name>
Expand Down
56 changes: 38 additions & 18 deletions deploy/crds/enterprise.splunk.com_indexerclusters_crd.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -681,14 +681,26 @@ spec:
description: Full path or URL for one or more default.yml files, separated
by commas
type: string
ephemeralStorage:
description: If true, ephemeral (emptyDir) storage will be used for
/opt/splunk/etc and /opt/splunk/var volumes
type: boolean
etcStorage:
description: Storage capacity to request for /opt/splunk/etc persistent
volume claims (default=”1Gi”)
defaultsUrlApps:
description: Full path or URL for one or more defaults.yml files specific
to App install, separated by commas. The defaults listed here will
be installed on the CM, standalone, search head deployer or license
master instance.
type: string
etcVolumeStorageConfig:
description: Storage configuration for /opt/splunk/etc volume
properties:
ephemeralStorage:
description: If true, ephemeral (emptyDir) storage will be used
type: boolean
storageCapacity:
description: Storage capacity to request persistent volume claims
(default=”10Gi” for etc and "100Gi" for var)
type: string
storageClassName:
description: Name of StorageClass to use for persistent volume claims
type: string
type: object
image:
description: Image to use for Splunk pod containers (overrides RELATED_IMAGE_SPLUNK_ENTERPRISE
environment variables)
Expand Down Expand Up @@ -767,6 +779,11 @@ spec:
description: Name of Scheduler to use for pod placement (defaults to
“default-scheduler”)
type: string
serviceAccount:
description: ServiceAccount is the service account used by the pods
deployed by the CRD. If not specified uses the default serviceAccount
for the namespace as per https://kubernetes.io/docs/tasks/configure-pod-container/configure-service-account/#use-the-default-service-account-to-access-the-api-server
type: string
serviceTemplate:
description: ServiceTemplate is a template used to create Kubernetes
services
Expand Down Expand Up @@ -1005,9 +1022,6 @@ spec:
type: object
type: object
type: object
storageClassName:
description: Name of StorageClass to use for persistent volume claims
type: string
tolerations:
description: Pod's tolerations for Kubernetes node's taint
items:
Expand Down Expand Up @@ -1048,10 +1062,20 @@ spec:
type: string
type: object
type: array
varStorage:
description: Storage capacity to request for /opt/splunk/var persistent
volume claims (default=”50Gi”)
type: string
varVolumeStorageConfig:
description: Storage configuration for /opt/splunk/var volume
properties:
ephemeralStorage:
description: If true, ephemeral (emptyDir) storage will be used
type: boolean
storageCapacity:
description: Storage capacity to request persistent volume claims
(default=”10Gi” for etc and "100Gi" for var)
type: string
storageClassName:
description: Name of StorageClass to use for persistent volume claims
type: string
type: object
volumes:
description: List of one or more Kubernetes volumes. These will be mounted
in all pod containers as as /mnt/<name>
Expand Down Expand Up @@ -2325,10 +2349,6 @@ spec:
description: Indicates whether the master is ready to begin servicing,
based on whether it is initialized.
type: boolean
skip_recheck_update:
description: Indicates if we need to recheck the revision update on
pods
type: boolean
type: object
type: object
version: v1beta1
Expand Down
Loading