Skip to content

Commit d8f2d7e

Browse files
committed
better deprecated flag handling + vendor update
The warning for the deprecated connection-timeout was only printed when it was set to a non-default value. When set explicitly to zero (admittedly unlikely), no warning was printed. This approach also gets rid of the actual variable and thus catches code which accidentally still uses it (see #239). This depends on a more recent csi-lib-utils. Because the previous vendoring was done with an older dep version, "dep ensure -update" cannot update just that project, so everything gets updated instead.
1 parent 95d4977 commit d8f2d7e

28 files changed

+838
-195
lines changed

Gopkg.lock

Lines changed: 14 additions & 12 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

Gopkg.toml

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -25,10 +25,9 @@
2525
name = "github.com/container-storage-interface/spec"
2626
version = "1.0"
2727

28-
# TODO: update to latest
2928
[[constraint]]
3029
name = "github.com/kubernetes-csi/csi-test"
31-
version = "~v1.0.3"
30+
version = "2.0"
3231

3332
# TODO: remove when official 3.0.0 tagged
3433
[[constraint]]

cmd/csi-provisioner/csi-provisioner.go

Lines changed: 3 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -27,6 +27,7 @@ import (
2727

2828
flag "github.com/spf13/pflag"
2929

30+
"github.com/kubernetes-csi/csi-lib-utils/deprecatedflags"
3031
ctrl "github.com/kubernetes-csi/external-provisioner/pkg/controller"
3132
snapclientset "github.com/kubernetes-csi/external-snapshotter/pkg/client/clientset/versioned"
3233
"sigs.k8s.io/sig-storage-lib-external-provisioner/controller"
@@ -47,7 +48,7 @@ var (
4748
master = flag.String("master", "", "Master URL to build a client config from. Either this or kubeconfig needs to be set if the provisioner is being run out of cluster.")
4849
kubeconfig = flag.String("kubeconfig", "", "Absolute path to the kubeconfig file. Either this or master needs to be set if the provisioner is being run out of cluster.")
4950
csiEndpoint = flag.String("csi-address", "/run/csi/socket", "The gRPC endpoint for Target CSI Volume.")
50-
connectionTimeout = flag.Duration("connection-timeout", 0, "This option is deprecated.")
51+
_ = deprecatedflags.Add("connection-timeout")
5152
volumeNamePrefix = flag.String("volume-name-prefix", "pvc", "Prefix to apply to the name of a created volume.")
5253
volumeNameUUIDLength = flag.Int("volume-name-uuid-length", -1, "Truncates generated UUID of a created volume to this length. Defaults behavior is to NOT truncate.")
5354
showVersion = flag.Bool("version", false, "Show version.")
@@ -56,7 +57,7 @@ var (
5657
retryIntervalMax = flag.Duration("retry-interval-max", 5*time.Minute, "Maximum retry interval of failed provisioning or deletion.")
5758
workerThreads = flag.Uint("worker-threads", 100, "Number of provisioner worker threads, in other words nr. of simultaneous CSI calls.")
5859
operationTimeout = flag.Duration("timeout", 10*time.Second, "Timeout for waiting for creation or deletion of a volume")
59-
provisioner = flag.String("provisioner", "", "This option is deprecated")
60+
_ = deprecatedflags.Add("provisioner")
6061

6162
featureGates map[string]bool
6263
provisionController *controller.ProvisionController
@@ -75,13 +76,6 @@ func init() {
7576
flag.Set("logtostderr", "true")
7677
flag.Parse()
7778

78-
if *connectionTimeout != 0 {
79-
klog.Warningf("Warning: option -connection-timeout is deprecated and has no effect")
80-
}
81-
if *provisioner != "" {
82-
klog.Warningf("Warning: option -provisioner is deprecated and has no effect")
83-
}
84-
8579
if err := utilfeature.DefaultFeatureGate.SetFromMap(featureGates); err != nil {
8680
klog.Fatal(err)
8781
}

vendor/github.com/kubernetes-csi/csi-lib-utils/deprecatedflags/deprecatedflags.go

Lines changed: 57 additions & 0 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

vendor/github.com/kubernetes-csi/csi-test/.travis.yml

Lines changed: 1 addition & 0 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

vendor/github.com/kubernetes-csi/csi-test/driver/driver-controller.go

Lines changed: 110 additions & 0 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

0 commit comments

Comments
 (0)