* Add new GitHub action to create medley release * Update to manual trigger with release name as input * Build loadup (#1) * Add new GitHub action to create medley release * Update to manual trigger with release name as input * Cleanup * Build loadup (#2) * Add new GitHub action to create medley release * Update to manual trigger with release name as input * Cleanup * Cleanup * Build loadup (#3) * Add new GitHub action to create medley release * Update to manual trigger with release name as input * Cleanup * Cleanup * Move sysouts to correct location * Build loadup (#4) * Add new GitHub action to create medley release * Update to manual trigger with release name as input * Cleanup * Cleanup
91 lines
3.2 KiB
YAML
91 lines
3.2 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
|
|
|
|
- name: Get the latest Maiko Release
|
|
uses: actions/checkout@v2
|
|
with:
|
|
repository: interlisp/maiko
|
|
path: maiko
|
|
|
|
- name: install compiler
|
|
run: sudo apt-get update && sudo apt-get install -y make clang libx11-dev gcc x11vnc xvfb
|
|
|
|
- name: install vnc
|
|
run: sudo apt-get install -y tightvncserver
|
|
|
|
- name: Compile Maiko
|
|
working-directory: maiko/bin
|
|
run: ./makeright x && ./makeright init
|
|
|
|
- name: Build Loadout
|
|
run: pwd && Xvnc -once -geometry 1280x720 :0 & DISPLAY=:0 PATH="/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/
|
|
tar cfz tmp/$tag-loadups.tgz \
|
|
loadups/lisp.sysout \
|
|
loadups/full.sysout \
|
|
loadups/whereis.hash \
|
|
library/exports.all \
|
|
library/RDSYS/ \
|
|
library/RDSYS.LCOM
|
|
|
|
- name: tar part 2
|
|
run: |
|
|
tar cfz tmp/$tag-runtime.tgz \
|
|
--exclude "*~" --exclude "*#*" \
|
|
docs/dinfo \
|
|
docs/Documentation\ Tools \
|
|
greetfiles/SIMPLE-INIT \
|
|
run-medley \
|
|
scripts \
|
|
fonts/displayfonts \
|
|
fonts/altofonts \
|
|
fonts/postscriptfonts \
|
|
library/ \
|
|
lispusers/ \
|
|
fonts/big \
|
|
fonts/other \
|
|
sources/ \
|
|
internal/library
|
|
|
|
- name: Release notes
|
|
run: |
|
|
sed s/'$tag'/$tag/g < release-notes.md > tmp/release-notes.md &&
|
|
ls tmp && env
|
|
|
|
- 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 }}
|
|
bodyfile: tmp/release-notes.md
|
|
token: ${{ secrets.GITHUB_TOKEN }} |