Merge pull request '- change version on 1.8' (#4) from new_version into master
Reviewed-on: #4
This commit is contained in:
		
							
								
								
									
										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> | ||||
|   | ||||
		Reference in New Issue
	
	Block a user