zeugwerk/Zeugwerk CI/CD Action

Build and Test a TwinCAT3 project with a Zeugwerk CI/CD server.

View on GitHub

Trust Signals

Scorecard Score
not yet scored
Maintenance Recency
Stale
License
None
namedescriptionrequireddefault
usernameUsername for authenticating with the Zeugwerk CI/CD Service. Store this as a GitHub Actions secret and reference it via secrets.ZEUGWERK_USERNAME.yes""
passwordPassword for authenticating with the Zeugwerk CI/CD Service. Store this as a GitHub Actions secret and reference it via secrets.ZEUGWERK_PASSWORD.yes""
tcversionTwinCAT version to use for compiling and testing (e.g. TC3.1.4024.22). Must be available on the Zeugwerk CI/CD Server. If omitted, an available version is selected automatically.no""
platformTarget platform for the build (e.g. "TwinCAT RT (x64)"). Must match a platform supported by the Zeugwerk CI/CD Server.noTwinCAT RT (x64)
variant-buildName of the PLC project variant to build. If omitted, the default variant is used. Useful when the project defines multiple variants for different hardware configurations.no""
variant-testName of the PLC project variant to use when running unit tests. Typically this is a variant configured without hardware dependencies to allow tests to run in simulation.no""
static-analysisEnable TwinCAT static analysis during the build. Accepts "false" (disabled), "true" (= "light" analysis for open source user, "full" analysis for Zeugwerk Customers due to the Beckhoff License costs). Uses the static analysis settings defined in the .plcproj files.nofalse
installerWhen set to "true", generates an installer package that allows the PLC to be deployed to a target system from a Windows PC.nofalse
installer-nameOptional name of the installer file, defaults to "Setup-<REPO_NAME> <VERSION>.exe" if not setno""
workspacePath to the directory containing the .Zeugwerk folder. Use this when your project is not located at the repository root (e.g. "src/MyPlc/"). Defaults to the repository root "./".no./
versionOverrides the version number used when naming build artifacts. Accepts formats such as "1.2.3.4" or "1.2.3-alpha". If omitted, the version is derived from the latest tag on the repository.no""
skip-buildWhen set to "true", skips compiling the project and producing build artifacts. Useful when you only want to run unit tests without a full build, reducing pipeline execution time.nofalse
skip-testWhen set to "true", skips compiling and executing the unit tests defined in the project. Useful for faster feedback cycles when test results are not required (e.g. on draft PRs).nofalse
force-checksWhen set to "true", forces a "Check All Objects" pass even for application PLCs (those with at least one task). By default this check is skipped for applications since "Build Solution" is sufficient.nofalse
artifact-nameFile name for the downloaded build artifact archive. Defaults to "artifact.zip". Override this to avoid collisions when multiple build jobs upload artifacts in the same workflow run.noartifact.zip

no outputs