Автор оригинала: 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 или мой Блог Отказ