Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
27 commits
Select commit Hold shift + click to select a range
cb332a7
e2e improvements
YashasG98 Jun 5, 2025
1725ef7
Helm related doc updates
YashasG98 Jun 30, 2025
c463f23
use readyz api for apiserver reachability
dhananjay-ng Jul 14, 2025
07aedcd
NSG Support with mount target creation
YashwantGohokar Jul 7, 2025
e75a376
Added lifecycle state check to boot volume e2e test
dhananjay-ng Jul 28, 2025
a90a44b
Added input validation on lnet label to fixing fortify command execut…
dhananjay-ng Aug 4, 2025
2d127c5
Fix CSI mount detection logic
YashasG98 Jul 21, 2025
bba8204
Improve CSI driver lookup logic for stale entries
YashasG98 Dec 4, 2025
012f370
Improving CSI Node Driver Unit test coverage
YashasG98 Dec 4, 2025
26c92ea
Updating external-snapshotter to v8.3.0
dhananjay-ng Feb 20, 2026
55ccf09
Adding Lustre controller csi driver
dhananjay-ng Jan 22, 2026
3f33f04
Tagging controller changes
Oct 13, 2025
ffad845
Adding unit test fixes
dhananjay-ng Mar 2, 2026
0512c8a
bumping golang version to 1.24.13
dhananjay-ng Mar 4, 2026
b7f35a7
Adding lustre controller driver OSS enablement
dhananjay-ng Feb 17, 2026
25866ee
Fixing bug in e2e test for load balancer
dhananjay-ng Mar 6, 2026
4336714
Fixing bug in lustre node driver to pick correct node internal ip for…
dhananjay-ng Mar 6, 2026
ca3b25d
upgrading oci go sdk to v65.109.0
dhananjay-ng Mar 6, 2026
3076f76
Building arch specifc images to not have manifest list
dhananjay-ng Feb 19, 2026
abfa91b
Fixing e2e flakiness
YashwantGohokar Jul 7, 2025
0fb1bdf
Propagate CSI Controller Publish/Unpublish errors to POD Events and V…
dhananjay-ng Aug 28, 2025
f66e477
Update CreateSnapshot to return no error with ReadyToUse false for la…
YashasG98 Oct 16, 2025
be73116
Adding manifest for release 1.32.2
dhananjay-ng Mar 4, 2026
0d91dc0
Update THIRD_PARTY_LICENSES.txt
dhananjay-ng Mar 8, 2026
5bda8e1
Update Makefile
dhananjay-ng Mar 8, 2026
7170d8f
Changing image tag in manifests
YashwantGohokar Mar 20, 2026
e1f926a
Adding documentation for Lustre FS provisioning
YashwantGohokar Mar 23, 2026
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
The table of contents is too big for display.
Diff view
Diff view
  •  
  •  
  •  
34 changes: 22 additions & 12 deletions .github/workflows/makefile.yml
Original file line number Diff line number Diff line change
Expand Up @@ -3,30 +3,40 @@ name: Unit Tests
on:
pull_request: {}
push: {}
# Prevent multiple runs from the same PR/branch from overlapping
concurrency:
group: ${{ github.workflow }}-${{ github.ref }}
cancel-in-progress: true

jobs:
build:
name: Build
runs-on: ubuntu-latest
# Added a job-level timeout as a safety net
timeout-minutes: 15
steps:
- name: Check out code
uses: actions/checkout@v4 # Upgraded

- name: Set up Go 1.x
uses: actions/setup-go@v2
- name: Set up Go
uses: actions/setup-go@v5 # Upgraded
with:
go-version: '1.22.9'
id: go
go-version: '1.24.13'
cache: true # Built-in caching for faster runs

- name: Check out code into the Go module directory
uses: actions/checkout@v2
- name: Install dependencies
run: |
go mod download
run: go mod download

- name: Run Unit Tests
env:
GOMEMLIMIT: 6GiB
# Added -v to see which specific test hangs if it fails again
run: |
go test -covermode=count -coverprofile=profile.cov ./pkg/...
- name: Install goveralls
run: go install github.com/mattn/goveralls@latest
go test -v -p 1 -covermode=count -coverprofile=profile.cov ./pkg/...

