Commit Graph

531 Commits (a58e1a454f79df459ac28d247173cad2a1ff77d9)

Author SHA1 Message Date
Matt Rickard 49d471f4ba Add experimental kubeadm bootstrapper 2017-09-14 13:51:37 -07:00
Matt Rickard ebbc34d2ba Move drivers to pkg/drivers, share utils
Share most of the disk image setup between hyperkit and kvm drivers.
Move and remove a lot of shared configuration between all the in-tree
drivers: kvm, hyperkit, none.
2017-09-12 14:29:22 -07:00
Matt Rickard cc64fb0544 Merge pull request #1940 from r2d4/vet
golint, go vet, etc. changes
2017-09-11 15:30:52 -07:00
Matt Rickard 53341aa30d golint, go vet, etc. changes 2017-09-11 14:17:58 -07:00
Charlie Drage e959a848ce Update start.go with --vm-driver=none information
Updates the output in order to clarify commands as well as remove the
undeeded indentation.
2017-09-11 14:33:04 -04:00
Matt Rickard c5d6bc9dcf Merge pull request #1935 from krancour/distinct-client-cert
generate distinct cert for use by client
2017-09-08 15:26:25 -07:00
Kent Rancourt c571912b2d generate distinct cert for use by client 2017-09-08 17:54:58 -04:00
Matt Rickard f5e95e9223 Merge pull request #1911 from corlettb/master
Adding optional aws_session_token to configuration options for registry-creds
2017-09-08 11:06:29 -07:00
Aaron Prindle 0f975dd00c Merge pull request #1919 from aaron-prindle/add-files-dir
add files dir creation
2017-09-06 16:27:14 -07:00
Matt Rickard 0e6e930a7d Merge pull request #1881 from r2d4/cache-images-4-minikube
Cache images in minikube
2017-09-06 15:43:04 -07:00
Aaron Prindle cdddafa735 add files dir creation 2017-09-06 15:36:04 -07:00
Matt Rickard 3fb711c8ea Add feature flag for cache-images 2017-09-06 13:36:25 -07:00
Ben Corlett a2d8b1b434 - Passthrough aws region to registry-creds plugin
- Add optional aws_session_token to configuration options for registry-creds for aws sts credentials
2017-09-06 11:01:46 +01:00
Aaron Schlesinger 95c4556b6f Adding proper boilerplate 2017-08-31 16:12:41 -07:00
Aaron Schlesinger e99a378a85 Removing the "no buildable source files" error on non-linux machines 2017-08-31 15:24:04 -07:00
Matt Rickard 55b41415ed Cache images for localkube
This PR introduces caching of localkube images.  It makes a best effort
to cache the essential images localkube needs as minikube starts up.
Currently, the list of cached images is hardcoded, but future work might
entail

1. Cached images as a property of the cluster bootstrapper - to allow
localkube and kubeadm to cache their respective images.
2. Addons contain image information.  Then, we can selectively cache and
preload only the addon images that are enabled.
2017-08-30 22:36:16 -07:00
Matt Rickard b0db008b87 Merge pull request #1886 from r2d4/localkube-bootstrapper
Add localkube as a bootstrapper
2017-08-30 10:51:24 -07:00
Matt Rickard 81f12caa87 Merge pull request #1828 from r2d4/in-tree-kvm
Bring KVM driver in-tree
2017-08-30 10:46:29 -07:00
Matt Rickard 48fd6ecb65 Add localkube as a bootstrapper
Introduce the --bootstraper or -b flag that toggles the cluster
bootstrapper.  The default bootstrapper (and only bootstrapper at this
time) is localkube.

The bootstrapper interface contains all the functions needed to
bootstrap a kubernetes cluster.  It ingests a KubernetesConfig, which
contains all the configuration for the cluster, as well as a
CommandRunner, which is the interface upon which it will run commands
and transfer files to possibly remotely set up the cluster.

This moves the localkube functions out of cluster.go into their own
package at k8s.io/minikube/pkg/minikube/bootstrapper/localkube.
2017-08-28 13:23:41 -07:00
Matt Rickard 48b165808c Bring KVM driver in-tree
Add boilerplate

