.shared_windows_runners: tags: - shared-windows - windows - windows-1809 image: mcr.microsoft.com/dotnet/core/sdk before_script: - dotnet restore uptool: extends: - .shared_windows_runners stage: deploy script: | $(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 mkdir .\build cd W32.Test dotnet publish -o ..\build -c Release cd .. $file = Get-Item $(Resolve-Path .\build\*.exe).Path .\Data\pkgtool.exe build --binDir build --mainBin $file --packageFile .\package.zip --noLogo $asm = $([Reflection.Assembly]::LoadFile($file.DirectoryName + "\" + $file.BaseName + ".dll")) $asmver = $asm.GetName().Version.ToString() [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 = "Collection of Utilities for manipulating Windows" $app.appendChild($xml.CreateElement("Version")).InnerText = $asmver $app.appendChild($xml.CreateElement("ID")).InnerText = "3191d2f3-bf48-48ea-97a2-59fb32722d0a" $app.appendChild($xml.CreateElement("File")).InnerText = $CI_PROJECT_URL + "/-/jobs/" + $CI_JOB_ID + "/artifacts/raw/package.zip" $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) $tmp1 = $asmver.split('.')[2] $tmp2 = $asmver.split('.')[3] $suffix = "$tmp1.$tmp2" cd Misc dotnet pack --version-suffix "$suffix" -c Release -o . dotnet nuget push $(Get-Item $(Resolve-Path *.nupkg).Path).Name -k $K8S_SECRET_NUGET -s https://api.nuget.org/v3/index.json cd ..\W32 dotnet pack --version-suffix "$suffix" -c Release -o . dotnet nuget push $(Get-Item $(Resolve-Path *.nupkg).Path).Name -k $K8S_SECRET_NUGET -s https://api.nuget.org/v3/index.json cd ..\Commandline dotnet pack --version-suffix "$suffix" -c Release -o . dotnet nuget push $(Get-Item $(Resolve-Path *.nupkg).Path).Name -k $K8S_SECRET_NUGET -s https://api.nuget.org/v3/index.json cd .. mkdir nugets dotnet nuget push -h cp .\Misc\*.nupkg .\nugets\ cp .\W32\*.nupkg .\nugets\ cp .\Commandline\*.nupkg .\nugets\ artifacts: paths: - package.zip - app.xml - nugets - . only: - master