diff --git a/app/make-nupkg.sh b/app/make-nupkg.sh index bbd9be4f..a3e75c9f 100644 --- a/app/make-nupkg.sh +++ b/app/make-nupkg.sh @@ -1,27 +1,30 @@ -silentArgs='/S' -packageName='openflexure-ev' -fileType='exe' +#!/bin/bash -scriptPath=`dirname $0` +packageName='openflexure-ev' + +scriptPath=$(dirname "$0") packagePath="$(dirname "$scriptPath")" packageJson="$packagePath/package.json" + +installerPath="$packagePath/openflexure-ev-win.exe" +installerMd5=`md5sum ${installerPath} | awk '{ print $1 }'` +echo "$installerMd5" + outpath="$packagePath/release-builds/choco" toolspath="$outpath/tools" -mkdir -p $toolspath +mkdir -p "$toolspath" -echo $scriptPath -echo $packageJson -echo $outpath +echo "$scriptPath" +echo "$packageJson" +echo "$outpath" # Get package version from package.json -packageVersion=$(cat $packageJson \ - | grep version \ - | head -1 \ +packageVersion=$(grep version < "$packageJson" | head -1 \ | awk -F: '{ print $2 }' \ | sed 's/[",]//g' \ - | tr -d '[[:space:]]') + | tr -d ':space:') -echo "$packageVersion" +echo "Package version: $packageVersion" # Convert into a nupkg-safe version string majVer="$(echo "$packageVersion" | cut -d'-' -f1)" @@ -34,12 +37,14 @@ else version="$majVer-$minVer" fi - -echo "$version" +echo "Nupkg version: $version" # Build installer URL -instURL="$CI_JOB_URL/artifacts/raw/release-builds/openflexure-ev-win.exe" -echo $instURL +pipelineURL="$CI_PROJECT_URL/-/jobs/artifacts/$CI_COMMIT_REF_NAME/raw" +instURL="$pipelineURL/openflexure-ev-win.exe?job=package:win32" +nuspecURL="$CI_JOB_URL/artifacts/browse" + +echo "$instURL" # Build nuspec cat > "$outpath/openflexure-ev.nuspec" <<- EOL @@ -50,15 +55,16 @@ cat > "$outpath/openflexure-ev.nuspec" <<- EOL OpenFlexure eV $version OpenFlexure - Bath Open Instrumentation Group + Joel Collins OpenFlexure Microscope client An electron-based user client for the OpenFlexure Microscope Server + https://www.openflexure.org/ https://www.openflexure.org/projects/microscope/ https://gitlab.com/openflexure/openflexure-microscope-jsclient/issues + https://gitlab.com/openflexure/openflexure-microscope-jsclient/ - - https://gitlab.com/openflexure/openflexure-microscope-jsclient/ + $nuspecURL openflexure microscope ev https://gitlab.com/openflexure/openflexure-microscope-jsclient/raw/master/LICENSE @@ -72,8 +78,26 @@ cat > "$outpath/openflexure-ev.nuspec" <<- EOL EOL # Build installer PS1 content -instPS1="Install-ChocolateyPackage $packageName $fileType $silentArgs $instURL" -echo $instPS1 > "$toolspath/chocolateyInstall.ps1" +cat > "$toolspath/chocolateyInstall.ps1" <<- EOL +\$ErrorActionPreference = "Stop"; +\$toolsDir = "\$(Split-Path -parent $MyInvocation.MyCommand.Definition)" +\$url = "$instURL" -# Build nupkg -# choco pack --allow-unofficial --outputdirectory $outpath "$outpath/openflexure-ev.nuspec" \ No newline at end of file +\$packageArgs = @{ + packageName = "openflexure-ev" + unzipLocation = \$toolsDir + fileType = "exe" + url = \$url + url64bit = \$url + + softwareName = "OpenFlexure eV" + + checksum = "${installerMd5}" + checksumType = "md5" + + silentArgs = "/S" +} + +Install-ChocolateyPackage @packageArgs + +EOL \ No newline at end of file