Skip to content

Patrick Builder v1.1 #21

@ciozi137

Description

@ciozi137

Updates

LabVIEW dynamically generates the commands that would be written to a batch file

  1. FRONT PANEL
  • File Path Control (Array): For selecting multiple VIPB files
  • LabVIEW Version Control (Numeric): Default to 2019
  • Build Status Indicator (String Array): Show progress for each file
  • Generate Script Button
  • Run Script Button
  1. BLOCK DIAGRAM LOGIC
  • For Each VIPB File:

    • Parse XML to extract:
      • Version number
      • Project name
      • Source directory
    • Build specs from associated lvproj
  • Generate Batch Commands:

    • Clear LabVIEW cache (once at beginning)
    • For each VIPB:
      • Git Flow Release Start
      • Add g-cli vipBuild command
      • Add g-cli lvBuild commands for application/installer
      • Add 7z commands for creating installer
      • Git Flow Release Finish
      • git push [repo]
      • git release
      • git push [package repo]
  • Write All Commands to Batch File

  • Optional: Execute Batch File

The generated batch file would have this structure:

@echo off
echo === Starting Multi-Project Build Process ===
echo %DATE% %TIME%

REM Clear LabVIEW cache once
echo Clearing LabVIEW cache...
g-cli --lv-ver 2019 --arch 64 ClearCache

REM ============= Project: Cryostation =============
echo Building Cryostation VIPB...
g-cli --lv-ver 2019 vipBuild -- -versionNumber 1.3.0.6 "C:\Path\To\Cryostation.vipb"

echo Building Cryostation Application...
g-cli --lv-ver 2019 --arch 64 lvBuild -- -versionNumber "1.3.0.6" "C:\Path\To\Cryostation.lvproj" "Cryostation Application"

echo Building Cryostation Installer...
g-cli --lv-ver 2019 --arch 64 lvBuild -- -versionNumber "1.3.0.6" "C:\Path\To\Cryostation.lvproj" "Cryostation Installer"

echo Creating Cryostation self-extracting installer...
cd "C:\Path\To\builds\7z Install"
del Volume.7z
7z.exe a Volume.7z "..\Installer\Volume\*"
copy /b 7zSD.sfx + config.txt + Volume.7z "..\latest\Cryostation-1.3.0.6-install.exe"

REM ============= Project: AnotherProject =============
echo Building AnotherProject VIPB...
g-cli --lv-ver 2019 vipBuild -- -versionNumber 2.1.0.0 "C:\Path\To\AnotherProject.vipb"

REM ... additional commands for this project ...

echo === Build Process Complete ===
echo %DATE% %TIME%

Metadata

Metadata

Assignees

Labels

No labels
No labels

Type

No type

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions