.. | ||
__snapshots__ | ||
index.spec.ts | ||
index.ts | ||
readme.md | ||
schema.ts | ||
types.ts | ||
utils.spec.ts | ||
utils.ts |
Bitbucket Data Center and Server
Authentication
First, create a HTTP access token for the bot account. Let Renovate use your HTTP access token by doing one of the following:
- Set your HTTP access token as a
token
in yourconfig.js
file - Set your HTTP access token as an environment variable
RENOVATE_TOKEN
- Set your HTTP access token when you run Renovate in the CLI with
--token=
If you use project or repository based HTTP access tokens, it can only be used as token
.
Remember to set platform=bitbucket-server
somewhere in your Renovate config file.
If you're not using @renovate-bot
as username then set your custom username
for the bot account.
If you use MySQL or MariaDB you must set unicodeEmoji
to false
in the global bot config (RENOVATE_CONFIG_FILE
) to prevent issues with emojis.
Unsupported platform features/concepts
- Adding assignees to PRs not supported (does not seem to be a Bitbucket concept)
- Adding/removing labels (Bitbucket limitation)
Features awaiting implementation
- Creating issues not implemented yet, used to alert users when there is a config error
- The
automergeStrategy
configuration option has not been implemented for this platform, and all values behave as if the valueauto
was used. Renovate will implicitly use the merge strategy configured as 'default' in the Bitbucket Server repository itself, and this cannot be overridden yet
Testing
If you want a test Bitbucket server locally rather than with your production server, Atlassian's Bitbucket Server Docker image is really convenient.
In line with their instructions, the following commands bring up a new server:
docker volume create --name bitbucketVolume
docker run -v bitbucketVolume:/var/atlassian/application-data/bitbucket --name="bitbucket" -d -p 7990:7990 -p 7999:7999 atlassian/bitbucket-server:5.12.3
Once it's running and initialized, the quickest way to testing with Renovate is:
- Create the admin user as prompted
- Create a new project and a repository for that project
- Make sure the repository has a package file in it for Renovate to find, e.g.
.nvmrc
orpackage.json
- Create a dedicated Renovate user
@renovate-bot
and grant it write access to the project - Note down the password for
@renovate-bot
and use it in the Renovate CLI
At this point you should have a project ready for Renovate, and the @renovate-bot
account ready to run on it. You can then run like this:
npx renovate --platform=bitbucket-server --endpoint=http://localhost:7990 --git-fs=http --username=renovate-bot --password=abc123456789! --log-level=debug --autodiscover=true
Alternatively using env:
export RENOVATE_PLATFORM=bitbucket-server
export RENOVATE_ENDPOINT=http://localhost:7990
export RENOVATE_GIT_FS=http
export RENOVATE_USERNAME=renovate-bot
export RENOVATE_PASSWORD=abc123456789!
export LOG_LEVEL=debug
npx renovate --autodiscover=true
You should then get a "Configure Renovate" onboarding PR in any projects that @renovate-bot
has been invited to.
Supported versions
We support all Bitbucket Server versions which are not EOL. See Atlassian Support End of Life Policy for up-to-date versions.