106 lines
3.9 KiB
YAML
106 lines
3.9 KiB
YAML
# 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/SIMPLE-INIT \
|
|
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 }} |