- name: Send coverage
env:
COVERALLS_TOKEN: ${{ secrets.GITHUB_TOKEN }}
run: |
goveralls -coverprofile=profile.cov -service=github
go install github.com/mattn/goveralls@latest
$(go env GOPATH)/bin/goveralls -coverprofile=profile.cov -service=github
2 changes: 1 addition & 1 deletion Dockerfile
Original file line number Diff line number Diff line change
Expand Up @@ -14,7 +14,7 @@

ARG CI_IMAGE_REGISTRY

FROM golang:1.23.4 as builder
FROM golang:1.24.13 as builder

ARG COMPONENT

Expand Down
2 changes: 1 addition & 1 deletion Dockerfile_arm_all
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
ARG CI_IMAGE_REGISTRY

FROM golang:1.23.4 as builder
FROM golang:1.24.13 as builder

ARG COMPONENT

Expand Down
6 changes: 3 additions & 3 deletions Makefile
Original file line number Diff line number Diff line change
Expand Up @@ -38,7 +38,7 @@ else
VERSION ?= ${VERSION}
endif

RELEASE = v1.32.1
RELEASE = v1.32.2

GOOS ?= linux
ARCH ?= amd64
Expand Down Expand Up @@ -147,9 +147,9 @@ run-volume-provisioner-dev:
BUILD_ARGS = --build-arg CI_IMAGE_REGISTRY="$(CI_IMAGE_REGISTRY)" --build-arg COMPONENT="$(COMPONENT)"
image:
docker build $(BUILD_ARGS) \
-t $(IMAGE)-amd64:$(VERSION) .
-t $(IMAGE)-amd64:$(VERSION) --provenance false .
docker build $(BUILD_ARGS) \
-t $(IMAGE)-arm64:$(VERSION) -f Dockerfile_arm_all .
-t $(IMAGE)-arm64:$(VERSION) --provenance false -f Dockerfile_arm_all .

.PHONY: push
push: image
Expand Down
98 changes: 80 additions & 18 deletions THIRD_PARTY_LICENSES.txt
Original file line number Diff line number Diff line change
Expand Up @@ -14,11 +14,13 @@ Copyright 2017 Oracle and/or its affiliates. All rights reserved.
Copyright 2017 The Kubernetes Authors.
Copyright 2018 Oracle and/or its affiliates. All rights reserved.
Copyright 2018 The Kubernetes Authors.
Copyright 2018-2026 Oracle and/or its affiliates. All rights reserved.
Copyright 2019 Oracle and/or its affiliates. All rights reserved.
Copyright 2020 Oracle and/or its affiliates. All rights reserved.
Copyright 2021 Oracle and/or its affiliates. All rights reserved.
Copyright 2022 Oracle and/or its affiliates. All rights reserved.
Copyright 2023 Oracle and/or its affiliates. All rights reserved.
Copyright 2026 Oracle and/or its affiliates. All rights reserved.

-------------------------- Fourth Party Dependencies ---------------------------

Expand Down Expand Up @@ -752,7 +754,8 @@ Copyright (c) 2016 Sergey Kamardin
github.com/gofrs/flock

== License Type
=== BSD-3-Clause-4e7459b3
=== BSD-3-Clause-ccdad8f4
Copyright (c) 2018-2024, The Gofrs
Copyright (c) 2015-2020, Tim Heckman
All rights reserved.

Expand Down Expand Up @@ -785,10 +788,10 @@ OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.

== Copyright
Copyright (c) 2015-2020, Tim Heckman
Copyright (c) 2018-2024, The Gofrs
Copyright 2015 Tim Heckman. All rights reserved.
Copyright 2018 The Go Authors. All rights reserved.
Copyright 2018 The Gofrs. All rights reserved.
Copyright 2019 Tim Heckman. All rights reserved. Use of this source code is
Copyright 2018-2024 The Gofrs. All rights reserved.

--------------------------------- (separator) ----------------------------------

