Cloud Management Platform vRealize Suite vRealize Suite Lifecycle Manager

Integrating Bitbucket Server using Content Management of vRSLCM

vRealize Suite Life Cycle Manager 2.1 content management allows user to add Bitbucket server as a source control endpoint. Users can perform operations such as checkin, checkout and deployment of content. As a part of this blogs we will go through the entire process to setup Bitbucket server in vRSLCM 2.1

 

Bitbucket Server Configuration

 

  • Creating Project and Repository in Bitbucket: Login to your Bitbucket in any browser as admin user and click on ‘Projects’ menu on top left corner. Then click on ‘Create Project’ and it will open wizard as below. Give unique Project name and click ‘Create project’ button.

Once we create the project then in next page we Create repository wizard as shown below. Enter the repository name and click on ‘Create repository’ button.

Once the repository is ready then initialize the project with README file. The steps will be given in repository page as below.

  • Creating personal access key and users in Bitbucket: In order for vRSLCM to integrate with Bitbucket we can add password as part of token key in vRSLCM content setting. But it is not recommended to give password as access key as Bitbucket provides provision to create personal access token from the portal. You can go to ‘Manage account’ menu on top right corner of profile icon and go to ‘Personal access tokens’ menu and in the bottom, you will get the option to ‘Create a token’. Once you create the token then copy the token to the vRSLCM content setting page which is covered in later section.

In order to support multiple developer story, Bitbucket provides option to add user to access repository as shown below. For this to achieve, admin has to give write permission to content developers so that content developer can login and create the token in Bitbucket portal. Then he/she can provide the access token in vRSLCM content setting page as discussed in section 3.

 

Configuring Bitbucket Server in vRSLCM

 

  • Adding source control access key in Content Settings of vRSLCM: Login to vRSLCM using admin user. Go to Content Management > Content Settings > Source Control Access. Then click on ADD SOURCE CONTROL SERVER and from drop down select Bitbucket Server and enter the Server Name.

Note: By default vRSLCM expect https URI scheme so only domain name is more than enough. If you are using http with port then you need to specify in the URL as below i.e. http://<ip/domain>:port

Once the admin adds the server then content developer roles can add the user name and access key. So content developer can login to vRSLCM and go to Content Management > Content Settings > Source Control Access. Click on edit icon button on right hand side of the Bitbucket server. Add user name and access key and click on SUBMIT button.

Note: You can also give your password as access key but this is not recommended practice.

  • Adding source control endpoint in vRSLCM: Once you have added source control server and access key then admin can create the endpoints. Go to Endpoints and click on ‘NEW ENDPOINT’ button and then click on ‘Source Control’ option. Select the added Source Control Server and give unique name to identify the source control. By default, the branch is master, if otherwise enter the branch name. Also add the project with repository name (project_name/repository_name). As shown below, the branch is master and the repository name is BLAC/content-management. Finally click on ‘TEST CONNECTION’ button.

Note:

  1. Project name and repository name where created in section 1.
  2. If you get any error please refer troubleshooting section 8.

Once you see the successful message and then click on ‘NEXT’ button the wizard will ask to enable review or not. This option is quite helpful for multi developer story where content developers want to review the content before final submission to repository. Finally click ‘SUBMIT’ on summary page.

 

Checkin, Capture, and Deploy from vRSLCM

 

  • Checkin captured content to Bitbucket Server: Once the endpoint is created then we can checkin our content to Bitbucket server. Go to ‘Content’ page and click on the captured content from content list page which you want to checkin to server. Then choose the version you want to checkin and click on the overflow icon which has ‘Checkin’ option as shown below.

Once you click on the option then popup will appear, select the Bitbucket server and enter the valid comments and finally click on ‘CHECK IN’ button.

While checking in a vRO or vRA content, there is an optional capability to merge with an existing vRO package that exists in the source control as shown in below image. This ensures that all files that are captured are checked into the path of the selected package and ultimately merged.

You can see the progress of your operation in Content Pipeline page as shown below.

 

 

  • Capture content from Bitbucket Server: You can capture your checked-in content from the Bitbucket server using vRSLCM. Go to Content > ADD CONTENT and select the source control option. From the drop down select the configured source control. A popup will appear where you can select the content from the content types.

Once we select the content then we can click on ‘Include dependencies’ check box and then ‘SUBMIT’ the request.

  • Deploy captured content from Bitbucket Server to endpoint: vRSLCM gives option to deploy the source control content to the endpoint. You can go the content version page from content list page of the captured content. You will see the ‘DEPLOY’ option. When you click on the button then pop up will appear as below. You can select the deploy endpoint and enter the comments. Once you fill the form then click on ‘PROCEED’ button. You can follow the status by going to Content Pipeline page or Activity Log page.

  1. Troubleshooting:
    1. Access token not configured: If we don’t  configure token for the Bitbucket in setting page then we will not be able to add the endpoints.
    2. Test connection error: This error normally occurs when  repository name or token is not correct. Please ensure that the repository consists of project name and repository name as (project_name/repository_name). Also see if you had given correct token in settings page.
    3. Capturing problem: While capturing the Bitbucket, it throws file not found exception. This happens when the checkin is not successful. Please ensure that the checkin is successful before capture.
    4. Checkin option missing: vRSLCM does not allow Check-in of source control content to another source control. Also vRSLCM does not allow checkin of vSphere template.