diff --git a/.github/workflows/main.yml b/.github/workflows/main.yml new file mode 100644 index 0000000..d63442d --- /dev/null +++ b/.github/workflows/main.yml @@ -0,0 +1,72 @@ +name: CD + +on: + push: + branches: [ master ] + +jobs: + build: + runs-on: windows-latest + steps: + - uses: actions/checkout@v2 + - name: Build + id: base_init + run: | + python3 DownloadDataDepsInstall.py + python3 DownloadData.py + $(new-object System.Net.WebClient).DownloadFile("https://www.github.com/JFronny/UpTool2/releases/latest/download/Tools.zip", "$($(pwd).Path)\Tools.zip") + & "C:\Program Files\7-Zip\7z.exe" x .\Tools.zip + rm Tools.zip + rm Install.bat + rm Remove.bat + dotnet build --verbosity:m -p:Configuration=Release + cp *\bin\Release\netcoreapp3.1\package.zip . + $file = Get-Item $(Resolve-Path *\bin\Release\netcoreapp3.1\*.exe).Path + $asm = $([Reflection.Assembly]::LoadFile($file.DirectoryName + "\" + $file.BaseName + ".dll")) + $asmver = $asm.GetName().Version.ToString() + echo "::set-output name=vers::$asmver" + - name: Create Release + id: create_release + uses: actions/create-release@v1.0.1 + env: + GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} + with: + tag_name: ${{ steps.base_init.outputs.vers }} + release_name: Release ${{ steps.base_init.outputs.vers }} + draft: false + prerelease: false + - name: Upload Release Asset + id: upload_release_asset + uses: actions/upload-release-asset@v1.0.2 + env: + GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} + with: + upload_url: ${{ steps.create_release.outputs.upload_url }} + asset_path: ./package.zip + asset_name: package.zip + asset_content_type: application/zip + - name: Generate XML + run: | + $file = Get-Item $(Resolve-Path *\bin\Release\netcoreapp3.1\*.exe).Path + $asm = [Reflection.Assembly]::LoadFile($file.DirectoryName + "\" + $file.BaseName + ".dll") + [System.XML.XMLDocument]$xml=New-Object System.XML.XMLDocument + [System.XML.XMLElement]$app=$xml.CreateElement("app") + $xml.appendChild($app) + $app.appendChild($xml.CreateElement("Name")).InnerText = $asm.GetName().Name + $app.appendChild($xml.CreateElement("Description")).InnerText = "A simple AutoClicker`r`nFeatures:`r`n- Up to 1000 clicks per second`r`n- Right- and LeftClicks`r`n- Custom Keybinds" + $app.appendChild($xml.CreateElement("Version")).InnerText = "${{ steps.base_init.outputs.vers }}" + $app.appendChild($xml.CreateElement("ID")).InnerText = "4863b486-5619-432e-8086-c06e1d5b1f5a" + $app.appendChild($xml.CreateElement("File")).InnerText = "${{ steps.upload_release_asset.outputs.browser_download_url }}" + $app.appendChild($xml.CreateElement("Hash")).InnerText = $(Get-FileHash .\package.zip).Hash + $app.appendChild($xml.CreateElement("MainFile")).InnerText = $file.Name + echo NULL > app.xml + $xml.save($(gi .\app.xml).Fullname) + - name: Upload XML + uses: actions/upload-release-asset@v1.0.2 + env: + GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} + with: + upload_url: ${{ steps.create_release.outputs.upload_url }} + asset_path: ./app.xml + asset_name: app.xml + asset_content_type: text/xml