Continuous Integration

A collection of 20 posts
Checking for New GitLab Releases

Checking for New GitLab Releases

In my previous posts, I talked about automatic versioning and automatically creating releases. The next step is to create auto-updating code. By auto-updating I don’t mean code that automatically updates behind your user’s back ala Windows 10. You can do that if you want, but I believe the
6 min read
Automating Gitlab Releases

Automating Gitlab Releases

My previous post talked about versioning. I thought I would add to that discussion by talking about how I do releases and how I setup auto-updating in my apps, using the GitLab Package Repository. This a new feature I’ve started adding lately, so it’s still a work in
8 min read
Automatic Versioning

Automatic Versioning

At the GLA Summit recently minted LabVIEW Champion Felipe Pinheiro Silva gave a 7×7 on versioning. It was interesting. Be sure to take a few minutes and watch it when the video is released. I do things slightly differently. I learned my method from another LabVIEW Champion, Stefan Lemmens.
7 min read
Trouble Shooting GitLabCI

Trouble Shooting GitLabCI

I saw a post recently on LinkedIn by Jim Kring. He had some issues with a build hanging unexpectedly. They were running Jenkins under a system account and therefore it was really hard to see what was going on to be able to troubleshoot it. Jim then linked to a
3 min read
Quick VI Analyzer

Quick VI Analyzer

I haven’t talked a whole lot about VI Analyzer yet. It’s a static code analysis tool. If you come from text-based background, it is similar to a linter. It checks your code against a set of predefined rules and reports back any violations. You do need LabVIEW professional
10 min read
GitLab CI and Git Bash

GitLab CI and Git Bash

A while back GitLab CI deprecated the batch executor for Windows runners. That meant that you could no longer directly call batch scripts from a Gitlab Runner. They had switched over to Powershell. There were workarounds. You could still write a batch script and call it from PowerShell using cmd.
3 min read
Unit Tests for PPLs

Unit Tests for PPLs

So in my Unit Testing Workshop, I talk about taking tests written for libraries and retargetting them to the PPL once the library is built into PLLs. The last time I taught the workshop, someone asked me for an example. I didn’t have a good example to share, so
5 min read
Continuous Integration vs Feature Branches

Continuous Integration vs Feature Branches

After reading the Continuous Delivery Book, I have been thinking a lot about branching strategies and Continuous Integration versus Feature Branching. I put together this little chart of the pros and cons of each. Feature BranchingContinuous IntegrationTrustDoes not require trust. You can control via GitLab who can merge into main
2 min read
Fowler's Branching Patterns

Fowler's Branching Patterns

Martin Fowler is prolific writer about software development. One of his more well-known books is probably Refactoring. He also has a blog with lots of good content. After reading the Continuous Delivery book and working on my Using Git Effectively course, I have been thinking a lot about branching strategies.
2 min read
Branch by Abstraction

Branch by Abstraction

In the past I have been a big fan of Git Flow. I still am, but I recently read the book Continuous Delivery and it has me rethinking some things. In particular they talk about Continuous Integration and not using feature branches, which is a very large component of Git
4 min read
Continuous Delivery

Continuous Delivery

A year or two ago, I was talking to Nancy about my interest in Continuous Integration (CI). She put me onto this book called Continuous Delivery (CD). It’s a little dated. The technologies have changed but all the principles still apply. If you are interesting in learnig more about
4 min read
What is Docker?

What is Docker?

I recently posted a book review for a book about learning Docker. I immediately got some feedback that I did not do a great job of explaining exactly what Docker is. This post is going to be a brief explanation of exactly what Docker is and particularly how it compares
4 min read
Docker in Action

Docker in Action

Note: for more on Docker itself, see here. Chris Stryker has recently put a lot of effort into getting LabVIEW to run inside of a Docker Container. This is really exciting news. I think this is really a huge step forward in improving Continuous Integration (CI) with LabVIEW. It offers
3 min read

August 2019 Webinar

Basic Continuous Integration with GitLab and LabVIEW – 8/28 at 11am MT How do I make sure my unit tests get run regularly? Maybe you have unit tests, vi analyzer tests, and a build process in place but how often do you actually run them? What if one action that
2 min read

The benefits of Continuous Integration

In a previous post, I talked about various ways to earn technical interest. One of those ways was Continuous Integration or CI. I thought I would elaborate a little on the benefits of using CI to automate the boring stuff so you can detect problems early, streamline your process, and
3 min read

Six Easy Ways To Earn Technical Interest

Steve Watts recently made a excellent blogpost about Technical Accounting. If you don’t follow Steve’s blog you definitely should. In this particular article, he coined the terms Technical Debt, Technical Investments, Technical Assets, and Technical Tax. Steve’s talk of Technical Investments, got me thinking about Technical Interest.
4 min read