Expand Down Expand Up @@ -1747,11 +1750,13 @@ SPDX:Apache-2.0
Copyright 2018 The Kubernetes Authors.
Copyright 2019 The Kubernetes Authors.
Copyright 2021 The Kubernetes Authors.
Copyright 2024 The Kubernetes Authors.
Copyright 2025 The Kubernetes Authors.

--------------------------------- (separator) ----------------------------------

== Dependency
github.com/kubernetes-csi/external-snapshotter/client/v6
github.com/kubernetes-csi/external-snapshotter/client/v8

== License Type
SPDX:Apache-2.0
Expand All @@ -1761,6 +1766,7 @@ Copyright 2018 The Kubernetes Authors.
Copyright 2019 The Kubernetes Authors.
Copyright 2020 The Kubernetes Authors.
Copyright 2023 The Kubernetes Authors.
Copyright 2024 The Kubernetes Authors.

--------------------------------- (separator) ----------------------------------

Expand Down Expand Up @@ -2204,14 +2210,14 @@ Copyright 2018 The Linux Foundation
github.com/oracle/oci-go-sdk/v65

== License Type
=== Apache-2.0-9010f56e
=== Apache-2.0-8653873d
=== UPL-1.0
=== Apache-2.0
Copyright (c) 2016, 2023, Oracle and/or its affiliates. All rights reserved.
Copyright (c) 2016, 2026, Oracle and/or its affiliates. All rights reserved.
This software is dual-licensed to you under the Universal Permissive License (UPL) 1.0 as shown at https://oss.oracle.com/licenses/upl
or Apache License 2.0 as shown at http://www.apache.org/licenses/LICENSE-2.0. You may choose either license.
 ____________________________
Copyright (c) 2016, 2023 Oracle and/or its affiliates.
Copyright (c) 2016, 2026 Oracle and/or its affiliates.

The Universal Permissive License (UPL), Version 1.0

Expand Down Expand Up @@ -2248,7 +2254,7 @@ OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
SOFTWARE.

The Apache Software License, Version 2.0
Copyright (c) 2016, 2018, Oracle and/or its affiliates. All rights reserved.
Copyright (c) 2016, 2016, Oracle and/or its affiliates. All rights reserved.

Licensed under the Apache License, Version 2.0 (the "License"); You may not use this product except in compliance with the License. You may obtain a copy of the License at http://www.apache.org/licenses/LICENSE-2.0. A copy of the license is also reproduced below. Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License.

Expand Down Expand Up @@ -2313,15 +2319,15 @@ END OF TERMS AND CONDITIONS


== Copyright
Copyright (c) 2016, 2018, 2020, Oracle and/or its affiliates.
Copyright (c) 2016, 2016, Oracle and/or its affiliates. All rights reserved.
Copyright (c) 2016, 2018, 2020, Oracle and/or its affiliates. All rights reserved.
Copyright (c) 2016, 2018, 2024, Oracle and/or its affiliates. All rights reserved.
Copyright (c) 2016, 2018, Oracle and/or its affiliates. All rights reserved.
Copyright (c) 2016, 2023 Oracle and/or its affiliates.
Copyright (c) 2016, 2023, Oracle and/or its affiliates. All rights reserved.
Copyright (c) 2016, 2018, 2026, Oracle and/or its affiliates.
Copyright (c) 2016, 2018, 2026, Oracle and/or its affiliates. All rights reserved.
Copyright (c) 2016, 2026 Oracle and/or its affiliates.
Copyright (c) 2016, 2026, Oracle and/or its affiliates. All rights reserved.

== Notices
Copyright (c) 2016, 2018, 2020, Oracle and/or its affiliates.
Copyright (c) 2016, 2018, 2026, Oracle and/or its affiliates.

--------------------------------- (separator) ----------------------------------

Expand Down Expand Up @@ -2634,6 +2640,7 @@ Copyright 2021 The Prometheus Authors
Copyright 2022 The Prometheus Authors
Copyright 2023 The Prometheus Authors
Copyright 2024 The Prometheus Authors
Copyright 2025 The Prometheus Authors

