FINS Salesforce Customers System API - Implementation Template
Deployment
Each Accelerator implementation template in Exchange includes Bash and Windows scripts for building and deploying the APIs to CloudHub. These scripts depend on repositories, global settings, deployment profiles, and associated properties configured in the Maven settings.xml
file.
Many templates can also be run from Anypoint Studio without having to customize the Run/Debug profiles. However, some templates make use of hidden deployment properties to protect sensitive information (e.g., passwords and secret keys). These properties must be supplied to the runtime by updating the configuration profile and adding them as VM arguments.
Preparation
This application demonstrates how to deploy multiple copies of the same application in the same environment, where each is connected to different back-end system. In this case, each deployment can connect to a separate Salesforce Financial Services Cloud instance.
To begin with, ensure the Maven profile CloudHub-FINS-DEV
has been properly configured in your settings.xml
file. Now configure at least one additional profile, which contains the Salesforce connection details (e.g.,FSC-Banking-DEV
). In the deployment script, ensure both profiles are included in the ENV_PROFILE
environment variable, with the FSC profile appearing second. For example:
ENV_PROFILE=CloudHub-FINS-DEV,FSC-Banking-DEV
Required property overrides
At a minimum, the following properties must be customized to reflect the target deployment environment.
Property Name | Description |
---|---|
api.autodiscoveryID | Required if using API Manager to secure this API |
sfdc.username | Salesforce Instance client user Name |
sfdc.token | Salesforce Instance client token |
sfdc.password | Salesforce Instance client password |
sfdc.client-id | The Consumer Id of the Connected App in Salesforce |
sfdc.client-secret | The Consumer secret of the Connected App in Salesforce |
sfdc.instance-url | The URL of the Salesforce Instance |
Running the application from Anypoint Studio
The following instructions are for running applications from Studio but apply to debugging as well.
- Update the
src/main/resources/config/config-local.yaml
file and provide values for the properties described above. - Right-click the project and select
Run As -> Mule Application (configure)
- If hidden deployment properties (e.g., Anypoint MQ credentials) are required, select the
Arguments
tab and add the property definitions to theVM arguments
section. For example:-M-Dsfdc.username=<provide password> -M-Dsfdc.password=<provide password> -M-Dsfdc.token=<provide token> -M-Dsfdc.client-id=<provide client-id> -M-Dsfdc.client-secret=<provide client-secret>
- Click
Run
to launch the application.
To debug an application, choose Debug As -> Mule Application (configure)
in the second step instead.
Deployment instructions for CloudHub
The following instructions apply to CloudHub deployments only.
- Update the
config-dev.yaml
properties as described above. You can also choose to add them to yoursettings.xml
file instead. Use one of the following scripts to deploy application to CloudHub:
packageDeploy.sh
(Mac/Linux) orpackageDeploy.cmd
(Windows) - clean, build, and deploy the applicationdeployOnly.sh
(Mac/Linux) ordeployOnly.cmd
(Windows) - deploy a previously-built application
- Bring up the Runtime Manager console in Anypoint and monitor the application for proper startup.
To deploy a second instance to connect to a different Salesforce org, change the second profile name to a new one (e.g., FSC-Insurance-DEV
) and then run the deployment script again.
Next steps
Visit the Data mappings tab describes the mappings if any specific to interact with Salesforce.