Continuous Integration

cancel
Showing results for 
Search instead for 
Did you mean: 

Is anyone using Pipelines in BitBucket?

Hey Everyone,

 

I've been trying to use pipelines in BitBucket to simply run a batch file that builds and tests my code. However, I've not been having much luck.

 

I want to get CI working with BitBucket as my company is currently paying for Atlasian software (BitBucket, JIRA etc).

 

Can anyone point me in the right direction / is it possible?

0 Kudos
Message 1 of 11
(5,307 Views)

We have Bamboo working with bitbucket (corrected).  Have you looked at Bamboo as an option?


Certified LabVIEW Architect, Certified Professional Instructor
ALE Consultants

Introduction to LabVIEW FPGA for RF, Radar, and Electronic Warfare Applications
0 Kudos
Message 2 of 11
(5,303 Views)

Hi Terry,

 

I've come across Bamboo before, but I've never used it. I'm not sure it would work with my setup as my BitBucket is cloud based.

 

If I were to change the setup to server based. How straightforward would setting up Bamboo be?

 

I see that 10 jobs with local agents is only $10, but unlimited jobs is $1,270. - so there's that 😕

0 Kudos
Message 3 of 11
(5,287 Views)

What's your issue?

 

I'm using Azure DevOps and local build servers to build LabVIEW code. I'm using the official CLI provided by NI.

Best Regards

Alex E. Munkhaus
Certified LabVIEW Developer (CLD)
System Engineer
0 Kudos
Message 4 of 11
(5,283 Views)

I am using cloud based BitBucket and server based bamboo. This is because I need to run FPGA compiles which no cloud based system can support. 


Certified LabVIEW Architect, Certified Professional Instructor
ALE Consultants

Introduction to LabVIEW FPGA for RF, Radar, and Electronic Warfare Applications
0 Kudos
Message 5 of 11
(5,279 Views)

I'm using Gitlab CI/CD pipelines, which appear to be very similar to the Bitbucket CI/CD.

It's been pretty easy to set up the main YAML file to define the overall pipeline (stages & jobs). Take a look at the Bitbucket documentation here:

https://support.atlassian.com/bitbucket-cloud/docs/configure-bitbucket-pipelinesyml/

 

There are some good examples to get you started there, and there are a lot of helpful youtube videos that help explain this stuff in a bit more detail.

 

I haven't looked too closely at the details of the Bitbucket implementation, but I presume it is like the Gitlab CI/CD in which you also need to set up workers/runners to actually perform the jobs you have configured. So you'll need to do a little homework and decide if you are going to leverage cloud resources for this, or set up your own runners. So far, I have been setting up runners on VMs at our company, which are then registered with specific projects/repos to execute their respective pipelines.

0 Kudos
Message 6 of 11
(5,248 Views)

I was looking at different development toolchains a while ago. IIRC, I came to the conclusion this wouldn't really be feasible because Bitbucket doesn't actually have support for setting up your own runners/workers.

 

I could be wrong, but I think you'd need a separate CI/CD tool if using Bitbucket to host your repository. I believe Jenkins could work; a quick search seems to say does have a plug-in for Bitbucket Cloud. I think you can setup external repositories for Gitlab CI jobs as well, although I think you need to be on one of their higher service tiers for that.

0 Kudos
Message 7 of 11
(5,235 Views)

Agree with Jim here.

 

Bitbucket doesn’t offer integrated runner/agent capabilities as eg GitLab or Azure DevOps do, but it does offer webhooks for other, external services like Jenkins. 

For reference, here’s the link to Jenkins‘ Bitbucket plugin which also offers integration with Bitbucket cloud:

https://plugins.jenkins.io/bitbucket/

 

Seeing as none of the big SCC providers offer shared runners (i.e. build servers) for LabVIEW, we have to maintain those ourselves anyhow.

 

So at the end of the day, for me GitLab is easier to use in terms of runner/agent integration, but other than that, many SCC providers offer comparable CI/CD features. 




DSH Pragmatic Software Development Workshops (Fab, Steve, Brian and me)
Release Automation Tools for LabVIEW (CI/CD integration with LabVIEW)
HSE Discord Server (Discuss our free and commercial tools and services)
DQMH® (The Future of Team-Based LabVIEW Development)


0 Kudos
Message 8 of 11
(5,224 Views)

I think I'm with Joerg - my vote would be for Jenkins and then using something to get your code from BitBucket onto your build system with Jenkins. If you want to do it in LabVIEW then I'm working on a Git system (and I think there will be a 7x7 about this during the GLA summit, but I guess you'd know better than me!)


GCentral
0 Kudos
Message 9 of 11
(5,218 Views)

Hi Everyone,

 

Thank you for your messages and advice. Like a lot of you have pointed out BitBucket doesn't natively offer what we're after.

 

I've managed to get Jenkins up and running with Bitbucket and everything's going well so far!

0 Kudos
Message 10 of 11
(5,188 Views)