Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

GH Actions: Package source builds into GitHub releases as archive files #190

Open
wants to merge 20 commits into
base: development
Choose a base branch
from

Conversation

dijksterhuis
Copy link
Contributor

@dijksterhuis dijksterhuis commented Nov 22, 2024

Example release can be seen here: https://github.com/dijksterhuis/bn-mf/releases/tag/v1.00.04.indev

Packaged source builds on a development commit push

Builds release archives via GitHub Actions and a python script, so folks can more easily download and build their own missions. Archives can be extracted into an Arma3 MPMissions directory without any changes.

See full list below for more details

  • One zip/tar.gz for each map
  • One zip/tar.gz for all maps bundle

The only commit pushes to development are from PRs, so a PR merge commit should be the only thing triggering the build.

Automated releases

Changed contents of mission/version.hpp will result in a change of the release and respective release tag once merged into development -- no need to manually tag / create releases anymore.

Any commits using a previously released version in mission/version.hpp will be appended to that existing release.

So, switching from vX.XX.XX Indev to vX.XX.XX will create a new release with a single commit. Can edit the release manually, copy pasting the contents of the Indev release. Or, add more commits and continue building the latest release.


Full list of archive files added to a release:

  • vn_mikeforce_1_00_04_indev.all.tar.gz
  • vn_mikeforce_1_00_04_indev.all.zip
  • vn_mikeforce_1_00_04_indev.altis.tar.gz
  • vn_mikeforce_1_00_04_indev.altis.zip
  • vn_mikeforce_1_00_04_indev.cam_lao_nam.tar.gz
  • vn_mikeforce_1_00_04_indev.cam_lao_nam.zip
  • vn_mikeforce_1_00_04_indev.vn_khe_sanh.tar.gz
  • vn_mikeforce_1_00_04_indev.vn_khe_sanh.zip
  • vn_mikeforce_1_00_04_indev.vn_the_bra.tar.gz
  • vn_mikeforce_1_00_04_indev.vn_the_bra.zip
$ unzip -l release/vn_mikeforce_1_00_04_indev.all.zip | head -n 15
Archive:  release/vn_mikeforce_1_00_04_indev.all.zip
  Length      Date    Time    Name
---------  ---------- -----   ----
        0  2024-11-22 17:11   vn_mikeforce_1_00_04_indev.altis/
        0  2024-11-22 17:11   vn_mikeforce_1_00_04_indev.cam_lao_nam/
        0  2024-11-22 17:11   vn_mikeforce_1_00_04_indev.vn_khe_sanh/
        0  2024-11-22 17:11   vn_mikeforce_1_00_04_indev.vn_the_bra/
        0  2024-06-18 21:03   vn_mikeforce_1_00_04_indev.altis/config/
        0  2024-06-18 15:12   vn_mikeforce_1_00_04_indev.altis/eventhandlers/
        0  2024-06-18 15:12   vn_mikeforce_1_00_04_indev.altis/functions/
        0  2024-06-18 15:12   vn_mikeforce_1_00_04_indev.altis/img/
        0  2024-06-18 15:12   vn_mikeforce_1_00_04_indev.altis/map_config/
        0  2024-11-22 17:11   vn_mikeforce_1_00_04_indev.altis/paradigm/
       87  2024-06-18 15:12   vn_mikeforce_1_00_04_indev.altis/version.hpp
    12609  2024-11-22 08:16   vn_mikeforce_1_00_04_indev.altis/para_server_init.sqf
$ unzip -l release/vn_mikeforce_1_00_04_indev.altis.zip | head -n 15
Archive:  release/vn_mikeforce_1_00_04_indev.altis.zip
  Length      Date    Time    Name
---------  ---------- -----   ----
        0  2024-11-22 17:11   vn_mikeforce_1_00_04_indev.altis/
        0  2024-06-18 21:03   vn_mikeforce_1_00_04_indev.altis/config/
        0  2024-06-18 15:12   vn_mikeforce_1_00_04_indev.altis/eventhandlers/
        0  2024-06-18 15:12   vn_mikeforce_1_00_04_indev.altis/functions/
        0  2024-06-18 15:12   vn_mikeforce_1_00_04_indev.altis/img/
        0  2024-06-18 15:12   vn_mikeforce_1_00_04_indev.altis/map_config/
        0  2024-11-22 17:11   vn_mikeforce_1_00_04_indev.altis/paradigm/
       87  2024-06-18 15:12   vn_mikeforce_1_00_04_indev.altis/version.hpp
    12609  2024-11-22 08:16   vn_mikeforce_1_00_04_indev.altis/para_server_init.sqf
     1246  2024-06-18 15:12   vn_mikeforce_1_00_04_indev.altis/para_player_preload_client.sqf
    70440  2024-06-18 15:12   vn_mikeforce_1_00_04_indev.altis/stringtable.xml
     2003  2024-06-18 15:12   vn_mikeforce_1_00_04_indev.altis/para_player_loaded_client.sqf

@dijksterhuis dijksterhuis marked this pull request as draft November 22, 2024 17:27
@dijksterhuis dijksterhuis changed the title Release CI builds of zip/tar.gz archives. GH Actions: Release archives for source builds Nov 22, 2024
@dijksterhuis dijksterhuis changed the title GH Actions: Release archives for source builds GH Actions: Package source builds into GitHub releases as archive files Nov 22, 2024
release.py Outdated Show resolved Hide resolved
release.py Outdated Show resolved Hide resolved
release.py Outdated Show resolved Hide resolved
release.py Outdated Show resolved Hide resolved
release.py Outdated Show resolved Hide resolved
@dijksterhuis dijksterhuis self-assigned this Nov 23, 2024
@dijksterhuis dijksterhuis marked this pull request as ready for review November 23, 2024 01:14
@dijksterhuis
Copy link
Contributor Author

dijksterhuis commented Nov 23, 2024

All mission builds tested from the vn_mikeforce_1_00_04_indev.all.zip file, no script errors and everything looks like it's where it needs to be.

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.

1 participant