Sign inSign up

pythonicshahdev/boomi-cam-jenkins

By pythonicshahdev

•Updated 4 months ago

Image
0

886

pythonicshahdev/boomi-cam-jenkins repository overview

Boomi CI/CD + CAM Jenkins

A self-contained Jenkins Docker image that deploys Boomi integration components through DEV → STG → PROD and automatically publishes API components to Boomi Cloud API
Management (Mashery) after deployment.

Demo story: Commit a change to your Boomi API component → the pipeline deploys it across environments → it is automatically registered as a live API on the Mashery gateway with a test key provisioned and IO Docs published. Zero-touch from commit to live API.


Prerequisites

  • Boomi AtomSphere account with at least one environment
  • A Bitbucket release repo (SSH access via deployment key)
  • Boomi Cloud API Management (Mashery) credentials (optional — omit to run as pure CI/CD)
  • Contact shah for ACCESS_TOKEN

Quick Start

docker run -d -p 8080:8080
-e ACCESS_TOKEN= \
-e JENKINS_ADMIN_PASSWORD=admin
-e BOOMI_USERNAME= \
-e BOOMI_PASSWORD= \
-e BOOMI_ACCOUNT_ID=
-e BOOMI_FOLDER_NAME= \
-e RELEASE_REPO_URL=[email protected]⁠:/.git \
-e BOOMI_ENV_DEV= \
-e BOOMI_ENV_STG= \
-e BOOMI_ENV_PROD= \
-v ~/.ssh/bitbucket_jenkins:/run/secrets/bitbucket_ssh_key:ro \
pythonicshahdev/boomi-cam-jenkins:latest

Open http://localhost:8080⁠ — log in with admin / your password.


Pipelines

boomi-release-generator — Scans your Boomi folder, generates release.json, and pushes it to your release repo. Triggered manually or via Bitbucket webhook.

boomi-cam-pipeline — Deploys components DEV → STG → PROD with manual approval gates, then publishes any API components to Boomi Cloud API Management.


CAM Publishing (Optional)

Set MASHERY_PUBLISH_SCOPE when triggering boomi-cam-pipeline:

  • empty — Skip all CAM stages, run as pure Boomi CI/CD
  • prod — Publish to CAM after PROD deployment only
  • all — Publish to CAM after DEV, STG, and PROD

CAM environment variables:

  • MASHERY_API_KEY — CAM OAuth2 API key
  • MASHERY_API_SECRET — CAM OAuth2 API secret
  • MASHERY_USERNAME — CAM portal username
  • MASHERY_PASSWORD — CAM portal password
  • MASHERY_AREA_UUID — CAM area UUID (OAuth2 scope)
  • MASHERY_PUBLIC_DOMAIN — Gateway domain for endpoint + IO Docs
  • MASHERY_RATE_LIMIT_QPS — Max calls per second (default: 100)
  • MASHERY_QUOTA_PER_DAY — Max calls per day (default: 10000)
  • MASHERY_KEY_EXPIRY_DAYS — Test key expiry in days (default: 30)
  • SLACK_WEBHOOK_URL — Optional Slack notification on smoke test pass

Features

  • Deploy Boomi components DEV → STG → PROD with manual approval gates
  • Lint Boomi XML quality report
  • Optional SonarQube analysis
  • DEPLOY_CHANGED_ONLY filter to skip unchanged components
  • Atom targeting via BOOMI_ATOM_NAME
  • Automatic CAM service, package, plan, and test key provisioning
  • IO Docs upload (Swagger 2.0 stub)
  • Gateway smoke test after publishing
  • Bitbucket webhook trigger for release generator
  • Keeps last 4 builds per pipeline

Tag summary

Content type

Image

Digest

sha256:6b3de4257…

Size

498.4 MB

Last updated

4 months ago

docker pull pythonicshahdev/boomi-cam-jenkins