Commit Graph

229 Commits (196789f965f46f706966b4edb652658b7193e247)

Author SHA1 Message Date
Thomas Strömberg 9d09ff069b
Merge pull request #4229 from medyagh/no_proxy_for_self
Allow minikube to function with misconfigured NO_PROXY value
2019-05-20 11:22:12 -07:00
Jan Janik 21b9e95647 Whitelist for kubeadm extra args 2019-05-17 17:11:03 +12:00
Medya Gh 3ff806a595 Added unittest and rebase 2019-05-16 14:44:01 -07:00
Medya Gh e878f9badb Merge remote-tracking branch 'upstream/master' into no_proxy_for_self 2019-05-15 14:19:14 -07:00
Medya Gh b9149b1eb0 Better name 2019-05-15 11:44:31 -07:00
Medya Gh 6fe614efa7 Fix stutter between the package name and the function 2019-05-15 11:34:21 -07:00
Medya Gh 8120cdd505 No Proxy for Dashboard and moving logic to proxy package 2019-05-14 21:45:35 -07:00
tstromberg 313cf575fe Merge branch 'master' into gomods 2019-05-14 21:06:00 -07:00
Medya Gh 6a433d01bf Fixing K8S Client Config with TranportWrap 2019-05-14 20:16:44 -07:00
Thomas Stromberg 25579f5a58 Use consistent names for k8s API imports 2019-05-13 21:57:59 -07:00
tstromberg 9a9f9edf5f First pass at lint-ageddon 2019-05-13 18:31:55 -07:00
Himanshu Pandey c8af727416 Added tests to check current-context on start and stop of minikube 2019-04-30 15:32:40 -07:00
Himanshu Pandey df0a0ad77c Unset the current-context on minikube stop 2019-04-30 00:02:05 -07:00
Anders F Björklund a73dfc5f9e Merge branch 'master' into cyclo 2019-04-12 20:03:20 +02:00
Benn Linger d102550644 Fixed status checking with non-default apiserver-port. 2019-04-04 21:43:43 -04:00
Jan Janik e3cd27264d Escape systemd special chars in —docker-env 2019-03-29 16:56:51 +13:00
Anders F Björklund 4667c28164 Merge branch 'master' into cyclo 2019-03-26 07:16:28 +01:00
Thomas Strömberg 460ef571e2
Merge branch 'master' into lint 2019-03-21 11:32:47 -07:00
Thomas Stromberg 605088ff72 Keep Initializers as the first element, fix v1.14 test which still included Initializers 2019-03-20 17:23:07 -07:00
Thomas Stromberg 88091b2323 Fix DefaultLegacyAdmissionControllers comment 2019-03-20 16:45:39 -07:00
Anders F Björklund 03bdce47ee Decrease cyclomatic complexity for test
Mostly by using the "extract method" pattern.

Here was the report (from gocyclo), before:

17 tunnel TestTunnelManagerCleanup pkg/minikube/tunnel/tunnel_manager_test.go:174:1
44 tunnel TestTunnel pkg/minikube/tunnel/tunnel_test.go:35:1
34 kubeconfig configEquals pkg/util/kubeconfig/config_test.go:420:1
25 integration testMounting test/integration/mount_test.go:36:1
18 integration testTunnel test/integration/tunnel_test.go:37:1
2019-03-16 23:04:24 +01:00
Anders F Björklund 00c9846a19 Decrease cyclomatic complexity for code
Mostly by using the "extract method" pattern.

Here was the report (from gocyclo), before:

16 kubeadm (*KubeadmBootstrapper).UpdateCluster pkg/minikube/bootstrapper/kubeadm/kubeadm.go:374:1
16 cluster StartHost pkg/minikube/cluster/cluster.go:64:1
16 tunnel setupRoute pkg/minikube/tunnel/tunnel.go:135:1
16 provision configureAuth pkg/provision/buildroot.go:218:1
21 util setElement pkg/util/config.go:50:1
2019-03-16 22:18:14 +01:00
Anders F Björklund 5497b966be Rename stutter and move classes between packages
Removing the kubeconfig module is probably not a big deal,
since it was already hiding under the "util" directory...

