GLA Summit 2021/Continuous Integration: What it is, what it is not, and what it could be

From LabVIEW Wiki
Jump to: navigation, search

Continuous Integration: What it is, what it is not, and what it could be by Joerg Hampel

Lots of advanced software processes and tools that are standard in other programming languages lack adoption in our NI ecosystem, either due to actual technical reasons or because of the team size and proficiency, and because of the way a typical LabVIEW project is run. People in our bubble usually use the term CI or CI/CD or Continuous Integration for anything that has to do with triggering some process by / through source code control. I would like to help educate our community on the definitions as they are accepted in the greater SW development community.

My presentation will start out by giving examples of why automation (or "continuous integration") is useful and which benefits it brings. I will give proper definitions of the vocabulary used and explain them in detail (see this NI Forums thread). I will talk about Continuous Integration vs. branch-based development, and describe how both can be used together with server-side (or local) automation of processes. I will also touch on different CI providers (eg GitLab) and supporting technologies (eg VMs and Docker images) to give an overview of the current state of affairs in the LabVIEW world.

Finally, I will focus on our (HSE) way of working - i.e. the processes and tools we use in our customer work - as one example of a good set of best practices and their automation.

Presentation Links

See Also

Discussion on the term "Continuous Integration" (NI Forums)

External Links

HSE Release Automation Tools

HSE Way of Working: Workflows (HSE Dokuwiki)