1
0
mirror of synced 2026-01-23 03:07:39 +00:00
Bill Stumbo bf5689be2a
Build loadup (#534)
* 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
2021-10-21 10:00:28 -07:00

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 }}