Open cdhanna opened 5 months ago
how will we read the XML? XML parsing, or MSBUILD?
Also, we need the assembly definition UX as a UI step in the Microservice Manager window, as per this ticket, https://github.com/beamable/BeamableProduct/issues/3173
after we have removed the
beamo-local-manifest.json
file from the CLI, the CLI will be able to tell Unity where all the USAM projects are. That gives us 90% of what the signpost files were doing in the first place.The remaining issue is that the signpost files contained an assembly definition data point for each USAM. Instead, we should shift the sole responsibility for those assembly references into the USAM
csproj
file, using the existingProjectReference
node,Of note,
$(UnityAssemblyDefintions)
property should be provided by theDirectory.Build.Props
file, and point to the location where Unity generatescsproj
files from assembly definitions. This means we'll need to modify thebeam project generate-props
command.BeamProjectType
attribute is a custom addition to thecsproj
spec, and it is our hint that theProjectReference
is an assembly definition reference.Then, when Unity uses the CLI to scan for the local manifest, a new section should be included that has project specific sections,
it is important that if the
$(UnityAssemblyDefintions)
property is used in the definition of a reference, it should be fully evaluated in the response from the CLI. Unity will then take that list, identify the assemblies that map tomyreference
andmyreference2
, and generate the correspondingcsproj
files.