diff --git a/.forgejo/workflows/dotnet.yaml b/.forgejo/workflows/dotnet.yaml new file mode 100644 index 0000000..1f59449 --- /dev/null +++ b/.forgejo/workflows/dotnet.yaml @@ -0,0 +1,71 @@ +name: Java CI + +on: [push] + +jobs: + test: + runs-on: arch-rolling + + + steps: + - name: Check Dotnet Version + run: | + dotnet --version + + - name: Checkout code + uses: actions/checkout@v4 + + - name: Build the project (Linux x64) + run: | + dotnet publish ./PS2_Manager/PS2_Manager.csproj \ + -c Release \ + -r linux-x64 \ + --self-contained true \ + -p:PublishSingleFile=true \ + -p:PublishTrimmed=true \ + -o ./output_linux + - name: Build the project (Windows x64) + run: | + dotnet publish ./PS2_Manager/PS2_Manager.csproj \ + -c Release \ + -r win-x64 \ + --self-contained true \ + -p:PublishSingleFile=true \ + -p:PublishTrimmed=true \ + -o ./output_win + + + - name: Pack Releases into Zips + run: | + mkdir -p ./release + zip -r ./release/PS2Manager_Linux_x64.zip ./output_linux + zip -r ./release/PS2Manager_Windows_x64.zip ./output_win + rm -rf ./output_linux ./output_win + + + + - name: Generate tag name based on current date and time + id: generate_tag + run: | + # Get current date and time, format as 'YYYY-MM-DD-HHMMSS' + current_date=$(date +"%Y-%m-%d-%H%M%S") + echo "Generated tag name: $current_date" + echo "::set-output name=tag_name::$current_date" + + + - name: Create Git tag + run: | + git tag ${{ steps.generate_tag.outputs.tag_name }} + git push origin ${{ steps.generate_tag.outputs.tag_name }} + + + - name: Upload to Forgejo + uses: actions/forgejo-release@v2.6.0 + with: + direction: upload + url: https://git.weexnes.dev/ + repo: WeeXnes/ps2_manager + token: ${{ secrets.RELEASE_TOKEN }} + tag: ${{ steps.generate_tag.outputs.tag_name }} + release-dir: release + release-notes: "Automated release from CI" \ No newline at end of file