Review feedback
2017-08-28 11:52:35 -07:00
Matt Rickard 1052dda37a Move CalculateDiskSizeInMB to utils to use in kvm 2017-08-28 11:27:34 -07:00
hanks 5556ce9436 fix(config): make ARN of AWS role input optional 2017-08-25 15:38:08 +09:00
Matt Rickard 3a0d03f93b Merge pull request #1844 from r2d4/command-runner
Add CommandRunner interface
2017-08-24 15:07:51 -07:00
dlorenc e3d239929b Jenkins/Makefile targets. 2017-08-24 11:54:59 -07:00
dlorenc 28f9d5dc1a Initial hyperkit driver implementation. 2017-08-24 11:54:59 -07:00
Matt Rickard fd921b3997 Review feedback 2017-08-23 14:33:34 -07:00
Matt Rickard 7f558f1a11 Move tests over to use FakeCommandRunner 2017-08-23 14:33:34 -07:00
Matt Rickard 5a9ecbe672 Add CommandRunner interface
Two implementations, SSHRunner and ExecRunner allow commands to be run
either through SSH or os.Exec respectively.  This allows the cluster
bootstrappers to be unaware of how they are actually executing the
commands they need.  Copy and Remove functions provide a nice
convenience function for running commands that copy and remove files
respectively.
2017-08-23 14:33:34 -07:00
Matt Rickard 793739d46a Remove tests that called exit code 2017-08-22 11:05:59 -07:00
Matt Rickard 6008e1f14f Merge pull request #1853 from r2d4/return-error-code
Exit with non-zero code on error
2017-08-21 13:14:33 -07:00
Matt Rickard 56132b6183 Delete profile config on machine delete
Also, don't print out anything when a profile doesn't exist.
2017-08-20 22:47:14 -07:00
Matt Rickard 5692c2e59c Exit with non-zero code on error
We don't log it, since RootCmd.Execute() will already print it out.
2017-08-20 22:16:17 -07:00
Matt Rickard f19fab24b4 Rename localkube status to cluster status 2017-08-18 11:55:28 -07:00
Sunny e07eb01366 fix(cmd/start): prevent k8s version downgrades
- Create Config struct to store MachineConfig and KubernetesConfig as cluster
configuration.
- Write cluster configuration under $MINIKUBE_HOME/profiles/ directory
when a cluster is launched.
- Load the cluster configuration at `start` and compare the loaded k8s
version with the requested version. Prevent any version downgrade requests.
2017-08-11 18:29:34 +05:30
Matt Rickard 245c4a04de Merge pull request #1785 from r2d4/lint
go lint/vet fixes
2017-08-09 10:44:03 -07:00
Matt Rickard a02541d18b Add 'none' shell for docker-env output
This is for consumers who want the key/value output, but don't need the
shell directives.
2017-08-04 15:46:27 -07:00
Matt Rickard 5531a63b8d go lint/vet fixes 2017-08-04 13:42:10 -07:00
Matt Rickard 45eabf66eb Merge pull request #1720 from r2d4/etcd3
Use etcd embed package, switch apiserver to use etcdv3
2017-07-26 13:42:21 -07:00
Matt Rickard 90dc5c87c9 Don't default to kubenet network plugin
Hostports seem to require extra CNI configuration and the CNI hostport
plugin installed to work properly with kubenet.
2017-07-25 10:07:10 -07:00
Matt Rickard 5e5a0fb971 Merge pull request #1718 from darkowlzz/1683-delete-machine-profile
cmd/minikube: delete accept no arguments
2017-07-24 15:09:34 -07:00
dlorenc 24e08b7337 Fix the way 'minikube status' finds the kubecfg file. 2017-07-24 11:40:15 -07:00
Matt Rickard 8eaf471940 Merge pull request #1727 from r2d4/typo2
\t isn't escaped in ``
2017-07-24 11:21:25 -07:00
Aaron Prindle 29a7d7119a Merge pull request #1436 from Teddy-Schmitz/registry-creds-gcrurl
Add gcrurl env var to registry-creds addon deployment and configuration
2017-07-24 10:16:13 -07:00
Sunny 17ba029cba cmd/minikube: delete accept no arguments
This changeset makes the delete command to error out if any argument is passed
to it.
2017-07-22 18:13:19 +05:30
Matt Rickard ca4de62179 \t isn't escaped in `` 2017-07-21 14:27:49 -07:00
Aaron Prindle c4ab0947c5 Merge pull request #1711 from upmc-enterprises/registryCredsAWSRole
Add additional config options for registry-creds addon / Bump version
2017-07-20 15:20:30 -07:00
Matt Rickard afcee9a5fc Merge pull request #1708 from svanellewee/issue-1608-password-hiding-again
added AskForPasswordValue and 2 tests
2017-07-20 12:02:07 -07:00
Matt Rickard a682bbbfe0 Use embeded etcd package, switch to etcdv3 2017-07-20 11:39:04 -07:00
Aaron Prindle c98ac207ab Merge pull request #1717 from q3aiml/restore-mount-cmd
Restore mount command and unswap port and mountVersion
2017-07-20 10:21:09 -07:00
Andy Clayton d332a2b818 Restore mount command
This seems to have been a mistake in 6f42d58.
2017-07-19 19:26:20 -05:00
Matt Rickard 8175c17a00 Use kubenet, add ebtables support
Fixes #1568
2017-07-18 14:43:56 -07:00
Steve Sloka 8ba6f47876 Add additional config options for registry-creds addon / Bump version 2017-07-18 11:10:24 -04:00
Stephan van Ellewee ed5843714c added AskForPasswordValue and 2 tests 2017-07-17 21:56:19 +02:00
Aaron Prindle 6f42d583d2 Added msize and 9p-version flags to mount. Also changed their defaults to be more usable 2017-07-17 11:02:56 -07:00
Matt Rickard 8ad4ffe217 Change localkube 'show-version' flag
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.
2017-07-13 09:19:44 -07:00
dlorenc c5b57b0479 Manual changes for 1.7 update. 2017-07-13 09:16:43 -07:00
Matt Rickard b30bb20c20 Remove show-libmachine-logs, use-vendored-driver
These flags don't do anything anymore.

`show-libmachine-logs` behavior is triggered by the log level `--v`

