Releasing Products

From AlliedModders Wiki
Revision as of 15:02, 11 April 2026 by Psychonic (talk | contribs) (Update for GitHub Actions workflow)
(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)
Jump to: navigation, search

Releasing SourceMod

Bold italic values should be replaced as appropriate for the release.

  • General
    • Create a git branch
    • Bump product.version and plugins/include/version.inc numbers for manual builds
  • GitHub Actions CI
    • CI triggers automatically on pushes to master and branches matching [0-9]+.[0-9]+-dev. No manual build forcing is needed.
    • On web01, update version_branches in the webhook app's config.yaml (add "1.13": "1.13-dev" for the new stable branch; update the master entry to the new dev version). Then redeploy: systemctl restart sourcemod-github-artifact-webhook
  • Downloads
    • Run mount -orw /mnt/downloads on web01
    • Run mkdir /mnt/downloads/smdrop/1.11, chmod 775 it, fix ownership
    • Run mount -oro /mnt/downloads
    • Fix sm_commit_log by updating last ~N master builds to be the new stable branch
    • Update ~sourcemod/public_html/downloads.php — add new stable/dev version objects and update the stable/dev aliases in $branchMap
    • Update ~sourcemod/public_html/latest.php — add new version to $versionMap and update the stable/dev aliases (must stay in sync with downloads.php)
  • Gamedata updater (run commands from inside ~sourcemod/update)
    • Clone the new branch into 1.11-dev
    • Create a update-1.11.sh script for the new version
    • Run php add_version.php --version 1.11.0 --path 1.11-dev
    • Run php update/add_version.php --version 1.12.0 --path master
    • Run ./update-1.11.sh
    • Run ./update-master.sh
  • Web compiler and forum
    • Create a ~sourcemod/compiler-1.11 directory, drop spcomp + includes there
    • Change the ~sourcemod/compiler symlink to the new version
    • Update hardcoded version in ~sourcemod/public_html/compiler.php and change the "you can use this to compile plugins for SourceMod 1.11 or higher" text if necessary
    • Update ~sourcemod/public_html/vbcompiler.php
    • Update forum's newthread.php and editpost.php (search for ccversion). Do this on staging, create a production PR in bitbucket, then pull
  • SP docs
    • Pull and rebuild ~sourcemod/scripts/sourcepawn/exp/tools/docparse if needed
    • git checkout new branch into ~sourcemod/scripts/sourcemod
    • From ~sourcemod/scripts/sourcepawn/exp/docgen/generate/, run python generate.py