mirror of
https://github.com/kubernetes/sample-controller.git
synced 2026-04-12 00:00:26 +08:00
b24841bd57
Automatic merge from submit-queue (batch tested with PRs 66602, 67178, 67207, 67125, 66332). 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>. Vendor cfssl/cfssljson utilities **What this PR does / why we need it**: Vendors the `cfssl` and `cfssljson` tools. Updates `kube::util::ensure-cfssl` to use them. **Which issue(s) this PR fixes** *(optional, in `fixes #<issue number>(, fixes #<issue_number>, ...)` format, will close the issue(s) when PR gets merged)*: fixes #66995, fixes #60070 **Special notes for your reviewer**: 1. Add cfssl/cfssljson ot the required bins for saving 2. Manually cloned/checked out the new dependencies to my gopath. `godep restore` doesn't pull them down because they aren't required or already in the `Godeps.json`. Used @BenTheElder's list here: https://github.com/kubernetes/kubernetes/issues/66995#issuecomment-410594532 3. `hack/godep-save.sh` to add the packages and dependencies to godep 4. Fixed two bugs when building: a. `golang.org/x/crypto` needed to be updated b. `github.com/cloudflare/cfssl` needed to be updated to https://github.com/cloudflare/cfssl/commit/56268a613adfed278936377c18b1152d2c4ad5da so we can vendor their fork of `crypto/tls`, as we discard their modified vendored stdlib. 5. Update staging godeps 6. Update the `kube::util::ensure-cfssl` to install from vendor **Release note**: ```release-note NONE ``` Kubernetes-commit: 818e632c1fde5fb01bc8ccf9b9ee6201f33a28b4
40 lines
1.1 KiB
Go
40 lines
1.1 KiB
Go
/*
|
|
Copyright 2018 The Kubernetes Authors.
|
|
|
|
Licensed under the Apache License, Version 2.0 (the "License");
|
|
you may not use this file except in compliance with the License.
|
|
You may obtain a copy of the License at
|
|
|
|
http://www.apache.org/licenses/LICENSE-2.0
|
|
|
|
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.
|
|
*/
|
|
|
|
package args
|
|
|
|
import (
|
|
"fmt"
|
|
|
|
"k8s.io/gengo/args"
|
|
)
|
|
|
|
// NewDefaults returns default arguments for the generator.
|
|
func NewDefaults() *args.GeneratorArgs {
|
|
genericArgs := args.Default().WithoutDefaultFlagParsing()
|
|
genericArgs.OutputFileBaseName = "zz_generated.register"
|
|
return genericArgs
|
|
}
|
|
|
|
// Validate checks the given arguments.
|
|
func Validate(genericArgs *args.GeneratorArgs) error {
|
|
if len(genericArgs.OutputFileBaseName) == 0 {
|
|
return fmt.Errorf("output file base name cannot be empty")
|
|
}
|
|
|
|
return nil
|
|
}
|