`use-vendored-driver` was a feature flag and now we default to vendored
drivers when we can automatically.
2017-07-12 10:12:15 -07:00
Alessandro Pilotti 2298c931e7 Add message before waiting for the VM IP address
Retrieving the IP address depends on guest/host communication channels (e.g. KVP on Hyper-V) that might fail.
This commit adds a message that can help the user in troubleshooting potential issues.
2017-07-10 05:27:42 +03: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
Matt Rickard 2bf1a3e323 Add start flag --disable-driver-mounts
Allows users to disable the filesystem mounts created by the xhyve and
virtualbox drivers.
2017-06-28 14:23:07 -07:00
Aaron Prindle 79b9e10054 Added wait and interval time flags to minikube service command 2017-06-25 13:07:01 -07:00
Travis Cline c5becb3607 Allow control of user and group ids for mount 2017-06-22 11:29:56 -07:00
Aaron Prindle 4822d3aa33 Fixed condition to print minikube none information 2017-06-20 15:43:18 -07:00
Aaron Prindle 6639b2d91b Removed systemd dependency from minikube, updated none driver to reflect this 2017-06-20 09:55:14 -07:00
Matthew Fisher 51cf8cf9a8 fix registry addon labels
In a last-minute fix, I accidentally changed the pod labels all to
the minikube add-on reconciliation mode label instead of the add-on
name. This is causing the registry service to be unable to forward
requests over to the pods due to mismatched label selectors.
2017-06-19 11:39:18 -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 c978526a3f Merge pull request #1583 from bacongobbler/registry-addon
introduce the "registry" addon
2017-06-16 10:44:00 -07:00
Matthew Fisher 5e1db75db5 add registry addon
This addon installs a docker registry into the cluster.
2017-06-16 10:36:10 -07:00
Budh Ram Gurung 96cb95bdfd Fix typo, grammar, punctuations and formatting 2017-06-16 17:56:51 +05:30
Shane Ramey 2b88806330 use --dns-domain for k8s API server cert 2017-06-15 07:48:37 -07:00
Matt Rickard 6ee3a941a9 Correct NewAPIClient invocation
Two merges happened close to each other, the first changed the
signature of this function.
2017-06-14 11:13:04 -07:00
Aaron Prindle e524e8a9aa Merge pull request #1578 from abbytiz/update-context
Added update-context and kubeconfig to status
2017-06-14 10:45:15 -07:00
dlorenc 09f683bb1d More cleanup. 2017-06-14 09:45:09 -07:00
dlorenc 5b5442be11 Move more code into the local host implementation. 2017-06-14 09:45:09 -07:00
Abby Tisdale 577816311e Added update-context and kubeconfig to status. 2017-06-13 16:22:56 -07:00
Roland Schilter 94c7a7854a Fix typos in profile help 2017-06-12 17:18:21 +02:00
Aaron Prindle a7c2ff3e84 Merge pull request #1173 from aaron-prindle/minikube-no-vm
None driver
2017-05-26 15:22:01 -07:00
Aaron Prindle f4a8ece0ae Additional none driver changes 2017-05-26 13:33:26 -07:00
dlorenc d5e4d45718 Only validate the version if it's not default. 2017-05-26 12:56:59 -07:00
Aaron Prindle 88613090a9 Added none driver 2017-05-19 14:51:19 -07:00
Aaron Prindle 847b52d50f Fixed mount daemon to be off by default and to use different directories than the current mounts until they are turned off. 2017-05-19 14:00:18 -07:00
Aaron Prindle c9767886f6 Added mount daemon process that is starts/stops w/ minikube start/stop 2017-05-17 11:50:24 -07:00
Matt Rickard 4a81362d52 Merge pull request #1490 from r2d4/k8s-version-check
Validate k8s version before starting VM
2017-05-16 15:58:53 -07:00
Aaron Prindle 3cd1aeec1d Merge pull request #1493 from aaron-prindle/ssh-key-cmd
Added ssh-key cmd
2017-05-16 15:58:01 -07:00
Aaron Prindle d66bcb8af8 added way to find interface for vbox and ip flag to mount 2017-05-16 13:27:22 -07:00
Aaron Prindle 0e868644d9 Added ssh-key cmd 2017-05-15 09:15:47 -07:00
Budh Ram Gurung 22e0f23845 Consistent short description for commands 2017-05-13 08:29:48 +05:30
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
Aaron Prindle e91641c70c Changed --name to --profile and added minikube profile command 2017-05-08 10:09:11 -07:00
Teddy Schmitz 5f6511c73c Add gcrurl env var to addon deployment and configuration 2017-05-02 12:14:17 +08:00
dlorenc 61ec292451 Fix minikube flag parsing. (#1418)
We can't use flags in init like this. They're not parsed yet.
2017-05-01 10:05:34 -07:00
Dale Hamel 94ef3d88b9 Add support for using raw disks with xhyve (#1360)
* Add support for using raw disks with xhyve, default it to true

* Fix formatting issue

* Prefix disk-driver with xhyve to make it clear it is only for xhyve

* Add missing config
2017-04-25 10:51:43 -07:00
Aaron Prindle b1a69c653f Merge pull request #1388 from aaron-prindle/mount-interface
Fixed mount command to bind on specific VM ip address instead of all …
2017-04-24 15:34:22 -07:00
dlorenc c23dfba5d2 Update the addon manager. (#1301)
This gets us closer to being able to disable the storage provisioner.
2017-04-24 10:36:02 -07:00
Aaron Prindle b4936d023f Fixed mount command to bind on specific VM ip address instead of all interfaces 2017-04-24 09:59:12 -07:00
dlorenc ca4f2914d1 Add order to localkube startup. (#1371)
* Add order to localkube startup.

This adds a "ready" concept to localkube servers.

* Add unit tests.
2017-04-24 09:22:05 -07:00
dlorenc e620cf7e09 Properly respect WantKubectlDownloadMsg (#1397) 2017-04-21 13:54:30 -07:00
Matt Rickard 438db81d9a Set log levels in command prerun
If this is called in init, glog and viper haven't been properly set up
yet, so it does not trigger the logging output.
2017-04-21 11:41:30 -07:00
Aaron Prindle 4e00a5a9f4 Added check for kubectl on Windows as well 2017-04-20 11:44:59 -07:00
Aaron Prindle 0f0dfb65ab Merge pull request #1320 from aaron-prindle/multiple-vms
Added --name flag and MINIKUBE_NAME env var for vm machine name
2017-04-19 12:05:55 -07:00
Aaron Prindle 41c5ba7663 Merge pull request #1350 from aaron-prindle/mount-vm-path
Changed mount syntax to be host-path:vm-path
2017-04-19 12:03:22 -07:00
Aaron Prindle 1b79cfd566 Added --name flag and MINIKUBE_NAME env var for vm machine name 2017-04-19 11:37:40 -07:00
Aaron Prindle b3ad7539b1 Changed mount syntax to be host-path:vm-path 2017-04-19 10:15:04 -07:00
Wiiliam Chang 3b7615b45f Add the multi VM drive discription. 2017-04-14 09:12:29 +08:00
Everett Toews aa9f16bd87 Inform users which version of Kubernetes is starting (#1332)
This can be very informative for users new to Kubernetes and minikube.
2017-04-11 07:45:30 -07:00
Aaron Prindle 447b3cb9f9 Merge pull request #1333 from aaron-prindle/no-minikube-dir
Removed .minikube folder creation from version command
2017-04-09 10:11:51 -07:00
Matt Rickard 09e8cce24d Merge pull request #1314 from r2d4/k8s-v1.6-rebase-1
Upgrade to k8s v1.6 as default version
2017-04-06 14:37:51 -07:00
Aaron Prindle 4b94b14459 Merge pull request #1293 from aaron-prindle/switch-mount
Update mount implementation, add mount integration tests, and check t…
2017-04-06 14:33:22 -07:00
Aaron Prindle fcc1bdedda Removed .minikube folder creation from version command 2017-04-06 14:01:16 -07:00
Aaron Prindle 8e801e3975 Update mount implementation, add mount integration tests, and check that path exists. 2017-04-06 13:39:25 -07:00
Aaron Prindle 49ab18a1ac Merge pull request #1322 from aaron-prindle/addon-configure-cmd
added minikube addons configure command to replace auto-prompting to …
2017-04-03 14:40:31 -07:00
Aaron Prindle 0e78712fd4 added minikube addons configure command to replace auto-prompting to make scripting addons possible 2017-04-03 11:50:21 -07:00
Aaron Prindle f475961cde Added --dns-domain flag to localkube 2017-04-03 10:25:25 -07:00
Matt Rickard b279d733ad Minikube changes for v1.6.0-beta.2 2017-03-31 13:24:03 -07:00
Matt Rickard 3b46c27b16 Minikube changes for v1.6.0-alpha.1 2017-03-31 13:23:59 -07:00
Matt Rickard 4b3459ed5b Merge pull request #1289 from r2d4/disable-default-provisioner
Disable the default provisioner addon
2017-03-29 10:11:03 -07:00
Matt Rickard 3ad0190d78 Merge pull request #1288 from r2d4/dedupe
Don't glog top level command error message
2017-03-28 21:09:18 -07:00
Aaron Prindle f5fd42ea4d Removed error reporting prompt from minikube delete 2017-03-27 10:34:06 -07:00
Matt Rickard f996c79330 Disable the default provisioner addon
We have to do this through client-go directly, since the addon manager
and kubectl ignore the storageclass resource.
2017-03-24 10:01:57 -07:00
Matt Rickard 1e74692340 Don't glog top level command error message
This is already printed to stderr through RootCmd.Execute().  We could
save to this the glog logs by supressing the RootCmd.Execute() error
output, but this displays a more user friendly error (i.e. no log
prepended info)
2017-03-23 15:10:42 -07:00
Steve Sloka 3624aa2e22 Added missing delete secret for dpr 2017-03-23 11:07:56 -04:00
Steve Sloka ad770c7a3d Add support for private docker registry in registry-creds 2017-03-23 09:36:21 -04:00
Matt Rickard 12e41aeaba Merge pull request #1273 from r2d4/logs
Add -f --folow option to minikube logs
2017-03-21 11:44:10 -07:00
Matt Rickard c9a5152e21 Add -f --folow option to minikube logs
Allows tailing of the logs
2017-03-21 11:04:35 -07:00
Max Lavrenov ae153c6348 add --docker-opt parameter which passes flags to docker daemon 2017-03-20 23:39:55 +01:00
Matt Rickard d2e355182b Fix logging message for feature gates 2017-03-16 11:23:51 -07:00
dlorenc e969ebe87b Add an external hostpath provisioner to localkube. 2017-03-01 11:05:14 -08: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
Steve Sloka 50cb1f2a32 Fix boilerplate 2017-02-27 13:31:37 -05:00
Steve Sloka 706d02b926 Fix go-client / Refactor k8s util code 2017-02-27 12:52:33 -05:00
Steve Sloka 60d9d1e142 Refactor registry addon 2017-02-27 11:09:09 -05:00
Steve Sloka c3d962b58c Allow for addons to prompt for data input 2017-02-27 11:09:09 -05:00
Aaron Prindle 60a5910f88 Added 9p server as well as minikube mount command 2017-02-25 10:08:45 -08:00
Matt Rickard b26f0aa66b Merge pull request #1154 from r2d4/svc-tests
Refactor service package and add test coverage
2017-02-24 13:19:07 -08:00
Dongsu Park 4eb9e92dff pkg: fix data race around KubeConfigFile
TestSetupKubeConfig fails when running "go test --race", because of
concurrent accesses from multiple goroutines.

```
WARNING: DATA RACE
Write at 0x00c4201cc4b8 by goroutine 16:
k8s.io/minikube/pkg/minikube/kubeconfig.TestSetupKubeConfig.func1()
    k8s.io/minikube/pkg/minikube/kubeconfig/config_test.go:103 +0x23a
testing.tRunner()
    /usr/local/golang/src/testing/testing.go:657 +0x107
```

To fix that, convert KubeConfigFile to an atomic value that stores
string. Callers should run helper functions, SetKubeConfigFile() and
GetKubeConfigFile() instead of direct access to the value.
2017-02-24 17:58:59 +01:00
Matt Rickard b78fb926bc Merge pull request #1160 from r2d4/kubeconfig-tests
Add test coverage for SetupKubeConfig
2017-02-22 13:25:54 -08:00
Matt Rickard 7f13944043 Merge pull request #1150 from r2d4/env-tests
Add test coverage for cmd/docker-env
2017-02-22 13:25:34 -08:00
Matt Rickard c4196b65be Add test coverage for SetupKubeConfig 2017-02-22 11:39:55 -08:00
Matt Rickard 51d49b6dfa Add test coverage for MaybeWantKubectlUpdateMessage 2017-02-21 10:14:06 -08:00
Matt Rickard 7aaccedadc Add test coverage for cmd/docker-env 2017-02-20 11:30:57 -08:00
Matt Rickard 69f0a9f99a Refactor service package and add test coverage 2017-02-20 11:24:36 -08:00
Aaron Prindle 3433a3028c Added API Name as configuration option 2017-02-18 15:49:49 -08:00
Aaron Prindle ffcccbd646 Merge pull request #1145 from aaron-prindle/etcd-access
Change etcd to be accessible within pods
2017-02-17 15:41:44 -08:00
Aaron Prindle d3531c9eec Change etcd to be accessible within pods 2017-02-17 15:40:48 -08:00
Matt Rickard 86b1fd1916 Refactor services into its own package
pkg/minikube/cluster has become too crowded with service related
functions.  I've moved these to their own package, which will make
updating client-go easier because everything will be in one place.

There is still a little bit of work to be done with making
pkg/minikube/cluster free of references to kubernetes packages
2017-02-17 09:58:22 -08:00
Matt Rickard a44f87d57a Call RootCmd's persistentPreRun from svc cmd
Currently the service command overwrites the RootCmd's persistent pre
run.  Now it will run the rootcmd's persistent pre run after it runs
its own.
2017-02-13 11:38:54 -08:00
Matt Rickard f52805360d Merge pull request #1109 from endocode/dongsu/err-msg-newline
Add missing newline chars to error messages
2017-02-10 09:56:38 -08:00
Aaron Prindle c418095c38 Added MINIKUBE_HOME env variable which sets .minikube directory 2017-02-09 11:07:44 -08:00
dlorenc ab9cbf7ec0 Merge pull request #1091 from aaron-prindle/start-progress
Added additional print statements to minikube start
2017-02-09 10:57:42 -08:00
Dongsu Park 2976ae28af Add missing newline chars to error messages
Several error messages don't print out newline characters at the end,
for example:

```
$ minikube addons open dashboard
This addon does not have an endpoint defined for the 'addons open' command
You can add one by annotating a service with the label kubernetes.io/minikube-addons-endpoint:dashboard$
```
2017-02-09 17:29:39 +01:00
Matt Rickard b9a115b3ae Add LocalClient to bypass RPC for drivers
This adds a new libmachine API implementation that skips RPC and instead
uses a vendored in driver directly.  This removes the need to download a
separate driver binary.  Currently, only the "core" drivers, and kvm are
supported as vendored in.  This means that xhyve is the only driver that
requires a separate binary for now.
2017-02-06 21:17:22 -08:00
Aaron Prindle 7d30b4bf18 Added additional print statements to minikube start 2017-02-04 14:53:53 -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
Matt Rickard dfdbc6a768 Fixes from gometalinter 2017-01-30 15:39:35 -08:00
Matt Rickard a638cce9ba Check minimum disksize before creating minikube VM
We use docker/go-units for human readable disk sizes on the --disk-size
flag.  However, sometime a user use wrong syntax and specify a disk
size that they didn't mean.  Fixes #976
2017-01-19 11:55:03 -08:00
Matt Rickard e4df3abc6f Merge pull request #1015 from r2d4/addons-open
Fixes nil dereference on error and addons open
2017-01-19 11:40:27 -08:00
Aaron Prindle c610deaa43 Fixed kubectl download text/check for Windows 2017-01-18 10:52:20 -08:00
Matt Rickard 69c3b5b818 Fixes nil dereference on error and addons open
Some addons don't have a 'minikube addons open' endpoint defined, so
don't retry and wait for them.
2017-01-17 11:50:25 -08:00
fate-grand-order c4ed8df451 fix missing argument for Printf 2017-01-17 15:17:40 +08:00
Steve Sloka ae2ae8f23c Rename awsecr-creds to registry-creds & update version which now supports Google Registry 2017-01-13 10:54:30 -05:00
Paulo Bittencourt 621178bce0 Print update notification to stderr 2017-01-11 08:42:01 -05:00
Matt Rickard 7e313451c1 Merge pull request #977 from r2d4/feature-gates
Support enabling alpha features with feature gates
2017-01-10 10:55:09 -08:00
Matt Rickard 89cdd44197 Support enabling alpha features with feature gates
This sets the feature gates on every kube-system component (apiserver,
kubelet, etc.)

Fixes #896
2017-01-09 13:55:39 -08:00
dlorenc c2bc848daa Add an environment variable to enable trace profiling in minikube. 2017-01-09 13:55:14 -08:00
Matt Rickard 1bfe4765c4 Merge pull request #967 from glaubitz/fixes
Fix missing else statement in addonsEnableCmd
2017-01-06 10:02:25 -08:00
Andreas Kohn 6a5176fefa Fix typo in user-visible message 2017-01-06 12:27:14 +01:00
John Paul Adrian Glaubitz 487a207321 Fix missing else statement in addonsEnableCmd 2017-01-06 12:19:55 +01:00
dlorenc 81cf30de2d Merge pull request #954 from gauthierbl/flag_to_keep_current_context_on_start
Adds --keep-context flag for 'minikube start'
2017-01-05 13:34:39 -08:00
Brandon L. Gauthier d28cea779d Added --keep-context flag for 'minikube start' 2017-01-03 17:56:06 -05:00
Matt Rickard 938e58e966 Add hyper-v switch to config set 2017-01-03 10:05:16 -08:00
Xinbo Weng f91f428634 fix duplicated 'the' and some 'a/an' errors
Signed-off-by: Xinbo Weng <xihuanbo_0521@zju.edu.cn>
2016-12-23 19:46:04 +08:00
Matt Rickard 8388e7dc3f Merge pull request #894 from r2d4/showlib
Deprecate show-libmachine-logs flag
2016-12-17 11:12:48 -08:00
Matt Rickard 12c5973fbf Manual changes for k8s v1.5.0-beta.1
The internal k8s client has now been taken out of the kubernetes repo
and is fully at k8s.io/client-go.  Minikube should only reference the
client-go library, while Localkube can continue to reference both
internal k8s components as well as client-go.

make gendocs
2016-12-13 11:21:44 -08:00
dlorenc 8bc094f37d Merge pull request #901 from upmc-enterprises/awsecr-creds-addon
Enable awsecr-creds addon
2016-12-09 13:22:55 -08:00
Steve Sloka 7e989d1ce2 Enable awsecr-creds addon which will setup credentials to AWS ECR for downloading docker images 2016-12-09 08:46:05 -05:00
Matt Rickard 6f756a7481 Make iso-url configurable through config command 2016-12-08 15:06:57 -08:00
Matt Rickard f1fb26adc6 Add ingress controller to addons
This uses a custom version of the ingress controller.  We should move
it over to the official one when it is released.
2016-12-08 12:01:31 -08:00
Matt Rickard 084c1e8181 Deprecate show-libmachine-logs flag
Libmachine logs can be enabled with --v=3 or higher.  --v=7 turns on
debug level info.  This will simplify the debugging control plane and
allow us to transition off of libmachine logs in the future.
2016-12-06 10:49:04 -08:00
Aaron Prindle ec64e811aa Fix service list command 2016-12-02 11:36:35 -08:00
Matt Rickard 3db2fa95b0 Merge pull request #879 from r2d4/dupe
Dedupe minikube addons open subcommand
2016-12-02 11:02:56 -08:00
Matt Rickard 2569258ef2 Dedupe minikube addons open subcommand 2016-12-02 10:17:46 -08:00
Matt Rickard e7afea8215 Change instructions for completion bash on OS X
OS X default version of bash doesn't support process substitution.
https://github.com/kubernetes/minikube/issues/844#issuecomment-262587570
2016-12-01 14:21:41 -08:00
dlorenc b9d78a675d Handle multiple KUBECONFIGs 2016-11-29 11:09:55 -08:00
Andreas Kohn d34e961c2f
Add missing word in help text 2016-11-28 13:58:58 +01:00
clchen 539886eeda fix msg format 2016-11-23 10:28:23 +08:00
Matt Rickard 452a1e52c2 Merge pull request #833 from r2d4/retry
Retry for configureAuth on minikube start
2016-11-21 14:09:45 -08:00
Matt Rickard b72efef48d Retry for configureAuth on minikube start
Sometimes the docker daemon isn't ready and on a restart and libmachine
times out while trying to reach it.  This retries when it isn't ready.

This fixes timeout problems in our virtualbox integration tests.
2016-11-21 13:32:34 -08:00
Aaron Prindle 3fe4ef3e83 Added heapster to set of addons. Need to add test and repackage things to remove duplicated code. 2016-11-18 17:36:54 -08:00
Aaron Prindle 0e33746e1d Merge pull request #783 from aaron-prindle/kubectl-hint
Added check for kubectl to each command (in root.go)  This prompts user
2016-11-09 15:17:25 -08:00
vishah 980388f58e Fixes issue #811 by updating upstream spf13/pflag and using StringArrayVar in place of StringSliceVar for docker-env flag 2016-11-09 10:20:51 -05:00
Aaron Prindle 1960618ae1 Added check for kubectl to each command (in root.go) This prompts user
with kubectl install one-liner for latest kubectl version.  Also added
config for enable/disable.  Still need to add tests.
2016-11-03 13:26:06 -07:00
Jimmi Dyson 0bbcce5786
Fix dashboard command by adding service format template 2016-10-29 09:00:16 +01:00
Alexander Kanevskiy 2e12253a11 fix usage of errors.Wrap()
Format strings are not supported by errors.Wrap, so cleanup
them from error output where it is not needed.
2016-10-28 15:13:06 +03:00
Jimmi Dyson c057dede1f
Refactor multiple service ports handling after service list command added 2016-10-27 16:39:03 +01:00
Aaron Prindle bc1f5db71a Added functionality to read/open multiple ports via service cmd. Also
updated tests and help text for multiple ports.  Also updated docs.
2016-10-26 15:14:18 -07:00
dlorenc 55fd539300 Merge pull request #728 from jimmidyson/service-list
Add service list subcommand
2016-10-26 13:10:43 -07:00
Matt Rickard 80905d7fbd Merge pull request #738 from r2d4/dns
Remove vendored kube2sky, Add kube-dns as cluster addon
2016-10-26 10:16:12 -07:00
Jimmi Dyson badf04b4d2
Add service list subcommand 2016-10-26 14:43:08 +01:00
Aaron Prindle f478292cd2 Merge pull request #722 from aaron-prindle/validate-service-cmd
Validate the service for the minikube service cmd
2016-10-25 14:40:44 -07:00
Matt Rickard 7560384fc8 Remove vendored kube2sky, Add DNS as cluster addon
Removes the vendored in kube2sky built into the minikube binary and
replaces the dns solution with kube-dns cluster addon.  This will allow
users to swap out DNS implementations by simply turning off the
kube-dns addon.
2016-10-25 14:00:51 -07:00
Aaron Prindle 8b5d027fd3 Validate the service for the minikube service cmd. 2016-10-25 13:45:26 -07:00
dlorenc 19e44dcf33 Merge pull request #745 from borisroman/feature/kvm_network
Add option to specify network name for KVM.
2016-10-24 12:37:43 -07:00
Boris Schrijver e717f5f84a Add option to specify network name for KVM. 2016-10-24 16:22:32 +02:00
Matt Rickard 24bced3969 Add simple bash completion for minikube
Similar to `kubectl completion bash`.  Does not support more advanced
queries, just commands.  Added as part of `make gendocs`
2016-10-21 14:42:06 -07:00
dlorenc 129f565611 Merge pull request #719 from aaron-prindle/hyperv-switch-flag
Added hyperv virtual switch configuration flag for hyperv driver
2016-10-21 10:03:23 -07:00
dlorenc 3a61ad6ab2 Merge pull request #731 from dlorenc/env
Add support for the KUBECONFIG env var during 'minikube start'.
2016-10-21 09:50:10 -07:00
Aaron Prindle f2f53e946e Added hyperv virtual switch configuration flag for hyperv driver. Also
updated docs.
2016-10-20 17:11:31 -07:00
Aaron Prindle 365599ff29 Reduced the number of error reporting endpoints as some were user error and some did not give useful output that we could act on (example: ssh) 2016-10-20 12:07:01 -07:00
dlorenc 20e6b2a56f Add support for the KUBECONFIG env var during 'minikube start'. 2016-10-20 11:41:11 -07:00
Jimmi Dyson e62d7291a6
Limit error reporting message to 80 cols width to reduce dodgy wrapping 2016-10-20 10:55:24 +01:00
Jimmi Dyson 3e82478373
Add format flag to service command 2016-10-19 19:52:33 +01:00
Jimmi Dyson 097505b540
Add config view subcommand 2016-10-14 19:46:59 +01: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
dlorenc c9389ee6fa Merge pull request #693 from dlorenc/service
Check to see if any endpoints are ready, instead of if any endpoints …
2016-10-13 13:45:11 -07:00
dlorenc 24682f1005 Check to see if any endpoints are ready, instead of if any endpoints are not ready. 2016-10-13 11:26:30 -07:00
Matt Rickard e23d88be71 Set default log_dir to ~/.minikube/logs
A hack around specifying the default log dir for glog.  Since we can't
set it without modifying the flag, we check if the flag has been
changed.  If not, we set it to our default value.
2016-10-12 10:40:14 -07:00
Aaron Prindle 2d2b484a22 Have working minikube addons command w/ enable, disable, delete. Also
updated docs.
2016-10-11 11:08:55 -07:00
Aaron Prindle 491e6c6d1c Added WantReportErrorPrompt to config 2016-10-06 15:12:45 -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
Matt Rickard d45e44fe22 Add in a list of available fields in minikube config -h
Since not all fields are able to be set, let users know which are.
2016-09-28 11:56:53 -07:00
Brandon Philips 010502866b cmd: minikube: print newlines for service not ready
No newlines were printed before which made it look weird.
2016-09-17 16:35:22 -07:00
Aaron Prindle 3fcfb67f58 Added error reporting functionality and testing. 2016-09-13 11:18:25 -07:00
Sergiusz Urbaniak 3945c3bffb
localkube: add rkt, and CNI support 2016-09-09 13:48:22 +02: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
dlorenc dc60de97db Merge pull request #520 from aaron-prindle/better-status
Added localkube status to minikube status
2016-09-08 13:47:04 -07:00
dlorenc deb12103ce Merge pull request #553 from r2d4/loglevel
Add a log level threshold to libmachine debug logs
2016-09-08 13:46:47 -07:00
Aaron Prindle 6017e34d4d Fixed integration tests, adding test output to ssh mock, change help text to use multi-line string and
updated docs.
2016-09-08 13:13:15 -07:00
Matt Rickard 3ae77945f7 Add a log level threshold to libmachine debug logs
Anything over v=3 will trigger debug level logging when
show-libmachine-logs is also enabled.
2016-09-08 10:08:35 -07:00
Matt Rickard 121f48a23c Refactor config env var test and add string replacer for automatic env
Changes - to _ for environmental variables controlled by viper

Refactors tests to temporarily reset minikube related environment
variables to test them.
2016-09-07 15:56:30 -07:00
Aaron Prindle 3ef433d259 Added localkube status to minikube status. Also added format flag to
configure status output.  Also updated docs.  Also added godoc url to
help text for status.
2016-09-07 14:18:19 -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
dlorenc 12dfb47bca Merge pull request #545 from r2d4/config-set
minikube config get/set/unset cmd
2016-09-06 20:32:17 -07:00
Matt Rickard a8dbc18b51 Add minikube config get/set/unset commands
This introduces the minikube config get/set/unset command. At a basic level, it allows a more user friendly interface for setting minikube config values, but it also allows us to run validations and callbacks before and after the values have been set.
2016-09-06 15:14:28 -07:00
Jimmi Dyson 719bbaf86b
Ensure node IP is routable address 2016-09-05 14:33:27 +01:00
dlorenc 3cd29b1111 Merge pull request #481 from aaron-prindle/addons-directory
Added .minikube/addons directory where users can put addons they woul…
2016-08-29 13:27:53 -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
Patrick Gray 4380f9b521 add https flag to minikube command for services that run over ssl/tls 2016-08-25 13:58:45 -04:00
Matt Rickard 05ef2db652 Making minikube start flags configurable by Viper config
This allows most flags for the minikube start command to be
configurable by viper as well.  If a flag is present, it will take
precedence over the value supplied in viper.

Viper doesn't handle string slices correctly (see
https://github.com/spf13/viper/issues/200) so the string slices that we
pass in as flags such as docker-env and insecure-registry are still only
handled by flags

Delete custom flag for human readable disk size

Since the value can now be passed in multiple ways (environment
variable, flag, or config file), moving the conversion out of the flag
and straight into cmd/minikube/cmd/start.go

This changes the helptext for gendocs
2016-08-24 12:59:59 -07:00
Matt Rickard 02956e8870 Make enableUpdateNotification check a pkg level var 2016-08-22 11:11:05 -07:00
Matt Rickard 6fc94598ab Refactor viper flag tests
Make the tests for the config table driven
Add a whitelist for the flags that viper can configure.

Date:      Tue Aug 18 16:41:05 2016 -0700
2016-08-22 09:50:28 -07:00
Matt Rickard d330686a27 Refactoring VersionCmd to run RootPersistentPreRun
While keeping the behavior of not checking for new versions while
running `minikube version`
2016-08-22 09:50:28 -07:00
Matt Rickard fe087c6126 Use config when flags are not set for logging
Use viper in addition to flags for logging options.  Since these flags
are used in glog, we can't directly use viper.  Instead, we use viper's
built in precedence logic (https://github.com/spf13/viper#why-viper)
to set the flags directly.
2016-08-22 09:50:13 -07:00
Aaron Prindle 9cff8573b2 Made it so that debug is enabled for --show-libmachine-logs flag. 2016-08-19 11:18:55 -07:00
dlorenc 28132517ed Merge pull request #484 from tsl0922/regist-mirror
Add registry-mirror option to minikube start
2016-08-16 11:04:23 -07:00
dlorenc 8953283ac6 Merge pull request #475 from jimmidyson/docker-api-version
Add DOCKER_API_VERSION to docker-env command
2016-08-15 12:57:03 -07:00
Shuanglei Tao 641910d8a8 Add registry-mirror option to minikube start 2016-08-13 22:55:48 +08:00
Matt Rickard bc363cfdb9 Add env variables for viper controlled vars
Minikube will now read from env variables with the MINIKUBE_ prefix.
These variables will be read on every viper.Get() and will overwrite default
variables.  When we add binding to pflags, flags will overwrite env
variables.  At this time, only notification settings are controlled by
viper.
2016-08-12 13:25:04 -07:00
dlorenc d799222e35 Merge pull request #428 from aaron-prindle/dashboard-wait
Have working minikube service & minikube dashboard wait until ready functionality.
2016-08-11 15:48:45 -07:00
Aaron Prindle c82cd94f14 Added unit tests for CheckEndpointReady. Also refactored code, cleaned
error messages, fixed gofmt, inlined/compacted structs in test, and
changed output to os.Stderr.
2016-08-11 15:16:24 -07:00