Commit Graph

96 Commits

Author SHA1 Message Date
iwilltry42
d7b25ac6ab
v3 -> v4 2020-12-04 13:45:57 +01:00
Fabrice Vergnenegre
2d8d60b005
FIX: #412 set Restart flag to true before creation (#413, thanks @fabricev) 2020-11-26 08:54:06 +01:00
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
a385241c77
clusterDelete: no error if no cluster was found (fixes #379) 2020-10-19 23:29:18 +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
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
bfbd2873d9
clusterCreate: add extra logs for host record injection 2020-10-07 12:03:26 +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
iwilltry42
d3c5cfb766
fix: allow allow port-ranges on the loadbalancer 2020-08-12 15:58:00 +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
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
iwilltry42
b28f93d207
UpdateLoadbalancerConfig: deduplicate and warn if node is down
- getCluster: now deduplicates the node list (i.e. overwrites existing
nodes in the list with "fresh" nodes and appends new ones)
- UpdateLoadbalancerConfig: print warning if "host not found in
upstream" returned by nginx after updating the config, as it's not a
failure per se, but shouldn't be ignored
2020-06-03 12:52:10 +02:00
iwilltry42
d3766a5a1e
createCluster: also wait for loadbalancer to be up and running before returning 2020-05-29 12:33:22 +02:00
iwilltry42
4710f65b85
Merge branch 'master' of github.com:rancher/k3d into enhancement/use-context 2020-05-29 11:42:47 +02:00
iwilltry42
99f5a6884a
getNodeLogs: accept time.Time parameter
- fixes startCluster's --wait/--timeout functionality
--> now doesn't check all the logs (e.g. from previous run)
----> no more false positives when checking for a specifc log message
only in the current run
2020-05-29 11:21:12 +02:00
iwilltry42
b6e3babb4a
fix: move waiting out of loop (which caused early context cancelation issues) 2020-05-28 14:32:09 +02:00
iwilltry42
332c3a8c9b
startCluster: add --wait and --timeout
- functionality mostly copy-pasted from createCluster
2020-05-28 13:53:20 +02:00
iwilltry42
ba431c6235
Merge branch 'master' of github.com:rancher/k3d into enhancement/use-context 2020-05-26 14:49:45 +02:00
iwilltry42
434cf8e91d
overall: pass context from top to bottom 2020-05-26 14:47:21 +02:00
iwilltry42
21fd427d8a
maintenance: cleanup debug logs 2020-05-26 14:14:55 +02:00
iwilltry42
639daef7fb
Reorder parameters
- runtimes.Runtime should at max. the second function parameter (right
after context.Context)
2020-05-26 12:58:43 +02:00
iwilltry42
0d2c22455d
Overall: use context.Context in top-level exported functions
- package cluster: use context.Context as first function param in every
exported function
- package cmd: pass cmd.Context() to calls to package cluster exported
functions
2020-05-18 12:57:59 +02:00
iwilltry42
9c9f49646e
MasterLoadBalancer: add nodefilter & extra treatment
- masterlb is now an extra part of the cluster spec
- ports can now be attached to masterlb by using the 'loadbalancer'
nodefilter
- all ports exposed on the masterlb will be proxied to all master nodes
(on the same port)
2020-05-11 10:57:54 +02:00
iwilltry42
4bfac51c7c
createCluster/createNode: use K3S_URL instead of --server 2020-05-11 09:17:48 +02:00
iwilltry42
da8adf5469
createNode: update nginx masterlb with new master node
- if --role=master, update nginx config and reload it
2020-05-09 15:11:06 +02:00
iwilltry42
b7b8f6a5a6
createNode: use any node as blueprint
- if no node with the target role exists in the cluster, just choose any
other (non-proxy) node instead
- to make this work, we also need to add the k3s url label to every node
2020-05-09 14:12:29 +02:00
iwilltry42
3071ec5755
createCluster: add --no-lb flag to disable the load balancer
- does not create the load balancer node
- exposes the API port on the first master node (master-0)
2020-05-09 13:02:02 +02:00
iwilltry42
0cdce098bd
createCluster: do not create masterlb if hostnetwork is selected to avoid port collisions 2020-05-04 14:19:30 +02:00
iwilltry42
dec8043edf
createCluster: add masterlb to list of nodes, so it will be considered during rollback 2020-05-04 07:42:45 +02:00