Skip to content
Closed
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
16 changes: 16 additions & 0 deletions .claude/settings.local.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,16 @@
{
"permissions": {
"allow": [
"Bash(git rev-parse:*)",
"Bash(git reset:*)",
"Bash(git cherry-pick:*)",
"Bash(git fetch:*)",
"Bash(git push:*)",
"Bash(git checkout:*)",
"Bash(git branch:*)",
"Bash(git remote add:*)"
],
"deny": [],
"ask": []
}
}
25 changes: 25 additions & 0 deletions .github/pr-body.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,25 @@
Automated PR to update hl2sdk submodule.

## Changes
- **From:** `da981a8984c74641d2a31732a0bac742bfea6e2d`
- **To:** `3bb772f7c0652cd78089522ac58235b9b34f71d6`

## Commits in this update
```
3bb772f7 Fix other clang20 errors/warnings
9b5d7308 Fix few clang20 errors
c8133299 Update IEngineServiceMgr (#358)
3aa19369 Update IGameSystem (#359)
66a75464 Add StringUserData_t and SetStringUserDataRequest_t & Update INetworkStringTable (#356)
d27464d9 Add few QoL methods to CPlayerSlot
20ae6c37 Update protobufs (#355)
419097b8 Update protobufs (#354)
```

## Latest commit info
- **Message:** Fix other clang20 errors/warnings
- **Author:** GAMMACASE
- **Date:** 2025-12-06 15:58:45 +0300

