Commit Graph

435 Commits

Author SHA1 Message Date
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
Arkaitz Jimenez cc33e7b7d8
Introduce Helmfile's own filesystem abstraction to correctly unit test some components (#307)
Use abstracted FS

Signed-off-by: Arkaitz Jimenez <arkaitzj@gmail.com>

Signed-off-by: Arkaitz Jimenez <arkaitzj@gmail.com>
2022-08-24 12:58:43 +09:00
yxxhero 7972a8921c
Merge pull request #301 from mikelorant/fix/diff-context
fix: return diff context config value
2022-08-18 15:09:23 +08:00
Michael Lorant b616a8b690 fix: return diff output config value
Signed-off-by: Michael Lorant <michael.lorant@fairfaxmedia.com.au>
2022-08-18 17:06:31 +10:00
Michael Lorant 86deeb377d fix: return diff context config value
Signed-off-by: Michael Lorant <michael.lorant@fairfaxmedia.com.au>
2022-08-18 16:40:05 +10:00
Arkaitz Jimenez 4553efdcf1 Formatting
Signed-off-by: Arkaitz Jimenez <arkaitzj@gmail.com>
2022-08-16 16:25:24 +02:00
Arkaitz Jimenez 684be0af50 Missing context readDir, required for any template using readDir* functions
Signed-off-by: Arkaitz Jimenez <arkaitzj@gmail.com>
2022-08-16 16:25:24 +02:00
Yusuke Kuoka bb056a4ffc fixup! Merge branch 'main' into update_golang_lint
Signed-off-by: Yusuke Kuoka <ykuoka@gmail.com>
2022-08-14 04:06:45 +00: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
David Ackroyd cf94a4edb3
Fix Inclusion of Releases for Other Environments (#276)
Fixing releases being included which do not match the environment
 requested, which is a regression introduced by #234. The issue remains
 when Helmfile state values are supplied, which is not a regression and
 will be addressed separately.

Partial resolution for #271

Signed-off-by: David Ackroyd <dackroyd@fairfaxmedia.com.au>

Signed-off-by: David Ackroyd <dackroyd@fairfaxmedia.com.au>
2022-08-14 10:47:47 +09:00
yxxhero 8690d63401 fix lint error
Signed-off-by: yxxhero <aiopsclub@163.com>
2022-08-13 07:40:32 +08:00
Vladimir Kuznichenkov 6c1b6f855a
Add file existence check for remove values
If remote file isn't present in repo we will add it anyway to the files list and check `if len(files) == 0 {` never will be true. That leads to missing section with `MissingFileHandler`.

That fix check that cloned file actually exists. In that case if we add a link to non-existing remote file `MissingFileHandler` will be called as expected.

Signed-off-by: Vladimir Kuznichenkov <kuzaxak.tech@gmail.com>
2022-08-12 10:01:56 +03: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
Sergii Iefremov 5ac1e1fb98 feat: fix needs error with context that includes slash
Signed-off-by: Sergii Iefremov <sergii.iefremov@axios.com>
2022-08-04 11:18:57 -04:00
yxxhero 9af8f1286a
Merge pull request #254 from vasicvuk/main
Implement readDirEntries method
2022-07-27 19:00:38 +08:00
vasicvuk 68d7c5f6a4 Implement readDirEntries method
Signed-off-by: vasicvuk <vuk.vasic@asseco-see.rs>
2022-07-26 16:20:38 +02:00
yxxhero 4e9b99d10e
Merge pull request #258 from xiaomudk/patch-4
fix: OCI Url and Version parse error
2022-07-23 21:14:04 +08:00
xiaomudk 59ffa687df fix: OCI Url and Version parse error
Signed-off-by: xiaomudk <xiaomudk@gmail.com>
2022-07-23 20:52:32 +08:00
xiaomudk cf62499d4a test: Add unit tests for ChartPull
Signed-off-by: xiaomudk <xiaomudk@gmail.com>
2022-07-23 18:41:59 +08:00
xiaomudk 70fd920384 test: Add unit tests for ChartExport
Signed-off-by: xiaomudk <xiaomudk@gmail.com>
2022-07-23 16:32:09 +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
Quan TRAN 9884e4fdb1 (fix) path on windows
ci
on canary build, version should show "0.0.0-dev"

Signed-off-by: Quan TRAN <account@itscaro.me>
2022-07-18 11:07:58 +02:00
yxxhero ac23def893 add Go lint
Signed-off-by: yxxhero <aiopsclub@163.com>
2022-07-16 20:21:11 +08:00
Yusuke Kuoka cc13492623
Merge pull request #201 from magicmemories/fix/helm-secrets-view
fix: use helm secrets view rather than helm secrets dec to decrypt
2022-07-16 21:04:48 +09:00
Adam Gardner a93661d382 chore: remove obsolete exemption of os.PathError in test case
Signed-off-by: Adam Gardner <adam.gardner@magicmemories.com>
2022-07-10 09:15:18 -10:00
Radon Rosborough de6a9aeebf Fix Test_DecryptSecretWithGotmpl
Signed-off-by: Radon Rosborough <rrosborough@plaid.com>
2022-07-07 16:26:33 -10:00
Radon Rosborough c1eb7f0623 Fix Test_DecryptSecret
Signed-off-by: Radon Rosborough <rrosborough@plaid.com>
2022-07-07 16:26:33 -10:00
Adam Gardner 74c1f9e9a0 fix: use helm secrets view rather than helm secrets dec to decrypt
Signed-off-by: Adam Gardner <adam.gardner@magicmemories.com>

chore: fix test case broken by change of helm subcommand

Signed-off-by: Adam Gardner <adam.gardner@magicmemories.com>
2022-07-07 16:26:12 -10:00
yxxhero 9179cfb55f fix deps issue
Signed-off-by: yxxhero <aiopsclub@163.com>
2022-07-06 08:37:19 +08:00
yxxhero 9b0293d9ea
fix within func issue (#209)
Signed-off-by: yxxhero <aiopsclub@163.com>
2022-07-05 17:50:43 +09:00
yxxhero ae5e93d71d
Merge pull request #200 from magicmemories/fix/invalid-path-on-windows
Fix/invalid path on windows
2022-06-30 14:00:07 +08:00
Adam Gardner e106d105ce Don't make unnecessary whitespace changes
Signed-off-by: Adam Gardner <adam.gardner@magicmemories.com>
2022-06-29 15:06:40 -10:00
Adam Gardner a81c8fa4e1 chore: rename test so that snapshot data lives at valid path on all filesystems
Signed-off-by: Adam Gardner <adam.gardner@magicmemories.com>
2022-06-29 15:06:40 -10:00
Eng Zer Jun ce3b81e2a1
test: use `T.Setenv` to set env vars in tests (#189)
This commit replaces `os.Setenv` with `t.Setenv` in tests. The
environment variable is automatically restored to its original value
when the test and all its subtests complete.

Reference: https://pkg.go.dev/testing#T.Setenv
Signed-off-by: Eng Zer Jun <engzerjun@gmail.com>
2022-06-30 09:15:34 +09:00
yxxhero 5bd5f72170
add unittest for text_renderer.go (#168)
Signed-off-by: yxxhero <aiopsclub@163.com>
2022-06-29 20:33:15 +09:00
Yusuke Kuoka fc306ec3d1
Make a few helmfile sub-commands consistently support needs-related flags (#78)
* Make a few helmfile sub-commands to consistently support needs-related flags

* helmfile-diff adds support for --include-transitive-needs
* helmfile-template adds support for --skip-needs
* helmfile-lint adds support for --skip-needs, --include-needs, and --include-transitive-needs

Ref https://github.com/roboll/helmfile/issues/2055

Signed-off-by: Yusuke Kuoka <ykuoka@gmail.com>

* Fix a few helmfile-lint needs related bugs and add tests

Signed-off-by: Yusuke Kuoka <ykuoka@gmail.com>

* Is include-transitive-needs realy working as intended? 🤔

Signed-off-by: Yusuke Kuoka <ykuoka@gmail.com>

* Confirm that it does fail on unselected need by default

Signed-off-by: Yusuke Kuoka <ykuoka@gmail.com>

* Add missing testdata

Signed-off-by: Yusuke Kuoka <ykuoka@gmail.com>

* Test helmfile-template for include/skip needs support

Signed-off-by: Yusuke Kuoka <ykuoka@gmail.com>

* Fix a few terms

Signed-off-by: Yusuke Kuoka <ykuoka@gmail.com>

* Add more tests to better know the current helmfile-diff behavior around needs

Signed-off-by: Yusuke Kuoka <ykuoka@gmail.com>

* Fix failing tests

Signed-off-by: Yusuke Kuoka <ykuoka@gmail.com>

* Fix helmfile-diff to consistently handle skip/include-needs

Signed-off-by: Yusuke Kuoka <ykuoka@gmail.com>

* Extract testhelper.RequireLog for reusing

Signed-off-by: Yusuke Kuoka <ykuoka@gmail.com>

* Fix all bugs and test cases for TestDiff and TestDiff_2

Signed-off-by: Yusuke Kuoka <ykuoka@gmail.com>

* Fix TestDiff_2

Signed-off-by: Yusuke Kuoka <ykuoka@gmail.com>

* Fix TestDiff

Signed-off-by: Yusuke Kuoka <ykuoka@gmail.com>

* Fix TestDiffWithNeeds

Signed-off-by: Yusuke Kuoka <ykuoka@gmail.com>

* Unify behavior on including disabled releases as needs for lint and template

Signed-off-by: Yusuke Kuoka <ykuoka@gmail.com>

* Fix bug that --include-transitive-needs does not imply include-needs

Signed-off-by: Yusuke Kuoka <ykuoka@gmail.com>
2022-06-20 07:19:39 +09:00
Sergio Morales 414db47428
chore(state): Append Api Versions flags to helm-diff (#107)
* chore(state): Append Api Versions flags to helm-diff

Signed-off-by: Sergio Morales <sergio@cornershopapp.com>

* chore(state): Added unit test to state.flagsForDiff

Signed-off-by: Sergio Morales <sergio@cornershopapp.com>

* chore(state): Check Helmstate values if ReleaseSpec values aren't set

Signed-off-by: Sergio Morales <sergio@cornershopapp.com>
2022-06-05 15:18:54 +09:00
Quan TRAN 577f54af7a
Introduce DISABLE_INSECURE_FEATURES to disable insecure command executions (#1)
* introduce DISABLE_INSECURE_FEATURES to disable insecure executions

Signed-off-by: Quan TRAN <account@itscaro.me>

* disable remote sources when DISABLE_INSECURE_FEATURES is set to "true"

Signed-off-by: Quan TRAN <account@itscaro.me>

* refactor envvar package

Signed-off-by: Quan TRAN <account@itscaro.me>

* (test) fix test fixtures

Signed-off-by: Quan TRAN <account@itscaro.me>

* use absolute path to avoid unit test failure

Signed-off-by: Quan TRAN <account@itscaro.me>

* Fix conflicts

Co-authored-by: Yusuke Kuoka <ykuoka@gmail.com>
2022-06-05 15:15:06 +09:00
Dominic 789af92c09
Adds feature to fetch release values and secret values from remote (#47)
* Adds feature to fetch environment values from remote

The releases and environment section allow for values files on the local
disk.
This enhancement allows for referencing remote (go-getter) files to be
fetched, cached and referenced.

In addition when fetching a remote git source with a ssh key the ssh key
will not be part of the caching folder name. This avoids two problems:
1. Don't leak sensitive information in the name of the caching folder
2. Base64 encoded SSH keys are very long. On some file systems the max
lenght of the directory name is hit when using the full base64
information in the path name.

The sshkey informations are reducted. Because of this fixed string
there is a change of colloding cache names. The likelihood of this
collision is very low. The git repo and git reference need to be the
same, but the sshkey can change. This will result in the same source to
be checkout out and referenced.

Signed-off-by: Lüchinger Dominic <dev@snowgarden.ch>

* Update pkg/state/storage.go

Co-authored-by: Yusuke Kuoka <ykuoka@gmail.com>
2022-06-05 15:08:38 +09:00
yxxhero aaf2126f91 little code optimize
Signed-off-by: yxxhero <aiopsclub@163.com>
2022-06-05 12:58:55 +08:00
Yusuke Kuoka 7c34e2e1b7
Merge pull request #83 from yxxhero/refactor_main
reconstruct main function
2022-06-05 13:27:04 +09:00
Yusuke Kuoka b986b3de9f
Merge pull request #99 from yxxhero/add_e2e_tmpl_test
add e2e tmpl test
2022-06-05 13:23:08 +09:00
yxxhero 8024949d48 reconstruct_main_function
Signed-off-by: yxxhero <aiopsclub@163.com>
2022-06-01 07:32:36 +08:00
Quan TRAN a92c574a98
Merge pull request #112 from yxxhero/remove_unused_comments
remove unused comments
2022-05-30 23:12:19 +02:00
Quan TRAN 0cfef76f0d
Merge pull request #88 from chubchubsancho/validate_manifest_on_sync
feat: allow --validate on sync command
2022-05-30 10:11:53 +02:00
yxxhero 0c57129aab remove unused comments
Signed-off-by: yxxhero <aiopsclub@163.com>
2022-05-30 10:08:19 +02:00
yxxhero 33c66a6f46 add readfile e2e test
Signed-off-by: yxxhero <aiopsclub@163.com>
2022-05-24 07:50:08 +08:00
Yusuke Kuoka 281fe9bf59
Merge pull request #101 from austince/rename-module
Rename module to github.com/helmfile/helmfile
2022-05-22 15:19:16 +09:00
austin ce eb3484d4a8
Rename module to github.com/helmfile/helmfile
Also updates a few more references to the roboll/helmfile repository,
where possible.

Signed-off-by: austin ce <austin.cawley@gmail.com>
2022-05-18 10:05:07 -04:00