Skip to main content

Building

Requirements: JDK 17+ and Maven 3.6.3+.

git clone https://github.com/osodevops/kafka-connect-salesforce-oss.git
cd kafka-connect-salesforce-oss
mvn clean verify

verify compiles everything, generates the Pub/Sub gRPC stubs from Salesforce's CC0-licensed pubsub_api.proto, runs the full test suite against the local fake Salesforce, runs the docker end-to-end tests, and packages each connector as a Kafka Connect plugin ZIP:

connect-salesforce-source/target/connect-salesforce-source-<version>-kafka-connect-plugin.zip
connect-salesforce-sink/target/connect-salesforce-sink-<version>-kafka-connect-plugin.zip
connect-salesforce-pe-sink/target/connect-salesforce-pe-sink-<version>-kafka-connect-plugin.zip
connect-salesforce-streaming-source/target/connect-salesforce-streaming-source-<version>-kafka-connect-plugin.zip

Each ZIP contains a lib/ directory with the connector and its runtime dependencies (connect-api excluded — the worker provides it). Unzip onto plugin.path.

Useful flags:

mvn clean package -DskipTests # just build the ZIPs
mvn clean verify -DskipE2E # skip the docker e2e tests
mvn -pl sf-core test # one module's tests

Module layout

ModuleContents
sf-coreShared Salesforce client library + the fake-Salesforce test harness (test-jar)
connect-salesforce-sourceUnified source connector
connect-salesforce-sinkSObject sink connector
connect-salesforce-pe-sinkPlatform Event sink connector
connect-salesforce-streaming-sourceLegacy CometD source connector
e2e-testsDocker end-to-end tests (not published)
websiteThis documentation site (Docusaurus)