Найти тему
IT

Автодеплой с gitlab на heroku.

Добрый день, это канал посвященный небольшим инструкциям, которые я пишу для себя и людей, которые являются начинающими разработчиками.

Давайте создадим проект на хероку и гитлабе:

-2

Теперь давайте склонируем новый проект к себе:

-3

В проекте я создам простой js сервер, который я уже описывал в статье.

Это код сервера, он изменен, теперь тут есть порт, который нам будет давать heroku.
Это код сервера, он изменен, теперь тут есть порт, который нам будет давать heroku.

Теперь давайте создадим в корне файл ".gitlab-ci.yml" со следующим содержимым:

image: node:latest

before_script:
    - apt-get update -qy
    - apt-get install -y ruby-dev
    - gem install dpl

deploy:
script:
    - dpl --provider=heroku --app=$HEROKU_APP_PRODUCTION--api-key=$HEROKU_API_KEY
only:
    - master

Напишем в терминале команду, чтобы создать файл конфиг:

npm init

Добавим в конец файла package.json следующие строки:

"engines": {
"node": "12.16.1",
"npm": "6.13.4"
},

Версия node и npm соответственно, команды, чтобы узнать их:

node -v
npm -v

Создадим файла под названием " Procfile" со след содержимым:

web: node index.js

Теперь давайте откроем сайт Heroku и в настройках аккаунта найдем API ключ и скопируем его:

-5

Откроем наш проект на gitlab:

-6

И во вкладке Variables создадим переменные, которые указали в скрипте ( HEROKU_API_KEY - ключ API и HEROKU_APP_PRODUCTION - название вашего проекта на heroku):

-7

Готово, теперь все, что вы запушите в мастер будет деплоиться на хероку.

Тут вы можете посмотреть отчет об успехе или не успехе.

-8
-9
-10

Теперь мы можем зайти на хероку и увидеть рабочий сервер.

-11

Ссылка на готовый гит репозиторий.

Спасибо за прочтение статьи, подписывайтесь и оставляйте комментарии, о чем еще написать.