This release includes new sync modes and configuration options for dev mode, a more robust
logs command and more flexibility in template string resolution for module templates.
Here are some highlights from the release, but please check the release notes for a full list of changes introduced in this release.
This release adds the
one-way-replica-reverse sync modes for dev mode when using
This adds a great deal of flexibility and specificity when a full two-way sync is not desirable (especially since conflicts can happen with the
two-way-safe Mutagen mode).
In general, it’s easiest to get started with the
two-way sync modes, and then graduate to a more fine-grained setup based on
one-way-replicated-reverse once you’re ready to specify exactly which paths to sync and which files/directories to ignore from the sync (since this gives you a conflict-free setup).
Excludes and permission/owner/group settings can now be set on the provider level for
Defaults specified there will be extended/overridden by corresponding settings on individual sync specs.
This helps reduce clutter when the same excludes and permission settings are commonly applied across services/modules.
Here’s an example from the updated code synchronization guide:
kind: Project ... providers: - name: kubernetes ... # Configure project-wide exclusion rules and default permission/ownership settings # for synced files/directories. devMode: defaults: exclude: - "/**/node_modules" owner: 1000 # <- set an integer user ID or a string name group: 1000 # <- set an integer group ID or a string name fileMode: 0666 # <- set the permission bits (as octals) for synced files directoryMode: 0777 # <- set the permission bits (as octals) for synced directories
In many cases, it’s not desirable to pass files specified under
generateFiles.sourcePath through template resolution.
This release adds a
resolveTemplates boolean flag control that behavior explicitly, which makes module templates more flexible and easier to use in some cases.