-
Notifications
You must be signed in to change notification settings - Fork 4.9k
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
Upgrade to 1.7.0-rc.1 #1584
Upgrade to 1.7.0-rc.1 #1584
Conversation
@minikube-bot retest this please |
1 similar comment
@minikube-bot retest this please |
Codecov Report
@@ Coverage Diff @@
## master #1584 +/- ##
=========================================
+ Coverage 38.65% 41.6% +2.94%
=========================================
Files 51 49 -2
Lines 2667 2341 -326
=========================================
- Hits 1031 974 -57
+ Misses 1455 1205 -250
+ Partials 181 162 -19
Continue to review full report at Codecov.
|
e4e1181
to
b723cee
Compare
f8a581b
to
e980b9c
Compare
Fixes #1532 |
@@ -63,7 +63,7 @@ func AddFlags(s *localkube.LocalkubeServer) { | |||
flag.StringVar(&s.APIServerName, "apiserver-name", s.APIServerName, "The apiserver name which is used in the generated certificate for localkube/kubernetes. This can be used if you want to make the API server available from outside the machine") | |||
|
|||
flag.BoolVar(&s.ShouldGenerateCerts, "generate-certs", s.ShouldGenerateCerts, "If localkube should generate it's own certificates") | |||
flag.BoolVar(&s.ShowVersion, "version", s.ShowVersion, "If localkube should just print the version and exit.") | |||
flag.BoolVar(&s.ShowVersion, "show-version", s.ShowVersion, "If localkube should just print the version and exit.") |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Why did this change?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
There's a bug where the kubernetes components are registering their flags. A component added their own version
flag.
It's polluting the localkube flag namespace
Usage of ./out/localkube:
--allow_verification_with_non_compliant_keys Allow a SignatureVerifier to use keys which are technically non-compliant with RFC6962.
--alsologtostderr log to standard error as well as files
--apiserver-address ip The address the apiserver will listen securely on (default 0.0.0.0)
--apiserver-insecure-address ip The address the apiserver will listen insecurely on (default 127.0.0.1)
--apiserver-insecure-port int The port the apiserver will listen insecurely on (default 8080)
--apiserver-name string The apiserver name which is used in the generated certificate for localkube/kubernetes. This can be used if you want to make the API server available from outside the machine (default "minikubeCA")
--apiserver-port int The port the apiserver will listen securely on (default 8443)
--application_metrics_count_limit int Max number of application metrics to store (per container) (default 100)
--azure-container-registry-config string Path to the file container Azure container registry configuration information.
--boot_id_file string Comma-separated list of files to check for boot-id. Use the first one that exists. (default "/proc/sys/kernel/random/boot_id")
--cloud-provider-gce-lb-src-cidrs cidrs CIDRS opened in GCE firewall for LB traffic proxy & health checks (default 130.211.0.0/22,35.191.0.0/16,209.85.152.0/22,209.85.204.0/22)
--container-runtime string The container runtime to be used
--container_hints string location of the container hints file (default "/etc/cadvisor/container_hints.json")
--containerized If kubelet should run in containerized mode
--default-not-ready-toleration-seconds int Indicates the tolerationSeconds of the toleration for notReady:NoExecute that is added by default to every pod that does not already have such a toleration. (default 300)
--default-unreachable-toleration-seconds int Indicates the tolerationSeconds of the toleration for unreachable:NoExecute that is added by default to every pod that does not already have such a toleration. (default 300)
--dns-domain string The cluster dns domain (default "cluster.local")
--dns-ip ip The cluster dns IP (default 10.0.0.10)
--docker string docker endpoint (default "unix:///var/run/docker.sock")
--docker_env_metadata_whitelist string a comma-separated list of environment variable keys that needs to be collected for docker containers
--docker_only Only report docker containers in addition to root stats
--docker_root string DEPRECATED: docker root is read from docker info (this is a fallback, default: /var/lib/docker) (default "/var/lib/docker")
--enable-dns DEPRECATED: Please run kube-dns as a cluster addon
--enable_load_reader Whether to enable cpu load reader
--event_storage_age_limit string Max length of time for which to store events (per type). Value is a comma separated list of key values, where the keys are event types (e.g.: creation, oom) or "default" and the value is a duration. Default is applied to all non-specified event types (default "default=0")
--event_storage_event_limit string Max number of events to store (per type). Value is a comma separated list of key values, where the keys are event types (e.g.: creation, oom) or "default" and the value is an integer. Default is applied to all non-specified event types (default "default=0")
--extra-config ExtraOption A set of key=value pairs that describe configuration that may be passed to different components. The key should be '.' separated, and the first part before the dot is the component to apply the configuration to.
--feature-gates string A set of key=value pairs that describe feature gates for alpha/experimental features.
--generate-certs If localkube should generate it's own certificates (default true)
--global_housekeeping_interval duration Interval between global housekeepings (default 1m0s)
--host-ip If localkube should just print the host IP and exit.
--housekeeping_interval duration Interval between container housekeepings (default 10s)
--ir-data-source string Data source used by InitialResources. Supported options: influxdb, gcm. (default "influxdb")
--ir-dbname string InfluxDB database name which contains metrics required by InitialResources (default "k8s")
--ir-hawkular string Hawkular configuration URL
--ir-influxdb-host string Address of InfluxDB which contains metrics required by InitialResources (default "localhost:8080/api/v1/namespaces/kube-system/services/monitoring-influxdb:api/proxy")
--ir-namespace-only Whether the estimation should be made only based on data from the same namespace.
--ir-password string Password used for connecting to InfluxDB (default "root")
--ir-percentile int Which percentile of samples should InitialResources use when estimating resources. For experiment purposes. (default 90)
--ir-user string User used for connecting to InfluxDB (default "root")
--localkube-directory string The directory localkube will store files in (default "/var/lib/localkube")
--log_backtrace_at traceLocation when logging hits line file:N, emit a stack trace (default :0)
--log_cadvisor_usage Whether to log the usage of the cAdvisor container
--log_dir string If non-empty, write log files in this directory
--loglevel int Log level (0 = DEBUG, 5 = FATAL) (default 1)
--logtostderr log to standard error instead of files
--machine_id_file string Comma-separated list of files to check for machine-id. Use the first one that exists. (default "/etc/machine-id,/var/lib/dbus/machine-id")
--network-plugin string The name of the network plugin
--node-ip ip IP address of the node. If set, kubelet will use this IP address for the node.
--runtime-config mapStringString A set of key=value pairs that describe runtime configuration that may be passed to apiserver. apis/<groupVersion> key can be used to turn on/off specific api versions. apis/<groupVersion>/<resource> can be used to turn on/off specific resources. api/all and api/legacy are special keys to control all and legacy api versions respectively. (default api/all=true)
--service-cluster-ip-range ipNet The service-cluster-ip-range for the apiserver (default 10.0.0.0/24)
--show-version If localkube should just print the version and exit.
--stderrthreshold severity logs at or above this threshold go to stderr (default 2)
--storage_driver_buffer_duration duration Writes in the storage driver will be buffered for this duration, and committed to the non memory backends as a single transaction (default 1m0s)
--storage_driver_db string database name (default "cadvisor")
--storage_driver_host string database host:port (default "localhost:8086")
--storage_driver_password string database password (default "root")
--storage_driver_secure use secure connection with database
--storage_driver_table string table name (default "stats")
--storage_driver_user string database username (default "root")
-v, --v Level log level for V logs
--version version[=true] Print version information and quit
--vmodule moduleSpec comma-separated list of pattern=N settings for file-filtered logging
I think this is happening at HEAD also, but the version
flag didn't exist.
Pushing these commits that upgrade from beta.1->beta.2->beta.3->rc.1 one at a time to go through the integration test cycle. |
LMK When this is ready for review. |
The changes are good, although I'm going to rebase the commits to make them a little easier to review |
I might avoid a full rebase on master for now, so that we can publish the rc.1. Then in the meantime I can rebase on master so that 1.7 will be mergable |
@dlorenc @aaron-prindle PTAL. This is the same changelist from yesterday, condensed into more review-able commits. It hasn't had a full rebase on master, but thats fine since there haven't been any localkube changes in master. |
* Added a godep-update-k8s script for upgrading. $ KUBE_VERSION ./hack/godeps/godep-update-k8s.sh * Added client-go version ldflags to localkube and minikube. The version package is now split in both kubernetes and client-go, so we need to supply both ldflags. * Change cross builds to use BUILD_IN_DOCKER * Add a patch for kube-proxy The setup of kube-proxy recently changed, making the registering of the component config a fatal error instead of a warning. This patch reverts it to be a warning, which is a no-op for us anyways since we don't supply a config file.
The k8s components are registering their flags on localkube, polluting the flag namespace. A 'version' flag was added, which conflicts with a localkube flag. Changing the name of this flag so that there is no conflict.
I rebased this on master, after the tests pass and reviews, I'll force push to the k8s-1.7 branch and push a new localkube |
Fixes #1172 |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Thanks for splitting out the commits this way.
Merging to the k8s-v1.7 branch
A few commits to upgrade to v1.7.0-beta.1
The only major updates are to the kube-proxy component, which changed a lot. We needed to add a single patch (which I will try to get added upstream, since it seems reasonable.)
We also need to generate the openapi package in kube, since kube-apiserver depends on it. I verified that this fixes #1365. I chose to use the bazel method of building the package, although we can very well use the non-bazel version.
I also cherry-picked the tpr patch and the dns fix to this branch as housekeeping.