---
🤖 This PR was automatically created by the [bump-hl2sdk workflow](https://github.com/playpark/CounterStrikeSharp/actions/workflows/bump-hl2sdk.yml).
91 changes: 53 additions & 38 deletions .github/workflows/bump-hl2sdk.yml
Original file line number Diff line number Diff line change
Expand Up @@ -2,9 +2,8 @@ name: Bump hl2sdk

on:
schedule:
# Run every 15 minutes
- cron: "*/15 * * * *"
workflow_dispatch: # Allow manual trigger
- cron: "0 * * * *"
workflow_dispatch:

permissions:
contents: write
Expand Down Expand Up @@ -32,6 +31,10 @@ jobs:
id: latest
run: |
LATEST_COMMIT=$(git ls-remote https://github.com/alliedmodders/hl2sdk refs/heads/cs2 | cut -f1)
if [ -z "$LATEST_COMMIT" ]; then
echo "::error::Failed to fetch latest commit from hl2sdk"
exit 1
fi
echo "commit=$LATEST_COMMIT" >> $GITHUB_OUTPUT
echo "Latest hl2sdk cs2 commit: $LATEST_COMMIT"

Expand All @@ -52,19 +55,27 @@ jobs:
env:
GH_TOKEN: ${{ secrets.GITHUB_TOKEN }}
run: |
# Check if there's already an open PR for hl2sdk bump
EXISTING_PR=$(gh pr list --state open --head "chore/bump-hl2sdk" --json number --jq '.[0].number // empty')
EXISTING_PR=$(gh pr list --state open --head "chore/bump-hl2sdk" --json number,body --jq '.[0] // empty')
if [ -n "$EXISTING_PR" ]; then
echo "has_existing_pr=true" >> $GITHUB_OUTPUT
echo "pr_number=$EXISTING_PR" >> $GITHUB_OUTPUT
echo "Existing PR found: #$EXISTING_PR"
PR_NUMBER=$(echo "$EXISTING_PR" | jq -r '.number')
echo "pr_number=$PR_NUMBER" >> $GITHUB_OUTPUT
echo "Existing PR found: #$PR_NUMBER"

EXISTING_TARGET=$(echo "$EXISTING_PR" | jq -r '.body' | grep -oP '(?<=\*\*To:\*\* `)[a-f0-9]+(?=`)' || true)
if [ "$EXISTING_TARGET" = "${{ steps.latest.outputs.commit }}" ]; then
echo "skip=true" >> $GITHUB_OUTPUT
echo "Existing PR already targets latest commit, skipping"
else
echo "skip=false" >> $GITHUB_OUTPUT
echo "Existing PR needs update"
fi
else
echo "has_existing_pr=false" >> $GITHUB_OUTPUT
echo "skip=false" >> $GITHUB_OUTPUT
echo "No existing PR found"
fi

- name: Update submodule
if: steps.check.outputs.needs_update == 'true'
if: steps.check.outputs.needs_update == 'true' && steps.existing_pr.outputs.skip != 'true'
run: |
cd libraries/hl2sdk-cs2
git fetch origin cs2
Expand All @@ -73,7 +84,7 @@ jobs:
echo "Updated hl2sdk to ${{ steps.latest.outputs.commit }}"

- name: Get commit details
if: steps.check.outputs.needs_update == 'true'
if: steps.check.outputs.needs_update == 'true' && steps.existing_pr.outputs.skip != 'true'
id: commit_info
run: |
cd libraries/hl2sdk-cs2
Expand All @@ -82,46 +93,50 @@ jobs:
COMMIT_DATE=$(git log -1 --pretty=format:"%ci")
SHORT_SHA=$(git rev-parse --short HEAD)

echo "message=$COMMIT_MSG" >> $GITHUB_OUTPUT
echo "message<<EOF" >> $GITHUB_OUTPUT
echo "$COMMIT_MSG" >> $GITHUB_OUTPUT
echo "EOF" >> $GITHUB_OUTPUT
echo "author=$COMMIT_AUTHOR" >> $GITHUB_OUTPUT
echo "date=$COMMIT_DATE" >> $GITHUB_OUTPUT
echo "short_sha=$SHORT_SHA" >> $GITHUB_OUTPUT

# Get commits in this update for PR body (last 20)
cd ../..
echo "COMMITS<<EOF" >> $GITHUB_OUTPUT
cd libraries/hl2sdk-cs2
git log --oneline ${{ steps.current.outputs.commit }}..${{ steps.latest.outputs.commit }} | head -20 >> $GITHUB_OUTPUT
echo "EOF" >> $GITHUB_OUTPUT
git log --oneline ${{ steps.current.outputs.commit }}..${{ steps.latest.outputs.commit }} | head -20 > /tmp/commits.txt

- name: Generate PR body
if: steps.check.outputs.needs_update == 'true' && steps.existing_pr.outputs.skip != 'true'
run: |
mkdir -p .github
cat > .github/pr-body.md << 'ENDOFBODY'
Automated PR to update hl2sdk submodule.

## Changes
ENDOFBODY
echo "- **From:** \`${{ steps.current.outputs.commit }}\`" >> .github/pr-body.md
echo "- **To:** \`${{ steps.latest.outputs.commit }}\`" >> .github/pr-body.md
echo "" >> .github/pr-body.md
echo "## Commits in this update" >> .github/pr-body.md
echo '```' >> .github/pr-body.md
cat /tmp/commits.txt >> .github/pr-body.md
echo '```' >> .github/pr-body.md
echo "" >> .github/pr-body.md
echo "## Latest commit info" >> .github/pr-body.md
echo "- **Message:** ${{ steps.commit_info.outputs.message }}" >> .github/pr-body.md
echo "- **Author:** ${{ steps.commit_info.outputs.author }}" >> .github/pr-body.md
echo "- **Date:** ${{ steps.commit_info.outputs.date }}" >> .github/pr-body.md
echo "" >> .github/pr-body.md
echo "---" >> .github/pr-body.md
echo "🤖 This PR was automatically created by the [bump-hl2sdk workflow](https://github.com/${{ github.repository }}/actions/workflows/bump-hl2sdk.yml)." >> .github/pr-body.md

- name: Create or update Pull Request
if: steps.check.outputs.needs_update == 'true'
if: steps.check.outputs.needs_update == 'true' && steps.existing_pr.outputs.skip != 'true'
uses: peter-evans/create-pull-request@v7
with:
token: ${{ secrets.GITHUB_TOKEN }}
commit-message: "chore(deps): bump hl2sdk to ${{ steps.commit_info.outputs.short_sha }}"
branch: chore/bump-hl2sdk
delete-branch: true
title: "chore(deps): bump hl2sdk to ${{ steps.commit_info.outputs.short_sha }}"
body: |
Automated PR to update hl2sdk submodule.

## Changes
- **From:** `${{ steps.current.outputs.commit }}`
- **To:** `${{ steps.latest.outputs.commit }}`

## Commits in this update
```
${{ steps.commit_info.outputs.COMMITS }}
```

## Latest commit info
- **Message:** ${{ steps.commit_info.outputs.message }}
- **Author:** ${{ steps.commit_info.outputs.author }}
- **Date:** ${{ steps.commit_info.outputs.date }}

---
🤖 This PR was automatically created by the [bump-hl2sdk workflow](https://github.com/${{ github.repository }}/actions/workflows/bump-hl2sdk.yml).
body-path: .github/pr-body.md
labels: |
dependencies
automated
1 change: 0 additions & 1 deletion libraries/DynoHook
Submodule DynoHook deleted from d7f8eb
1 change: 0 additions & 1 deletion libraries/Protobufs
Submodule Protobufs deleted from 7af53a
1 change: 0 additions & 1 deletion libraries/asmjit
Submodule asmjit deleted from 0dd16b
1 change: 0 additions & 1 deletion libraries/dyncall
Submodule dyncall deleted from 3bcebd
1 change: 0 additions & 1 deletion libraries/funchook
Submodule funchook deleted from 7cb881
1 change: 0 additions & 1 deletion libraries/metamod-source
Submodule metamod-source deleted from 07c708
1 change: 0 additions & 1 deletion libraries/spdlog
Submodule spdlog deleted from 91807c
21 changes: 21 additions & 0 deletions tooling/act/LICENSE
Original file line number Diff line number Diff line change
@@ -0,0 +1,21 @@
MIT License

Copyright (c) 2019

Permission is hereby granted, free of charge, to any person obtaining a copy
of this software and associated documentation files (the "Software"), to deal
in the Software without restriction, including without limitation the rights
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
copies of the Software, and to permit persons to whom the Software is
furnished to do so, subject to the following conditions:

The above copyright notice and this permission notice shall be included in all
copies or substantial portions of the Software.

THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
SOFTWARE.
41 changes: 41 additions & 0 deletions tooling/act/README.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,41 @@
![act-logo](https://raw.githubusercontent.com/wiki/nektos/act/img/logo-150.png)

# Overview [![push](https://github.com/nektos/act/workflows/push/badge.svg?branch=master&event=push)](https://github.com/nektos/act/actions) [![Go Report Card](https://goreportcard.com/badge/github.com/nektos/act)](https://goreportcard.com/report/github.com/nektos/act) [![awesome-runners](https://img.shields.io/badge/listed%20on-awesome--runners-blue.svg)](https://github.com/jonico/awesome-runners)

> "Think globally, `act` locally"

Run your [GitHub Actions](https://developer.github.com/actions/) locally! Why would you want to do this? Two reasons:

- **Fast Feedback** - Rather than having to commit/push every time you want to test out the changes you are making to your `.github/workflows/` files (or for any changes to embedded GitHub actions), you can use `act` to run the actions locally. The [environment variables](https://help.github.com/en/actions/configuring-and-managing-workflows/using-environment-variables#default-environment-variables) and [filesystem](https://help.github.com/en/actions/reference/virtual-environments-for-github-hosted-runners#filesystems-on-github-hosted-runners) are all configured to match what GitHub provides.
- **Local Task Runner** - I love [make](<https://en.wikipedia.org/wiki/Make_(software)>). However, I also hate repeating myself. With `act`, you can use the GitHub Actions defined in your `.github/workflows/` to replace your `Makefile`!

> [!TIP]
> **Now Manage and Run Act Directly From VS Code!**<br/>
> Check out the [GitHub Local Actions](https://sanjulaganepola.github.io/github-local-actions-docs/) Visual Studio Code extension which allows you to leverage the power of `act` to run and test workflows locally without leaving your editor.

# How Does It Work?

When you run `act` it reads in your GitHub Actions from `.github/workflows/` and determines the set of actions that need to be run. It uses the Docker API to either pull or build the necessary images, as defined in your workflow files and finally determines the execution path based on the dependencies that were defined. Once it has the execution path, it then uses the Docker API to run containers for each action based on the images prepared earlier. The [environment variables](https://help.github.com/en/actions/configuring-and-managing-workflows/using-environment-variables#default-environment-variables) and [filesystem](https://docs.github.com/en/actions/using-github-hosted-runners/about-github-hosted-runners#file-systems) are all configured to match what GitHub provides.

Let's see it in action with a [sample repo](https://github.com/cplee/github-actions-demo)!

![Demo](https://raw.githubusercontent.com/wiki/nektos/act/quickstart/act-quickstart-2.gif)

# Act User Guide

Please look at the [act user guide](https://nektosact.com) for more documentation.

# Support

Need help? Ask in [discussions](https://github.com/nektos/act/discussions)!

# Contributing

Want to contribute to act? Awesome! Check out the [contributing guidelines](CONTRIBUTING.md) to get involved.

## Manually building from source

- Install Go tools 1.20+ - (<https://golang.org/doc/install>)
- Clone this repo `git clone git@github.com:nektos/act.git`
- Run unit tests with `make test`
- Build and install: `make install`
Binary file added tooling/act/act
Binary file not shown.
Binary file added tooling/act/act_Linux_x86_64.tar.gz
Binary file not shown.