Automation to deploy the Red Hat Integration Demo.
This demo shows how to use integration products and leverage OpenShift features for a enterprise graded deployment.
In this demo a company uses Salesforce to track it’s sales engagements and wants to connect those opportunities to it’s work management platform, Asana.
These are the required steps for this integration:
-
Every time that a new opportunity is created in Salesforce that opportunity will become a task in an Asana project.
-
The opportunity data needs to be enriched before it becomes an Asana task.
-
If the opportunity gets updated, so should be the Asana task.
Graphical representation of the components used to implement this solution:
Visualize the integration logs using Kibana. The log content is mapped using LogForwarding rules.
Create images and upload them to an external service registry using Tekton Pipelines.
Parameter | Example Value | Definition |
---|---|---|
token |
sha256~vFanQbthlPKfsaldJT3bdLXIyEkd7ypO_XPygY1DNtQ |
access token for a user with cluster-admin privileges |
server |
OpenShift cluster API URL |
Before running the Ansible playbook you must create a file to set some required credentials by the applications. You can use the following text as an template.
# Asana access and configuration information asana_pat: asana_workspace_gid: asana_project_gid: asana_field_opportunity: asana_field_customer: asana_field_booking: # Salesforce access information sf_client_id: sf_client_secret: sf_username: sf_password: sf_instance: # In order to push the image to a private registry a .dockerconfigjson needs to be provided. You can skip this configuration if you don't intend to show Pipelines. docker_config: # This is the image registry URL used in the demo. You can skip this configuration if you don't intend to show Pipelines. registry_url: # These are the URL for the applications repositories. This is needed to build the image and deploy the application ingestor_git: asana_adapter_git:
-
For information about Asana access properties look at asana-adapter’s git repository.
-
For information about Salesforce access properties look at salesforce-webhook-ingestor’s git repository.
Export token
and server
as environment variable, then run under the ansible
folder:
ansible-playbook -e token=${token} -e server=${server} --extra-vars @extra-vars.yml playbook.yml