- change version on 1.8
- add docker-compose - update entaxy
This commit is contained in:
parent
7d80bb81c6
commit
094a3fe67f
149
README.md
149
README.md
@ -7,151 +7,4 @@
|
||||
Detailed documentation: [system description](documentation/entaxy_main.adoc).\
|
||||
Installation instructions: [installation](documentation/installation/installation-table-of-contents.ru.adoc).\
|
||||
Instructions for running tests for the universal
|
||||
service: [tests](documentation/connectors/uniform-exchange-service/tests/postman.adoc).
|
||||
|
||||
- **extras** - additional esb modules(Developed independently, installed separately.)
|
||||
- **1c** - module for working with 1C
|
||||
- **1c-exchange-service** - (Alexey Knyazev, Borodina Valeria) message processing module, service 1C
|
||||
- **1c-exchange-endpoint** - soap-service 1C
|
||||
- **1c-exchange-service-endpoint** - service soap-service 1C
|
||||
- **connector** - stored in and out connectors at 1c-exchange-endpoint and 1c-exchange-service-endpoint
|
||||
- **support** - support routers for connectors
|
||||
- **1c-storage** - (Alexey Knyazev) liquibase module creating the necessary tables in the database for 1C
|
||||
- **nsi** - (Alexey Knyazev, Borodina Valeria) module for nsi
|
||||
- **nsi-soap** - (Alexey Knyazev) module with soap nsi
|
||||
- **nsi-storage** - (Alexey Knyazev) liquibase module creating the necessary tables in the database for nsi
|
||||
- **big-packet** - (Alexey Knyazev) big packet service
|
||||
- **bridge** - (Mikhail Moiseev) bridge between different esb using brokers
|
||||
- **db-connector-parent** - (Alexey Knyazev) connector to intermediate database
|
||||
- **db-connector** - (Alexey Knyazev) connector to intermediate database, converts xml into java objects and
|
||||
then saves it to the database via jpa, and also back
|
||||
- **db-hyperjaxb3-naming-extension** - (Alexey Knyazev) - plugin for the hyperjaxb3 plugin that makes more
|
||||
human-readable names for xsd generated columns and tables
|
||||
- **file-archive-connector** - (Borodina Valeria) module for working with systems that work through the file
|
||||
system (collects messages within an hour and collects them into an archive)
|
||||
- **file-service** - (Alexey Knyazev) service for sending files via esb
|
||||
- **features** - there should generally be one feature that pulls up features for individual components. Having
|
||||
installed it, we install entaxy in Karaf
|
||||
- **platform** - Content of a base entaxy
|
||||
- **runtime** - Components required for launch and work of the platform
|
||||
- **base** - starts before the bundles with a low startlevel or even enters the custom build of Karaf
|
||||
- **branding** - logo creation entaxy
|
||||
- **connecting** - infrastructure of adapters and connections
|
||||
- **core** - core entaxy
|
||||
- **initializer** - Initialization infrastructure on first startup, including checking, creating and running
|
||||
the required system connections
|
||||
- **storage-initializer** - (Mikhail Moiseev) everything related to data storage
|
||||
- **management** - artifact management
|
||||
- **modules** - additional modules entaxy
|
||||
- **uniform-service** - uniform service
|
||||
- **uniform-service-exchange-endpoint** - uniform soap-service
|
||||
- **connector** - stored in and out connectors
|
||||
- **support** - support routers for connectors
|
||||
- **system** - (Andrey Filippov) the product(the module will subsequently be removed)
|
||||
- **auth** - (Sergey Kryuchkov, Mikhail Moiseev) everything related to authorization, including bundles for specific
|
||||
authorization schemes, a general interceptor for CXF, etc.
|
||||
- **common** - common libraries
|
||||
- **core** - the core of the system
|
||||
- **dispatcher** -
|
||||
- **events** - (Mikhail Moiseev) work with topics, our implementation of message delivery
|
||||
- **permission** - (Mikhail Moiseev) permission
|
||||
- **template** - (Borodina Valeria) work with templates to create profiles, connectors, etc.
|
||||
- **error-handler** - (Sergey Kryuchkov) error handling routes and helper classes.
|
||||
- **deployer** - (Borodina Valeria) everything related to the process of processing data from a gui, converting it
|
||||
to a blueprint and deploying this blueprint to esb
|
||||
- **cellar-deployer** - (Borodina Valeria) deploy blueprint to karaf cluster using cellar
|
||||
- **deployer-api** - (Mikhail Moiseev, Borodina Valeria) interface deployer
|
||||
- **nexus-deployer** - (Borodina Valeria) deploy generated blueprint to nexus
|
||||
- **file-system-deployer** - (Mikhail Moiseev) deploy generated blueprints to filesystem
|
||||
- **registry** - (Mikhail Moiseev) product-defined registries should contain systems, system-groups, services for
|
||||
specific registry implementations
|
||||
- **systems** - description of the external system in ours
|
||||
- **system-groups** - groups of systems, generalized by some attribute
|
||||
- **profile-commons** - can be connected by a connector to a communication point
|
||||
- **processes** -
|
||||
- **service** - this is the point of communication. (something deployed under CXF)
|
||||
- **connectors** - something that links the profile to the point of communication
|
||||
- **system-management** - (Borodina Valeria) management of systems, profiles and system connectors
|
||||
- **transformer** - implementation of data transformations gui -> blueprint
|
||||
- **test** - tests for postman
|
||||
|
||||
|
||||
Use English in the repository!
|
||||
- in the commit comments
|
||||
- int the code
|
||||
|
||||
## **Repository rules**
|
||||
|
||||
Commits to the master are undesirable, but if you cannot do otherwise, warn colleagues in the general chat with a description of the reason.
|
||||
|
||||
**short:**
|
||||
|
||||
Feature branching - any development is carried out in separate branches (we branch from master / release) and then we
|
||||
make a pull request.
|
||||
|
||||
**full:**
|
||||
|
||||
**Branches:**
|
||||
|
||||
- *master* - develop branch, we do new branch from it and we merge into it
|
||||
|
||||
- *release-<version>* - stable release branch from it we do new branch in case of hotfix.
|
||||
Release branch storage conditions:
|
||||
|
||||
1. customer pays for support
|
||||
2. our support for this release has not expired
|
||||
3. the customer did not switch to a new release
|
||||
|
||||
- *feature-branch* - development branches, stored until checked out and merged with the target branch\
|
||||
Branch naming:
|
||||
|
||||
* issue number from youtrack
|
||||
* especially meaningful short name of the functional
|
||||
|
||||
- *hotfix-branch* - branches for hotfixes, stored similarly *feature-branch*\
|
||||
Branch naming - prefix "hotfix-" further:
|
||||
|
||||
* issue number from youtrack
|
||||
* especially meaningful short name of the functional
|
||||
|
||||
**Pull request**
|
||||
|
||||
- **For fixes and minor improvements** we assign to reviewers: lead developer - *Alexey Knyazev* and *responsible
|
||||
for functionality / interested parties*
|
||||
responsible and interested can be found in the description of the project above.
|
||||
|
||||
- **For major improvements** to the persons described above, add *Andrey Filippov* and *Sergey Starovoitenkov*
|
||||
|
||||
If no more improvements are planned in the merge-directed branch, when creating a pull request, we mark **Close branch**
|
||||
|
||||
**Camel Headers**
|
||||
|
||||
Headers used for service purposes are named according to the HTTP manifest, i.e. with a capital letter through a dash.
|
||||
Must start with "Entaxy-"
|
||||
|
||||
**Configuration File Naming Format**
|
||||
|
||||
**Connectors:**\
|
||||
_<project_name>.<system_name>.<connector_type>.<connector_direction>_\
|
||||
examples \
|
||||
_project.1c.odata.in_\
|
||||
_project.rest1.in_
|
||||
|
||||
**Project configs (specific functionality):**\
|
||||
_<project_name>.<module_name>_\
|
||||
examples\
|
||||
_project.audit_\
|
||||
_project2.informer_
|
||||
|
||||
**Extras modules:**\
|
||||
_<manufacturer_prefix>.<module_name>_\
|
||||
examples\
|
||||
_ru.entaxy.eav_\
|
||||
_org.apache.mdm_
|
||||
|
||||
**Platform:**\
|
||||
_<manufacturer_prefix>.<platform_part>.<module_name>_\
|
||||
examples\
|
||||
_ru.entaxy.esb.system.management_\
|
||||
_ru.entaxy.esb.system.bridge_
|
||||
|
||||
service: [tests](documentation/connectors/uniform-exchange-service/tests/postman.adoc).
|
142
README.ru.md
142
README.ru.md
@ -5,144 +5,4 @@
|
||||
|
||||
Подробная документация: [описание системы](documentation/entaxy_main.adoc).\
|
||||
Инструкция по установке: [установка](documentation/installation/installation-table-of-contents.ru.adoc).\
|
||||
Инструкция по запуску тестов для универсального коннектора: [тестирование](documentation/connectors/uniform-exchange-service/tests/postman.adoc).
|
||||
|
||||
- **extras** - дополнительные модули шины, которые не входят в базовую поставку шины.(Разрабатывается независимо, устанавливается отдельно.)
|
||||
- **1с** - модуль рaботы с 1с
|
||||
- **1c-exchange-service** - (Алексей Князев, Бородина Валерия) модуль обработки сообщений, сервис 1с
|
||||
- **1c-exchange-endpoint** - выставленный soap-сервис 1с
|
||||
- **1c-exchange-service-endpoint** - выставленный служебный soap-сервис 1с
|
||||
- **connector** - хранятся входящий и исходящий коннектор к 1c-exchange-endpoint и 1c-exchange-service-endpoint
|
||||
- **support** - маршруты, которые нужны для корректной работы коннектора
|
||||
- **1с-storage** - (Алексей Князев) модуль liquibase создания необходимых таблиц в бд для 1с
|
||||
- **nsi** - (Алексей Князев, Бородина Валерия) модуль обработки сообщений nsi
|
||||
- **nsi-soap** - (Алексей Князев) модуль с выставленным soap nsi
|
||||
- **nsi-storage** - (Алексей Князев) модуль liquibase создания необходимых таблиц в бд для nsi
|
||||
- **big-packet** - (Алексей Князев) сервис больших пакетов
|
||||
- **bridge** - (Моисеев Михаил) мост между шинами с использованием брокеров
|
||||
- **db-connector-parent** - (Алексей Князев) коннектор к промежуточной базе
|
||||
- **db-connector** - (Алексей Князев) коннектор к промежуточной базе, преобразует xml в java объекты и потом через jpa сохраняет в бд, и также обратно
|
||||
- **db-hyperjaxb3-naming-extension** - (Алексей Князев) - плагин для плагина hyperjaxb3 который делает более человекочитаемые имена для генерируемых из xsd столбцов и таблиц
|
||||
- **file-archive-connector** - (Бородина Валерия) модуль для работы с системами, которые работают через файловую систему(собирает сообщения в течение часа и собирает их в архив)
|
||||
- **file-service** - (Алексей Князев) сервис отправки файлов через шину
|
||||
- **features** - там вообще должна быть одна фича, которая подтягивает фичи по отдельным компонентам. Установив ее мы и устанавливаем продукт в караф
|
||||
- **platform** - Содержимое типовой поставки
|
||||
- **runtime** - Компоненты необходимые для запуска и работы платформы
|
||||
- **base** - То, что стартует до остальных бандлов с низким startlevel или вообще входит в кастомную сборку Карафа
|
||||
- **branding** - создание логотипа entaxy
|
||||
- **connecting** - инфраструктура адаптеров и коннекций
|
||||
- **core** - ядро entaxy
|
||||
- **initializer** - Инфраструктра инициализации при первом запуске, в том числе проверка, создание и запуск необходимых системных коннекций
|
||||
- **storage-initializer** - (Моисеев Михаил) все, что относится к хранению данных с общей точки зрения
|
||||
- **management** - управление артефактами
|
||||
- **modules** - дополнительные модули entaxy
|
||||
- **uniform-service** - Универсальный сервис
|
||||
- **uniform-service-exchange-endpoint** - выставленный универсальный soap-сервис
|
||||
- **uniform-service-exchange-service-endpoint** - выставленный универсальный служебный soap-сервис
|
||||
- **connector** - хранятся входящий и исходящий коннектор
|
||||
- **support** - маршруты, которые нужны для корректной работы коннектора
|
||||
- **system** - (Андрей Филиппов) собственно, продукт(модуль впоследствии будет удален)
|
||||
- **auth** - (Сергей Крючков, Моисеев Михаил) все, что относится к авторизации, включая бандлы для конкретных схем авторизации, общий интерсептор для CXF и т.д.
|
||||
- **common** - общие библиотеки
|
||||
- **core** - ядро системы, что там будет, пока сложно конкретизировать, но что-то наверняка будет
|
||||
- **dispatcher** -
|
||||
- **events** - (Моисеев Михаил) работа с топиками, наша реализация доставки сообщений
|
||||
- **permission** - (Моисеев Михаил) права доступа
|
||||
- **template** - (Бородина Валерия) работа с шаблонами для создания профилей, коннекторов и т д
|
||||
- **error-handler** - (Сергей Крючков) маршруты для обработки ошибок и вспомогательные классы.
|
||||
- **deployer** - (Бородина Валерия) все, что относится к процессу обработки данных из gui, их преобразования в blueprint и деплоя этого blueprint в шину
|
||||
- **cellar-deployer** - (Бородина Валерия) деплой blueprint в кластер карафа с помощью cellar
|
||||
- **deployer-api** - (Моисеев Михаил, Бородина Валерия) интерфейс deployer
|
||||
- **nexus-deployer** - (Бородина Валерия) деплой сгенерированных blueprint в nexus
|
||||
- **file-system-deployer** - (Моисеев Михаил) деплой сгенерированных blueprint в файловую систему
|
||||
- **registry** - (Моисеев Михаил) реестры, определенные в продукте, должна содержать systems, system-groups, services для реализаций конкретных реестров
|
||||
- **systems** - описание внешней системы в нашей.
|
||||
- **system-groups** - группы систем, обобщённые по какому-либо признаку
|
||||
- **profile-commons** - может быть связан коннектором с точкой коммуникации.
|
||||
- **processes** -
|
||||
- **service** - это точка коммуникации. (что-то, развернутое под CXF)
|
||||
- **connectors** - нечто, что связывает профиль с точкой коммуникации
|
||||
- **system-management** - (Бородина Валерия) управление системами, профилями и коннекторами систем
|
||||
- **transformer** - видимо, друг deploer'а, реализация трансформаций данных gui -> blueprint
|
||||
- **test** - тесты для postman
|
||||
|
||||
|
||||
В репозитории использовать английский!
|
||||
- в комментариях к коммитам
|
||||
- в коде
|
||||
|
||||
## **Правила работы с репозиторием**
|
||||
|
||||
Коммиты в мастер глубоко нежелательны, но если нельзя поступить по-другому, предупредите коллег в общем чате с описанием причины.
|
||||
|
||||
**Кратко:**
|
||||
|
||||
Feature branching - любая разработка ведётся в отдельных ветках(бранчуемся от master/release) после чего делаем pull request.
|
||||
|
||||
|
||||
**Полно:**
|
||||
|
||||
**Ветки:**
|
||||
|
||||
- *master* - develop ветка от неё бранчуемся, в неё сливаемся
|
||||
|
||||
- *release-<version>* - стабильная релизная ветка от неё бранчуемся в случае hotfix-ов.
|
||||
Условия хранения релизной ветки:
|
||||
|
||||
1. заказчик платит за поддержку
|
||||
2. не истек срок нашей поддержки этого релиза
|
||||
3. заказчик не произвел переход на новый релиз
|
||||
|
||||
- *feature-branch* - ветки разработок, хранится до проверки и слияния с целевой веткой
|
||||
Именование веток:
|
||||
|
||||
* номером задачи из youtrack
|
||||
* особо осмысленным кратким названием функционала
|
||||
|
||||
- *hotfix-branch* - ветки для hotfix-ов, хранится аналогично *feature-branch*
|
||||
Именование веток - префикс "hotfix-" далее:
|
||||
|
||||
* номер задачи из youtrack
|
||||
* особо осмысленное краткое название исправления
|
||||
|
||||
**Pull request**
|
||||
|
||||
- **Для фиксов и мелких доработок** назначаем в рецензенты: ведущего разработчика - *Алексея Князева* и *ответственных за функционал/заинтересованных лиц*
|
||||
ответственных и заинтересованных можно посмотреть в описании проекта выше.
|
||||
|
||||
- **Для крупных доработок** к описанным выше лицам добавляем *Андрея Филиппова* и *Сергея Старовойтенкова*
|
||||
|
||||
Если не планируется больше доработок в ветке направленной на мерж, при создании pull request-а помечаем **Close branch**
|
||||
|
||||
**Camel заголовки**
|
||||
|
||||
Заголовки используемые для служебных целей именуются в соответствии с HTTP манифестом, т.е. с большой буквы через тире.
|
||||
Начинаться должны с "Entaxy-"
|
||||
|
||||
**Формат именования конфигурационных файлов**
|
||||
|
||||
**Коннекторы:**\
|
||||
_<project_name>.<system_name>.<connector_type>.<connector_direction>_\
|
||||
примеры \
|
||||
_project.1c.odata.in_\
|
||||
_project.rest1.in_
|
||||
|
||||
**Проектные конфиги(специфическая функциональность):**\
|
||||
_<project_name>.<module_name>_\
|
||||
примеры\
|
||||
_project.audit_\
|
||||
_project2.informer_
|
||||
|
||||
**Extras модули:**\
|
||||
_<manufacturer_prefix>.<module_name>_\
|
||||
примеры\
|
||||
_ru.entaxy.eav_\
|
||||
_org.apache.mdm_
|
||||
|
||||
**Платформа:**\
|
||||
_<manufacturer_prefix>.<platform_part>.<module_name>_\
|
||||
примеры\
|
||||
_ru.entaxy.esb.system.management_\
|
||||
_ru.entaxy.esb.system.bridge_
|
||||
|
||||
|
||||
Инструкция по запуску тестов для универсального коннектора: [тестирование](documentation/connectors/uniform-exchange-service/tests/postman.adoc).
|
141
distribution/entaxy-docker/ReadMe.md
Normal file
141
distribution/entaxy-docker/ReadMe.md
Normal file
@ -0,0 +1,141 @@
|
||||
## Docker compose для сборки и запуска Entaxy.
|
||||
|
||||
Запуск локального окружения с несколькими docker контейнерами:
|
||||
* Караф
|
||||
* Брокер
|
||||
* СУБД
|
||||
* Менеджер артефактов
|
||||
|
||||
Для начала клонируем репозиторий и переходим в корень проекта:
|
||||
```bash
|
||||
git clone <entaxy-framework-repository>
|
||||
cd entaxy-framework
|
||||
```
|
||||
Далее у нас есть разные варианты хранения необходимых для установки Entaxy артефактов.
|
||||
### 1. Самый простой способ: локальный репозиторий артефактов включаеться в образ карафа.
|
||||
В корневом POM находится профиль для деплоя артефактов в образ карафа:
|
||||
```xml
|
||||
<profile>
|
||||
<id>docker.file.repo</id>
|
||||
<distributionManagement>
|
||||
<snapshotRepository>
|
||||
<id>entaxy-maven-repo-file</id>
|
||||
<url>file:./distribution/entaxy-docker/karaf/repo</url>
|
||||
</snapshotRepository>
|
||||
</distributionManagement>
|
||||
</profile>
|
||||
```
|
||||
Запускаем мевен деплой из корня проекта с этим профилем:
|
||||
```bash
|
||||
mvn deploy -P docker.file.repo
|
||||
```
|
||||
И после успешной сборки запускаем контейнеры из директории проекта, в которой находится docker-compose.yml:
|
||||
```bash
|
||||
cd ./distribution/entaxy-docker
|
||||
docker-compose up
|
||||
```
|
||||
Или `docker compose up` для новых версий docker.
|
||||
После запуска комманды мы будем видеть прогресс сборки образов, запуска контейнеров и логи запущенных приложений. Для остановки контейнеров достаточно нажать сочетание клавиш Ctrl+C или через команды запущенные из другого окна/вкладки терминала.
|
||||
```bash
|
||||
docker-compose stop
|
||||
docker-compose start
|
||||
```
|
||||
После запуска контейнеров открываем новый терминал и заходим в караф:
|
||||
```bash
|
||||
docker-compose exec karaf /opt/apache-karaf/bin/client
|
||||
```
|
||||
или ssh клиент с дальнейшим вводом пароля (karaf)
|
||||
```bash
|
||||
ssh -p 8101 karaf@localhost
|
||||
```
|
||||
|
||||
И в консоли карафа запускаем скрипт с установкой необходимых фич:
|
||||
```bash
|
||||
shell:source ./install.karaf
|
||||
```
|
||||
Ждём окончания деплоя в караф.
|
||||
(Не всегда полная установка проходит с первой попытки и тогда помогает повторный запуск `source install.karaf`)
|
||||
|
||||
### 2. Reposilite: легковесный http репозиторий артефактов запускается в отдельном контейнере.
|
||||
Комментируем в файле install.karaf строку начинающуюся с:
|
||||
```bash
|
||||
config:property-set -p org.ops4j.pax.url.mvn org.ops4j.pax.url.mvn.repositories file:/opt/apache-karaf/repo
|
||||
```
|
||||
И убираем комментарий в строке начинающейся:
|
||||
```bash
|
||||
#config:property-set -p org.ops4j.pax.url.mvn org.ops4j.pax.url.mvn.repositories http://maven-repo/snapshots
|
||||
```
|
||||
|
||||
Запускаем контейнеры из директории проекта, в которой находится docker-compose.yml:
|
||||
```bash
|
||||
cd ./distribution/entaxy-docker
|
||||
docker-compose up
|
||||
```
|
||||
Или `docker compose up` для новых версий docker.
|
||||
После запуска комманды мы будем видеть прогресс сборки образов, запуска контейнеров и логи запущенных приложений. Для остановки контейнеров достаточно нажать сочетание клавиш Ctrl+C или через команды запущенные из другого окна/вкладки терминала.
|
||||
```bash
|
||||
docker-compose stop
|
||||
docker-compose start
|
||||
```
|
||||
|
||||
Для деплоя в reposilite добавляем учётные данные в конфигурацию мавена (`~/.m2/settings.xml`):
|
||||
```xml
|
||||
<settings xmlns="http://maven.apache.org/SETTINGS/1.0.0"
|
||||
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
|
||||
xsi:schemaLocation="http://maven.apache.org/SETTINGS/1.0.0 http://maven.apache.org/xsd/settings-1.0.0.xsd">
|
||||
<servers>
|
||||
<server>
|
||||
<id>entaxy-maven-repo</id>
|
||||
<username>admin</username>
|
||||
<password>aW7frfS9NPGrOnuNBMf9gyO0eXNRaCoOGtXHTcLU5akDFJ9ACiUJhgmZxlOKnLC5</password>
|
||||
</server>
|
||||
</servers>
|
||||
</settings>
|
||||
```
|
||||
В корневом POM находится профиль для деплоя артефактов на сервер reposilite:
|
||||
```xml
|
||||
<profile>
|
||||
<id>docker.reposilite</id>
|
||||
<distributionManagement>
|
||||
<snapshotRepository>
|
||||
<id>entaxy-maven-repo</id>
|
||||
<url>http://127.0.0.1:8081/snapshots</url>
|
||||
</snapshotRepository>
|
||||
</distributionManagement>
|
||||
</profile>
|
||||
```
|
||||
Запускаем мевен деплой из корня проекта с этим профилем:
|
||||
```bash
|
||||
mvn deploy -P docker.reposilite
|
||||
```
|
||||
После успешной сборки открываем новый терминал и заходим в караф:
|
||||
```bash
|
||||
docker-compose exec karaf /opt/apache-karaf/bin/client
|
||||
```
|
||||
или ssh клиент с дальнейшим вводом пароля (karaf)
|
||||
```bash
|
||||
ssh -p 8101 karaf@localhost
|
||||
```
|
||||
|
||||
И в консоли карафа запускаем скрипт с установкой необходимых фич:
|
||||
```bash
|
||||
shell:source ./install.karaf
|
||||
```
|
||||
Ждём окончания деплоя в караф.
|
||||
(Не всегда полная установка проходит с первой попытки и тогда помогает повторный запуск `source install.karaf`)
|
||||
|
||||
|
||||
|
||||
Также есть вариант с nexus
|
||||
После старта получаем пароль для admin через команду:
|
||||
`docker-compose exec nexus cat /nexus-data/admin.password`.
|
||||
Через админку нужно разрешить анонимный деплой или настроить доступы.
|
||||
Урл для install.karaf
|
||||
`http://nexus:8081/repository/maven-snapshots/@id=local-nexus@snapshots@noreleases`
|
||||
|
||||
|
||||
|
||||
Остановить все контейнеры
|
||||
`docker-compose down`
|
||||
Остановить и удалить хранилища с БД и репой
|
||||
`docker-compose down -v`
|
78
distribution/entaxy-docker/docker-compose.yml
Normal file
78
distribution/entaxy-docker/docker-compose.yml
Normal file
@ -0,0 +1,78 @@
|
||||
version: '3'
|
||||
services:
|
||||
broker:
|
||||
container_name: broker
|
||||
image: vromero/activemq-artemis
|
||||
restart: unless-stopped
|
||||
environment:
|
||||
- ARTEMIS_USERNAME=entaxy
|
||||
- ARTEMIS_PASSWORD=entaxy
|
||||
ports:
|
||||
- 8161:8161
|
||||
- 61616:61616
|
||||
|
||||
db-postgres:
|
||||
container_name: db-postgres
|
||||
# image: postgres
|
||||
build: ./postgres
|
||||
restart: unless-stopped
|
||||
volumes:
|
||||
- db-vol:/var/lib/postgresql/data
|
||||
# - /etc/localtime:/etc/localtime:ro
|
||||
environment:
|
||||
- POSTGRES_USER=entaxy
|
||||
- POSTGRES_PASSWORD=entaxy
|
||||
- POSTGRES_DB=cache
|
||||
ports:
|
||||
- 5432:5432
|
||||
|
||||
# db-mssql:
|
||||
# container_name: db-mssql
|
||||
# image: mcr.microsoft.com/mssql/server:2017-CU8-ubuntu
|
||||
# restart: unless-stopped
|
||||
# environment:
|
||||
# - SA_PASSWORD=123mssql
|
||||
# - ACCEPT_EULA=Y
|
||||
# - POSTGRES_DB=cache
|
||||
# ports:
|
||||
# - 1433:1433
|
||||
|
||||
# nexus:
|
||||
# container_name: nexus
|
||||
# image: sonatype/nexus3
|
||||
# restart: unless-stopped
|
||||
# volumes:
|
||||
# - nexus-data:/nexus-data
|
||||
# environment:
|
||||
# - INSTALL4J_ADD_VM_PARAMS=-Xms2g -Xmx2g -XX:MaxDirectMemorySize=3g
|
||||
# ports:
|
||||
# - 8081:8081
|
||||
maven-repo:
|
||||
container_name: maven-repo
|
||||
build: ./reposilite
|
||||
# image: dzikoysk/reposilite
|
||||
restart: unless-stopped
|
||||
volumes:
|
||||
- nexus-data:/app/data
|
||||
ports:
|
||||
- 8081:80
|
||||
|
||||
karaf:
|
||||
# image: apache/karaf:4.2.9
|
||||
build:
|
||||
context: karaf/
|
||||
container_name: karaf
|
||||
# environment:
|
||||
# - ESB_ENTAXY_VERSION=1.8.0
|
||||
# - ESB_ENTAXY_MAVEN_REPO=http://nexus:8081/repository/maven-snapshots/@id=local-nexus@snapshots@noreleases
|
||||
restart: unless-stopped
|
||||
ports:
|
||||
- 8101:8101
|
||||
- 8181:8181
|
||||
- 8080:8080
|
||||
|
||||
volumes:
|
||||
db-vol:
|
||||
driver: local
|
||||
nexus-data:
|
||||
driver: local
|
13
distribution/entaxy-docker/karaf/Dockerfile
Normal file
13
distribution/entaxy-docker/karaf/Dockerfile
Normal file
@ -0,0 +1,13 @@
|
||||
FROM apache/karaf:4.2.9
|
||||
|
||||
COPY repo /opt/apache-karaf/repo
|
||||
COPY init /opt/apache-karaf/etc/init
|
||||
|
||||
COPY jre.properties /opt/apache-karaf/etc/
|
||||
COPY org.apache.karaf.cellar.groups.cfg /opt/apache-karaf/etc/
|
||||
COPY org.ops4j.datasource-entaxy.esb.cache.cfg /opt/apache-karaf/etc/
|
||||
COPY org.ops4j.datasource-entaxy.esb.db_connector.cfg /opt/apache-karaf/etc/
|
||||
COPY org.ops4j.datasource-entaxy.esb.storage.cfg /opt/apache-karaf/etc/
|
||||
COPY ru.entaxy.esb.cfg /opt/apache-karaf/etc/
|
||||
COPY ru.entaxy.esb.system.bridge.cfg /opt/apache-karaf/etc/
|
||||
COPY install.karaf /opt/apache-karaf/
|
@ -0,0 +1,54 @@
|
||||
{
|
||||
"connections": [
|
||||
{
|
||||
"nodeType": "connection",
|
||||
"uuid": "connection-uuid-1",
|
||||
"name": "entaxy-file",
|
||||
"adapterName": "fileAdapter",
|
||||
"platform": true,
|
||||
"pathParameter": "data/shared",
|
||||
"properties": {},
|
||||
"options": {
|
||||
"noop": true,
|
||||
"fileName": "default.txt",
|
||||
"allowNullBody": "true"
|
||||
}
|
||||
},
|
||||
{
|
||||
"nodeType": "connection",
|
||||
"uuid": "connection-uuid-2",
|
||||
"name": "entaxy-broker",
|
||||
"adapterName": "artemisAdapter",
|
||||
"platform": true,
|
||||
"pathParameter": "queue:entaxy.default",
|
||||
"properties": {
|
||||
"url": "(tcp://broker:61616)",
|
||||
"username": "entaxy",
|
||||
"password": "entaxy",
|
||||
"maxConnections": "20",
|
||||
"maxSessionsPerConnection": "100"
|
||||
},
|
||||
"options": {}
|
||||
},
|
||||
{
|
||||
"nodeType": "connection",
|
||||
"uuid": "connection-uuid-3",
|
||||
"name": "entaxy-db-storage",
|
||||
"adapterName": "postgresqlAdapter",
|
||||
"platform": true,
|
||||
"pathParameter": "entaxy.esb.storage",
|
||||
"properties": {},
|
||||
"options": {}
|
||||
},
|
||||
{
|
||||
"nodeType": "connection",
|
||||
"uuid": "connection-uuid-4",
|
||||
"name": "entaxy-db-cache",
|
||||
"adapterName": "postgresqlAdapter",
|
||||
"platform": true,
|
||||
"pathParameter": "entaxy.esb.cache",
|
||||
"properties": {},
|
||||
"options": {}
|
||||
}
|
||||
]
|
||||
}
|
21
distribution/entaxy-docker/karaf/install.karaf
Normal file
21
distribution/entaxy-docker/karaf/install.karaf
Normal file
@ -0,0 +1,21 @@
|
||||
ESB_ENTAXY_VERSION=1.8.0
|
||||
|
||||
echo "Maven repo=$ESB_ENTAXY_MAVEN_REPO, Version=$ESB_ENTAXY_VERSION"
|
||||
|
||||
# docker.file.repo
|
||||
config:property-set -p org.ops4j.pax.url.mvn org.ops4j.pax.url.mvn.repositories file:/opt/apache-karaf/repo@id=local-repo@snapshots@noreleases,https://repo1.maven.org/maven2@id=central,https://repository.apache.org/content/groups/snapshots-group@id=apache@snapshots@noreleases,https://oss.sonatype.org/content/repositories/ops4j-snapshots@id=ops4j.sonatype.snapshots.deploy@snapshots@noreleases
|
||||
# docker.reposilite
|
||||
#config:property-set -p org.ops4j.pax.url.mvn org.ops4j.pax.url.mvn.repositories http://maven-repo/releases@id=local-releases@update=always,http://maven-repo/snapshots@id=local-snapshots@snapshots@noreleases@update=always,https://repo1.maven.org/maven2@id=central,https://repository.apache.org/content/groups/snapshots-group@id=apache@snapshots@noreleases,https://oss.sonatype.org/content/repositories/ops4j-snapshots@id=ops4j.sonatype.snapshots.deploy@snapshots@noreleases
|
||||
|
||||
feature:repo-add mvn:ru.entaxy.esb/karaf-features/$ESB_ENTAXY_VERSION/xml/features
|
||||
echo "feature:install entaxy-all"
|
||||
feature:install entaxy-all
|
||||
feature:repo-add mvn:ru.entaxy.esb.platform.runtime/base/$ESB_ENTAXY_VERSION/xml/features
|
||||
echo "feature:install base"
|
||||
feature:install base
|
||||
feature:repo-add mvn:ru.entaxy.esb.platform.runtime/core/$ESB_ENTAXY_VERSION/xml/features
|
||||
echo "feature:install core"
|
||||
feature:install core
|
||||
feature:repo-add mvn:ru.entaxy.esb.platform.runtime.modules/uniform-service/$ESB_ENTAXY_VERSION/xml/features
|
||||
echo "feature:install entaxy-uniform-service"
|
||||
feature:install entaxy-uniform-service
|
725
distribution/entaxy-docker/karaf/jre.properties
Normal file
725
distribution/entaxy-docker/karaf/jre.properties
Normal file
@ -0,0 +1,725 @@
|
||||
################################################################################
|
||||
#
|
||||
# Licensed to the Apache Software Foundation (ASF) under one or more
|
||||
# contributor license agreements. See the NOTICE file distributed with
|
||||
# this work for additional information regarding copyright ownership.
|
||||
# The ASF licenses this file to You under the Apache License, Version 2.0
|
||||
# (the "License"); you may not use this file except in compliance with
|
||||
# the License. You may obtain a copy of the License at
|
||||
#
|
||||
# http://www.apache.org/licenses/LICENSE-2.0
|
||||
#
|
||||
# Unless required by applicable law or agreed to in writing, software
|
||||
# distributed under the License is distributed on an "AS IS" BASIS,
|
||||
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||
# See the License for the specific language governing permissions and
|
||||
# limitations under the License.
|
||||
#
|
||||
################################################################################
|
||||
#
|
||||
# Java platform package export properties.
|
||||
#
|
||||
# Standard package set. Note that:
|
||||
# - javax.transaction* is exported with a mandatory attribute
|
||||
jre-1.6=\
|
||||
javax.accessibility, \
|
||||
javax.activation;version="1.1", \
|
||||
javax.activity, \
|
||||
javax.annotation;version="1.0", \
|
||||
javax.annotation.processing;version="1.0", \
|
||||
javax.crypto, \
|
||||
javax.crypto.interfaces, \
|
||||
javax.crypto.spec, \
|
||||
javax.imageio, \
|
||||
javax.imageio.event, \
|
||||
javax.imageio.metadata, \
|
||||
javax.imageio.plugins.bmp, \
|
||||
javax.imageio.plugins.jpeg, \
|
||||
javax.imageio.spi, \
|
||||
javax.imageio.stream, \
|
||||
javax.jws, \
|
||||
javax.jws.soap, \
|
||||
javax.lang.model, \
|
||||
javax.lang.model.element, \
|
||||
javax.lang.model.type, \
|
||||
javax.lang.model.util, \
|
||||
javax.management, \
|
||||
javax.management.loading, \
|
||||
javax.management.modelmbean, \
|
||||
javax.management.monitor, \
|
||||
javax.management.openmbean, \
|
||||
javax.management.relation, \
|
||||
javax.management.remote, \
|
||||
javax.management.remote.rmi, \
|
||||
javax.management.timer, \
|
||||
javax.naming, \
|
||||
javax.naming.directory, \
|
||||
javax.naming.event, \
|
||||
javax.naming.ldap, \
|
||||
javax.naming.spi, \
|
||||
javax.net, \
|
||||
javax.net.ssl, \
|
||||
javax.print, \
|
||||
javax.print.attribute, \
|
||||
javax.print.attribute.standard, \
|
||||
javax.print.event, \
|
||||
javax.rmi, \
|
||||
javax.rmi.CORBA, \
|
||||
javax.rmi.ssl, \
|
||||
javax.script, \
|
||||
javax.security.auth, \
|
||||
javax.security.auth.callback, \
|
||||
javax.security.auth.kerberos, \
|
||||
javax.security.auth.login, \
|
||||
javax.security.auth.spi, \
|
||||
javax.security.auth.x500, \
|
||||
javax.security.cert, \
|
||||
javax.security.sasl, \
|
||||
javax.sound.midi, \
|
||||
javax.sound.midi.spi, \
|
||||
javax.sound.sampled, \
|
||||
javax.sound.sampled.spi, \
|
||||
javax.sql, \
|
||||
javax.sql.rowset, \
|
||||
javax.sql.rowset.serial, \
|
||||
javax.sql.rowset.spi, \
|
||||
javax.swing, \
|
||||
javax.swing.border, \
|
||||
javax.swing.colorchooser, \
|
||||
javax.swing.event, \
|
||||
javax.swing.filechooser, \
|
||||
javax.swing.plaf, \
|
||||
javax.swing.plaf.basic, \
|
||||
javax.swing.plaf.metal, \
|
||||
javax.swing.plaf.multi, \
|
||||
javax.swing.plaf.synth, \
|
||||
javax.swing.table, \
|
||||
javax.swing.text, \
|
||||
javax.swing.text.html, \
|
||||
javax.swing.text.html.parser, \
|
||||
javax.swing.text.rtf, \
|
||||
javax.swing.tree, \
|
||||
javax.swing.undo, \
|
||||
javax.tools, \
|
||||
javax.transaction; javax.transaction.xa; partial=true; mandatory:=partial, \
|
||||
javax.xml, \
|
||||
javax.xml.bind;version="2.2.1", \
|
||||
javax.xml.bind.annotation;version="2.2.1", \
|
||||
javax.xml.bind.annotation.adapters;version="2.2.1", \
|
||||
javax.xml.bind.attachment;version="2.2.1", \
|
||||
javax.xml.bind.helpers;version="2.2.1", \
|
||||
javax.xml.bind.util;version="2.2.1", \
|
||||
javax.xml.crypto, \
|
||||
javax.xml.crypto.dom, \
|
||||
javax.xml.crypto.dsig, \
|
||||
javax.xml.crypto.dsig.dom, \
|
||||
javax.xml.crypto.dsig.keyinfo, \
|
||||
javax.xml.crypto.dsig.spec, \
|
||||
javax.xml.datatype, \
|
||||
javax.xml.namespace, \
|
||||
javax.xml.parsers, \
|
||||
javax.xml.soap;version="1.3", \
|
||||
javax.xml.stream;version="1.2", \
|
||||
javax.xml.stream.events;version="1.2", \
|
||||
javax.xml.stream.util;version="1.2", \
|
||||
javax.xml.transform, \
|
||||
javax.xml.transform.dom, \
|
||||
javax.xml.transform.sax, \
|
||||
javax.xml.transform.stax, \
|
||||
javax.xml.transform.stream, \
|
||||
javax.xml.validation, \
|
||||
javax.xml.ws;version="2.2", \
|
||||
javax.xml.ws.handler;version="2.2", \
|
||||
javax.xml.ws.handler.soap;version="2.2", \
|
||||
javax.xml.ws.http;version="2.2", \
|
||||
javax.xml.ws.soap;version="2.2", \
|
||||
javax.xml.ws.spi;version="2.2", \
|
||||
javax.xml.ws.wsaddressing;version="2.2", \
|
||||
javax.xml.ws.spi.http;version="2.2", \
|
||||
javax.xml.xpath, \
|
||||
org.ietf.jgss, \
|
||||
org.omg.CORBA, \
|
||||
org.omg.CORBA_2_3, \
|
||||
org.omg.CORBA_2_3.portable, \
|
||||
org.omg.CORBA.DynAnyPackage, \
|
||||
org.omg.CORBA.ORBPackage, \
|
||||
org.omg.CORBA.portable, \
|
||||
org.omg.CORBA.TypeCodePackage, \
|
||||
org.omg.CosNaming, \
|
||||
org.omg.CosNaming.NamingContextExtPackage, \
|
||||
org.omg.CosNaming.NamingContextPackage, \
|
||||
org.omg.Dynamic, \
|
||||
org.omg.DynamicAny, \
|
||||
org.omg.DynamicAny.DynAnyFactoryPackage, \
|
||||
org.omg.DynamicAny.DynAnyPackage, \
|
||||
org.omg.IOP, \
|
||||
org.omg.IOP.CodecFactoryPackage, \
|
||||
org.omg.IOP.CodecPackage, \
|
||||
org.omg.Messaging, \
|
||||
org.omg.PortableInterceptor, \
|
||||
org.omg.PortableInterceptor.ORBInitInfoPackage, \
|
||||
org.omg.PortableServer, \
|
||||
org.omg.PortableServer.CurrentPackage, \
|
||||
org.omg.PortableServer.POAManagerPackage, \
|
||||
org.omg.PortableServer.POAPackage, \
|
||||
org.omg.PortableServer.portable, \
|
||||
org.omg.PortableServer.ServantLocatorPackage, \
|
||||
org.omg.SendingContext, \
|
||||
org.omg.stub.java.rmi, \
|
||||
org.omg.stub.javax.management.remote.rmi, \
|
||||
org.w3c.dom, \
|
||||
org.w3c.dom.bootstrap, \
|
||||
org.w3c.dom.css, \
|
||||
org.w3c.dom.events, \
|
||||
org.w3c.dom.html, \
|
||||
org.w3c.dom.ls, \
|
||||
org.w3c.dom.ranges, \
|
||||
org.w3c.dom.stylesheets, \
|
||||
org.w3c.dom.traversal, \
|
||||
org.w3c.dom.views, \
|
||||
org.w3c.dom.xpath, \
|
||||
org.xml.sax, \
|
||||
org.xml.sax.ext, \
|
||||
org.xml.sax.helpers
|
||||
# Standard package set. Note that:
|
||||
# - javax.transaction* is exported with a mandatory attribute
|
||||
jre-1.7=\
|
||||
javax.accessibility, \
|
||||
javax.activation;version="1.1", \
|
||||
javax.activity, \
|
||||
javax.annotation;version="1.0", \
|
||||
javax.annotation.processing;version="1.0", \
|
||||
javax.crypto, \
|
||||
javax.crypto.interfaces, \
|
||||
javax.crypto.spec, \
|
||||
javax.imageio, \
|
||||
javax.imageio.event, \
|
||||
javax.imageio.metadata, \
|
||||
javax.imageio.plugins.bmp, \
|
||||
javax.imageio.plugins.jpeg, \
|
||||
javax.imageio.spi, \
|
||||
javax.imageio.stream, \
|
||||
javax.jws, \
|
||||
javax.jws.soap, \
|
||||
javax.lang.model, \
|
||||
javax.lang.model.element, \
|
||||
javax.lang.model.type, \
|
||||
javax.lang.model.util, \
|
||||
javax.management, \
|
||||
javax.management.loading, \
|
||||
javax.management.modelmbean, \
|
||||
javax.management.monitor, \
|
||||
javax.management.openmbean, \
|
||||
javax.management.relation, \
|
||||
javax.management.remote, \
|
||||
javax.management.remote.rmi, \
|
||||
javax.management.timer, \
|
||||
javax.naming, \
|
||||
javax.naming.directory, \
|
||||
javax.naming.event, \
|
||||
javax.naming.ldap, \
|
||||
javax.naming.spi, \
|
||||
javax.net, \
|
||||
javax.net.ssl, \
|
||||
javax.print, \
|
||||
javax.print.attribute, \
|
||||
javax.print.attribute.standard, \
|
||||
javax.print.event, \
|
||||
javax.rmi, \
|
||||
javax.rmi.CORBA, \
|
||||
javax.rmi.ssl, \
|
||||
javax.script, \
|
||||
javax.security.auth, \
|
||||
javax.security.auth.callback, \
|
||||
javax.security.auth.kerberos, \
|
||||
javax.security.auth.login, \
|
||||
javax.security.auth.spi, \
|
||||
javax.security.auth.x500, \
|
||||
javax.security.cert, \
|
||||
javax.security.sasl, \
|
||||
javax.sound.midi, \
|
||||
javax.sound.midi.spi, \
|
||||
javax.sound.sampled, \
|
||||
javax.sound.sampled.spi, \
|
||||
javax.sql, \
|
||||
javax.sql.rowset, \
|
||||
javax.sql.rowset.serial, \
|
||||
javax.sql.rowset.spi, \
|
||||
javax.swing, \
|
||||
javax.swing.border, \
|
||||
javax.swing.colorchooser, \
|
||||
javax.swing.event, \
|
||||
javax.swing.filechooser, \
|
||||
javax.swing.plaf, \
|
||||
javax.swing.plaf.basic, \
|
||||
javax.swing.plaf.metal, \
|
||||
javax.swing.plaf.multi, \
|
||||
javax.swing.plaf.synth, \
|
||||
javax.swing.table, \
|
||||
javax.swing.text, \
|
||||
javax.swing.text.html, \
|
||||
javax.swing.text.html.parser, \
|
||||
javax.swing.text.rtf, \
|
||||
javax.swing.tree, \
|
||||
javax.swing.undo, \
|
||||
javax.tools, \
|
||||
javax.transaction; javax.transaction.xa; partial=true; mandatory:=partial, \
|
||||
javax.xml, \
|
||||
javax.xml.bind;version="2.2.1", \
|
||||
javax.xml.bind.annotation;version="2.2.1", \
|
||||
javax.xml.bind.annotation.adapters;version="2.2.1", \
|
||||
javax.xml.bind.attachment;version="2.2.1", \
|
||||
javax.xml.bind.helpers;version="2.2.1", \
|
||||
javax.xml.bind.util;version="2.2.1", \
|
||||
javax.xml.crypto, \
|
||||
javax.xml.crypto.dom, \
|
||||
javax.xml.crypto.dsig, \
|
||||
javax.xml.crypto.dsig.dom, \
|
||||
javax.xml.crypto.dsig.keyinfo, \
|
||||
javax.xml.crypto.dsig.spec, \
|
||||
javax.xml.datatype, \
|
||||
javax.xml.namespace, \
|
||||
javax.xml.parsers, \
|
||||
javax.xml.soap;version="1.3", \
|
||||
javax.xml.stream;version="1.2", \
|
||||
javax.xml.stream.events;version="1.2", \
|
||||
javax.xml.stream.util;version="1.2", \
|
||||
javax.xml.transform, \
|
||||
javax.xml.transform.dom, \
|
||||
javax.xml.transform.sax, \
|
||||
javax.xml.transform.stax, \
|
||||
javax.xml.transform.stream, \
|
||||
javax.xml.validation, \
|
||||
javax.xml.xpath, \
|
||||
org.ietf.jgss, \
|
||||
org.omg.CORBA, \
|
||||
org.omg.CORBA_2_3, \
|
||||
org.omg.CORBA_2_3.portable, \
|
||||
org.omg.CORBA.DynAnyPackage, \
|
||||
org.omg.CORBA.ORBPackage, \
|
||||
org.omg.CORBA.portable, \
|
||||
org.omg.CORBA.TypeCodePackage, \
|
||||
org.omg.CosNaming, \
|
||||
org.omg.CosNaming.NamingContextExtPackage, \
|
||||
org.omg.CosNaming.NamingContextPackage, \
|
||||
org.omg.Dynamic, \
|
||||
org.omg.DynamicAny, \
|
||||
org.omg.DynamicAny.DynAnyFactoryPackage, \
|
||||
org.omg.DynamicAny.DynAnyPackage, \
|
||||
org.omg.IOP, \
|
||||
org.omg.IOP.CodecFactoryPackage, \
|
||||
org.omg.IOP.CodecPackage, \
|
||||
org.omg.Messaging, \
|
||||
org.omg.PortableInterceptor, \
|
||||
org.omg.PortableInterceptor.ORBInitInfoPackage, \
|
||||
org.omg.PortableServer, \
|
||||
org.omg.PortableServer.CurrentPackage, \
|
||||
org.omg.PortableServer.POAManagerPackage, \
|
||||
org.omg.PortableServer.POAPackage, \
|
||||
org.omg.PortableServer.portable, \
|
||||
org.omg.PortableServer.ServantLocatorPackage, \
|
||||
org.omg.SendingContext, \
|
||||
org.omg.stub.java.rmi, \
|
||||
org.omg.stub.javax.management.remote.rmi, \
|
||||
org.w3c.dom, \
|
||||
org.w3c.dom.bootstrap, \
|
||||
org.w3c.dom.css, \
|
||||
org.w3c.dom.events, \
|
||||
org.w3c.dom.html, \
|
||||
org.w3c.dom.ls, \
|
||||
org.w3c.dom.ranges, \
|
||||
org.w3c.dom.stylesheets, \
|
||||
org.w3c.dom.traversal, \
|
||||
org.w3c.dom.views, \
|
||||
org.w3c.dom.xpath, \
|
||||
org.xml.sax, \
|
||||
org.xml.sax.ext, \
|
||||
org.xml.sax.helpers, \
|
||||
com.sun.nio.sctp
|
||||
jre-1.8=\
|
||||
javax.accessibility, \
|
||||
javax.activity, \
|
||||
javax.annotation;version="1.0", \
|
||||
javax.annotation.processing;version="1.0", \
|
||||
javax.crypto, \
|
||||
javax.crypto.interfaces, \
|
||||
javax.crypto.spec, \
|
||||
javax.imageio, \
|
||||
javax.imageio.event, \
|
||||
javax.imageio.metadata, \
|
||||
javax.imageio.plugins.bmp, \
|
||||
javax.imageio.plugins.jpeg, \
|
||||
javax.imageio.spi, \
|
||||
javax.imageio.stream, \
|
||||
javax.jws, \
|
||||
javax.jws.soap, \
|
||||
javax.lang.model, \
|
||||
javax.lang.model.element, \
|
||||
javax.lang.model.type, \
|
||||
javax.lang.model.util, \
|
||||
javax.management, \
|
||||
javax.management.loading, \
|
||||
javax.management.modelmbean, \
|
||||
javax.management.monitor, \
|
||||
javax.management.openmbean, \
|
||||
javax.management.relation, \
|
||||
javax.management.remote, \
|
||||
javax.management.remote.rmi, \
|
||||
javax.management.timer, \
|
||||
javax.naming, \
|
||||
javax.naming.directory, \
|
||||
javax.naming.event, \
|
||||
javax.naming.ldap, \
|
||||
javax.naming.spi, \
|
||||
javax.net, \
|
||||
javax.net.ssl, \
|
||||
javax.print, \
|
||||
javax.print.attribute, \
|
||||
javax.print.attribute.standard, \
|
||||
javax.print.event, \
|
||||
javax.rmi, \
|
||||
javax.rmi.CORBA, \
|
||||
javax.rmi.ssl, \
|
||||
javax.script, \
|
||||
javax.security.auth, \
|
||||
javax.security.auth.callback, \
|
||||
javax.security.auth.kerberos, \
|
||||
javax.security.auth.login, \
|
||||
javax.security.auth.spi, \
|
||||
javax.security.auth.x500, \
|
||||
javax.security.cert, \
|
||||
javax.security.sasl, \
|
||||
javax.sound.midi, \
|
||||
javax.sound.midi.spi, \
|
||||
javax.sound.sampled, \
|
||||
javax.sound.sampled.spi, \
|
||||
javax.sql, \
|
||||
javax.sql.rowset, \
|
||||
javax.sql.rowset.serial, \
|
||||
javax.sql.rowset.spi, \
|
||||
javax.swing, \
|
||||
javax.swing.border, \
|
||||
javax.swing.colorchooser, \
|
||||
javax.swing.event, \
|
||||
javax.swing.filechooser, \
|
||||
javax.swing.plaf, \
|
||||
javax.swing.plaf.basic, \
|
||||
javax.swing.plaf.metal, \
|
||||
javax.swing.plaf.multi, \
|
||||
javax.swing.plaf.synth, \
|
||||
javax.swing.table, \
|
||||
javax.swing.text, \
|
||||
javax.swing.text.html, \
|
||||
javax.swing.text.html.parser, \
|
||||
javax.swing.text.rtf, \
|
||||
javax.swing.tree, \
|
||||
javax.swing.undo, \
|
||||
javax.tools, \
|
||||
javax.transaction; javax.transaction.xa; partial=true; mandatory:=partial, \
|
||||
javax.xml, \
|
||||
javax.xml.bind;version="2.2.8", \
|
||||
javax.xml.bind.annotation;version="2.2.8", \
|
||||
javax.xml.bind.annotation.adapters;version="2.2.8", \
|
||||
javax.xml.bind.attachment;version="2.2.8", \
|
||||
javax.xml.bind.helpers;version="2.2.8", \
|
||||
javax.xml.bind.util;version="2.2.8", \
|
||||
javax.xml.crypto, \
|
||||
javax.xml.crypto.dom, \
|
||||
javax.xml.crypto.dsig, \
|
||||
javax.xml.crypto.dsig.dom, \
|
||||
javax.xml.crypto.dsig.keyinfo, \
|
||||
javax.xml.crypto.dsig.spec, \
|
||||
javax.xml.datatype, \
|
||||
javax.xml.namespace, \
|
||||
javax.xml.parsers, \
|
||||
javax.xml.stream;version="1.2", \
|
||||
javax.xml.stream.events;version="1.2", \
|
||||
javax.xml.stream.util;version="1.2", \
|
||||
javax.xml.transform, \
|
||||
javax.xml.transform.dom, \
|
||||
javax.xml.transform.sax, \
|
||||
javax.xml.transform.stax, \
|
||||
javax.xml.transform.stream, \
|
||||
javax.xml.validation, \
|
||||
javax.xml.ws;version="2.2", \
|
||||
javax.xml.ws.handler;version="2.2", \
|
||||
javax.xml.ws.handler.soap;version="2.2", \
|
||||
javax.xml.ws.http;version="2.2", \
|
||||
javax.xml.ws.soap;version="2.2", \
|
||||
javax.xml.ws.spi;version="2.2", \
|
||||
javax.xml.ws.wsaddressing;version="2.2", \
|
||||
javax.xml.ws.spi.http;version="2.2", \
|
||||
javax.xml.xpath, \
|
||||
javafx.animation, \
|
||||
javafx.application, \
|
||||
javafx.beans, \
|
||||
javafx.beans.binding, \
|
||||
javafx.beans.property, \
|
||||
javafx.beans.property.adapter, \
|
||||
javafx.beans.value, \
|
||||
javafx.collections, \
|
||||
javafx.collections.transform, \
|
||||
javafx.concurrent, \
|
||||
javafx.css, \
|
||||
javafx.embed.swing, \
|
||||
javafx.embed.swt, \
|
||||
javafx.event, \
|
||||
javafx.fxml, \
|
||||
javafx.geometry, \
|
||||
javafx.print, \
|
||||
javafx.scene, \
|
||||
javafx.scene.canvas, \
|
||||
javafx.scene.chart, \
|
||||
javafx.scene.control, \
|
||||
javafx.scene.control.cell, \
|
||||
javafx.scene.effect, \
|
||||
javafx.scene.image, \
|
||||
javafx.scene.input, \
|
||||
javafx.scene.layout, \
|
||||
javafx.scene.media, \
|
||||
javafx.scene.paint, \
|
||||
javafx.scene.shape, \
|
||||
javafx.scene.text, \
|
||||
javafx.scene.transform, \
|
||||
javafx.scene.web, \
|
||||
javafx.stage, \
|
||||
javafx.util, \
|
||||
javafx.util.converter, \
|
||||
netscape.javascript, \
|
||||
org.ietf.jgss, \
|
||||
org.omg.CORBA, \
|
||||
org.omg.CORBA_2_3, \
|
||||
org.omg.CORBA_2_3.portable, \
|
||||
org.omg.CORBA.DynAnyPackage, \
|
||||
org.omg.CORBA.ORBPackage, \
|
||||
org.omg.CORBA.portable, \
|
||||
org.omg.CORBA.TypeCodePackage, \
|
||||
org.omg.CosNaming, \
|
||||
org.omg.CosNaming.NamingContextExtPackage, \
|
||||
org.omg.CosNaming.NamingContextPackage, \
|
||||
org.omg.Dynamic, \
|
||||
org.omg.DynamicAny, \
|
||||
org.omg.DynamicAny.DynAnyFactoryPackage, \
|
||||
org.omg.DynamicAny.DynAnyPackage, \
|
||||
org.omg.IOP, \
|
||||
org.omg.IOP.CodecFactoryPackage, \
|
||||
org.omg.IOP.CodecPackage, \
|
||||
org.omg.Messaging, \
|
||||
org.omg.PortableInterceptor, \
|
||||
org.omg.PortableInterceptor.ORBInitInfoPackage, \
|
||||
org.omg.PortableServer, \
|
||||
org.omg.PortableServer.CurrentPackage, \
|
||||
org.omg.PortableServer.POAManagerPackage, \
|
||||
org.omg.PortableServer.POAPackage, \
|
||||
org.omg.PortableServer.portable, \
|
||||
org.omg.PortableServer.ServantLocatorPackage, \
|
||||
org.omg.SendingContext, \
|
||||
org.omg.stub.java.rmi, \
|
||||
org.omg.stub.javax.management.remote.rmi, \
|
||||
org.w3c.dom, \
|
||||
org.w3c.dom.bootstrap, \
|
||||
org.w3c.dom.css, \
|
||||
org.w3c.dom.events, \
|
||||
org.w3c.dom.html, \
|
||||
org.w3c.dom.ls, \
|
||||
org.w3c.dom.ranges, \
|
||||
org.w3c.dom.stylesheets, \
|
||||
org.w3c.dom.traversal, \
|
||||
org.w3c.dom.views, \
|
||||
org.w3c.dom.xpath, \
|
||||
org.xml.sax, \
|
||||
org.xml.sax.ext, \
|
||||
org.xml.sax.helpers, \
|
||||
com.sun.nio.sctp, \
|
||||
sun.nio.ch, \
|
||||
com.sun.management
|
||||
jre-9=\
|
||||
javax.accessibility, \
|
||||
javax.activation;version="1.2", \
|
||||
javax.activity, \
|
||||
javax.annotation;version="1.0", \
|
||||
javax.annotation.processing;version="1.0", \
|
||||
javax.crypto, \
|
||||
javax.crypto.interfaces, \
|
||||
javax.crypto.spec, \
|
||||
javax.imageio, \
|
||||
javax.imageio.event, \
|
||||
javax.imageio.metadata, \
|
||||
javax.imageio.plugins.bmp, \
|
||||
javax.imageio.plugins.jpeg, \
|
||||
javax.imageio.spi, \
|
||||
javax.imageio.stream, \
|
||||
javax.lang.model, \
|
||||
javax.lang.model.element, \
|
||||
javax.lang.model.type, \
|
||||
javax.lang.model.util, \
|
||||
javax.management, \
|
||||
javax.management.loading, \
|
||||
javax.management.modelmbean, \
|
||||
javax.management.monitor, \
|
||||
javax.management.openmbean, \
|
||||
javax.management.relation, \
|
||||
javax.management.remote, \
|
||||
javax.management.remote.rmi, \
|
||||
javax.management.timer, \
|
||||
javax.naming, \
|
||||
javax.naming.directory, \
|
||||
javax.naming.event, \
|
||||
javax.naming.ldap, \
|
||||
javax.naming.spi, \
|
||||
javax.net, \
|
||||
javax.net.ssl, \
|
||||
javax.print, \
|
||||
javax.print.attribute, \
|
||||
javax.print.attribute.standard, \
|
||||
javax.print.event, \
|
||||
javax.rmi, \
|
||||
javax.rmi.CORBA, \
|
||||
javax.rmi.ssl, \
|
||||
javax.script, \
|
||||
javax.security.auth, \
|
||||
javax.security.auth.callback, \
|
||||
javax.security.auth.kerberos, \
|
||||
javax.security.auth.login, \
|
||||
javax.security.auth.spi, \
|
||||
javax.security.auth.x500, \
|
||||
javax.security.cert, \
|
||||
javax.security.sasl, \
|
||||
javax.sound.midi, \
|
||||
javax.sound.midi.spi, \
|
||||
javax.sound.sampled, \
|
||||
javax.sound.sampled.spi, \
|
||||
javax.sql, \
|
||||
javax.sql.rowset, \
|
||||
javax.sql.rowset.serial, \
|
||||
javax.sql.rowset.spi, \
|
||||
javax.swing, \
|
||||
javax.swing.border, \
|
||||
javax.swing.colorchooser, \
|
||||
javax.swing.event, \
|
||||
javax.swing.filechooser, \
|
||||
javax.swing.plaf, \
|
||||
javax.swing.plaf.basic, \
|
||||
javax.swing.plaf.metal, \
|
||||
javax.swing.plaf.multi, \
|
||||
javax.swing.plaf.synth, \
|
||||
javax.swing.table, \
|
||||
javax.swing.text, \
|
||||
javax.swing.text.html, \
|
||||
javax.swing.text.html.parser, \
|
||||
javax.swing.text.rtf, \
|
||||
javax.swing.tree, \
|
||||
javax.swing.undo, \
|
||||
javax.tools, \
|
||||
javax.transaction; javax.transaction.xa; partial=true; mandatory:=partial, \
|
||||
javax.xml, \
|
||||
javax.xml.bind;version="2.3.0", \
|
||||
javax.xml.bind.annotation;version="2.3.0", \
|
||||
javax.xml.bind.annotation.adapters;version="2.3.0", \
|
||||
javax.xml.bind.attachment;version="2.3.0", \
|
||||
javax.xml.bind.helpers;version="2.3.0", \
|
||||
javax.xml.bind.util;version="2.3.0", \
|
||||
javax.xml.crypto, \
|
||||
javax.xml.crypto.dom, \
|
||||
javax.xml.crypto.dsig, \
|
||||
javax.xml.crypto.dsig.dom, \
|
||||
javax.xml.crypto.dsig.keyinfo, \
|
||||
javax.xml.crypto.dsig.spec, \
|
||||
javax.xml.datatype, \
|
||||
javax.xml.namespace, \
|
||||
javax.xml.parsers, \
|
||||
javax.xml.stream;version="1.2", \
|
||||
javax.xml.stream.events;version="1.2", \
|
||||
javax.xml.stream.util;version="1.2", \
|
||||
javax.xml.transform, \
|
||||
javax.xml.transform.dom, \
|
||||
javax.xml.transform.sax, \
|
||||
javax.xml.transform.stax, \
|
||||
javax.xml.transform.stream, \
|
||||
javax.xml.validation, \
|
||||
javax.xml.xpath, \
|
||||
javafx.animation, \
|
||||
javafx.application, \
|
||||
javafx.beans, \
|
||||
javafx.beans.binding, \
|
||||
javafx.beans.property, \
|
||||
javafx.beans.property.adapter, \
|
||||
javafx.beans.value, \
|
||||
javafx.collections, \
|
||||
javafx.collections.transformation, \
|
||||
javafx.concurrent, \
|
||||
javafx.css, \
|
||||
javafx.embed.swing, \
|
||||
javafx.embed.swt, \
|
||||
javafx.event, \
|
||||
javafx.fxml, \
|
||||
javafx.geometry, \
|
||||
javafx.print, \
|
||||
javafx.scene, \
|
||||
javafx.scene.canvas, \
|
||||
javafx.scene.chart, \
|
||||
javafx.scene.control, \
|
||||
javafx.scene.control.cell, \
|
||||
javafx.scene.effect, \
|
||||
javafx.scene.image, \
|
||||
javafx.scene.input, \
|
||||
javafx.scene.layout, \
|
||||
javafx.scene.media, \
|
||||
javafx.scene.paint, \
|
||||
javafx.scene.shape, \
|
||||
javafx.scene.text, \
|
||||
javafx.scene.transform, \
|
||||
javafx.scene.web, \
|
||||
javafx.stage, \
|
||||
javafx.util, \
|
||||
javafx.util.converter, \
|
||||
netscape.javascript, \
|
||||
org.ietf.jgss, \
|
||||
org.omg.CORBA, \
|
||||
org.omg.CORBA_2_3, \
|
||||
org.omg.CORBA_2_3.portable, \
|
||||
org.omg.CORBA.DynAnyPackage, \
|
||||
org.omg.CORBA.ORBPackage, \
|
||||
org.omg.CORBA.portable, \
|
||||
org.omg.CORBA.TypeCodePackage, \
|
||||
org.omg.CosNaming, \
|
||||
org.omg.CosNaming.NamingContextExtPackage, \
|
||||
org.omg.CosNaming.NamingContextPackage, \
|
||||
org.omg.Dynamic, \
|
||||
org.omg.DynamicAny, \
|
||||
org.omg.DynamicAny.DynAnyFactoryPackage, \
|
||||
org.omg.DynamicAny.DynAnyPackage, \
|
||||
org.omg.IOP, \
|
||||
org.omg.IOP.CodecFactoryPackage, \
|
||||
org.omg.IOP.CodecPackage, \
|
||||
org.omg.Messaging, \
|
||||
org.omg.PortableInterceptor, \
|
||||
org.omg.PortableInterceptor.ORBInitInfoPackage, \
|
||||
org.omg.PortableServer, \
|
||||
org.omg.PortableServer.CurrentPackage, \
|
||||
org.omg.PortableServer.POAManagerPackage, \
|
||||
org.omg.PortableServer.POAPackage, \
|
||||
org.omg.PortableServer.portable, \
|
||||
org.omg.PortableServer.ServantLocatorPackage, \
|
||||
org.omg.SendingContext, \
|
||||
org.omg.stub.java.rmi, \
|
||||
org.omg.stub.javax.management.remote.rmi, \
|
||||
org.w3c.dom, \
|
||||
org.w3c.dom.bootstrap, \
|
||||
org.w3c.dom.css, \
|
||||
org.w3c.dom.events, \
|
||||
org.w3c.dom.html, \
|
||||
org.w3c.dom.ls, \
|
||||
org.w3c.dom.ranges, \
|
||||
org.w3c.dom.stylesheets, \
|
||||
org.w3c.dom.traversal, \
|
||||
org.w3c.dom.views, \
|
||||
org.w3c.dom.xpath, \
|
||||
org.xml.sax, \
|
||||
org.xml.sax.ext, \
|
||||
org.xml.sax.helpers, \
|
||||
com.sun.nio.sctp, \
|
||||
sun.nio.ch, \
|
||||
com.sun.management
|
||||
jre-10=${jre-9}
|
||||
jre-11=${jre-10}
|
@ -0,0 +1,68 @@
|
||||
#
|
||||
# This property stores the cluster groups for which the local node is member
|
||||
#
|
||||
groups = default
|
||||
|
||||
#
|
||||
# Filtering of the bundles in the default cluster group
|
||||
#
|
||||
default.bundle.whitelist.inbound=*
|
||||
default.bundle.whitelist.outbound=*
|
||||
default.bundle.blacklist.inbound=none
|
||||
default.bundle.blacklist.outbound=none
|
||||
|
||||
#
|
||||
# Filtering of the configurations in the default cluster group
|
||||
#
|
||||
default.config.whitelist.inbound=*
|
||||
default.config.whitelist.outbound=*
|
||||
default.config.blacklist.inbound=org.apache.felix.fileinstall*, \
|
||||
org.apache.karaf.management, \
|
||||
org.apache.karaf.shell, \
|
||||
org.ops4j.pax.web, \
|
||||
org.apache.aries.transaction, \
|
||||
org.ops4j.pax.logging, \
|
||||
org.apache.karaf.cellar.node, \
|
||||
org.apache.karaf.cellar.groups.cfg
|
||||
default.config.blacklist.outbound=org.apache.felix.fileinstall*, \
|
||||
org.apache.karaf.management, \
|
||||
org.apache.karaf.shell, \
|
||||
org.ops4j.pax.web, \
|
||||
org.apache.aries.transaction, \
|
||||
org.ops4j.pax.logging, \
|
||||
org.apache.karaf.cellar.node, \
|
||||
org.apache.karaf.cellar.groups.cfg
|
||||
|
||||
|
||||
#
|
||||
# Filtering of the features in the default cluster group
|
||||
#
|
||||
default.feature.whitelist.inbound=*
|
||||
default.feature.whitelist.outbound=*
|
||||
default.feature.blacklist.inbound=none
|
||||
default.feature.blacklist.outbound=none
|
||||
|
||||
#
|
||||
# The following properties define the behavior to use when the node joins the cluster (the usage of the bootstrap
|
||||
# synchronizer), per cluster group and per resource.
|
||||
# The following values are accepted:
|
||||
# disabled: means that the synchronizer doesn't sync cluster group and node states
|
||||
# cluster: the synchronizer retrieves the state from the cluster group first (pull first), and push the node the state
|
||||
# to the cluster group after (push after)
|
||||
# node: the synchronizer push the node state to the cluster group (push first), and pull the state from the cluster group
|
||||
# after (pull after)
|
||||
# clusterOnly: the cluster is the "master", the node only retrieves and applies the cluster group state, nothing is
|
||||
# pushed to the cluster group
|
||||
# nodeOnly: the node is the "master", the node pushes his state to the cluster group, nothing is pulled from the
|
||||
# cluster group
|
||||
#
|
||||
default.bundle.sync = disabled
|
||||
default.config.sync = disabled
|
||||
default.feature.sync = disabled
|
||||
default.obr.urls.sync = disabled
|
||||
default.balanced.servlet.sync = disabled
|
||||
|
||||
default.event.blacklist.inbound = none
|
||||
default.event.blacklist.outbound = none
|
||||
default.event.whitelist.inbound = subscription
|
||||
default.event.whitelist.outbound = subscription
|
@ -0,0 +1,10 @@
|
||||
dataSourceName=entaxy.esb.cache
|
||||
osgi.jdbc.driver.name=PostgreSQL JDBC Driver
|
||||
serverName=db-postgres
|
||||
portNumber=5432
|
||||
databaseName=cache
|
||||
user=entaxy
|
||||
password=entaxy
|
||||
pool=dbcp2
|
||||
xa=true
|
||||
jdbc.pool.maxTotal=100
|
@ -0,0 +1,10 @@
|
||||
dataSourceName=entaxy.esb.db_connector
|
||||
osgi.jdbc.driver.name=PostgreSQL JDBC Driver
|
||||
serverName=db-postgres
|
||||
portNumber=5432
|
||||
databaseName=db_connector_test
|
||||
user=entaxy
|
||||
password=entaxy
|
||||
pool=dbcp2
|
||||
xa=true
|
||||
jdbc.pool.maxTotal=100
|
@ -0,0 +1,10 @@
|
||||
dataSourceName=entaxy.esb.storage
|
||||
osgi.jdbc.driver.name=PostgreSQL JDBC Driver
|
||||
serverName=db-postgres
|
||||
portNumber=5432
|
||||
databaseName=esb_entaxy
|
||||
user=entaxy
|
||||
password=entaxy
|
||||
pool=dbcp2
|
||||
xa=true
|
||||
jdbc.pool.maxTotal=100
|
20
distribution/entaxy-docker/karaf/ru.entaxy.esb.cfg
Normal file
20
distribution/entaxy-docker/karaf/ru.entaxy.esb.cfg
Normal file
@ -0,0 +1,20 @@
|
||||
# адреса кластера брокеров сообщений, задаются:
|
||||
# если tcp в скобках и через запятую: (tcp://192.168.122.81:61616,tcp://192.168.122.82:61616)
|
||||
# если amqp с failover и в скобках через запятую: failover:(amqp://192.168.122.81:5672,amqp://192.168.122.82:5672)
|
||||
common.jms.url=(tcp://broker:61616)
|
||||
# логин для аутентификации в брокере сообщений
|
||||
common.jms.username=entaxy
|
||||
# пароль для аутентификации в брокере сообщений
|
||||
common.jms.password=entaxy
|
||||
# максимальное количество соединений
|
||||
# подробнее можно почитать здесь: https://github.com/messaginghub/pooled-jms/blob/master/pooled-jms-docs/Configuration.md
|
||||
common.jms.maxConnections=20
|
||||
# максимальное количество сессий для каждого соединения
|
||||
# подробнее можно почитать здесь: https://github.com/messaginghub/pooled-jms/blob/master/pooled-jms-docs/Configuration.md
|
||||
common.jms.maxSessionsPerConnection=100
|
||||
|
||||
# наименование драйвера для инициализации фабрики планировщика quartz
|
||||
org.quartz.jobStore.driverDelegateClass=org.quartz.impl.jdbcjobstore.PostgreSQLDelegate
|
||||
|
||||
# название очереди, через которую ходят большие пакеты и файлы
|
||||
common.bridge.file.queue.name=file.queue
|
@ -0,0 +1,58 @@
|
||||
# имя локальной шины(<node_name>)
|
||||
jms.local=test1
|
||||
# значение true - мост текущего узла работает в пассивном режиме,
|
||||
# т.е. сообщения для соответствующего удалённого узла складываются в очередь на локальном брокере,
|
||||
# из которой уже читает подключаемый узел (локальный брокер должен быть доступен для соединения)
|
||||
# По умолчанию false - активный режим, запись сообщения идёт сразу в очередь на удалённом брокере,
|
||||
# подключаемого узла (брокеры по обе стороны моста должны быть доступны)
|
||||
jms.local.master=false
|
||||
# имена удаленных шин, задается через запятую(<node_name>,<node_name>)
|
||||
jms.remote.list=test2
|
||||
|
||||
# адреса брокера, задаются чеерез запятую(jms.url.<node_name>)
|
||||
jms.url.test1=broker:61616
|
||||
# логин для подключения к брокеру(jms.username.<node_name>)
|
||||
jms.username.test1=entaxy
|
||||
# пароль для подключения к брокеру(jms.password.<node_name>)
|
||||
jms.password.test1=entaxy
|
||||
# протокол для передачи сообщений внутри шины(jms.protocol.inner.esb.<node_name>)
|
||||
# для корректной работы синхронного режима передачи сообщений: необходимо следить
|
||||
# за одинаковым значением данного параметра в мосту и в самой шине(ru.entaxy.esb.cfg)
|
||||
# возможные значения tcp, amqp
|
||||
jms.protocol.inner.esb.test1=tcp
|
||||
# протокол для передачи сообщений между шинами(jms.protocol.bridge.esb.<node_name>)
|
||||
# для корректной работы синхронного режима передачи сообщений: необходимо следить
|
||||
# за одинаковым значением данного параметра во всех подключенных шинах
|
||||
# возможные значения tcp, amqp
|
||||
jms.protocol.bridge.test1=amqp
|
||||
|
||||
# адреса брокера, задаются чеерез запятую(jms.url.<node_name>)
|
||||
jms.url.test2=broker:61616
|
||||
# логин для подключения к брокеру(jms.username.<node_name>)
|
||||
jms.username.test2=entaxy
|
||||
# пароль для подключения к брокеру(jms.password.<node_name>)
|
||||
jms.password.test2=entaxy
|
||||
# jms.master.<node_name> - выставляем в true, когда соответствующий узел настроен в пассивный режим,
|
||||
# т.е. для него jms.local.master = true (брокер должен быть доступен для соединения)
|
||||
jms.master.test2=true
|
||||
# протокол для передачи сообщений внутри шины(jms.protocol.inner.esb.<node_name>)
|
||||
# для корректной работы синхронного режима передачи сообщений: необходимо следить
|
||||
# за одинаковым значением данного параметра в мосту и в самой шине(ru.entaxy.esb.cfg)
|
||||
# возможные значения tcp, amqp
|
||||
jms.protocol.inner.esb.test2=tcp
|
||||
# протокол для передачи сообщений между шинами(jms.protocol.bridge.esb.<node_name>)
|
||||
# для корректной работы синхронного режима передачи сообщений: необходимо следить
|
||||
# за одинаковым значением данного параметра во всех подключенных шинах
|
||||
# возможные значения tcp, amqp
|
||||
jms.protocol.bridge.test2=amqp
|
||||
|
||||
# максимальное колчичество попыток отправить сообщение в очередь
|
||||
# почитать подробнее можно в https://camel.apache.org/components/latest/eips/dead-letter-channel.html#deadLetterChannel-Redelivery
|
||||
redelivery.maximumRedeliveries=-1
|
||||
# время между попытками отправить сообщение в очередь
|
||||
redelivery.redeliveryDelay=5000
|
||||
# экспоненциальный рост времени между попытками отпрвки сообщений в очередь
|
||||
redelivery.useExponentialBackOff=true
|
||||
|
||||
queue.sender.concurrentConsumers=1
|
||||
queue.receiver.concurrentConsumers=1
|
3
distribution/entaxy-docker/postgres/Dockerfile
Normal file
3
distribution/entaxy-docker/postgres/Dockerfile
Normal file
@ -0,0 +1,3 @@
|
||||
FROM postgres
|
||||
|
||||
COPY create-db.sql /docker-entrypoint-initdb.d/
|
4
distribution/entaxy-docker/postgres/create-db.sql
Normal file
4
distribution/entaxy-docker/postgres/create-db.sql
Normal file
@ -0,0 +1,4 @@
|
||||
CREATE DATABASE esb_entaxy;
|
||||
GRANT ALL PRIVILEGES ON DATABASE esb_entaxy TO entaxy;
|
||||
CREATE DATABASE db_connector_test;
|
||||
GRANT ALL PRIVILEGES ON DATABASE db_connector_test TO entaxy;
|
3
distribution/entaxy-docker/reposilite/Dockerfile
Normal file
3
distribution/entaxy-docker/reposilite/Dockerfile
Normal file
@ -0,0 +1,3 @@
|
||||
FROM dzikoysk/reposilite:2.9.23
|
||||
|
||||
COPY tokens.dat /app/data
|
6
distribution/entaxy-docker/reposilite/tokens.dat
Normal file
6
distribution/entaxy-docker/reposilite/tokens.dat
Normal file
@ -0,0 +1,6 @@
|
||||
!!org.panda_lang.reposilite.auth.TokenCollection
|
||||
"tokens":
|
||||
- "alias": "admin"
|
||||
"path": "/"
|
||||
"permissions": "m"
|
||||
"token": "$2a$10$Xrurah6y4IOijq9EtFlAIe2wlhlUScggEBS88DriZDM9MCrAGwqdS"
|
@ -448,12 +448,12 @@
|
||||
"if (response.hasOwnProperty('listTemplate')) {",
|
||||
" var list_template = response['listTemplate'];",
|
||||
"",
|
||||
" pm.test(\"Body matches nsi-in-connector\", function () {",
|
||||
" pm.expect(pm.response.text()).to.include(\"nsi-in-connector\");",
|
||||
" pm.test(\"Body matches uniform-service-in-connector\", function () {",
|
||||
" pm.expect(pm.response.text()).to.include(\"uniform-service-in-connector\");",
|
||||
" });",
|
||||
" ",
|
||||
" // if (response.some(item => item.templateName === 'nsi-in-connector')) {",
|
||||
" pm.globals.set(\"template_name\", \"nsi-in-connector\");",
|
||||
" // if (response.some(item => item.templateName === 'uniform-service-in-connector')) {",
|
||||
" pm.globals.set(\"template_name\", \"uniform-service-in-connector\");",
|
||||
" // }",
|
||||
" ",
|
||||
" pm.test(\"Body matches uniform-service-in-connector\", function () {",
|
||||
@ -665,8 +665,8 @@
|
||||
"if (response.hasOwnProperty('listConnector')) {",
|
||||
" var list_template = response['listConnector'];",
|
||||
"",
|
||||
" pm.test(\"Body matches nsi-in-connector\", function () {",
|
||||
" pm.expect(pm.response.text()).to.include(\"nsi-in-connector\");",
|
||||
" pm.test(\"Body matches uniform-service-in-connector\", function () {",
|
||||
" pm.expect(pm.response.text()).to.include(\"uniform-service-in-connector\");",
|
||||
" });",
|
||||
"}"
|
||||
],
|
||||
|
@ -495,7 +495,7 @@ karaf@root()>
|
||||
|
||||
[source,bash]
|
||||
----
|
||||
feature:repo-add mvn:ru.entaxy.esb/karaf-features/1.0-SNAPSHOT/xml/features
|
||||
feature:repo-add mvn:ru.entaxy.esb/karaf-features/1.8/xml/features
|
||||
----
|
||||
|
||||
Затем запускается команда установки всех компонентов Entaxy
|
||||
|
@ -5,6 +5,6 @@ __Alternative languages:__
|
||||
= Installation
|
||||
Entaxy have different installation ways OOTB:
|
||||
|
||||
* xref:../../temp/entaxy-docker/ReadMe.md[Development docker installation]
|
||||
* xref:../../distribution/entaxy-docker/ReadMe.md[Development docker installation]
|
||||
* xref:../../features/README.md[Development standalone installation]
|
||||
* xref:install.adoc[Enterprise environment installation]
|
||||
|
@ -5,6 +5,6 @@ __Alternative languages:__
|
||||
= Установка
|
||||
Entaxy из коробки имеет разные варианты установки:
|
||||
|
||||
* xref:local-installation/ReadMe.md[Установка для разработки в докер]
|
||||
* xref:../../distribution/entaxy-docker/ReadMe.md[Установка для разработки в докер]
|
||||
* xref:../../features/README.ru.md[Установка для разработки отдельных серверных приложений]
|
||||
* xref:install.adoc[Установка на промышленное окружение]
|
||||
|
@ -20,7 +20,7 @@ cd entaxy-framework
|
||||
<distributionManagement>
|
||||
<snapshotRepository>
|
||||
<id>entaxy-maven-repo-file</id>
|
||||
<url>file:./temp/entaxy-docker/karaf/repo</url>
|
||||
<url>file:./distribution/entaxy-docker/karaf/repo</url>
|
||||
</snapshotRepository>
|
||||
</distributionManagement>
|
||||
</profile>
|
||||
@ -31,7 +31,7 @@ mvn deploy -P docker.file.repo
|
||||
```
|
||||
И после успешной сборки запускаем контейнеры из директории проекта, в которой находится docker-compose.yml:
|
||||
```bash
|
||||
cd ./temp/entaxy-docker
|
||||
cd ./distribution/entaxy-docker
|
||||
docker-compose up
|
||||
```
|
||||
Или `docker compose up` для новых версий docker.
|
||||
@ -68,7 +68,7 @@ config:property-set -p org.ops4j.pax.url.mvn org.ops4j.pax.url.mvn.repositories
|
||||
|
||||
Запускаем контейнеры из директории проекта, в которой находится docker-compose.yml:
|
||||
```bash
|
||||
cd ./temp/entaxy-docker
|
||||
cd ./distribution/entaxy-docker
|
||||
docker-compose up
|
||||
```
|
||||
Или `docker compose up` для новых версий docker.
|
||||
|
@ -25,90 +25,125 @@ Launch the server
|
||||
karaf / karaf.bat
|
||||
|
||||
|
||||
#### Step 2: DB Setup
|
||||
#### Step 2: DB, artemis and artefact manager Setup
|
||||
|
||||
If use docker:
|
||||
If use docker run Artemis
|
||||
|
||||
docker run --name entaxy_db -p 5432:5432 -e POSTGRES_PASSWORD=entaxy -e POSTGRES_USER=entaxy -e POSTGRES_DB=cache -d postgres
|
||||
sudo docker run --rm -p 8161:8161 -p 61616:61616 -e ARTEMIS_USERNAME=entaxy -e ARTEMIS_PASSWORD=entaxy --name=artemis1 -d vromero/activemq-artemis
|
||||
|
||||
#### Step 3: Add features
|
||||
And run postgres
|
||||
|
||||
sudo docker run --name entaxy_db -p 5432:5432 -v /etc/timezone:/etc/timezone:ro -e POSTGRES_PASSWORD=entaxy -e POSTGRES_USER=entaxy -e POSTGRES_DB=cache -d postgres
|
||||
|
||||
or mssql
|
||||
|
||||
sudo docker run --name mssql -e 'ACCEPT_EULA=Y' -e 'SA_PASSWORD=entaxy' -p 1433:1433 -d mcr.microsoft.com/mssql/server:2017-CU8-ubuntu
|
||||
|
||||
`By default project use two db: cache и esb_entaxy,`
|
||||
`Name of db wrote in org.ops4j.datasource-entaxy.esb.*.cfg`
|
||||
|
||||
and run nexus, if do you want to use it(necessary for system-management to work)
|
||||
|
||||
sudo docker run -d -p 8081:8081 --name nexus sonatype/nexus3
|
||||
|
||||
Now we look at the admin password through the command:
|
||||
|
||||
docker exec nexus cat /nexus-data/admin.password
|
||||
And then we go to the admin panel through the browser on http://localhost:8081/.
|
||||
By default, it needs to create a user entaxy / entaxy and a maven repository called entaxy to work.
|
||||
|
||||
On Docker Toolbox, errors may occur due to insufficient memory, solved by changing the memory allocation at startup`
|
||||
|
||||
docker run -d -p 8081:8081 --name nexus -e INSTALL4J_ADD_VM_PARAMS="-Xms2g -Xmx2g -XX:MaxDirectMemorySize=3g" sonatype/nexus3
|
||||
|
||||
#### Step 3: Preparing and launching karaf
|
||||
|
||||
Copy the following files from the entaxy-framework\features\src\main\cfg\ repository to etc karaf
|
||||
|
||||
jre.properties
|
||||
org.apache.karaf.cellar.groups.cfg
|
||||
|
||||
|
||||
Also, the local nexus repository must be added to the standard repositories in the file org.ops4j.pax.url.mvn.cfg property org.ops4j.pax.url.mvn.repositories.`
|
||||
|
||||
`The user and the name of the repository are specified in the ru.entaxy.esb.deployer.nexus.cfg configuration file.`
|
||||
|
||||
|
||||
Running Apache Karaf 4.x or newer
|
||||
|
||||
karaf
|
||||
|
||||
Or starting karaf with cleaning to its original state
|
||||
|
||||
karaf clean
|
||||
|
||||
## Step 4: Installing all features in one go using the karaf command line
|
||||
|
||||
shell:source <project-directory>/entaxy-framework/features/src/main/script/install.karaf
|
||||
|
||||
- After that you need to check the configurations of connections to the database in the files org.ops4j.datasource-entaxy.esb. *. Cfg
|
||||
- Check the address of the broker in the file ru.entaxy.esb.cfg property ru.entaxy.esb.jms.url
|
||||
- Check broker address in init/entaxy-platform-connections.json file "name": "entaxy-broker" connection in which property url
|
||||
- Replace org.apache.karaf.cellar.groups.cfg file
|
||||
|
||||
#### Step 4a: Add features
|
||||
|
||||
Add features required
|
||||
|
||||
feature:repo-add mvn:ru.entaxy.esb/karaf-features/LATEST/xml/features
|
||||
feature:install liquibase-updater
|
||||
feature:install entaxy-esb-api
|
||||
feature:repo-add mvn:ru.entaxy.esb/karaf-features/$ESB_ENTAXY_VERSION/xml/features
|
||||
|
||||
Install nsi
|
||||
Install entaxy
|
||||
|
||||
feature:install nsi
|
||||
|
||||
Install permission
|
||||
feature:install entaxy-all
|
||||
|
||||
feature:install permission
|
||||
|
||||
Install system-registry
|
||||
Add base feature required
|
||||
|
||||
feature:install system-registry
|
||||
|
||||
Install system-group-registry
|
||||
feature:repo-add mvn:ru.entaxy.esb.platform.runtime/base/$ESB_ENTAXY_VERSION/xml/features
|
||||
|
||||
feature:install system-group-registry
|
||||
|
||||
Install system-group-profile
|
||||
Install base
|
||||
|
||||
install -s blueprint:mvn:ru.entaxy.esb.integration.esb.test.profiles/test-profiles/1.0-SNAPSHOT/xml/g_test
|
||||
|
||||
Install bridge
|
||||
feature:install base
|
||||
|
||||
feature:install bridge
|
||||
|
||||
Install basic-auth
|
||||
Add core feature required
|
||||
|
||||
feature:install basic-auth
|
||||
|
||||
Install events
|
||||
feature:repo-add mvn:ru.entaxy.esb.platform.runtime/core/$ESB_ENTAXY_VERSION/xml/features
|
||||
|
||||
feature:install events
|
||||
Install core
|
||||
|
||||
feature:install core
|
||||
|
||||
Add entaxy-uniform-service feature required
|
||||
|
||||
feature:repo-add mvn:ru.entaxy.esb.platform.runtime.modules/uniform-service/$ESB_ENTAXY_VERSION/xml/features
|
||||
|
||||
Install entaxy-uniform-service
|
||||
|
||||
feature:install entaxy-uniform-service
|
||||
|
||||
Useful comand for dev
|
||||
|
||||
bundle:watch mvn:ru.entaxy.esb/nsi-esb/1.0-SNAPSHOT
|
||||
bundle:watch mvn:ru.entaxy.esb/esb/1.8
|
||||
|
||||
#### Step 4: Verify that your service is available using the following url in the browser.
|
||||
#### Step 5: Verify that your service is available using the following url in the browser.
|
||||
|
||||
We assume you're using Karaf's default PAX Web configuration which uses port `8181` for http. If you would like to use another port or https, change the configuration in `${KARAF_HOME}/etc/org.ops4j.pax.web.cfg`. The immediate extension after the hostname and port ("cxf" in the below URL) is configured via the org.apache.cxf.osgi.cfg file (Please see [http://team.ops4j.org/wiki//display/paxweb/Pax+Web](http://team.ops4j.org/wiki//display/paxweb/Pax+Web) for more information on PAX Web).
|
||||
|
||||
[http://localhost:8181/cxf/xdto/NSI?wsdl](http://localhost:8181/cxf/xdto/NSI?wsdl)
|
||||
[http://localhost:8181/cxf/system-management?wsdl](http://localhost:8181/cxf/system-management?wsdl)
|
||||
|
||||
#### Step 5: Start SOAPUI or Postman
|
||||
#### Step 6: Start SOAPUI or Postman
|
||||
|
||||
POST request to
|
||||
|
||||
http://localhost:8181/cxf/xdto/NSI
|
||||
http://localhost:8181/cxf/system-management
|
||||
|
||||
Send test request:
|
||||
|
||||
<soap:Envelope xmlns:soap="http://www.w3.org/2003/05/soap-envelope" xmlns:xdto="http://www.entaxy.ru/xdto_NSI">
|
||||
<soap:Header/>
|
||||
<soap:Body>
|
||||
<xdto:GetMDMReferences/>
|
||||
</soap:Body>
|
||||
</soap:Envelope>
|
||||
|
||||
Response contains GUID, copy it and send request for get result:
|
||||
|
||||
<soap:Envelope xmlns:soap="http://www.w3.org/2003/05/soap-envelope" xmlns:xdto="http://www.entaxy.ru/xdto_NSI">
|
||||
<soap:Header/>
|
||||
<soap:Body>
|
||||
<xdto:GetResult>
|
||||
<xdto:RequestNumber>{GUID}</xdto:RequestNumber>
|
||||
</xdto:GetResult>
|
||||
</soap:Body>
|
||||
</soap:Envelope>
|
||||
|
||||
#### Step 6: Check the file system and DB
|
||||
Check the folder "target/inbox/" in the Karaf base directory to see that a message has arrived.
|
||||
<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:sys="http://www.entaxy.ru/system-management-service/">
|
||||
<soapenv:Header/>
|
||||
<soapenv:Body>
|
||||
<sys:listTemplateRequest/>
|
||||
</soapenv:Body>
|
||||
</soapenv:Envelope>
|
||||
|
||||
### Forum, Help, etc
|
||||
|
||||
@ -143,7 +178,7 @@ The Camel riders!
|
||||
|
||||
or
|
||||
|
||||
newman run "Entaxy Integration Tests.postman_collection.json" --env-var base_url=http://192.168.122.83:8181/cxf
|
||||
newman run "Entaxy Integration Tests.postman_collection.json" --env-var base_url=http://localhost:8181/cxf
|
||||
|
||||
#### CXF logging messages
|
||||
|
||||
|
@ -8,7 +8,7 @@
|
||||
|
||||
Для установки фич понадобятся несколько шагов.
|
||||
|
||||
Использовать Java 8
|
||||
Использовать Java 11+
|
||||
|
||||
### Шаг 1: Сборка проекта
|
||||
|
||||
@ -74,86 +74,67 @@
|
||||
|
||||
- После требуется проверить конфигурации соединений с бд в файлах org.ops4j.datasource-entaxy.esb.*.cfg
|
||||
- Проверить адрес брокера в файле ru.entaxy.esb.cfg свойство ru.entaxy.esb.jms.url
|
||||
- Проверить адреса брокеров для моста в файле ru.entaxy.esb.system.bridge.cfg свойства jms.url.*
|
||||
- Проверить адрес брокера в файле init/entaxy-platform-connections.json коннекция "name": "entaxy-broker" в которой свойство url
|
||||
- Заменить файл org.apache.karaf.cellar.groups.cfg
|
||||
|
||||
#### Шаг 4a: Или можно установить фичи вручную
|
||||
|
||||
Добавить необходимые фичи
|
||||
Добавить необходимую фичу
|
||||
|
||||
feature:repo-add mvn:ru.entaxy.esb/karaf-features/LATEST/xml/features
|
||||
feature:install liquibase-updater
|
||||
feature:install entaxy-esb-api
|
||||
feature:repo-add mvn:ru.entaxy.esb/karaf-features/$ESB_ENTAXY_VERSION/xml/features
|
||||
|
||||
Установить nsi
|
||||
Установить entaxy
|
||||
|
||||
feature:install nsi
|
||||
feature:install entaxy-all
|
||||
|
||||
Установить permission
|
||||
Добавить необходимую фичу base
|
||||
|
||||
feature:install permission
|
||||
feature:repo-add mvn:ru.entaxy.esb.platform.runtime/base/$ESB_ENTAXY_VERSION/xml/features
|
||||
|
||||
Установить реестр систем
|
||||
Установить base
|
||||
|
||||
feature:install system-registry
|
||||
feature:install base
|
||||
|
||||
Установить тестовый профиль
|
||||
Добавить необходимую фичу core
|
||||
|
||||
install -s blueprint:mvn:ru.entaxy.esb.integration.esb.test.profiles/test-profiles/1.0-SNAPSHOT/xml/s_s1
|
||||
feature:repo-add mvn:ru.entaxy.esb.platform.runtime/core/$ESB_ENTAXY_VERSION/xml/features
|
||||
|
||||
Установить реестр групп систем
|
||||
Установить core
|
||||
|
||||
feature:install system-group-registry
|
||||
feature:install core
|
||||
|
||||
Установить профиль группы систем
|
||||
Добавить необходимую entaxy-uniform-service
|
||||
|
||||
install -s blueprint:mvn:ru.entaxy.esb.integration.esb.test.profiles/test-profiles/1.0-SNAPSHOT/xml/g_fzd
|
||||
feature:repo-add mvn:ru.entaxy.esb.platform.runtime.modules/uniform-service/$ESB_ENTAXY_VERSION/xml/features
|
||||
|
||||
Установить мост
|
||||
Install entaxy-uniform-service
|
||||
|
||||
feature:install bridge
|
||||
|
||||
Установить сервис управления учётными записями
|
||||
feature:install entaxy-uniform-service
|
||||
|
||||
feature:install basic-auth
|
||||
|
||||
Установить events
|
||||
Useful comand for dev
|
||||
|
||||
feature:install events
|
||||
|
||||
Для дев окружения может быть полезна команда watch
|
||||
|
||||
bundle:watch mvn:ru.entaxy.esb/nsi-esb/1.0-SNAPSHOT
|
||||
bundle:watch mvn:ru.entaxy.esb/esb/1.8
|
||||
|
||||
#### Шаг 5: Проверка доступности сервиса через браузер, используя следующий адрес.
|
||||
|
||||
Подразумевается использование настроек по умолчанию для карафовского PAX Web, который для http настроен на порт `8181`. Если Вы желаете использовать другой порт или https, то необходимо поменять настройки в `${KARAF_HOME}/etc/org.ops4j.pax.web.cfg`. Непосредственное продолжение адреса после имени хоста и номера порта (в примере ниже `cxf`) можно настроить в файле `org.apache.cxf.osgi.cfg`. (Для более подробной информации по PAX Web перейдите по ссылке [http://team.ops4j.org/wiki/display/paxweb/Pax+Web](http://team.ops4j.org/wiki/display/paxweb/Pax+Web))
|
||||
|
||||
[http://localhost:8181/cxf/system-management?wsdl](http://localhost:8181/cxf/system-management?wsdl)
|
||||
|
||||
#### Шаг 6: Запуск SOAPUI или Postman
|
||||
|
||||
Отправка POST запроса на адрес
|
||||
|
||||
http://localhost:8181/cxf/xdto/NSI
|
||||
http://localhost:8181/cxf/system-management
|
||||
|
||||
Тестовый запрос:
|
||||
|
||||
<soap:Envelope xmlns:soap="http://www.w3.org/2003/05/soap-envelope" xmlns:xdto="http://www.entaxy.ru/xdto_NSI">
|
||||
<soap:Header/>
|
||||
<soap:Body>
|
||||
<xdto:GetMDMReferences/>
|
||||
</soap:Body>
|
||||
</soap:Envelope>
|
||||
|
||||
Ответ сожержит GUID, скопируйте его и отправьте для получения результата:
|
||||
|
||||
<soap:Envelope xmlns:soap="http://www.w3.org/2003/05/soap-envelope" xmlns:xdto="http://www.entaxy.ru/xdto_NSI">
|
||||
<soap:Header/>
|
||||
<soap:Body>
|
||||
<xdto:GetResult>
|
||||
<xdto:RequestNumber>{GUID}</xdto:RequestNumber>
|
||||
</xdto:GetResult>
|
||||
</soap:Body>
|
||||
</soap:Envelope>
|
||||
<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:sys="http://www.entaxy.ru/system-management-service/">
|
||||
<soapenv:Header/>
|
||||
<soapenv:Body>
|
||||
<sys:listTemplateRequest/>
|
||||
</soapenv:Body>
|
||||
</soapenv:Envelope>
|
||||
|
||||
## Автотесты
|
||||
|
||||
@ -170,12 +151,7 @@
|
||||
|
||||
#### Запуск нагрузочных тестов через Jmeter
|
||||
|
||||
В тестах прописана система s1, запросы направляются на 83 ноду
|
||||
В тестах прописана система s1
|
||||
|
||||
* 1C-EXCHANGE_SEND_GET_ASK.jmx - запись и чтение с подтверждением последовательно
|
||||
* 1C-EXCHANGE_SEND_GET_ASK_ASYNC.jmx - запись и чтение с подтверждением в параллельных потоках
|
||||
|
||||
Можно запускать с машины 192.168.122.76
|
||||
|
||||
cd /opt/jenkins/.jenkins/workspace/test_master/test/jmeter
|
||||
/opt/apache-jmeter-5.2.1/bin/jmeter.sh -n -t ./1C-EXCHANGE_SEND_GET_ASK_ASYNC.jmx
|
||||
* UNIFORM-SERVICE-CONNECTOR_SEND_GET_ACK.jmx - запись и чтение с подтверждением последовательно
|
||||
* UNIFORM-SERVICE_SEND_GET_AСK_ASYNC.jmx - запись и чтение с подтверждением в параллельных потоках
|
||||
|
@ -90,21 +90,6 @@
|
||||
<type>cfg</type>
|
||||
<classifier>ru.entaxy.esb</classifier>
|
||||
</artifact>
|
||||
<artifact>
|
||||
<file>target/cfg/ru.entaxy.esb.connector.1c.service.soap.passive.cfg</file>
|
||||
<type>cfg</type>
|
||||
<classifier>ru.entaxy.esb.connector.1c.service.soap.passive</classifier>
|
||||
</artifact>
|
||||
<artifact>
|
||||
<file>target/cfg/ru.entaxy.esb.connector.1c.soap.passive.cfg</file>
|
||||
<type>cfg</type>
|
||||
<classifier>ru.entaxy.esb.connector.1c.soap.passive</classifier>
|
||||
</artifact>
|
||||
<artifact>
|
||||
<file>target/cfg/ru.entaxy.esb.connector.1c.support.cfg</file>
|
||||
<type>cfg</type>
|
||||
<classifier>ru.entaxy.esb.connector.1c.support</classifier>
|
||||
</artifact>
|
||||
<artifact>
|
||||
<file>target/cfg/ru.entaxy.esb.system.basic_auth.cfg</file>
|
||||
<type>cfg</type>
|
||||
|
@ -1,47 +0,0 @@
|
||||
###
|
||||
# ~~~~~~licensing~~~~~~
|
||||
# karaf-features
|
||||
# ==========
|
||||
# Copyright (C) 2020 - 2021 EmDev LLC
|
||||
# ==========
|
||||
# Licensed under the Apache License, Version 2.0 (the "License");
|
||||
# you may not use this file except in compliance with the License.
|
||||
# You may obtain a copy of the License at
|
||||
#
|
||||
# http://www.apache.org/licenses/LICENSE-2.0
|
||||
#
|
||||
# Unless required by applicable law or agreed to in writing, software
|
||||
# distributed under the License is distributed on an "AS IS" BASIS,
|
||||
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||
# See the License for the specific language governing permissions and
|
||||
# limitations under the License.
|
||||
# ~~~~~~/licensing~~~~~~
|
||||
###
|
||||
# максимальное количество попыток отправить сообщение в очередь из агрегатора
|
||||
redelivery.maximumRedeliveries=2
|
||||
# очередь для отправки сообщений, которые не смог отправить агрегатор в destination
|
||||
redelivery.deadLetterQueue=revert.message.dead
|
||||
|
||||
# задается в mc, значение по умолчанию 10 минут
|
||||
acknowledge.completion.timeout=600000
|
||||
# настройка способа агрегирования через игнайт или бд
|
||||
# Важно! следить за тем чтобы данный параметр был одинаковым во всем кластере
|
||||
# варианты - igniteAggregationRepository, jdbcAggregationRepository (для всех бд кроме postgres), postgresAggregationRepository
|
||||
# по умолчанию - jdbcAggregationRepository
|
||||
acknowledge.aggregation.repository=jdbcAggregationRepository
|
||||
|
||||
# Поднимается endpoint /active_connector_test_consumer
|
||||
# при выставленной настройке mode.dev=true
|
||||
active.mode.dev=false
|
||||
active.username=Администратор
|
||||
active.password=
|
||||
|
||||
# валидация сообщения по wsdl
|
||||
active.validation=false
|
||||
|
||||
# uuid шины, для отправки в активном режиме в систему от имени шины
|
||||
bus.id=FFFFFFFF-FFFF-FFFF-FFFF-FFFFFFFFFFFF
|
||||
get.destination=
|
||||
|
||||
# параметр для тестирования активного коннектора
|
||||
test.empty.rate=20
|
@ -56,7 +56,7 @@ rm -rf $INSTALL_DIR/data/txlog/*
|
||||
if test -f "$DIRNAME/version"; then
|
||||
ESB_ENTAXY_VERSION=`cat $DIRNAME/version`
|
||||
else
|
||||
ESB_ENTAXY_VERSION=1.0-SNAPSHOT
|
||||
ESB_ENTAXY_VERSION=1.8.0
|
||||
fi
|
||||
echo "Installing $ESB_ENTAXY_VERSION"
|
||||
|
||||
|
@ -27,7 +27,7 @@ DIRNAME="$( cd "$(dirname "$0")" ; pwd -P )"
|
||||
if test -f "$DIRNAME/version"; then
|
||||
ESB_ENTAXY_VERSION=`cat $DIRNAME/version`
|
||||
else
|
||||
ESB_ENTAXY_VERSION=1.0-SNAPSHOT
|
||||
ESB_ENTAXY_VERSION=1.8.0
|
||||
fi
|
||||
echo "Create patch version $ESB_ENTAXY_VERSION"
|
||||
|
||||
|
@ -20,7 +20,7 @@
|
||||
# ~~~~~~/licensing~~~~~~
|
||||
###
|
||||
|
||||
# берет номер версии из файла version, если его нет то используется 1.0-SNAPSHOT
|
||||
# берет номер версии из файла version, если его нет то используется 1.8
|
||||
# если задан первый параметр чистит конфиги
|
||||
|
||||
DIRNAME="$( cd "$(dirname "$0")" ; pwd -P )"
|
||||
@ -28,7 +28,7 @@ DIRNAME="$( cd "$(dirname "$0")" ; pwd -P )"
|
||||
if test -f "$DIRNAME/version"; then
|
||||
ESB_ENTAXY_VERSION=`cat $DIRNAME/version`
|
||||
else
|
||||
ESB_ENTAXY_VERSION=1.0-SNAPSHOT
|
||||
ESB_ENTAXY_VERSION=1.8
|
||||
fi
|
||||
echo "Installing $ESB_ENTAXY_VERSION"
|
||||
|
||||
|
105
platform/pom.xml
105
platform/pom.xml
@ -17,4 +17,109 @@
|
||||
<modules>
|
||||
<module>runtime</module>
|
||||
</modules>
|
||||
|
||||
<profiles>
|
||||
<profile>
|
||||
<id>install-script</id>
|
||||
<activation>
|
||||
<file>
|
||||
<exists>src/main/scripts/entaxy-platform.install</exists>
|
||||
</file>
|
||||
</activation>
|
||||
<build>
|
||||
<plugins>
|
||||
<plugin>
|
||||
<groupId>org.codehaus.mojo</groupId>
|
||||
<artifactId>license-maven-plugin</artifactId>
|
||||
<executions>
|
||||
<execution>
|
||||
<id>update-file-header</id>
|
||||
<goals>
|
||||
<goal>update-file-header</goal>
|
||||
</goals>
|
||||
<phase>process-sources</phase>
|
||||
<configuration>
|
||||
<organizationName>${license.organizationName}</organizationName>
|
||||
<inceptionYear>${license.inceptionYear}</inceptionYear>
|
||||
<projectName>${license.projectName}</projectName>
|
||||
<copyrightOwners>${license.copyrightOwners}</copyrightOwners>
|
||||
<licenseName>${license.licenseName}</licenseName>
|
||||
|
||||
<!-- plugin documentation recommends "true"
|
||||
but we use "false" to look like Apache sources -->
|
||||
<addJavaLicenseAfterPackage>false</addJavaLicenseAfterPackage>
|
||||
<emptyLineAfterHeader>false</emptyLineAfterHeader>
|
||||
|
||||
<excludes>
|
||||
<exclude>**/*.json</exclude>
|
||||
</excludes>
|
||||
<extraExtensions>
|
||||
<!-- treat *.install files as *.properties -->
|
||||
<install>properties</install>
|
||||
</extraExtensions>
|
||||
|
||||
<ignoreNoFileToScan>true</ignoreNoFileToScan>
|
||||
<keepBackup>true</keepBackup>
|
||||
|
||||
<processStartTag>${license.processStartTag}</processStartTag>
|
||||
<processEndTag>${license.processEndTag}</processEndTag>
|
||||
<sectionDelimiter>${license.sectionDelimiter}</sectionDelimiter>
|
||||
</configuration>
|
||||
</execution>
|
||||
</executions>
|
||||
</plugin>
|
||||
<plugin>
|
||||
<!-- @TODO move plugin declaration to root/pom.xml -->
|
||||
<groupId>org.apache.maven.plugins</groupId>
|
||||
<artifactId>maven-resources-plugin</artifactId>
|
||||
<version>3.2.0</version>
|
||||
<executions>
|
||||
<execution>
|
||||
<id>copy-resources</id>
|
||||
<!-- here the phase you need -->
|
||||
<phase>validate</phase>
|
||||
<goals>
|
||||
<goal>copy-resources</goal>
|
||||
</goals>
|
||||
<configuration>
|
||||
<outputDirectory>${basedir}/target/scripts</outputDirectory>
|
||||
<resources>
|
||||
<resource>
|
||||
<directory>src/main/scripts</directory>
|
||||
<filtering>true</filtering>
|
||||
</resource>
|
||||
</resources>
|
||||
</configuration>
|
||||
</execution>
|
||||
</executions>
|
||||
</plugin>
|
||||
<plugin>
|
||||
<groupId>org.codehaus.mojo</groupId>
|
||||
<artifactId>build-helper-maven-plugin</artifactId>
|
||||
<executions>
|
||||
<execution>
|
||||
<id>attach-script</id>
|
||||
<phase>verify</phase>
|
||||
<goals>
|
||||
<goal>attach-artifact</goal>
|
||||
</goals>
|
||||
<configuration>
|
||||
<artifacts>
|
||||
<artifact>
|
||||
<file>target/scripts/entaxy-platform.install</file>
|
||||
<type>install</type>
|
||||
<classifier>entaxy-platform</classifier>
|
||||
</artifact>
|
||||
</artifacts>
|
||||
</configuration>
|
||||
</execution>
|
||||
</executions>
|
||||
</plugin>
|
||||
</plugins>
|
||||
</build>
|
||||
</profile>
|
||||
|
||||
</profiles>
|
||||
|
||||
|
||||
</project>
|
@ -18,6 +18,7 @@
|
||||
# ~~~~~~/licensing~~~~~~
|
||||
###
|
||||
welcome = \
|
||||
\r\n\
|
||||
\u001B[36m :::::::::: :::: ::: ::::::::::: ::: ::: ::: ::: ::: \u001B[0m\r\n\
|
||||
\u001B[36m :+: :+:+: :+: :+: :+: :+: :+: :+: :+: :+: \u001B[0m\r\n\
|
||||
\u001B[36m +:+ :+:+:+ +:+ +:+ +:+ +:+ +:+ +:+ +:+ +:+ \u001B[0m\r\n\
|
||||
|
@ -26,52 +26,62 @@
|
||||
xsi:schemaLocation="http://karaf.apache.org/xmlns/features/v1.3.0 http://karaf.apache.org/xmlns/features/v1.3.0">
|
||||
|
||||
<repository>mvn:org.apache.camel.karaf/apache-camel/${camel.version}/xml/features</repository>
|
||||
<repository>mvn:ru.entaxy.esb.distribution/entaxy-karaf-features/${project.version}/xml/features</repository>
|
||||
|
||||
<feature name="base" version="${project.version}">
|
||||
<feature version="${project.version}">connecting</feature>
|
||||
<feature name="entaxy-platform-base" version="${project.version}" start-level="70">
|
||||
<feature version="${project.version}">entaxy-branding</feature>
|
||||
<feature version="${project.version}">connecting</feature>
|
||||
</feature>
|
||||
|
||||
<feature name="entaxy-branding" version="${project.version}" start-level="70">
|
||||
<configfile finalname="${karaf.etc}/branding.properties" override="true">
|
||||
mvn:ru.entaxy.esb.platform.runtime.base/branding/${project.version}/properties/branding
|
||||
</configfile>
|
||||
</feature>
|
||||
|
||||
<feature name="connecting" version="${project.version}">
|
||||
<feature name="connecting" version="${project.version}" start-level="70">
|
||||
<feature version="${project.version}">generator</feature>
|
||||
<bundle>mvn:ru.entaxy.esb.platform.runtime.base.connecting/connection/${project.version}</bundle>
|
||||
<feature version="${project.version}">producer</feature>
|
||||
<feature version="${project.version}">adapter</feature>
|
||||
</feature>
|
||||
|
||||
<feature name="generator" version="${project.version}">
|
||||
<feature name="generator" version="${project.version}" start-level="70">
|
||||
<bundle>mvn:ru.entaxy.esb.platform.runtime.base.connecting.generator/generator-api/${project.version}</bundle>
|
||||
<bundle>mvn:ru.entaxy.esb.platform.runtime.base.connecting.generator/ftl-generator/${project.version}</bundle>
|
||||
<bundle>mvn:ru.entaxy.esb.platform.runtime.base.connecting.generator/generator-factory/${project.version}</bundle>
|
||||
</feature>
|
||||
|
||||
<feature name="producer" version="${project.version}">
|
||||
<feature name="producer" version="${project.version}" start-level="70">
|
||||
<feature>camel-gson</feature>
|
||||
<bundle>mvn:ru.entaxy.esb.platform.runtime.base.connecting.producer/producer-api/${project.version}</bundle>
|
||||
<bundle>mvn:ru.entaxy.esb.platform.runtime.base.connecting.producer/connection-producer/${project.version}</bundle>
|
||||
</feature>
|
||||
|
||||
<feature name="adapter" version="${project.version}">
|
||||
<feature name="adapter" version="${project.version}" start-level="70">
|
||||
<feature version="${project.version}">adapters-core</feature>
|
||||
<feature version="${project.version}">file-adapter</feature>
|
||||
<feature version="${project.version}">artemis-adapter</feature>
|
||||
<feature version="${project.version}">postgresql-adapter</feature>
|
||||
</feature>
|
||||
|
||||
<feature name="adapters-core" version="${project.version}">
|
||||
<feature name="adapters-core" version="${project.version}" start-level="70">
|
||||
<bundle>mvn:ru.entaxy.esb.platform.runtime.base.connecting.adapter/adapters-core/${project.version}</bundle>
|
||||
</feature>
|
||||
|
||||
<feature name="file-adapter" version="${project.version}">
|
||||
<bundle>mvn:org.apache.camel/camel-file/${camel.version}</bundle>
|
||||
<feature name="file-adapter" version="${project.version}" start-level="70">
|
||||
<!-- bundle>mvn:org.apache.camel/camel-file/${camel.version}</bundle -->
|
||||
<feature prerequisite="true" version="${camel.version}">camel-core</feature>
|
||||
<bundle>mvn:ru.entaxy.esb.platform.runtime.base.connecting.adapter/file-adapter/${project.version}</bundle>
|
||||
</feature>
|
||||
|
||||
<feature name="artemis-adapter" version="${project.version}">
|
||||
<bundle>mvn:org.apache.camel/camel-jms/${camel.version}</bundle>
|
||||
<feature name="artemis-adapter" version="${project.version}" start-level="70">
|
||||
<!-- bundle>mvn:org.apache.camel/camel-jms/${camel.version}</bundle -->
|
||||
<feature prerequisite="true" version="${camel.version}">camel-jms</feature>
|
||||
<bundle>mvn:ru.entaxy.esb.platform.runtime.base.connecting.adapter/artemis-adapter/${project.version}</bundle>
|
||||
</feature>
|
||||
|
||||
<feature name="postgresql-adapter" version="${project.version}">
|
||||
<feature name="postgresql-adapter" version="${project.version}" start-level="70">
|
||||
<bundle>wrap:mvn:org.postgresql/postgresql/${postgresql.version}</bundle>
|
||||
<bundle>mvn:org.apache.camel/camel-jdbc/${camel.version}</bundle>
|
||||
<bundle>mvn:ru.entaxy.esb.platform.runtime.base.connecting.adapter/postgresql-adapter/${project.version}</bundle>
|
||||
|
@ -24,10 +24,32 @@
|
||||
<extensions>true</extensions>
|
||||
<configuration>
|
||||
<instructions>
|
||||
<Entaxy-Initializer-Class>ru.entaxy.esb.platform.runtime.core.initializer.connection.ConnectionInitializer?id=connections&repeat=false&depends-on=core,datasources</Entaxy-Initializer-Class>
|
||||
<Entaxy-Initializer-Class>ru.entaxy.esb.platform.runtime.core.initializer.connection.ConnectionInitializer?id=connections&repeat=true&depends-on=core,datasources</Entaxy-Initializer-Class>
|
||||
</instructions>
|
||||
</configuration>
|
||||
</plugin>
|
||||
<plugin>
|
||||
<groupId>org.codehaus.mojo</groupId>
|
||||
<artifactId>build-helper-maven-plugin</artifactId>
|
||||
<executions>
|
||||
<execution>
|
||||
<id>attach-artifacts</id>
|
||||
<phase>package</phase>
|
||||
<goals>
|
||||
<goal>attach-artifact</goal>
|
||||
</goals>
|
||||
<configuration>
|
||||
<artifacts>
|
||||
<artifact>
|
||||
<file>src/main/non-packaged-resources/etc/init/entaxy-platform-connections.json</file>
|
||||
<type>json</type>
|
||||
<classifier>init-config</classifier>
|
||||
</artifact>
|
||||
</artifacts>
|
||||
</configuration>
|
||||
</execution>
|
||||
</executions>
|
||||
</plugin>
|
||||
</plugins>
|
||||
</build>
|
||||
|
||||
|
@ -0,0 +1,54 @@
|
||||
{
|
||||
"connections": [
|
||||
{
|
||||
"nodeType": "connection",
|
||||
"uuid": "connection-uuid-1",
|
||||
"name": "entaxy-file",
|
||||
"adapterName": "fileAdapter",
|
||||
"platform": true,
|
||||
"pathParameter": "data/shared",
|
||||
"properties": {},
|
||||
"options": {
|
||||
"noop": true,
|
||||
"fileName": "default.txt",
|
||||
"allowNullBody": "true"
|
||||
}
|
||||
},
|
||||
{
|
||||
"nodeType": "connection",
|
||||
"uuid": "connection-uuid-2",
|
||||
"name": "entaxy-broker",
|
||||
"adapterName": "artemisAdapter",
|
||||
"platform": true,
|
||||
"pathParameter": "queue:entaxy.default",
|
||||
"properties": {
|
||||
"url": "(tcp://localhost:61616)",
|
||||
"username": "entaxy",
|
||||
"password": "entaxy",
|
||||
"maxConnections": "20",
|
||||
"maxSessionsPerConnection": "100"
|
||||
},
|
||||
"options": {}
|
||||
},
|
||||
{
|
||||
"nodeType": "connection",
|
||||
"uuid": "connection-uuid-3",
|
||||
"name": "entaxy-db-storage",
|
||||
"adapterName": "postgresqlAdapter",
|
||||
"platform": true,
|
||||
"pathParameter": "entaxy.esb.storage",
|
||||
"properties": {},
|
||||
"options": {}
|
||||
},
|
||||
{
|
||||
"nodeType": "connection",
|
||||
"uuid": "connection-uuid-4",
|
||||
"name": "entaxy-db-cache",
|
||||
"adapterName": "postgresqlAdapter",
|
||||
"platform": true,
|
||||
"pathParameter": "entaxy.esb.cache",
|
||||
"properties": {},
|
||||
"options": {}
|
||||
}
|
||||
]
|
||||
}
|
@ -26,10 +26,38 @@
|
||||
<extensions>true</extensions>
|
||||
<configuration>
|
||||
<instructions>
|
||||
<Entaxy-Initializer-Class>ru.entaxy.esb.platform.runtime.core.initializer.datasources.DataSourcesInitializer?id=datasources&repeat=false</Entaxy-Initializer-Class>
|
||||
<Entaxy-Initializer-Class>ru.entaxy.esb.platform.runtime.core.initializer.datasources.DataSourcesInitializer?id=datasources&repeat=false&retries=10&interval=2000</Entaxy-Initializer-Class>
|
||||
</instructions>
|
||||
</configuration>
|
||||
</plugin>
|
||||
<plugin>
|
||||
<groupId>org.codehaus.mojo</groupId>
|
||||
<artifactId>build-helper-maven-plugin</artifactId>
|
||||
<executions>
|
||||
<execution>
|
||||
<id>attach-artifacts</id>
|
||||
<phase>package</phase>
|
||||
<goals>
|
||||
<goal>attach-artifact</goal>
|
||||
</goals>
|
||||
<configuration>
|
||||
<artifacts>
|
||||
<artifact>
|
||||
<file>src/main/non-packaged-resources/etc/org.ops4j.datasource-entaxy.esb.cache.cfg</file>
|
||||
<type>cfg</type>
|
||||
<classifier>datasource-cache</classifier>
|
||||
</artifact>
|
||||
<artifact>
|
||||
<file>src/main/non-packaged-resources/etc/org.ops4j.datasource-entaxy.esb.storage.cfg</file>
|
||||
<type>cfg</type>
|
||||
<classifier>datasource-storage</classifier>
|
||||
</artifact>
|
||||
</artifacts>
|
||||
</configuration>
|
||||
</execution>
|
||||
</executions>
|
||||
</plugin>
|
||||
|
||||
</plugins>
|
||||
</build>
|
||||
|
||||
|
@ -0,0 +1,43 @@
|
||||
/*-
|
||||
* ~~~~~~licensing~~~~~~
|
||||
* datasources-initializer
|
||||
* ==========
|
||||
* Copyright (C) 2020 - 2021 EmDev LLC
|
||||
* ==========
|
||||
* Licensed under the Apache License, Version 2.0 (the "License");
|
||||
* you may not use this file except in compliance with the License.
|
||||
* You may obtain a copy of the License at
|
||||
*
|
||||
* http://www.apache.org/licenses/LICENSE-2.0
|
||||
*
|
||||
* Unless required by applicable law or agreed to in writing, software
|
||||
* distributed under the License is distributed on an "AS IS" BASIS,
|
||||
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||
* See the License for the specific language governing permissions and
|
||||
* limitations under the License.
|
||||
* ~~~~~~/licensing~~~~~~
|
||||
*/
|
||||
package ru.entaxy.esb.platform.runtime.core.initializer.datasources;
|
||||
|
||||
import javax.sql.DataSource;
|
||||
|
||||
public class DataSourcesCollector {
|
||||
|
||||
protected DataSource dsCache;
|
||||
protected DataSource dsStorage;
|
||||
|
||||
protected void notifyOnComplete() {
|
||||
if ((this.dsCache != null) && (this.dsStorage != null))
|
||||
DataSourcesInitializer.collectorCompleted();
|
||||
}
|
||||
|
||||
public void setDsCache(DataSource dsCache) {
|
||||
this.dsCache = dsCache;
|
||||
notifyOnComplete();
|
||||
}
|
||||
public void setDsStorage(DataSource dsStorage) {
|
||||
this.dsStorage = dsStorage;
|
||||
notifyOnComplete();
|
||||
}
|
||||
|
||||
}
|
@ -24,6 +24,7 @@ import org.osgi.framework.ServiceReference;
|
||||
import org.slf4j.Logger;
|
||||
import org.slf4j.LoggerFactory;
|
||||
import ru.entaxy.esb.platform.runtime.core.initializer.api.AbstractInitializer;
|
||||
import ru.entaxy.esb.platform.runtime.core.initializer.api.Initializer;
|
||||
import ru.entaxy.esb.platform.runtime.core.initializer.api.InitializerException;
|
||||
|
||||
import javax.sql.DataSource;
|
||||
@ -33,6 +34,13 @@ public class DataSourcesInitializer extends AbstractInitializer {
|
||||
|
||||
protected static final Logger log = LoggerFactory.getLogger(DataSourcesInitializer.class);
|
||||
|
||||
protected static Initializer.Callback callback = null;
|
||||
|
||||
public static void collectorCompleted() {
|
||||
if (DataSourcesInitializer.callback != null)
|
||||
DataSourcesInitializer.callback.inited(new DataSourcesInitializer());
|
||||
}
|
||||
|
||||
@Override
|
||||
public void init() throws InitializerException {
|
||||
log.info("Init in DataSourcesInitializer is called");
|
||||
@ -55,5 +63,8 @@ public class DataSourcesInitializer extends AbstractInitializer {
|
||||
log.info("ReInit in CoreInitializer is called");
|
||||
}
|
||||
|
||||
|
||||
@Override
|
||||
public void setCalllback(Callback callback) {
|
||||
DataSourcesInitializer.callback = callback;
|
||||
}
|
||||
}
|
||||
|
@ -1,6 +1,6 @@
|
||||
###
|
||||
# ~~~~~~licensing~~~~~~
|
||||
# karaf-features
|
||||
# datasources-initializer
|
||||
# ==========
|
||||
# Copyright (C) 2020 - 2021 EmDev LLC
|
||||
# ==========
|
||||
@ -17,8 +17,13 @@
|
||||
# limitations under the License.
|
||||
# ~~~~~~/licensing~~~~~~
|
||||
###
|
||||
# адрес soap-connector, будет формироваться host/cxf + passive.endpoint.address,
|
||||
# по умолчанию passive.endpoint.address=/exchange
|
||||
passive.endpoint.address=/exchange
|
||||
# включение кастомной валидации soap сообщений по wsdl
|
||||
passive.endpoint.validation=true
|
||||
dataSourceName=entaxy.esb.cache
|
||||
osgi.jdbc.driver.name=PostgreSQL JDBC Driver
|
||||
serverName=localhost
|
||||
portNumber=5432
|
||||
databaseName=cache
|
||||
user=entaxy
|
||||
password=entaxy
|
||||
pool=dbcp2
|
||||
xa=true
|
||||
jdbc.pool.maxTotal=100
|
@ -1,6 +1,6 @@
|
||||
###
|
||||
# ~~~~~~licensing~~~~~~
|
||||
# karaf-features
|
||||
# datasources-initializer
|
||||
# ==========
|
||||
# Copyright (C) 2020 - 2021 EmDev LLC
|
||||
# ==========
|
||||
@ -17,11 +17,13 @@
|
||||
# limitations under the License.
|
||||
# ~~~~~~/licensing~~~~~~
|
||||
###
|
||||
# адрес service-soap, будет формироваться host/cxf + passive.endpoint.address,
|
||||
# по умолчанию passive.endpoint.address=/service
|
||||
passive.endpoint.address=/service
|
||||
# включение кастомной валидации soap сообщений по wsdl
|
||||
passive.endpoint.validation=true
|
||||
# название системы, в которую будут отправляться сообщения, если не был выставлен destination
|
||||
passive.error.system.name=error
|
||||
|
||||
dataSourceName=entaxy.esb.storage
|
||||
osgi.jdbc.driver.name=PostgreSQL JDBC Driver
|
||||
serverName=localhost
|
||||
portNumber=5432
|
||||
databaseName=esb_entaxy
|
||||
user=entaxy
|
||||
password=entaxy
|
||||
pool=dbcp2
|
||||
xa=true
|
||||
jdbc.pool.maxTotal=100
|
@ -0,0 +1,40 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<!--
|
||||
~~~~~~licensing~~~~~~
|
||||
datasources-initializer
|
||||
==========
|
||||
Copyright (C) 2020 - 2021 EmDev LLC
|
||||
==========
|
||||
Licensed under the Apache License, Version 2.0 (the "License");
|
||||
you may not use this file except in compliance with the License.
|
||||
You may obtain a copy of the License at
|
||||
|
||||
http://www.apache.org/licenses/LICENSE-2.0
|
||||
|
||||
Unless required by applicable law or agreed to in writing, software
|
||||
distributed under the License is distributed on an "AS IS" BASIS,
|
||||
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||
See the License for the specific language governing permissions and
|
||||
limitations under the License.
|
||||
~~~~~~/licensing~~~~~~
|
||||
-->
|
||||
|
||||
<blueprint xmlns="http://www.osgi.org/xmlns/blueprint/v1.0.0"
|
||||
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
|
||||
xsi:schemaLocation="http://www.osgi.org/xmlns/blueprint/v1.0.0 https://www.osgi.org/xmlns/blueprint/v1.0.0/blueprint.xsd">
|
||||
|
||||
<reference id="dsCache" interface="javax.sql.DataSource" filter="(osgi.jndi.service.name=entaxy.esb.cache)"
|
||||
availability="mandatory"/>
|
||||
|
||||
<reference id="dsStorage" interface="javax.sql.DataSource" filter="(osgi.jndi.service.name=entaxy.esb.storage)"
|
||||
availability="mandatory"/>
|
||||
|
||||
<bean id="collector" class="ru.entaxy.esb.platform.runtime.core.initializer.datasources.DataSourcesCollector"
|
||||
activation="eager">
|
||||
<property name="dsCache" ref="dsCache" />
|
||||
<property name="dsStorage" ref="dsStorage" />
|
||||
</bean>
|
||||
|
||||
|
||||
|
||||
</blueprint>
|
@ -76,7 +76,7 @@ public class InitManager {
|
||||
|
||||
protected List<String> waiting = new ArrayList<>();
|
||||
|
||||
protected class InitializerMeta {
|
||||
protected class InitializerMeta implements Initializer.Callback {
|
||||
|
||||
String id;
|
||||
String className;
|
||||
@ -84,12 +84,16 @@ public class InitManager {
|
||||
|
||||
Bundle bundle;
|
||||
|
||||
List<InitializerMeta> dependsOn = new ArrayList<>();
|
||||
List<InitializerMeta> dependedBy = new ArrayList<>();
|
||||
Map<String, InitializerMeta> dependsOn = new HashMap<>();
|
||||
Map<String, InitializerMeta> dependedBy = new HashMap<>();
|
||||
|
||||
boolean executed = false;
|
||||
boolean toBeExecuted = true;
|
||||
|
||||
int retries = 1;
|
||||
|
||||
int interval = 1000;
|
||||
|
||||
public void load(String initializerData) {
|
||||
String[] data = initializerData.split("\\?");
|
||||
|
||||
@ -120,6 +124,21 @@ public class InitManager {
|
||||
String repeat = params.get(Initializer.INITIALIZER_QUERY_STRING_PARAM_REPEAT);
|
||||
this.repeat = "true".equals(repeat);
|
||||
|
||||
String retriesValue = params.get(Initializer.INITIALIZER_QUERY_STRING_PARAM_RETRIES);
|
||||
if (!Strings.isNullOrEmpty(retriesValue))
|
||||
try {
|
||||
this.retries = Integer.parseInt(retriesValue);
|
||||
} catch (NumberFormatException e) {
|
||||
log.error("Retries paramater [{}] is not an integer", retriesValue);
|
||||
}
|
||||
|
||||
String intervalValue = params.get(Initializer.INITIALIZER_QUERY_STRING_PARAM_INTERVAL);
|
||||
if (!Strings.isNullOrEmpty(intervalValue))
|
||||
try {
|
||||
this.interval = Integer.parseInt(intervalValue);
|
||||
} catch (NumberFormatException e) {
|
||||
log.error("Interval paramater [{}] is not an integer", intervalValue);
|
||||
}
|
||||
}
|
||||
|
||||
protected void addDependency(InitializerMeta meta) {
|
||||
@ -127,7 +146,7 @@ public class InitManager {
|
||||
if (meta.toBeExecuted && !meta.executed)
|
||||
synchronized (this.dependsOn) {
|
||||
meta.addDependent(this);
|
||||
this.dependsOn.add(meta);
|
||||
this.dependsOn.put(meta.id, meta);
|
||||
}
|
||||
}
|
||||
}
|
||||
@ -136,13 +155,15 @@ public class InitManager {
|
||||
this.className = other.className;
|
||||
this.bundle = other.bundle;
|
||||
this.repeat = other.repeat;
|
||||
for (InitializerMeta meta: other.dependsOn)
|
||||
this.retries = other.retries;
|
||||
this.interval = other.interval;
|
||||
for (InitializerMeta meta: other.dependsOn.values())
|
||||
this.addDependency(meta);
|
||||
}
|
||||
|
||||
public void addDependent(InitializerMeta meta) {
|
||||
synchronized (this.dependedBy) {
|
||||
this.dependedBy.add(meta);
|
||||
this.dependedBy.put(meta.id, meta);
|
||||
}
|
||||
}
|
||||
|
||||
@ -155,7 +176,7 @@ public class InitManager {
|
||||
}
|
||||
|
||||
public void notifyDependent() {
|
||||
for (InitializerMeta meta: this.dependedBy)
|
||||
for (InitializerMeta meta: this.dependedBy.values())
|
||||
meta.dependencyReady(this);
|
||||
}
|
||||
|
||||
@ -190,14 +211,39 @@ public class InitManager {
|
||||
|
||||
}
|
||||
|
||||
public void setCallback() {
|
||||
BundleWiring wiring = bundle.adapt(BundleWiring.class);
|
||||
ClassLoader cl = wiring.getClassLoader();
|
||||
Class<?> clazz;
|
||||
try {
|
||||
clazz = cl.loadClass(className);
|
||||
log.info("Loaded class {}", clazz.getName());
|
||||
Constructor<?> constructor = clazz.getConstructor();
|
||||
Initializer initializer = (Initializer) constructor.newInstance();
|
||||
initializer.setCalllback(this);
|
||||
} catch (ClassNotFoundException | NoSuchMethodException | SecurityException | InstantiationException | IllegalAccessException | IllegalArgumentException | InvocationTargetException e) {
|
||||
// TODO Auto-generated catch block
|
||||
e.printStackTrace();
|
||||
}
|
||||
}
|
||||
|
||||
public void dependencyReady(InitializerMeta meta) {
|
||||
synchronized (this.dependsOn) {
|
||||
this.dependsOn.remove(meta);
|
||||
this.dependsOn.remove(meta.id);
|
||||
if (!this.executed && this.canExecute())
|
||||
this.execute();
|
||||
}
|
||||
}
|
||||
|
||||
@Override
|
||||
public void inited(Initializer owner) {
|
||||
log.info("Initializer with id {} notified of successful init via callback");
|
||||
InitManager.this.updateById(id, true);
|
||||
this.executed = true;
|
||||
this.notifyDependent();
|
||||
owner.setCalllback(null);
|
||||
}
|
||||
|
||||
};
|
||||
|
||||
|
||||
@ -268,7 +314,7 @@ public class InitManager {
|
||||
}
|
||||
|
||||
if (!meta.canExecute()) {
|
||||
String dependsOn = meta.dependsOn.stream().map((m)->m.id).collect(Collectors.joining(","));
|
||||
String dependsOn = meta.dependsOn.values().stream().map((m)->m.id).collect(Collectors.joining(","));
|
||||
log.info("Initializer with id {} is waiting for dependencies: {}", meta.id, dependsOn);
|
||||
|
||||
/*
|
||||
@ -276,8 +322,25 @@ public class InitManager {
|
||||
*/
|
||||
return;
|
||||
}
|
||||
int retriesCount = meta.retries;
|
||||
boolean result = false;
|
||||
while (!result && (retriesCount > 0)) {
|
||||
log.info("Executing initializer with id {}: try {} of {}", meta.id, meta.retries-retriesCount+1, meta.retries);
|
||||
retriesCount--;
|
||||
result = meta.execute();
|
||||
if ((retriesCount > 0) && !result)
|
||||
try {
|
||||
log.info("Executing initializer with id {}: sleeping for {}", meta.id, meta.interval);
|
||||
Thread.sleep(meta.interval);
|
||||
} catch (InterruptedException e) {
|
||||
log.error("Failed sleep for thread {} on initializer {}", Thread.currentThread().getId(), meta.id);
|
||||
e.printStackTrace();
|
||||
}
|
||||
}
|
||||
|
||||
meta.execute();
|
||||
// last try
|
||||
if (!result)
|
||||
meta.setCallback();
|
||||
}
|
||||
|
||||
/* protected void execute(InitializerMeta meta) {
|
||||
|
@ -52,4 +52,8 @@ public abstract class AbstractInitializer implements Initializer {
|
||||
return this.initializerId;
|
||||
}
|
||||
|
||||
@Override
|
||||
public void setCalllback(Callback callback) {
|
||||
// Ignore it by default
|
||||
}
|
||||
}
|
||||
|
@ -23,6 +23,10 @@ import org.osgi.framework.BundleContext;
|
||||
|
||||
public interface Initializer {
|
||||
|
||||
public static interface Callback {
|
||||
public void inited(Initializer owner);
|
||||
}
|
||||
|
||||
public static final String INITIALIZER_CLASS_HEADER = "Entaxy-Initializer-Class";
|
||||
|
||||
|
||||
@ -38,6 +42,8 @@ public interface Initializer {
|
||||
public static final String INITIALIZER_QUERY_STRING_PARAM_ID = "id";
|
||||
public static final String INITIALIZER_QUERY_STRING_PARAM_DEPENDS_ON = "depends-on";
|
||||
public static final String INITIALIZER_QUERY_STRING_PARAM_REPEAT = "repeat";
|
||||
public static final String INITIALIZER_QUERY_STRING_PARAM_RETRIES = "retries";
|
||||
public static final String INITIALIZER_QUERY_STRING_PARAM_INTERVAL = "interval";
|
||||
|
||||
public void init() throws InitializerException;
|
||||
|
||||
@ -54,4 +60,6 @@ public interface Initializer {
|
||||
|
||||
public void setInitializerId(String id);
|
||||
public String getInitializerId();
|
||||
|
||||
public void setCalllback(Initializer.Callback callback);
|
||||
}
|
||||
|
@ -26,14 +26,14 @@
|
||||
</properties>
|
||||
|
||||
<dependencies>
|
||||
<dependency>
|
||||
<!-- dependency>
|
||||
<groupId>com.microsoft.sqlserver</groupId>
|
||||
<artifactId>mssql-jdbc</artifactId>
|
||||
</dependency>
|
||||
<dependency>
|
||||
<groupId>org.postgresql</groupId>
|
||||
<artifactId>postgresql</artifactId>
|
||||
</dependency>
|
||||
</dependency -->
|
||||
<dependency>
|
||||
<groupId>org.liquibase</groupId>
|
||||
<artifactId>liquibase-core</artifactId>
|
||||
|
@ -20,30 +20,74 @@
|
||||
-->
|
||||
|
||||
|
||||
<features name="ru.entaxy.esb.platform.runtime.core-${project.version}"
|
||||
xmlns="http://karaf.apache.org/xmlns/features/v1.6.0">
|
||||
<features name="entaxy-platform-core-${project.version}"
|
||||
xmlns="http://karaf.apache.org/xmlns/features/v1.3.0"
|
||||
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
|
||||
xsi:schemaLocation="http://karaf.apache.org/xmlns/features/v1.3.0 http://karaf.apache.org/xmlns/features/v1.3.0">
|
||||
|
||||
<feature name="core" version="${project.version}">
|
||||
<feature version="${project.version}">management</feature>
|
||||
<feature version="${project.version}">initializer</feature>
|
||||
<repository>mvn:ru.entaxy.esb.platform.runtime/base/${project.version}/xml/features</repository>
|
||||
<repository>mvn:ru.entaxy.esb.distribution/entaxy-karaf-features/${project.version}/xml/features</repository>
|
||||
|
||||
<feature name="entaxy-platform-core" version="${project.version}">
|
||||
<feature version="${project.version}" prerequisite="true">entaxy-platform-base</feature>
|
||||
<feature version="${project.version}">entaxy-initializer</feature>
|
||||
<feature version="${project.version}">entaxy-management</feature>
|
||||
</feature>
|
||||
|
||||
<feature name="entaxy-initializer" version="${project.version}">
|
||||
<bundle>mvn:ru.entaxy.esb.platform.runtime.core.initializer/init-manager/${project.version}</bundle>
|
||||
<feature version="${project.version}">entaxy-datasources-initializer</feature>
|
||||
<feature version="${project.version}">entaxy-core-initializer</feature>
|
||||
<feature version="${project.version}">entaxy-connection-initializer</feature>
|
||||
<feature version="${project.version}">entaxy-storage-initializer</feature>
|
||||
</feature>
|
||||
|
||||
<feature name="management" version="${project.version}">
|
||||
<feature name="entaxy-datasources-initializer" version="${project.version}" >
|
||||
<configfile finalname="${karaf.etc}/org.ops4j.datasource-entaxy.esb.cache.cfg" override="false">
|
||||
mvn:ru.entaxy.esb.platform.runtime.core.initializer/datasources-initializer/${project.version}/cfg/datasource-cache
|
||||
</configfile>
|
||||
<configfile finalname="${karaf.etc}/org.ops4j.datasource-entaxy.esb.storage.cfg" override="false">
|
||||
mvn:ru.entaxy.esb.platform.runtime.core.initializer/datasources-initializer/${project.version}/cfg/datasource-storage
|
||||
</configfile>
|
||||
<capability>
|
||||
osgi.service;effective:=active;objectClass=javax.sql.DataSource;osgi.jndi.service.name=entaxy.esb.cache;
|
||||
</capability>
|
||||
<capability>
|
||||
osgi.service;effective:=active;objectClass=javax.sql.DataSource;osgi.jndi.service.name=entaxy.esb.storage;
|
||||
</capability>
|
||||
|
||||
<!-- why do we need the following? -->
|
||||
<!--
|
||||
|
||||
<capability>
|
||||
osgi.service;objectClass=javax.sql.DataSource;osgi.jndi.service.name=entaxy.esb.cache-connector;
|
||||
</capability>
|
||||
|
||||
|
||||
-->
|
||||
<bundle>mvn:ru.entaxy.esb.platform.runtime.core.initializer/datasources-initializer/${project.version}</bundle>
|
||||
</feature>
|
||||
|
||||
<feature name="entaxy-core-initializer" version="${project.version}" >
|
||||
<bundle>mvn:ru.entaxy.esb.platform.runtime.core.initializer/core-initializer/${project.version}</bundle>
|
||||
</feature>
|
||||
|
||||
<feature name="entaxy-connection-initializer" version="${project.version}">
|
||||
<configfile finalname="${karaf.etc}/init/entaxy-platform-connections.json" override="false">
|
||||
mvn:ru.entaxy.esb.platform.runtime.core.initializer/connection-initializer/${project.version}/json/init-config
|
||||
</configfile>
|
||||
<bundle>mvn:ru.entaxy.esb.platform.runtime.core.initializer/connection-initializer/${project.version}</bundle>
|
||||
</feature>
|
||||
|
||||
<feature name="entaxy-storage-initializer" version="${project.version}">
|
||||
<feature version="${project.version}" prerequisite="true">entaxy-karaf-liquibase-support</feature>
|
||||
<bundle>mvn:ru.entaxy.esb.platform.runtime.core.initializer.storage.initializer/liquibase-updater/${project.version}</bundle>
|
||||
<bundle>mvn:ru.entaxy.esb.platform.runtime.core.initializer.storage.initializer/storage-esb_entaxy/${project.version}</bundle>
|
||||
<bundle>mvn:ru.entaxy.esb.platform.runtime.core.initializer.storage.initializer/storage-cache/${project.version}</bundle>
|
||||
</feature>
|
||||
|
||||
<feature name="entaxy-management" version="${project.version}">
|
||||
<bundle>mvn:ru.entaxy.esb.platform.runtime.core.management/connection-manager/${project.version}</bundle>
|
||||
</feature>
|
||||
|
||||
<feature name="initializer" version="${project.version}">
|
||||
<feature version="${project.version}">storage-initializer</feature>
|
||||
<bundle>mvn:ru.entaxy.esb.platform.runtime.core.initializer/init-manager/${project.version}</bundle>
|
||||
<bundle>mvn:ru.entaxy.esb.platform.runtime.core.initializer/core-initializer/${project.version}</bundle>
|
||||
<bundle>mvn:ru.entaxy.esb.platform.runtime.core.initializer/datasources-initializer/${project.version}</bundle>
|
||||
<bundle>mvn:ru.entaxy.esb.platform.runtime.core.initializer/connection-initializer/${project.version}</bundle>
|
||||
</feature>
|
||||
|
||||
<feature name="storage-initializer" version="${project.version}">
|
||||
<bundle>mvn:ru.entaxy.esb.platform.runtime.core.initializer.storage.initializer/liquibase-updater/${project.version}</bundle>
|
||||
<bundle>mvn:ru.entaxy.esb.platform.runtime.core.initializer.storage.initializer/storage-esb_entaxy/${project.version}</bundle>
|
||||
<bundle>mvn:ru.entaxy.esb.platform.runtime.core.initializer.storage.initializer/storage-cache/${project.version}</bundle>
|
||||
</feature>
|
||||
|
||||
</features>
|
||||
</features>
|
39
platform/runtime/modules/src/main/features/features.xml
Normal file
39
platform/runtime/modules/src/main/features/features.xml
Normal file
@ -0,0 +1,39 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<!--
|
||||
~~~~~~licensing~~~~~~
|
||||
modules
|
||||
==========
|
||||
Copyright (C) 2020 - 2021 EmDev LLC
|
||||
==========
|
||||
Licensed under the Apache License, Version 2.0 (the "License");
|
||||
you may not use this file except in compliance with the License.
|
||||
You may obtain a copy of the License at
|
||||
|
||||
http://www.apache.org/licenses/LICENSE-2.0
|
||||
|
||||
Unless required by applicable law or agreed to in writing, software
|
||||
distributed under the License is distributed on an "AS IS" BASIS,
|
||||
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||
See the License for the specific language governing permissions and
|
||||
limitations under the License.
|
||||
~~~~~~/licensing~~~~~~
|
||||
-->
|
||||
|
||||
|
||||
<features name="entaxy-platform-modules-${project.version}"
|
||||
xmlns="http://karaf.apache.org/xmlns/features/v1.3.0"
|
||||
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
|
||||
xsi:schemaLocation="http://karaf.apache.org/xmlns/features/v1.3.0 http://karaf.apache.org/xmlns/features/v1.3.0">
|
||||
|
||||
<repository>mvn:ru.entaxy.esb.platform.runtime/base/${project.version}/xml/features</repository>
|
||||
<repository>mvn:ru.entaxy.esb.platform.runtime/core/${project.version}/xml/features</repository>
|
||||
<repository>mvn:ru.entaxy.esb.platform.runtime.modules/uniform-service/${project.version}/xml/features</repository>
|
||||
|
||||
<feature name="entaxy-platform-modules" version="${project.version}">
|
||||
<feature version="${project.version}" prerequisite="true">entaxy-platform-base</feature>
|
||||
<feature version="${project.version}" prerequisite="true">entaxy-platform-core</feature>
|
||||
|
||||
<feature version="${project.version}">entaxy-uniform-service</feature>
|
||||
</feature>
|
||||
|
||||
</features>
|
@ -73,7 +73,7 @@
|
||||
<bean id="headersConverter" class="ru.entaxy.esb.system.common.util.HeadersConverter">
|
||||
<property name="namespace" value="http://www.entaxy.ru/ExchangeTypes/1.0"/>
|
||||
<property name="customHeaders" value="NTX_CustomHeaders"/>
|
||||
<property name="customHeaderPrefix" value="NTX_1C_EXCHANGE_CustomHeader"/>
|
||||
<property name="customHeaderPrefix" value="NTX_UNIFORM_EXCHANGE_CustomHeader"/>
|
||||
</bean>
|
||||
|
||||
<bean id="headerMergeAggregator" class="ru.entaxy.esb.system.common.aggregation.HeaderMergeAggregatorImpl"/>
|
||||
@ -250,7 +250,7 @@
|
||||
<#else>
|
||||
<route id="uniform-service-in-connector">
|
||||
<from uri="direct-vm:uniform-service-in-connector-[=systemName]"/>
|
||||
<log message="Start 1c exchange connector ${headers.operationName}" loggingLevel="DEBUG"/>
|
||||
<log message="Start uniform exchange connector ${headers.operationName}" loggingLevel="DEBUG"/>
|
||||
<setHeader name="ENTAXY_ConnectorType">
|
||||
<simple>uniform-service</simple>
|
||||
</setHeader>
|
||||
@ -280,11 +280,11 @@
|
||||
<route id="send-packets">
|
||||
<from uri="direct:send-packets"/>
|
||||
|
||||
<setHeader name="NTX_1C_EXCHANGE_PacketCount">
|
||||
<setHeader name="NTX_UNIFORM_EXCHANGE_PacketCount">
|
||||
<xpath resultType="Integer">count(/soap-type:packets/soap-type:packet)</xpath>
|
||||
</setHeader>
|
||||
<when>
|
||||
<simple>${headers.NTX_1C_EXCHANGE_PacketCount} > 1</simple>
|
||||
<simple>${headers.NTX_UNIFORM_EXCHANGE_PacketCount} > 1</simple>
|
||||
<throwException exceptionType="java.lang.UnsupportedOperationException"
|
||||
message="Not supported more then 1 packet"/>
|
||||
</when>
|
||||
|
@ -69,7 +69,7 @@
|
||||
<bean id="headersConverter" class="ru.entaxy.esb.system.common.util.HeadersConverter">
|
||||
<property name="namespace" value="http://www.entaxy.ru/ExchangeTypes/1.0"/>
|
||||
<property name="customHeaders" value="NTX_CustomHeaders"/>
|
||||
<property name="customHeaderPrefix" value="NTX_1C_EXCHANGE_CustomHeader"/>
|
||||
<property name="customHeaderPrefix" value="NTX_UNIFORM_EXCHANGE_CustomHeader"/>
|
||||
</bean>
|
||||
|
||||
<camelContext id="uniform-service-out-connector-[=systemName]-context"
|
||||
|
@ -6,7 +6,7 @@
|
||||
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
|
||||
xsi:schemaLocation="http://karaf.apache.org/xmlns/features/v1.3.0 http://karaf.apache.org/xmlns/features/v1.3.0">
|
||||
|
||||
<repository>mvn:ru.entaxy.esb/karaf-features/${project.version}/xml/features</repository>
|
||||
<!-- repository>mvn:ru.entaxy.esb/karaf-features/${project.version}/xml/features</repository -->
|
||||
|
||||
<feature name="common-soap" version="${project.version}">
|
||||
<configfile finalname="${karaf.etc}/uniform.service.support.cfg" override="false">
|
||||
@ -16,8 +16,6 @@
|
||||
mvn:ru.entaxy.esb.platform.runtime.modules/uniform-service/${project.version}/cfg/uniform.service.ignite
|
||||
</configfile>
|
||||
|
||||
<feature version="${project.version}">entaxy-common</feature>
|
||||
|
||||
<bundle>mvn:ru.entaxy.esb.platform.runtime.modules.uniform.service/support/${project.version}</bundle>
|
||||
<bundle>mvn:ru.entaxy.esb.platform.runtime.modules.uniform.service/connector/${project.version}</bundle>
|
||||
<capability>
|
||||
|
@ -1,201 +0,0 @@
|
||||
Apache License
|
||||
Version 2.0, January 2004
|
||||
http://www.apache.org/licenses/
|
||||
|
||||
TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION
|
||||
|
||||
1. Definitions.
|
||||
|
||||
"License" shall mean the terms and conditions for use, reproduction,
|
||||
and distribution as defined by Sections 1 through 9 of this document.
|
||||
|
||||
"Licensor" shall mean the copyright owner or entity authorized by
|
||||
the copyright owner that is granting the License.
|
||||
|
||||
"Legal Entity" shall mean the union of the acting entity and all
|
||||
other entities that control, are controlled by, or are under common
|
||||
control with that entity. For the purposes of this definition,
|
||||
"control" means (i) the power, direct or indirect, to cause the
|
||||
direction or management of such entity, whether by contract or
|
||||
otherwise, or (ii) ownership of fifty percent (50%) or more of the
|
||||
outstanding shares, or (iii) beneficial ownership of such entity.
|
||||
|
||||
"You" (or "Your") shall mean an individual or Legal Entity
|
||||
exercising permissions granted by this License.
|
||||
|
||||
"Source" form shall mean the preferred form for making modifications,
|
||||
including but not limited to software source code, documentation
|
||||
source, and configuration files.
|
||||
|
||||
"Object" form shall mean any form resulting from mechanical
|
||||
transformation or translation of a Source form, including but
|
||||
not limited to compiled object code, generated documentation,
|
||||
and conversions to other media types.
|
||||
|
||||
"Work" shall mean the work of authorship, whether in Source or
|
||||
Object form, made available under the License, as indicated by a
|
||||
copyright notice that is included in or attached to the work
|
||||
(an example is provided in the Appendix below).
|
||||
|
||||
"Derivative Works" shall mean any work, whether in Source or Object
|
||||
form, that is based on (or derived from) the Work and for which the
|
||||
editorial revisions, annotations, elaborations, or other modifications
|
||||
represent, as a whole, an original work of authorship. For the purposes
|
||||
of this License, Derivative Works shall not include works that remain
|
||||
separable from, or merely link (or bind by name) to the interfaces of,
|
||||
the Work and Derivative Works thereof.
|
||||
|
||||
"Contribution" shall mean any work of authorship, including
|
||||
the original version of the Work and any modifications or additions
|
||||
to that Work or Derivative Works thereof, that is intentionally
|
||||
submitted to Licensor for inclusion in the Work by the copyright owner
|
||||
or by an individual or Legal Entity authorized to submit on behalf of
|
||||
the copyright owner. For the purposes of this definition, "submitted"
|
||||
means any form of electronic, verbal, or written communication sent
|
||||
to the Licensor or its representatives, including but not limited to
|
||||
communication on electronic mailing lists, source code control systems,
|
||||
and issue tracking systems that are managed by, or on behalf of, the
|
||||
Licensor for the purpose of discussing and improving the Work, but
|
||||
excluding communication that is conspicuously marked or otherwise
|
||||
designated in writing by the copyright owner as "Not a Contribution."
|
||||
|
||||
"Contributor" shall mean Licensor and any individual or Legal Entity
|
||||
on behalf of whom a Contribution has been received by Licensor and
|
||||
subsequently incorporated within the Work.
|
||||
|
||||
2. Grant of Copyright License. Subject to the terms and conditions of
|
||||
this License, each Contributor hereby grants to You a perpetual,
|
||||
worldwide, non-exclusive, no-charge, royalty-free, irrevocable
|
||||
copyright license to reproduce, prepare Derivative Works of,
|
||||
publicly display, publicly perform, sublicense, and distribute the
|
||||
Work and such Derivative Works in Source or Object form.
|
||||
|
||||
3. Grant of Patent License. Subject to the terms and conditions of
|
||||
this License, each Contributor hereby grants to You a perpetual,
|
||||
worldwide, non-exclusive, no-charge, royalty-free, irrevocable
|
||||
(except as stated in this section) patent license to make, have made,
|
||||
use, offer to sell, sell, import, and otherwise transfer the Work,
|
||||
where such license applies only to those patent claims licensable
|
||||
by such Contributor that are necessarily infringed by their
|
||||
Contribution(s) alone or by combination of their Contribution(s)
|
||||
with the Work to which such Contribution(s) was submitted. If You
|
||||
institute patent litigation against any entity (including a
|
||||
cross-claim or counterclaim in a lawsuit) alleging that the Work
|
||||
or a Contribution incorporated within the Work constitutes direct
|
||||
or contributory patent infringement, then any patent licenses
|
||||
granted to You under this License for that Work shall terminate
|
||||
as of the date such litigation is filed.
|
||||
|
||||
4. Redistribution. You may reproduce and distribute copies of the
|
||||
Work or Derivative Works thereof in any medium, with or without
|
||||
modifications, and in Source or Object form, provided that You
|
||||
meet the following conditions:
|
||||
|
||||
(a) You must give any other recipients of the Work or
|
||||
Derivative Works a copy of this License; and
|
||||
|
||||
(b) You must cause any modified files to carry prominent notices
|
||||
stating that You changed the files; and
|
||||
|
||||
(c) You must retain, in the Source form of any Derivative Works
|
||||
that You distribute, all copyright, patent, trademark, and
|
||||
attribution notices from the Source form of the Work,
|
||||
excluding those notices that do not pertain to any part of
|
||||
the Derivative Works; and
|
||||
|
||||
(d) If the Work includes a "NOTICE" text file as part of its
|
||||
distribution, then any Derivative Works that You distribute must
|
||||
include a readable copy of the attribution notices contained
|
||||
within such NOTICE file, excluding those notices that do not
|
||||
pertain to any part of the Derivative Works, in at least one
|
||||
of the following places: within a NOTICE text file distributed
|
||||
as part of the Derivative Works; within the Source form or
|
||||
documentation, if provided along with the Derivative Works; or,
|
||||
within a display generated by the Derivative Works, if and
|
||||
wherever such third-party notices normally appear. The contents
|
||||
of the NOTICE file are for informational purposes only and
|
||||
do not modify the License. You may add Your own attribution
|
||||
notices within Derivative Works that You distribute, alongside
|
||||
or as an addendum to the NOTICE text from the Work, provided
|
||||
that such additional attribution notices cannot be construed
|
||||
as modifying the License.
|
||||
|
||||
You may add Your own copyright statement to Your modifications and
|
||||
may provide additional or different license terms and conditions
|
||||
for use, reproduction, or distribution of Your modifications, or
|
||||
for any such Derivative Works as a whole, provided Your use,
|
||||
reproduction, and distribution of the Work otherwise complies with
|
||||
the conditions stated in this License.
|
||||
|
||||
5. Submission of Contributions. Unless You explicitly state otherwise,
|
||||
any Contribution intentionally submitted for inclusion in the Work
|
||||
by You to the Licensor shall be under the terms and conditions of
|
||||
this License, without any additional terms or conditions.
|
||||
Notwithstanding the above, nothing herein shall supersede or modify
|
||||
the terms of any separate license agreement you may have executed
|
||||
with Licensor regarding such Contributions.
|
||||
|
||||
6. Trademarks. This License does not grant permission to use the trade
|
||||
names, trademarks, service marks, or product names of the Licensor,
|
||||
except as required for reasonable and customary use in describing the
|
||||
origin of the Work and reproducing the content of the NOTICE file.
|
||||
|
||||
7. Disclaimer of Warranty. Unless required by applicable law or
|
||||
agreed to in writing, Licensor provides the Work (and each
|
||||
Contributor provides its Contributions) on an "AS IS" BASIS,
|
||||
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or
|
||||
implied, including, without limitation, any warranties or conditions
|
||||
of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A
|
||||
PARTICULAR PURPOSE. You are solely responsible for determining the
|
||||
appropriateness of using or redistributing the Work and assume any
|
||||
risks associated with Your exercise of permissions under this License.
|
||||
|
||||
8. Limitation of Liability. In no event and under no legal theory,
|
||||
whether in tort (including negligence), contract, or otherwise,
|
||||
unless required by applicable law (such as deliberate and grossly
|
||||
negligent acts) or agreed to in writing, shall any Contributor be
|
||||
liable to You for damages, including any direct, indirect, special,
|
||||
incidental, or consequential damages of any character arising as a
|
||||
result of this License or out of the use or inability to use the
|
||||
Work (including but not limited to damages for loss of goodwill,
|
||||
work stoppage, computer failure or malfunction, or any and all
|
||||
other commercial damages or losses), even if such Contributor
|
||||
has been advised of the possibility of such damages.
|
||||
|
||||
9. Accepting Warranty or Additional Liability. While redistributing
|
||||
the Work or Derivative Works thereof, You may choose to offer,
|
||||
and charge a fee for, acceptance of support, warranty, indemnity,
|
||||
or other liability obligations and/or rights consistent with this
|
||||
License. However, in accepting such obligations, You may act only
|
||||
on Your own behalf and on Your sole responsibility, not on behalf
|
||||
of any other Contributor, and only if You agree to indemnify,
|
||||
defend, and hold each Contributor harmless for any liability
|
||||
incurred by, or claims asserted against, such Contributor by reason
|
||||
of your accepting any such warranty or additional liability.
|
||||
|
||||
END OF TERMS AND CONDITIONS
|
||||
|
||||
APPENDIX: How to apply the Apache License to your work.
|
||||
|
||||
To apply the Apache License to your work, attach the following
|
||||
boilerplate notice, with the fields enclosed by brackets "[]"
|
||||
replaced with your own identifying information. (Don't include
|
||||
the brackets!) The text should be enclosed in the appropriate
|
||||
comment syntax for the file format. We also recommend that a
|
||||
file or class name and description of purpose be included on the
|
||||
same "printed page" as the copyright notice for easier
|
||||
identification within third-party archives.
|
||||
|
||||
Copyright [yyyy] [name of copyright owner]
|
||||
|
||||
Licensed under the Apache License, Version 2.0 (the "License");
|
||||
you may not use this file except in compliance with the License.
|
||||
You may obtain a copy of the License at
|
||||
|
||||
http://www.apache.org/licenses/LICENSE-2.0
|
||||
|
||||
Unless required by applicable law or agreed to in writing, software
|
||||
distributed under the License is distributed on an "AS IS" BASIS,
|
||||
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||
See the License for the specific language governing permissions and
|
||||
limitations under the License.
|
@ -5,7 +5,7 @@
|
||||
<parent>
|
||||
<groupId>ru.entaxy.esb.platform.runtime.modules</groupId>
|
||||
<artifactId>uniform-service</artifactId>
|
||||
<version>1.8.0</version>
|
||||
<version>1.8</version>
|
||||
</parent>
|
||||
<modelVersion>4.0.0</modelVersion>
|
||||
|
||||
|
@ -19,17 +19,452 @@
|
||||
~~~~~~/licensing~~~~~~
|
||||
-->
|
||||
|
||||
|
||||
<features name="entaxy-karaf-features-${project.version}"
|
||||
<features name="entaxy-platform-${project.version}"
|
||||
xmlns="http://karaf.apache.org/xmlns/features/v1.3.0"
|
||||
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
|
||||
xsi:schemaLocation="http://karaf.apache.org/xmlns/features/v1.3.0 http://karaf.apache.org/xmlns/features/v1.3.0">
|
||||
|
||||
<repository>mvn:org.apache.camel.karaf/apache-camel/${camel.version}/xml/features</repository>
|
||||
<repository>mvn:org.apache.activemq/artemis-features/${activemq.version}/xml/features</repository>
|
||||
<repository>mvn:org.hibernate/hibernate-osgi/${hibernate.version}/xml/karaf</repository>
|
||||
<repository>mvn:org.apache.karaf.cellar/apache-karaf-cellar/${cellar.version}/xml/features</repository>
|
||||
<repository>mvn:org.apache.ignite/ignite-osgi-karaf/${ignite.version}/xml/features</repository>
|
||||
<repository>mvn:org.apache.karaf.features/enterprise/${karaf.version}/xml/features</repository>
|
||||
<repository>mvn:org.ops4j.pax.jdbc/pax-jdbc-features/1.4.4/xml/features</repository>
|
||||
<repository>mvn:org.apache.karaf.features/spring/4.2.9/xml/features</repository>
|
||||
|
||||
<!-- repository>mvn:ru.entaxy.esb/karaf-features/${project.version}/xml/features</repository -->
|
||||
|
||||
<repository>mvn:ru.entaxy.esb.distribution/entaxy-karaf-features/${project.version}/xml/features</repository>
|
||||
<repository>mvn:ru.entaxy.esb.distribution/entaxy-karaf-kar/${project.version}/xml/features</repository>
|
||||
|
||||
<repository>mvn:ru.entaxy.esb.platform.runtime/base/${project.version}/xml/features</repository>
|
||||
<repository>mvn:ru.entaxy.esb.platform.runtime/core/${project.version}/xml/features</repository>
|
||||
<repository>mvn:ru.entaxy.esb.platform.runtime/modules/${project.version}/xml/features</repository>
|
||||
|
||||
|
||||
<feature name="entaxy-platform" version="${project.version}">
|
||||
<configfile finalname="${karaf.etc}/branding.properties" override="true">
|
||||
mvn:ru.entaxy.esb.platform.runtime.base/branding/${project.version}/properties/branding
|
||||
|
||||
<!-- Wait for all the startup features to be installed -->
|
||||
<feature prerequisite="true">entaxy-karaf-configuration</feature>
|
||||
<feature prerequisite="true">entaxy-karaf-basic</feature>
|
||||
<feature prerequisite="true">entaxy-karaf-runtime</feature>
|
||||
|
||||
|
||||
<!-- feature prerequisite="true">maven-support</feature -->
|
||||
|
||||
<!-- bundle start-level="5" dependency="true">mvn:org.ops4j.pax.logging/pax-logging-api/1.11.6</bundle -->
|
||||
|
||||
<!-- then be sure all entaxy features needed are installed -->
|
||||
|
||||
<feature>entaxy-karaf</feature>
|
||||
<feature>entaxy-legacy</feature>
|
||||
|
||||
|
||||
<feature version="${project.version}">entaxy-platform-components</feature>
|
||||
<feature version="${project.version}">enatxy-platform-modules-components</feature>
|
||||
|
||||
</feature>
|
||||
|
||||
<feature name="entaxy-karaf-basic" version="${project.version}">
|
||||
<feature prerequisite="true">entaxy-karaf-configuration</feature>
|
||||
<feature>wrap</feature>
|
||||
<!-- feature prerequisite="true">classpath</feature -->
|
||||
<feature>shell</feature>
|
||||
<feature>feature</feature>
|
||||
<feature>jaas</feature>
|
||||
<feature>ssh</feature>
|
||||
<feature>management</feature>
|
||||
<feature>bundle</feature>
|
||||
<feature>config</feature>
|
||||
<feature>deployer</feature>
|
||||
<feature>diagnostic</feature>
|
||||
<feature>feature</feature>
|
||||
<feature>instance</feature>
|
||||
<feature>kar</feature>
|
||||
<feature>log</feature>
|
||||
<feature>package</feature>
|
||||
<feature>service</feature>
|
||||
<feature>system</feature>
|
||||
</feature>
|
||||
|
||||
<feature name="entaxy-karaf-runtime" version="${project.version}">
|
||||
<feature prerequisite="true">entaxy-karaf-configuration</feature>
|
||||
<feature prerequisite="true">entaxy-karaf-basic</feature>
|
||||
<feature>scheduler</feature>
|
||||
<feature>eventadmin</feature>
|
||||
<feature>aries-blueprint</feature>
|
||||
|
||||
<feature>cellar</feature>
|
||||
<feature>cellar-eventadmin</feature>
|
||||
<feature>cxf</feature>
|
||||
|
||||
|
||||
<feature>camel</feature>
|
||||
<feature>camel-blueprint</feature>
|
||||
<feature>camel-jaxb</feature>
|
||||
<feature>camel-cxf</feature>
|
||||
<feature>camel-amqp</feature>
|
||||
<feature>camel-core</feature>
|
||||
<feature>camel-http</feature>
|
||||
|
||||
<feature>hibernate</feature>
|
||||
<feature>jdbc</feature>
|
||||
<feature>pax-jdbc-pool-dbcp2</feature>
|
||||
<feature>jndi</feature>
|
||||
|
||||
<feature>camel-eventadmin</feature>
|
||||
<feature>camel-quartz</feature>
|
||||
<feature>camel-jsonpath</feature>
|
||||
<feature>camel-gson</feature>
|
||||
<feature>camel-ognl</feature>
|
||||
|
||||
<feature>entaxy-karaf-commons-support</feature>
|
||||
<feature>entaxy-karaf-liquibase-support</feature>
|
||||
|
||||
<feature>entaxy-karaf-artemis-jms-support</feature>
|
||||
<feature>artemis-jms-client</feature>
|
||||
<feature>camel-jms</feature>
|
||||
|
||||
<!-- feature version="1.4.4">pax-jdbc-spec</feature>
|
||||
<feature version="1.4.4">pax-jdbc</feature>
|
||||
<feature version="1.4.4">pax-jdbc-config</feature>
|
||||
|
||||
<feature version="4.2.9">jdbc</feature -->
|
||||
|
||||
<feature version="${spring.version}">spring</feature>
|
||||
<feature version="${spring.version}">spring-tx</feature>
|
||||
<feature version="${spring.version}">spring-jdbc</feature>
|
||||
<feature version="[2,3)">jpa</feature>
|
||||
<feature>entaxy-karaf-db-support</feature>
|
||||
|
||||
<feature>ignite-core</feature>
|
||||
<feature>entaxy-karaf-ignite-support</feature>
|
||||
<feature>camel-ignite</feature>
|
||||
<feature>camel-sql</feature>
|
||||
|
||||
<feature>entaxy-karaf-jaxb-support</feature>
|
||||
|
||||
<!-- feature>cave-repository</feature -->
|
||||
|
||||
<feature>wrapper</feature>
|
||||
<feature>shell-compat</feature>
|
||||
<feature>camel-jpa</feature>
|
||||
<feature>camel-jaxb</feature>
|
||||
<feature>camel-base64</feature>
|
||||
<feature>camel-zip-deflater</feature>
|
||||
<feature>camel-zipfile</feature>
|
||||
</feature>
|
||||
|
||||
<feature name="entaxy-platform-components" version="${project.version}">
|
||||
<feature prerequisite="true">entaxy-karaf-basic</feature>
|
||||
<feature prerequisite="true">entaxy-karaf-runtime</feature>
|
||||
<feature prerequisite="true">entaxy-karaf</feature>
|
||||
<feature prerequisite="true">entaxy-legacy</feature>
|
||||
<feature prerequisite="true">karaf-camel-common</feature>
|
||||
<feature prerequisite="true">entaxy-legacy-system</feature>
|
||||
<feature prerequisite="true">entaxy-legacy-blueprint-generator</feature>
|
||||
<!-- then install platform base & core -->
|
||||
<feature version="${project.version}">entaxy-platform-base</feature>
|
||||
<feature version="${project.version}">entaxy-platform-core</feature>
|
||||
<!-- prepare for modules installation -->
|
||||
<feature version="${project.version}">entaxy-legacy-for-modules</feature>
|
||||
</feature>
|
||||
|
||||
<feature name="enatxy-platform-modules-components" version="${project.version}">
|
||||
<feature prerequisite="true">entaxy-platform-base</feature>
|
||||
<feature prerequisite="true">entaxy-platform-core</feature>
|
||||
<feature prerequisite="true">entaxy-legacy-for-modules</feature>
|
||||
<!-- install platform modules -->
|
||||
<feature version="${project.version}">entaxy-platform-modules</feature>
|
||||
</feature>
|
||||
|
||||
<!-- after the Cave repositories implemented move to entaxy-karaf -->
|
||||
<!-- feature name="maven-support" version="${project.version}">
|
||||
<bundle>mvn:org.eclipse.aether/aether-transport-http/1.1.0</bundle>
|
||||
<bundle>mvn:org.eclipse.aether/aether-transport-file/1.1.0</bundle>
|
||||
<bundle>mvn:org.eclipse.aether/aether-connector-basic/1.1.0</bundle>
|
||||
<bundle>mvn:org.eclipse.aether/aether-api/${aether.version}</bundle>
|
||||
<bundle>mvn:org.eclipse.aether/aether-impl/1.1.0</bundle>
|
||||
<bundle>wrap:mvn:org.apache.maven/maven-aether-provider/3.3.9</bundle>
|
||||
</feature -->
|
||||
|
||||
<feature name="entaxy-legacy" version="${project.version}">
|
||||
<feature prerequisite="true">entaxy-karaf-basic</feature>
|
||||
<feature prerequisite="true">entaxy-karaf-runtime</feature>
|
||||
<configfile finalname="${karaf.etc}/ru.entaxy.esb.cfg" override="false">
|
||||
mvn:ru.entaxy.esb/karaf-features/${project.version}/cfg/ru.entaxy.esb
|
||||
</configfile>
|
||||
|
||||
<feature prerequisite="true">karaf-camel-common</feature>
|
||||
<feature prerequisite="true">entaxy-legacy-system</feature>
|
||||
<feature prerequisite="true">entaxy-legacy-blueprint-generator</feature>
|
||||
<!--
|
||||
feature version="${project.version}" prerequisite="true">entaxy-legacy-datasources</feature
|
||||
-->
|
||||
</feature>
|
||||
|
||||
<feature name="entaxy-legacy-blueprint-generator" version="${project.version}">
|
||||
<bundle>mvn:org.apache.servicemix.bundles/org.apache.servicemix.bundles.freemarker/2.3.29_1</bundle>
|
||||
<bundle>mvn:ru.entaxy.esb.system.management.blueprint.generator/blueprint-generator/${project.version}</bundle>
|
||||
</feature>
|
||||
|
||||
<feature name="entaxy-legacy-system" version="${project.version}">
|
||||
<feature prerequisite="true">camel-gson</feature>
|
||||
<feature prerequisite="true">camel-jms</feature>
|
||||
<feature prerequisite="true">camel-sql</feature>
|
||||
<feature prerequisite="true">hibernate</feature>
|
||||
<feature prerequisite="true">artemis-jms-client</feature>
|
||||
<feature prerequisite="true">cxf-xjc-runtime</feature>
|
||||
<feature prerequisite="true">ignite-core</feature>
|
||||
<feature prerequisite="true">ignite-jcl</feature>
|
||||
<feature prerequisite="true">wss4j</feature>
|
||||
<feature prerequisite="true">entaxy-karaf-artemis-jms-support</feature>
|
||||
|
||||
<configfile finalname="${karaf.etc}/ru.entaxy.esb.cfg" override="false">
|
||||
mvn:ru.entaxy.esb/karaf-features/${project.version}/cfg/ru.entaxy.esb
|
||||
</configfile>
|
||||
<bundle dependency="true">mvn:ru.entaxy.esb.system.commons/system-commons/${project.version}</bundle>
|
||||
<bundle dependency="true">mvn:ru.entaxy.esb.system.core/template/${project.version}</bundle>
|
||||
</feature>
|
||||
|
||||
<feature name="karaf-camel-common" version="${project.version}">
|
||||
<bundle>mvn:ru.entaxy.esb.system/component-bean-fix/${project.version}</bundle>
|
||||
<capability>
|
||||
osgi.service;objectClass=org.apache.aries.blueprint.NamespaceHandler;osgi.service.blueprint.namespace=http://camel.apache.org/schema/blueprint;effective:=active;
|
||||
</capability>
|
||||
</feature>
|
||||
|
||||
<feature name="entaxy-legacy-system-api" version="${project.version}">
|
||||
<feature prerequisite="true" version="${project.version}">entaxy-legacy-connector-api</feature>
|
||||
<bundle>mvn:ru.entaxy.esb.system.registry.systems/system-api/${project.version}</bundle>
|
||||
<bundle>mvn:ru.entaxy.esb.system.registry.systems/system-impl/${project.version}</bundle>
|
||||
</feature>
|
||||
|
||||
<feature name="entaxy-legacy-for-modules" version="${project.version}">
|
||||
<feature version="${project.version}" prerequisite="true">entaxy-legacy</feature>
|
||||
<feature version="${project.version}" prerequisite="true">entaxy-legacy-system-api</feature>
|
||||
|
||||
<feature version="${project.version}" prerequisite="true">entaxy-legacy-deployer</feature>
|
||||
<feature version="${project.version}" prerequisite="true">entaxy-legacy-profile-commons</feature>
|
||||
<feature version="${project.version}" prerequisite="true">entaxy-legacy-bundle-service</feature>
|
||||
<feature version="${project.version}" prerequisite="true">entaxy-legacy-connectors</feature>
|
||||
|
||||
<feature version="${project.version}" prerequisite="true">entaxy-platform-base</feature>
|
||||
<feature version="${project.version}" prerequisite="true">entaxy-platform-core</feature>
|
||||
|
||||
<bundle>mvn:ru.entaxy.esb.system.management.profile.manager/profile-manager/${project.version}</bundle>
|
||||
<bundle>mvn:ru.entaxy.esb.system.management.route.manager/route-manager/${project.version}</bundle>
|
||||
|
||||
|
||||
<feature version="${project.version}">entaxy-legacy-error-handler</feature>
|
||||
<feature version="${project.version}">entaxy-legacy-system-profile</feature>
|
||||
|
||||
<bundle>mvn:ru.entaxy.esb.system.management.bridge.profile.manager/bridge-profile-manager/${project.version}</bundle>
|
||||
|
||||
<feature version="${project.version}">entaxy-legacy-system-management</feature>
|
||||
|
||||
<bundle>mvn:ru.entaxy.esb.system.registry.systems/system-component/${project.version}</bundle>
|
||||
|
||||
<feature version="${project.version}">entaxy-legacy-system-groups</feature>
|
||||
<feature version="${project.version}">entaxy-legacy-permissions</feature>
|
||||
|
||||
<bundle>mvn:ru.entaxy.esb.system.management.bundle.manager/bundle-manager/${project.version}</bundle>
|
||||
<bundle>mvn:ru.entaxy.esb.system.management.connector.manager/connector-manager/${project.version}</bundle>
|
||||
|
||||
<feature version="${project.version}">entaxy-legacy-events</feature>
|
||||
<feature version="${project.version}">entaxy-legacy-schema</feature>
|
||||
<feature version="${project.version}">entaxy-legacy-basic-auth</feature>
|
||||
|
||||
<capability>
|
||||
osgi.service;objectClass=org.hibernate.SessionFactory;effective:=active;
|
||||
</capability>
|
||||
|
||||
</feature>
|
||||
|
||||
<feature name="entaxy-legacy-schema" version="${project.version}">
|
||||
|
||||
<configfile finalname="${karaf.etc}/ru.entaxy.esb.system.schema.cfg" override="false">
|
||||
mvn:ru.entaxy.esb/karaf-features/${project.version}/cfg/ru.entaxy.esb.system.schema
|
||||
</configfile>
|
||||
|
||||
<bundle>mvn:ru.entaxy.esb.system.registry.schema/schema-api/${project.version}</bundle>
|
||||
<bundle>mvn:ru.entaxy.esb.system.registry.schema/schema-impl/${project.version}</bundle>
|
||||
<bundle>mvn:ru.entaxy.esb.system.registry.schema/schema-soap/${project.version}</bundle>
|
||||
<bundle>mvn:ru.entaxy.esb.system.registry.schema/schema-component/${project.version}</bundle>
|
||||
<capability>
|
||||
osgi.service;objectClass=org.hibernate.SessionFactory;effective:=active;
|
||||
</capability>
|
||||
</feature>
|
||||
|
||||
<feature name="entaxy-legacy-system-profile" version="${project.version}">
|
||||
<bundle>mvn:ru.entaxy.esb.system.registry.systems.profile/system-profile-api/${project.version}</bundle>
|
||||
<bundle>mvn:ru.entaxy.esb.system.registry.systems.profile/system-profile-collector/${project.version}</bundle>
|
||||
<bundle>mvn:ru.entaxy.esb.system.registry.systems.profile/system-profile-impl-default/${project.version}
|
||||
</bundle>
|
||||
</feature>
|
||||
|
||||
<feature name="entaxy-legacy-events" version="${project.version}">
|
||||
<bundle>mvn:ru.entaxy.esb.system.core.events/events-common/${project.version}</bundle>
|
||||
<bundle>mvn:ru.entaxy.esb.system.core.events/events-api/${project.version}</bundle>
|
||||
<bundle>mvn:ru.entaxy.esb.system.core.events/events-impl/${project.version}</bundle>
|
||||
|
||||
<capability>
|
||||
osgi.service;objectClass=org.hibernate.SessionFactory;effective:=active;
|
||||
</capability>
|
||||
|
||||
<configfile finalname="${karaf.etc}/ru.entaxy.esb.system.event.rest.cfg" override="false">
|
||||
mvn:ru.entaxy.esb/karaf-features/${project.version}/cfg/ru.entaxy.esb.system.event.rest
|
||||
</configfile>
|
||||
|
||||
<bundle>mvn:ru.entaxy.esb.system.core.events/events-rest/${project.version}</bundle>
|
||||
|
||||
<configfile finalname="${karaf.etc}/ru.entaxy.esb.system.event.handler.cfg" override="false">
|
||||
mvn:ru.entaxy.esb/karaf-features/${project.version}/cfg/ru.entaxy.esb.system.event.handler
|
||||
</configfile>
|
||||
|
||||
<bundle>mvn:ru.entaxy.esb.system.core.events/events-handler/${project.version}</bundle>
|
||||
|
||||
<capability>
|
||||
osgi.service;effective:=active;objectClass=javax.sql.DataSource;osgi.jndi.service.name=entaxy.esb.cache;
|
||||
</capability>
|
||||
</feature>
|
||||
|
||||
|
||||
<feature name="entaxy-legacy-system-groups" version="${project.version}">
|
||||
<bundle>mvn:ru.entaxy.esb.system.registry.system-groups.profile/system-group-profile-api/${project.version}
|
||||
</bundle>
|
||||
<bundle>
|
||||
mvn:ru.entaxy.esb.system.registry.system-groups.profile/system-group-profile-collector/${project.version}
|
||||
</bundle>
|
||||
<bundle>
|
||||
mvn:ru.entaxy.esb.system.registry.system-groups.profile/system-group-profile-impl-default/${project.version}
|
||||
</bundle>
|
||||
<bundle>mvn:ru.entaxy.esb.system.registry.system-groups/system-group-component/${project.version}</bundle>
|
||||
</feature>
|
||||
|
||||
<feature name="entaxy-legacy-system-management" version="${project.version}">
|
||||
<configfile finalname="${karaf.etc}/ru.entaxy.esb.system.management.cfg" override="false">
|
||||
mvn:ru.entaxy.esb/karaf-features/${project.version}/cfg/ru.entaxy.esb.system.management
|
||||
</configfile>
|
||||
<bundle>mvn:ru.entaxy.esb.system.management/system-management-api/${project.version}</bundle>
|
||||
<capability>
|
||||
osgi.service;objectClass=org.hibernate.SessionFactory;effective:=active;
|
||||
</capability>
|
||||
</feature>
|
||||
|
||||
|
||||
<feature name="entaxy-legacy-basic-auth" version="${project.version}">
|
||||
<feature prerequisite="true" version="${project.version}">entaxy-legacy-system-api</feature>
|
||||
<feature prerequisite="true" version="${project.version}">entaxy-legacy-permissions-api</feature>
|
||||
<configfile finalname="${karaf.etc}/ru.entaxy.esb.system.basic_auth.cfg" override="false">
|
||||
mvn:ru.entaxy.esb/karaf-features/${project.version}/cfg/ru.entaxy.esb.system.basic_auth
|
||||
</configfile>
|
||||
<configfile finalname="${karaf.etc}/ru.entaxy.esb.system.basic_auth.htpasswd.cfg" override="false">
|
||||
mvn:ru.entaxy.esb/karaf-features/${project.version}/cfg/ru.entaxy.esb.system.basic_auth.htpasswd
|
||||
</configfile>
|
||||
|
||||
<bundle>mvn:ru.entaxy.esb.system.auth.basic.api/basic-auth-api/${project.version}</bundle>
|
||||
<bundle>mvn:ru.entaxy.esb.system.auth.basic.impl/basic-auth-impl/${project.version}</bundle>
|
||||
<bundle>mvn:ru.entaxy.esb.system.auth.basic.htpasswd/htpasswd/${project.version}</bundle>
|
||||
<bundle>mvn:ru.entaxy.esb.system.auth.basic/basic-auth-soap/${project.version}</bundle>
|
||||
<capability>
|
||||
osgi.service;objectClass=org.hibernate.SessionFactory;effective:=active;
|
||||
</capability>
|
||||
</feature>
|
||||
|
||||
<feature name="entaxy-legacy-deployer" version="${project.version}">
|
||||
<feature prerequisite="true">bundle</feature>
|
||||
<feature prerequisite="true">camel-blueprint</feature>
|
||||
<feature prerequisite="true">camel-http</feature>
|
||||
<feature prerequisite="true">camel-cxf</feature>
|
||||
<feature prerequisite="true">cellar</feature>
|
||||
|
||||
<bundle>mvn:ru.entaxy.esb.system.deployer/deployer-api/${project.version}</bundle>
|
||||
<bundle>mvn:ru.entaxy.esb.system.deployer/file-system-deployer/${project.version}</bundle>
|
||||
<configfile finalname="${karaf.etc}/ru.entaxy.esb.deployer.file.system.cfg" override="false">
|
||||
mvn:ru.entaxy.esb/karaf-features/${project.version}/cfg/ru.entaxy.esb.deployer.file.system
|
||||
</configfile>
|
||||
|
||||
<bundle>mvn:org.eclipse.aether/aether-api/${aether.version}</bundle>
|
||||
<bundle>mvn:ru.entaxy.esb.system.deployer/nexus-deployer/${project.version}</bundle>
|
||||
<configfile finalname="${karaf.etc}/ru.entaxy.esb.deployer.nexus.cfg" override="false">
|
||||
mvn:ru.entaxy.esb/karaf-features/${project.version}/cfg/ru.entaxy.esb.deployer.nexus
|
||||
</configfile>
|
||||
|
||||
<bundle>mvn:ru.entaxy.esb.system.deployer/cellar-deployer/${project.version}</bundle>
|
||||
<configfile finalname="${karaf.etc}/ru.entaxy.esb.deployer.cellar.cfg" override="false">
|
||||
mvn:ru.entaxy.esb/karaf-features/${project.version}/cfg/ru.entaxy.esb.deployer.cellar
|
||||
</configfile>
|
||||
</feature>
|
||||
|
||||
<feature name="entaxy-legacy-profile-commons" version="${project.version}">
|
||||
<bundle>mvn:ru.entaxy.esb.system.core.dispatcher/dispatcher/${project.version}</bundle>
|
||||
<bundle>mvn:ru.entaxy.esb.system.registry.profile.commons/profile-commons/${project.version}</bundle>
|
||||
</feature>
|
||||
|
||||
<feature name="entaxy-legacy-bundle-service" version="${project.version}">
|
||||
<feature version="${project.version}" prerequisite="true">entaxy-legacy-system</feature>
|
||||
<feature version="${project.version}" prerequisite="true">entaxy-legacy-deployer</feature>
|
||||
<bundle>mvn:ru.entaxy.esb.system.core.dispatcher/dispatcher/${project.version}</bundle>
|
||||
<bundle>mvn:org.apache.servicemix.bundles/org.apache.servicemix.bundles.freemarker/2.3.29_1</bundle>
|
||||
<bundle>mvn:ru.entaxy.esb.system.management.bundle.jpa/bundle-service/${project.version}</bundle>
|
||||
<capability>
|
||||
osgi.service;objectClass=org.hibernate.SessionFactory;effective:=active;
|
||||
</capability>
|
||||
</feature>
|
||||
|
||||
<feature name="entaxy-legacy-connector-api" version="${project.version}">
|
||||
<feature version="${project.version}" prerequisite="true">entaxy-legacy-bundle-service</feature>
|
||||
<bundle>mvn:ru.entaxy.esb.system.registry.connector/connector-api/${project.version}</bundle>
|
||||
</feature>
|
||||
|
||||
<feature name="entaxy-legacy-connectors" version="${project.version}">
|
||||
<feature prerequisite="true" version="${project.version}">entaxy-legacy-connector-api</feature>
|
||||
|
||||
<bundle>mvn:ru.entaxy.esb.system.registry.connector/connector-impl/${project.version}</bundle>
|
||||
|
||||
<!-- moved to extras
|
||||
<configfile finalname="${karaf.etc}/ru.entaxy.esb.connector.file.cfg" override="false">
|
||||
mvn:ru.entaxy.esb/karaf-features/${project.version}/cfg/ru.entaxy.esb.connector.file
|
||||
</configfile>
|
||||
<bundle>mvn:ru.entaxy.esb.connector/file-connector/${project.version}</bundle>
|
||||
-->
|
||||
</feature>
|
||||
|
||||
<feature name="entaxy-legacy-error-handler" version="${project.version}">
|
||||
<bundle>mvn:ru.entaxy.esb.system.core/error-handler/${project.version}</bundle>
|
||||
|
||||
<configfile finalname="${karaf.etc}/ru.entaxy.esb.error.cfg" override="false">
|
||||
mvn:ru.entaxy.esb/karaf-features/${project.version}/cfg/ru.entaxy.esb.error
|
||||
</configfile>
|
||||
<configfile finalname="${karaf.etc}/ru.entaxy.esb.error.code.cfg" override="false">
|
||||
mvn:ru.entaxy.esb/karaf-features/${project.version}/cfg/ru.entaxy.esb.error.code
|
||||
</configfile>
|
||||
<configfile finalname="${karaf.etc}/ru.entaxy.esb.error.text.cfg" override="false">
|
||||
mvn:ru.entaxy.esb/karaf-features/${project.version}/cfg/ru.entaxy.esb.error.text
|
||||
</configfile>
|
||||
</feature>
|
||||
|
||||
<feature name="entaxy-legacy-permissions-api" version="${project.version}">
|
||||
<bundle>mvn:ru.entaxy.esb.system.core.permission/permission-api/${project.version}</bundle>
|
||||
<bundle>mvn:ru.entaxy.esb.system.core.permission/permission-common/${project.version}</bundle>
|
||||
<capability>
|
||||
osgi.service;objectClass=org.hibernate.SessionFactory;effective:=active;
|
||||
</capability>
|
||||
</feature>
|
||||
|
||||
<feature name="entaxy-legacy-permissions" version="${project.version}">
|
||||
<feature prerequisite="true" version="${project.version}">entaxy-legacy-permissions-api</feature>
|
||||
<!-- <configfile finalname="${karaf.etc}/ru.entaxy.esb.system.event.handler.cfg" override="false">mvn:ru.entaxy.esb/karaf-features/${project.version}/cfg/ru.entaxy.esb.system.event.handler</configfile> -->
|
||||
<bundle>mvn:ru.entaxy.esb.system.core.permission/permission-handler/${project.version}</bundle>
|
||||
<bundle>mvn:ru.entaxy.esb.system.core.permission/permission-component/${project.version}</bundle>
|
||||
<bundle>mvn:ru.entaxy.esb.system.core.permission/permission-impl/${project.version}</bundle>
|
||||
|
||||
<feature version="${project.version}">entaxy-legacy-basic-auth</feature>
|
||||
|
||||
<bundle>mvn:ru.entaxy.esb.system.core.permission/permission-soap/${project.version}</bundle>
|
||||
<bundle>mvn:ru.entaxy.esb.system.management.permission.manager/permission-manager/${project.version}</bundle>
|
||||
|
||||
</feature>
|
||||
|
||||
</features>
|
||||
|
85
platform/src/main/scripts/entaxy-platform.install
Normal file
85
platform/src/main/scripts/entaxy-platform.install
Normal file
@ -0,0 +1,85 @@
|
||||
###
|
||||
# ~~~~~~licensing~~~~~~
|
||||
# platform
|
||||
# ==========
|
||||
# Copyright (C) 2020 - 2021 EmDev LLC
|
||||
# ==========
|
||||
# Licensed under the Apache License, Version 2.0 (the "License");
|
||||
# you may not use this file except in compliance with the License.
|
||||
# You may obtain a copy of the License at
|
||||
#
|
||||
# http://www.apache.org/licenses/LICENSE-2.0
|
||||
#
|
||||
# Unless required by applicable law or agreed to in writing, software
|
||||
# distributed under the License is distributed on an "AS IS" BASIS,
|
||||
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||
# See the License for the specific language governing permissions and
|
||||
# limitations under the License.
|
||||
# ~~~~~~/licensing~~~~~~
|
||||
###
|
||||
echo
|
||||
echo
|
||||
echo "************"
|
||||
echo "Welcome to Entaxy platform installation script"
|
||||
echo "************"
|
||||
|
||||
echo
|
||||
echo "** Checking feature repository: ${project.groupId}/${project.artifactId}/${project.version}/xml/features ..."
|
||||
|
||||
_repo = (feature:repo-list | grep ru.entaxy.esb/platform)
|
||||
_repo_length = ($_repo length)
|
||||
if { $_repo_length'' equals "0" } {
|
||||
echo "\>\> Installing Entaxy repository..."
|
||||
feature:repo-add mvn:${project.groupId}/${project.artifactId}/${project.version}/xml/features
|
||||
echo "\>\> ... installed"
|
||||
} else {
|
||||
echo "\>\> Entaxy repository is already installed"
|
||||
}
|
||||
|
||||
echo
|
||||
echo "** Checking entaxy-karaf-configuration feature ..."
|
||||
|
||||
_config = [((feature:list | grep entaxy-karaf-configuration) split '\|')]
|
||||
_status = (($_config get 3) trim)
|
||||
if { $_status equals "Uninstalled" } {
|
||||
echo "\>\> Installing feature..."
|
||||
feature:install entaxy-karaf-configuration
|
||||
echo "\>\> ... installed"
|
||||
echo
|
||||
if { $1'' equals "skipReboot" } {
|
||||
echo "** the system will skip reboot for applying JRE exports"
|
||||
echo " \( see etc/jre.properties \)"
|
||||
echo " due to 'skipReboot argument'"
|
||||
echo "** If further installation will fail with errors please reboot"
|
||||
} else {
|
||||
echo "** the system will reboot now to apply JRE exports"
|
||||
echo " \( see etc/jre.properties \)"
|
||||
echo
|
||||
echo "** PLEASE RUN THE SCRIPT AGAIN AFTER RESTART **"
|
||||
shutdown -r -f
|
||||
}
|
||||
} else {
|
||||
echo "\>\> Entaxy configuration is already installed"
|
||||
}
|
||||
|
||||
echo
|
||||
_config = [((feature:list | grep entaxy-karaf-configuration) split '\|')]
|
||||
_status = (($_config get 3) trim)
|
||||
if { NOT { $_status equals "Started" } } {
|
||||
echo "** Current configuration feature status is " $_status
|
||||
echo "** Please clean the container and run installation again "
|
||||
} else {
|
||||
echo "** Installing Entaxy platform in verbose mode..."
|
||||
_platform = [((feature:list | grep entaxy-platform) split '\|')]
|
||||
_status = (($_platform get 3) trim)
|
||||
if { $_status equals "Uninstalled" } {
|
||||
feature:install -v entaxy-platform
|
||||
echo
|
||||
echo "\>\> ... installed"
|
||||
} else {
|
||||
echo "\>\> Entaxy platform is already installed"
|
||||
}
|
||||
}
|
||||
|
||||
echo
|
||||
echo "** Thank you!"
|
175
pom.xml
175
pom.xml
@ -36,13 +36,21 @@
|
||||
<jpa.version>2.1.0</jpa.version>
|
||||
<aether.version>1.1.0</aether.version>
|
||||
<cellar.version>4.2.1</cellar.version>
|
||||
<spring.version>5.2.5.RELEASE_1</spring.version>
|
||||
<mapstruct.version>1.3.1.Final</mapstruct.version>
|
||||
<ignite.version>2.8.1</ignite.version>
|
||||
<hazelcast.version>3.9.1</hazelcast.version>
|
||||
<gson.version>2.8.5</gson.version>
|
||||
<liquibase.version>3.6.3</liquibase.version>
|
||||
<mssql.version>7.4.1.jre8</mssql.version>
|
||||
<postgresql.version>42.2.5</postgresql.version>
|
||||
<!-- postgresql.version>42.2.5</postgresql.version -->
|
||||
<!--
|
||||
version should be 42.2.7 or higher
|
||||
to avoid
|
||||
java.lang.ClassNotFoundException: javax.security.sasl.SaslException not found by org.postgresql.jdbc42
|
||||
see https://github.com/pgjdbc/pgjdbc/issues/1503
|
||||
-->
|
||||
<postgresql.version>42.2.9</postgresql.version>
|
||||
<slf4j.version>1.7.30</slf4j.version>
|
||||
<javax.transaction.version>1.2</javax.transaction.version>
|
||||
<javax.interceptor.version>1.2</javax.interceptor.version>
|
||||
@ -267,11 +275,6 @@
|
||||
<artifactId>maven-deploy-plugin</artifactId>
|
||||
<version>${maven-deploy-plugin.version}</version>
|
||||
</plugin>
|
||||
<plugin>
|
||||
<groupId>org.codehaus.mojo</groupId>
|
||||
<artifactId>license-maven-plugin</artifactId>
|
||||
<version>2.0.0</version>
|
||||
</plugin>
|
||||
</plugins>
|
||||
</pluginManagement>
|
||||
<plugins>
|
||||
@ -281,7 +284,7 @@
|
||||
<version>${maven-bundle-plugin.version}</version>
|
||||
<extensions>true</extensions>
|
||||
<configuration>
|
||||
<obrRepository>NONE</obrRepository>
|
||||
<obrRepository>NONE</obrRepository>
|
||||
<instructions>
|
||||
<Bundle-SymbolicName>${project.artifactId}</Bundle-SymbolicName>
|
||||
<Bundle-Description>${project.description}</Bundle-Description>
|
||||
@ -356,7 +359,7 @@
|
||||
<!-- <plugin>-->
|
||||
<!-- <groupId>org.codehaus.mojo</groupId>-->
|
||||
<!-- <artifactId>build-helper-maven-plugin</artifactId>-->
|
||||
<!-- <version>1.8</version>-->
|
||||
<!-- <version>1.8.0</version>-->
|
||||
<!-- <inherited>false</inherited>-->
|
||||
<!-- <executions>-->
|
||||
<!-- <execution>-->
|
||||
@ -374,7 +377,7 @@
|
||||
<!-- <plugin>-->
|
||||
<!-- <groupId>org.apache.maven.plugins</groupId>-->
|
||||
<!-- <artifactId>maven-antrun-plugin</artifactId>-->
|
||||
<!-- <version>1.8</version>-->
|
||||
<!-- <version>1.8.0</version>-->
|
||||
<!-- <executions>-->
|
||||
<!-- <execution>-->
|
||||
<!-- <inherited>false</inherited>-->
|
||||
@ -442,7 +445,7 @@
|
||||
<!-- url>http://localhost:8981/repository/entaxy-public-entaxy/</url -->
|
||||
<url>https://nexus.entaxy.ru/nexus/repository/entaxy-public-entaxy/</url>
|
||||
</repository>
|
||||
<!-- we use the same repository for releases & snapshots -->
|
||||
<!-- we don't publish snapshots -->
|
||||
<!-- snapshotRepository>
|
||||
<id>entaxy-private-snapshots</id>
|
||||
<name>entaxy-private-snapshots</name>
|
||||
@ -475,8 +478,12 @@
|
||||
<profile>
|
||||
<id>docker.reposilite</id>
|
||||
<distributionManagement>
|
||||
<repository>
|
||||
<id>local-reposilte-releases</id>
|
||||
<url>http://127.0.0.1:8081/releases</url>
|
||||
</repository>
|
||||
<snapshotRepository>
|
||||
<id>entaxy-maven-repo</id>
|
||||
<id>local-reposilte-snapshots</id>
|
||||
<url>http://127.0.0.1:8081/snapshots</url>
|
||||
</snapshotRepository>
|
||||
</distributionManagement>
|
||||
@ -510,7 +517,7 @@
|
||||
<version>1.12</version>
|
||||
<executions>
|
||||
<execution>
|
||||
<id>attach-artifacts</id>
|
||||
<id>attach-features</id>
|
||||
<phase>package</phase>
|
||||
<goals>
|
||||
<goal>attach-artifact</goal>
|
||||
@ -630,7 +637,7 @@
|
||||
<excludedGroups>^ru\.entaxy\.esb</excludedGroups>
|
||||
|
||||
<licenseMerges>
|
||||
<licenseMerge>Apache License, Version 2.0|The Apache Software License, Version 2.0|The Apache License, Version 2.0|Apache 2.0 License</licenseMerge>
|
||||
<licenseMerge>Apache License, Version 2.0|The Apache Software License, Version 2.0|The Apache License, Version 2.0|Apache 2.0 License|Apache 2.0</licenseMerge>
|
||||
<licenseMerge>EDL 1.0|Eclipse Distribution License v. 1.0|Eclipse Distribution License - v 1.0</licenseMerge>
|
||||
<licenseMerge>EPL 2.0|Eclipse Public License v. 2.0</licenseMerge>
|
||||
<licenseMerge>EPL 1.0|Eclipse Public License v. 1.0|Eclipse Public License v1.0</licenseMerge>
|
||||
@ -686,69 +693,87 @@
|
||||
|
||||
</profile>
|
||||
|
||||
<profile>
|
||||
<id>license-aggregate</id>
|
||||
<activation>
|
||||
<file>
|
||||
<exists>aggregate.marker</exists>
|
||||
</file>
|
||||
</activation>
|
||||
<profile>
|
||||
<id>license-aggregate</id>
|
||||
<activation>
|
||||
<file>
|
||||
<exists>aggregate.marker</exists>
|
||||
</file>
|
||||
</activation>
|
||||
|
||||
<build>
|
||||
<plugins>
|
||||
<plugin>
|
||||
<groupId>org.codehaus.mojo</groupId>
|
||||
<artifactId>license-maven-plugin</artifactId>
|
||||
<version>2.0.0</version>
|
||||
<executions>
|
||||
<!-- collect all the dependencies through all the underlying modules
|
||||
-->
|
||||
<execution>
|
||||
<id>aggregate-add-third-party</id>
|
||||
<goals>
|
||||
<goal>aggregate-add-third-party</goal>
|
||||
</goals>
|
||||
<phase>prepare-package</phase>
|
||||
<configuration>
|
||||
<outputDirectory>${project.build.directory}/generated-sources/license</outputDirectory>
|
||||
<thirdPartyFilename>ALL-DEPENDENCIES</thirdPartyFilename>
|
||||
|
||||
<acceptPomPackaging>true</acceptPomPackaging>
|
||||
<includeTransitiveDependencies>false</includeTransitiveDependencies>
|
||||
<excludeTransitiveDependencies>true</excludeTransitiveDependencies>
|
||||
<excludedGroups>^ru\.entaxy\.esb</excludedGroups>
|
||||
<excludedScopes>test, provided</excludedScopes>
|
||||
<licenseMerges>
|
||||
<licenseMerge>Apache License, Version 2.0|The Apache Software License, Version 2.0|The Apache License, Version 2.0|Apache 2.0 License|Apache 2.0</licenseMerge>
|
||||
<licenseMerge>EDL 1.0|Eclipse Distribution License v. 1.0|Eclipse Distribution License - v 1.0</licenseMerge>
|
||||
<licenseMerge>EPL 2.0|Eclipse Public License v. 2.0</licenseMerge>
|
||||
<licenseMerge>EPL 1.0|Eclipse Public License v. 1.0|Eclipse Public License v1.0</licenseMerge>
|
||||
<licenseMerge>CDDL/GPLv2+CE|CDDL + GPLv2 with classpath exception</licenseMerge>
|
||||
<licenseMerge>GPLv2+CE|GPL2 w/ CPE</licenseMerge>
|
||||
<licenseMerge>CDDL/GPL|CDDL+GPL License</licenseMerge>
|
||||
<licenseMerge>LGPL|lgpl|GNU Lesser General Public License</licenseMerge>
|
||||
<licenseMerge>BSD|The BSD License</licenseMerge>
|
||||
<licenseMerge>MIT|MIT License</licenseMerge>
|
||||
</licenseMerges>
|
||||
</configuration>
|
||||
</execution>
|
||||
</executions>
|
||||
</plugin>
|
||||
|
||||
<plugin>
|
||||
<groupId>org.codehaus.mojo</groupId>
|
||||
<artifactId>build-helper-maven-plugin</artifactId>
|
||||
<!--
|
||||
@TODO remove version after moving plugins declarations from distribution/pom.xml to root/pom.xml
|
||||
-->
|
||||
<version>3.2.0</version>
|
||||
<executions>
|
||||
<execution>
|
||||
<id>attach-dependencies</id>
|
||||
<phase>package</phase>
|
||||
<goals>
|
||||
<goal>attach-artifact</goal>
|
||||
</goals>
|
||||
<configuration>
|
||||
<artifacts>
|
||||
<artifact>
|
||||
<file>target/generated-sources/license/ALL-DEPENDENCIES</file>
|
||||
<type>deps</type>
|
||||
<classifier>aggregated</classifier>
|
||||
</artifact>
|
||||
</artifacts>
|
||||
</configuration>
|
||||
</execution>
|
||||
</executions>
|
||||
</plugin>
|
||||
|
||||
</plugins>
|
||||
</build>
|
||||
|
||||
</profile>
|
||||
|
||||
<build>
|
||||
<plugins>
|
||||
<plugin>
|
||||
<groupId>org.codehaus.mojo</groupId>
|
||||
<artifactId>license-maven-plugin</artifactId>
|
||||
<executions>
|
||||
<!-- collect all the dependencies through all the underlying modules
|
||||
-->
|
||||
<execution>
|
||||
<id>aggregate-add-third-party</id>
|
||||
<goals>
|
||||
<goal>aggregate-add-third-party</goal>
|
||||
</goals>
|
||||
<phase>prepare-package</phase>
|
||||
<configuration>
|
||||
<outputDirectory>${project.build.directory}/generated-sources/license</outputDirectory>
|
||||
<thirdPartyFilename>ALL-DEPENDENCIES</thirdPartyFilename>
|
||||
|
||||
<acceptPomPackaging>false</acceptPomPackaging>
|
||||
<includeTransitiveDependencies>false</includeTransitiveDependencies>
|
||||
<excludeTransitiveDependencies>true</excludeTransitiveDependencies>
|
||||
<excludedGroups>^ru\.entaxy\.esb</excludedGroups>
|
||||
<excludedScopes>test, provided</excludedScopes>
|
||||
</configuration>
|
||||
</execution>
|
||||
</executions>
|
||||
</plugin>
|
||||
|
||||
<plugin>
|
||||
<groupId>org.codehaus.mojo</groupId>
|
||||
<artifactId>build-helper-maven-plugin</artifactId>
|
||||
<executions>
|
||||
<execution>
|
||||
<id>attach-artifacts</id>
|
||||
<phase>package</phase>
|
||||
<goals>
|
||||
<goal>attach-artifact</goal>
|
||||
</goals>
|
||||
<configuration>
|
||||
<artifacts>
|
||||
<artifact>
|
||||
<file>target/generated-sources/license/ALL-DEPENDENCIES</file>
|
||||
<type>deps</type>
|
||||
<classifier>aggregated</classifier>
|
||||
</artifact>
|
||||
</artifacts>
|
||||
</configuration>
|
||||
</execution>
|
||||
</executions>
|
||||
</plugin>
|
||||
|
||||
</plugins>
|
||||
</build>
|
||||
|
||||
</profile>
|
||||
</profiles>
|
||||
<!-- TODO Imrove it!!! -->
|
||||
<organization>
|
||||
|
@ -7,7 +7,7 @@
|
||||
<parent>
|
||||
<groupId>ru.entaxy.esb.system</groupId>
|
||||
<artifactId>system-parent</artifactId>
|
||||
<version>1.8.0</version>
|
||||
<version>1.8</version>
|
||||
</parent>
|
||||
|
||||
<groupId>ru.entaxy.esb.system.auth</groupId>
|
||||
|
@ -5,7 +5,7 @@
|
||||
<parent>
|
||||
<groupId>ru.entaxy.esb.system.registry</groupId>
|
||||
<artifactId>registry</artifactId>
|
||||
<version>1.8.0</version>
|
||||
<version>1.8</version>
|
||||
<relativePath>../../registry/pom.xml</relativePath>
|
||||
</parent>
|
||||
<modelVersion>4.0.0</modelVersion>
|
||||
|
@ -7,7 +7,7 @@
|
||||
<parent>
|
||||
<groupId>ru.entaxy.esb.system.registry</groupId>
|
||||
<artifactId>registry</artifactId>
|
||||
<version>1.8.0</version>
|
||||
<version>1.8</version>
|
||||
<relativePath>../../registry/pom.xml</relativePath>
|
||||
</parent>
|
||||
|
||||
|
@ -7,7 +7,7 @@
|
||||
<parent>
|
||||
<groupId>ru.entaxy.esb.system.registry</groupId>
|
||||
<artifactId>registry</artifactId>
|
||||
<version>1.8.0</version>
|
||||
<version>1.8</version>
|
||||
<relativePath>../../registry/pom.xml</relativePath>
|
||||
</parent>
|
||||
|
||||
|
@ -5,7 +5,7 @@
|
||||
<parent>
|
||||
<groupId>ru.entaxy.esb.system.registry</groupId>
|
||||
<artifactId>registry</artifactId>
|
||||
<version>1.8.0</version>
|
||||
<version>1.8</version>
|
||||
<relativePath>../../registry/pom.xml</relativePath>
|
||||
</parent>
|
||||
<modelVersion>4.0.0</modelVersion>
|
||||
|
@ -7,7 +7,7 @@
|
||||
<parent>
|
||||
<groupId>ru.entaxy.esb.system.registry</groupId>
|
||||
<artifactId>registry</artifactId>
|
||||
<version>1.8.0</version>
|
||||
<version>1.8</version>
|
||||
<relativePath>../../registry/pom.xml</relativePath>
|
||||
</parent>
|
||||
|
||||
|
@ -5,7 +5,7 @@
|
||||
<parent>
|
||||
<artifactId>system-groups</artifactId>
|
||||
<groupId>ru.entaxy.esb.system.registry.system-groups</groupId>
|
||||
<version>1.8.0</version>
|
||||
<version>1.8</version>
|
||||
</parent>
|
||||
|
||||
<modelVersion>4.0.0</modelVersion>
|
||||
|
@ -5,7 +5,7 @@
|
||||
<parent>
|
||||
<artifactId>system-groups</artifactId>
|
||||
<groupId>ru.entaxy.esb.system.registry.system-groups</groupId>
|
||||
<version>1.8.0</version>
|
||||
<version>1.8</version>
|
||||
</parent>
|
||||
<modelVersion>4.0.0</modelVersion>
|
||||
|
||||
|
@ -5,7 +5,7 @@
|
||||
<parent>
|
||||
<artifactId>system-groups</artifactId>
|
||||
<groupId>ru.entaxy.esb.system.registry.system-groups</groupId>
|
||||
<version>1.8.0</version>
|
||||
<version>1.8</version>
|
||||
</parent>
|
||||
|
||||
<modelVersion>4.0.0</modelVersion>
|
||||
|
@ -5,7 +5,7 @@
|
||||
<parent>
|
||||
<groupId>ru.entaxy.esb.system.registry.system-groups</groupId>
|
||||
<artifactId>system-groups</artifactId>
|
||||
<version>1.8.0</version>
|
||||
<version>1.8</version>
|
||||
<relativePath>../../system-groups/pom.xml</relativePath>
|
||||
</parent>
|
||||
|
||||
|
@ -6,7 +6,7 @@
|
||||
<parent>
|
||||
<groupId>ru.entaxy.esb.system.registry.system-groups.profile</groupId>
|
||||
<artifactId>system-group-profile</artifactId>
|
||||
<version>1.8.0</version>
|
||||
<version>1.8</version>
|
||||
<relativePath>../../system-group-profile/pom.xml</relativePath>
|
||||
</parent>
|
||||
|
||||
|
@ -6,7 +6,7 @@
|
||||
<parent>
|
||||
<groupId>ru.entaxy.esb.system.registry.system-groups.profile</groupId>
|
||||
<artifactId>system-group-profile</artifactId>
|
||||
<version>1.8.0</version>
|
||||
<version>1.8</version>
|
||||
<relativePath>../../system-group-profile/pom.xml</relativePath>
|
||||
</parent>
|
||||
|
||||
|
@ -6,7 +6,7 @@
|
||||
<parent>
|
||||
<groupId>ru.entaxy.esb.system.registry.system-groups.profile</groupId>
|
||||
<artifactId>system-group-profile</artifactId>
|
||||
<version>1.8.0</version>
|
||||
<version>1.8</version>
|
||||
<relativePath>../../system-group-profile/pom.xml</relativePath>
|
||||
</parent>
|
||||
|
||||
|
@ -7,7 +7,7 @@
|
||||
<parent>
|
||||
<groupId>ru.entaxy.esb.system.registry</groupId>
|
||||
<artifactId>registry</artifactId>
|
||||
<version>1.8.0</version>
|
||||
<version>1.8</version>
|
||||
<relativePath>../../registry/pom.xml</relativePath>
|
||||
</parent>
|
||||
|
||||
|
@ -6,7 +6,7 @@
|
||||
<parent>
|
||||
<groupId>ru.entaxy.esb.system.registry.systems</groupId>
|
||||
<artifactId>systems</artifactId>
|
||||
<version>1.8.0</version>
|
||||
<version>1.8</version>
|
||||
<relativePath>../../systems/pom.xml</relativePath>
|
||||
</parent>
|
||||
|
||||
|
@ -8,7 +8,7 @@
|
||||
<parent>
|
||||
<groupId>ru.entaxy.esb.system.registry.systems</groupId>
|
||||
<artifactId>systems</artifactId>
|
||||
<version>1.8.0</version>
|
||||
<version>1.8</version>
|
||||
<relativePath>../../systems/pom.xml</relativePath>
|
||||
</parent>
|
||||
|
||||
|
@ -6,7 +6,7 @@
|
||||
<parent>
|
||||
<groupId>ru.entaxy.esb.system.registry.systems</groupId>
|
||||
<artifactId>systems</artifactId>
|
||||
<version>1.8.0</version>
|
||||
<version>1.8</version>
|
||||
<relativePath>../../systems/pom.xml</relativePath>
|
||||
</parent>
|
||||
|
||||
|
@ -7,7 +7,7 @@
|
||||
<parent>
|
||||
<groupId>ru.entaxy.esb.system.registry.systems</groupId>
|
||||
<artifactId>systems</artifactId>
|
||||
<version>1.8.0</version>
|
||||
<version>1.8</version>
|
||||
<relativePath>../../systems/pom.xml</relativePath>
|
||||
</parent>
|
||||
|
||||
|
@ -6,7 +6,7 @@
|
||||
<parent>
|
||||
<groupId>ru.entaxy.esb.system.registry.systems.profile</groupId>
|
||||
<artifactId>system-profile</artifactId>
|
||||
<version>1.8.0</version>
|
||||
<version>1.8</version>
|
||||
<relativePath>../../system-profile/pom.xml</relativePath>
|
||||
</parent>
|
||||
|
||||
|
@ -6,7 +6,7 @@
|
||||
<parent>
|
||||
<groupId>ru.entaxy.esb.system.registry.systems.profile</groupId>
|
||||
<artifactId>system-profile</artifactId>
|
||||
<version>1.8.0</version>
|
||||
<version>1.8</version>
|
||||
<relativePath>../../system-profile/pom.xml</relativePath>
|
||||
</parent>
|
||||
|
||||
|
@ -6,7 +6,7 @@
|
||||
<parent>
|
||||
<groupId>ru.entaxy.esb.system.registry.systems.profile</groupId>
|
||||
<artifactId>system-profile</artifactId>
|
||||
<version>1.8.0</version>
|
||||
<version>1.8</version>
|
||||
<relativePath>../../system-profile/pom.xml</relativePath>
|
||||
</parent>
|
||||
|
||||
|
@ -8,7 +8,7 @@
|
||||
<parent>
|
||||
<groupId>ru.entaxy.esb.system</groupId>
|
||||
<artifactId>system-parent</artifactId>
|
||||
<version>1.0-SNAPSHOT</version>
|
||||
<version>1.8</version>
|
||||
</parent>
|
||||
|
||||
<artifactId>system-transformer</artifactId>
|
||||
|
Loading…
Reference in New Issue
Block a user