LabVIEW 개발을 위해 연속 통합 및 연속 전달/배포 (CI/CD) 모델을 채택하여 소스 컨트롤 시스템을 향상시킬 수 있습니다. CI/CD는 빈번하면서 관리가 용이한 코드 기여를 지원하고 어플리케이션을 자동으로 빌드하여 개발 위험을 관리할 수 있도록 지원합니다.

예를 들어 개발 과정에서 여러 개발자가 코드를 제공하는 경우, 코드 제출을 서로 조정하고 반복적으로 어플리케이션을 만드는 것이 유용합니다. 이렇게 하면 개발 사이클이 끝날 때까지 어플리케이션이 예상대로 작동하는지 테스트할 때까지 기다리는 것과 관련된 위험이 발생하지 않습니다. 또한 코드를 수동으로 테스트하고 어플리케이션을 만드는 것을 피할 수 있습니다.

NI는 CI/CD용 헤드리스 LabVIEW를 사용할 수 있도록 보다 쉽게 환경을 설정할 수 있도록 Docker 컨테이너를 제공합니다. 헤드리스 실행은 사용자가 상호작용하지 않고 코드나 작업을 실행하도록 설계된 비대화식 실행 모드를 의미합니다. 따라서 헤드리스 LabVIEW는 자동화된 워크플로를 활성화하도록 설계되었습니다. Windows와 Linux에서는 컨테이너를 사용할 수 있습니다.

표 3. LabVIEW CI/CD 워크플로의 구성요소 예에서는 LabVIEW를 CI/CD 워크플로에 통합하는데 사용할 수 있는 구성요소를 요약합니다.

표 3. LabVIEW CI/CD 워크플로의 구성요소 예
구성요소 설명
소스 컨트롤 아래의 코드 저장소

LabVIEW 코드의 저장소입니다.

  • 개발자는 코드 업데이트를 이 저장소에 추가합니다.
  • 다른 구성요소를 사용하여 코드 제출을 테스트하고 소스 코드에서 어플리케이션을 만듭니다.
LabVIEW VI Analyzer Toolkit

LabVIEW 코드의 정적 코드 분석을 위한 API.

VI 분석기 API를 사용하여 코딩 표준을 적용하는 테스트를 개발합니다. 예를 들어, 이 API를 사용하여 표준을 충족하지 않는 코드 기여를 거부할 수 있습니다.

LabVIEW 명령 라인 인터페이스(CLI)

LabVIEW CLI를 사용하여 자동화된 워크플로를 위해 LabVIEW를 다른 서비스에 접근할 수 있도록 합니다.

  • LabVIEW 어플리케이션의 빌드 프로세스를 자동화합니다.
  • LabVIEW에서 생성한 VI와 사용자 정의 작업을 실행합니다.
LabVIEW 어플리케이션 빌더 API

어플리케이션 빌더의 기능을 자동화하는 LabVIEW API. 빌드 스펙에 따라 빌드하고 빌드 스펙의 출력을 프로그램적으로 배포합니다.

이 API를 사용하여 어플리케이션을 빌드하고 배포하는 로직을 개발합니다.

LabVIEW Docker 컨테이너

CI/CD 작업 흐름을 활성화하기 위해 의존성과 함께 LabVIEW 설정을 단순화하기 위한 사전 패키지 환경.

오토메이션 파일

다른 동작이 발생할 때 수행할 동작을 정의하는 지원 파일.

예를 들어, Git 소스 컨트롤 시스템을 사용하는 경우, 훅을 사용하여 커밋에 대해 VI 분석기 테스트를 실행하도록 스크립트를 작성할 수 있습니다.

또한 YAML 파일을 저장소와 함께 사용하여 빌드 스펙 만들기와 같은 동작을 트리거할 수 있습니다.

자동화 서버

저장소의 변경사항에 따라 작업을 수행하는 Jenkins와 같은 서버.

예를 들어, 오토메이션 서버는 다음과 같은 작업을 수행할 수 있습니다.

  • 개발자가 저장소에 코드를 제공할 때 정의하는 워크플로를 구현합니다.
  • 어플리케이션 타겟에 업데이트된 어플리케이션의 배포를 관리합니다.