== Notices
Prometheus instrumentation library for Go applications
Expand Down Expand Up @@ -2689,7 +2696,6 @@ Copyright 2013 The Prometheus Authors
Copyright 2014 The Prometheus Authors
Copyright 2015 The Prometheus Authors
Copyright 2016 The Prometheus Authors
Copyright 2017 The Prometheus Authors
Copyright 2018 The Prometheus Authors
Copyright 2019 The Prometheus Authors
Copyright 2020 The Prometheus Authors
Expand Down Expand Up @@ -2972,6 +2978,17 @@ Copyright © 2016 Maxim Kupriianov <max@kc.vc>

--------------------------------- (separator) ----------------------------------

== Dependency
github.com/youmark/pkcs8

== License Type
SPDX:MIT

== Copyright
Copyright (c) 2014 youmark

--------------------------------- (separator) ----------------------------------

== Dependency
go.etcd.io/etcd/api/v3

Expand Down Expand Up @@ -3228,6 +3245,7 @@ Copyright 2021 The Go Authors. All rights reserved.
Copyright 2022 The Go Authors. All rights reserved.
Copyright 2023 The Go Authors. All rights reserved.
Copyright 2024 The Go Authors. All rights reserved.
Copyright 2025 The Go Authors. All rights reserved.

== Patents
Additional IP Rights Grant (Patents)
Expand Down Expand Up @@ -3391,6 +3409,7 @@ Copyright 2021 The Go Authors. All rights reserved.
Copyright 2022 The Go Authors. All rights reserved.
Copyright 2023 The Go Authors. All rights reserved.
Copyright 2024 The Go Authors. All rights reserved.
Copyright 2025 The Go Authors. All rights reserved.

== Patents
Additional IP Rights Grant (Patents)
Expand Down Expand Up @@ -3514,7 +3533,6 @@ Copyright 2013 The Go Authors. All rights reserved.
Copyright 2016 The Go Authors. All rights reserved.
Copyright 2017 The Go Authors. All rights reserved.
Copyright 2019 The Go Authors. All rights reserved.
Copyright 2023 The Go Authors. All rights reserved.

== Patents
Additional IP Rights Grant (Patents)
Expand Down Expand Up @@ -3923,6 +3941,7 @@ Copyright 2023 Google Inc. All rights reserved.
Copyright 2023 The Go Authors. All rights reserved.
Copyright 2024 Google Inc. All rights reserved.
Copyright 2024 The Go Authors. All rights reserved.
Copyright 2025 The Go Authors. All rights reserved.

== Patents
Additional IP Rights Grant (Patents)
Expand Down Expand Up @@ -4480,6 +4499,7 @@ Copyright 2021 The Kubernetes Authors.
Copyright 2022 The Go Authors. All rights reserved.
Copyright 2022 The Kubernetes Authors.
Copyright 2023 The Kubernetes Authors.
Copyright 2025 The Kubernetes Authors.

--------------------------------- (separator) ----------------------------------

Expand Down Expand Up @@ -4921,6 +4941,48 @@ Copyright 2020 The Kubernetes Authors.
Copyright 2021 The Kubernetes Authors.
Copyright 2022 The Kubernetes Authors.

--------------------------------- (separator) ----------------------------------

== Dependency
sigs.k8s.io/randfill

== License Type
SPDX:Apache-2.0

== Copyright
Copyright 2014 Google Inc. All rights reserved.
Copyright 2014 The gofuzz Authors
Copyright 2014 The gofuzz Authors.
Copyright 2025 The Kubernetes Authors
Copyright 2025 The Kubernetes Authors.

== Notices
When donating the randfill project to the CNCF, we could not reach all the
gofuzz contributors to sign the CNCF CLA. As such, according to the CNCF rules
to donate a repository, we must add a NOTICE referencing section 7 of the CLA
with a list of developers who could not be reached.

`7. Should You wish to submit work that is not Your original creation, You may
submit it to the Foundation separately from any Contribution, identifying the
complete details of its source and of any license or other restriction
(including, but not limited to, related patents, trademarks, and license
agreements) of which you are personally aware, and conspicuously marking the
work as "Submitted on behalf of a third-party: [named here]".`

