This is an action to upload a Garry's Mod addon to the steam workshop.
This call only provides the id
and changelog
, and expects there to be an addon.json
in the root of the project that runs it.
Taken from https://github.com/Vurv78/WebAudio/blob/main/.github/workflows/deploy.yml
name: Deploy to Workshop
on:
workflow_dispatch:
jobs:
deploy:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- uses: CFC-Servers/gmod-upload@master
with:
id: 2466875474
changelog: "Deployment via Github to latest changes"
env:
STEAM_USERNAME: ${{ secrets.STEAM_USERNAME }}
STEAM_PASSWORD: ${{ secrets.STEAM_PASSWORD }}
This call provides the id
and changelog
, but also defines a nonstandard path to find the addon.json
.
In this case, there must be a file named different.json
in the root of the project that calls this workflow.
name: Deploy to Workshop
on:
workflow_dispatch:
jobs:
deploy:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- uses: CFC-Servers/gmod-upload@master
with:
id: 2466875474
changelog: "Deployment via Github to latest changes"
config: "different.json"
env:
STEAM_USERNAME: ${{ secrets.STEAM_USERNAME }}
STEAM_PASSWORD: ${{ secrets.STEAM_PASSWORD }}
This call provides all of the information inline, eliminating the need for an addon.json
name: Deploy to Workshop
on:
workflow_dispatch:
jobs:
deploy:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- uses: CFC-Servers/gmod-upload@master
with:
id: 2466875474
changelog: "Deployment via Github to latest changes"
title: "[E2] WebAudio"
type: "tool"
tag1: "build"
tag2: "fun"
tag3: "realism"
env:
STEAM_USERNAME: ${{ secrets.STEAM_USERNAME }}
STEAM_PASSWORD: ${{ secrets.STEAM_PASSWORD }}
Name | Example | Notes |
---|---|---|
changelog |
Created a new thing and fixed some stuff | The changelog to display in the Workhop's Updates section. Uses standard Steam BBCode |
id |
2466875474 |
The ID of the (already created) Workshop item |
config |
myaddon.json |
If present, will attempt to use the given path as the addon.json. If given, all of the following inputs are ignored. If no additional inputs are provided, a standard addon.json is expected to exist in your project. |
title |
My glorious addon | The title of the Workshop item.config input is used |
type |
ServerContent | The addon type. Must be one of:ServerContent, gamemode, map, weapon, vehicle, npc, tool, effects, model, entity config input is used. |
tag1 |
fun | The first tag. Must be one of:fun, roleplay, scenic, movie, realism, cartoon, water, comic, build config input is used. |
tag2 |
roleplay | The second tag (Optional). Must be one of:fun, roleplay, scenic, movie, realism, cartoon, water, comic, build config input is used. |
tag3 |
realism | The third tag (Optional). Must be one of:fun, roleplay, scenic, movie, realism, cartoon, water, comic, build config input is used. |
remove_lua |
true | If set to true , will the remove the lua folder from the uploaded files. default is false |