Commit Graph

41 Commits

Author SHA1 Message Date
William Wang 992a2259df
fix: failed to create local dir x permission denied (#2880)
* fix: failed to copy absolute file: failed to create local dir x permission denied

Signed-off-by: William Wang <williamw0825@gmail.com>

* docs: make log msg more accurate

Signed-off-by: William Wang <williamw0825@gmail.com>

* feat: ensure mode of dir when using src as dir in copy module

Signed-off-by: William Wang <williamw0825@gmail.com>

* refactor: change func name to ensureDestDirMode

Signed-off-by: William Wang <williamw0825@gmail.com>

* fix: pass go lint

Signed-off-by: William Wang <williamw0825@gmail.com>

---------

Signed-off-by: William Wang <williamw0825@gmail.com>
2025-12-09 17:39:18 +08:00
zuoxuesong-worker d9c699f80a
feat: feat no root ssh (#2858)
feat: feat no root ssh



feat: feat no root ssh



feat: feat no root ssh



feat: feat no root ssh



feat: feat no root ssh



feat: feat no root ssh



feat: feat no root ssh



feat: feat no root ssh



feat: feat no root ssh



feat: feat no root ssh



feat: feat no root ssh



feat: feat no root ssh



feat: feat no root ssh



feat: feat no root ssh



feat: feat no root ssh



feat: feat no root ssh

Signed-off-by: xuesongzuo@yunify.com <xuesongzuo@yunify.com>
2025-11-17 08:29:34 +00:00
liujian 3af5e91aa4
feat: update release configuration and add download script (#2815)
- Changed the archive name template in .goreleaser.yaml for better clarity.
- Added a new section in README files to document the UI installation process for versions v4.0.0 and above.
- Removed the old release workflow file and updated the releaser.yaml to include artifact synchronization to OSS.
- Introduced a new script (downloadKubekey.sh) for downloading binaries with UI support.

Signed-off-by: redscholar <blacktiledhouse@gmail.com>
2025-10-20 18:45:43 +08:00
liujian 48b7c3b34b
feat: check inventory when it's changed (#2691)
Signed-off-by: joyceliu <joyceliu@yunify.com>
2025-08-07 17:50:23 +08:00
liujian 348c9b2d15
feat: enhance precheck tasks for image registry and network validation (#2676)
* feat: enhance precheck tasks for image registry and network validation

- Added a task to ensure successful authentication to the image registry.
- Updated existing tasks to provide clearer failure messages for required configurations.
- Improved validation for network interfaces and CIDR configurations, ensuring dual-stack support.
- Enhanced error handling in the resource handler for playbook creation.

Signed-off-by: joyceliu <joyceliu@yunify.com>

* feat: enhance configuration and query handling

- Added `-trimpath` flag to Go build configuration for improved binary paths.
- Updated REST configuration to set QPS and Burst limits for better performance.
- Refactored query handling to use string types for field and value, improving type consistency.
- Enhanced error handling in resource configuration updates and improved parsing of request bodies.

Signed-off-by: joyceliu <joyceliu@yunify.com>

* feat: check inventory when it's changed

Signed-off-by: joyceliu <joyceliu@yunify.com>

* feat: enhance playbook execution and query handling

- Added a new optional query parameter `promise` to the playbook and inventory endpoints, allowing for asynchronous execution control.
- Introduced a new result state `ResultPending` to indicate ongoing operations.
- Refactored the executor function to handle the `promise` parameter, enabling conditional execution of playbooks.
- Improved error handling and logging during playbook execution.

Signed-off-by: joyceliu <joyceliu@yunify.com>

---------

Signed-off-by: joyceliu <joyceliu@yunify.com>
2025-08-04 15:27:22 +08:00
liujian 620b7f56a3
feat: enhance connector interface and implementations (#2675)
- Updated the Connector interface to return both stdout and stderr for command execution.
- Modified implementations in local, kubernetes, and ssh connectors to support the new return values.
- Improved documentation for the Connector interface methods for clarity.
- Added error handling for stderr in command execution across connectors.
- Introduced new utility functions for IP parsing and checking localhost IPs.

Signed-off-by: joyceliu <joyceliu@yunify.com>
2025-07-30 08:02:34 +00:00
liujian 8c84ea7a33
doc: defined env by struct (#2589)
Signed-off-by: joyceliu <joyceliu@yunify.com>
2025-05-23 06:55:10 +00:00
liujian 4c9256cae4
feat: add ssh auth private_key_content (#2585)
Signed-off-by: joyceliu <joyceliu@yunify.com>
2025-05-22 09:43:09 +00:00
pixiake fa2e0f477e
support prometheus tasks (#2573)
Signed-off-by: pixiake <guofeng@yunify.com>
2025-05-16 08:52:03 +00:00
liujian 13df73e0ea
feat: add gather_facts cache (#2558)
Signed-off-by: joyceliu <joyceliu@yunify.com>
2025-05-12 06:20:01 +00:00
liujian 7560b29946
feat: add delete cluster command (#2528)
Signed-off-by: joyceliu <joyceliu@yunify.com>
Co-authored-by: joyceliu <joyceliu@yunify.com>
2025-04-11 14:04:47 +08:00
liujian 954579beb5
fix: Remove the error stack from the intermediate layer. (#2521)
Signed-off-by: joyceliu <joyceliu@yunify.com>
Co-authored-by: joyceliu <joyceliu@yunify.com>
2025-04-01 17:13:48 +08:00
liujian 34448781a6
feat: use unstructured to get or set value for config (#2519)
Signed-off-by: joyceliu <joyceliu@yunify.com>
Co-authored-by: joyceliu <joyceliu@yunify.com>
2025-03-31 10:00:11 +08:00
liujian e40c57fb9f
fix: change pipeline to playbook (#2512)
Signed-off-by: joyceliu <joyceliu@yunify.com>
Co-authored-by: joyceliu <joyceliu@yunify.com>
2025-03-24 09:51:03 +08:00
liujian ccca0edd81
fix: ssh command no need to escape (#2507)
Signed-off-by: joyceliu <joyceliu@yunify.com>
Co-authored-by: joyceliu <joyceliu@yunify.com>
2025-03-18 02:37:28 +00:00
liujian 86ff6371b6
Uninstall docker interface (#2478)
Signed-off-by: joyceliu <joyceliu@yunify.com>
Co-authored-by: joyceliu <joyceliu@yunify.com>
2025-03-05 18:55:12 +08:00
liujian b79482aa05
refactor: move env to _const. (#2455)
Co-authored-by: joyceliu <joyceliu@yunify.com>
2024-11-13 06:06:59 +00:00
dbb_DingYongliang fc6c8b5101
bug fix (#2414) 2024-09-25 09:33:16 +08:00
dbb_DingYongliang 4261580a60
fix: symbolic bug in GatherFacts function (#2411)
* fix: replace `bytes.TrimSuffix` with `bytes.TrimSpace` in HostInfo function, to avoid unexpected `\r` symbolic with different os system.

* fix: replace trim function with trimSpace

* fix bug
2024-09-20 11:18:10 +08:00
dbb_DingYongliang e4957a648b
fix: ssh formatting exception bug when executing commands (#2406)
* fix: ssh formatting exception bug when executing commands

* Update ssh_connector.go

WARNING: Use `nolint:gosec` annotation

* Update ssh_connector.go

* Update ssh_connector.go

* Update local_connector.go

* Update local_connector.go

* Update init_repository.yaml
2024-09-18 03:33:33 +00:00
liujian 92dd64f227
only use sudo mode to execute command (#2405)
* fix: graceful delete runtime dir.

Signed-off-by: joyceliu <joyceliu@yunify.com>

* fix: graceful delete runtime dir.

Signed-off-by: joyceliu <joyceliu@yunify.com>

* fix: delete not `sudo` mode.

Signed-off-by: joyceliu <joyceliu@yunify.com>

---------

Signed-off-by: joyceliu <joyceliu@yunify.com>
Co-authored-by: joyceliu <joyceliu@yunify.com>
2024-09-12 02:03:28 +00:00
liujian 289a6b0659
add `sudo_password` to use sudo mod. (#2402)
* fix: graceful delete runtime dir.

Signed-off-by: joyceliu <joyceliu@yunify.com>

* fix: graceful delete runtime dir.

Signed-off-by: joyceliu <joyceliu@yunify.com>

* fix: add `sudo` and SHELL in connector.

Signed-off-by: joyceliu <joyceliu@yunify.com>

---------

Signed-off-by: joyceliu <joyceliu@yunify.com>
Co-authored-by: joyceliu <joyceliu@yunify.com>
2024-09-11 15:38:59 +08:00
liujian d1026e15a5
add `sudo` and SHELL in connector (#2398)
* fix: graceful delete runtime dir.

Signed-off-by: joyceliu <joyceliu@yunify.com>

* fix: graceful delete runtime dir.

Signed-off-by: joyceliu <joyceliu@yunify.com>

* fix: add `sudo` and SHELL in connector.

Signed-off-by: joyceliu <joyceliu@yunify.com>

---------

Signed-off-by: joyceliu <joyceliu@yunify.com>
Co-authored-by: joyceliu <joyceliu@yunify.com>
2024-09-11 03:07:15 +00:00
II 865913fea9
feat: add more golangci lint rule. (#2366)
Signed-off-by: joyceliu <joyceliu@yunify.com>
Co-authored-by: joyceliu <joyceliu@yunify.com>
2024-08-21 16:33:36 +08:00
II 647ae222bf
fix: set default work_dir is "./kubekey". (#2354)
Signed-off-by: joyceliu <joyceliu@yunify.com>
Co-authored-by: joyceliu <joyceliu@yunify.com>
2024-08-12 11:26:06 +08:00
II 4919e639c5
feature: use go template instance pongo2 template (#2340)
* fix: misspelling

Signed-off-by: joyceliu <joyceliu@yunify.com>

* fix: misspelling

Signed-off-by: joyceliu <joyceliu@yunify.com>

* fix: misspelling

Signed-off-by: joyceliu <joyceliu@yunify.com>

* fix: misspelling

Signed-off-by: joyceliu <joyceliu@yunify.com>

* feat: user go-template instance pongo2-template

Signed-off-by: joyceliu <joyceliu@yunify.com>

* feat: not set incorrect

Signed-off-by: joyceliu <joyceliu@yunify.com>

* feat: more beautiful progress bar

Signed-off-by: joyceliu <joyceliu@yunify.com>

* feat: more beautiful progress bar

Signed-off-by: joyceliu <joyceliu@yunify.com>

* feat: more beautiful progress bar

Signed-off-by: joyceliu <joyceliu@yunify.com>

* feat: more beautiful progress bar

Signed-off-by: joyceliu <joyceliu@yunify.com>

* feat: more beautiful progress bar

Signed-off-by: joyceliu <joyceliu@yunify.com>

* feat: more beautiful progress bar

Signed-off-by: joyceliu <joyceliu@yunify.com>

* feat: more beautiful progress bar

Signed-off-by: joyceliu <joyceliu@yunify.com>

* feat: more beautiful progress bar

Signed-off-by: joyceliu <joyceliu@yunify.com>

* feat: more beautiful progress bar

Signed-off-by: joyceliu <joyceliu@yunify.com>

* feat: more beautiful progress bar

Signed-off-by: joyceliu <joyceliu@yunify.com>

* feat: more beautiful progress bar

Signed-off-by: joyceliu <joyceliu@yunify.com>

* feat: more beautiful progress bar

Signed-off-by: joyceliu <joyceliu@yunify.com>

* feat: more beautiful progress bar

Signed-off-by: joyceliu <joyceliu@yunify.com>

---------

Signed-off-by: joyceliu <joyceliu@yunify.com>
Co-authored-by: joyceliu <joyceliu@yunify.com>
2024-08-05 10:06:49 +08:00
II 9a98a8fd15
add ssh private key connector method (#2322)
* fix: rescue is not exec.

Signed-off-by: joyceliu <joyceliu@yunify.com>

* fix: join control-plane error.

Signed-off-by: joyceliu <joyceliu@yunify.com>

* feat: add ssh private key connector method.

Signed-off-by: joyceliu <joyceliu@yunify.com>

---------

Signed-off-by: joyceliu <joyceliu@yunify.com>
Co-authored-by: joyceliu <joyceliu@yunify.com>
2024-07-17 15:15:17 +08:00
joyceliu 63bd058738 feat: set base default dir for kubernetes connector.
Signed-off-by: joyceliu <joyceliu@yunify.com>
2024-07-15 12:19:27 +08:00
joyceliu c09106c6b3 feat: add localhost cluster. it will use default kubeconfig(.kube/config).
Signed-off-by: joyceliu <joyceliu@yunify.com>
2024-07-12 17:43:33 +08:00
joyceliu e70863ddd9 fix: golangci-lint
Signed-off-by: joyceliu <joyceliu@yunify.com>
2024-07-01 09:45:29 +08:00
joyceliu 1a4f7d6122 fix: add gather_facts interface to connector
Signed-off-by: joyceliu <joyceliu@yunify.com>
2024-06-24 18:10:45 +08:00
joyceliu 5b501d86c1 feat: add kubernetes connector
Signed-off-by: joyceliu <joyceliu@yunify.com>
2024-06-07 12:23:26 +08:00
joyceliu 94253593c5 feat: add sonobuoy plugin.
Signed-off-by: joyceliu <joyceliu@yunify.com>
2024-06-06 16:37:58 +08:00
joyceliu bdef602ddf feat: add create cluster command
Signed-off-by: joyceliu <joyceliu@yunify.com>
2024-05-21 19:21:48 +08:00
joyceliu 734709f15b fix: Optimize loop logic.
fix: watcher exclude unknown file.
fix: prepare variable before run task. parse tmpl syntax to actual value.
fix: add some info log.

Signed-off-by: joyceliu <joyceliu@yunify.com>
2024-03-07 17:38:01 +08:00
joyceliu c70cd6576e feat: add artifact precheck
feat: add default hostname (localhost) to represent local mechine if inventory not set.

Signed-off-by: joyceliu <joyceliu@yunify.com>
2024-02-07 19:05:46 +08:00
joyceliu e4db402e49 feat: add proxy client to transport resource to local.
Signed-off-by: joyceliu <joyceliu@yunify.com>
2024-02-06 16:08:43 +08:00
joyceliu 5205c4cbdd feat: Change the klog print format. Remove custom-defined cache instances and use Kubernetes cache instead.
Signed-off-by: joyceliu <joyceliu@yunify.com>
2024-01-15 19:23:31 +08:00
joyceliu 2a676185e2 feat: kubekey gitops
Signed-off-by: joyceliu <joyceliu@yunify.com>
2024-01-05 15:14:36 +08:00
24sama 88c26e54a1 dev-v2.0.0: add new api version and adjust project structure
Signed-off-by: 24sama <leo@kubesphere.io>
2021-11-01 18:15:16 +08:00
Shaohui Liu 46d0bf2178 Add an unit test example for install command
Signed-off-by: Shaohui Liu <liushaohui@xiaomi.com>
2021-05-31 16:42:37 +08:00