Skip to content

Сборка API Карт

Alex Fedosov edited this page Jun 16, 2015 · 33 revisions

Возможности

Приложение поддерживает сборку в следующих режимах:

  • dev-сборка
  • релизная сборка
  • сборка с кастомными параметрами

Помимо этого, имеется возможность:

  • произвести линтинг кода
  • прогнать тесты

Сборка в dev-режиме

Выполняется командой:

gulp dev

В этом режиме будет произведена полная сборка приложения, а также запуск сервера разработки и отслеживания изменений файлов. После исполнения команды приложение будет доступно по адресу http://localhost:3000.

Релизная сборка

gulp build --release

В этом режиме будет дополнительно произведена минификация JS и CSS-кода.

Сборка с кастомным набором параметров

Если необходимо получить сборку CSS и JS с конкретным набором параметров, то нужно указать их команде gulp build.

Доступные параметры:

  • pkg
  • skin

Примеры:

gulp build --skin=dark

Собрать АПИ карт с тёмной темой.

gulp build --pkg=DGCustomization,DGPoi,DGEntrance,DGRuler,DGTraffic

Собрать АПИ карт с указанным набором модулей.

gulp build --skin=light --pkg=DGCustomization,DGPoi,DGEntrance,DGRuler,DGTraffic

Собрать АПИ карт со светлой темой и указанным набором модулей.

После выполнения кастомной сборки собранные файлы будут лежать в папке dist:

  • dist/js/script.js — JS
  • dist/css/styles.css — CSS
  • dist/css/styles.ie8.css — CSS для IE8

Линтинг кода

gulp lint

Прогон автотестов

gulp test

Веб-сервис раздачи API

Запуск:

node app

Пример вывода в консоль:

Maps API 2.0 server will run in 4 threads. Spawning the new processes...
PID #15372 started!
PID #15374 started!
PID #15375 started!
PID #15377 started!
Maps API 2.0 server listening on 3000

Если приложение собрано в dev-режиме, то сервер запускается автоматически, и запускать его отдельно не требуется.

Конфигурация приложения

Основной конфиг находится в файле config.main.json. Чтобы изменить какие-либо параметры, необходимо создать аналогичный файл config.local.json и переопределить параметры в нём, например:

{
   "defaultLang": "en"
}

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