Prerequisites
What you need installed and configured before writing a connector — a standalone Maven project that plugs into cyiam-agent via the Connector SPI. You do not need the agent's own source to build one.
Toolchain
| Requirement | Needed for |
|---|---|
| JDK 17 | The connector API and every connector target Java 17. |
| Maven 3.9+ | Building the fat JAR (mvn clean package). |
| Docker + Buildx | Only needed if you'll build/publish a container image of the connector (see connector-deploy). |
Resolving the published API
Your connector compiles against io.cyiam:cyiam-connector-api, published to GitHub Packages. You're only ever reading it — you never publish anything yourself, so a read-only token is all you need.
- Create a GitHub Personal Access Token (classic) with
read:packages. - Copy the template:
cp settings.xml.example ~/.m2/settings.xml. - Edit the
<server id="github">block with your GitHub username and PAT. Keep the id exactlygithub— it's matched against the<repository>id declared in your connector'spom.xml.
Project structure
9
The SPI file contains a single line — the fully-qualified class name of your implementation, e.g. io.cyiam.connector.example.ExampleConnector. That's how cyiam-agent's PluginLoader discovers it via ServiceLoader<Connector> at startup.