This gem eases heroku-connect based integrations with salesforce for rails projects.
It provides:
- A rails generator for commonly used salesforce models (rails g connect:models)
- An API client constructor for RestForce (Connect::ApiAdapter)
- A concern, Connect::Record, to include in salesforce-connected activerecord models (require 'connect/record')
- A concern, Connect::Migration, for migrations which should only run in development (eg because heroku connect is managing the schema in production).
- A rake task db:diff_schemafor describing the difference between your mapped fields in heroku and your local database.
- A rake task salesforce:schema:dump[heroku-app-name]to serialize your salesforce configuration to JSON
- A rake task salesforce:schema:diff[old_file,new_file]to compare two serialized salesforce configurations
Add to your gemfile:
To use Connect::ApiAdapter, you must provide the following environment variables:
- SALESFORCE_REST_API_HOST
- SALESFORCE_REST_API_CLIENT_ID
- SALESFORCE_REST_API_CLIENT_SECRET
- SALESFORCE_REST_API_USERNAME
- SALESFORCE_REST_API_PASSWORD
- SALESFORCE_REST_API_SECURITY_TOKEN
gem "rails-salesforce-connect"
To use salesforce-connect db:diff_schema you must specify a connection string or HC_URL env var.
For instance:
export HC_URL="$(heroku config:get DATABASE_URL)"
To use salesforce-connect salesforce:schema:dump, you must provide one of:
- Environment variables for Connect::ApiAdapter, or
- A heroku app name, which the current machine is authorized to read environment variabes from, with those variables set.
Alpha. This has been extracted from common code across couple of projects.