Skip to content

Программный интерфейс информационной системы "Карьер" предприятия, предназначенный для интеграции с другими системами ЕИС по протоколу HTTP

Notifications You must be signed in to change notification settings

badoctopod/acds-http-api

Repository files navigation

ИС "Карьер".HTTP API: интеграционный интерфейс

Программный интерфейс информационной системы "Карьер" предприятия, предназначенный для интеграции с другими системами ЕИС по протоколу HTTP.

ИСТОРИЯ ВЕРСИЙ | Текущие версии:

Схема Хост Экземпляр Версия API Интерактивная документация
HTTP IP:PORT PRODUCTION 1.0.2 Ссылка
HTTP IP:PORT STAGING 2.0.0 Ссылка

Содержание:

Table of Contents

Структура проекта

Файл / директория Назначение
deploy Файлы для развертывания экземпляра приложения
logs Журнал работы приложения (директория создается при запуске среды разработки)
src Исходный код приложения
test Исходный код автоматизированных тестов
.gitignore Перечень игнорируемых файлов для git scm
config.edn Конфигурация dev экземпляра приложения
CHANGELOG.md История версий
HTTP_API.md Описание интеграционного интерфейса
project.clj Описание проекта leiningen
README.md Основной документ проекта

Общая структура директории deploy

Ниже показана общая структура директории для размещения файлов развертывания экземпляра приложения, деление по поддиректориям:

  • deploy/staging - для staging экземпляра приложения.
  • deploy/production - для production экземпляра приложения.
Файл / директория Назначение
app Директория для размещения jar-архива
bin Директория для размещения procrun (Apache Commons Daemon)
conf Директория для файлов конфигураций
license Директория для лицензий сторонних приложений и библиотек
install-service.bat Скрипт инсталляции Windows-службы
restart-service.bat Скрипт перезапуска Windows-службы
start-console.bat Скрипт запуска приложения в режиме консоли
start-service.bat Скрипт запуска Windows-службы
uninstall-service.bat Скрипт удаления Windows-службы

Среда разработки

Программное обеспечение

Для работы над проектом необходимо установить следующее программное обеспечение:

  • Apache Maven (среда сборки - только для установки ojdbc8).
  • leiningen (инструмент для автоматизации сборки и управления зависимостями для простой конфигурации программных проектов на Clojure).
  • Редактор кода или IDE с поддержкой Clojure (VS code + Calva, Atom + proto-repl, emacs + CIDER и т.п.).

Клонирование репозитория

$ cd path/to/your/projects/folder
$ git clone http://IP/devgroup/acds-http-api.git

Запуск среды разработки

На примере VS Code + Calva:

Перейти в директорию с проектом, открыть ее в VS Code:

$ cd /path/to/acds-http-api
$ code .

Запустить команду 'Start a Project REPL and Connect': ctrl+alt+c ctrl+alt+j.

Выбрать тип проекта и запускаемый профиль, будет запущен REPL и можно приступать к разработке.

Запуск автоматизированных тестов

Отдельно средствами leinigen

$ lein test

В среде разработки

На примере VS Code + Calva:

  • Запустить тесты пространства имен: ctrl+alt+c t
  • Запустить все тесты: ctrl+alt+c shift+t
  • Запустить текущий тест: ctrl+alt+c ctrl+alt+t
  • Перезапутсить тесты, завершившиеся с ошибкой: ctrl+alt+c ctrl+t

Проверка новых версий зависимых библиотек проекта

$ lein ancient

Справка:

$ lein ancient -h

Проверка рекомендаций по идиоматике исходного кода

$ lein kibit

Справка:

$ lein kibit -h

Сборка экземпляра приложения

Скомпилировать приложение в самодостаточный .jar архив:

lein uberjar

Разместить полученный архив в директорию deploy, поддиректорию staging или production:

copy /path/to/acds-http-api/target/acds-http-api.jar /path/to/acds-http-api/deploy/{staging, production}/app

Подготовить скрипты управления службой Windows и конфигурацию для соответствующего экземпляра приложения.

Развертывание экземпляра приложения

Экземпляр приложения запускается в среде ОС Windows в качестве службы, для этого используется Apache Commons Daemon (procrun)

Развертывание экземпляра приложения с нуля

  1. Развернуть на сервере Java SE 8 (Server JRE).

  2. Скопировать все директории и файлы из директории deploy в директорию приложения на сервере.

  3. Запустить на сервере скрипт install-service.bat от имени администратора.

Развертывание новой версии экземпляра приложения

  1. Запустить на сервере скрипт stop-service.bat от имени администратора или от имени своего пользователя, если есть доступ на управление службой.

  2. Скопировать файл acds-http-api.jar из директории deploy\app в директорию app приложения на сервере.

  3. По необходимости, внести изменения в конфигурацию службы Windows (см. документацию Apache Commons Daemon (procrun)).

  4. Запустить на сервере скрипт start-service.bat от имени администратора или от имени своего пользователя, если есть доступ на управление службой.

About

Программный интерфейс информационной системы "Карьер" предприятия, предназначенный для интеграции с другими системами ЕИС по протоколу HTTP

Topics

Resources

Stars

Watchers

Forks