cortex-command-community / Cortex-Command-Community-Project-Data

[ARCHIVED] The future of Cortex Command
https://cortex-command-community.github.io/
109 stars 21 forks source link

Create Automated Release Workflow #140

Open traunts opened 1 year ago

traunts commented 1 year ago

Create a GitHub Actions Workflow to automate the process of bundling and publishing a new release of the game, Source + Data.

Additional context

my longtime intention has been to do a nice workflow that, on merge to master (and can work for dev for nightly builds too)

  1. Builds the exe and appimage in the source repo and stores artifacts for em
  2. Does the same for the mod converter I guess
  3. Grabs the artifacts from the other repos into the relevant data repo branch and puts together a nice zip with everything (preferably including dlls, but they can remain manual if > needed)
  4. Bonus points if the installer repo can grab the data zip and use it to automatically make an installer

... [RE: Data release steps]

No, it's not too complicated but it is kinda a pain and does take some time. Automating it would be nice haha

  1. Make a github release for source, and another for data
  2. Make x86 and x64 release exes for windows and appimages for linux
  3. Grab a copy of a clean data folder (though often I'm lazy and use mine, making sure to clean it), making sure to include dlls
  4. Delete everything that's autogenerated and anything in metagames, then test everything to make sure the game runs and things are fine, then delete any autogenerated stuff again
  5. Optionally grab the mod converter (and, in future, the mod manager) and dump it in the folder
  6. Zip up the game folder (not rar, for people who don't have rar tools) and upload it to the data release
  7. Make the windows installer and also upload it to the data release