Browse Source

[azure-pipelines] use web redirection for the latest choco packages

Andy Li 6 years ago
parent
commit
f39af53cee
1 changed files with 8 additions and 2 deletions
  1. 8 2
      azure-pipelines.yml

+ 8 - 2
azure-pipelines.yml

@@ -298,10 +298,16 @@ stages:
               aws s3 cp macBinaries/*_bin.tar.gz        $(HXBUILDS_S3ADDR)/haxe/mac/haxe_latest.tar.gz
               aws s3 cp win64Binaries/*_bin.zip         $(HXBUILDS_S3ADDR)/haxe/windows64/haxe_latest.zip
               aws s3 cp win64Binaries/*_installer.zip   $(HXBUILDS_S3ADDR)/haxe/windows64-installer/haxe_latest.zip
-              aws s3 cp win64Binaries/*.nupkg           $(HXBUILDS_S3ADDR)/haxe/windows64-choco/haxe_latest.nupkg
               aws s3 cp win32Binaries/*_bin.zip         $(HXBUILDS_S3ADDR)/haxe/windows/haxe_latest.zip
               aws s3 cp win32Binaries/*_installer.zip   $(HXBUILDS_S3ADDR)/haxe/windows-installer/haxe_latest.zip
-              aws s3 cp win32Binaries/*.nupkg           $(HXBUILDS_S3ADDR)/haxe/windows-choco/haxe_latest.nupkg
+
+              # Chocolatey packages have to be named with version number,
+              # so let's use web redirection to keep the original file name.
+              [[ "$HXBUILDS_S3ADDR" =~ s3://([^/]+)(.*) ]] && HXBUILDS_S3BUCKET="${BASH_REMATCH[1]}" && HXBUILDS_S3PATH="${BASH_REMATCH[2]}"
+              [[ `echo win64Binaries/*.nupkg` =~ win64Binaries/(.+) ]] && FILE_NAME="${BASH_REMATCH[1]}"
+              aws s3api put-object --acl public-read --website-redirect-location "${HXBUILDS_S3PATH}/haxe/windows64-choco/${FILE_NAME}" --bucket "$HXBUILDS_S3BUCKET" --key "${HXBUILDS_S3PATH}/haxe/windows64-choco/haxe_latest.nupkg"
+              [[ `echo win32Binaries/*.nupkg` =~ win32Binaries/(.+) ]] && FILE_NAME="${BASH_REMATCH[1]}"
+              aws s3api put-object --acl public-read --website-redirect-location "${HXBUILDS_S3PATH}/haxe/windows-choco/${FILE_NAME}" --bucket "$HXBUILDS_S3BUCKET" --key "${HXBUILDS_S3PATH}/haxe/windows-choco/haxe_latest.nupkg"
             env:
               AWS_ACCESS_KEY_ID: $(HXBUILDS_AWS_ACCESS_KEY_ID)
               AWS_SECRET_ACCESS_KEY: $(HXBUILDS_AWS_SECRET_ACCESS_KEY)