Commit Graph
36 Commits
Author SHA1 Message Date
f7faa076a9 name the application executable when copying to the gamedir
every build artifact also carries Ja2Export.exe, so the glob handed mv
three paths and it failed with "target 'gamedir/ja2.exe' is not a
directory". The assemble job runs on Windows, so the lowercase matrix
name matches the uppercase target file.

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
2026-07-27 15:04:58 -03:00
3471b19fdc split the release jobs into their own workflow
A skipped job still shows up in a pull request's check list, so assemble
and release reported there as two permanently skipped checks. A job can
only be left out of a run graph it does not belong to, so move both into
release.yml, which triggers on master, v* tags and manual dispatch, and
gets its build by calling build.yml through workflow_call. A pull request
now runs build.yml directly and reports exactly the five checks it can
actually pass.

The global_vars step only existed to compute assemble_release for the two
jobs that left, and it read the workflow_dispatch input, which a called
workflow cannot see. Its logic moves to a condition on assemble itself,
unchanged: a manual run assembles only when asked, tags always assemble,
master assembles only upstream. The release job needs no condition since
a skipped assemble skips it.

Check out the source rather than cloning it by hand. A pull request
builds its merge commit, which is on no branch and so is absent from a
clone of branches and tags; it resolved only because --filter=tree:0 made
the clone partial and git fetched it from the promisor remote on demand.
The action fetches the merge ref itself, so nothing hinges on the filter.

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
2026-07-27 14:39:51 -03:00
d68f046ea3 build on pull requests, drop per-branch push builds
A push builds in the repository it was pushed to, so a contributor's
branch builds in their fork and the base repository sees nothing. Without
a run of its own there is no check on the pull request for branch
protection to require, so trigger on pull_request as well.

Push builds narrow to master and v* tags: with pull requests covered,
building every branch push only duplicated the same commit's build across
four Windows matrix jobs. Master still builds so the "latest" pre-release
keeps updating. A branch with no pull request open builds via
workflow_dispatch.

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
2026-07-27 14:39:51 -03:00
b6c79dbead make sccache available for all cmake users, not only CI
if you have it in your path, the build will use

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
2026-07-24 06:16:42 -03:00
f99786e195 cache compiled objects with sccache
Compiler cache stored in the GitHub Actions cache, shared across runs.

Requires /Z7 instead of the CMake default /Zi, since sccache cannot cache
objects whose debug information lands in a shared PDB. That is a debug
information format change only, the generated code is unchanged.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
2026-07-24 06:16:42 -03:00
Marco Antonio J. Costaandmajcosta 9adc1ad998 node20 is deprecated, clear the warnings
bump action versions and change the MSVC action to a composite one that doesn't use node at all

also remove msbuild which we don't need
2026-07-21 14:45:04 -03:00
Marco Antonio J. Costaandmajcosta d03989051a remove Languages from CI
no need anymore
2026-07-21 11:23:08 -03:00
majcostaandAsdow 96ede9299f Change CMake build type from Release to RelWithDebInfo 2025-12-04 19:47:04 +02:00
Marco Antonio J. Costaandmajcosta cf6cc2a213 Revert "use link-time optimization when creating a release"
If this is ever the default, it should be set in the CMakeLists.txt file, not in the CI alone. My bad.

