@@ -128,6 +128,8 @@ jobs:
128128 combined_release_tag : ${{ steps.job_outputs.outputs.COMBINED_RELEASE_TAG }}
129129 medley_release_tag : ${{ steps.job_outputs.outputs.MEDLEY_RELEASE_TAG }}
130130 medley_short_release_tag : ${{ steps.job_outputs.outputs.MEDLEY_SHORT_RELEASE_TAG }}
131+ debs_filename_base : ${{ steps.debs.outputs.DEBS_FILENAME_BASE }}
132+ maiko_release_tag : ${{ steps.job_outputs.outputs.MAIKO_RELEASE_TAG }}
131133 artifacts_filename_template : ${{ steps.job_outputs.outputs.ARTIFACTS_FILENAME_TEMPLATE }}
132134 release_url : ${{ steps.push.outputs.html_url }}
133135
@@ -154,7 +156,7 @@ jobs:
154156 id : tag
155157 uses : ./../actions/release-tag-action
156158
157- # Get Maiko release information, retrieves the name of the latest
159+ # Get Maiko release information, retrieves the name of the latest (draft)
158160 # release. Used to download the correct Maiko release
159161 # Find latest release (draft or normal)
160162 - name : Get maiko release information
@@ -176,7 +178,6 @@ jobs:
176178 echo "maiko_tag=${tag}" >> ${GITHUB_OUTPUT}
177179 env :
178180 GITHUB_TOKEN : ${{ secrets.MAIKO_TOKEN }}
179-
180181 # Setup environment variables & establish job outputs
181182 - name : Setup Environment Variables
182183 run : |
@@ -198,6 +199,7 @@ jobs:
198199 echo "COMBINED_RELEASE_TAG=${COMBINED_RELEASE_TAG}" >> ${GITHUB_OUTPUT}
199200 echo "MEDLEY_RELEASE_TAG=${MEDLEY_RELEASE_TAG}" >> ${GITHUB_OUTPUT}
200201 echo "MEDLEY_SHORT_RELEASE_TAG=${MEDLEY_SHORT_RELEASE_TAG}" >> ${GITHUB_OUTPUT}
202+ echo "MAIKO_RELEASE_TAG=${MAIKO_RELEASE_TAG}" >> $GITHUB_OUTPUT;
201203 echo "ARTIFACTS_FILENAME_TEMPLATE=${ARTIFACTS_FILENAME_TEMPLATE}" >> ${GITHUB_OUTPUT}
202204
203205 # Setup some needed dirs in workspace
@@ -337,6 +339,17 @@ jobs:
337339 omitNameDuringUpdate : true
338340 omitPrereleaseDuringUpdate : true
339341
342+ - name : Rename medley tar for the x86_64 platform
343+ run : |
344+ cd ${{ env.TARS_DIR }}
345+ mv medley-full-linux-x86_64-*.tgz medley.tgz
346+
347+ - name : Save medley tar for use in cygwin installers
348+ uses : actions/upload-artifact@v3
349+ with :
350+ name : medley-tar
351+ path : |
352+ ${{ env.TARS_DIR }}/medley.tgz
340353
341354
342355# JOB: macos_installer ##############################################################
@@ -371,8 +384,7 @@ jobs:
371384 echo "MACOS_DIR=${MACOS_DIR}" >>${GITHUB_ENV}
372385 echo "ARTIFACTS_DIR=${MACOS_DIR}/artifacts" >>${GITHUB_ENV}
373386 echo "TARBALL_DIR=${MACOS_DIR}/tmp/tarballs" >>${GITHUB_ENV}
374- echo "MEDLEY_RELEASE_TAG=${{ needs.loadup.outputs.medley_release_tag }}" \
375- >>${GITHUB_ENV}
387+ echo "MEDLEY_RELEASE_TAG=${{ needs.loadup.outputs.medley_release_tag }}" >>${GITHUB_ENV}
376388 echo "ARTIFACTS_FILENAME_TEMPLATE=${{ needs.loadup.outputs.artifacts_filename_template }}" >>${GITHUB_ENV}
377389
378390 # Create tarball dir
@@ -410,23 +422,23 @@ jobs:
410422
411423
412424
413- # JOB: windows_installer #############################################################
425+ # JOB: cygwin_installer #############################################################
414426
415427 #
416428 # Create the Windows installer, push it up to the release on github and
417429 # update the downloads page on OIO
418430 #
419- windows_installer :
431+ cygwin_installer :
420432
421- runs-on : windows-latest
433+ runs-on : windows-2022
422434
423- needs : [inputs, sentry, loadup]
435+ needs : [inputs, sentry, loadup, linux_installer ]
424436 if : |
425437 needs.sentry.outputs.release_not_built == 'true'
426438 || needs.inputs.outputs.force == 'true'
427439
428440 outputs :
429- windows_installer_filename : ${{ steps.jobout .outputs.INSTALLER_FILENAME }}
441+ cygwin_installer : ${{ steps.compile_iss .outputs.CYGWIN_INSTALLER }}
430442
431443 steps :
432444
@@ -446,29 +458,65 @@ jobs:
446458 echo "MEDLEY_SHORT_RELEASE_TAG=$msrt" | Out-File -FilePath $Env:GITHUB_ENV -Encoding utf8 -Append
447459 $aft="${{ needs.loadup.outputs.artifacts_filename_template }}"
448460 echo "ARTIFACTS_FILENAME_TEMPLATE=$aft" | Out-File -FilePath $Env:GITHUB_ENV -Encoding utf8 -Append
461+ $debs="${{ needs.loadup.outputs.debs_filename_base }}"
462+ echo "DEBS_FILENAME_BASE=$debs" | Out-File -FilePath $Env:GITHUB_ENV -Encoding utf8 -Append
449463
450- # Download vnc viewer
451- - name : Download vncviewer
464+ # Retrieve medley tars from artifact store
465+ - name : Retrieve medley tar
466+ uses : actions/download-artifact@v3
467+ with :
468+ name : medley-tar
469+ path : installers/cygwin/
470+
471+ # Download maiko cygwin build
472+ - name : Retrieve maiko cygwin build
452473 shell : powershell
474+ env :
475+ GH_TOKEN : ${{ secrets.MAIKO_TOKEN }}
453476 run : |
454- $url = "https://online.interlisp.org/downloads/vncviewer64-1.12.0.exe"
455- $output = "installers\win\vncviewer64-1.12.0.exe"
456- (New-Object System.Net.WebClient).DownloadFile($url, $output)
477+ gh release download ${{ needs.loadup.outputs.maiko_release_tag }} --repo interlisp/maiko --pattern ${{ needs.loadup.outputs.maiko_release_tag }}-cygwin.x86_64.tgz --output installers\cygwin\maiko-cygwin.x86_64.tgz
457478
458- # Run iscc.exe to compile the installer
459- - name : Compile medley.iss
479+ # Download cygwin installer to be included by medley.iss
480+ - name : Download cygwin installer
481+ id : cygwin
460482 shell : powershell
461483 run : |
462- iscc installers\win\medley.iss
484+ wget https://cygwin.com/setup-x86_64.exe -OutFile installers\cygwin\setup-x86_64.exe
485+
486+ # Download vnc viewer
487+ # - name: Download vncviewer
488+ # shell: powershell
489+ # run: |
490+ # $url = "https://sourceforge.net/projects/tigervnc/files/stable/1.12.0/vncviewer64-1.12.0.exe"
491+ # $output = "installers\win\vncviewer64-1.12.0.exe"
492+ # (New-Object System.Net.WebClient).DownloadFile($url, $output)
493+
494+ # Run iscc.exe to compile the installer
495+ # - name: Compile medley.iss
496+ # shell: powershell
497+ # run: |
498+ # iscc installers\win\medley.iss
499+ # $filename="medley-install_${env:COMBINED_RELEASE_TAG}_x64.exe"
500+ # echo "INSTALLER_FILENAME=$filename" | Out-File -FilePath $Env:GITHUB_ENV -Encoding utf8 -Append
463501
502+ # Run iscc.exe to compile the installer
503+ - name : Compile cygwin_medley.iss
504+ id : compile_iss
505+ shell : powershell
506+ run : |
507+ $Env:CYGWIN_INSTALLER_BASE="medley-full-cygwin-x86_64-${env:COMBINED_RELEASE_TAG}"
508+ $CYGWIN_INSTALLER="${Env:CYGWIN_INSTALLER_BASE}.exe"
509+ echo "CYGWIN_INSTALLER=$CYGWIN_INSTALLER" | Out-File -FilePath $Env:GITHUB_ENV -Encoding utf8 -Append
510+ echo "CYGWIN_INSTALLER=$CYGWIN_INSTALLER" | Out-File -FilePath $Env:GITHUB_OUTPUT -Encoding utf8 -Append
511+ iscc installers\cygwin\medley.iss
464512
465513 # Upload windows installer to release
466514 - name : Upload windows installer to release
467515 id : push
468516 uses : ncipollo/release-action@v1
469517 with :
470518 allowUpdates : true
471- artifacts : installers/win/medley-*.exe
519+ artifacts : installers/cygwin/${{ env.CYGWIN_INSTALLER }}
472520 tag : ${{ env.MEDLEY_RELEASE_TAG }}
473521 token : ${{ secrets.GITHUB_TOKEN }}
474522 omitBodyDuringUpdate : true
@@ -487,7 +535,7 @@ jobs:
487535
488536 runs-on : ubuntu-latest
489537
490- needs : [inputs, sentry, loadup, linux_installer, macos_installer, windows_installer ]
538+ needs : [inputs, sentry, loadup, linux_installer, macos_installer, cygwin_installer ]
491539 if : |
492540 needs.sentry.outputs.release_not_built == 'true'
493541 || needs.inputs.outputs.force == 'true'
@@ -503,6 +551,8 @@ jobs:
503551 echo "MEDLEY_RELEASE_TAG=${mrt}" >>${GITHUB_ENV}
504552 msrt="${{ needs.loadup.outputs.medley_short_release_tag }}"
505553 echo "MEDLEY_SHORT_RELEASE_TAG=${msrt}" >>${GITHUB_ENV}
554+ cyginst="${{ needs.cygwin_installer.outputs.cygwin_installer }}"
555+ echo "CYGWIN_INSTALLER=${cyginst}" >>${GITHUB_ENV}
506556
507557 # Checkout latest commit
508558 - name : Checkout Medley
@@ -514,7 +564,7 @@ jobs:
514564 # So this will be the final update before creating downloads page
515565 # and we can use its url for the page
516566 - run : echo "placeholder" >placeholder.txt
517- - name : Upload windows installer to release
567+ - name : Upload windows placeholder.txt to release
518568 id : pushph
519569 uses : ncipollo/release-action@v1
520570 with :
@@ -552,6 +602,7 @@ jobs:
552602 -e "s/@@@MEDLEY.SHORT.RELEASE.TAG@@@/${MEDLEY_SHORT_RELEASE_TAG}/g" \
553603 -e "s/@@@COMBINED.RELEASE.TAG@@@/${COMBINED_RELEASE_TAG}/g" \
554604 -e "s~@@@DOWNLOAD_URL@@@~${download_url}~g" \
605+ -e "s~@@@CYGWIN.INSTALLER@@@~${CYGWIN_INSTALLER}~g" \
555606 < "${local_template}" > "${local_filename}"
556607 # Create sftp instruction file
557608 echo "-rm ${remote_filepath}.oldold" > batch
@@ -566,6 +617,12 @@ jobs:
566617 env :
567618 SSH_KEY : ${{ secrets.OIO_SSH_KEY }}
568619
620+ # Remove placeholder.txt
621+ - name : Remove placeholder.txt
622+ run : |
623+ gh release delete-asset ${{ env.MEDLEY_RELEASE_TAG }} placeholder.txt --yes
624+ env :
625+ GH_TOKEN : ${{ secrets.GITHUB_TOKEN }}
569626
570627
571628# JOB: complete #####################################################################
0 commit comments