Estuve fortaleciendo nuestras canalizaciones de compilación y moví el tiempo de ejecución a csproj para garantizar que las compilaciones locales y la compilación/publicación de la línea de comandos (en la canalización) tengan el mismo tiempo de ejecución.
Sin embargo, ahora me pregunto a mí mismo, ya que la salida publicada cuando se publica localmente no tiene el tiempo de ejecución en la ruta de la carpeta (a diferencia de cómo está documentado).
Si no se especifica, el valor predeterminado es [carpeta_archivo_del_proyecto]/bin/[configuración]/[marco]/publicar/ para archivos binarios multiplataforma y ejecutables dependientes del marco. El valor predeterminado es [carpeta_archivo_proyecto]/bin/[configuración]/[marco]/[tiempo de ejecución]/publicación/ para un ejecutable autónomo.
https://docs.microsoft.com/en-us/dotnet/core/tools/dotnet-publish#argumentos
¿Me lleva a pensar que el tiempo de ejecución en csproj es solo para restauraciones nuget? es decir, dotnet build --runtime [runtime] en realidad acaba de pasar a dotnet restore --runtime [runtime]
¿Mientras que el tiempo de ejecución para la publicación de dotnet publish es para las compilaciones autónomas independientes del marco real?
Fondo
La razón por la que no me di cuenta de esto antes es que lo estoy haciendo explícito:
NuGetAuthenticate (tarea de Azure Pipeline para autenticar fuentes privadas)
Supuse que la publicación estaba usando RuntimeIdentifiers en el csproj, pero creo que ahora quizás sea una compilación multiplataforma y posiblemente autocontenida bajo el tiempo de ejecución actual del agente de compilación.