yxxhero
6e21671228
feat: kubedog integration with unified resource handling ( #2383 )
...
* feat: add kubedog-based resource tracking integration
Add kubedog tracking as an alternative to Helm's --wait flag with:
- Real-time deployment progress tracking
- Container log streaming
- Fine-grained resource filtering (trackKinds/skipKinds/trackResources)
Features:
- New pkg/resource package for unified manifest parsing and filtering
- New pkg/kubedog package wrapping kubedog library
- CLI flags: --track-mode, --track-timeout, --track-logs
- Helmfile YAML support for trackMode, trackTimeout, trackLogs, trackKinds, skipKinds, trackResources
- Case-insensitive kind matching for filtering
- Multi-context support with proper kubeconfig/kubeContext handling
Tracking supports: Deployment, StatefulSet, DaemonSet, Job
Resource filtering priority (highest to lowest):
1. trackResources - explicit resource whitelist
2. skipKinds - blacklist specific kinds
3. trackKinds - whitelist specific kinds
Integration:
- Disable Helm --wait when using kubedog tracking
- Track after successful Helm sync/apply
- Respect release.Namespace as fallback for resources without namespace
- Use getKubeContext() for correct cluster targeting
Tests:
- Unit tests for resource filtering and kubedog options
- Integration test with httpbin chart
- E2E snapshot tests for YAML serialization
- Documentation in docs/advanced-features.md
Signed-off-by: yxxhero <aiopsclub@163.com >
* fix: address PR #2383 review comments (round 4)
1. resource/filter.go: Skip empty whitelist entries in matchWhitelist
- At least one field (kind/name/namespace) must be specified
- Prevents matching all resources with empty TrackResources entries
2. config/apply.go: Add ValidateConfig for track-mode validation
- Validate --track-mode must be 'helm' or 'kubedog'
- Reject invalid values like --track-mode foo
3. config/sync.go: Add ValidateConfig for track-mode validation
- Same validation as apply command
- Ensures consistent behavior across commands
Signed-off-by: yxxhero <aiopsclub@163.com >
---------
Signed-off-by: yxxhero <aiopsclub@163.com >
2026-03-02 17:15:12 +08:00
Zubair Haque
ab5e9a1326
Issue-1883 fix ( #2058 )
...
* Issue-1883 fix
Signed-off-by: zhaque44 <haque.zubair@gmail.com >
Signed-off-by: yxxhero <aiopsclub@163.com >
2025-11-19 07:45:56 +08:00
Copilot and yxxhero
135ff63aa3
Add missing --timeout flag to helmfile sync command with documentation ( #2148 )
...
* Initial plan
* Implement --timeout flag for helmfile sync command
- Add Timeout field to SyncOptions struct in pkg/config/sync.go
- Add --timeout flag to sync command in cmd/sync.go
- Add Timeout field to SyncOpts struct in pkg/state/state.go
- Modify timeoutFlags() function to prioritize CLI timeout over release and default configs
- Add test case to verify CLI timeout overrides other timeout settings
- Follow same pattern as existing --wait and --wait-for-jobs flags
Co-authored-by: yxxhero <11087727+yxxhero@users.noreply.github.com >
* Fix lint issues: format test struct fields properly
Co-authored-by: yxxhero <11087727+yxxhero@users.noreply.github.com >
* Update docs: Add --timeout flag documentation for helmfile sync command
Co-authored-by: yxxhero <11087727+yxxhero@users.noreply.github.com >
---------
Co-authored-by: copilot-swe-agent[bot] <198982749+Copilot@users.noreply.github.com >
Co-authored-by: yxxhero <11087727+yxxhero@users.noreply.github.com >
2025-08-27 14:32:02 +08:00
yxxhero
e4273d050e
feat: add labels for helm release ( #1046 )
...
feat: add labels for k8s resources
Signed-off-by: yxxhero <aiopsclub@163.com >
2025-03-30 19:24:41 -04:00
yxxhero
22ad21c1ae
feat: add --take-ownership flag to apply and sync commands ( #1863 )
...
Signed-off-by: yxxhero <aiopsclub@163.com >
2025-01-11 08:41:10 -06:00
Zubair Haque
d1416ec7b4
feat: add skip json schema validation during the install /upgrade of a Chart ( #1737 )
...
* open PR for --skip-schema-validation flag
Signed-off-by: zhaque44 <haque.zubair@gmail.com >
2024-10-24 20:53:18 +08:00
yxxhero
8b16d36903
feat: add 'hide-notes' flag to helm in sync and apply commands ( #1746 )
...
Signed-off-by: yxxhero <aiopsclub@163.com >
2024-10-21 09:52:56 -04:00
Tim Ramlot
7ccacb7ee5
Add the SyncArgs option and --sync-args flag ( #1375 )
...
* add the SyncArgs option
Signed-off-by: Tim Ramlot <42113979+inteon@users.noreply.github.com >
* add syncArgs to helmDefaults and update index.md
Signed-off-by: Tim Ramlot <42113979+inteon@users.noreply.github.com >
* add --sync-args flags to helmfile sync
Signed-off-by: Tim Ramlot <42113979+inteon@users.noreply.github.com >
* add tests for appendExtraDiffFlags and appendExtraSyncFlags
Signed-off-by: Tim Ramlot <42113979+inteon@users.noreply.github.com >
---------
Signed-off-by: Tim Ramlot <42113979+inteon@users.noreply.github.com >
2024-02-29 20:49:48 +08:00
Maarten Boekhold
d0b8d7ee5e
Add "PostRendererArgs" option to be passed to helm ( #1133 )
...
* Add "PostRendererArgs" option to be passed to helm
This allows using PowerShell scripts on Windows as Post Renderer.
Signed-off-by: Maarten Boekhold <maarten.boekhold@finastra.com >
2023-11-21 21:32:14 +08:00
yxxhero
00dace9b63
Feat add cascade support ( #860 )
...
* feat: add cascade support for helm v3.12.0
Signed-off-by: yxxhero <aiopsclub@163.com >
2023-05-15 13:49:33 +08:00
Hans Song
1d0ba72b47
feat: add/expose cli flags ( #771 )
...
* feat: add/expose cli flags
Signed-off-by: Hans Song <hans.m.song@gmail.com >
* fix tests
Signed-off-by: Hans Song <hans.m.song@gmail.com >
* remove skipdeps from subcommand options
Signed-off-by: Hans Song <hans.m.song@gmail.com >
* remove skip-deps from subcommand flags
Signed-off-by: Hans Song <hans.m.song@gmail.com >
* remove SkipDeps from subcommand implementations
Signed-off-by: Hans Song <hans.m.song@gmail.com >
* update doco with new flags
Signed-off-by: Hans Song <hans.m.song@gmail.com >
---------
Signed-off-by: Hans Song <hans.m.song@gmail.com >
2023-04-02 14:53:52 +08:00
yxxhero
c21958557c
fix: improve set and values flags help message ( #724 )
...
Signed-off-by: yxxhero <aiopsclub@163.com >
2023-03-07 09:21:13 +09:00
koralsky
fc634c9ee3
feat: Reset values flag ( #602 )
...
Ref https://github.com/helmfile/helmfile/discussions/593
* implemented --reset-values flag overriding .helmDefaults.reuseValues=true
* tests for --reset-values flag
* fixed pkg/app tests
* added tests for both reset & reuse flags given
* added appendValuesControlMode method for --reuse/reset-values flag processing
* updated code comments & docs
Signed-off-by: Karol Ossowski <k@koralsky.pl >
2023-01-17 09:34:37 +09:00
yxxhero
7410316cf9
update postrenderer docs ( #580 )
...
Signed-off-by: yxxhero <aiopsclub@163.com >
Signed-off-by: yxxhero <aiopsclub@163.com >
2022-12-15 11:50:18 +08:00
guofutan
0a953731b0
fix( #507 ): support assign --post-renderer within helmfile flags and helmdefault or release config
...
1. only implement post-renderer flags this patch
2. As mumoshu advise, add helmfile flags `--post-render` and add the
postRenderer config in helmDefaults and release. the priority is
helmfile flags > release > helmDefaults.
3. fix the test case in state_test.go and some other tests.
Signed-off-by: guofutan <guofutan@tencent.com >
Signed-off-by: yxxhero <aiopsclub@163.com >
2022-12-13 13:12:07 +08:00
koralsky
1ba83ae722
declare "reuse values" control mode in helmDefaults ( #527 )
...
* support for helmDefaults.reuseValues
Signed-off-by: Karol Ossowski <k@koralsky.pl >
2022-11-20 08:47:48 +08:00
yxxhero
f8a297bbac
fix --debug flag
...
Signed-off-by: yxxhero <aiopsclub@163.com >
2022-10-25 08:24:23 +08:00
yxxhero
21c28ca6d0
feat: add reuse-values args for diff apply and sync ( #411 )
...
Signed-off-by: yxxhero <aiopsclub@163.com >
Signed-off-by: yxxhero <aiopsclub@163.com >
2022-10-08 14:27:39 +09:00
yxxhero
5f699656df
Optimize cmd pkg ( #384 )
...
Signed-off-by: yxxhero <aiopsclub@163.com >
Signed-off-by: yxxhero <aiopsclub@163.com >
2022-10-05 11:02:24 +09:00
yxxhero
18eee1fa47
move interactive option to global ( #370 )
...
Fixes #366
Signed-off-by: yxxhero <aiopsclub@163.com >
2022-09-18 18:47:40 +09:00
yxxhero
ade8e81cc1
Merge pull request #342 from helmfile/339-introduction-of-skip-needs-results-in-breaking-change
...
Fix --skip-needs regression introduced in v0.145.0
2022-09-14 08:50:38 +08:00
yxxhero
bf323b4021
fixed: fix skip-needs issue
...
Signed-off-by: yxxhero <aiopsclub@163.com >
2022-09-12 18:04:20 +08:00
Viktor Oreshkin
822b7b2a9b
feat: honor concurrency in withPreparedCharts
...
Signed-off-by: Viktor Oreshkin <imselfish@stek29.rocks >
2022-09-01 02:08:54 +03:00
yxxhero
9284d1764e
Add --interactive option to sync, delete and destroy / Remove --interactive from global options ( #328 )
...
* add interactive in sync & remove --interactive in global options
Signed-off-by: yxxhero <aiopsclub@163.com >
* fix unittest
Signed-off-by: yxxhero <aiopsclub@163.com >
* same behave as apply when in interactive
Signed-off-by: yxxhero <aiopsclub@163.com >
Signed-off-by: yxxhero <aiopsclub@163.com >
2022-08-28 10:36:07 +09:00
Yusuke Kuoka
89950f3794
Merge branch 'main' into update_golang_lint
2022-08-14 12:21:10 +09:00
yxxhero
94b7a6c128
Cleanup pkg/config/config.go ( #287 )
...
Signed-off-by: yxxhero <aiopsclub@163.com >
Signed-off-by: yxxhero <aiopsclub@163.com >
2022-08-14 12:17:02 +09:00
yxxhero
8690d63401
fix lint error
...
Signed-off-by: yxxhero <aiopsclub@163.com >
2022-08-13 07:40:32 +08:00
Yusuke Kuoka
eabf360fe8
Merge branch 'main' into fix_cobra_flag_default_value
2022-08-08 10:35:32 +09:00
yxxhero
6a37ae9650
Add flags about need for lint subcmd ( #273 )
...
* fix typo
Signed-off-by: yxxhero <aiopsclub@163.com >
* add flags about needs for lint subcmd
Signed-off-by: yxxhero <aiopsclub@163.com >
2022-08-08 10:32:30 +09:00
yxxhero
8beb69d08e
fix cobra flag default value
...
Signed-off-by: yxxhero <aiopsclub@163.com >
2022-08-06 15:04:34 +08:00
yxxhero
85ade797ab
Use cobra ( #234 )
...
switch to cobra
Signed-off-by: yxxhero <aiopsclub@163.com >
2022-07-19 21:06:18 +09:00
yxxhero
ac23def893
add Go lint
...
Signed-off-by: yxxhero <aiopsclub@163.com >
2022-07-16 20:21:11 +08:00
yxxhero
45283bfcde
move all subcommand to sigle file
...
Signed-off-by: yxxhero <aiopsclub@163.com >
2022-06-10 12:42:31 +08:00