186 Commits

Author SHA1 Message Date
iwilltry42
aa3a54e3c9
do not use host.docker.internal IP for API on non-docker-machine setups of Docker for Desktop 2020-11-12 20:49:40 +01:00
Thorsten Klein
586b1c7eae
clusterCreate: use docker VM IP for API connection (#399)
Try
- `docker-machine ip`
- host lookup for `host.docker.internal`

Fixes #388
2020-11-04 15:44:46 +01:00
Thorsten Klein
d0158c97c6
clusterCreate: add docker's --gpus flag (#395) 2020-11-03 20:12:52 +01:00
iwilltry42
b5eeda74d6
execInNode: check if we have a response before trying to access the reader in case of error to avoid nil pointer exceptions 2020-10-26 13:39:29 +01:00
iwilltry42
a385241c77
clusterDelete: no error if no cluster was found (fixes #379) 2020-10-19 23:29:18 +02:00
iwilltry42
425b9b709e
execInNode: do not read logreader too early, because that clears it for other read processes 2020-10-19 14:36:49 +02:00
iwilltry42
b69b874098
clusterCreate/injectHostIP: use 'busybox xargs' directly instead of relying on 'xargs' link, which is missing in some images 2020-10-19 13:54:29 +02:00
iwilltry42
d097caf7d3
clusterCreate: move inject hostIP to separate func 2020-10-19 12:37:27 +02:00
iwilltry42
dcef0b1946
runtime/docker/node: logreader must not be nil
Check for nil when trying to return exec process log reader.
Fixes #377
2020-10-15 07:28:30 +02:00
iwilltry42
f0ad42ce8d
clusterCreate: simple change to serialize joining server nodes 2020-10-10 17:11:29 +02:00
iwilltry42
584bf71592
createCluster: wait for 'k3s is up and running' instead of 'Running kubelet' to ensure that the API-Server is up 2020-10-08 20:58:20 +02:00
iwilltry42
ca23c6d898
clusterCreate/network: only use the exact chosen network
Before, we just looked up the name of the docker network, causing docker
to do some sort of relaxed matching (prefix?) which could cause k3d to
choose the first matching network instead of the exact match.
Now we're enforcing exact Regex matching to prevent this.
Fixes #374
2020-10-08 09:31:59 +02:00
iwilltry42
bfbd2873d9
clusterCreate: add extra logs for host record injection 2020-10-07 12:03:26 +02:00
iwilltry42
c27410ea32
createCluster: Fix getHostIP edge cases
- sometimes, the exec process returns a non-zero exit code but still has
logs which are helpful for us
- sometimes everything fails and we should gracefully handle this
2020-10-07 11:02:46 +02:00
iwilltry42
11cc797922
overall/logging: new trace log level
- new root flag '--trace' with precedence over '--verbose'
- some new trace logs
- migrated some debug logs to trace logs to reduce debug verbosity
2020-10-07 08:58:03 +02:00
iwilltry42
da0b23331f
clusterCreate: less breaking hostIP injection
- only print a warning, if hostIP couldn't be fetched
- even if the exec returns a non-zero exit code, still try to read the
logs
2020-10-07 08:29:09 +02:00
iwilltry42
d063482a32
clusterCreate: add --no-hostip flag to disable the automatic injection of the host.k3d.internal entry into /etc/hosts and CoreDNS 2020-10-05 15:19:00 +02:00
iwilltry42
60069f6f19
fix typo 2020-10-01 21:10:04 +02:00
iwilltry42
dc0ba9873b
patch CoreDNS configmap with host.k3d.internal 2020-10-01 21:09:12 +02:00
iwilltry42
972c004930
add entry for host.k3d.internal to /etc/hosts in the node containers 2020-09-29 15:20:43 +02:00
iwilltry42
b5a9d6397f
fix unittests 2020-09-20 17:53:41 +02:00
iwilltry42
5fbd42898e
clusterStart: also don't wait for serverlb if it's running already 2020-08-14 12:15:03 +02:00
iwilltry42
d5709b9a09
clusterStart: do not try to start node if it's already running to avoid waiting forever on a log message 2020-08-14 12:09:29 +02:00
Thorsten Klein
b029655c8b
Merge pull request #328 from rancher/feature/node-status
[Feature] Node Status
2020-08-13 19:04:40 +03:00
iwilltry42
d3c5cfb766
fix: allow allow port-ranges on the loadbalancer 2020-08-12 15:58:00 +02:00
iwilltry42
cc3fe46a23
clusterList: include node state 2020-08-12 11:24:15 +02:00
iwilltry42
1285fb90c4
overall: add node status field 2020-08-12 11:14:18 +02:00
kshelton
eaa7784625 Handle leading '/' in names for docker runtime 2020-08-06 18:03:49 +00:00
iwilltry42
e5d093d3ce
clusterList: add bool for loadbalancer 2020-07-15 09:10:47 +02:00
iwilltry42
ec3f10ec57
use server/agent instead of master/worker 2020-07-14 20:29:33 +02:00
iwilltry42
b02c783130
adjust toplevel pkg functions to new syntax 2020-07-14 15:02:51 +02:00
iwilltry42
eac293a263
Overall: helper container images should always use same tag as CLI or fallback to latest 2020-06-18 09:01:04 +02:00
iwilltry42
76d90478f5
Go Module: use v3 for go module compatibility 2020-06-18 07:58:36 +02:00
iwilltry42
3cd1a05b91
Maintenance: move all labels to constants and fix log formatting issues 2020-06-12 19:00:01 +02:00
iwilltry42
5643b4e60c
proxy: increase timeout to 10 minutes
- prevent stream from breaking during e.g. 'kubectl get logs -f POD'

Fixes #276
2020-06-12 12:47:32 +02:00
iwilltry42
2d0ec0a1d0
createNode: fix log output generating nil pointer...
... dereference in addNodeToCluster when cluster does not exist.
Fixes #277
2020-06-12 12:39:36 +02:00
iwilltry42
bdb5a1f858
getKubeconfig: fix condition when no overwriting contexts
Reference: https://github.com/rancher/k3d/pull/268#issuecomment-639829646
2020-06-10 19:20:02 +02:00
iwilltry42
76b7450b02
remove --runtime root flag and make docker the default 2020-06-05 08:50:47 +02:00
iwilltry42
dc740d5829
loadImage: exit early if no valid image was specified 2020-06-04 15:30:01 +02:00
iwilltry42
f39a9513fd
dependencies: update docker dependencies to fix issues with failing windows builds introduced by the usage of the archive package 2020-06-04 15:03:18 +02:00
iwilltry42
dbb24f4e1c
loadImages: accept mixed runtimeImage and tarball args
- loads images from tarballs and runtime
- only tries to do something if respective lists are not empty
- only creates tools node if it's not present yet
- uses new tools image to remove tarballs after process
2020-06-04 11:55:40 +02:00
iwilltry42
933ac38059
loadImages: loop over all input images 2020-06-04 09:50:45 +02:00
iwilltry42
7dec0cc1be
Merge branch 'master' of github.com:rancher/k3d into feature/load-images-from-tar 2020-06-04 08:58:29 +02:00
iwilltry42
487393bbde
loadImage: cleanup command and initiate enhancements 2020-06-04 08:36:52 +02:00
Antoine
0862f11324
👌 replace k3d getk3stoken command by --token flag onto command k3d get cluster 2020-06-04 00:56:02 +02:00
Antoine
e3bf18660e
👌 PR review
Use `log.Fatalln(err)` instead of `log.Errorln(err)` + `os.Exit(1)`
Use Label prefix instead of LabelName suffix
Rename all secret occurence with token
2020-06-04 00:49:12 +02:00
Antoine
6d9d5a0cc4
Add get k3stoken feature
Add new command verb `k3stoken` to `k3d get`
Populate cluster secret field
Add test for `k3d get k3stoken` command
Externalize validable flag `--all`, in anticipation to reuse into `getKubeConfig.go`
2020-06-04 00:49:12 +02:00
Antoine
f6eaf25a2e
♻️ Some side effect refactoring
Print usage When no k3d verb was specify
Replace fake Cluster object create into getKubeConfig by realy complete object obtain thanks to cluster.GetCluster() function
Use constant variable for node Label name use into populateClusterFieldsFromLabels() function, in forecast to rename label `k3d.cluster.secret` to `k3d.cluster.token`
2020-06-04 00:49:08 +02:00
iwilltry42
42ee62e552
createNode: add --wait and --timeout flags
- new struct: createNodeOpts for wait and timeout values
- new commands for creating/adding multiple nodes which then wait for
all nodes to be up, if specified
- tests/e2e: new test for adding a master node
2020-06-03 14:55:50 +02:00
iwilltry42
eeaa25dce6
WaitForNodeLogMessage: move default expected messages to constants 2020-06-03 14:16:09 +02:00