https://github.com/jenkinsci/plasticscm-plugin
A plugin for Jenkins to be able to use Plastic SCM
https://github.com/jenkinsci/plasticscm-plugin
jenkins plastic plastic-scm plasticscm plugin scm
Last synced: 11 months ago
JSON representation
A plugin for Jenkins to be able to use Plastic SCM
- Host: GitHub
- URL: https://github.com/jenkinsci/plasticscm-plugin
- Owner: jenkinsci
- License: mit
- Created: 2011-02-28T16:16:52.000Z (over 15 years ago)
- Default Branch: master
- Last Pushed: 2024-08-26T08:05:44.000Z (almost 2 years ago)
- Last Synced: 2025-05-07T19:02:35.530Z (about 1 year ago)
- Topics: jenkins, plastic, plastic-scm, plasticscm, plugin, scm
- Language: Java
- Homepage:
- Size: 2.41 MB
- Stars: 17
- Watchers: 103
- Forks: 31
- Open Issues: 8
-
Metadata Files:
- Readme: README.md
- Changelog: CHANGELOG.md
Awesome Lists containing this project
README
Retrieve and manage your Plastic SCM sources from Jenkins.
---

[](https://ci.jenkins.io/job/Plugins/job/plasticscm-plugin/job/master/)

* [Overview](#overview)
* [How to use the plugin](#how-to-use-the-plugin)
* [Installing the Plastic SCM client](#installing-the-plastic-scm-client)
* [Standalone mode](#standalone-mode)
* [Mergebot mode](#mergebot-mode)
* [Build information](#build-information)
* [Summary](#summary)
* [Changes list](#changes-list)
* [Plastic SCM Build Data](#plastic-scm-build-data)
* [Requirements](#requirements)
* [Upgrades](#upgrades)
* [Upgrading from 3.x to 4.x](#upgrading-from-3x-to-4x)
* [Upgrading from 2.x to 3.x](#upgrading-from-2x-to-3x)
* [Development](#development)
* [Building the Plugin](#building-the-plugin)
* [Contributing to the Plugin](#contributing-to-the-plugin)
* [Plugin information](#plugin-information)
* [Change log](#change-log)
# Overview
Plastic SCM is a scalable, engine-agnostic version control and source code management tool for game development studios
of all sizes. It offers optimized workflows for artists and programmers and superior speed working with large files and
binaries.
This plugin integrates Plastic SCM with Jenkins, allowing you to retrieve and manage your Plastic SCM sources from
Jenkins projects and pipelines. It also provides a way to automatically download and install the Plastic SCM client
(`cm`) in the controller or agent machines.
# How to use the plugin
## Installing the Plastic SCM client
The Plastic SCM plugin for Jenkins requires a working `cm` client to be present in the controller or agent machines.
If it's not, the plugin provides a way for the machines to automatically download and install the client.
You can find out more about how to configure the Plastic SCM client in Jenkins in the
[External Tool Configuration guide](doc/external-tool-configuration.md).
## Standalone mode
The Plastic SCM plugin for Jenkins can be used in standalone mode. This behaves as a regular SCM plugin, where the
project configuration defines which repository to use and the credentials to connect to it. The plugin will then
download the sources to the workspace.
You can find out more about how to configure the Plastic SCM plugin in standalone mode in the
[Standalone mode guide](doc/standalone-guide.md).
## Mergebot mode
The Plastic SCM plugin for Jenkins can be used in Mergebot mode. This mode is intended to be used in conjunction with
the [Plastic SCM Mergebot](https://blog.plasticscm.com/2018/09/mergebot-story-of-our-devops-initiative.html)
feature.
A Mergebot will trigger a CI build, which will be requested to Jenkins via a Plug. The targeted Jenkins project will
need to have the Plastic SCM plugin configured in Mergebot mode. The plugin will then download the sources to the
workspace, taking the required spec from a build parameter.
You can find out more about how to configure the Plastic SCM plugin in Mergebot mode in the
[Mergebot mode guide](doc/mergebot-guide.md).
# Build information
## Summary
The build summary includes a reference to the Plastic SCM changeset spec that was built.

## Changes list
The changes page in each build will have details about each of the changesets that were included in
the build, linked from the summary list.

## Plastic SCM Build Data
You'll find a link in the build page sidebar to display the Plastic SCM data for that build.

# Requirements
* Jenkins `2.440.3` (2024-04-17) or newer
* Plastic SCM command line client `10.0.16.6112` or newer
# Upgrades
## Upgrading from 3.x to 4.x
There are no incompatibilities in configuration from version 3.x to version 4.x. The latter adds
support in project/pipeline configurations to specify a Plastic SCM working mode and credentials.
By default, new or existing projects will use the default credentials for `cm` as configured in the
controller or agent machines. This means that upgrading will keep the same behaviour as you had in
the previous version.
## Upgrading from 2.x to 3.x
The upgrade process is mostly seamless. You'll only need to review the configuration parameters of
your jobs **if you configured them to use multiple workspaces**. Since the subdirectory name was
inferred from the workspace name before and that parameter is now gone, the **Subdirectory**
parameter (used now to specify the subdirectory name explicitly) will be empty. Builds might
download all workspaces in the same directory!
# Development
## Building the Plugin
To build the plugin you will need:
* [Maven](https://maven.apache.org/) version `3.5` or newer
* [Java Development Kit (JDK)](https://jdk.java.net/) version `17`
Run the following command to build the plugin:
```shell
mvn package
```
## Contributing to the Plugin
New feature requests and bug fix proposals should be submitted as
[pull requests](https://help.github.com/en/articles/creating-a-pull-request).
Fork the repository. Make the desired changes in your forked copy. Submit a pull request to the
`master` branch.
Use the [Jenkins SCM API coding style guide](https://github.com/jenkinsci/scm-api-plugin/blob/master/CONTRIBUTING.md#code-style-guidelines)
for new code.
Before submitting a pull request please check if your code passes code quality and style checks by
running:
```shell
mvn verify
```
All pull requests will be evaluated by
[Jenkins CI](https://ci.jenkins.io/job/Plugins/job/plasticscm-plugin/).
# Plugin information
This plugin is developed and maintained by Unity Software, owner of the Plastic SCM product.
Visit us at .
We really appreciate PR and contributions!
# Change log
You can find it [here](CHANGELOG.md)