From 736d1732715cece0f668ec353580c2bf964237f5 Mon Sep 17 00:00:00 2001 From: NEVSTOP <8196752+nevstop@users.noreply.github.com> Date: Fri, 14 Aug 2026 11:06:45 +0800 Subject: [PATCH 1/3] merge Build_VIPM_Library.yml and Check_Broken_VIs.yml into unified labview-ci.yml --- .github/workflows/labview-ci.yml | 80 ++++++++++++++++++++++++++++++++ 1 file changed, 80 insertions(+) create mode 100644 .github/workflows/labview-ci.yml diff --git a/.github/workflows/labview-ci.yml b/.github/workflows/labview-ci.yml new file mode 100644 index 0000000..26cba29 --- /dev/null +++ b/.github/workflows/labview-ci.yml @@ -0,0 +1,80 @@ +# Merged LabVIEW CI workflow +# Combines Build_VIPM_Library.yml and Check_Broken_VIs.yml into one pipeline: +# Check_Broken_VIs -> Build_VIPM_Library +# All steps run sequentially on the SAME (self-hosted) machine with a SINGLE checkout. + +name: LabVIEW CI + +on: + pull_request: + branches: + - main + types: [closed] + + push: + paths-ignore: + - '**.md' + + workflow_dispatch: + +jobs: + labview_ci: + runs-on: [self-hosted, lv2017] + + steps: + # Get env variables + # https://github.com/marketplace/actions/github-environment-variables-action + - uses: FranzDiebold/github-env-vars-action@v2 + + # Checks-out your repository under $GITHUB_WORKSPACE, so your job can access it + - uses: actions/checkout@v3 + + # --- Step 1: Check for broken VIs --- + - id: Check_Broken_VIs + uses: LV-APT/lvCICD@main + with: + LabVIEW_Version: 2017 + Operation: VIAn_CheckBrokenVIs + Parameter1: ${{ github.workspace }} + Parameter2: NOPASSWORD + Parameter3: YES + Parameter4: -placeContent + + # --- Step 2: Build the VIPM library --- + - name: BuildDailyVIP + id: build-vip + uses: LV-APT/lvCICD@main + with: + LabVIEW_Version: 2017 + Operation: vipm_BuildDailyVIP + Parameter1: ${{ github.workspace }} + Parameter2: NO + + - id: vip-name + run: + $vipName=Split-Path -Path ${{ steps.build-vip.outputs.Result }} -Leaf; + Write-Host "::set-output name=vipName::"$vipName"" + shell: powershell + + - name: Upload a Build Artifact + uses: actions/upload-artifact@v4.3.2 + with: + # Artifact name + name: ${{ steps.vip-name.outputs.vipName }} + path: ${{ steps.build-vip.outputs.Result }} + # The desired behavior if no files are found using the provided path. + if-no-files-found: warn + retention-days: 90 + + # Backup generated files by ftp + # https://github.com/marketplace/actions/simple-ftp-upload + - name: backup Build Artifact by ftp + uses: dennisameling/ftp-upload-action@v1.0.9 + with: + server: ${{ secrets.VIPM_FTP_IP }} + port: ${{ secrets.VIPM_FTP_PORT }} + username: ${{ secrets.VIPM_FTP_USER }} + password: ${{ secrets.VIPM_FTP_PASSWORD }} + secure: false + server_dir: /${{ env.CI_REPOSITORY_OWNER_SLUG }}/${{ env.CI_REPOSITORY_NAME }}/${{ env.CI_ACTION_REF_NAME }}/ + local_dir: ./vip/ \ No newline at end of file From 1836a1df83df4332a105d7e21dc013070906df50 Mon Sep 17 00:00:00 2001 From: NEVSTOP <8196752+nevstop@users.noreply.github.com> Date: Fri, 14 Aug 2026 11:07:15 +0800 Subject: [PATCH 2/3] remove old Build_VIPM_Library.yml (merged into labview-ci.yml) --- .github/workflows/Build_VIPM_Library.yml | 75 ------------------------ 1 file changed, 75 deletions(-) delete mode 100644 .github/workflows/Build_VIPM_Library.yml diff --git a/.github/workflows/Build_VIPM_Library.yml b/.github/workflows/Build_VIPM_Library.yml deleted file mode 100644 index 90c4a47..0000000 --- a/.github/workflows/Build_VIPM_Library.yml +++ /dev/null @@ -1,75 +0,0 @@ -# This is a basic workflow to help you get started with Actions - -name: Build_VIPM_Library - -# Controls when the workflow will run -on: - # Triggers the workflow on push or pull request events but only for the main branch - pull_request: - branches: - - main - types: [closed] - - push: - paths-ignore: - - '**.md' - - # Allows you to run this workflow manually from the Actions tab - workflow_dispatch: - -# A workflow run is made up of one or more jobs that can run sequentially or in parallel -jobs: - # This workflow contains a single job called "build" - Build_VIPM_Library: - # The type of runner that the job will run on - runs-on: [self-hosted, lv2017] - - # Steps represent a sequence of tasks that will be executed as part of the job - steps: - - # Get env variables - # https://github.com/marketplace/actions/github-environment-variables-action - - uses: FranzDiebold/github-env-vars-action@v2 - - # Checks-out your repository under $GITHUB_WORKSPACE, so your job can access it - - uses: actions/checkout@v3 - - # Runs a set of commands using the runners shell - - name: BuildDailyVIP - id: build-vip - uses: LV-APT/lvCICD@main - with: - LabVIEW_Version: 2017 - Operation: vipm_BuildDailyVIP - Parameter1: ${{ github.workspace }} - Parameter2: NO - - - id: vip-name - run: - $vipName=Split-Path -Path ${{ steps.build-vip.outputs.Result }} -Leaf; - Write-Host "::set-output name=vipName::"$vipName"" - shell: powershell - - - name: Upload a Build Artifact - uses: actions/upload-artifact@v4.3.2 - with: - # Artifact name - name: ${{ steps.vip-name.outputs.vipName }} - path: ${{ steps.build-vip.outputs.Result }} - # The desired behavior if no files are found using the provided path. - if-no-files-found: warn - retention-days: 90 - - # Backup generated files by ftp - # https://github.com/marketplace/actions/simple-ftp-upload - - name: backup Build Artifact by ftp - uses: dennisameling/ftp-upload-action@v1.0.9 - with: - server: ${{ secrets.VIPM_FTP_IP }} - port: ${{ secrets.VIPM_FTP_PORT }} - username: ${{ secrets.VIPM_FTP_USER }} - password: ${{ secrets.VIPM_FTP_PASSWORD }} - secure: false - server_dir: /${{ env.CI_REPOSITORY_OWNER_SLUG }}/${{ env.CI_REPOSITORY_NAME }}/${{ env.CI_ACTION_REF_NAME }}/ - local_dir: ./vip/ - From 7535bf15f8f68f94c2a07d53983821bffc30b425 Mon Sep 17 00:00:00 2001 From: NEVSTOP <8196752+nevstop@users.noreply.github.com> Date: Fri, 14 Aug 2026 11:07:17 +0800 Subject: [PATCH 3/3] remove old Check_Broken_VIs.yml (merged into labview-ci.yml) --- .github/workflows/Check_Broken_VIs.yml | 36 -------------------------- 1 file changed, 36 deletions(-) delete mode 100644 .github/workflows/Check_Broken_VIs.yml diff --git a/.github/workflows/Check_Broken_VIs.yml b/.github/workflows/Check_Broken_VIs.yml deleted file mode 100644 index 7f849cf..0000000 --- a/.github/workflows/Check_Broken_VIs.yml +++ /dev/null @@ -1,36 +0,0 @@ -# This is a basic workflow to help you get started with Actions - -name: Check_Broken_VIs - -# Controls when the workflow will run -on: - # Triggers the workflow on push or pull request events but only for the main branch - push: - paths-ignore: - - '**.md' - - '**.txt' - - '**.drawio' - - '**.vipb' - -# A workflow run is made up of one or more jobs that can run sequentially or in parallel -jobs: - # This workflow contains a single job called "build" - Check_Broken_VIs: - # The type of runner that the job will run on - runs-on: [self-hosted, lv2017] - - # Steps represent a sequence of tasks that will be executed as part of the job - steps: - # Checks-out your repository under $GITHUB_WORKSPACE, so your job can access it - - uses: actions/checkout@v3 - - # Runs a set of commands using the runners shell - - id: Check_Broken_VIs - uses: LV-APT/lvCICD@main - with: - LabVIEW_Version: 2017 - Operation: VIAn_CheckBrokenVIs - Parameter1: ${{ github.workspace }} - Parameter2: NOPASSWORD - Parameter3: YES - Parameter4: -placeContent