But the layout of the Bootstrapper is slightly irritating,
as long as it is contained in a different "kubeadm" module.
2019-03-16 16:57:56 +01:00
Anders F Björklund edf46f003f Document all exported functions outside minikube 2019-03-16 16:57:37 +01:00
Thomas Stromberg 327fdd8d4b Update kubeadm config generation to be compatible with v1.14.0-beta.1 2019-03-06 13:32:33 -08:00
Anders F Björklund 46640cef68 Address all lint except undocumented and stutter
These two lint warnings still remain, after the cleanup:
"exported ... should have comment or be unexported"

"type name will be used as foo.FooBar by other packages,
 and that stutters; consider calling this Bar"
2019-03-02 22:03:55 +01:00
Thomas Stromberg a2865f183a Back to the original 10 minute timeout :( 2019-03-01 10:50:39 -08:00
Thomas Stromberg c40602b327 ReasonableStartTime = 8, for folks with CrashLooping DNS on none 2019-02-28 16:40:46 -08:00
Thomas Stromberg 3b2a81d409 Increase ReasonableStartTime from 5 to 9 minutes 2019-02-28 16:26:42 -08:00
Thomas Stromberg 6a18ad9bc5 Reduce wait times, and wait more consistently 2019-02-13 21:15:46 -08:00
Thomas Stromberg 6c48048538 Merge from hell #2: refactor start.go because it's terrible 2019-02-08 13:37:29 -08:00
Thomas Stromberg d1b0d0470a Initial console implementation 2019-02-06 22:00:30 -08:00
Thomas Strömberg 7b32547cf6
Merge pull request #3108 from sebcworks/sebcworks-customapiserverport
Allow to specify api server port through CLI fix #2781
2019-01-15 16:43:42 -08:00
Thomas Strömberg ae4221b3fb
Merge pull request #3475 from tstromberg/intlogs
tee party: Stream cmd output to tests when -v is enabled, and stream SSH output to logs
2018-12-20 17:21:34 -08:00
Thomas Stromberg fcaf89666f Decrease log noise by logging retry loops after the initial attempt 2018-12-20 10:27:47 -08:00
Thomas Stromberg 7f7587d96c Rename TeeWithPrefix to TeePrefix to match Go idioms 2018-12-20 09:54:09 -08:00
Thomas Stromberg 9b707fe234 Add TeeWithPrefix to ssh_runner as well 2018-12-19 17:03:55 -08:00
priyawadhwa 8f128a7d10 Enable gvisor addon in minikube (#3399)
This PR adds the code for enabling gvisor in minikube. It adds the pod
that will run when the addon is enabled, and the code for the image
which will run when this happens.

When gvisor is enabled, the pod will download runsc and the
gvisor-containerd-shim. It will replace the containerd config.toml and
restart containerd.

When gvisor is disabled, the pod will be deleted by the addon manager.
This will trigger a pre-stop hook which will revert the config.toml to
it's original state and restart containerd.
2018-12-07 15:27:22 -08:00
mikeweiwei 3deef5345d fix logging calls (#3315) 2018-11-13 13:53:50 -08:00
Bily Zhang b9a4f9459f Fix some typos (#3302)
Signed-off-by: mooncake <xcoder@tenxcloud.com>
2018-11-06 12:36:13 -05:00
xichengliudui 52f37d9623 Fix typo miniube-iso -> minikube-iso 2018-11-05 02:06:30 -05:00
Thomas Strömberg 2621bb3a27
Merge pull request #3187 from tstromberg/consistent_err_formatting
Globally replace %s format directives with %v for error strings
2018-10-19 16:44:46 -07:00
Thomas Strömberg b93c22b6ab
Merge pull request #3221 from tstromberg/iso_errors
Include ISO URL and reduce stutter in download error message
2018-10-19 16:18:53 -07:00
Thomas Stromberg 118e9cc016 Apply go 1.11 formatting using `gofmt -s -l -w` 2018-10-19 14:29:56 -07:00
Thomas Stromberg 72e596507a Merge branch 'master' into consistent_err_formatting 2018-10-19 14:08:35 -07:00
Thomas Stromberg 3e256a0463 Fix accidental switch from Println to Printf 2018-10-19 13:48:25 -07:00
Thomas Stromberg 7e54a16d60 Include ISO URL in download error, make output slightly easier to read. 2018-10-05 12:50:47 -07:00
Thomas Stromberg 7feb46edcb Removed unneccesary changes to download errors 2018-10-03 15:16:37 -07:00
Thomas Stromberg bc2dbe3b08 Improve readability of ISO download errors + include URL.
This is a separate issue I bumped into while developing the dashboard
PR.
2018-10-03 12:56:54 -07:00
Thomas Stromberg 3706b3b8ac Fix dangling format issues. 2018-09-28 16:48:37 -07:00
Thomas Stromberg 055c8002b1 Replace %s format directives with %v for errors.
Previously we were mixed between the two forms. This commit picks %v,
which is consistent with the Kubernetes code base. They both effectively
do the same thing in this case, though %v works with any object, and %s
only with string objects.
2018-09-28 16:05:27 -07:00
Jason Stangroome 9b21d3c7e4 Allow certificates to be optionally embedded in .kube/config
Opt-in with `minikube config set embed-certs true`. Similar to the
behaviour of `kubectl config set-credentials --embed-certs`.

Enables Minikube on Windows to produce a .kube/config file that
can be shared directly with kubectl inside the Windows Subsystem
for Linux (WSL) without needing to perform additional translation
of the certificate paths within the configuration file.
2018-09-03 15:34:50 -05:00
Sebastien Collin e551231ec5 Allow to specify api server port through CLI 2018-09-01 15:07:27 +02:00
Aaron Prindle a4606583e4 remove all localkube references from code, change /var/lib/localkube to /var/lib/minikube 2018-07-24 12:36:42 -07:00
Ivan Hamilton 4bdba1f20b Issue certificates with NotBefore set 1 day prior to avoid drift/timezone issues in VM 2018-05-23 13:18:26 -07:00
Arnaud MAZIN b25f82759f Create empty map if Nil 2018-04-29 18:24:25 -07:00
Arnaud MAZIN 3f9350da72 fmt 2018-04-29 18:24:25 -07:00
Arnaud MAZIN cc41522545 added map[string]string argument parsing for eviction-like arguments 2018-04-29 18:24:25 -07:00
AdamDang 3c50dee461
Update config.go 2018-04-23 20:10:55 +08:00
dlorenc 3cce3ca727 Make ResourceQuota last. 2018-03-06 20:50:22 -08:00
dlorenc b227d6d5e9 Add the ValidatingAdmissionWebhook controller. 2018-03-06 09:12:38 -08:00
dlorenc ce6a727fc0 Make the admission controllers shared between localkube and kubeadm. 2018-02-15 11:51:57 -08:00
Matt Rickard 7cea97d92a
Merge pull request #2541 from budhrg/refactor-get-downloadurl
Refactor get download url for minikube
2018-02-12 10:25:11 -08:00
Budh Ram Gurung 68285d1779 Refactor get download url for minikube 2018-02-12 13:15:06 +05:30
Yongkun Anfernee Gui 49757dccfa Chmod -x kubernetes.go 2018-02-09 12:12:13 -08:00
Chen Li aa32282e3f Use IPSliceVar for apiServerIPs 2018-01-17 08:22:25 -08:00
Chen Li a3f3286f50 Allow add new server names and IPs to apiserver x509 certificate 2018-01-17 08:22:25 -08:00
kairen 08f4677511 Change kubernetes-dashboard from RC to Deployment 2018-01-10 02:15:07 +08:00
Matt Rickard 30667cb406 Calculate ServiceClusterIP and DNS IP from CIDR 2017-10-31 10:06:51 -07:00
Matt Rickard 901c844a00 localkube changes 2017-10-13 10:21:16 -07:00
Matt Rickard e5002afa8c add vendor 2017-10-13 10:21:09 -07:00
Matt Rickard 3180e2e897 Merge pull request #1938 from r2d4/integration-test-cleanup-
Integration test cleanup
2017-09-12 14:28:28 -07:00
Matt Rickard 53341aa30d golint, go vet, etc. changes 2017-09-11 14:17:58 -07:00
Matt Rickard 9747484e9e Move k8s utils to pkg/util 2017-09-08 20:14:28 -07:00
Kent Rancourt ce2ac65d7f manage proxy-client / aggregator certs 2017-09-06 18:11:59 -04:00
Matt Rickard 1052dda37a Move CalculateDiskSizeInMB to utils to use in kvm 2017-08-28 11:27:34 -07:00
Matt Rickard 5531a63b8d go lint/vet fixes 2017-08-04 13:42:10 -07:00
dlorenc 8837045970 Stop using insecure serving. 2017-07-26 14:38:57 -07:00
Matt Rickard d56d41b956 Add duration as a configurable type for localkube 2017-07-19 14:16:33 -07:00
Matt Rickard 0b595b7a43 minikube: Url parse changes for go 1.8 2017-07-13 09:19:44 -07:00
dlorenc 11ce2369d2 Move kubecfg utils from minikube to util.
We'll need to also write a kubecfg inside the VM going forward as we
remove the InsecureServing path.
2017-07-05 17:25:36 -07:00
Matthew Fisher 135a920d80 fixup default --insecure-registry CIDR address
The default CIDR should be 10.0.0.0/24 rather than 10.0.0.1.
Accidental off-by-one error. :)
2017-06-19 11:39:18 -07:00
Matt Rickard 7f294b2a54 Review feedback 2017-05-16 15:31:15 -07:00
Matt Rickard 652c4c668d Validate k8s version before starting VM
Also, cache in memory localkube versions in multiple calls to the GCS
bucket.  These versions will not change during the life of the minikube
process once fetched and are used multiple times.
2017-05-12 15:07:15 -07:00
Matt Rickard 3b46c27b16 Minikube changes for v1.6.0-alpha.1 2017-03-31 13:23:59 -07:00
dlorenc 964ff65f39 Fix gofmt. 2017-03-14 10:07:34 -07:00
dlorenc 63ac7e8a76 Fix tests. 2017-03-13 10:21:14 -07:00
dlorenc c220ada63b Fix tests. 2017-03-07 15:00:19 -05:00
Dale Hamel 107e3324a6 Add support for parsing CIDRs to config 2017-03-07 14:59:36 -05:00
Eden Li c632321122 support componentconfigs with native type aliases
Some componentconfig options are aliased to native convertible types
(e.g. ProxyMode) but FindAndSet() was unable to detect that and so it
wasn't possible to set these values via `--extra-config`.

This change addresses that by using the reflected value's Kind instead
of a type assertion on its interface.

It's also worth noting that any value with the type Duration (e.g.
proxy.IPTablesSyncPeriod) is also unable to be set for the same reason,
but this commit does not address that.

See https://github.com/kubernetes/minikube/issues/1217
2017-03-03 01:29:46 -08:00
Davanum Srinivas 8584cf8761 Fix test break 2017-02-27 21:47:30 -05:00
Aaron Prindle 56d4824456 Merge pull request #1149 from aaron-prindle/api-name-configurable
Added API Name as configuration option
2017-02-27 15:18:56 -08:00
Andreas Kohn bba2ef86ee
Add the 'minikube' user to the 'system:masters' group 2017-02-23 14:20:15 +01:00
Aaron Prindle 68973786d6 Added test coverage for ParseSHAFromURL 2017-02-21 21:33:40 -08:00
Aaron Prindle 3d91f91ede Merge pull request #1159 from aaron-prindle/downloader-tests
Added unit tests to downloader.go
2017-02-21 10:17:57 -08:00
Matt Rickard e0a5dbc4f8 Add test coverage for GenerateSignedCert 2017-02-21 10:16:59 -08:00
Aaron Prindle 6959aa0ce2 Added unit tests to downloader.go 2017-02-19 21:01:01 -08:00
Aaron Prindle 3433a3028c Added API Name as configuration option 2017-02-18 15:49:49 -08:00
Aaron Prindle c418095c38 Added MINIKUBE_HOME env variable which sets .minikube directory 2017-02-09 11:07:44 -08:00
Matt Rickard 1fbd936b39 Move iso download funcs to interface for testing
Also reorg types found in cluster.go into types.go
2017-01-31 13:45:56 -08:00
Jimmi Dyson 23a1e4ada4
Allow setting string slices in extra config 2017-01-12 12:10:53 +00:00
Dan Lorenc 17b7e8ae72 Add some tests to our cert generation. 2016-12-17 09:27:08 -08:00
Dan Lorenc bd0acdf480 Fix the type referenced for PortRange. 2016-11-23 09:04:38 -08:00
dlorenc f72dadbe03 Add PortRange to the extra-config parser. 2016-11-22 09:56:55 -08:00
Dan Lorenc e8d8cc0ba3 Add support for net.IP to the configurator. 2016-10-28 14:33:36 -07:00
Matt Rickard 4cfca59c5c Add RetryableError for the Retry util
This way we can selectively retry the errors that are caused by some
temporary or ephemeral condition such as the pods not being up yet.
2016-10-13 13:53:38 -07:00
Ajanthan b6b6fa1cb2 Validating localkube version while constructing download url (#663) 2016-10-07 10:45:27 -07:00
aprindle 7e78514174 Added opt in to stackdriver error reporting 2016-10-03 09:22:30 -07:00
dlorenc 8611a455ca Initial configurator commit. 2016-09-30 10:05:14 -07:00
Dan Lorenc 31b2b9e7ae Check localkube SHAs.
Also add notes to the RELEASING.md doc, and a make target to test the release.
2016-09-27 10:59:02 -07:00
Aaron Prindle 3fcfb67f58 Added error reporting functionality and testing. 2016-09-13 11:18:25 -07:00
Aaron Prindle dab3190fef Changed minikube code to use pkg/errors, this is to improve error
messages to allow for stacktraces for future error-reporting. Added
error messages to .Wrap errors.
2016-09-08 14:59:35 -07:00
Dan Lorenc 6219286cae Cleanup some "go vet" and "go lint" errors.
We should automate these checks...
2016-09-06 20:47:12 -07:00
Aaron Prindle 3229aab37d Added .minikube/addons directory where users can put addons they would
like initialized in their minikube vms.  Refactored asset transfer to
VM.  Refactored code to use a base asset.  Made file length checking use
.Stat(). Added constructors for FileAsset and MemoryAsset.
2016-08-29 10:59:41 -07:00
Dan Lorenc b85a90702a Return a MultiError from retry. 2016-08-06 12:29:56 -07:00
Aaron Prindle 1a89345b4c Added tests for GetLocalkubeDownloadURL. 2016-08-03 08:58:18 -07:00
Aaron Prindle 0b1cfce102 Refactored localkube url/asset code, fixed url.Parse code, updated flag
help message to add URI information, updated docs, fixed unused vars and removed unneeded comments
2016-07-29 15:27:09 -07:00
Aaron Prindle b3fe5faae6 Cleaned up start flags, added more robust URL checking for localkube
flag URL and added check to prepend 'v' to version # if it is missing
2016-07-28 12:33:34 -07:00
Aaron Prindle bd4e244ce8 Updated docs. Added retrying for the localkube download. 2016-07-28 12:33:34 -07:00
aprindle 53e80a9c6f Changed kubernetes-version to take k8s version as input (as well as
url) and to copy files from host to the vm instead of curl within vm.
Also made it so that sshutil.Transfer is done via a Reader.
2016-07-28 12:33:34 -07:00
Jimmi Dyson f602020f02
Create long lived CA certificate 2016-07-12 15:59:38 +01:00
Dan Lorenc 94aca79782 Wait a few seconds for the cluster to become healthly. 2016-06-01 16:41:07 -07:00
dlorenc 0ff6bbfa17 Add a retry utility to util, and use it to retry cluster creation.
This fixes the phantom errors we see on ubuntu that are fixed by rerunning start.
2016-06-01 13:53:09 -07:00
Lucas Käldström 00d4152313 Rename some constants in constants.go to Default..., and break out more constants 2016-05-25 23:25:49 +03:00
Dan Lorenc 2858ff3b3e Check boilerplate in all files.
Also fix misisng boilerplate.
2016-05-24 21:57:16 -07:00
Dan Lorenc 43f5851e6d Fix race condition in cluster setup.
We now explicitly generate certs before starting the cluster.
2016-05-22 14:21:10 -07:00
Lucas Käldström 0c05a831b4 Remove dependency on easyrsa; now localkube signs its own certs (including CA, which wasn't present earlier). Now serviceAccounts should work properly 2016-05-10 19:53:11 +03:00
Lucas Käldström c12821809a Run gofmt 2016-05-09 23:37:46 +03:00
Lucas Käldström e7cda1ce58 Very large refactor of localkube. Fixed lots of bugs, added flags and commands via cobra, extracted a simple interface for SimpleServer for all Kubernetes components, made DNS working again, created the type LocalkubeServer which holds all necessary data etc. 2016-05-09 23:35:57 +03:00