mirror of
https://github.com/kubernetes/sample-controller.git
synced 2025-01-20 16:42:51 +08:00
Merge pull request #64122 from ixdy/update-rules_go-and-gazelle
Automatic merge from submit-queue (batch tested with PRs 64122, 64936, 65288, 65383). If you want to cherry-pick this change to another branch, please follow the instructions <a href="https://github.com/kubernetes/community/blob/master/contributors/devel/cherry-picks.md">here</a>. Update to rules_go 0.12.1 and gazelle 0.12.0 and perform related cleanups **What this PR does / why we need it**: my initial intent was to simply update to rules_go 0.12.1 and gazelle 0.12.0. A few internal changes / deprecations meant that I finally needed to clean up some technical debt. This also fixes #64122. I've attempted to keep the steps as separate commits to make it easier to review: 1. Disable gazelle proto rule generation; legacy proto rules are deprecated, and we don't (currently) build protos at build time anyway, instead generating them with `hack/update-generated-protobuf.sh` and then checking them in. We can revisit this in the future if we'd like. 2. Remove the legacy `go_default_library_protos` filegroups using [buildozer](https://github.com/bazelbuild/buildtools/tree/master/buildozer). We don't use these, anyway. 3. Update the rules_go bazel workspace dependency to 0.12.1. 4. Vendor gazelle 0.12.0 and update BUILD files with `hack/update-bazel.sh`. This causes a lot of diffs, because `select()`s are no longer used in `srcs` attributes, external tests are folded into non-external tests, and vendored targets get an `importmap` attribute. 5. Set `gazelle:prefix` on `staging/src/BUILD` to make gazelle treat these correctly(ish). This allows us to remove the sed rewrite hack in `hack/update-bazel.sh`. 6. Explicitly set `# gazelle:importmap_prefix k8s.io/kubernetes/vendor` on `vendor/`, so that all vendored dependencies get the right importmap. gazelle 0.12.0 uses the bazel workspace name + `vendor/` as a prefix, which doesn't work with native go. Newer gazelle will use the go prefix (https://github.com/bazelbuild/bazel-gazelle/pull/207), but it's not released yet. Setting this correctly now also fixes later `BUILD` churn. 7. Re-run `hack/update-bazel.sh`. This causes a bunch of diffs, since anything under `staging/src` now uses the `staging/src/` path instead of `vendor/`. (Both would work for bazel, but gazelle uses the former, since `vendor/` uses symlinks.) Also `importmap`s under `vendor/` are fixed. 8. Reformat a few files (using [buildifier](https://github.com/bazelbuild/buildtools/tree/master/buildifier)) to make later diffs easier to read. 9. Rework the `go_genrule` rules to use the new `go_genrule` from https://github.com/kubernetes/repo-infra/pull/72, which is more bazely, since it uses the rules_go `go_path` rule instead of lots of shell. 10. Remove the deprecated `go_prefix` rule from the root BUILD.bazel file. 11. Set `# gazelle:importmap_prefix k8s.io/kubernetes/vendor` on `staging/src` as well, which ensures that these repos are treated as vendored dependencies. (It's basically the bazel-y way of doing the `vendor/k8s.io` symlinks.) 12. Run `hack/update-bazel.sh` one last time to fix all of the `importmap`s under `staging/src`. Note re: point 6 above - we're pretty much ignoring the `vendor/k8s.io` symlinks entirely now under bazel. Using the `gazelle:prefix` directive ensures these get mapped into the right go importpath, and the `go_path` rule installs these correctly now too. **Special notes for your reviewer**: this should not be submitted before https://github.com/kubernetes/repo-infra/pull/72, obviously. **Release note**: ```release-note NONE ``` /assign @BenTheElder @fejta @thockin cc @cblecker @jayconrod Kubernetes-commit: 1ad1c8c7f80d99b9625924b2102a04a555162bfb
This commit is contained in:
commit
9aa972043f
452
Godeps/Godeps.json
generated
452
Godeps/Godeps.json
generated
File diff suppressed because it is too large
Load Diff
8
vendor/k8s.io/api/core/v1/generated.proto
generated
vendored
8
vendor/k8s.io/api/core/v1/generated.proto
generated
vendored
@ -3733,6 +3733,7 @@ message ScaleIOPersistentVolumeSource {
|
||||
optional string storagePool = 6;
|
||||
|
||||
// Indicates whether the storage for a volume should be ThickProvisioned or ThinProvisioned.
|
||||
// Default is ThinProvisioned.
|
||||
// +optional
|
||||
optional string storageMode = 7;
|
||||
|
||||
@ -3742,7 +3743,8 @@ message ScaleIOPersistentVolumeSource {
|
||||
|
||||
// Filesystem type to mount.
|
||||
// Must be a filesystem type supported by the host operating system.
|
||||
// Ex. "ext4", "xfs", "ntfs". Implicitly inferred to be "ext4" if unspecified.
|
||||
// Ex. "ext4", "xfs", "ntfs".
|
||||
// Default is "xfs"
|
||||
// +optional
|
||||
optional string fsType = 9;
|
||||
|
||||
@ -3777,6 +3779,7 @@ message ScaleIOVolumeSource {
|
||||
optional string storagePool = 6;
|
||||
|
||||
// Indicates whether the storage for a volume should be ThickProvisioned or ThinProvisioned.
|
||||
// Default is ThinProvisioned.
|
||||
// +optional
|
||||
optional string storageMode = 7;
|
||||
|
||||
@ -3786,7 +3789,8 @@ message ScaleIOVolumeSource {
|
||||
|
||||
// Filesystem type to mount.
|
||||
// Must be a filesystem type supported by the host operating system.
|
||||
// Ex. "ext4", "xfs", "ntfs". Implicitly inferred to be "ext4" if unspecified.
|
||||
// Ex. "ext4", "xfs", "ntfs".
|
||||
// Default is "xfs".
|
||||
// +optional
|
||||
optional string fsType = 9;
|
||||
|
||||
|
8
vendor/k8s.io/api/core/v1/types.go
generated
vendored
8
vendor/k8s.io/api/core/v1/types.go
generated
vendored
@ -1339,6 +1339,7 @@ type ScaleIOVolumeSource struct {
|
||||
// +optional
|
||||
StoragePool string `json:"storagePool,omitempty" protobuf:"bytes,6,opt,name=storagePool"`
|
||||
// Indicates whether the storage for a volume should be ThickProvisioned or ThinProvisioned.
|
||||
// Default is ThinProvisioned.
|
||||
// +optional
|
||||
StorageMode string `json:"storageMode,omitempty" protobuf:"bytes,7,opt,name=storageMode"`
|
||||
// The name of a volume already created in the ScaleIO system
|
||||
@ -1346,7 +1347,8 @@ type ScaleIOVolumeSource struct {
|
||||
VolumeName string `json:"volumeName,omitempty" protobuf:"bytes,8,opt,name=volumeName"`
|
||||
// Filesystem type to mount.
|
||||
// Must be a filesystem type supported by the host operating system.
|
||||
// Ex. "ext4", "xfs", "ntfs". Implicitly inferred to be "ext4" if unspecified.
|
||||
// Ex. "ext4", "xfs", "ntfs".
|
||||
// Default is "xfs".
|
||||
// +optional
|
||||
FSType string `json:"fsType,omitempty" protobuf:"bytes,9,opt,name=fsType"`
|
||||
// Defaults to false (read/write). ReadOnly here will force
|
||||
@ -1374,6 +1376,7 @@ type ScaleIOPersistentVolumeSource struct {
|
||||
// +optional
|
||||
StoragePool string `json:"storagePool,omitempty" protobuf:"bytes,6,opt,name=storagePool"`
|
||||
// Indicates whether the storage for a volume should be ThickProvisioned or ThinProvisioned.
|
||||
// Default is ThinProvisioned.
|
||||
// +optional
|
||||
StorageMode string `json:"storageMode,omitempty" protobuf:"bytes,7,opt,name=storageMode"`
|
||||
// The name of a volume already created in the ScaleIO system
|
||||
@ -1381,7 +1384,8 @@ type ScaleIOPersistentVolumeSource struct {
|
||||
VolumeName string `json:"volumeName,omitempty" protobuf:"bytes,8,opt,name=volumeName"`
|
||||
// Filesystem type to mount.
|
||||
// Must be a filesystem type supported by the host operating system.
|
||||
// Ex. "ext4", "xfs", "ntfs". Implicitly inferred to be "ext4" if unspecified.
|
||||
// Ex. "ext4", "xfs", "ntfs".
|
||||
// Default is "xfs"
|
||||
// +optional
|
||||
FSType string `json:"fsType,omitempty" protobuf:"bytes,9,opt,name=fsType"`
|
||||
// Defaults to false (read/write). ReadOnly here will force
|
||||
|
8
vendor/k8s.io/api/core/v1/types_swagger_doc_generated.go
generated
vendored
8
vendor/k8s.io/api/core/v1/types_swagger_doc_generated.go
generated
vendored
@ -1854,9 +1854,9 @@ var map_ScaleIOPersistentVolumeSource = map[string]string{
|
||||
"sslEnabled": "Flag to enable/disable SSL communication with Gateway, default false",
|
||||
"protectionDomain": "The name of the ScaleIO Protection Domain for the configured storage.",
|
||||
"storagePool": "The ScaleIO Storage Pool associated with the protection domain.",
|
||||
"storageMode": "Indicates whether the storage for a volume should be ThickProvisioned or ThinProvisioned.",
|
||||
"storageMode": "Indicates whether the storage for a volume should be ThickProvisioned or ThinProvisioned. Default is ThinProvisioned.",
|
||||
"volumeName": "The name of a volume already created in the ScaleIO system that is associated with this volume source.",
|
||||
"fsType": "Filesystem type to mount. Must be a filesystem type supported by the host operating system. Ex. \"ext4\", \"xfs\", \"ntfs\". Implicitly inferred to be \"ext4\" if unspecified.",
|
||||
"fsType": "Filesystem type to mount. Must be a filesystem type supported by the host operating system. Ex. \"ext4\", \"xfs\", \"ntfs\". Default is \"xfs\"",
|
||||
"readOnly": "Defaults to false (read/write). ReadOnly here will force the ReadOnly setting in VolumeMounts.",
|
||||
}
|
||||
|
||||
@ -1872,9 +1872,9 @@ var map_ScaleIOVolumeSource = map[string]string{
|
||||
"sslEnabled": "Flag to enable/disable SSL communication with Gateway, default false",
|
||||
"protectionDomain": "The name of the ScaleIO Protection Domain for the configured storage.",
|
||||
"storagePool": "The ScaleIO Storage Pool associated with the protection domain.",
|
||||
"storageMode": "Indicates whether the storage for a volume should be ThickProvisioned or ThinProvisioned.",
|
||||
"storageMode": "Indicates whether the storage for a volume should be ThickProvisioned or ThinProvisioned. Default is ThinProvisioned.",
|
||||
"volumeName": "The name of a volume already created in the ScaleIO system that is associated with this volume source.",
|
||||
"fsType": "Filesystem type to mount. Must be a filesystem type supported by the host operating system. Ex. \"ext4\", \"xfs\", \"ntfs\". Implicitly inferred to be \"ext4\" if unspecified.",
|
||||
"fsType": "Filesystem type to mount. Must be a filesystem type supported by the host operating system. Ex. \"ext4\", \"xfs\", \"ntfs\". Default is \"xfs\".",
|
||||
"readOnly": "Defaults to false (read/write). ReadOnly here will force the ReadOnly setting in VolumeMounts.",
|
||||
}
|
||||
|
||||
|
4
vendor/k8s.io/apimachinery/pkg/util/wait/wait.go
generated
vendored
4
vendor/k8s.io/apimachinery/pkg/util/wait/wait.go
generated
vendored
@ -230,13 +230,13 @@ func pollInternal(wait WaitFunc, condition ConditionFunc) error {
|
||||
// PollImmediate tries a condition func until it returns true, an error, or the timeout
|
||||
// is reached.
|
||||
//
|
||||
// Poll always checks 'condition' before waiting for the interval. 'condition'
|
||||
// PollImmediate always checks 'condition' before waiting for the interval. 'condition'
|
||||
// will always be invoked at least once.
|
||||
//
|
||||
// Some intervals may be missed if the condition takes too long or the time
|
||||
// window is too short.
|
||||
//
|
||||
// If you want to Poll something forever, see PollInfinite.
|
||||
// If you want to immediately Poll something forever, see PollImmediateInfinite.
|
||||
func PollImmediate(interval, timeout time.Duration, condition ConditionFunc) error {
|
||||
return pollImmediateInternal(poller(interval, timeout), condition)
|
||||
}
|
||||
|
Loading…
Reference in New Issue
Block a user