Рубрики
Без рубрики

Как настроить непрерывную интеграцию и развертывание для вашего приложения React

Zac Kwan Как настроить непрерывную интеграцию и развертывание для вашего React Reaction Appseting Up React Revelopment Environments может быть запутанным и пугающим к новичкам. Вы могли бы услышать, что разработчики говорят о том, как нужны разные пакеты, такие как Babel, WebPack и так далее, необходимы, но это

Автор оригинала: FreeCodeCamp Community Member.

Зак Кван

Настройка Реагировать Окружающая среда развития может быть запутана и пугала новичкам. Возможно, вы слышали, что разработчики говорят о том, как разные пакеты, как Бабел , WebPack И так далее, нужны также (но это спонтируемо).

Благодаря более популярному реагированию, есть несколько проектов котельной, которые стремятся помочь разработчикам создать подходящую среду разработки реагирования. Create-React-App является одним из самых популярных шаблонов стартера.

Он направлен, чтобы позволить разработчикам создать приложение React с Ноль Создание конфигурации Отказ

Разработчики больше не нужно беспокоиться о том, как WebPack должны быть установлены, что следует настроить с Бабел использовать ES6 или какой Линтер и Тест пакет для использования. Все просто будет работать из коробки. Да, это так просто!

Для разработчиков, которым нужно управлять базовой конфигурацией, у него есть NPM запустить извлечение Это позволяет им связываться с конфигурацией и делать то, что они не могли сделать ранее. Единственное, что следует отметить, что однажды извлекать Запускается, он не может быть изменен.

Стек для разработки для реагирования

Я написал следующее руководство, чтобы помочь разработчикам построить Непрерывная интеграция и стек непрерывного развертывания для их приложения raction Отказ Мы будем использовать Circleci , Кодеклим , и Heroku Отказ Если у вас нет учетной записи в любом из услуг выше, отправляйтесь, чтобы зарегистрироваться – они бесплатны!

В конце у нас будет приложение React в Github Repo Это автоматически развернут какие-либо изменения на Мастер ветвь к Heroku После всех испытаний проходят. Здесь это образец развернутого Реагировать Веб-сайт.

Давайте начнем!

Первый шаг должен следовать за Create-React-App Руководство по созданию нового приложения RACT. Сделай это:

$ npm install -g create-react-app$ create-react-app my-react-app$ cd my-react-app/$ npm start

Затем браузер должен автоматически открывать страницу в http://localhost: 3000/ Отказ Если вы видите Добро пожаловать на реагирование Запуск страницы, все хорошо.

Настройка Circleci

Далее нам нужно добавить небольшую конфигурацию для настройки Circleci для нашего проекта. Создать .circleci Папка и config.yml В этом каталоге и добавьте следующее:

version: 2jobs:  build:    docker:      - image: circleci/node:8    steps:      - checkout      - restore_cache: # special step to restore the dependency cache          key: dependency-cache-{{ checksum "package.json" }}      - run:          name: Setup Dependencies          command: npm install      - run:          name: Setup Code Climate test-reporter          command: |            curl -L https://codeclimate.com/downloads/test-reporter/test-reporter-latest-linux-amd64 > ./cc-test-reporter            chmod +x ./cc-test-reporter      - save_cache: # special step to save the dependency cache          key: dependency-cache-{{ checksum "package.json" }}          paths:            - ./node_modules      - run: # run tests          name: Run Test and Coverage          command: |            ./cc-test-reporter before-build            npm test -- --coverage            ./cc-test-reporter after-build --exit-code $?

Эта настройка для Circleci 2.0 Отказ Они закатают Круг 1.0 31 августа 2018 года.

построить Шаг устанавливает Узел: 8 с изображением докера. Это требует V6 или выше на работу.

В Шаги Сначала мы сначала проверяем проект, восстановим из кэша, если таковые имеются, то установите зависимости. Мы также устанавливаем CC-Test-репортер , инструмент, предоставленный кодекновением для отправки отчета о покрытии.

Затем мы запускаем Тест между раньше построить и После сборки Команды в соответствии с Кодовые документы. Это уведомляет кодировку в ожидании отчета и при выполнении, он либо отправляет отчет или состояние отказа.

Настройка git.

Создайте репо в Github и сделать следующее:

$ git init$ git remote add origin git@github.com:username/new-repo-here$ git add .$ git commit -m "first commit"$ git push -u origin master

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

Построить и проверить проект

Перейти к Circleci Войдите в систему и постройте недавно созданный проект. В конце сборки вы должны увидеть неудачу на Пробежать тест и охват Отказ

Установка кодеклимата

Вышеуказанная неудача заключается в том, что мы не уполномочены публиковать отчет к кодекновению. Итак, теперь, отправляйтесь на Кодеклим Войдите и постройте созданный проект GitHub. Мы должны получить это в конце анализа:

Для того, чтобы исправить проблему CIRCLECI и использовать Тестовое покрытие Обратная связь, нам понадобится Тестовый репортер ID Отказ Это может быть получено на Настройки> Тестовая обложка Возрастная вкладка. Скопируйте t Он проверяет репортер ID, не разделяя его ни с кем.

В Circleci , Перейдите к Проект> Настройки> Окружающая среда VA Жизнеспособность D Добавить CC_TEST_REPOR Ter_id с c Описался тестовый репор TER ID.

Настройка развертывания Heroku

Для развертывания реагирования на Heroku мы будем использовать Buildpack Отказ Сделать следующее:

$ heroku create REPLACE_APP_NAME_HERE — buildpack https://github.com/mars/create-react-app-buildpack.git$ git push heroku master$ heroku open

Мы выдвинули последние Мастер ветвь к Heroku с Git Push Heroku Master Отказ Веб-страница будет открыта в конце, показывая Добро пожаловать на реагирование страница.

Далее нам придется перейти к недавно созданию приложения в Heroku Dashboard Для настройки автоматического развертывания. Сделать следующее на приборной панели:

  • Перейти к Развертывание вкладка и Соединить к правильному репо GitHub.
  • Включить Автоматическое развертывание и Проверьте Дождитесь прохождения CI перед развертыванием Отказ

Мы сделали!

С несколькими шагами у нас есть полностью автоматизированная непрерывная интеграция и набор развертывания. Теперь с каждым фиксацией, который оттолкнулся к Github он отправит триггер к Circleci и Кодеклим Отказ После того, как тест пройдет, если он был на главной ветви, он также будет автоматически развернут на Heroku Отказ

Просмотр образца REPO здесь и развернутый сайт здесь !

Заключение

Это обновление моего предыдущего пост почти год назад. Использование CIRCLECI было обновлено до 2.0 и мы также используем обновленные CC-Test-репортер По Кодеклим Отказ Если вы заинтересованы в миграции, вы можете посмотреть на потянуть запрос Отказ

Спасибо за чтение! Если вам это нравится, пожалуйста, нажмите ???

Мне нравится читать и писать о технологиях и продуктах, особенно связанных с повышением производительности разработчиков. Вы можете сказать привет мне на моем Twitter или мой Блог Отказ