mirror of
https://repository.entgra.net/community/product-iots.git
synced 2025-09-16 23:32:19 +00:00
Merge branch 'newAPPM' into 'master'
Add new entgra app manager module and remove wso2 app manager module. Closes #104 See merge request entgra/product-iots!39
This commit is contained in:
commit
5fc168df94
10
README.md
10
README.md
@ -11,7 +11,7 @@ It also offers a complete and secure enterprise mobility management (EMM/MDM) so
|
||||
Entgra IoT Server comes with advanced analytics, enabling users to analyze speed, proximity, and geo-fencing information of devices including details of those in motion and stationary state.
|
||||
|
||||
Find the online documentation at :
|
||||
https://entgra-documentation.gitlab.io/v3.7.0
|
||||
https://entgra-documentation.gitlab.io/v3.8.0
|
||||
|
||||
### Key Features of Entgra IoT Server
|
||||
|
||||
@ -53,11 +53,11 @@ https://entgra-documentation.gitlab.io/v3.7.0
|
||||
* Support for SCEP protocol (encryption and authenticity)
|
||||
|
||||
### How to Run
|
||||
* Extract the downloaded entgraiot-3.7.0.zip file; this will create a folder named ‘entgraiot-3.7.0’.
|
||||
* Extract the downloaded entgraiot-3.8.0.zip file; this will create a folder named ‘entgraiot-3.8.0’.
|
||||
* IoT Server comes with three runnable components namely broker, core, and analytics. Start these components in following order by executing the following scripts:
|
||||
* entgraiot-3.7.0/bin/broker.sh [.bat]
|
||||
* entgraiot-3.7.0/bin/iot-server.sh [.bat]
|
||||
* entgraiot-3.7.0/bin/analytics.sh [.bat]
|
||||
* entgraiot-3.8.0/bin/broker.sh [.bat]
|
||||
* entgraiot-3.8.0/bin/iot-server.sh [.bat]
|
||||
* entgraiot-3.8.0/bin/analytics.sh [.bat]
|
||||
|
||||
### How to Contribute
|
||||
|
||||
|
||||
@ -562,76 +562,76 @@
|
||||
<property name="db.dir" value="target/wso2carbon-core-${carbon.kernel.version}/repository/database" />
|
||||
<property name="userid" value="wso2carbon" />
|
||||
<property name="password" value="wso2carbon" />
|
||||
<property name="dbURL" value="jdbc:h2:file:${basedir}/${db.dir}/WSO2APPM_DB;DB_CLOSE_ON_EXIT=FALSE" />
|
||||
<property name="dbURL" value="jdbc:h2:file:${basedir}/${db.dir}/WSO2DM_APPM_DB;DB_CLOSE_ON_EXIT=FALSE" />
|
||||
|
||||
<sql driver="org.h2.Driver" url="${dbURL}" userid="${userid}" password="${password}" autocommit="true" onerror="continue">
|
||||
<classpath refid="maven.dependency.classpath" />
|
||||
<classpath refid="maven.compile.classpath" />
|
||||
<classpath refid="maven.runtime.classpath" />
|
||||
|
||||
<fileset file="${basedir}/../p2-profile/iot-core-profile/target/wso2carbon-core-${carbon.kernel.version}/dbscripts/appmgt/h2.sql" />
|
||||
<fileset file="${basedir}/../p2-profile/iot-core-profile/target/wso2carbon-core-${carbon.kernel.version}/dbscripts/cdm/application-mgt/h2.sql" />
|
||||
</sql>
|
||||
<echo message="##################### END ####################" />
|
||||
</tasks>
|
||||
</configuration>
|
||||
</execution>
|
||||
|
||||
<execution>
|
||||
<!-- Creating JAGH2 schema -->
|
||||
<id>create-JAGH2-schema</id>
|
||||
<phase>package</phase>
|
||||
<goals>
|
||||
<goal>run</goal>
|
||||
</goals>
|
||||
<configuration>
|
||||
<tasks>
|
||||
<echo message="########### Create JAGH2 Schema ###########" />
|
||||
<!--<execution>-->
|
||||
<!--<!– Creating JAGH2 schema –>-->
|
||||
<!--<id>create-JAGH2-schema</id>-->
|
||||
<!--<phase>package</phase>-->
|
||||
<!--<goals>-->
|
||||
<!--<goal>run</goal>-->
|
||||
<!--</goals>-->
|
||||
<!--<configuration>-->
|
||||
<!--<tasks>-->
|
||||
<!--<echo message="########### Create JAGH2 Schema ###########" />-->
|
||||
|
||||
<property name="db.dir" value="target/wso2carbon-core-${carbon.kernel.version}/repository/database" />
|
||||
<property name="userid" value="wso2carbon" />
|
||||
<property name="password" value="wso2carbon" />
|
||||
<property name="dbURL" value="jdbc:h2:file:${basedir}/${db.dir}/ES_STORAGE;DB_CLOSE_ON_EXIT=FALSE;LOCK_TIMEOUT=60000" />
|
||||
<!--<property name="dbURL" value="jdbc:h2:file:${basedir}/${db.dir}/WSO2DM_DB;DB_CLOSE_ON_EXIT=FALSE" />-->
|
||||
<!--<property name="db.dir" value="target/wso2carbon-core-${carbon.kernel.version}/repository/database" />-->
|
||||
<!--<property name="userid" value="wso2carbon" />-->
|
||||
<!--<property name="password" value="wso2carbon" />-->
|
||||
<!--<property name="dbURL" value="jdbc:h2:file:${basedir}/${db.dir}/ES_STORAGE;DB_CLOSE_ON_EXIT=FALSE;LOCK_TIMEOUT=60000" />-->
|
||||
<!--<!–<property name="dbURL" value="jdbc:h2:file:${basedir}/${db.dir}/WSO2DM_DB;DB_CLOSE_ON_EXIT=FALSE" />–>-->
|
||||
|
||||
<sql driver="org.h2.Driver" url="${dbURL}" userid="${userid}" password="${password}" autocommit="true" onerror="continue">
|
||||
<classpath refid="maven.dependency.classpath" />
|
||||
<classpath refid="maven.compile.classpath" />
|
||||
<classpath refid="maven.runtime.classpath" />
|
||||
<!--<sql driver="org.h2.Driver" url="${dbURL}" userid="${userid}" password="${password}" autocommit="true" onerror="continue">-->
|
||||
<!--<classpath refid="maven.dependency.classpath" />-->
|
||||
<!--<classpath refid="maven.compile.classpath" />-->
|
||||
<!--<classpath refid="maven.runtime.classpath" />-->
|
||||
|
||||
<fileset file="${basedir}/../p2-profile/iot-core-profile/target/wso2carbon-core-${carbon.kernel.version}/dbscripts/storage/h2/h2.sql" />
|
||||
</sql>
|
||||
<echo message="##################### END ####################" />
|
||||
</tasks>
|
||||
</configuration>
|
||||
</execution>
|
||||
<!--<fileset file="${basedir}/../p2-profile/iot-core-profile/target/wso2carbon-core-${carbon.kernel.version}/dbscripts/storage/h2/h2.sql" />-->
|
||||
<!--</sql>-->
|
||||
<!--<echo message="##################### END ####################" />-->
|
||||
<!--</tasks>-->
|
||||
<!--</configuration>-->
|
||||
<!--</execution>-->
|
||||
|
||||
<execution>
|
||||
<!-- Creating Social DB schema -->
|
||||
<id>create-social-db-schema</id>
|
||||
<phase>package</phase>
|
||||
<goals>
|
||||
<goal>run</goal>
|
||||
</goals>
|
||||
<configuration>
|
||||
<tasks>
|
||||
<echo message="########### Create Social Plugin H2 Schema ###########" />
|
||||
<!--<execution>-->
|
||||
<!--<!– Creating Social DB schema –>-->
|
||||
<!--<id>create-social-db-schema</id>-->
|
||||
<!--<phase>package</phase>-->
|
||||
<!--<goals>-->
|
||||
<!--<goal>run</goal>-->
|
||||
<!--</goals>-->
|
||||
<!--<configuration>-->
|
||||
<!--<tasks>-->
|
||||
<!--<echo message="########### Create Social Plugin H2 Schema ###########" />-->
|
||||
|
||||
<property name="db.dir" value="target/wso2carbon-core-${carbon.kernel.version}/repository/database" />
|
||||
<property name="userid" value="wso2carbon" />
|
||||
<property name="password" value="wso2carbon" />
|
||||
<property name="dbURL" value="jdbc:h2:file:${basedir}/${db.dir}/WSO2_SOCIAL_DB;DB_CLOSE_ON_EXIT=FALSE" />
|
||||
<!--<property name="db.dir" value="target/wso2carbon-core-${carbon.kernel.version}/repository/database" />-->
|
||||
<!--<property name="userid" value="wso2carbon" />-->
|
||||
<!--<property name="password" value="wso2carbon" />-->
|
||||
<!--<property name="dbURL" value="jdbc:h2:file:${basedir}/${db.dir}/WSO2_SOCIAL_DB;DB_CLOSE_ON_EXIT=FALSE" />-->
|
||||
|
||||
<sql driver="org.h2.Driver" url="${dbURL}" userid="${userid}" password="${password}" autocommit="true" onerror="continue">
|
||||
<classpath refid="maven.dependency.classpath" />
|
||||
<classpath refid="maven.compile.classpath" />
|
||||
<classpath refid="maven.runtime.classpath" />
|
||||
<!--<sql driver="org.h2.Driver" url="${dbURL}" userid="${userid}" password="${password}" autocommit="true" onerror="continue">-->
|
||||
<!--<classpath refid="maven.dependency.classpath" />-->
|
||||
<!--<classpath refid="maven.compile.classpath" />-->
|
||||
<!--<classpath refid="maven.runtime.classpath" />-->
|
||||
|
||||
<fileset file="${basedir}/../p2-profile/iot-core-profile/target/wso2carbon-core-${carbon.kernel.version}/dbscripts/social/h2/resource.sql" />
|
||||
</sql>
|
||||
<echo message="##################### END ####################" />
|
||||
</tasks>
|
||||
</configuration>
|
||||
</execution>
|
||||
<!--<fileset file="${basedir}/../p2-profile/iot-core-profile/target/wso2carbon-core-${carbon.kernel.version}/dbscripts/social/h2/resource.sql" />-->
|
||||
<!--</sql>-->
|
||||
<!--<echo message="##################### END ####################" />-->
|
||||
<!--</tasks>-->
|
||||
<!--</configuration>-->
|
||||
<!--</execution>-->
|
||||
<execution>
|
||||
<!-- Creating Android Mobile Plugin Management schema -->
|
||||
<id>create-mobile-android-plugin-mgt-schema</id>
|
||||
|
||||
@ -27,7 +27,7 @@
|
||||
<modelVersion>4.0.0</modelVersion>
|
||||
<groupId>org.wso2.iot.analytics.devicemgt-plugins</groupId>
|
||||
<artifactId>analytics-devicetype-feature-installation</artifactId>
|
||||
<version>3.7.0-SNAPSHOT</version>
|
||||
<version>4.0.0-SNAPSHOT</version>
|
||||
<packaging>pom</packaging>
|
||||
<name>Install Virtual Fire Alarm, Raspberry Pi, Arduino, Android Sense Device Types - Analytics</name>
|
||||
<url>http://wso2.org</url>
|
||||
|
||||
@ -388,36 +388,36 @@
|
||||
</fileSet>
|
||||
|
||||
<!-- Copying APP Manager Publisher and Store Jaggery apps -->
|
||||
<fileSet>
|
||||
<directory>
|
||||
../p2-profile/iot-core-profile/target/wso2carbon-core-${carbon.kernel.version}/wso2/deployment/server/jaggeryapps/publisher/
|
||||
</directory>
|
||||
<outputDirectory>${pom.artifactId}-${pom.version}/repository/deployment/server/jaggeryapps/publisher
|
||||
</outputDirectory>
|
||||
<excludes>
|
||||
<exclude>publisherLogo/**</exclude>
|
||||
<exclude>publisherTheme/**</exclude>
|
||||
<exclude>publisherSite/**</exclude>
|
||||
<exclude>footer/**</exclude>
|
||||
<exclude>localstyles.css</exclude>
|
||||
<exclude>**/jaggery.conf</exclude>
|
||||
</excludes>
|
||||
</fileSet>
|
||||
<fileSet>
|
||||
<directory>
|
||||
../p2-profile/iot-core-profile/target/wso2carbon-core-${carbon.kernel.version}/wso2/deployment/server/jaggeryapps/store/
|
||||
</directory>
|
||||
<outputDirectory>${pom.artifactId}-${pom.version}/repository/deployment/server/jaggeryapps/store
|
||||
</outputDirectory>
|
||||
<excludes>
|
||||
<exclude>storeLogo/**</exclude>
|
||||
<exclude>storeSite/**</exclude>
|
||||
<exclude>base-page/**</exclude>
|
||||
<exclude>login/**</exclude>
|
||||
<exclude>styles-layout.css</exclude>
|
||||
<exclude>**/jaggery.conf</exclude>
|
||||
</excludes>
|
||||
</fileSet>
|
||||
<!--<fileSet>-->
|
||||
<!--<directory>-->
|
||||
<!--../p2-profile/iot-core-profile/target/wso2carbon-core-${carbon.kernel.version}/wso2/deployment/server/jaggeryapps/publisher/-->
|
||||
<!--</directory>-->
|
||||
<!--<outputDirectory>${pom.artifactId}-${pom.version}/repository/deployment/server/jaggeryapps/publisher-->
|
||||
<!--</outputDirectory>-->
|
||||
<!--<excludes>-->
|
||||
<!--<exclude>publisherLogo/**</exclude>-->
|
||||
<!--<exclude>publisherTheme/**</exclude>-->
|
||||
<!--<exclude>publisherSite/**</exclude>-->
|
||||
<!--<exclude>footer/**</exclude>-->
|
||||
<!--<exclude>localstyles.css</exclude>-->
|
||||
<!--<exclude>**/jaggery.conf</exclude>-->
|
||||
<!--</excludes>-->
|
||||
<!--</fileSet>-->
|
||||
<!--<fileSet>-->
|
||||
<!--<directory>-->
|
||||
<!--../p2-profile/iot-core-profile/target/wso2carbon-core-${carbon.kernel.version}/wso2/deployment/server/jaggeryapps/store/-->
|
||||
<!--</directory>-->
|
||||
<!--<outputDirectory>${pom.artifactId}-${pom.version}/repository/deployment/server/jaggeryapps/store-->
|
||||
<!--</outputDirectory>-->
|
||||
<!--<excludes>-->
|
||||
<!--<exclude>storeLogo/**</exclude>-->
|
||||
<!--<exclude>storeSite/**</exclude>-->
|
||||
<!--<exclude>base-page/**</exclude>-->
|
||||
<!--<exclude>login/**</exclude>-->
|
||||
<!--<exclude>styles-layout.css</exclude>-->
|
||||
<!--<exclude>**/jaggery.conf</exclude>-->
|
||||
<!--</excludes>-->
|
||||
<!--</fileSet>-->
|
||||
|
||||
<!-- Copying API Manager Store Jaggery app -->
|
||||
<fileSet>
|
||||
@ -437,16 +437,16 @@
|
||||
</excludes>
|
||||
</fileSet>
|
||||
|
||||
<fileSet>
|
||||
<directory>
|
||||
../p2-profile/iot-core-profile/target/wso2carbon-core-${carbon.kernel.version}/wso2/deployment/server/jaggeryapps/social/
|
||||
</directory>
|
||||
<outputDirectory>${pom.artifactId}-${pom.version}/repository/deployment/server/jaggeryapps/social
|
||||
</outputDirectory>
|
||||
<excludes>
|
||||
<exclude>**/jaggery.conf</exclude>
|
||||
</excludes>
|
||||
</fileSet>
|
||||
<!-- <fileSet>-->
|
||||
<!-- <directory>-->
|
||||
<!-- ../p2-profile/iot-core-profile/target/wso2carbon-core-${carbon.kernel.version}/wso2/deployment/server/jaggeryapps/social/-->
|
||||
<!-- </directory>-->
|
||||
<!-- <outputDirectory>${pom.artifactId}-${pom.version}/repository/deployment/server/jaggeryapps/social-->
|
||||
<!-- </outputDirectory>-->
|
||||
<!-- <excludes>-->
|
||||
<!-- <exclude>**/jaggery.conf</exclude>-->
|
||||
<!-- </excludes>-->
|
||||
<!-- </fileSet>-->
|
||||
|
||||
<!-- Copying Android Mutual SSL Synapse files -->
|
||||
<fileSet>
|
||||
@ -1373,12 +1373,6 @@
|
||||
<outputDirectory>${pom.artifactId}-${pom.version}/repository/database/</outputDirectory>
|
||||
<fileMode>644</fileMode>
|
||||
</file>
|
||||
<file>
|
||||
<source>src/core/conf/app-manager.xml</source>
|
||||
<outputDirectory>${pom.artifactId}-${pom.version}/conf</outputDirectory>
|
||||
<filtered>true</filtered>
|
||||
<fileMode>644</fileMode>
|
||||
</file>
|
||||
<file>
|
||||
<source>src/core/resources/appm-tenant-conf.xml</source>
|
||||
<outputDirectory>${pom.artifactId}-${pom.version}/repository/resources</outputDirectory>
|
||||
@ -1419,10 +1413,10 @@
|
||||
<!-- Copying H2 database related files corresponding to default App management repository schema -->
|
||||
<file>
|
||||
<source>
|
||||
target/wso2carbon-core-${carbon.kernel.version}/repository/database/WSO2APPM_DB.h2.db
|
||||
target/wso2carbon-core-${carbon.kernel.version}/repository/database/WSO2DM_APPM_DB.h2.db
|
||||
</source>
|
||||
<outputDirectory>${pom.artifactId}-${pom.version}/repository/database</outputDirectory>
|
||||
<destName>WSO2APPM_DB.h2.db</destName>
|
||||
<destName>WSO2DM_APPM_DB.h2.db</destName>
|
||||
<fileMode>644</fileMode>
|
||||
</file>
|
||||
<!-- Copying H2 database related files corresponding to default Device management repository schema -->
|
||||
@ -1586,13 +1580,13 @@
|
||||
</outputDirectory>
|
||||
<fileMode>755</fileMode>
|
||||
</file>
|
||||
<file>
|
||||
<source>src/core/jaggeryapps/publisher/jaggery.conf</source>
|
||||
<outputDirectory>
|
||||
${pom.artifactId}-${pom.version}/repository/deployment/server/jaggeryapps/publisher/
|
||||
</outputDirectory>
|
||||
<fileMode>755</fileMode>
|
||||
</file>
|
||||
<!--<file>-->
|
||||
<!--<source>src/core/jaggeryapps/publisher/jaggery.conf</source>-->
|
||||
<!--<outputDirectory>-->
|
||||
<!--${pom.artifactId}-${pom.version}/repository/deployment/server/jaggeryapps/publisher/-->
|
||||
<!--</outputDirectory>-->
|
||||
<!--<fileMode>755</fileMode>-->
|
||||
<!--</file>-->
|
||||
|
||||
<file>
|
||||
<source>src/core/jaggeryapps/privacy-policies/jaggery.conf</source>
|
||||
@ -1602,20 +1596,20 @@
|
||||
<fileMode>755</fileMode>
|
||||
</file>
|
||||
|
||||
<file>
|
||||
<source>src/core/jaggeryapps/social/jaggery.conf</source>
|
||||
<outputDirectory>
|
||||
${pom.artifactId}-${pom.version}/repository/deployment/server/jaggeryapps/social/
|
||||
</outputDirectory>
|
||||
<fileMode>755</fileMode>
|
||||
</file>
|
||||
<file>
|
||||
<source>src/core/jaggeryapps/store/jaggery.conf</source>
|
||||
<outputDirectory>
|
||||
${pom.artifactId}-${pom.version}/repository/deployment/server/jaggeryapps/store/
|
||||
</outputDirectory>
|
||||
<fileMode>755</fileMode>
|
||||
</file>
|
||||
<!-- <file>-->
|
||||
<!-- <source>src/core/jaggeryapps/social/jaggery.conf</source>-->
|
||||
<!-- <outputDirectory>-->
|
||||
<!-- ${pom.artifactId}-${pom.version}/repository/deployment/server/jaggeryapps/social/-->
|
||||
<!-- </outputDirectory>-->
|
||||
<!-- <fileMode>755</fileMode>-->
|
||||
<!-- </file>-->
|
||||
<!--<file>-->
|
||||
<!--<source>src/core/jaggeryapps/store/jaggery.conf</source>-->
|
||||
<!--<outputDirectory>-->
|
||||
<!--${pom.artifactId}-${pom.version}/repository/deployment/server/jaggeryapps/store/-->
|
||||
<!--</outputDirectory>-->
|
||||
<!--<fileMode>755</fileMode>-->
|
||||
<!--</file>-->
|
||||
<file>
|
||||
<source>
|
||||
src/core/cloud/portal/common.css
|
||||
@ -1680,14 +1674,14 @@
|
||||
${pom.artifactId}-${pom.version}/conf/
|
||||
</outputDirectory>
|
||||
</file>
|
||||
<file>
|
||||
<source>
|
||||
../p2-profile/iot-core-profile/target/wso2carbon-core-${carbon.kernel.version}/repository/conf/social.xml
|
||||
</source>
|
||||
<outputDirectory>
|
||||
${pom.artifactId}-${pom.version}/conf/
|
||||
</outputDirectory>
|
||||
</file>
|
||||
<!--<file>-->
|
||||
<!--<source>-->
|
||||
<!--../p2-profile/iot-core-profile/target/wso2carbon-core-${carbon.kernel.version}/repository/conf/social.xml-->
|
||||
<!--</source>-->
|
||||
<!--<outputDirectory>-->
|
||||
<!--${pom.artifactId}-${pom.version}/conf/-->
|
||||
<!--</outputDirectory>-->
|
||||
<!--</file>-->
|
||||
<file>
|
||||
<source>
|
||||
../p2-profile/iot-core-profile/target/wso2carbon-core-${carbon.kernel.version}/repository/conf/identity/entitlement.properties
|
||||
@ -1696,14 +1690,14 @@
|
||||
${pom.artifactId}-${pom.version}/conf/identity
|
||||
</outputDirectory>
|
||||
</file>
|
||||
<file>
|
||||
<source>
|
||||
../p2-profile/iot-core-profile/target/wso2carbon-core-${carbon.kernel.version}/wso2/resources/lifecycles/MobileAppLifeCycle.xml
|
||||
</source>
|
||||
<outputDirectory>
|
||||
${pom.artifactId}-${pom.version}/repository/resources/lifecycles
|
||||
</outputDirectory>
|
||||
</file>
|
||||
<!--<file>-->
|
||||
<!--<source>-->
|
||||
<!--../p2-profile/iot-core-profile/target/wso2carbon-core-${carbon.kernel.version}/wso2/resources/lifecycles/MobileAppLifeCycle.xml-->
|
||||
<!--</source>-->
|
||||
<!--<outputDirectory>-->
|
||||
<!--${pom.artifactId}-${pom.version}/repository/resources/lifecycles-->
|
||||
<!--</outputDirectory>-->
|
||||
<!--</file>-->
|
||||
<file>
|
||||
<source>src/core/samples/connectedcup-samples-deployer.xml</source>
|
||||
<outputDirectory>${pom.artifactId}-${pom.version}/samples/</outputDirectory>
|
||||
|
||||
@ -18,7 +18,7 @@
|
||||
|
||||
product.name=Entgra IoT Server
|
||||
product.key=IoT
|
||||
product.version=3.7.0-SNAPSHOT
|
||||
product.version=4.0.0-SNAPSHOT
|
||||
product.doc.version=360
|
||||
|
||||
carbon.version=4.4.26
|
||||
|
||||
@ -193,6 +193,6 @@ goto end
|
||||
|
||||
:invalidUsage
|
||||
echo Usage: carbondump.bat [-carbonHome path] [-pid of the carbon instance]
|
||||
echo e.g. carbondump.bat -carbonHome C:\user\wso2carbon-3.7.0\ -pid 5151
|
||||
echo e.g. carbondump.bat -carbonHome C:\user\wso2carbon-4.0.0\ -pid 5151
|
||||
|
||||
:END
|
||||
|
||||
@ -1,494 +0,0 @@
|
||||
<?xml version="1.0" encoding="UTF-8" ?>
|
||||
|
||||
<AppManager>
|
||||
|
||||
<!--
|
||||
JNDI name of the data source to be used by the app management components such as store, publisher, gateway
|
||||
This data source should be defined in the master-datasources.xml file in conf/datasources directory.
|
||||
-->
|
||||
<DataSourceName>jdbc/WSO2APPM_DB</DataSourceName>
|
||||
<DataSources>
|
||||
<Storage>jdbc/ES_Storage</Storage>
|
||||
</DataSources>
|
||||
|
||||
<APPStoreConfiguration>
|
||||
<!--
|
||||
This parameter specifies whether to display multiple versions of same
|
||||
APP or only showing the latest version of an APP.
|
||||
-->
|
||||
<DisplayMultipleVersions>true</DisplayMultipleVersions>
|
||||
</APPStoreConfiguration>
|
||||
|
||||
<!--subscription configuration is used by gateway,store,publisher-->
|
||||
<SubscriptionConfiguration>
|
||||
<EnableSelfSubscription>false</EnableSelfSubscription>
|
||||
<EnableEnterpriseSubscription>false</EnableEnterpriseSubscription>
|
||||
</SubscriptionConfiguration>
|
||||
|
||||
<!-- The authorization manager configuration to be used by store / publisher components -->
|
||||
<AuthManager>
|
||||
|
||||
<!--
|
||||
Server URL of the Authentication service
|
||||
-->
|
||||
<ServerURL>https://localhost:${mgt.transport.https.port}/services/</ServerURL>
|
||||
|
||||
<!--
|
||||
Admin username for the Authentication manager.
|
||||
-->
|
||||
<Username>admin</Username>
|
||||
|
||||
<!--
|
||||
Admin password for the Authentication manager.
|
||||
-->
|
||||
<Password>admin</Password>
|
||||
|
||||
</AuthManager>
|
||||
|
||||
<!-- The configuration for app discovery service -->
|
||||
<DiscoveryConfiguration>
|
||||
|
||||
<!--
|
||||
Configures the discovery handlers.
|
||||
Discovery handlers are the ones connecting remote servers and discover the applications
|
||||
-->
|
||||
<DiscoveryHandlers>
|
||||
<!-- List of discovery handlers. name is the key being used. Class is the handler class -->
|
||||
<Handler name="WSO2-AS" class="org.wso2.carbon.appmgt.impl.discovery.Wso2AppServerDiscoveryHandler" />
|
||||
</DiscoveryHandlers>
|
||||
|
||||
</DiscoveryConfiguration>
|
||||
|
||||
<!--
|
||||
Configuration parameters for security handlers of the relevant proxy web apps.
|
||||
-->
|
||||
<AppConsumerAuthConfiguration>
|
||||
|
||||
<!-- Timeout (in seconds) for the gateway session cache. -->
|
||||
<SessionTimeout>1800</SessionTimeout>
|
||||
|
||||
<!--
|
||||
Enable/Disable JWT generation. Default is false.
|
||||
-->
|
||||
<EnableTokenGeneration>true</EnableTokenGeneration>
|
||||
|
||||
<!--
|
||||
This parameter specifies which implementation should be used for generating the Token.
|
||||
JWTGenerator is the default implementation provided.
|
||||
-->
|
||||
<TokenGeneratorImpl>org.wso2.carbon.appmgt.impl.token.JWTGenerator</TokenGeneratorImpl>
|
||||
|
||||
<!--
|
||||
Name of the HTTP header which contains the JWT to be sent to the web app, from the gateway.
|
||||
-->
|
||||
<SecurityContextHeader>X-JWT-Assertion</SecurityContextHeader>
|
||||
|
||||
<!--
|
||||
Fully qualified name of the class that will retrieve additional user claims to be appended to the JWT.
|
||||
If not specified no claims will be appended.
|
||||
The DefaultClaimsRetriever class adds user claims from the default carbon user store.
|
||||
-->
|
||||
<ClaimsRetrieverImplClass>org.wso2.carbon.appmgt.impl.token.DefaultClaimsRetriever</ClaimsRetrieverImplClass>
|
||||
|
||||
<!--
|
||||
The dialectURI under which the claimURIs that need to be appended to the JWT are defined.
|
||||
Not used with custom ClaimsRetriever implementations.
|
||||
The same value is used in the keys for appending the default properties to the JWT.
|
||||
-->
|
||||
<ConsumerDialectURI>http://wso2.org/claims</ConsumerDialectURI>
|
||||
|
||||
<!--
|
||||
Signature algorithm for signing the JWT. Accepts "SHA256withRSA" or "NONE".
|
||||
To disable signing explicitly specify "NONE".
|
||||
-->
|
||||
<SignatureAlgorithm>SHA256withRSA</SignatureAlgorithm>
|
||||
|
||||
<!--
|
||||
By default all claim values of default claim dialect uri which mapped to the user profile get added to the JWT token.
|
||||
By setting "AddClaimsSelectively" attribute to true, publisher can select only required claim attributes to each App and include into JWT token.
|
||||
-->
|
||||
<AddClaimsSelectively>false</AddClaimsSelectively>
|
||||
|
||||
<!--
|
||||
Add SAML response as transport header in outgoing message.
|
||||
-->
|
||||
<AddSAMLResponseHeaderToOutMessage>false</AddSAMLResponseHeaderToOutMessage>
|
||||
|
||||
</AppConsumerAuthConfiguration>
|
||||
|
||||
<APIGateway>
|
||||
|
||||
<!-- The environments to which an API will be published -->
|
||||
<Environments>
|
||||
|
||||
<!-- TODO : Get rid of gateway type -->
|
||||
<Environment type="hybrid">
|
||||
|
||||
<Name>Gateway Endpoint</Name>
|
||||
|
||||
<!--
|
||||
Server URL of the API gateway.
|
||||
-->
|
||||
<ServerURL>https://${carbon.local.ip}:${mgt.transport.https.port}/services/</ServerURL>
|
||||
|
||||
<!--
|
||||
Admin username for the API gateway.
|
||||
-->
|
||||
<Username>admin</Username>
|
||||
|
||||
<!--
|
||||
Admin password for the API gateway.
|
||||
-->
|
||||
<Password>admin</Password>
|
||||
|
||||
<!--
|
||||
Endpoint URLs for the APIs hosted in this API gateway.
|
||||
-->
|
||||
<GatewayEndpoint>http://${carbon.local.ip}:${http.nio.port},https://${carbon.local.ip}:${https.nio.port}</GatewayEndpoint>
|
||||
|
||||
</Environment>
|
||||
|
||||
</Environments>
|
||||
|
||||
</APIGateway>
|
||||
|
||||
<!--
|
||||
API usage tracker configuration used by the DAS data publisher and
|
||||
Google Analytics publisher in API gateway.
|
||||
-->
|
||||
<Analytics>
|
||||
|
||||
|
||||
<!--
|
||||
This data source is used to write/read UI Activity changes (eg: App Hit count)
|
||||
to seperate database. When using DAS to analyze the changes it needs to configure this data source appropriately.
|
||||
-->
|
||||
<UIActivityPublishDataSourceName>jdbc/WSO2APPM_DB</UIActivityPublishDataSourceName>
|
||||
|
||||
<!--
|
||||
Enable UI Activity Data publish to DAS
|
||||
-->
|
||||
<UIActivityDASPublishEnabled>false</UIActivityDASPublishEnabled>
|
||||
|
||||
<!--
|
||||
Enable/Disable the API usage tracker.
|
||||
-->
|
||||
<Enabled>false</Enabled>
|
||||
|
||||
<!--
|
||||
API Usage Data Publisher.
|
||||
-->
|
||||
<PublisherClass>org.wso2.carbon.appmgt.usage.publisher.APIMgtUsageDataBridgeDataPublisher</PublisherClass>
|
||||
|
||||
<!--
|
||||
App usage data retrieval client implementation class.
|
||||
-->
|
||||
<StatisticClientProvider>org.wso2.carbon.appmgt.usage.client.impl.AppUsageStatisticsRdbmsClient</StatisticClientProvider>
|
||||
|
||||
<!--
|
||||
Thrift port of the remote DAS server.
|
||||
-->
|
||||
<ThriftPort>7612</ThriftPort>
|
||||
|
||||
<!--
|
||||
Server URL of the remote DAS/CEP server used to collect statistics.
|
||||
Must be specified in protocol://hostname:port/ format.
|
||||
|
||||
An event can also be published to multiple Receiver Groups each having 1 or more receivers.
|
||||
Receiver Groups are delimited by curly braces whereas receivers are delimited by commas.
|
||||
|
||||
e.g. - Multiple Receivers within a single group
|
||||
tcp://localhost:7612/,tcp://localhost:7613/,tcp://localhost:7614/
|
||||
|
||||
e.g. - Multiple Receiver Groups with two receivers each
|
||||
{tcp://localhost:7612/,tcp://localhost:7613},{tcp://localhost:7712/,tcp://localhost:7713/}
|
||||
-->
|
||||
<DASServerURL>tcp://localhost:7612</DASServerURL>
|
||||
|
||||
<!--
|
||||
Administrator username to login to the remote DAS server.
|
||||
-->
|
||||
<DASUsername>admin</DASUsername>
|
||||
|
||||
<!--
|
||||
Administrator password to login to the remote DAS server.
|
||||
-->
|
||||
<DASPassword>admin</DASPassword>
|
||||
|
||||
<DASEventStreams>
|
||||
|
||||
<RequestStreamName>org.wso2.appmgt.statistics.request</RequestStreamName>
|
||||
<RequestStreamVersion>1.0.0</RequestStreamVersion>
|
||||
|
||||
<ResponseStreamName>org.wso2.appmgt.statistics.response</ResponseStreamName>
|
||||
<ResponseStreamVersion>1.0.0</ResponseStreamVersion>
|
||||
|
||||
<FaultStreamName>org.wso2.appmgt.statistics.fault</FaultStreamName>
|
||||
<FaultStreamVersion>1.0.0</FaultStreamVersion>
|
||||
|
||||
<CacheStatStreamName>org.wso2.appmgt.statistics.cache</CacheStatStreamName>
|
||||
<CacheStatStreamVersion>1.0.0</CacheStatStreamVersion>
|
||||
|
||||
<!-- Used when publishing AppManager UI activities to DAS -->
|
||||
<UIActivityStreamName>org.wso2.appmgt.bam.uiactivitypublish</UIActivityStreamName>
|
||||
<UIActivityStreamVersion>1.1.0</UIActivityStreamVersion>
|
||||
|
||||
</DASEventStreams>
|
||||
|
||||
|
||||
<!--
|
||||
JNDI name of the data source to be used for getting DAS statistics.
|
||||
This data source should be defined in the master-datasources.xml file in conf/datasources directory.
|
||||
-->
|
||||
<!--DataSourceName>jdbc/WSO2AM_STATS_DB</DataSourceName-->
|
||||
|
||||
<!--
|
||||
Google Analytics publisher configuration.
|
||||
Create Google Analytics account and obtain a tracking ID.
|
||||
Refer http://support.google.com/analytics/bin/answer.py?hl=en&answer=1009694
|
||||
-->
|
||||
<GoogleAnalyticsTracking>
|
||||
|
||||
<!--
|
||||
Enable/Disable Google Analytics Tracking
|
||||
-->
|
||||
<Enabled>false</Enabled>
|
||||
|
||||
<!--
|
||||
Google Analytics Tracking ID
|
||||
-->
|
||||
<TrackingID>UA-XXXXXXXX-X</TrackingID>
|
||||
|
||||
</GoogleAnalyticsTracking>
|
||||
|
||||
</Analytics>
|
||||
|
||||
<!--
|
||||
Settings related to managing API access tiers.
|
||||
-->
|
||||
<TierManagement>
|
||||
|
||||
<!--
|
||||
Enable the providers to expose their APIs over the special 'Unlimited' tier which
|
||||
basically disables tier based throttling for the specified APIs.
|
||||
-->
|
||||
<EnableUnlimitedTier>true</EnableUnlimitedTier>
|
||||
|
||||
</TierManagement>
|
||||
|
||||
<!--Configuration to enable/disable sending CORS headers in the Gateway response
|
||||
and define the Access-Control-Allow-Origin header value.-->
|
||||
<CORSConfiguration>
|
||||
|
||||
<!--Configuration to enable/disable sending CORS headers from the Gateway-->
|
||||
<Enabled>true</Enabled>
|
||||
|
||||
<!--
|
||||
The value of the Access-Control-Allow-Origin header.
|
||||
Default values are API Store addresses, which is needed for swagger to function.
|
||||
-->
|
||||
<Access-Control-Allow-Origin>https://localhost:9443,http://localhost:9763</Access-Control-Allow-Origin>
|
||||
|
||||
<!--Configure Access-Control-Allow-Headers-->
|
||||
<Access-Control-Allow-Headers>authorization,Access-Control-Allow-Origin,Content-Type</Access-Control-Allow-Headers>
|
||||
|
||||
<!--Configure Access-Control-Allow-Methods-->
|
||||
<Access-Control-Allow-Methods>GET,POST,PUT,DELETE,OPTIONS</Access-Control-Allow-Methods>
|
||||
|
||||
</CORSConfiguration>
|
||||
|
||||
<!--
|
||||
AppManager uses SAML SSO as default authentication mechanism for the web apps.
|
||||
Following configuration defines the configurations of the IDP which is used as the SSO provider.
|
||||
-->
|
||||
<SSOConfiguration>
|
||||
|
||||
<!--Is service providers are created for skip-gateway enabled apps -->
|
||||
<CreateServiceProviderForSkipGatewayApps>false</CreateServiceProviderForSkipGatewayApps>
|
||||
|
||||
<!-- URL of the IDP use for SSO -->
|
||||
<IdentityProviderUrl>https://localhost:${mgt.transport.https.port}/samlsso</IdentityProviderUrl>
|
||||
|
||||
<!-- Postfix of the ACS URL -->
|
||||
<ACSURLPostfix>appm/acs</ACSURLPostfix>
|
||||
|
||||
<!-- Enable SAML Response Signing when adding Service Provider and validate response signature in gateway.
|
||||
If you are switching from false to true, then already created services providers should be updated manully to have response signing true.
|
||||
-->
|
||||
<EnableResponseSigning>true</EnableResponseSigning>
|
||||
|
||||
<!-- Enable SAML Assertion Signing when adding Service Provider and validate assertion signature in gateway.
|
||||
If you are switching from false to true, then already created services providers should be updated manully to have assertion signing true.
|
||||
-->
|
||||
<EnableAssertionSigning>true</EnableAssertionSigning>
|
||||
|
||||
<!-- Validates Assertion expiry time of SAML Response -->
|
||||
<ValidateAssertionExpiry>true</ValidateAssertionExpiry>
|
||||
|
||||
<!-- Timestamp skew applied to SAML Response Validity period. Default set to 5min -->
|
||||
<SAMLResponseValidityTimeStampSkew>300</SAMLResponseValidityTimeStampSkew>
|
||||
|
||||
<!-- This alias is used to validate the signature of the responses form the IDP -->
|
||||
<ResponseSigningKeyAlias>wso2carbon</ResponseSigningKeyAlias>
|
||||
|
||||
<Configurators>
|
||||
<Configurator>
|
||||
<name>wso2is</name>
|
||||
<version>5.0.0</version>
|
||||
<providerClass>org.wso2.carbon.appmgt.impl.idp.sso.configurator.IS500SAMLSSOConfigurator</providerClass>
|
||||
<parameters>
|
||||
<providerURL>https://${carbon.local.ip}:${mgt.transport.https.port}</providerURL>
|
||||
<username>admin</username>
|
||||
<password>admin</password>
|
||||
</parameters>
|
||||
</Configurator>
|
||||
</Configurators>
|
||||
|
||||
</SSOConfiguration>
|
||||
|
||||
<!--
|
||||
Entitlement service is used to manage entitlement policies and evaluate them upon accessing apps.
|
||||
-->
|
||||
<EntitlementServiceConfiguration>
|
||||
|
||||
<Parameters>
|
||||
<ServerUrl>https://${carbon.local.ip}:${mgt.transport.https.port}</ServerUrl>
|
||||
<Username>admin</Username>
|
||||
<Password>admin</Password>
|
||||
</Parameters>
|
||||
|
||||
</EntitlementServiceConfiguration>
|
||||
|
||||
<!-- Configuration to handle Mobile apps and MDM. -->
|
||||
<MobileAppsConfiguration>
|
||||
|
||||
<MDMConfig>
|
||||
<!--
|
||||
Enables the catalog mode of the Mobile App Store. If you change the value of this to true,
|
||||
the Mobile App Store acts as a catalog, which allows you to view apps. However, it doesn't
|
||||
allow you to perform any operations on the apps
|
||||
-->
|
||||
<Config name="IsCatalog">false</Config>
|
||||
|
||||
<!-- Enables app to download direcly to the mobile device from the App Manager without MDM -->
|
||||
<Config name="EnableDirectDownload">false</Config>
|
||||
|
||||
<!-- Enables WSO2 AppM to communicate with the active MDM for performing operations on the mobile apps. -->
|
||||
<Config name="EnableMDMOperations">true</Config>
|
||||
|
||||
<!--
|
||||
Name of the MDM, which is currently active. You need to define the MDM within the <MDMProperties> element.
|
||||
For information on defining a MDM to integrate it with WSO2 AppM, see Integrating a Mobile Device Manager
|
||||
-->
|
||||
<Config name="ActiveMDM">WSO2MDM_INTERNAL</Config>
|
||||
|
||||
<!-- Ability for users to self-unsubscribe from mobile apps -->
|
||||
<Config name="EnableSelfUnsubscription">false</Config>
|
||||
|
||||
<!-- Ability for users to subscribe to mobile apps using mobile devices -->
|
||||
<Config name="EnableSubscriptionFromDevices">true</Config>
|
||||
|
||||
<!-- Enables the sample devices for testing purposes -->
|
||||
<Config name="EnableSampleDevices">false</Config>
|
||||
|
||||
<!--
|
||||
Host of the installation URL of the mobile app, which is sent to the MDM:
|
||||
e.g. %http%, %https%, or a custom host URL
|
||||
-->
|
||||
<Config name="AppDownloadURLHost">%http%</Config>
|
||||
|
||||
<!-- Path of the Property List file generated using the PLIST template for iOS apps. -->
|
||||
<Config name="IosPlistPath">publisher/api/mobileapp/getplist</Config>
|
||||
|
||||
<!-- Ability to enable the enterprise-wide operations on mobile apps -->
|
||||
<Config name="EnterpriseOperations_Enabled">true</Config>
|
||||
|
||||
<!-- The user role, which has the privileges to perform enterprise-wide operations on mobile apps. -->
|
||||
<Config name="EnterpriseOperations_AuthorizedRole">Internal/store-admin</Config>
|
||||
|
||||
</MDMConfig>
|
||||
|
||||
<!-- The properties of the MDMs you need to connect with WSO2 AppM. For information on defining a MDM to integrate it with WSO2 AppM -->
|
||||
<MDMProperties>
|
||||
<!--
|
||||
MDM running on separate JVM. Calls MDM methods via secured REST API. Use this when run Store/Publisher/MDM
|
||||
in deployed in separate JVMs. This will be the most suitable active MDM when deployed on production environment.
|
||||
-->
|
||||
<MDM name="WSO2MDM_EXTERNAL_REST" bundle="org.wso2.carbon.appmgt.mdm.restconnector">
|
||||
<Property name="ImageURL">/store/extensions/assets/mobileapp/resources/models/%s.png</Property>
|
||||
<Property name="ServerURL">https://localhost:9443</Property>
|
||||
<Property name="TokenApiURL">https://localhost:9443/oauth2</Property>
|
||||
<property name="Username">admin</property>
|
||||
<property name="Password">admin</property>
|
||||
<property name="TokenRefreshTimeOffset">100</property>
|
||||
</MDM>
|
||||
|
||||
<!-- Old EMM, Calls EMM using REST API -->
|
||||
<MDM name="WSO2EMM" bundle="org.wso2.carbon.appmgt.mdm.wso2emm">
|
||||
<Property name="ServerURL">https://localhost:9443</Property>
|
||||
<Property name="ImageURL">https://localhost:9443/emm/assets/wso2mobile/img/models/%s.png</Property>
|
||||
<Property name="AuthUser">admin</Property>
|
||||
<Property name="AuthPass">admin</Property>
|
||||
</MDM>
|
||||
|
||||
<!--
|
||||
Internal MDM which dispatches the MDM calls as Java/OSGI calls. Use this when run Store/Publisher/MDM
|
||||
in on single JVM.
|
||||
-->
|
||||
<MDM name="WSO2MDM_INTERNAL" bundle="org.wso2.carbon.appmgt.mdm.osgiconnector">
|
||||
<Property name="ImageURL">/store/extensions/assets/mobileapp/resources/models/%s.png</Property>
|
||||
</MDM>
|
||||
|
||||
<!-- Please uncommnent the following block and define the name in ActiveMDM to activate this MDM -->
|
||||
|
||||
<!--
|
||||
<MDM name="WSO2MDM" bundle="org.wso2.carbon.appmgt.mdm.othermdm">
|
||||
<Property name="serverUrl">https://localhost:9454</Property>
|
||||
</MDM>
|
||||
-->
|
||||
</MDMProperties>
|
||||
<BinaryFileStorage>
|
||||
<FilePreciseLocation>repository/resources/mobileapps/</FilePreciseLocation>
|
||||
<FileAPILocation>/api/mobileapp/getfile/</FileAPILocation>
|
||||
</BinaryFileStorage>
|
||||
|
||||
</MobileAppsConfiguration>
|
||||
|
||||
<BinaryFileStorage>
|
||||
<AbsoluteLocation>${carbon.home}/repository/resources/mobileapps/</AbsoluteLocation>
|
||||
</BinaryFileStorage>
|
||||
|
||||
<!-- Configuration to secure mobile app services.-->
|
||||
<ServicesAPI>
|
||||
<AuthorizedRole>admin</AuthorizedRole>
|
||||
</ServicesAPI>
|
||||
|
||||
<!--These types in the configuration provides a list of enabled types in the APP Manager.
|
||||
If web app is commented, it will be hidden from APP Manager. These type values can be read as artifact types in RXT template -->
|
||||
<EnabledAssetTypeList>
|
||||
<Type>mobileapp</Type>
|
||||
</EnabledAssetTypeList>
|
||||
|
||||
<RESTAPI>
|
||||
<!--Configure publisher and store REST API context path-->
|
||||
<PublisherAPIContextPath>/api/appm/publisher/v1.1</PublisherAPIContextPath>
|
||||
<StoreAPIContextPath>/api/appm/store/v1.1</StoreAPIContextPath>
|
||||
|
||||
<!--Configure white-listed URIs of REST API. Accessing white-listed URIs does not require credentials (does not require Authorization header). -->
|
||||
<WhiteListedURIs>
|
||||
<WhiteListedURI>
|
||||
<URI>/api/appm/store/{version}/apps/mobile/binaries/one-time/{uuid}</URI>
|
||||
<HTTPMethods>GET,HEAD</HTTPMethods>
|
||||
</WhiteListedURI>
|
||||
<WhiteListedURI>
|
||||
<URI>/api/appm/store/{version}/apps/static-contents/{fileName}</URI>
|
||||
<HTTPMethods>GET,HEAD</HTTPMethods>
|
||||
</WhiteListedURI>
|
||||
<WhiteListedURI>
|
||||
<URI>/api/appm/store/{version}/apps/mobile/plist/{appId}/{uuid}</URI>
|
||||
<HTTPMethods>GET,HEAD</HTTPMethods>
|
||||
</WhiteListedURI>
|
||||
</WhiteListedURIs>
|
||||
</RESTAPI>
|
||||
|
||||
</AppManager>
|
||||
@ -43,26 +43,27 @@
|
||||
</definition>
|
||||
</datasource>
|
||||
|
||||
<datasource>
|
||||
<name>WSO2APPM_DB</name>
|
||||
<description>The datasource used for App Manager database</description>
|
||||
<jndiConfig>
|
||||
<name>jdbc/WSO2APPM_DB</name>
|
||||
</jndiConfig>
|
||||
<definition type="RDBMS">
|
||||
<configuration>
|
||||
<url>jdbc:h2:repository/database/WSO2APPM_DB;DB_CLOSE_ON_EXIT=FALSE</url>
|
||||
<username>wso2carbon</username>
|
||||
<password>wso2carbon</password>
|
||||
<driverClassName>org.h2.Driver</driverClassName>
|
||||
<maxActive>50</maxActive>
|
||||
<maxWait>60000</maxWait>
|
||||
<testOnBorrow>true</testOnBorrow>
|
||||
<validationQuery>SELECT 1</validationQuery>
|
||||
<validationInterval>30000</validationInterval>
|
||||
</configuration>
|
||||
</definition>
|
||||
</datasource>
|
||||
<!-- todo remove-->
|
||||
<!-- <datasource>-->
|
||||
<!-- <name>WSO2APPM_DB</name>-->
|
||||
<!-- <description>The datasource used for App Manager database</description>-->
|
||||
<!-- <jndiConfig>-->
|
||||
<!-- <name>jdbc/WSO2APPM_DB</name>-->
|
||||
<!-- </jndiConfig>-->
|
||||
<!-- <definition type="RDBMS">-->
|
||||
<!-- <configuration>-->
|
||||
<!-- <url>jdbc:h2:repository/database/WSO2APPM_DB;DB_CLOSE_ON_EXIT=FALSE</url>-->
|
||||
<!-- <username>wso2carbon</username>-->
|
||||
<!-- <password>wso2carbon</password>-->
|
||||
<!-- <driverClassName>org.h2.Driver</driverClassName>-->
|
||||
<!-- <maxActive>50</maxActive>-->
|
||||
<!-- <maxWait>60000</maxWait>-->
|
||||
<!-- <testOnBorrow>true</testOnBorrow>-->
|
||||
<!-- <validationQuery>SELECT 1</validationQuery>-->
|
||||
<!-- <validationInterval>30000</validationInterval>-->
|
||||
<!-- </configuration>-->
|
||||
<!-- </definition>-->
|
||||
<!-- </datasource>-->
|
||||
|
||||
<datasource>
|
||||
<name>WSO2AM_DB</name>
|
||||
@ -123,25 +124,26 @@
|
||||
</configuration>
|
||||
</definition>
|
||||
</datasource>
|
||||
<datasource>
|
||||
<name>WSO2_SOCIAL_DB</name>
|
||||
<description>The datasource used for Store social database</description>
|
||||
<jndiConfig>
|
||||
<name>jdbc/WSO2_SOCIAL_DB</name>
|
||||
</jndiConfig>
|
||||
<definition type="RDBMS">
|
||||
<configuration>
|
||||
<url>jdbc:h2:repository/database/WSO2_SOCIAL_DB;DB_CLOSE_ON_EXIT=FALSE</url>
|
||||
<username>wso2carbon</username>
|
||||
<password>wso2carbon</password>
|
||||
<driverClassName>org.h2.Driver</driverClassName>
|
||||
<maxActive>50</maxActive>
|
||||
<maxWait>60000</maxWait>
|
||||
<testOnBorrow>true</testOnBorrow>
|
||||
<validationQuery>SELECT 1</validationQuery>
|
||||
<validationInterval>30000</validationInterval>
|
||||
</configuration>
|
||||
</definition>
|
||||
</datasource>
|
||||
<!-- todo remove-->
|
||||
<!-- <datasource>-->
|
||||
<!-- <name>WSO2_SOCIAL_DB</name>-->
|
||||
<!-- <description>The datasource used for Store social database</description>-->
|
||||
<!-- <jndiConfig>-->
|
||||
<!-- <name>jdbc/WSO2_SOCIAL_DB</name>-->
|
||||
<!-- </jndiConfig>-->
|
||||
<!-- <definition type="RDBMS">-->
|
||||
<!-- <configuration>-->
|
||||
<!-- <url>jdbc:h2:repository/database/WSO2_SOCIAL_DB;DB_CLOSE_ON_EXIT=FALSE</url>-->
|
||||
<!-- <username>wso2carbon</username>-->
|
||||
<!-- <password>wso2carbon</password>-->
|
||||
<!-- <driverClassName>org.h2.Driver</driverClassName>-->
|
||||
<!-- <maxActive>50</maxActive>-->
|
||||
<!-- <maxWait>60000</maxWait>-->
|
||||
<!-- <testOnBorrow>true</testOnBorrow>-->
|
||||
<!-- <validationQuery>SELECT 1</validationQuery>-->
|
||||
<!-- <validationInterval>30000</validationInterval>-->
|
||||
<!-- </configuration>-->
|
||||
<!-- </definition>-->
|
||||
<!-- </datasource>-->
|
||||
</datasources>
|
||||
</datasources-configuration>
|
||||
|
||||
@ -8,14 +8,14 @@
|
||||
|
||||
<a href='https://opensource.org/licenses/Apache-2.0'><img src='https://img.shields.io/badge/License-Apache%202.0-blue.svg'></a><br/>
|
||||
|
||||
<h1>Release Note - Entgra IoT Server Version 3.7.0</h1>
|
||||
<h1>Release Note - Entgra IoT Server Version 3.8.0</h1>
|
||||
|
||||
<h2>We are pleased to announce Entgra IoT Server 3.7.0.</h2>
|
||||
<h2>We are pleased to announce Entgra IoT Server 3.8.0.</h2>
|
||||
|
||||
<p>Entgra IoT Server is the successor of WSO2 IoT server and includes capability to manage mobile devices(MDM), manage applications(MAM) and IoT devices in a single environment. It provides best of breed technologies for device manufacturers to develop connected smart products as well as anyone looking for a well established EMM solution to manage devices in their organisations. Entgra IoTs 3.7.0 pays special focus to Kiosk devices and many other EMM improvements.
|
||||
<p>Entgra IoT Server is the successor of WSO2 IoT server and includes capability to manage mobile devices(MDM), manage applications(MAM) and IoT devices in a single environment. It provides best of breed technologies for device manufacturers to develop connected smart products as well as anyone looking for a well established EMM solution to manage devices in their organisations. Entgra IoTs 3.8.0 pays special focus to Kiosk devices and many other EMM improvements.
|
||||
</p>
|
||||
|
||||
<h4>What's new in Entgra IoTS 3.7.0</h4>
|
||||
<h4>What's new in Entgra IoTS 3.8.0</h4>
|
||||
|
||||
<ul>
|
||||
<li>New operation to add Android/iOS application configuration</li>
|
||||
@ -45,11 +45,11 @@
|
||||
|
||||
<h4>Documentation</h4>
|
||||
|
||||
Documentations: <a href='https://entgra-documentation.gitlab.io/v3.7.0/'> Entgra IoT Server Documentation</a>
|
||||
Documentations: <a href='https://entgra-documentation.gitlab.io/v3.8.0/'> Entgra IoT Server Documentation</a>
|
||||
|
||||
<h4>Known Issues</h4>
|
||||
|
||||
The known set of issues this version can be found <a href='https://gitlab.com/entgra/product-iots/issues?scope=all&utf8=✓&state=opened&milestone_title=IoT%203.7.0-GA'> here.</a>
|
||||
The known set of issues this version can be found <a href='https://gitlab.com/entgra/product-iots/issues?scope=all&utf8=✓&state=opened&milestone_title=IoT%203.8.0-GA'> here.</a>
|
||||
|
||||
<h3>Engaging with Community</h3>
|
||||
|
||||
|
||||
@ -27,7 +27,7 @@
|
||||
<modelVersion>4.0.0</modelVersion>
|
||||
<groupId>org.wso2.iot.devicemgt-plugins</groupId>
|
||||
<artifactId>iot-devicetype-feature-installation</artifactId>
|
||||
<version>3.7.0-SNAPSHOT</version>
|
||||
<version>4.0.0-SNAPSHOT</version>
|
||||
<packaging>pom</packaging>
|
||||
<name>Install Virtual Fire Alarm, Raspberry Pi, Arduino, Android Sense Device Types - IoT Core</name>
|
||||
<url>http://wso2.org</url>
|
||||
|
||||
@ -154,6 +154,9 @@
|
||||
<featureArtifactDef>
|
||||
org.wso2.carbon.devicemgt:org.wso2.carbon.email.sender.feature:${carbon.device.mgt.version}
|
||||
</featureArtifactDef>
|
||||
<featureArtifactDef>
|
||||
io.entgra.devicemgt:io.entgra.ui.request.interceptor.feature:${carbon.device.mgt.version}
|
||||
</featureArtifactDef>
|
||||
<featureArtifactDef>
|
||||
org.wso2.carbon.devicemgt:org.wso2.carbon.device.mgt.extensions.device.type.deployer.feature:${carbon.device.mgt.version}
|
||||
</featureArtifactDef>
|
||||
@ -451,50 +454,68 @@
|
||||
</featureArtifactDef>
|
||||
|
||||
<!-- Mobile Device Management Features -->
|
||||
<featureArtifactDef>
|
||||
org.wso2.carbon.devicemgt-plugins:org.wso2.carbon.appmgt.mdm.osgiconnector.feature:${carbon.device.mgt.plugin.version}
|
||||
</featureArtifactDef>
|
||||
<featureArtifactDef>
|
||||
org.wso2.carbon.devicemgt-plugins:org.wso2.carbon.appmgt.mdm.restconnector.feature:${carbon.device.mgt.plugin.version}
|
||||
</featureArtifactDef>
|
||||
<!--<featureArtifactDef>-->
|
||||
<!--org.wso2.carbon.devicemgt-plugins:org.wso2.carbon.appmgt.mdm.osgiconnector.feature:${carbon.device.mgt.plugin.version}-->
|
||||
<!--</featureArtifactDef>-->
|
||||
<!--<featureArtifactDef>-->
|
||||
<!--org.wso2.carbon.devicemgt-plugins:org.wso2.carbon.appmgt.mdm.restconnector.feature:${carbon.device.mgt.plugin.version}-->
|
||||
<!--</featureArtifactDef>-->
|
||||
<!-- Mobile Device Management Features END -->
|
||||
|
||||
<!-- APPM Features -->
|
||||
<featureArtifactDef>
|
||||
org.wso2.carbon.appmgt:org.wso2.carbon.appmgt.core.feature:${appmgt.feature.version}
|
||||
</featureArtifactDef>
|
||||
<featureArtifactDef>
|
||||
org.wso2.carbon.appmgt:org.wso2.carbon.appmgt.mdm.wso2emm.feature:${appmgt.feature.version}
|
||||
</featureArtifactDef>
|
||||
<featureArtifactDef>
|
||||
org.wso2.carbon.appmgt:org.wso2.carbon.appmgt.mobile.feature:${appmgt.feature.version}
|
||||
</featureArtifactDef>
|
||||
<featureArtifactDef>
|
||||
org.wso2.carbon.appmgt:org.wso2.carbon.appmgt.publisher.feature:${appmgt.feature.version}
|
||||
</featureArtifactDef>
|
||||
<featureArtifactDef>
|
||||
org.wso2.carbon.appmgt:org.wso2.carbon.appmgt.services.api.feature:${appmgt.feature.version}
|
||||
</featureArtifactDef>
|
||||
<featureArtifactDef>
|
||||
org.wso2.carbon.store:org.wso2.store.feature:${carbon.store.version}
|
||||
</featureArtifactDef>
|
||||
<featureArtifactDef>
|
||||
org.wso2.carbon.appmgt:org.wso2.carbon.appmgt.store.feature:${appmgt.feature.version}
|
||||
</featureArtifactDef>
|
||||
<featureArtifactDef>
|
||||
org.wso2.carbon.store:org.wso2.carbon.social.feature:${carbon.store.version}
|
||||
</featureArtifactDef>
|
||||
<featureArtifactDef>
|
||||
org.wso2.carbon.appmgt:org.wso2.carbon.appmgt.oauth.feature:${appmgt.feature.version}
|
||||
</featureArtifactDef>
|
||||
<featureArtifactDef>
|
||||
org.wso2.carbon.appmgt:org.wso2.carbon.appmgt.rest.api.store.feature:${appmgt.feature.version}
|
||||
</featureArtifactDef>
|
||||
<featureArtifactDef>
|
||||
org.wso2.carbon.appmgt:org.wso2.carbon.appmgt.rest.api.publisher.feature:${appmgt.feature.version}
|
||||
</featureArtifactDef>
|
||||
<!--<featureArtifactDef>-->
|
||||
<!--org.wso2.carbon.appmgt:org.wso2.carbon.appmgt.core.feature:${appmgt.feature.version}-->
|
||||
<!--</featureArtifactDef>-->
|
||||
<!--<featureArtifactDef>-->
|
||||
<!--org.wso2.carbon.appmgt:org.wso2.carbon.appmgt.mdm.wso2emm.feature:${appmgt.feature.version}-->
|
||||
<!--</featureArtifactDef>-->
|
||||
<!--<featureArtifactDef>-->
|
||||
<!--org.wso2.carbon.appmgt:org.wso2.carbon.appmgt.mobile.feature:${appmgt.feature.version}-->
|
||||
<!--</featureArtifactDef>-->
|
||||
<!--<featureArtifactDef>-->
|
||||
<!--org.wso2.carbon.appmgt:org.wso2.carbon.appmgt.publisher.feature:${appmgt.feature.version}-->
|
||||
<!--</featureArtifactDef>-->
|
||||
<!--<featureArtifactDef>-->
|
||||
<!--org.wso2.carbon.appmgt:org.wso2.carbon.appmgt.services.api.feature:${appmgt.feature.version}-->
|
||||
<!--</featureArtifactDef>-->
|
||||
<!--<featureArtifactDef>-->
|
||||
<!--org.wso2.carbon.store:org.wso2.store.feature:${carbon.store.version}-->
|
||||
<!--</featureArtifactDef>-->
|
||||
<!--<featureArtifactDef>-->
|
||||
<!--org.wso2.carbon.appmgt:org.wso2.carbon.appmgt.store.feature:${appmgt.feature.version}-->
|
||||
<!--</featureArtifactDef>-->
|
||||
<!--<featureArtifactDef>-->
|
||||
<!--org.wso2.carbon.store:org.wso2.carbon.social.feature:${carbon.store.version}-->
|
||||
<!--</featureArtifactDef>-->
|
||||
<!--<featureArtifactDef>-->
|
||||
<!--org.wso2.carbon.appmgt:org.wso2.carbon.appmgt.oauth.feature:${appmgt.feature.version}-->
|
||||
<!--</featureArtifactDef>-->
|
||||
<!--<featureArtifactDef>-->
|
||||
<!--org.wso2.carbon.appmgt:org.wso2.carbon.appmgt.rest.api.store.feature:${appmgt.feature.version}-->
|
||||
<!--</featureArtifactDef>-->
|
||||
<!--<featureArtifactDef>-->
|
||||
<!--org.wso2.carbon.appmgt:org.wso2.carbon.appmgt.rest.api.publisher.feature:${appmgt.feature.version}-->
|
||||
<!--</featureArtifactDef>-->
|
||||
<!-- APPM Features END -->
|
||||
|
||||
|
||||
<!-- New App Manager Features-->
|
||||
|
||||
<featureArtifactDef>
|
||||
org.wso2.carbon.devicemgt:org.wso2.carbon.device.application.mgt.api.feature:${carbon.device.mgt.version}
|
||||
</featureArtifactDef>
|
||||
<featureArtifactDef>
|
||||
org.wso2.carbon.devicemgt:org.wso2.carbon.device.application.mgt.publisher.ui.feature:${carbon.device.mgt.version}
|
||||
</featureArtifactDef>
|
||||
<featureArtifactDef>
|
||||
org.wso2.carbon.devicemgt:org.wso2.carbon.device.application.mgt.server.feature:${carbon.device.mgt.version}
|
||||
</featureArtifactDef>
|
||||
<featureArtifactDef>
|
||||
org.wso2.carbon.devicemgt:org.wso2.carbon.device.application.mgt.store.ui.feature:${carbon.device.mgt.version}
|
||||
</featureArtifactDef>
|
||||
|
||||
<!-- End of New App Manager Features-->
|
||||
|
||||
<!-- Dashboards Features -->
|
||||
<featureArtifactDef>
|
||||
org.wso2.carbon.dashboards:org.wso2.carbon.dashboards.shindig.feature:${carbon.dashboard.version}
|
||||
@ -909,63 +930,87 @@
|
||||
</feature>
|
||||
<!-- End of IoTServer Features -->
|
||||
<!-- Mobile Features -->
|
||||
<feature>
|
||||
<id>org.wso2.carbon.appmgt.mdm.osgiconnector.feature.group</id>
|
||||
<version>${carbon.device.mgt.plugin.version}</version>
|
||||
</feature>
|
||||
<feature>
|
||||
<id>org.wso2.carbon.appmgt.mdm.restconnector.feature.group</id>
|
||||
<version>${carbon.device.mgt.plugin.version}</version>
|
||||
</feature>
|
||||
<!--<feature>-->
|
||||
<!--<id>org.wso2.carbon.appmgt.mdm.osgiconnector.feature.group</id>-->
|
||||
<!--<version>${carbon.device.mgt.plugin.version}</version>-->
|
||||
<!--</feature>-->
|
||||
<!--<feature>-->
|
||||
<!--<id>org.wso2.carbon.appmgt.mdm.restconnector.feature.group</id>-->
|
||||
<!--<version>${carbon.device.mgt.plugin.version}</version>-->
|
||||
<!--</feature>-->
|
||||
<!-- End of Mobile Features -->
|
||||
|
||||
<!-- App management features-->
|
||||
<feature>
|
||||
<id>org.wso2.carbon.appmgt.core.feature.group</id>
|
||||
<version>${appmgt.feature.version}</version>
|
||||
</feature>
|
||||
<feature>
|
||||
<id>org.wso2.carbon.appmgt.mdm.wso2emm.feature.group</id>
|
||||
<version>${appmgt.feature.version}</version>
|
||||
</feature>
|
||||
<feature>
|
||||
<id>org.wso2.carbon.appmgt.mobile.feature.group</id>
|
||||
<version>${appmgt.feature.version}</version>
|
||||
</feature>
|
||||
<feature>
|
||||
<id>org.wso2.carbon.appmgt.publisher.feature.group</id>
|
||||
<version>${appmgt.feature.version}</version>
|
||||
</feature>
|
||||
<feature>
|
||||
<id>org.wso2.carbon.appmgt.services.api.feature.group</id>
|
||||
<version>${appmgt.feature.version}</version>
|
||||
</feature>
|
||||
<feature>
|
||||
<id>org.wso2.carbon.store.feature.group</id>
|
||||
<version>${carbon.store.version}</version>
|
||||
</feature>
|
||||
<feature>
|
||||
<id>org.wso2.carbon.appmgt.store.feature.group</id>
|
||||
<version>${appmgt.feature.version}</version>
|
||||
</feature>
|
||||
<feature>
|
||||
<id>org.wso2.carbon.social.feature.group</id>
|
||||
<version>${carbon.store.version}</version>
|
||||
</feature>
|
||||
<feature>
|
||||
<id>org.wso2.carbon.appmgt.rest.api.store.feature.group</id>
|
||||
<version>${appmgt.feature.version}</version>
|
||||
</feature>
|
||||
<feature>
|
||||
<id>org.wso2.carbon.appmgt.rest.api.publisher.feature.group</id>
|
||||
<version>${appmgt.feature.version}</version>
|
||||
</feature>
|
||||
<feature>
|
||||
<id>org.wso2.carbon.appmgt.oauth.feature.group</id>
|
||||
<version>${appmgt.feature.version}</version>
|
||||
</feature>
|
||||
<!--<feature>-->
|
||||
<!--<id>org.wso2.carbon.appmgt.core.feature.group</id>-->
|
||||
<!--<version>${appmgt.feature.version}</version>-->
|
||||
<!--</feature>-->
|
||||
<!--<feature>-->
|
||||
<!--<id>org.wso2.carbon.appmgt.mdm.wso2emm.feature.group</id>-->
|
||||
<!--<version>${appmgt.feature.version}</version>-->
|
||||
<!--</feature>-->
|
||||
<!--<feature>-->
|
||||
<!--<id>org.wso2.carbon.appmgt.mobile.feature.group</id>-->
|
||||
<!--<version>${appmgt.feature.version}</version>-->
|
||||
<!--</feature>-->
|
||||
<!--<feature>-->
|
||||
<!--<id>org.wso2.carbon.appmgt.publisher.feature.group</id>-->
|
||||
<!--<version>${appmgt.feature.version}</version>-->
|
||||
<!--</feature>-->
|
||||
<!--<feature>-->
|
||||
<!--<id>org.wso2.carbon.appmgt.services.api.feature.group</id>-->
|
||||
<!--<version>${appmgt.feature.version}</version>-->
|
||||
<!--</feature>-->
|
||||
<!--<feature>-->
|
||||
<!--<id>org.wso2.carbon.store.feature.group</id>-->
|
||||
<!--<version>${carbon.store.version}</version>-->
|
||||
<!--</feature>-->
|
||||
<!--<feature>-->
|
||||
<!--<id>org.wso2.carbon.appmgt.store.feature.group</id>-->
|
||||
<!--<version>${appmgt.feature.version}</version>-->
|
||||
<!--</feature>-->
|
||||
<!--<feature>-->
|
||||
<!--<id>org.wso2.carbon.social.feature.group</id>-->
|
||||
<!--<version>${carbon.store.version}</version>-->
|
||||
<!--</feature>-->
|
||||
<!--<feature>-->
|
||||
<!--<id>org.wso2.carbon.appmgt.rest.api.store.feature.group</id>-->
|
||||
<!--<version>${appmgt.feature.version}</version>-->
|
||||
<!--</feature>-->
|
||||
<!--<feature>-->
|
||||
<!--<id>org.wso2.carbon.appmgt.rest.api.publisher.feature.group</id>-->
|
||||
<!--<version>${appmgt.feature.version}</version>-->
|
||||
<!--</feature>-->
|
||||
<!--<feature>-->
|
||||
<!--<id>org.wso2.carbon.appmgt.oauth.feature.group</id>-->
|
||||
<!--<version>${appmgt.feature.version}</version>-->
|
||||
<!--</feature>-->
|
||||
<!-- End of app management features-->
|
||||
|
||||
<!-- New App Manager Features-->
|
||||
|
||||
<feature>
|
||||
<id>org.wso2.carbon.device.application.mgt.api.feature.group</id>
|
||||
<version>${carbon.device.mgt.version}</version>
|
||||
</feature>
|
||||
|
||||
<feature>
|
||||
<id>org.wso2.carbon.device.application.mgt.publisher.ui.feature.group</id>
|
||||
<version>${carbon.device.mgt.version}</version>
|
||||
</feature>
|
||||
|
||||
<feature>
|
||||
<id>org.wso2.carbon.device.application.mgt.server.feature.group</id>
|
||||
<version>${carbon.device.mgt.version}</version>
|
||||
</feature>
|
||||
|
||||
<feature>
|
||||
<id>org.wso2.carbon.device.application.mgt.store.ui.feature.group</id>
|
||||
<version>${carbon.device.mgt.version}</version>
|
||||
</feature>
|
||||
|
||||
<!-- End of New App Manager Features-->
|
||||
|
||||
<!-- Device Management Features -->
|
||||
<feature>
|
||||
<id>org.wso2.carbon.device.mgt.feature.group</id>
|
||||
@ -991,6 +1036,10 @@
|
||||
<id>org.wso2.carbon.email.sender.feature.group</id>
|
||||
<version>${carbon.device.mgt.version}</version>
|
||||
</feature>
|
||||
<feature>
|
||||
<id>io.entgra.ui.request.interceptor.feature.group</id>
|
||||
<version>${carbon.device.mgt.version}</version>
|
||||
</feature>
|
||||
<feature>
|
||||
<id>org.wso2.carbon.certificate.mgt.server.feature.group</id>
|
||||
<version>${carbon.device.mgt.version}</version>
|
||||
@ -1989,44 +2038,18 @@
|
||||
<version>${project.version}</version>
|
||||
</feature>
|
||||
<!-- End of IoTServer Features -->
|
||||
<!-- App management features-->
|
||||
|
||||
<feature>
|
||||
<id>org.wso2.carbon.appmgt.core.feature.group</id>
|
||||
<version>${appmgt.feature.version}</version>
|
||||
<id>org.wso2.carbon.device.application.mgt.api.feature.group</id>
|
||||
<version>${carbon.device.mgt.version}</version>
|
||||
</feature>
|
||||
|
||||
<feature>
|
||||
<id>org.wso2.carbon.appmgt.mdm.wso2emm.feature.group</id>
|
||||
<version>${appmgt.feature.version}</version>
|
||||
<id>org.wso2.carbon.device.application.mgt.server.feature.group</id>
|
||||
<version>${carbon.device.mgt.version}</version>
|
||||
</feature>
|
||||
<feature>
|
||||
<id>org.wso2.carbon.appmgt.mobile.feature.group</id>
|
||||
<version>${appmgt.feature.version}</version>
|
||||
</feature>
|
||||
<feature>
|
||||
<id>org.wso2.carbon.appmgt.services.api.feature.group</id>
|
||||
<version>${appmgt.feature.version}</version>
|
||||
</feature>
|
||||
<feature>
|
||||
<id>org.wso2.carbon.appmgt.mdm.osgiconnector.feature.group</id>
|
||||
<version>${carbon.device.mgt.plugin.version}</version>
|
||||
</feature>
|
||||
<feature>
|
||||
<id>org.wso2.carbon.appmgt.mdm.restconnector.feature.group</id>
|
||||
<version>${carbon.device.mgt.plugin.version}</version>
|
||||
</feature>
|
||||
<feature>
|
||||
<id>org.wso2.carbon.appmgt.rest.api.store.feature.group</id>
|
||||
<version>${appmgt.feature.version}</version>
|
||||
</feature>
|
||||
<feature>
|
||||
<id>org.wso2.carbon.appmgt.rest.api.publisher.feature.group</id>
|
||||
<version>${appmgt.feature.version}</version>
|
||||
</feature>
|
||||
<feature>
|
||||
<id>org.wso2.carbon.appmgt.oauth.feature.group</id>
|
||||
<version>${appmgt.feature.version}</version>
|
||||
</feature>
|
||||
<!-- End of app management features-->
|
||||
|
||||
<!-- End of New App Manager Features-->
|
||||
|
||||
<!-- Dashboard Features -->
|
||||
<feature>
|
||||
@ -2073,6 +2096,10 @@
|
||||
<id>org.wso2.carbon.email.sender.feature.group</id>
|
||||
<version>${carbon.device.mgt.version}</version>
|
||||
</feature>
|
||||
<feature>
|
||||
<id>io.entgra.ui.request.interceptor.feature.group</id>
|
||||
<version>${carbon.device.mgt.version}</version>
|
||||
</feature>
|
||||
<feature>
|
||||
<id>org.wso2.carbon.certificate.mgt.api.feature.group</id>
|
||||
<version>${carbon.device.mgt.version}</version>
|
||||
@ -2260,10 +2287,10 @@
|
||||
<id>org.wso2.carbon.service.mgt.server.feature.group</id>
|
||||
<version>${carbon.deployment.version}</version>
|
||||
</feature>
|
||||
<feature>
|
||||
<id>org.wso2.carbon.social.feature.group</id>
|
||||
<version>${carbon.store.version}</version>
|
||||
</feature>
|
||||
<!--<feature>-->
|
||||
<!--<id>org.wso2.carbon.social.feature.group</id>-->
|
||||
<!--<version>${carbon.store.version}</version>-->
|
||||
<!--</feature>-->
|
||||
<feature>
|
||||
<id>org.wso2.carbon.registry.core.feature.group</id>
|
||||
<version>${carbon.registry.version}</version>
|
||||
@ -2639,49 +2666,64 @@
|
||||
<id>org.wso2.iot.core.styles.feature.group</id>
|
||||
<version>${project.version}</version>
|
||||
</feature>
|
||||
|
||||
<!-- New App Manager Features-->
|
||||
|
||||
<feature>
|
||||
<id>org.wso2.carbon.device.application.mgt.api.feature.group</id>
|
||||
<version>${carbon.device.mgt.version}</version>
|
||||
</feature>
|
||||
|
||||
<feature>
|
||||
<id>org.wso2.carbon.device.application.mgt.server.feature.group</id>
|
||||
<version>${carbon.device.mgt.version}</version>
|
||||
</feature>
|
||||
|
||||
<!-- End of New App Manager Features-->
|
||||
|
||||
<!-- End of IoTServer Features -->
|
||||
|
||||
<!-- App management features-->
|
||||
<feature>
|
||||
<id>org.wso2.carbon.appmgt.core.feature.group</id>
|
||||
<version>${appmgt.feature.version}</version>
|
||||
</feature>
|
||||
<feature>
|
||||
<id>org.wso2.carbon.appmgt.mdm.wso2emm.feature.group</id>
|
||||
<version>${appmgt.feature.version}</version>
|
||||
</feature>
|
||||
<feature>
|
||||
<id>org.wso2.carbon.appmgt.mobile.feature.group</id>
|
||||
<version>${appmgt.feature.version}</version>
|
||||
</feature>
|
||||
<feature>
|
||||
<id>org.wso2.carbon.appmgt.publisher.feature.group</id>
|
||||
<version>${appmgt.feature.version}</version>
|
||||
</feature>
|
||||
<feature>
|
||||
<id>org.wso2.carbon.appmgt.services.api.feature.group</id>
|
||||
<version>${appmgt.feature.version}</version>
|
||||
</feature>
|
||||
<feature>
|
||||
<id>org.wso2.carbon.store.feature.group</id>
|
||||
<version>${carbon.store.version}</version>
|
||||
</feature>
|
||||
<feature>
|
||||
<id>org.wso2.carbon.appmgt.store.feature.group</id>
|
||||
<version>${appmgt.feature.version}</version>
|
||||
</feature>
|
||||
<feature>
|
||||
<id>org.wso2.carbon.social.feature.group</id>
|
||||
<version>${carbon.store.version}</version>
|
||||
</feature>
|
||||
<feature>
|
||||
<id>org.wso2.carbon.appmgt.mdm.osgiconnector.feature.group</id>
|
||||
<version>${carbon.device.mgt.plugin.version}</version>
|
||||
</feature>
|
||||
<feature>
|
||||
<id>org.wso2.carbon.appmgt.mdm.restconnector.feature.group</id>
|
||||
<version>${carbon.device.mgt.plugin.version}</version>
|
||||
</feature>
|
||||
<!--<feature>-->
|
||||
<!--<id>org.wso2.carbon.appmgt.core.feature.group</id>-->
|
||||
<!--<version>${appmgt.feature.version}</version>-->
|
||||
<!--</feature>-->
|
||||
<!--<feature>-->
|
||||
<!--<id>org.wso2.carbon.appmgt.mdm.wso2emm.feature.group</id>-->
|
||||
<!--<version>${appmgt.feature.version}</version>-->
|
||||
<!--</feature>-->
|
||||
<!--<feature>-->
|
||||
<!--<id>org.wso2.carbon.appmgt.mobile.feature.group</id>-->
|
||||
<!--<version>${appmgt.feature.version}</version>-->
|
||||
<!--</feature>-->
|
||||
<!--<feature>-->
|
||||
<!--<id>org.wso2.carbon.appmgt.publisher.feature.group</id>-->
|
||||
<!--<version>${appmgt.feature.version}</version>-->
|
||||
<!--</feature>-->
|
||||
<!--<feature>-->
|
||||
<!--<id>org.wso2.carbon.appmgt.services.api.feature.group</id>-->
|
||||
<!--<version>${appmgt.feature.version}</version>-->
|
||||
<!--</feature>-->
|
||||
<!--<feature>-->
|
||||
<!--<id>org.wso2.carbon.store.feature.group</id>-->
|
||||
<!--<version>${carbon.store.version}</version>-->
|
||||
<!--</feature>-->
|
||||
<!--<feature>-->
|
||||
<!--<id>org.wso2.carbon.appmgt.store.feature.group</id>-->
|
||||
<!--<version>${appmgt.feature.version}</version>-->
|
||||
<!--</feature>-->
|
||||
<!--<feature>-->
|
||||
<!--<id>org.wso2.carbon.social.feature.group</id>-->
|
||||
<!--<version>${carbon.store.version}</version>-->
|
||||
<!--</feature>-->
|
||||
<!--<feature>-->
|
||||
<!--<id>org.wso2.carbon.appmgt.mdm.osgiconnector.feature.group</id>-->
|
||||
<!--<version>${carbon.device.mgt.plugin.version}</version>-->
|
||||
<!--</feature>-->
|
||||
<!--<feature>-->
|
||||
<!--<id>org.wso2.carbon.appmgt.mdm.restconnector.feature.group</id>-->
|
||||
<!--<version>${carbon.device.mgt.plugin.version}</version>-->
|
||||
<!--</feature>-->
|
||||
<!-- End of app management features-->
|
||||
|
||||
<feature>
|
||||
@ -2714,6 +2756,10 @@
|
||||
<id>org.wso2.carbon.email.sender.feature.group</id>
|
||||
<version>${carbon.device.mgt.version}</version>
|
||||
</feature>
|
||||
<feature>
|
||||
<id>io.entgra.ui.request.interceptor.feature.group</id>
|
||||
<version>${carbon.device.mgt.version}</version>
|
||||
</feature>
|
||||
<feature>
|
||||
<id>org.wso2.carbon.certificate.mgt.server.feature.group</id>
|
||||
<version>${carbon.device.mgt.version}</version>
|
||||
|
||||
@ -1,5 +1,5 @@
|
||||
|
||||
WSO2 IoTs 3.7.0 QSG Setup Guide
|
||||
WSO2 IoTs 3.8.0 QSG Setup Guide
|
||||
---------------------------------
|
||||
|
||||
1. Start the WSO2 IoTS server
|
||||
|
||||
@ -1,194 +0,0 @@
|
||||
/*
|
||||
* Copyright (c) 2017, WSO2 Inc. (http://www.wso2.org) All Rights Reserved.
|
||||
*
|
||||
* WSO2 Inc. 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.
|
||||
*/
|
||||
|
||||
package org.wso2.mdm.qsg;
|
||||
|
||||
import org.json.simple.JSONArray;
|
||||
import org.json.simple.JSONObject;
|
||||
import org.json.simple.parser.JSONParser;
|
||||
import org.json.simple.parser.ParseException;
|
||||
import org.wso2.mdm.qsg.dto.EMMQSGConfig;
|
||||
import org.wso2.mdm.qsg.dto.HTTPResponse;
|
||||
import org.wso2.mdm.qsg.dto.MobileApplication;
|
||||
import org.wso2.mdm.qsg.utils.Constants;
|
||||
import org.wso2.mdm.qsg.utils.HTTPInvoker;
|
||||
import org.wso2.mdm.qsg.utils.QSGUtils;
|
||||
|
||||
import java.io.File;
|
||||
import java.util.HashMap;
|
||||
|
||||
/**
|
||||
* This class holds the app-mgt related operations.
|
||||
*/
|
||||
public class AppOperations {
|
||||
|
||||
private static String appmPublisherMobileBinariesUrl = "/api/appm/publisher/v1.1/apps/mobile/binaries";
|
||||
private static String appmPublisherResourcesUrl = "/api/appm/publisher/v1.1/apps/static-contents?appType=mobileapp";
|
||||
private static String appmPublisherAppsUrl = "/api/appm/publisher/v1.1/apps/mobileapp";
|
||||
|
||||
|
||||
public static MobileApplication uploadApplication(String platform, String appName, String appContentType) {
|
||||
|
||||
String appUploadEndpoint = EMMQSGConfig.getInstance().getEmmHost() + appmPublisherMobileBinariesUrl;
|
||||
String filePath = "apps" + File.separator + platform + File.separator + appName;
|
||||
HTTPResponse httpResponse = HTTPInvoker.uploadFile(appUploadEndpoint, filePath, appContentType);
|
||||
if (Constants.HTTPStatus.OK == httpResponse.getResponseCode()) {
|
||||
JSONObject appMeta = null;
|
||||
MobileApplication application = new MobileApplication();
|
||||
try {
|
||||
appMeta = (JSONObject) new JSONParser().parse(httpResponse.getResponse());
|
||||
application.setPackageId((String) appMeta.get("package"));
|
||||
application.setAppId(QSGUtils.getResourceId((String) appMeta.get("path")));
|
||||
application.setVersion((String) appMeta.get("version"));
|
||||
application.setPlatform(platform);
|
||||
} catch (ParseException e) {
|
||||
e.printStackTrace();
|
||||
}
|
||||
return application;
|
||||
}
|
||||
return null;
|
||||
}
|
||||
|
||||
public static MobileApplication getPublicApplication(String packageId, String version, String platform) {
|
||||
MobileApplication application = new MobileApplication();
|
||||
application.setVersion(version);
|
||||
application.setPackageId(packageId);
|
||||
application.setPlatform(platform);
|
||||
return application;
|
||||
}
|
||||
|
||||
private static String uploadAsset(String path) {
|
||||
|
||||
String resUploadEndpoint = EMMQSGConfig.getInstance().getEmmHost() + appmPublisherResourcesUrl;
|
||||
HTTPResponse httpResponse = HTTPInvoker.uploadFile(resUploadEndpoint, path, "image/jpeg");
|
||||
if (Constants.HTTPStatus.OK == httpResponse.getResponseCode()) {
|
||||
JSONObject resp = null;
|
||||
try {
|
||||
resp = (JSONObject) new JSONParser().parse(httpResponse.getResponse());
|
||||
return (String) resp.get("id");
|
||||
} catch (ParseException e) {
|
||||
e.printStackTrace();
|
||||
}
|
||||
}
|
||||
return null;
|
||||
}
|
||||
|
||||
public static MobileApplication uploadAssets(String platform, MobileApplication application) {
|
||||
|
||||
String assetDir = "apps" + File.separator + platform + File.separator + "images";
|
||||
//Upload the icon file
|
||||
String imgFile = assetDir + File.separator + "icon.jpg";
|
||||
String uploadPath = uploadAsset(imgFile);
|
||||
if (uploadPath != null && !uploadPath.isEmpty()) {
|
||||
application.setIcon(uploadPath);
|
||||
} else {
|
||||
System.out.println("Unable to upload the app icon file.");
|
||||
return null;
|
||||
}
|
||||
|
||||
//Upload the banner file
|
||||
imgFile = assetDir + File.separator + "banner.jpg";
|
||||
uploadPath = uploadAsset(imgFile);
|
||||
if (uploadPath != null && !uploadPath.isEmpty()) {
|
||||
application.setBanner(uploadPath);
|
||||
} else {
|
||||
System.out.println("Unable to upload the app banner file.");
|
||||
return null;
|
||||
}
|
||||
|
||||
//Upload the screenshot1 file
|
||||
imgFile = assetDir + File.separator + "screen1.jpg";
|
||||
uploadPath = uploadAsset(imgFile);
|
||||
if (uploadPath != null && !uploadPath.isEmpty()) {
|
||||
application.setScreenshot1(uploadPath);
|
||||
} else {
|
||||
System.out.println("Unable to upload the app screenshot1 file.");
|
||||
return null;
|
||||
}
|
||||
|
||||
//Upload the screenshot2 file
|
||||
imgFile = assetDir + File.separator + "screen2.jpg";
|
||||
uploadPath = uploadAsset(imgFile);
|
||||
if (uploadPath != null && !uploadPath.isEmpty()) {
|
||||
application.setScreenshot2(uploadPath);
|
||||
} else {
|
||||
System.out.println("Unable to upload the app screenshot2 file.");
|
||||
return null;
|
||||
}
|
||||
|
||||
//Upload the screenshot3 file
|
||||
imgFile = assetDir + File.separator + "screen3.jpg";
|
||||
uploadPath = uploadAsset(imgFile);
|
||||
if (uploadPath != null && !uploadPath.isEmpty()) {
|
||||
application.setScreenshot3(uploadPath);
|
||||
} else {
|
||||
System.out.println("Unable to upload the app screenshot3 file.");
|
||||
return null;
|
||||
}
|
||||
return application;
|
||||
}
|
||||
|
||||
public static boolean addApplication(String name, MobileApplication mblApp, boolean isEnterpriseApp) {
|
||||
HashMap<String, String> headers = new HashMap<String, String>();
|
||||
|
||||
String appEndpoint = EMMQSGConfig.getInstance().getEmmHost() + appmPublisherAppsUrl;
|
||||
//Set the application payload
|
||||
JSONObject application = new JSONObject();
|
||||
application.put("name", name);
|
||||
application.put("description", "Sample application");
|
||||
application.put("type", "enterprise");
|
||||
//Set appMeta data
|
||||
JSONObject appMeta = new JSONObject();
|
||||
appMeta.put("package", mblApp.getPackageId());
|
||||
appMeta.put("version", mblApp.getVersion());
|
||||
if (isEnterpriseApp) {
|
||||
application.put("marketType", "enterprise");
|
||||
appMeta.put("path", mblApp.getAppId());
|
||||
} else {
|
||||
application.put("marketType", "public");
|
||||
}
|
||||
application.put("provider", "admin");
|
||||
application.put("displayName", name);
|
||||
application.put("category", "Business");
|
||||
application.put("thumbnailUrl", mblApp.getIcon());
|
||||
application.put("version", mblApp.getVersion());
|
||||
application.put("banner", mblApp.getBanner());
|
||||
application.put("platform", mblApp.getPlatform());
|
||||
application.put("appType", mblApp.getPlatform());
|
||||
//application.put("appUrL", mblApp.getAppId());
|
||||
application.put("mediaType", "application/vnd.wso2-mobileapp+xml");
|
||||
|
||||
//Set screenshots
|
||||
JSONArray screenshots = new JSONArray();
|
||||
screenshots.add(mblApp.getScreenshot1());
|
||||
screenshots.add(mblApp.getScreenshot2());
|
||||
screenshots.add(mblApp.getScreenshot3());
|
||||
application.put("appmeta", appMeta);
|
||||
application.put("screenshots", screenshots);
|
||||
|
||||
//Set the headers
|
||||
headers.put(Constants.Header.CONTENT_TYPE, Constants.ContentType.APPLICATION_JSON);
|
||||
HTTPResponse
|
||||
httpResponse =
|
||||
HTTPInvoker.sendHTTPPostWithOAuthSecurity(appEndpoint, application.toJSONString(), headers);
|
||||
if (Constants.HTTPStatus.OK == httpResponse.getResponseCode()) {
|
||||
return true;
|
||||
}
|
||||
return false;
|
||||
}
|
||||
}
|
||||
@ -113,59 +113,6 @@ public class QSGExecutor {
|
||||
System.exit(0);
|
||||
}
|
||||
|
||||
|
||||
System.out.println("Upload the android application ");
|
||||
//Upload the android application
|
||||
MobileApplication application = AppOperations.uploadApplication(Constants.DeviceType.ANDROID, "con-app.apk",
|
||||
"application/vnd.android.package-archive");
|
||||
if (application == null) {
|
||||
System.out.println("Unable to upload the sample android application. Terminating the IoTS QSG now.");
|
||||
System.exit(0);
|
||||
}
|
||||
//Upload the assets
|
||||
application = AppOperations.uploadAssets(Constants.DeviceType.ANDROID, application);
|
||||
if (application == null) {
|
||||
System.out.println(
|
||||
"Unable to upload the assets for sample android application. Terminating the IoTS QSG now.");
|
||||
System.exit(0);
|
||||
}
|
||||
|
||||
System.out.println("Create the android application ");
|
||||
//Create application entry in publisher
|
||||
status = AppOperations.addApplication("WSO2Con-Android", application, true);
|
||||
if (!status) {
|
||||
System.out.println("Unable to create the android mobile application. Terminating the IoTS QSG now.");
|
||||
System.exit(0);
|
||||
}
|
||||
|
||||
|
||||
System.out.println("Upload the iOS application ");
|
||||
//Add the iOS policy
|
||||
status = PolicyOperations.createPasscodePolicy("ios-passcode-policy1", Constants.DeviceType.IOS);
|
||||
if (!status) {
|
||||
System.out.println("Unable to create the ios passcode policy. Terminating the IoTS QSG now.");
|
||||
System.exit(0);
|
||||
}
|
||||
|
||||
//Upload the ios application
|
||||
MobileApplication iOSApplication = AppOperations.uploadApplication(Constants.DeviceType.IOS, "PNDemo.ipa","application/octet-stream");
|
||||
iOSApplication.setVersion("1.0.0");
|
||||
//Upload the assets
|
||||
iOSApplication = AppOperations.uploadAssets(Constants.DeviceType.IOS, iOSApplication);
|
||||
if (iOSApplication == null) {
|
||||
System.out.println(
|
||||
"Unable to upload the assets for sample iOS application. Terminating the IoTS QSG now.");
|
||||
System.exit(0);
|
||||
}
|
||||
|
||||
System.out.println("Create the iOS application ");
|
||||
//Create application entry in publisher
|
||||
status = AppOperations.addApplication("WSO2Con-iOS", iOSApplication, true);
|
||||
if (!status) {
|
||||
System.out.println("Unable to create the iOS mobile application. Terminating the IoTS QSG now.");
|
||||
System.exit(0);
|
||||
}
|
||||
|
||||
System.out.println("Exit");
|
||||
}
|
||||
}
|
||||
|
||||
16
pom.xml
16
pom.xml
@ -42,7 +42,7 @@
|
||||
<module>modules/cxf-filters</module>
|
||||
<module>modules/p2-profile</module>
|
||||
<module>modules/distribution</module>
|
||||
<module>modules/integration</module>
|
||||
<!--<module>modules/integration</module>-->
|
||||
</modules>
|
||||
|
||||
<dependencyManagement>
|
||||
@ -1269,7 +1269,7 @@
|
||||
<!-- Dependencies for login ui -->
|
||||
<dependency>
|
||||
<groupId>javax.servlet</groupId>
|
||||
<artifactId>servlet-api</artifactId>
|
||||
<artifactId>javax.servlet-api</artifactId>
|
||||
<version>${servlet-api.version}</version>
|
||||
</dependency>
|
||||
<dependency>
|
||||
@ -1528,14 +1528,15 @@
|
||||
<carbon.governance.version>4.7.23</carbon.governance.version>
|
||||
|
||||
<!-- Carbon Device Management-->
|
||||
<carbon.device.mgt.version>3.2.15</carbon.device.mgt.version>
|
||||
<carbon.device.mgt.version.range>[3.1.0, 4.0.0)</carbon.device.mgt.version.range>
|
||||
<carbon.device.mgt.version>4.1.0</carbon.device.mgt.version>
|
||||
|
||||
<carbon.device.mgt.version.range>[4.0.0, 5.0.0)</carbon.device.mgt.version.range>
|
||||
|
||||
<!-- IOT Device Management -->
|
||||
<product.iot.version>${project.version}</product.iot.version>
|
||||
|
||||
<!-- Carbon Device Management Plugins-->
|
||||
<carbon.device.mgt.plugin.version>4.2.13</carbon.device.mgt.plugin.version>
|
||||
<carbon.device.mgt.plugin.version>5.0.0</carbon.device.mgt.plugin.version>
|
||||
|
||||
<!-- API Management -->
|
||||
<carbon.api.mgt.version>6.2.201</carbon.api.mgt.version>
|
||||
@ -1556,7 +1557,7 @@
|
||||
<orbit.tomcat.version>7.0.85.wso2v1</orbit.tomcat.version>
|
||||
<orbit.tomcat.jdbc.pooling.version>7.0.34.wso2v2</orbit.tomcat.jdbc.pooling.version>
|
||||
<orbit.version.tomcat-servlet-api>7.0.85.wso2v1</orbit.version.tomcat-servlet-api>
|
||||
<servlet-api.version>2.4</servlet-api.version>
|
||||
<servlet-api.version>4.0.1</servlet-api.version>
|
||||
|
||||
<!-- Rampart -->
|
||||
<rampart.version>1.6.1-wso2v12</rampart.version>
|
||||
@ -1639,9 +1640,6 @@
|
||||
<!-- Caramel version-->
|
||||
<caramel.version>1.0.1</caramel.version>
|
||||
|
||||
<!-- App manager version-->
|
||||
<appmgt.feature.version>1.5.7</appmgt.feature.version>
|
||||
|
||||
<!-- Carbon Store version-->
|
||||
<carbon.store.version>1.5.1</carbon.store.version>
|
||||
|
||||
|
||||
Loading…
Reference in New Issue
Block a user