Overview
The plugin integrates automatic open source management with Jetbrains TeamCity.
Once set up, all usage of open-source software in the organization will be continuously and automatically in sync with WhiteSource.
New projects will be created
Existing projects will be updated
Policies will be enforced on every action, failing the build if necessary.
The plugin currently support build steps with either Maven, Ant, or shell script Runner types.
The plugin is licensed under the Apache 2.0 license. Source code and issues are hosted on github .
How it Works
On execution, the plugin will determine which open source is currently used by your project and send it to WhiteSource.
No source code is scanned. Only descriptive information is sent over the wire.
Normal Flow
WhiteSource uses the collected information to create new projects or update existing ones.
Policy Check Flow
The plugin will check each new library against the organizational policies. If any library is automatically rejected by some policy, the build will fail. Otherwise your account will be updated.
An informative report of the results will be generated regardless of the outcome.
Installing the Plugin
Download the plugin:
TeamCity Version | WhiteSource plugin |
---|---|
7.0+ | |
7.0+ | |
7.0+ | |
7.0+ | |
7.0+ | |
7.0+ | |
7.0+ | |
7.0+ | |
7.0+ | |
7.0+ | |
7.0+ | |
7.0+ | |
7.0+ | |
7.0+ | |
7.0+ | |
7.0+ | |
7.0+ | |
6.5.5+ |
Installation of the plugin is done directly via the TeamCity GUI:
Go to Administration → Server Administration → Plugins List.
Click on the “Upload plugin zip” button, and navigate to the location of the plugin's zip file.
Restart the TeamCity server (this task can also be done via the TeamCity GUI).
Using the Plugin
Start by configuring the global settings, these settings will be applied to every project in your TeamCity environment. Then, setup the jobs that should interact with WhiteSource.
Global Settings
Once the plugin is installed go to Administration → Integrations → WhiteSource.
Organization Token: A unique identifier of the organization. You can retrieve it in the Admin Integration API page.
User Key: Unique user key. See User Level Access Control in Integrations and APIs for more information.
Policy Check: Checks that the introduced open source libraries conform with organization policies.
Check only new libraries: Check that the newly introduced open source libraries conform with organization policies.
Force check all libraries: Check that all introduced open source libraries conform with organization policies.
Disable: Disable policies check when updating WhiteSource.
Force Update: Updates organization inventory regardless of policy violations.
Fail on Error: Indicates whether or not to fail the build on a general error (e.g. network error).
Service URL: URL of the environment on which the WhiteSource organization is hosted. The default is “https://saas.whitesourcesoftware.com”; therefore organizations hosted on that can leave this field blank.
Connection Timeout (optional): Connection timeout value in minutes. If field is left blank then value is 60 minutes.
Proxy Server (optional): If TeamCity is behind a firewall then you should select the checkbox. As displayed in the following screenshot, once the checkbox is selected, newly displayed fields can be filled in, in order to allow communication with the WhiteSource servers.
Environment Variable - Skip plugin
By setting SKIP_WHITESOURCE_PLUGIN to true the plugin will be disabled.
Connection Retries
Number of connection retries when unable to connect to WhiteSource service (default value is 1).
Connection Retries Interval
Connection interval in seconds between two connection retries to WhiteSource service (default value is 3 seconds).
Job Specific Settings
You should enable the plugin for each job you want to use to update WhiteSource.
Only supported runner types will have this options visible.
Maven Runner
Generic Configuration
Build runners that have no concise system for managing dependencies require a different configuration.
What we're looking for is descriptive information about each library used. What we need to know is which libraries to include and where we can find them, that is the sole purpose of the configuration.
Build Log
The plugin is executed when the runner finishes. Sample log section:
Screen Casts
Install the plugin and import data into WhiteSource.
Apply policy check before updating WhiteSource.
Change Log
Version | Description |
---|---|
Version 21.1.1 |
|
Version 20.11.2 |
|
Version 20.10.2 |
|
Version 20.7.1 |
|
Version 20.6.2 |
|
Version 19.11.2 |
|
Version 19.9.2.2 |
|
Version 19.5.3 |
|
Version 19.1.2 |
|
Version 18.10.1 |
|
Version 18.6.2 |
|
Version 18.5.1 |
|
Version 17.11.4 |
|
Version 1.1.7 |
|
Version 1.1.6 |
|
Version 1.1.5 |
|
Version 1.1.4 |
|
Version 1.1.3 |
|
Version 1.1.2 |
|
Version 1.1.1 | Minor changes:
|
Version 1.1.0 | First release of the plugin. |