Versión de acceso desde MaysingInfo en MsBuild
-
13-12-2019 - |
Pregunta
Estoy tratando de crear / presionar el paquete de nuget a través del proceso de compilación de Visual Studio, como se explica aquí .
El paquete de construcción es fácil:
<Exec WorkingDirectory="$(ProjectDir)" Command="$(NuGetApp) pack $(ProjectFile) -OutputDirectory $(Deploy) -Verbose -Prop Configuration=Release"/>
Veo el archivo .nupkg File en $ (implementar) carpeta.
Pero para poder presionarlo, necesito $ (ensamblador) para usarlo en:
<Exec Command="$(NuGetApp) push $(ProjectName)$(AssemblyVersion) -s $(NugetServer) $(NugetKey)" />
Probé XMLREAD para buscar el valor, pero el valor en NUGETSPECFILE es "$ versión $" en lugar de la versión desde ensedsininfo.cs.
<XmlRead XPath="/package/metadata/version" XmlFileName="$(NuSpecFile)">
<Output TaskParameter="Value" PropertyName="AssemblyVersion" />
</XmlRead>
¿Cómo puedo acceder a la versión para que pueda usarlo en "Nuget Push"?
Solución
Esto lo haré:
<PropertyGroup>
<MyAssemblies>somedll\the.dll</MyAssemblies>
</PropertyGroup>
<Target Name="RetrieveIdentities">
<GetAssemblyIdentity
AssemblyFiles="$(MyAssemblies)">
<Output
TaskParameter="Assemblies"
ItemName="MyAssemblyIdentities"/>
</GetAssemblyIdentity>
<Message Text="Files: %(MyAssemblyIdentities.Version)"/>
</Target>
alterado desde aquí: tarea de MsBuild para leer la versión de DLL
Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow