This repository was archived by the owner on Nov 27, 2025. It is now read-only.
Repository navigation
initial support for .tag files for native isolation - #334
Merged
Merged
Conversation
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to subscribe to this conversation on GitHub.
Already have an account?
Sign in.
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Description
Added support for default solution tag for
push,validateand a few others to be taken from a.tagfile in the solution directory, similar to.envfiles. This default tag eliminates the need to always specify the--tagvalue when pushing developer-specific solution versions, reducing effort and likelihood of mistakes. In addition, the use ofFSOC_SOLUTION_TAGenvironment variable is now extended to solutions with native isolation.The tag priority, from highest to lowest:
--tag=value(or--stable, which means--tag=stable)FSOC_SOLUTION_TAGset to a non-empty tag value.tagfile in the same directory as the solution manifestNote that this default tag applies only to commands that (a) need a tag value and (b) rely on the presence of a solution in the directory (i.e., manifest and objects). This specifically excludes commands, such as
subscribe, which also take tags but don't need local solution files, as well as commands likesolution extend, which require local files but not tags.Note that the
.tagfile is a developer convenience (just like the environment variable) and, as such, will not be included in solution's bundle. Additionally, as the workflow intent is for.tagfiles to be local/per developer, fsoc will warn if the.tagfile in the solution is not excluded in .gitignore (in cases the solution is in a git repo), to reduce the chance of inadvertently checking the.tagfile into the solution repo.The support for
.tagfile is also propagated to pseudo-isolated solutions, in order to allow moving away from env.json-type files and aligning with native isolation. For pseudo-isolation, which is now deprecated and new solutions should not use, the priorities include:...
1.5. Explicit flag
--env-file...
4. Presence of
env.jsonin the solution root directory.Note that support for env files remains available only for pseudo-isolation and is expected to be removed with it. This streamlines the tag support and also avoids conflict and confusion with
env/directory files used in native isolation.This is a non-breaking change.
Type of Change
Checklist