2015-07-21 2 views
3

У меня есть git-репозиторий в GitLab, который мне нужно опубликовать в Azure Web App на каком-то произвольном триггере (т. Е. Он не должен запускаться при каждом обновлении в репозиторий, но мы достаточно гибки в отношении того, как мы запускаем публикацию). Насколько я вижу, самый простой способ сделать это - создать скрипт Azure Automation Powershell, который каким-то образом будет запущен, и который затем будет аутентифицироваться в GitLab, вытащить репозиторий и опубликовать его. Тем не менее, я не уверен, как запускать произвольный сценарий Powershell без входа в портал управления Azure или как получить ключ развертывания для Azure, чтобы он мог аутентифицироваться в Gitlab.Публикация в Azure Web Apps из репозитория GitLab при запуске

Являются ли эти разрешимые проблемы, или есть лучший метод?

+0

Посмотрите, работает ли ответ на ваш @SamuelFront – Mastro

ответ

3

UPDATE: Еще лучше более уточненный статья здесь: https://christianliebel.com/2016/05/auto-deploying-to-azure-app-services-from-gitlab/

После того, как вы прочитали и поняли, что один, то вы можете посмотреть на это для Azure и VSTS https://www.visualstudio.com/en-us/docs/build/get-started/aspnet-4-ci-cd-azure-automatic#faq

Старые Ответ: Я столкнулся с этой статьей, https://github.com/projectkudu/kudu/wiki/Continuous-deployment

Нижняя область - это наиболее полезная деталь. Он должен работать на GitLab. Просто, чтобы очистить его, сервис Kudo уже работает на всех ваших лазурных веб-проектах и ​​должен быть уже там. Просто добавьте «scm» в url для доступа к нему.

Ok Нижняя часть статьи здесь:

Настройка веб-Hook так Куда получает уведомление, когда развертывание происходит

URL, крючка является/развернуть путь на службе Куды. Так выглядит https://mysite.scm.azurewebsites.net/deploy. Но поскольку служба использует базовый auth, вам нужно передать свои кредиты в URL. Как правило, вы захотите использовать учетные данные на уровне сайта, а не учетные данные пользователя (см. «Учетные данные развертывания»). Таким образом, полный URL-адрес будет выглядеть так: https: // $ mysite: [email protected]/deploy

Самый простой способ получить этот URL - это скопировать его прямо с Azure Portal. Вы найдете его на вкладке «Конфигурация» в поле «Триггер развертывания».

Как только у вас есть URL-адрес, вы можете установить его как крючок GitHub/Bitbucket/GitLab .

Для частных РЕПО, создать ключ развернуть

Если репо является частным, вы также должны настроить SSH ключ «разворачивать» на GitHub/Bitbucket/GitLab.

Это можно сделать, выполнив следующие действия:

Возьмите полный Deploy URL выше, и заменить/развернуть с/API/sshkey ensurePublicKey = 1?. Итак, это будет выглядеть как https: // $ mysite: [email protected]/api/sshkey? SecurityPublicKey = 1 Запуск curl по этому URL-адресу, который возвращает открытый ключ SSH. Он возвращается как строка JSON, поэтому вам нужно удалить кавычки. Он должен выглядеть как ssh-rsa AAAAB3NzaC1etc ... Установите эту строку как «ключ развертывания» в репозиторий GitHub/Bitbucket/GitLab.

+0

Хорошо сделал то, что вы предложили. – Mastro

+0

Ницца! Спасибо за это обновление - это надежный ответ. – Mogsdad

+0

Вам удалось настроить это для филиалов? хотел бы иметь слот развертывания на каждую ветку и в настоящий момент фиксирует любой филиал на репо, инициирует развертывание. http://stackoverflow.com/questions/36915380/gitlab-continuous-deployment-to-azure-web-app – Tim

Смежные вопросы