-
Notifications
You must be signed in to change notification settings - Fork 0
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
improvement: refactor code for automatic builds
- Loading branch information
Kalle Minkner
committed
Nov 11, 2024
1 parent
f3115bf
commit cafb3a8
Showing
16 changed files
with
133 additions
and
22 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,106 @@ | ||
name: Build Release | ||
|
||
env: | ||
REPOSITORY_FOLDER: "src" # subfolder with source code | ||
PLUGIN_NAME: "NativeMapVote" # main file of the project | ||
|
||
on: | ||
push: | ||
branches: | ||
- main | ||
paths: | ||
- 'src/Version.cs' # only on change of the file with the version number string in it | ||
workflow_dispatch: | ||
|
||
# job to create a new release | ||
jobs: | ||
create-release: | ||
runs-on: ubuntu-latest | ||
|
||
steps: | ||
- name: Get Repository Name | ||
run: echo "REPOSITORY_NAME=`basename ${{ github.repository }}`" >> $GITHUB_ENV | ||
|
||
- name: Checkout Repository | ||
uses: actions/checkout@v2 | ||
|
||
- name: Get Current Project Version Number From Version.cs | ||
id: get_version | ||
run: | | ||
version=$(grep -oP '(?<=ModuleVersion => ")[^"]*' ${{ env.REPOSITORY_FOLDER }}/Version.cs) | ||
echo "version=$version" >> $GITHUB_ENV | ||
- name: Get Current Release Version Number | ||
id: get_latest_release | ||
run: | | ||
latest_release=$(curl -s -H "Authorization: token ${{ secrets.UPLOAD_TOKEN }}" https://api.github.com/repos/${{ github.repository }}/releases/latest | jq -r .tag_name) | ||
echo "latest_release=$latest_release" >> $GITHUB_ENV | ||
- name: Compare Versions | ||
id: compare_versions | ||
run: | | ||
if [ "${{ env.version }}" != "${{ env.latest_release }}" ]; then | ||
echo "new_version=true" >> $GITHUB_ENV | ||
else | ||
echo "new_version=false" >> $GITHUB_ENV | ||
fi | ||
- name: Install .NET | ||
uses: actions/setup-dotnet@v2 | ||
if: env.new_version == 'true' | ||
with: | ||
dotnet-version: '8.0.x' | ||
|
||
- name: Install Dependencies | ||
if: env.new_version == 'true' | ||
run: dotnet restore | ||
|
||
- name: Build ${{ env.REPOSITORY_NAME }} | ||
if: env.new_version == 'true' | ||
run: dotnet publish -c Release | ||
|
||
- name: Prepare ${{ env.REPOSITORY_NAME }}.info | ||
if: env.new_version == 'true' | ||
run: | | ||
echo "version: ${{ env.version }}" > /home/runner/work/${{ env.REPOSITORY_NAME }}/${{ env.REPOSITORY_NAME }}/${{ env.REPOSITORY_FOLDER }}/bin/Release/net8.0/publish/${{ env.PLUGIN_NAME }}.info | ||
echo "repository: https://github.com/${{ github.repository }}" >> /home/runner/work/${{ env.REPOSITORY_NAME }}/${{ env.REPOSITORY_NAME }}/${{ env.REPOSITORY_FOLDER }}/bin/Release/net8.0/publish/${{ env.PLUGIN_NAME }}.info | ||
- name: Prepare Release | ||
if: env.new_version == 'true' | ||
run: | | ||
mv /home/runner/work/${{ env.REPOSITORY_NAME }}/${{ env.REPOSITORY_NAME }}/${{ env.REPOSITORY_FOLDER }}/bin/Release/net8.0/publish/ /home/runner/work/${{ env.REPOSITORY_NAME }}/${{ env.REPOSITORY_NAME }}/${{ env.REPOSITORY_FOLDER }}/bin/Release/net8.0/${{ env.PLUGIN_NAME }}/ | ||
- name: Compress Release | ||
if: env.new_version == 'true' | ||
run: cd /home/runner/work/${{ env.REPOSITORY_NAME }}/${{ env.REPOSITORY_NAME }}/${{ env.REPOSITORY_FOLDER }}/bin/Release/net8.0 && zip -r /home/runner/work/${{ env.REPOSITORY_NAME }}-${{ env.version }}.zip ${{ env.PLUGIN_NAME }} | ||
|
||
- name: Build Release Notes | ||
if: env.new_version == 'true' | ||
id: get_release_notes | ||
run: | | ||
release_notes=$(git log --pretty=format:"[%h](https://github.com/${{ github.repository }}/commit/%H) - %s (%an)" $(git describe --tags --abbrev=0)..HEAD) | ||
echo "release_notes=$release_notes" >> $GITHUB_ENV | ||
- name: Add Release on Github | ||
id: create_release | ||
if: env.new_version == 'true' | ||
uses: actions/create-release@v1 | ||
env: | ||
GITHUB_TOKEN: ${{ secrets.UPLOAD_TOKEN }} | ||
with: | ||
tag_name: ${{ env.version }} | ||
release_name: ${{ env.version }} | ||
body: ${{ env.release_notes }} | ||
draft: false | ||
prerelease: false | ||
|
||
- name: Upload ${{ env.REPOSITORY_NAME }}-${{ env.version }}.zip | ||
if: env.new_version == 'true' | ||
uses: actions/upload-release-asset@v1 | ||
env: | ||
GITHUB_TOKEN: ${{ secrets.UPLOAD_TOKEN }} | ||
with: | ||
upload_url: ${{ steps.create_release.outputs.upload_url }} | ||
asset_path: /home/runner/work/${{ env.REPOSITORY_NAME }}-${{ env.version }}.zip | ||
asset_name: ${{ env.REPOSITORY_NAME }}-${{ env.version }}.zip | ||
asset_content_type: application/zip |
2 changes: 1 addition & 1 deletion
2
...idea.NativeMapVotePlugin/.idea/.gitignore → .idea/.idea.NativeMapVote/.idea/.gitignore
Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.
Oops, something went wrong.
Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.
Oops, something went wrong.
File renamed without changes.
File renamed without changes.
File renamed without changes.
This file was deleted.
Oops, something went wrong.
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
|
@@ -5,7 +5,7 @@ | |
using CounterStrikeSharp.API.Modules.Menu; | ||
using RconSharp; | ||
|
||
namespace NativeMapVotePlugin; | ||
namespace NativeMapVote; | ||
|
||
public class PluginConfig : BasePluginConfig | ||
{ | ||
|
@@ -47,18 +47,17 @@ public class PluginConfig : BasePluginConfig | |
public string RtvEndMatchCommand { get; set; } = "mp_halftime false; mp_maxrounds 1"; | ||
} | ||
|
||
public partial class NativeMapVotePlugin : BasePlugin, IPluginConfig<PluginConfig> | ||
public partial class NativeMapVote : BasePlugin, IPluginConfig<PluginConfig> | ||
{ | ||
public override string ModuleName => "Native Map Vote Plugin"; | ||
public override string ModuleAuthor => "Jon-Mailes Graeffe <[email protected]>"; | ||
public override string ModuleVersion => "1.0.2"; | ||
|
||
public PluginConfig Config { get; set; } = null!; | ||
|
||
private ChatMenu? _nominationMenuAllMaps; | ||
private ChatMenu? _callVoteMenuAllMaps; | ||
|
||
public NativeMapVotePlugin() | ||
public NativeMapVote() | ||
{ | ||
_callVoteChatVote = new(this); | ||
_rtvChatVote = new(this); | ||
|
@@ -161,7 +160,7 @@ private void FetchMapGroupOverRcon() | |
var rconPasswordCvar = ConVar.Find("rcon_password"); | ||
if (rconPasswordCvar == null || rconPasswordCvar.StringValue == null || rconPasswordCvar.StringValue.Length == 0) | ||
{ | ||
Console.WriteLine("[NativeMapVotePlugin][WARNING] Fetching map list over RCON disabled due to disabled RCON (cvar rcon_password not set)!"); | ||
Console.WriteLine("[NativeMapVote][WARNING] Fetching map list over RCON disabled due to disabled RCON (cvar rcon_password not set)!"); | ||
return; | ||
} | ||
|
||
|
@@ -174,7 +173,7 @@ private void FetchMapGroupOverRcon() | |
|
||
if (string.IsNullOrEmpty(output)) | ||
{ | ||
Console.WriteLine("[NativeMapVotePlugin][WARNING] Fetching mapgroup over RCON failed!"); | ||
Console.WriteLine("[NativeMapVote][WARNING] Fetching mapgroup over RCON failed!"); | ||
return; | ||
} | ||
|
||
|
@@ -185,7 +184,7 @@ private void FetchMapGroupOverRcon() | |
if (line.Length == 0 || line.StartsWith("Map group:")) continue; | ||
if (line.StartsWith("No maps")) | ||
{ | ||
Console.WriteLine("[NativeMapVotePlugin][WARNING] No maps in map group found - plugin will not work this map!"); | ||
Console.WriteLine("[NativeMapVote][WARNING] No maps in map group found - plugin will not work this map!"); | ||
return; | ||
} | ||
|
||
|
@@ -195,15 +194,15 @@ private void FetchMapGroupOverRcon() | |
|
||
if (mapNames.Count == 0) | ||
{ | ||
Console.WriteLine("[NativeMapVotePlugin][ERROR] Could not parse map group over RCON!"); | ||
Console.WriteLine("[NativeMapVote][ERROR] Could not parse map group over RCON!"); | ||
return; | ||
} | ||
|
||
Config.Maps = ImmutableList<string>.Empty; | ||
Config.Maps = Config.Maps.AddRange(mapNames); | ||
OnMapGroupChange(); | ||
|
||
Console.WriteLine("[NativeMapVotePlugin][INFO] Found " + Config.Maps.Count + " maps in map group, now used for voting!"); | ||
Console.WriteLine("[NativeMapVote][INFO] Found " + Config.Maps.Count + " maps in map group, now used for voting!"); | ||
}); | ||
} | ||
|
||
|
File renamed without changes.
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,6 @@ | ||
namespace NativeMapVote; | ||
|
||
public partial class NativeMapVote | ||
{ | ||
public override string ModuleVersion => "1.0.2"; | ||
} |
File renamed without changes.