Распространенная практика создания и публикации DLL с помощью инструментов CI/CD.C#

Место общения программистов C#
Ответить
Anonymous
 Распространенная практика создания и публикации DLL с помощью инструментов CI/CD.

Сообщение Anonymous »

У меня есть программа на C#, которая генерирует файлы DLL при ее сборке. Я использую эти DLL как расширения в другой программе. Сейчас я создаю библиотеки DLL вручную, но хочу настроить конвейер CI/CD для автоматизации этого процесса и загрузить библиотеки DLL в учетную запись хранения Azure (или в другое доступное место, если у вас есть предложения). Я написал Dockerfile для управления процессом сборки, но не уверен, как лучше всего спроектировать полную настройку CI/CD в дальнейшем.
Вот созданный мною Dockerfile :
Вот Dockerfile

Код: Выделить всё

FROM mcr.microsoft.com/dotnet/framework/sdk:4.8-windowsservercore-ltsc2022

WORKDIR /app

RUN cmd /C "curl -L -o C:\app\AzureCLI.msi https://aka.ms/installazurecliwindows"

RUN cmd /C "msiexec /i "C:\app\AzureCLI.msi" /quiet /norestart;"

RUN cmd /C "del C:\app\AzureCLI.msi"

COPY . /app

COPY  /obj/Release /app

RUN cmd /c msbuild MachNumberCalculator10dotNet.sln /p:Configuration=Release /p:OutDir=C:\app\build\output\;

RUN powershell -Command \
"Compress-Archive -Path 'C:\app\build\output\*' -DestinationPath 'C:\app\output.zip'"

ENV AZURE_CLIENT_ID="my_client_ID"
ENV AZURE_CLIENT_SECRET="My_Client_Secret"
ENV AZURE_TENANT_ID="My_tenanet_ID"
ENV AZURE_STORAGE_ACCOUNT="storage_account_name"
ENV AZURE_CONTAINER_NAME="apps/bpt/Mach"

RUN powershell -Command \
"az login --service-principal -u $Env:AZURE_CLIENT_ID -p $Env:AZURE_CLIENT_SECRET --tenant $Env:AZURE_TENANT_ID"

RUN powershell -Command \
"az storage blob upload \
--account-name $Env:AZURE_STORAGE_ACCOUNT \
--container-name $Env:AZURE_CONTAINER_NAME \
--file 'C:\app\output.zip' \
--name 'output.zip' \
--auth-mode login"

RUN powershell -Command \
"az logout
Мой код находится на GitHub, поэтому я подумываю использовать для конвейера DevOps или GitHub Actions, но я открыт для других предложений.
Кроме того, образ Docker, который я создал, довольно большой (10 ГБ), что может быть не идеальным для конвейера.

Подробнее здесь: https://stackoverflow.com/questions/790 ... i-cd-tools
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

Вернуться в «C#»