Available under the Integration Family: SCM
Bitbucket Integration is used to connect Shippable DevOps Assembly Lines platform to bitbucket.org. There are 3 ways in which this type of integration can be added:
- You sign in to Shippable with Bitbucket credentials. In this case, we automatically set up an Account Integration named
Bitbucketfor you. This integration is the default one that we use when you enable CI projects for your repos and sync your permissions with Bitbucket.
- Second, you can manually add this to your account integrations. This takes a Bitbucket APO
Tokenvalue as input and gives you whatever level of access as the token has.
- Third, if you used another method of signing into Shippable, then from your Account Profile you can connect your Bitbucket account to have multi-provider login to your account
Creating an Account Integration
You can add this account integration by following steps on the Adding an account integration page.
Here is the information you need to create this integration:
- Integration type -- Bitbucket
- Name -- choose a friendly name for the integration
- URL -- your Bitbucket API endpoint. This is already hard-coded to https://bitbucket.org
- Token -- Your Bitbucket token with the permissions needed to run your jobs
Usage in Assembly Lines
The Bitbucket integration can be used in the following resources:
Default Environment Variables
When you create a resource with this integration, and use it as an
OUT for a
runCI job, a set of environment variables is automatically made available that you can use in your scripts.
<NAME> is the the friendly name of the resource with all letters capitalized and all characters that are not letters, numbers or underscores removed. Any numbers at the beginning of the name are also removed to create a valid variable. For example,
my-key-1 will be converted to
my_key_1 will be converted to
||Bitbucket API location|
||The Token used to connect to Bitbucket|
Shippable Utility Functions
The platform also provides a command line utility called
shipctl that can be used to retrieve the values of these environment variables.
The specific function that can be used in the jobs yml is:
shipctl get_integration_resource_field <resource name> <field name>.
Here is a table that provides the mapping from the environment variable to the field name.
|Environment variable||Field Name|
More information on other utility functions is documented here.