Skip to content

Action to Build PPLs in Windows and Linux#37

Merged
watsnav merged 53 commits intoni:actionsfrom
KSharma-NI:users/krishsha/build-lvlibp-action
Mar 18, 2026
Merged

Action to Build PPLs in Windows and Linux#37
watsnav merged 53 commits intoni:actionsfrom
KSharma-NI:users/krishsha/build-lvlibp-action

Conversation

@KSharma-NI
Copy link
Contributor

@KSharma-NI KSharma-NI commented Mar 16, 2026

Summary

  • Adds actions to build PPL given a project, optionally setting the version before build.
    • For Linux, we use linux docker container to build the lvlibp.
    • For Windows (64-bit), we use windows docker because it comes with 64-bit LabVIEW.
    • For Windows (32-bit), github hosted runners are used. The action is written such that the user can provide the version and bitness, so it is not restricted to using a specific LabVIEW installer.

For all 3 workflows, the version is of the format Major.Minor.Build.Patch. If the version string is not available (because of any one of these 4 fields being unavailable), the version will not be updated in the build spec.

If a particular build specification is not specified, it builds all build specifications in the project. If a version is provided, it will be applied to all build specifications.

To set the version, the following VIs are used:

  1. SetBuildVersionCaller.vi
    Gets the Build specification name, Project path, Target name and Version as input and then calls SetBuildVersion.vi to actually set the version in the build specs based on the version string which is split into a string array.
    If no build specification name is given, it iterates through all build specs and calls SetBuildVersion.vi to set the version for all.
image image
  1. SetBuildVersion.vi
    Sets the version based on the array of strings. It uses Set Build Specification Version.vi from vi.lib folder to do so. This also needs the Build specification name, Project path and Target name. The Target Name defaults to "My Computer".
image image

Requirement(s)

  • Build lvlibp docker linux (REQ-[039])
  • Build lvlibp docker windows (REQ-[040])
  • Build lvlibp github hosted windows (REQ-[041])

Testing

Krishna Sharma and others added 30 commits March 6, 2026 17:58
Build PPL in Linux and Windows docker container
@KSharma-NI KSharma-NI marked this pull request as ready for review March 16, 2026 08:49
@KSharma-NI KSharma-NI marked this pull request as draft March 16, 2026 08:49
@KSharma-NI KSharma-NI force-pushed the users/krishsha/build-lvlibp-action branch from be0d1d4 to 4ffb58f Compare March 16, 2026 09:57
@KSharma-NI KSharma-NI marked this pull request as ready for review March 16, 2026 10:02
@crossrulz
Copy link

Summary

  • Adds actions to build PPL given a project, optionally setting the version before build.

    • For Linux, we use linux docker container to build the lvlibp.
    • For Windows (64-bit), we use windows docker because it comes with 64-bit LabVIEW.
    • For Windows (32-bit), github hosted runners are used.

I was told by Greg Richardson the LabVIEW docker images had 32-bit and 64-bit LabVIEW installed. You just had to point to C:\Program Files... or C:\Program Files (x86)...

@watsnav watsnav self-assigned this Mar 17, 2026
@KSharma-NI KSharma-NI changed the title Users/krishsha/build lvlibp action Action to Build PPLs in Windows and Linux Mar 17, 2026
@KSharma-NI KSharma-NI marked this pull request as draft March 17, 2026 12:03
@KSharma-NI KSharma-NI marked this pull request as ready for review March 17, 2026 18:01
@watsnav watsnav merged commit f4ec6a3 into ni:actions Mar 18, 2026
2 of 6 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants