[SHOWCASE] Jenkins Integration

Jenkins Workflows in SCM-Manager

If you are using Jenkins for your continuous integration, be sure to take advantage of the various integrations for your SCM-Manager.
We have created automatic workflows to create build jobs, show CI status on your changesets and pull-request, and also provide an SCM-Manager specific Job DSL. To use all the described features,
make sure to install the SCM-Jenkins-Plugin and also the Jenkins-SCM-Manager-plugin.

How do these integrations work?

CI Flow

If you have both plugins installed and your Jenkins is configured properly, you will get automatic build job results displayed for each changeset.
SCM-Manager pull requests provided by the review plugin are also supported,
so you will get the latest CI status for each pull request. You will see the CI results immediately inside SCM-Manager when the build completes or fails.

Examples

We have a repository with 3 pull requests. Each pull request has a related Jenkins build job and shows the Jenkins build result as analysis result.
You can click on the analysis bar to show further information. From here you can navigate directly to the Jenkins build job by clicking on the details link.

See our examples for:
Successful build
Failed build
Unstable build

Build Job Auto Discovery

You have tons of repositories and don’t want to create and manage all these build jobs manually?
Well, our build job auto discovery may be the answer you are looking for.
As soon as a branch inside your SCM-Manager repository contains a valid Jenkinsfile we create the build job automatically for you. But there is more!

  • If your feature branch already has a pull request, the branch build will be replaced by the pull request build.
  • Auto discovery for a single repository is not enough? You can also apply the auto discovery for a namespace including different repositories or even select your whole SCM-Manager instance.
  • You can choose whether you want to discover branch builds, tag builds or pull request builds.

Examples

Our repository contains a Jenkinsfile on the main branch and in Jenkins we have configured the auto discovery for the whole SCM-Manager namespace.
Now the build job for this branch is configured automatically.

For more information about auto discovery check out the documentation.

Auto discovery for Subversion

All features from above also exist for Subversion. But since Subversion doesn’t support branches, the configuration is a little different.
You cannot discover branches or tags but must choose which paths should be included or excluded for the auto discovery.

Examples

We have a repository with the Jenkinsfile in our trunk directory.
As above, we get the build job automatically discovered and configured.


You still got questions about the Jenkins features your SCM-Manager can provide? Feel free to ask right below this topic.