sync permission spec
# 💻|contributing
b
I'm confused about the new action sync spec compared with the old module sync spec: In modules (https://docs.garden.io/reference/module-types/kubernetes#sync.paths-.defaultfilemode) we had -
sync.paths[].defaultFileMode
-
sync.paths[].defaultDirectoryMode
-
sync.paths[].defaultOwner
-
sync.paths[].defaultGroup
In actions (https://docs.garden.io/reference/action-types/deploy/kubernetes#spec.sync.defaults.filemode) we have now -
spec.sync.defaults.fileMode
-
spec.sync.defaults.directoryMode
-
spec.sync.defaults.owner
-
spec.sync.defaults.group
-
spec.sync.paths[].fileMode
-
spec.sync.paths[].directoryMode
-
spec.sync.paths[].owner
-
spec.sync.paths[].group
-
spec.sync.paths[].defaultFileMode
-
spec.sync.paths[].defaultDirectoryMode
-
spec.sync.paths[].defaultOwner
-
spec.sync.paths[].defaultGroup
If I understand correctly, they all do the same thing. Why do we have so many options that do the same thing? Am I right and this is a mistake/ oversight or is there a reason for this? Can we remove (or hide) some of those to make the docs more clear?
I know removing would be technically a breaking change, but this seems so odd to me that it would warrant adding a breaking change? WDYT?
Hello Team I need feedback on this. My confusion is currently blocking progress on https://github.com/garden-io/garden/pull/4824 which is an 0.13 regression that users already reported to us in Discord! Can one of you take a minute and comment @curved-intern-91221 @astonishing-tomato-18259 @alert-helicopter-61082
a
As I remember it, the idea was that
spec.sync.paths[].default*
were to be aliases for the other
spec.sync.paths[].*
keys. The
spec.sync.defaults.*
keys are applied as defaults on each of
spec.sync.paths[]
.
I'd suggest deprecating and hiding
spec.sync.paths[].default*
, and mapping them to the non-default named keys.
b
👍 Thank you, makes sense.
3 Views