Рубрики
Uncategorized

Azure Static Web Apps — Пользовательские сборки и развертывания

Несмотря на Microsoft претензию «Github Github и Azure DEVOPS» со статическими веб-приложениями, один значительно проще в использовании, чем другой. Давайте посмотрим на то, сколько функций мы отказываемся от прилипания к Azure DEVOPS. Теги с Azure, DevOps, WebDev.

Несмотря на Microsoft претензии «Первоклассный Github и Azure DevOps Integration» с Статические веб-приложения , один значительно легче использовать, чем другой. Давайте посмотрим, сколько функций мы отказываемся от прилипания к Azure DevOps:

Требуется ручная настройка трубопровода Автоматически добавляет определение трубопровода в репо Создание / развертывание трубопроводов
Поддержка портала Azure
VS расширение кода
Постановка окружающей среды и потянутых запросов

Похоже, много функциональности отсутствует. Это, однако, просит вопрос, могу ли мы сделать что-то об этом?

Оказывается, мы можем … вроде

В дальнейшем выглядит немного в конвейеров сборки ADO, мы замечаем, что Microsoft опубликовала эту задачу на Github Отказ Бинго!

Процесс, кажется, работает Один сценарий Что в свою очередь работает докера изображение, что-то вроде этого:

...
docker run \
    -e INPUT_AZURE_STATIC_WEB_APPS_API_TOKEN="$SWA_API_TOKEN" \
    ...
    -v "$mount_dir:$workspace" \
    mcr.microsoft.com/appsvc/staticappsclient:stable \
    ./bin/staticsites/StaticSitesClient upload

Что именно StaticsItesClient Окурается ли загадками, но при успешной сборке ( Использование Oryx ) Это создает две zip-файлы: app.zip и API.ZIP Отказ Затем он загружает как для хранения BLOB и отправляет запрос на ContentDistribution Конечная точка, чтобы выбрать активы.

Это докер — он везет где угодно

Это изображение не нужно бегать в ADO или Github! Мы можем действительно запустить этот контейнер локально и развернуть, даже не совершая исходный код. Все, что нам нужно, это токен развертывания:

docker run -it --rm \
   -e INPUT_AZURE_STATIC_WEB_APPS_API_TOKEN= 
   -e DEPLOYMENT_PROVIDER=DevOps \
   -e GITHUB_WORKSPACE="/working_dir"
   -e IS_PULL_REQUEST=true \
   -e BRANCH="TEST_BRANCH" \
   -e ENVIRONMENT_NAME="TESTENV" \
   -e PULL_REQUEST_TITLE="PR-TITLE" \
   -e INPUT_APP_LOCATION="." \
   -e INPUT_API_LOCATION="./api" \
   -v ${pwd}:/working_dir \
   mcr.microsoft.com/appsvc/staticappsclient:stable \
   ./bin/staticsites/StaticSitesClient upload

Также обратите внимание, как это развертывание создало промежуточную среду:

Слово осторожности

Хотя это кажется довольно хорошим маленьким хайком — это не поддерживается. Портал также будет ошибка и отказываться правильно отображать среды, если ресурс создан с помощью «другого» рабочего процесса:

Портал

AZ CLI.

Вывод

Дайвинг глубоко в статические веб-приложения Развертывание — это много веселья. Это может также помочь в ситуациях, когда внешний контроль источника недоступен. Однако для реальных рабочих нагрузок мы рекомендуем прилипать к потоку GitHub.

Оригинал: «https://dev.to/timur_kh/azure-static-web-apps-custom-build-and-deployments-371l»