Submitted on behalf of a third-party: @dnephin (Daniel Nephin)
Submitted on behalf of a third-party: @AlekSi (Alexey Palazhchenko)
Submitted on behalf of a third-party: @bbigras (Bruno Bigras)
Submitted on behalf of a third-party: @samirkut (Samir)
Submitted on behalf of a third-party: @posener (Eyal Posener)
Submitted on behalf of a third-party: @Ashikpaul (Ashik Paul)
Submitted on behalf of a third-party: @kwongtailau (Kwongtai)
Submitted on behalf of a third-party: @ericcornelissen (Eric Cornelissen)
Submitted on behalf of a third-party: @eclipseo (Robert-André Mauchin)
Submitted on behalf of a third-party: @yanzhoupan (Andrew Pan)
Submitted on behalf of a third-party: @STRRL (Zhiqiang ZHOU)
Submitted on behalf of a third-party: @disconnect3d (Disconnect3d)


--------------------------------- (separator) ----------------------------------

== Dependency
Expand Down Expand Up @@ -5864,5 +5926,5 @@ the Mozilla Public License, v. 2.0.


=== ATTRIBUTION-HELPER-GENERATED:
=== Attribution helper version: {Major:0 Minor:11 GitVersion:2a434e4d GitCommit:2a434e4d7eea22d4dfd2d1cf04909239d05562b1 GitTreeState:clean BuildDate:2024-12-16T20:09:06Z GoVersion:go1.21.13 Compiler:gc Platform:darwin/arm64}
=== License file based on go.mod with md5 sum: 18fc380a075697dda4318766ab152b00
=== Attribution helper version: {Major:unknown Minor:unknown GitVersion:unknown GitCommit:unknown GitTreeState:unknown BuildDate:unknown GoVersion:go1.22.3 Compiler:gc Platform:darwin/amd64}
=== License file based on go.mod with md5 sum: 204f08d1eec483e66034fe59fafe51b5
Original file line number Diff line number Diff line change
Expand Up @@ -24,7 +24,8 @@ import (
)

const (
bvCsiDriver = "BV"
bvCsiDriver = "BV"
lustreCsiDriver = "Lustre"
)

// StartControllerDriver main function to start CSI Controller Driver
Expand All @@ -45,6 +46,9 @@ func StartControllerDriver(csioptions csioptions.CSIOptions, csiDriver driver.CS
if csiDriver == bvCsiDriver {
controllerDriverConfig := &driver.ControllerDriverConfig{CsiEndpoint: csioptions.Endpoint, CsiKubeConfig: csioptions.Kubeconfig, CsiMaster: csioptions.Master, EnableControllerServer: true, DriverName: driver.BlockVolumeDriverName, DriverVersion: driver.BlockVolumeDriverVersion, ClusterIpFamily: clusterIpFamily}
drv, err = driver.NewControllerDriver(logger, *controllerDriverConfig)
} else if csiDriver == lustreCsiDriver {
controllerDriverConfig := &driver.ControllerDriverConfig{CsiEndpoint: csioptions.LustreEndpoint, CsiKubeConfig: csioptions.Kubeconfig, CsiMaster: csioptions.Master, EnableControllerServer: true, DriverName: driver.LustreDriverName, DriverVersion: driver.LustreDriverVersion, ClusterIpFamily: clusterIpFamily}
drv, err = driver.NewControllerDriver(logger, *controllerDriverConfig)
} else {
controllerDriverConfig := &driver.ControllerDriverConfig{CsiEndpoint: csioptions.FssEndpoint, CsiKubeConfig: csioptions.Kubeconfig, CsiMaster: csioptions.Master, EnableControllerServer: true, DriverName: driver.FSSDriverName, DriverVersion: driver.FSSDriverVersion, ClusterIpFamily: clusterIpFamily}
drv, err = driver.NewControllerDriver(logger, *controllerDriverConfig)
Expand Down
Loading
Loading