Skip to content

Serial mkfs #1169

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Merged
merged 3 commits into from
Mar 10, 2023
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
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
  •  
  •  
  •  
20 changes: 11 additions & 9 deletions cmd/gce-pd-csi-driver/main.go
Original file line number Diff line number Diff line change
Expand Up @@ -59,7 +59,9 @@ var (
waitForOpBackoffSteps = flag.Int("wait-op-backoff-steps", 100, "Steps for wait for operation backoff")
waitForOpBackoffCap = flag.Duration("wait-op-backoff-cap", 0, "Cap for wait for operation backoff")

maxprocs = flag.Int("maxprocs", 1, "GOMAXPROCS override")
maxProcs = flag.Int("maxprocs", 1, "GOMAXPROCS override")
maxConcurrentFormat = flag.Int("max-concurrent-format", 1, "The maximum number of concurrent format exec calls")
concurrentFormatTimeout = flag.Duration("concurrent-format-timeout", 1*time.Minute, "The maximum duration of a format operation before its concurrency token is released")

version string
)
Expand Down Expand Up @@ -88,7 +90,7 @@ func main() {
func handle() {
var err error

runtime.GOMAXPROCS(*maxprocs)
runtime.GOMAXPROCS(*maxProcs)
klog.Infof("Sys info: NumCPU: %v MAXPROC: %v", runtime.NumCPU(), runtime.GOMAXPROCS(0))

if version == "" {
Expand All @@ -110,16 +112,16 @@ func handle() {
klog.Fatalf("Bad extra volume labels: %v", err.Error())
}

gceDriver := driver.GetGCEDriver()

//Initialize GCE Driver
ctx, cancel := context.WithCancel(context.Background())
defer cancel()

//Initialize identity server
// Initialize driver
gceDriver := driver.GetGCEDriver()

// Initialize identity server
identityServer := driver.NewIdentityServer(gceDriver)

//Initialize requirements for the controller service
// Initialize requirements for the controller service
var controllerServer *driver.GCEControllerServer
if *runControllerService {
cloudProvider, err := gce.CreateCloudProvider(ctx, version, *cloudConfigFilePath, *computeEndpoint)
Expand All @@ -133,10 +135,10 @@ func handle() {
klog.Warningf("controller service is disabled but cloud config given - it has no effect")
}

//Initialize requirements for the node service
// Initialize requirements for the node service
var nodeServer *driver.GCENodeServer
if *runNodeService {
mounter, err := mountmanager.NewSafeMounter()
mounter, err := mountmanager.NewSafeMounter(*maxConcurrentFormat, *concurrentFormatTimeout)
if err != nil {
klog.Fatalf("Failed to get safe mounter: %v", err.Error())
}
Expand Down
75 changes: 23 additions & 52 deletions go.mod
Original file line number Diff line number Diff line change
Expand Up @@ -3,42 +3,42 @@ module sigs.k8s.io/gcp-compute-persistent-disk-csi-driver
go 1.19

require (
cloud.google.com/go/compute v1.7.0
cloud.google.com/go/kms v1.4.0
cloud.google.com/go/compute/metadata v0.2.3
cloud.google.com/go/kms v1.6.0
github.com/GoogleCloudPlatform/k8s-cloud-provider v1.18.0
github.com/container-storage-interface/spec v1.6.0
github.com/google/uuid v1.3.0
github.com/kubernetes-csi/csi-proxy/client v1.1.1
github.com/kubernetes-csi/csi-test/v4 v4.4.0
github.com/onsi/ginkgo/v2 v2.7.1
github.com/onsi/gomega v1.25.0
golang.org/x/oauth2 v0.0.0-20220722155238-128564f6959c
golang.org/x/sys v0.4.0
google.golang.org/api v0.86.0
google.golang.org/genproto v0.0.0-20220720214146-176da50484ac
google.golang.org/grpc v1.48.0
google.golang.org/protobuf v1.28.0
golang.org/x/oauth2 v0.5.0
golang.org/x/sys v0.5.0
google.golang.org/api v0.111.0
google.golang.org/genproto v0.0.0-20230223222841-637eb2293923
google.golang.org/grpc v1.53.0
google.golang.org/protobuf v1.28.1
gopkg.in/gcfg.v1 v1.2.3
k8s.io/api v0.24.1
k8s.io/apimachinery v0.24.1
k8s.io/client-go v11.0.1-0.20190805182717-6502b5e7b1b5+incompatible
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

You may be able to get rid of the replace statement if you put 0.24.1 here

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I already tried that and wrestled with this for a while:

$> go mod tidy
go: finding module for package k8s.io/api/settings/v1alpha1
go: finding module for package k8s.io/api/batch/v2alpha1
go: finding module for package github.com/googleapis/gnostic/OpenAPIv2
go: finding module for package k8s.io/api/auditregistration/v1alpha1
sigs.k8s.io/gcp-compute-persistent-disk-csi-driver/test/k8s-integration imports
        k8s.io/client-go/kubernetes imports
        k8s.io/client-go/discovery imports
        github.com/googleapis/gnostic/OpenAPIv2: module github.com/googleapis/gnostic@latest found (v0.6.9), but does not contain package github.com/googleapis/gnostic/OpenAPIv2
sigs.k8s.io/gcp-compute-persistent-disk-csi-driver/test/k8s-integration imports
        k8s.io/client-go/kubernetes imports
        k8s.io/client-go/kubernetes/typed/auditregistration/v1alpha1 imports
        k8s.io/api/auditregistration/v1alpha1: module k8s.io/api@latest found (v0.26.2), but does not contain package k8s.io/api/auditregistration/v1alpha1
sigs.k8s.io/gcp-compute-persistent-disk-csi-driver/test/k8s-integration imports
        k8s.io/client-go/kubernetes imports
        k8s.io/client-go/kubernetes/typed/batch/v2alpha1 imports
        k8s.io/api/batch/v2alpha1: module k8s.io/api@latest found (v0.26.2), but does not contain package k8s.io/api/batch/v2alpha1
sigs.k8s.io/gcp-compute-persistent-disk-csi-driver/test/k8s-integration imports
        k8s.io/client-go/kubernetes imports
        k8s.io/client-go/kubernetes/typed/settings/v1alpha1 imports
        k8s.io/api/settings/v1alpha1: module k8s.io/api@latest found (v0.26.2), but does not contain package k8s.io/api/settings/v1alpha1

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I believe that means that some of our dependencies need us to specify the version via replace.

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Looks like v11.0.1-0.20190805182717-6502b5e7b1b5+incompatible is arbitrary and doesn't show up in our go.sum file. Pulling the latest version is just a way for go mod tidy to satisfy the require directive syntax.

k8s.io/cloud-provider v0.24.1
k8s.io/component-base v0.24.1
k8s.io/klog/v2 v2.60.1
k8s.io/kubernetes v1.24.1
k8s.io/mount-utils v0.24.1
k8s.io/utils v0.0.0-20220713171938-56c0de1e6f5e
k8s.io/klog/v2 v2.90.1
k8s.io/mount-utils v0.27.0-alpha.3
k8s.io/utils v0.0.0-20230209194617-a36077c30491
sigs.k8s.io/boskos v0.0.0-20220711194915-6cb8a6fb2dd1
)

require (
cloud.google.com/go v0.103.0 // indirect
cloud.google.com/go/iam v0.3.0 // indirect
cloud.google.com/go/compute v1.18.0 // indirect
cloud.google.com/go/iam v0.11.0 // indirect
github.com/Microsoft/go-winio v0.4.17 // indirect
github.com/PuerkitoBio/purell v1.1.1 // indirect
github.com/PuerkitoBio/urlesc v0.0.0-20170810143723-de5bf2ad4578 // indirect
github.com/beorn7/perks v1.0.1 // indirect
github.com/blang/semver/v4 v4.0.0 // indirect
github.com/cespare/xxhash/v2 v2.1.2 // indirect
github.com/cespare/xxhash/v2 v2.2.0 // indirect
github.com/davecgh/go-spew v1.1.1 // indirect
github.com/emicklei/go-restful v2.9.5+incompatible // indirect
github.com/fsnotify/fsnotify v1.5.4 // indirect
Expand All @@ -52,15 +52,16 @@ require (
github.com/google/gnostic v0.5.7-v3refs // indirect
github.com/google/go-cmp v0.5.9 // indirect
github.com/google/gofuzz v1.2.1-0.20210504230335-f78f29fc09ea // indirect
github.com/googleapis/enterprise-certificate-proxy v0.1.0 // indirect
github.com/googleapis/gax-go/v2 v2.4.0 // indirect
github.com/googleapis/enterprise-certificate-proxy v0.2.3 // indirect
github.com/googleapis/gax-go/v2 v2.7.0 // indirect
github.com/hashicorp/errwrap v1.0.0 // indirect
github.com/hashicorp/go-multierror v1.1.0 // indirect
github.com/imdario/mergo v0.3.12 // indirect
github.com/josharian/intern v1.0.0 // indirect
github.com/json-iterator/go v1.1.12 // indirect
github.com/mailru/easyjson v0.7.7 // indirect
github.com/matttproud/golang_protobuf_extensions v1.0.2-0.20181231171920-c182affec369 // indirect
github.com/moby/sys/mountinfo v0.6.2 // indirect
github.com/modern-go/concurrent v0.0.0-20180306012644-bacd9c7ef1dd // indirect
github.com/modern-go/reflect2 v1.0.2 // indirect
github.com/munnerz/goautoneg v0.0.0-20191010083416-a7dc8b61c822 // indirect
Expand All @@ -73,53 +74,23 @@ require (
github.com/prometheus/procfs v0.7.3 // indirect
github.com/sirupsen/logrus v1.8.1 // indirect
github.com/spf13/pflag v1.0.5 // indirect
go.opencensus.io v0.23.0 // indirect
go.opencensus.io v0.24.0 // indirect
go4.org v0.0.0-20201209231011-d4a079459e60 // indirect
golang.org/x/net v0.5.0 // indirect
golang.org/x/term v0.4.0 // indirect
golang.org/x/text v0.6.0 // indirect
golang.org/x/net v0.7.0 // indirect
golang.org/x/term v0.5.0 // indirect
golang.org/x/text v0.7.0 // indirect
golang.org/x/time v0.0.0-20220210224613-90d013bbcef8 // indirect
google.golang.org/appengine v1.6.7 // indirect
gopkg.in/inf.v0 v0.9.1 // indirect
gopkg.in/tomb.v1 v1.0.0-20141024135613-dd632973f1e7 // indirect
gopkg.in/warnings.v0 v0.1.2 // indirect
gopkg.in/yaml.v2 v2.4.0 // indirect
gopkg.in/yaml.v3 v3.0.1 // indirect
k8s.io/api v0.24.1 // indirect
k8s.io/kube-openapi v0.0.0-20220328201542-3ee0da9b0b42 // indirect
k8s.io/test-infra v0.0.0-20210730160938-8ad9b8c53bd8 // indirect
sigs.k8s.io/json v0.0.0-20211208200746-9f7c6b3444d2 // indirect
sigs.k8s.io/structured-merge-diff/v4 v4.2.1 // indirect
sigs.k8s.io/yaml v1.3.0 // indirect
)

replace (
k8s.io/api => k8s.io/api v0.24.1
k8s.io/apiextensions-apiserver => k8s.io/apiextensions-apiserver v0.24.1
k8s.io/apimachinery => k8s.io/apimachinery v0.24.1
k8s.io/apiserver => k8s.io/apiserver v0.24.1
k8s.io/cli-runtime => k8s.io/cli-runtime v0.24.1
k8s.io/client-go => k8s.io/client-go v0.24.1
k8s.io/cloud-provider => k8s.io/cloud-provider v0.24.1
k8s.io/cluster-bootstrap => k8s.io/cluster-bootstrap v0.24.1
k8s.io/code-generator => k8s.io/code-generator v0.24.1
k8s.io/component-base => k8s.io/component-base v0.24.1
k8s.io/component-helpers => k8s.io/component-helpers v0.24.1
k8s.io/controller-manager => k8s.io/controller-manager v0.24.1
k8s.io/cri-api => k8s.io/cri-api v0.24.1
k8s.io/csi-translation-lib => k8s.io/csi-translation-lib v0.24.1
k8s.io/kube-aggregator => k8s.io/kube-aggregator v0.24.1
k8s.io/kube-controller-manager => k8s.io/kube-controller-manager v0.24.1
k8s.io/kube-proxy => k8s.io/kube-proxy v0.24.1
k8s.io/kube-scheduler => k8s.io/kube-scheduler v0.24.1
k8s.io/kubectl => k8s.io/kubectl v0.24.1
k8s.io/kubelet => k8s.io/kubelet v0.24.1
k8s.io/legacy-cloud-providers => k8s.io/legacy-cloud-providers v0.24.1
k8s.io/metrics => k8s.io/metrics v0.24.1
k8s.io/mount-utils => k8s.io/mount-utils v0.24.1
k8s.io/node-api => k8s.io/node-api v0.24.1
k8s.io/pod-security-admission => k8s.io/pod-security-admission v0.24.1
k8s.io/sample-apiserver => k8s.io/sample-apiserver v0.24.1
k8s.io/sample-cli-plugin => k8s.io/sample-cli-plugin v0.24.1
k8s.io/sample-controller => k8s.io/sample-controller v0.24.1
)
replace k8s.io/client-go => k8s.io/client-go v0.24.1
Loading