# Interlisp workflow to build Medley release name: Build Medley Release # Run this workflow on push to master on: workflow_dispatch: inputs: tag: description: 'Release Tag' # Jobs that compose this workflow jobs: # Build Loadup loadup: runs-on: ubuntu-latest steps: - name: Set release tag if currently undefined if: ${{ github.event.inputs.tag == null }} run: | echo "tag=medley-`date +%y%m%d`" >> $GITHUB_ENV - name: Set release tag to input value if: ${{ github.event.inputs.tag != null }} run: | echo "tag=${{ github.event.inputs.tag }}" >> $GITHUB_ENV - name: Checkout Medley uses: actions/checkout@v2 # Get Maiko release information, retrieves the name of the latest # release. Used to download the correct Maiko release - name: Get Maiko Release Information id: latest_version uses: abatilo/release-info-action@v1.3.0 with: owner: Interlisp repo: maiko # Download Maiko Release Assets - name: Download Release Assets uses: robinraju/release-downloader@v1.2 with: repository: Interlisp/maiko token: ${{ secrets.GITHUB_TOKEN }} latest: true fileName: "${{ steps.latest_version.outputs.latest_tag }}-linux.x86_64.tgz" - name: Untar Maiko Release run: | tar -xvzf "${{ steps.latest_version.outputs.latest_tag }}-linux.x86_64.tgz" - name: install vnc run: sudo apt-get update && sudo apt-get install -y tightvncserver - name: Build Loadout run: | Xvnc -geometry 1280x720 :0 & export DISPLAY=":0" PATH="$PWD/maiko:$PATH" scripts/loadup-all.sh - name: Build release tar get libs run: | cp -p tmp/full.sysout tmp/lisp.sysout tmp/*.dribble tmp/whereis.hash loadups/ cp -p tmp/exports.all tmp/RDSYS tmp/RDSYS.LCOM library/ cd .. tar cfz medley/tmp/$tag-loadups.tgz \ medley/loadups/lisp.sysout \ medley/loadups/full.sysout \ medley/loadups/whereis.hash \ medley/library/exports.all \ medley/library/RDSYS/ \ medley/library/RDSYS.LCOM - name: tar part 2 run: | cd .. tar cfz medley/tmp/$tag-runtime.tgz \ --exclude "*~" --exclude "*#*" \ medley/docs/dinfo \ medley/docs/Documentation\ Tools \ medley/greetfiles \ medley/run-medley \ medley/scripts \ medley/fonts/displayfonts \ medley/fonts/altofonts \ medley/fonts/postscriptfonts \ medley/library/ \ medley/lispusers/ \ medley/fonts/big \ medley/fonts/other \ medley/sources/ \ medley/internal/library - name: Release notes run: | sed s/'$tag'/$tag/g < release-notes.md > tmp/release-notes.md - name: push the release uses: ncipollo/release-action@v1.8.10 with: artifacts: tmp/${{ env.tag }}-loadups.tgz,tmp/${{ env.tag }}-runtime.tgz tag: ${{ env.tag }} draft: true bodyfile: tmp/release-notes.md token: ${{ secrets.GITHUB_TOKEN }}