The latest version of SCIM Connector can be found here: SCIM Connector - the latest version. This is a zip file of a Java project that also includes documentation and some handy scripts/templates. - JDK 17
- Maven 3.8+
- Docker + docker-compose
- AWS CLI (for developers)
- IntelliJ / STS / Eclipse or similar (for developers)
- AWS tool kit plugin
Product Structure
A Fluent Connector project typically has the structure as defined below. Any customizations / extensions can be done under the custom folder or as a separate module (jar).
Regardless of which way chosen to extend it, the key message here is that any custom code should be under the `com.fluentcommerce.connect` package. This is because the FluentConnectorApplication is wired to work with Spring, and in its current form, Spring will only scan for components under `com.fluentcommerce.connect`.This project relies on three key dependencies and configurations to drive the application's behavior.All configuration files are located at `src/main/resources`- a topic is further down the article dedicated to this.
Upgrading the Connector
The SCIM Connector and Connect SDK version are driven by both the parent POM and dependency, as shown below. It is important that when upgrading, both versions match.Although it is possible to have a different version of the Connect SDK specified at the dependencies, letting the parent POM settings bring the correct dependency is recommended. Using a newer version may introduce problems as it hasn't been tested or released for the SCIM Connector yet.
Development Environment Setup
For local environment setup, follow Local Setup Guide.Credential Configuration
Follow the Secret Setup GuideSCIM Connector Project Configuration
Check SCIM Connector Project Configuration for more details of the application configuration files.IDP and Fluent Configuration
Add the necessary IDP and Fluent settings to allow the connector to function properly
Pre-Production and Production Environment Setup
The deployment steps covered here are guidelines and should not be taken to the letter as every company has different security policies, deployment, and monitoring processes. This is not a comprehensive or complete tutorial on deploying and running containers.Building the Project
The project provides a script that builds the Java artifact and generates a docker image that can be deployed on any environment. The container expects certain variables that allow the same image to be used in different environments.A docker image named fluent_connector_scim should be available at the build server if all goes well. At this point, the container image should be published to an image repository like AWS ECR.Verifying it works
It is possible to run the connector on any machine with docker and docker-compose installed. The steps below show how to have the container built and running.Deploying
As part of the project, it included a sample CloudFormation template that can create a stack with all that is required and deploy the container image. For more information, see Cloud Formation Template.Please note the configuration steps required for setting up the credentials.