Slave 2 (MAC) Properties Files
Previously, there were three properties files, namely ct_ant.properties, ct_credential.properties and ct_mobilebuild.properties. As the properties were scattered in these three files, it was decided to combine a few properties in one file and remove a few other properties. Therefore, the ct_ant.properties file has been removed and its properties have been moved to ct.mobilebuild.properties file. A few new properties have been added to this file.
The ct_credential.properties file has been renamed to ct_mobilebuild_credential.properties file.
ct_mobilebuild_credential.properties
This file will be available in the CTMobileHybrid folder (template folder from SVN checkout).The CM team sets the values for the properties in these files. The properties of this file contain sensitive information and must not be modified or used anywhere else. Once set, these properties will be available in all the projects that are registered from the template.
You must manually set values for the following mandatory properties in this file.
Property
Description
Format
Example
keychain.user.mac
This property indicates the Admin username on slave 2. The Admin user must have the root privileges on slave 2 machine.
This is a mandatory property for triggering the remote build.
String
-
keychain.pass.mac
This property indicates the Admin password on slave 2. The Admin user must have the root privileges on slave 2 machine.
This is a mandatory property for triggering the remote build.
String
-
ct_mobilebuild.properties
The ct.mobilebuild.properties file is used for the CT centralized mobile build. A few properties in this file get updated at the time of project registration and the rest can be modified based on the implementation team's requirement.
The ct_ant.properties file has been removed and its properties have been moved to the ct.mobilebuild.properties file. The ct.mobilebuild.properties file now contains the following properties:All properties are mandatory in this file. You must change the properties after understanding their purpose.
Property
Description
Format
Example
Version
This property indicates the version of the mobile build.
String
16.3.0.0-br_16.3.0.0_R3307
ct.proj.name
This property indicates the name of the project.
String
BOA
ct.target.framework
This property indicates the framework used in the mobile app.
The available options are JQM (jQuery Mobile) and JQTBS (Bootstrap). Currently, the Centralized Mobile Build only uses the JQM (jQuery Mobile) framework for the mobile app.
String
JQM
ct.proj.build.display.name
This property indicates the app name that is displayed. The name that you provide for the ct.proj.name property is stored in this property. You can change the display name anytime.
String
BOA
ct.proj.identifier
This property indicates the app's reverse-domain identifier.
String
com.intellect.BOA
ct.proj.platforms
This property indicates the platforms that are to be included in the project.
For now, only the following platforms are supported:
- android
- iOS
For multiple options, enter values separated by commas. The values are case-sensitive.
String
android
android,iOSwar.name
This property indicates the name of the WAR file.
String
BOA.war
build.type
This property indicates the type of build, whether it is a development build or release build.
RELEASE build: The build is taken to release the app to the end users. Therefore, debugging is not possible.
DEVELOPMENT build: The build is taken to test the app. Therefore, debugging is possible. For a development build you need to ensure that proper provisioning profiles and keystore are included.
String
RELEASE
ct.project.plugins
This property indicates the native plugins that are included.
These native plugins are included by default.
String
cordova-plugin-network-information,
cordova-plugin-device,
cordova-plugin-dialogs,
cordova-plugin-geolocation,
cordova-plugin-inappbrowser,
cordova-plugin-whitelist,
cordova-sqlite-storage,
cordova-plugin-uniquedeviceid,
cordova-plugin-app-version,
cordova-plugin-file,
cordova-plugin-printer,
cordova-plugin-email,
Canvas-Cordova-Plugins/cordova-plugin-app-preferences,
Canvas-Cordova-Plugins/cordova-plugin-canvas,
Canvas-Cordova-Plugins/cordova-cookie-master-masterserver.url
This property indicates the URL of the server from which the metadata, loginservlet, and so on are fetched.
String (URL)
http://10.10.16.205\:8873/BOA/
ct.ipa_apk.builds.path
This property indicates the location where builds get generated.
String (URL)
${root}/Builds
css.dir.name
This property indicates the path of the CSS directory.
String(URL)
BOA/css
css.style.used
This property indicates the CSS style in use. The default style is ALL. This property is overwritten from the slave 1 Ant script.
When the property is set to the default option 'ALL', the build will include all the CSS present in the WAR. This will allow the user to dynamically change themes according to preference. You can also set a specific style for this property (for example, blue) in which case the user cannot change themes dynamically.
String
ALL
bluedir.array
This property indicates the support folders that are to be included from WAR. The slave 1 Ant script overrides this.
String
Help_files, images, templates
mobile.core.files.dir
This property indicates the mobile core folder location. The CTRIAFramework for the mobile build is present in this folder location.
String (URL)
${root}/www/BOA
war.core.files.dir
This property indicates the WAR core folder location. The CTRIAFramework exists in this folder.
String (URL)
${war.unarchive.location}/${war.name}
war.javascript.files.dir
This property indicates the JavaScript folder location in WAR. This is where the JavaScript files exist in WAR.
This is the folder where the implementation teams will be placing their listener files.
String(URL)
${war.unarchive.location}/${war.name}/javascript
mobile.javascript.files.dir
This property indicates the JavaScript folder location in the mobile package. This is where the JavaScript files exist in the mobile package.
This is the folder where the implementation teams will be placing their listener files.
String(URL)
${mobile.core.files.dir}/javascript
mobile.support.files.dir
This property indicates the mobile support folder location. The images, help_files and so on exist in this folder.
String(URL)
${root}/www
war.support.files.dir
This property indicates the WAR support folder location. The images, help_files etc. exists in the WAR support folder.
String (URL)
${war.unarchive.location}/${war.name}
app.html.file.location
This property indicates the HTML files location in the mobile.
String (URL)
${source.folder.location}
app.home.file
This property indicates the home page of the app.
This property is used to change the references to CTRIAFramework files either combine or compress based on the build.type property.
String (URL)
boa.html
app.start.file
This property indicates the landing page of the app.
This file is used to change the server URL to which the app connects to. This is usually (need not necessarily be) the login page of the app.
String (URL)
index.html
app.login.file
This property indicates the login page of the app.
This property is used to change the references to CITRIAFramework files either combine or compress based on the build.type property.
String (URL)
html/login.html
ct.register.proj.root.dir
All projects repository directory. All projects are setup in this location.
String (URL)
/Users/admin/Documents/Canvas Technology/BOA
The following properties contain information about the certificates and profiles required for the iOS and Android builds.
ct.ios.distributor.Name
This property indicates the name of the distributor (the company which is distributing the build in app stores) and is referenced as the code signing identity for iOS. This certificate must be present in the slave 2 keychain.
String
iPhone Distribution\: Intellect Design Arena Limited
ct.provisioning.profile
This property indicates the file path of the provisioning profile for iOS. It is a set of iPhone development certificates, unique device identifiers, an App ID, etc. This file has to be created from Apple developer site and copied in the project folder.
File path including the file extension
/Users/admin/Documents/CanvasTechnology/BOA/BOA_release.mobileprovision
ct.keystore.file.location
This property indicates the file path of the certificate used to sign the Android application.
Fie path including the file extension
/Users/admin/Documents/CanvasTechnology/BOA/BOA_Android.keystore
ct.keystore.prop.file.location
This property indicates the file path of the JSON file containing details about the Android keystore.
File path including the file extension
/Users/admin/Documents/CanvasTechnology/BOA/BOA_keystoreprop.json
The following common properties are not to be changed unless absolutely necessary:
build.dev
This property indicates the development build (for testing).
String
DEVELOPMENT
build.rel
This property indicates the release build.
String
RELEASE
ct.ant_home
This property indicates the location of the Ant_home that is used to refer to external Ant tasks.
String (URL)
/user/local
root
This property indicates the root directory of the current project.
String (URL)
/Users/admin/Documents/CanvasTechnology/BOA
war.location
This property indicates the location of the WAR file. This WAR file is copied by slave 1 Ant script to slave 2.
String (URL)
${basedir}
war.unarchive.location
This property indicates the location to unarchive the WAR file that is copied from the slave 1 machine.
String (URL)
${basedir}/unarchive
ct.new.project.model.folder
This property indicates the project from which reference has to be made while registering.
Ant files are copied from this folder to ct.register.proj.root.dir/*new project*
String (URL)
${basedir}
ct.new.project.build.files
This property indicates the build files to be copied to the new project folder. Multiple files are specified by separating the values with a comma.
String
build.xml,
buildandroid.xml,
buildios.xml,
buildwww.xml,
buildregister.xml,
Readme.txt
ct.new.project.properties.files
This property indicates the property files to be copied to the new project folder. Multiple files are specified by separating the values with a comma.
String
ct_mobilebuild.properties,
ct_mobilebuild_credential.properties
source.folder.location
This property indicates the main source folder (www folder) location for a hybrid app. Files are copied from this folder corresponding to the platform www folder.
String (URL)
${root}/www
destination.folder.location.ios
This property indicates the platform folder path for iOS.
String (URL)
${root}/${ct.proj.name}/platforms/ios
destination.folder.location.android
This property indicates the platform folder path for Android.
String (URL)
${root}/${ct.proj.name}/platforms/android/assets
ct.platform.folder
This property indicates the platform folder path for the hybrid apps.
String (URL)
${root}/${ct.proj.name}/platforms
android.platform.folder
This property indicates the platform folder path for the Android app.
String (URL)
${ct.platform.folder}/android
destination.folder.android.cordova
This property indicates the Cordova folder path for the Android app.
String (URL)
${android.platform.folder}/cordova
ios.source.icons
This property indicates the source folder path for iOS icons.
String (URL)
${root}/ios-icons
ios.destination.icons
This property indicates the destination folder path for iOS icons.
String (URL)
${ct.platform.folder}/ios/${ct.proj.build.display.name}/Resources/
android.source.icons
This property indicates the source folder path for Android icons.
String (URL)
${root}/android-icons
android.destination.icons
This property indicates the destination folder path for Android icons.
String (URL)
${ct.platform.folder}/android/res/
ant.build.core.location
This property indicates the path where the build files are located.
String (URL)
${root}