UM : Deployment Process

Deployment on A-Stack Prime

Prerequisites

  1. Download A-StackPrime from build server. Build Server : http://builds.atomiton.com:443/fid-buildserverui/index.html#/dashboard
  2. Download User Management package from build server.
  3. Download/Create application on which user management will be used.

Setup steps

  1. Install latest A-Stack Prime. 
    Unzip A-Stack Prime package. Change below fields in sff.local.config.xml :

    Update sff.local.config.xml
    <sff.server.port>9090</sff.server.port>
    <sff.tls.truststore.file>/lib/security/cacerts</sff.tls.truststore.file>
    <sff.local.deploy>;resources/hellotql/deploy;resources/usermanagement/deploy;</sff.local.deploy>

    sff.server.port : <port_number on while application will run>, e.g <9090>
    sff.tls.truststore.file : provide the cacerts path, /lib/security/cacerts
    sff.local.deploy : ;resources/<app_name>/deploy;resources/usermanagement/deploy;

  2. Put usermanagement and application package inside /resources folder. And, update sff.local.config.xml, provide exact application name in sff.local.deploy. Note : application should deploy first.
  3. Update config in usermanagement and provide application details.

    usermanagement.config
    <Configuration>
    	<ApplicationList>
    		<Application>
    			<appId>HelloTQL</appId>
    			<appName>HelloTQL</appName>
    			<appfacetIdName>M3KDILWXAAAAUCYMFBCDBGNY</appfacetIdName>
    			<appWSFacetIdName>M3KDILWXAAAAUCYMFBCDBGNYWS</appWSFacetIdName>
    			<appKey>M3KDILXXAAAAUCYMFDONNFDG</appKey>
    			<appServer></appServer>
    			<appPort></appPort>
    		</Application>
    	</ApplicationList>
    </Configuration>
  4. Update GenericTQLInterface mqp file for application. Use the custom mqp file provided in usermanagement package usermanagement/external_files/SampleGenericTQLInterface.mqp.
    Add below codes in RuntimeParams

    Add Lines
    <ProjectSettings_EnableUM>true</ProjectSettings_EnableUM>

    Add below codes inside FacetIDName tqlfacet onActivate

    OnActivate
    <If Condition="[:RuntimeParams.ProjectSettings_EnableUM:]">
    	<CacheModifiers modifiers="Disabled" cache="SuperUser">
    	<List>
    		<Entity Inherits="DataModel" QName="*.TqlSystem.TqlNotification" />
    	</List>
    	</CacheModifiers>
    </If>

    Update enforce Key section in the FacetIDName tqlfacet from usermanagement/external_files/SampleGenericTQLInterface.mqp, it is having updated code with UM part.

    Add initializeCacheModifierForAPP facet at the end of the template

    initializeCacheModifierForAPP
    <If Condition="[:RuntimeParams.ProjectSettings_EnableUM:]">
    	<NewFacetInstance fid="initializeCacheModifierForAPP"
    		name="initializeCacheModifierForAPP" type="SffTcpFacet">
    		<OnActivate>
    			<ImportFacet>[:RuntimeParams.MacroFacetID:]</ImportFacet>
    			<InitializeCacheModifierForAPP />
    		</OnActivate>
    	</NewFacetInstance>
    </If>
  5. Update config in application and provide usermanagement details :

    application.config
    <Configuration>
    	<UM>
    		<appId>UM</appId>
    		<appName>UserManagement</appName>
    		<appServer>localhost</appServer>
    		<appPort>9090</appPort>
    		<proxyFacetID>UserManagement</proxyFacetID>
    	</UM>
    	<Application>
    		<appName>HelloTQL</appName>
    	</Application>
    </Configuration>
  6. Put initializeCacheModierForApp.mc.xml file inside application macro folder. And, add below lines in deploy/GenericTQLInterface.mqp.xml :

    Include macro
    	<Macro>
    		<Include>resources/hellotql/macros/initializeCacheModifierForAPP.mc.xml
    		</Include>
    	</Macro>
  7. Add hidden model inside application's models file

    hidden model
    	<DataModel Name="HiddenModel">
          <Sid Name="Id"/>
          <String Name="Name"/>
        </DataModel>
  8. Start A-Stack by following commands :
    tql -engine -start Path=<path of  A-stack>

Verification

  • By default 1 admin user will be created with all ReadWrite access. Login with below credential on : https://{server}:{port}/fid-Authentication/login
    UserName : Admin
    Password : Pass@123

Deployment on A-Stack TQLConsole

Prerequisites

  1. Download A-StackPrimeTQLConsole from build server. Build Server : http://builds.atomiton.com:443/fid-buildserverui/index.html#/dashboard
  2. Download User Management package from build server.
  3. Download/Create application on which user management will be used.

Setup steps

  1. Install latest A-Stack TQLConsole. 
    Unzip A-Stack TQLConsole package. Change below fields in sff.local.config.xml :

    sff.local.config
    <sff.server.port>8080</sff.server.port>
    <sff.tls.truststore.file>/lib/security/cacerts</sff.tls.truststore.file>
  2. Put usermanagement and application package inside /resources folder.
  3. Go to the console UI and add project with the same package name you put inside /resources folder.
  4. Go to the project settings and add deployment package. Choose the SampleGenericTQLInterface.mqp that is provided with usermanagement package, usermanagement/external_files/SampleGenericTQLInterface.mqp.
  5. Put initializeCacheModierForApp.mc.xml file inside application macro folder.
  6. Add hidden model inside application's models file

    Hidden model
    <DataModel Name="HiddenModel">
          <Sid Name="Id"/>
          <String Name="Name"/>
        </DataModel>
  7. Update config in application and provide usermanagement details :

    Config
    <Configuration>
    	<UM>
    		<appId>UM</appId>
    		<appName>UserManagement</appName>
    		<appServer>localhost</appServer>
    		<appPort>9090</appPort>
    		<proxyFacetID>UserManagement</proxyFacetID>
    	</UM>
    	<Application>
    		<appName>HelloTQL</appName>
    	</Application>
    </Configuration>
  8. Go to the console UI and add project with the name usermanagement.
  9. Update config in usermanagement and provide application details.

    Config
    <Configuration>
    	<ApplicationList>
    		<Application>
    			<appId>HelloTQL</appId>
    			<appName>HelloTQL</appName>
    			<appfacetIdName>M3KDILWXAAAAUCYMFBCDBGNY</appfacetIdName>
    			<appWSFacetIdName>M3KDILWXAAAAUCYMFBCDBGNYWS</appWSFacetIdName>
    			<appKey>M3KDILXXAAAAUCYMFDONNFDG</appKey>
    			<appServer></appServer>
    			<appPort></appPort>
    		</Application>
    	</ApplicationList>
    </Configuration>

Verification

  • By default 1 admin user will be created with all ReadWrite access. Login with below credential on : https://{server}:{port}/fid-Authentication/login
    UserName : Admin
    Password : Pass@123