This reverts commit a7b0091a27.
2025-09-27 20:02:15 -03:00
CptMoore 8644e5f8b9 Update build.yml 2025-07-25 10:25:46 +02:00
CptMoore 9df885a264 Fixed tagged releases #2 2025-04-09 20:33:32 +02:00
CptMooreandGitHub 5ed70befb4 Fixed tagged releases (#429)
Fixed tagged releases
2025-04-09 19:52:23 +02:00
Marco Antonio J. Costaandmajcosta 7aa0e18352 Revert "make sure these steps run"
This reverts commit 1976dee738.

Revert "yet another fix for the github actions"

This reverts commit 552951795c.

Revert "make sure CI to assemble release on 'v*' tag push or manually"

This reverts commit 8897769f0d.
2025-01-07 16:51:30 -03:00
Marco Antonio J. Costaandmajcosta 1976dee738 make sure these steps run
otherwise there is no 'source' working directory for the final step
2025-01-07 14:13:46 -03:00
Marco Antonio J. Costaandmajcosta 552951795c yet another fix for the github actions
github.ref_name isn't 'master' when a tag is pushed, but the tag name,
so it won't trigger a release build when a 'v*' tag is pushed
2025-01-07 13:19:03 -03:00
Marco Antonio J. Costaandmajcosta 8897769f0d make sure CI to assemble release on 'v*' tag push or manually
also put bash script through shellcheck to be more posix compliant
2025-01-07 13:09:23 -03:00
Marco Antonio J. Costaandmajcosta a7b0091a27 use link-time optimization when creating a release
it's a lot slower, but we don't release often
2025-01-01 18:10:47 -03:00
Marco Antonio J. Costaandmajcosta 7aafa7aada fix the GitHub actions for VS2022's quirk too
missed this change in 98cdffe5, fix it now
2025-01-01 18:10:47 -03:00
CptMoore b081f2af88 Another fix for new release steps 2024-02-04 08:44:12 +01:00
CptMoore c1e72eaab2 Updated github actions, fix for new release steps 2024-02-04 08:16:09 +01:00
CptMooreandGitHub 082b42ef73 Simplified release github steps 2024-02-04 07:34:02 +01:00
Marco Antonio Jaguaribe Costaandmajcosta f11393728c Unbreak Github Actions
our CI expects GameVersion.cpp to be at the root directory. just unbreak
for now.
2023-10-23 19:28:23 -03:00
CptMooreandGitHub 1bb8a214c9 Update build.yml 2023-07-31 00:28:42 +02:00
CptMooreandGitHub 32e49784a0 Update build.yml 2023-07-30 23:33:28 +02:00
CptMooreandGitHub 2345dd0ae6 Update build.yml 2023-07-30 19:22:23 +02:00
CptMooreandGitHub f16f137f2b Create latest tag explicitly
Apparently the github API does too much magic, lets hope removing a step will make it behave
2023-07-30 09:48:11 +02:00
Marco Antonio Jaguaribe Costaandmajcosta 74f4979296 A few nits
create empty CMakeUserPresets.json file so build happens on first run
comment doesn't apply anymore
no need to specify the compiler when using msbuild@xxx
ask ninja for the verbose command line when building
2023-04-22 04:31:37 -03:00
CptMooreandmajcosta d8728c9b92 GitHub Workflow: Adjusted for CMake. 2023-04-22 04:31:37 -03:00
CptMooreandGitHub 172d7d20ba Fixed github workflow latest release again 2023-04-08 10:36:47 +02:00
CptMooreandGitHub 6618309895 Fix broken build process 2023-03-21 13:13:48 +01:00
CptMooreandGitHub 9f5b181299 Don't push v1.13 tag but fake a v0. Normalized product label, especially removed prepended v to avoid confusion with git tags, also matches the main menu logo now. (#72) 2023-01-11 21:58:21 -08:00
CptMooreandGitHub 1a75806dd2 GitHub Workflow improvements (#59)
* GitHub Workflow improvements
- Automatically pre-release master as "latest"
- Build all languages
- Parallelize workflow
- Support tag based releases

* GitHub Workflow: Added support for ja2ubmapeditor.
2023-01-10 17:52:46 -08:00
rftrdevandGitHub 1bcdf6e198 Update build action (#40)
Remove version info from exes, add txt file with source and gamedir version info
2022-12-06 01:18:12 -08:00
rftrdevandGitHub 1440f80c02 Update build information (#31)
* Update date format and add date to filename output

Date is now displayed numerically as YYYYMMDD

* Remove build date and SVN version
2022-11-22 23:51:40 -08:00
rftrdevandGitHub 98f481072a Rename map editor output (#22)
Add "ja2_" prefix
2022-11-09 18:06:21 -08:00
rftrdevandGitHub 5a7026c2d3 SCI builder (#20) 2022-11-09 10:12:12 -08:00