Codeunit/FormEvent/InstanceCreator
What is it
The instance creator lets you build new TS application instances from a template, that is a MYSQL dump of an existing database.
So you will need
- Template for the context file
- Shared TempusServa.war file
- MySQL dump files
- tsbase
- tslive
- tstest
context template
The context template path must be configured in InstanceCreator.contextTemplateFile
<?xml version="1.0" encoding="UTF-8"?> <Context docBase="@DOCBASE@" swallowOutput="true"> <Resource name="jdbc/TempusServaLive" auth="Container" type="javax.sql.DataSource" maxActive="80" maxIdle="30" maxWait="2000" removeAbandoned="true" removeAbandonedTimeout="60" logAbandoned="true" username="@USERNAME@" password="@PASSWORD@" driverClassName="com.mysql.jdbc.Driver" url="jdbc:mysql://localhost:3306/@DBLIVE@?autoReconnect=true" /> <Resource name="jdbc/TempusServaTest" auth="Container" type="javax.sql.DataSource" maxActive="5" maxIdle="3" maxWait="10000" logAbandoned="true" username="@USERNAME@" password="@PASSWORD@" driverClassName="com.mysql.jdbc.Driver" url="jdbc:mysql://localhost:3306/@DBTEST@?autoReconnect=true" /> </Context>
The following tags are required
- @DBLIVE@
- @DBTEST@
The following tags are recommended
- @USERNAME@
- @PASSWORD@
The following tags are optional
- @DOCBASE@
- @APPLICATION@
Database template
From the baseline system build dump copies of the databases.
You will need to use strict naming of the files:
- base.sql
- live.sql
- test.sql
We recommend dumping the files using mysqldump
mysqldump -uroot -pPASSWORD demobase > /mnt/sda/template/base.sql mysqldump -uroot -pPASSWORD demolive > /mnt/sda/template/live.sql mysqldump -uroot -pPASSWORD demotest > /mnt/sda/template/test.sql
After dumping the files you can clean out unwanted dato in an editor
Configuration
In the form attatch the following codeunit
dk.tempusserva.solution.creator.InstanceCreator
Now setup
- locations of the templates
- InstanceCreator.sqlTemplateFolder: Folder of base.sql live.sql and test.sql
- InstanceCreator.contextTemplateFile: Position of the context template
- mapped field names
- InstanceCreator.fieldSolutionName
- InstanceCreator.fieldAdminName
- InstanceCreator.fieldAdminEmail
- InstanceCreator.fieldAdminPassword
- status references
- InstanceCreator.StatusCreateNow
- InstanceCreator.StatusCompleted: Must be accessible from StatusCreateNow
- InstanceCreator.StatusFailSetup: Must be accessible from StatusCreateNow
Usage
Using the attuned form will create a new instance.
The requirement is that the intance information is there AND status is in create (as defined per StatusCreateNow)
- instance name
- admin name
- admin email
After an instance is created and status will now be either
- succes (as defined per StatusCompleted)
- error (as defined per StatusFailSetup)
If the operation succeds you instance will be available in a minute or two.