Creating addon releases with GitHub Actions

Hey addon authors—I set up my addons on GitHub to produce automatic release .zip files for me, and then I can just click a button and download both a retail and a Classic version of the addon ready for uploading to CurseForge and WoWInterface. It’s only slightly faster than just producing those .zip files manually, but if you wanted to, you could tweak the workflow to produce nightly releases, automatically build zips when you tag things, or whatever else you wanted to do.

Click the link and then copy and paste this file into your repo at the same location:

(Note that if your Git client uses OAuth, such as VS Code, GitHub may block you from changing things in .github/workflows from your client, so you might need to add the file directly on GitHub.)

Once that’s there, here’s how you create a release:

  1. Click Actions in your repo.
  2. Choose Package World of Warcraft addon.
  3. Click Run workflow (in the light blue bar).
  4. Type a version number and click Run workflow.
  5. In a minute or so, a new release will be tagged and there will be two zip files attached. (For example, Pawn releases.)

This workflow assumes that your TOC file has the regular 80300 version specified: it’ll use the source code as-is to produce the retail version, and then the TOC file will get switched to 11305 in the Classic zip. (If the current Classic version changes in the future, just change the CLASSIC_VERSION number at the top of that .yml file.)

Anyway, I hope someone finds that useful!

2 Likes

I also just stumbled across this one:

It looks an awful lot more comprehensive than what I made, so maybe use that instead! Mine’s lightweight and customizable, but it looks like the BigWigs one also automatically uploads the releases and has some other features.

1 Like