4d/Build 4D
Build 4D code
View on GitHubTrust Signals
- Scorecard Score
- not yet scored
- Maintenance Recency
- Activelast commit Apr 16, 2026
- License
- MIT
Pinned Snippet
uses: 4d/build4d-action@e20fe207ac126f6390e1cf939f4e86a8aca3ac0c # v2.2tags can be moved; commit SHAs can't. why a SHA?
Inputs
| name | description | required | default |
|---|---|---|---|
| project | Project to build | no | — |
| targets | If not defined, only a check syntax is done. Possible values: "x86_64_generic", "arm64_macOS_lib" if macOS. (some shortcut all, current, available) | no | "" |
| type-inference | String "all": Type all variables, "locals": Process and interprocess are typed, "none": "All variables are typed" | no | none |
| generate-symbols | true to generate symbol information in the .symbols returned object | no | False |
| generate-typing-methods | "reset" or "append" to generate typing methods. If value is "append", existing variable declarations won't be modified (compiler window behavior). If value is "reset" existing variable declarations are removed beforehand. | no | "" |
| generate-syntax-file | To generate a syntax file for code https://developer.4d.com/docs/settings/general) in the Resourcesn.lproj folder of the project | no | "" |
| ignore-warnings | Never display compilation warnings. | no | False |
| fail-on-warning | Failed on warnings. | no | False |
| actions | One or more among "build","pack","sign","archive" | no | "" |
| output-directory | Directory to output build. Default is "build" | no | "" |
| sign-certificate | Name of the certificate to use. Mandatory to sign on macOS. | no | "" |
| sign-files | List of file paths to sign too relative to base folder | no | "" |
| sign-as-bundle | Sign as bundle using app_sign_pack_notarize.sh from tool4d.app instead of file-by-file signing. Set to 'false' to disable bundle signing. If set to 'true' but app_sign_pack_notarize.sh is not found, automatically falls back to file-by-file signing. | no | true |
| entitlements-file | Path of entitlement files to sign (if not defined use default one) | no | "" |
| archive-name | Define name of the archive produced with action 'archive'. (Default is 4d project name with space replaced by -) | no | "" |
| before-build | Script or binary to execute before the build action starts. Can be a shell command, script path, or executable binary. | no | "" |
| after-build | Script or binary to execute after the build action completes. Can be a shell command, script path, or executable binary. | no | "" |
| always-run-after-build | Whether to run the after-build hook even if the build fails. Set to 'true' to always execute after-build regardless of build success/failure. | no | false |
| strip-tests | Remove test methods (test_*.4dm) from the project before compilation. Set to 'true' to remove test methods. | no | false |
| product-line | tool4d product line | no | 21.x |
| version | tool4d version | no | 21.0 |
| build | tool4d build number | no | latest |
| token | if needed a token to download | no | — |
Outputs
| name | description |
|---|---|
| tool4d | Path to the tool4d executable |
| project | Path to the 4D project that was processed |