mirror of
https://github.com/idris-lang/Idris2.git
synced 2024-12-18 00:31:57 +03:00
[ ci ] just dump everything into a single file already (#1645)
This commit is contained in:
parent
a1ae5148b6
commit
168a69bdcf
@ -1,26 +1,33 @@
|
|||||||
name: Ubuntu Combined
|
name: Idris2
|
||||||
|
|
||||||
on:
|
on:
|
||||||
workflow_run:
|
push:
|
||||||
workflows: ["Quick check"]
|
branches:
|
||||||
types:
|
- '*'
|
||||||
- completed
|
tags:
|
||||||
|
- '*'
|
||||||
|
pull_request:
|
||||||
|
branches:
|
||||||
|
- master
|
||||||
|
- main
|
||||||
|
|
||||||
env:
|
env:
|
||||||
IDRIS2_VERSION: 0.4.0 # For previous-version build
|
IDRIS2_VERSION: 0.4.0 # For previous-version build
|
||||||
SCHEME: scheme
|
|
||||||
|
|
||||||
jobs:
|
jobs:
|
||||||
|
|
||||||
#
|
######################################################################
|
||||||
# Boostrapping and Previous Version Builds
|
# Build from the previous version
|
||||||
#
|
# We perform this check before all the other ones because:
|
||||||
|
# 1. It is fast
|
||||||
|
# 2. If it fails then there is no point in trying the rest
|
||||||
|
######################################################################
|
||||||
|
|
||||||
build-bootstrap-chez:
|
quick-check:
|
||||||
if: ${{ github.event.workflow_run.conclusion == 'success' }}
|
|
||||||
runs-on: ubuntu-latest
|
runs-on: ubuntu-latest
|
||||||
env:
|
env:
|
||||||
IDRIS2_CG: chez
|
IDRIS2_CG: chez
|
||||||
|
SCHEME: scheme
|
||||||
steps:
|
steps:
|
||||||
- name: Checkout
|
- name: Checkout
|
||||||
uses: actions/checkout@v2
|
uses: actions/checkout@v2
|
||||||
@ -30,48 +37,9 @@ jobs:
|
|||||||
sudo apt-get update
|
sudo apt-get update
|
||||||
sudo apt-get install -y -t hirsute chezscheme
|
sudo apt-get install -y -t hirsute chezscheme
|
||||||
echo "$HOME/.idris2/bin" >> $GITHUB_PATH
|
echo "$HOME/.idris2/bin" >> $GITHUB_PATH
|
||||||
- name: Build from bootstrap
|
|
||||||
run: make bootstrap && make install
|
|
||||||
- name: Artifact Bootstrapped Idris2
|
|
||||||
uses: actions/upload-artifact@v2
|
|
||||||
with:
|
|
||||||
name: installed-bootstrapped-idris2-chez
|
|
||||||
path: ~/.idris2/
|
|
||||||
|
|
||||||
build-bootstrap-racket:
|
# Get our hands on the released version either by using the cache
|
||||||
if: ${{ github.event.workflow_run.conclusion == 'success' }}
|
# or by rebuilding it if necessary.
|
||||||
runs-on: ubuntu-latest
|
|
||||||
env:
|
|
||||||
IDRIS2_CG: racket
|
|
||||||
steps:
|
|
||||||
- name: Checkout
|
|
||||||
uses: actions/checkout@v2
|
|
||||||
- name: Install build dependencies
|
|
||||||
run: |
|
|
||||||
sudo apt-get install -y racket
|
|
||||||
echo "$HOME/.idris2/bin" >> $GITHUB_PATH
|
|
||||||
- name: Build from bootstrap
|
|
||||||
run: make bootstrap-racket && make install
|
|
||||||
- name: Artifact Bootstrapped Idris2
|
|
||||||
uses: actions/upload-artifact@v2
|
|
||||||
with:
|
|
||||||
name: installed-bootstrapped-idris2-racket
|
|
||||||
path: ~/.idris2/
|
|
||||||
|
|
||||||
build-previous-version:
|
|
||||||
if: ${{ github.event.workflow_run.conclusion == 'success' }}
|
|
||||||
runs-on: ubuntu-latest
|
|
||||||
env:
|
|
||||||
IDRIS2_CG: chez
|
|
||||||
steps:
|
|
||||||
- name: Checkout
|
|
||||||
uses: actions/checkout@v2
|
|
||||||
- name: Install build dependencies
|
|
||||||
run: |
|
|
||||||
echo "deb http://security.ubuntu.com/ubuntu hirsute universe" | sudo tee -a /etc/apt/sources.list
|
|
||||||
sudo apt-get update
|
|
||||||
sudo apt-get install -y -t hirsute chezscheme
|
|
||||||
echo "$HOME/.idris2/bin" >> $GITHUB_PATH
|
|
||||||
- name: Cache Chez Previous Version
|
- name: Cache Chez Previous Version
|
||||||
id: previous-version-cache
|
id: previous-version-cache
|
||||||
uses: actions/cache@v2
|
uses: actions/cache@v2
|
||||||
@ -91,28 +59,157 @@ jobs:
|
|||||||
cd Idris2-$IDRIS2_VERSION
|
cd Idris2-$IDRIS2_VERSION
|
||||||
make install
|
make install
|
||||||
cd ..
|
cd ..
|
||||||
- name: Artifact Idris2
|
|
||||||
|
# Build the current version and save the installation.
|
||||||
|
- name: Build current version
|
||||||
|
run: |
|
||||||
|
make && make install
|
||||||
|
- name: Artifact Idris2 from previous version
|
||||||
uses: actions/upload-artifact@v2
|
uses: actions/upload-artifact@v2
|
||||||
with:
|
with:
|
||||||
name: installed-idris2-${{ env.IDRIS2_VERSION }}-chez
|
name: ubuntu-installed-idris2-${{ env.IDRIS2_VERSION }}-chez
|
||||||
path: ~/.idris2/
|
path: ~/.idris2/
|
||||||
|
|
||||||
#
|
######################################################################
|
||||||
# Self Hosting and Testing
|
# Bootstrapping builds
|
||||||
#
|
######################################################################
|
||||||
|
|
||||||
self-host-chez:
|
# CHEZ
|
||||||
needs: build-bootstrap-chez
|
|
||||||
|
ubuntu-bootstrap-chez:
|
||||||
|
needs: quick-check
|
||||||
runs-on: ubuntu-latest
|
runs-on: ubuntu-latest
|
||||||
env:
|
env:
|
||||||
IDRIS2_CG: chez
|
IDRIS2_CG: chez
|
||||||
|
SCHEME: scheme
|
||||||
|
steps:
|
||||||
|
- name: Checkout
|
||||||
|
uses: actions/checkout@v2
|
||||||
|
- name: Install build dependencies
|
||||||
|
run: |
|
||||||
|
echo "deb http://security.ubuntu.com/ubuntu hirsute universe" | sudo tee -a /etc/apt/sources.list
|
||||||
|
sudo apt-get update
|
||||||
|
sudo apt-get install -y -t hirsute chezscheme
|
||||||
|
echo "$HOME/.idris2/bin" >> $GITHUB_PATH
|
||||||
|
- name: Build from bootstrap
|
||||||
|
run: make bootstrap && make install
|
||||||
|
- name: Artifact Bootstrapped Idris2
|
||||||
|
uses: actions/upload-artifact@v2
|
||||||
|
with:
|
||||||
|
name: ubuntu-installed-bootstrapped-idris2-chez
|
||||||
|
path: ~/.idris2/
|
||||||
|
|
||||||
|
macos-bootstrap-chez:
|
||||||
|
needs: quick-check
|
||||||
|
runs-on: macos-latest
|
||||||
|
env:
|
||||||
|
SCHEME: chez
|
||||||
|
steps:
|
||||||
|
- name: Checkout
|
||||||
|
uses: actions/checkout@v2
|
||||||
|
- name: Install build dependencies
|
||||||
|
run: |
|
||||||
|
brew install chezscheme
|
||||||
|
brew install coreutils
|
||||||
|
echo "$HOME/.idris2/bin" >> $GITHUB_PATH
|
||||||
|
- name: Build Idris 2 from bootstrap
|
||||||
|
run: make bootstrap && make install
|
||||||
|
shell: bash
|
||||||
|
- name: Artifact Bootstrapped Idris2
|
||||||
|
uses: actions/upload-artifact@v2
|
||||||
|
with:
|
||||||
|
name: macos-installed-bootstrapped-idris2-chez
|
||||||
|
path: ~/.idris2/
|
||||||
|
|
||||||
|
windows-bootstrap-chez:
|
||||||
|
needs: quick-check
|
||||||
|
runs-on: windows-latest
|
||||||
|
env:
|
||||||
|
MSYSTEM: MINGW64
|
||||||
|
MSYS2_PATH_TYPE: inherit
|
||||||
|
SCHEME: scheme
|
||||||
|
CC: gcc
|
||||||
|
steps:
|
||||||
|
- name: Init
|
||||||
|
run: |
|
||||||
|
git config --global core.autocrlf false
|
||||||
|
- name: Checkout
|
||||||
|
uses: actions/checkout@v2
|
||||||
|
- name: Get Chez Scheme
|
||||||
|
run: |
|
||||||
|
git clone --depth 1 https://github.com/cisco/ChezScheme
|
||||||
|
c:\msys64\usr\bin\bash -l -c "pacman -S --noconfirm tar make"
|
||||||
|
echo "PWD=$(c:\msys64\usr\bin\cygpath -u $(pwd))" | Out-File -FilePath $env:GITHUB_ENV -Encoding utf8 -Append
|
||||||
|
- name: Configure and Build Chez Scheme
|
||||||
|
run: |
|
||||||
|
c:\msys64\usr\bin\bash -l -c "cd $env:PWD && cd ChezScheme && ./configure --threads && make"
|
||||||
|
- name: Set Path
|
||||||
|
run: |
|
||||||
|
$chez="$(pwd)\ChezScheme\ta6nt\bin\ta6nt"
|
||||||
|
$idris="$(pwd)\.idris2"
|
||||||
|
echo "$chez" | Out-File -FilePath $env:GITHUB_PATH -Encoding utf8 -Append
|
||||||
|
echo "$idris\bin" | Out-File -FilePath $env:GITHUB_PATH -Encoding utf8 -Append
|
||||||
|
echo "IDRIS_PREFIX=$idris" | Out-File -FilePath $env:GITHUB_ENV -Encoding utf8 -Append
|
||||||
|
echo "PREFIX=$(c:\msys64\usr\bin\cygpath -u $idris)" | Out-File -FilePath $env:GITHUB_ENV -Encoding utf8 -Append
|
||||||
|
- name: Test Scheme
|
||||||
|
run: |
|
||||||
|
scheme --version
|
||||||
|
- name: Bootstrap and install
|
||||||
|
run: c:\msys64\usr\bin\bash -l -c "cd $env:PWD && make bootstrap && make bootstrap-test && make install"
|
||||||
|
|
||||||
|
nix-bootstrap-chez:
|
||||||
|
needs: quick-check
|
||||||
|
runs-on: ubuntu-latest
|
||||||
|
steps:
|
||||||
|
- uses: actions/checkout@v2
|
||||||
|
with:
|
||||||
|
fetch-depth: 0
|
||||||
|
- uses: cachix/install-nix-action@v12
|
||||||
|
with:
|
||||||
|
install_url: https://github.com/numtide/nix-flakes-installer/releases/download/nix-2.4pre20210126_f15f0b8/install
|
||||||
|
- run: nix-build -A checks.x86_64-linux
|
||||||
|
|
||||||
|
# RACKET
|
||||||
|
|
||||||
|
ubuntu-bootstrap-racket:
|
||||||
|
needs: quick-check
|
||||||
|
runs-on: ubuntu-latest
|
||||||
|
env:
|
||||||
|
IDRIS2_CG: racket
|
||||||
|
steps:
|
||||||
|
- name: Checkout
|
||||||
|
uses: actions/checkout@v2
|
||||||
|
- name: Install build dependencies
|
||||||
|
run: |
|
||||||
|
sudo apt-get install -y racket
|
||||||
|
echo "$HOME/.idris2/bin" >> $GITHUB_PATH
|
||||||
|
- name: Build from bootstrap
|
||||||
|
run: make bootstrap-racket && make install
|
||||||
|
- name: Artifact Bootstrapped Idris2
|
||||||
|
uses: actions/upload-artifact@v2
|
||||||
|
with:
|
||||||
|
name: ubuntu-installed-bootstrapped-idris2-racket
|
||||||
|
path: ~/.idris2/
|
||||||
|
|
||||||
|
######################################################################
|
||||||
|
# Self-hosting builds and testing
|
||||||
|
######################################################################
|
||||||
|
|
||||||
|
# CHEZ
|
||||||
|
|
||||||
|
ubuntu-self-host-chez:
|
||||||
|
needs: ubuntu-bootstrap-chez
|
||||||
|
runs-on: ubuntu-latest
|
||||||
|
env:
|
||||||
|
IDRIS2_CG: chez
|
||||||
|
SCHEME: scheme
|
||||||
steps:
|
steps:
|
||||||
- name: Checkout
|
- name: Checkout
|
||||||
uses: actions/checkout@v2
|
uses: actions/checkout@v2
|
||||||
- name: Download Idris2 Artifact
|
- name: Download Idris2 Artifact
|
||||||
uses: actions/download-artifact@v2
|
uses: actions/download-artifact@v2
|
||||||
with:
|
with:
|
||||||
name: installed-bootstrapped-idris2-chez
|
name: ubuntu-installed-bootstrapped-idris2-chez
|
||||||
path: ~/.idris2/
|
path: ~/.idris2/
|
||||||
- name: Install build dependencies
|
- name: Install build dependencies
|
||||||
run: |
|
run: |
|
||||||
@ -126,8 +223,36 @@ jobs:
|
|||||||
- name: Test self-hosted
|
- name: Test self-hosted
|
||||||
run: make test INTERACTIVE=''
|
run: make test INTERACTIVE=''
|
||||||
|
|
||||||
self-host-racket:
|
macos-self-host-chez:
|
||||||
needs: build-bootstrap-racket
|
needs: macos-bootstrap-chez
|
||||||
|
runs-on: macos-latest
|
||||||
|
env:
|
||||||
|
SCHEME: chez
|
||||||
|
steps:
|
||||||
|
- name: Checkout
|
||||||
|
uses: actions/checkout@v2
|
||||||
|
- name: Download Idris2 Artifact
|
||||||
|
uses: actions/download-artifact@v2
|
||||||
|
with:
|
||||||
|
name: macos-installed-bootstrapped-idris2-chez
|
||||||
|
path: ~/.idris2/
|
||||||
|
- name: Install build dependencies
|
||||||
|
run: |
|
||||||
|
brew install chezscheme
|
||||||
|
brew install coreutils
|
||||||
|
echo "$HOME/.idris2/bin" >> $GITHUB_PATH
|
||||||
|
chmod +x $HOME/.idris2/bin/idris2 $HOME/.idris2/bin/idris2_app/*
|
||||||
|
- name: Build self-hosted
|
||||||
|
run: make all IDRIS2_BOOT="idris2 -Werror" && make install
|
||||||
|
shell: bash
|
||||||
|
- name: Test self-hosted
|
||||||
|
run: make test INTERACTIVE=''
|
||||||
|
shell: bash
|
||||||
|
|
||||||
|
# RACKET
|
||||||
|
|
||||||
|
ubuntu-self-host-racket:
|
||||||
|
needs: ubuntu-bootstrap-racket
|
||||||
runs-on: ubuntu-latest
|
runs-on: ubuntu-latest
|
||||||
env:
|
env:
|
||||||
IDRIS2_CG: racket
|
IDRIS2_CG: racket
|
||||||
@ -137,7 +262,7 @@ jobs:
|
|||||||
- name: Download Idris2 Artifact
|
- name: Download Idris2 Artifact
|
||||||
uses: actions/download-artifact@v2
|
uses: actions/download-artifact@v2
|
||||||
with:
|
with:
|
||||||
name: installed-bootstrapped-idris2-racket
|
name: ubuntu-installed-bootstrapped-idris2-racket
|
||||||
path: ~/.idris2/
|
path: ~/.idris2/
|
||||||
- name: Install build dependencies
|
- name: Install build dependencies
|
||||||
run: |
|
run: |
|
||||||
@ -149,8 +274,8 @@ jobs:
|
|||||||
- name: Test self-hosted
|
- name: Test self-hosted
|
||||||
run: make test INTERACTIVE=''
|
run: make test INTERACTIVE=''
|
||||||
|
|
||||||
self-host-previous-version:
|
ubuntu-self-host-previous-version:
|
||||||
needs: build-previous-version
|
needs: quick-check
|
||||||
runs-on: ubuntu-latest
|
runs-on: ubuntu-latest
|
||||||
env:
|
env:
|
||||||
IDRIS2_CG: chez
|
IDRIS2_CG: chez
|
||||||
@ -160,7 +285,7 @@ jobs:
|
|||||||
- name: Download Idris2 Artifact
|
- name: Download Idris2 Artifact
|
||||||
uses: actions/download-artifact@v2
|
uses: actions/download-artifact@v2
|
||||||
with:
|
with:
|
||||||
name: installed-idris2-${{ env.IDRIS2_VERSION }}-chez
|
name: ubuntu-installed-idris2-${{ env.IDRIS2_VERSION }}-chez
|
||||||
path: ~/.idris2/
|
path: ~/.idris2/
|
||||||
- name: Install build dependencies
|
- name: Install build dependencies
|
||||||
run: |
|
run: |
|
||||||
@ -169,8 +294,6 @@ jobs:
|
|||||||
sudo apt-get install -y -t hirsute chezscheme
|
sudo apt-get install -y -t hirsute chezscheme
|
||||||
echo "$HOME/.idris2/bin" >> $GITHUB_PATH
|
echo "$HOME/.idris2/bin" >> $GITHUB_PATH
|
||||||
chmod +x $HOME/.idris2/bin/idris2 $HOME/.idris2/bin/idris2_app/*
|
chmod +x $HOME/.idris2/bin/idris2 $HOME/.idris2/bin/idris2_app/*
|
||||||
- name: Build from previous version
|
|
||||||
run: make all && make install && make clean
|
|
||||||
- name: Build self-hosted from previous version
|
- name: Build self-hosted from previous version
|
||||||
run: make all IDRIS2_BOOT="idris2 -Werror" && make install
|
run: make all IDRIS2_BOOT="idris2 -Werror" && make install
|
||||||
- name: Test self-hosted from previous version
|
- name: Test self-hosted from previous version
|
||||||
@ -181,8 +304,12 @@ jobs:
|
|||||||
name: idris2-nightly-chez
|
name: idris2-nightly-chez
|
||||||
path: ~/.idris2/
|
path: ~/.idris2/
|
||||||
|
|
||||||
build-api:
|
######################################################################
|
||||||
needs: build-bootstrap-chez
|
# Ubuntu API
|
||||||
|
######################################################################
|
||||||
|
|
||||||
|
ubuntu-build-api:
|
||||||
|
needs: ubuntu-bootstrap-chez
|
||||||
runs-on: ubuntu-latest
|
runs-on: ubuntu-latest
|
||||||
env:
|
env:
|
||||||
IDRIS2_CG: chez
|
IDRIS2_CG: chez
|
||||||
@ -192,7 +319,7 @@ jobs:
|
|||||||
- name: Download Idris2 Artifact
|
- name: Download Idris2 Artifact
|
||||||
uses: actions/download-artifact@v2
|
uses: actions/download-artifact@v2
|
||||||
with:
|
with:
|
||||||
name: installed-bootstrapped-idris2-chez
|
name: ubuntu-installed-bootstrapped-idris2-chez
|
||||||
path: ~/.idris2/
|
path: ~/.idris2/
|
||||||
- name: Install build dependencies
|
- name: Install build dependencies
|
||||||
run: |
|
run: |
|
86
.github/workflows/ci-macos-combined.yml
vendored
86
.github/workflows/ci-macos-combined.yml
vendored
@ -1,86 +0,0 @@
|
|||||||
name: macOS Combined Chez
|
|
||||||
|
|
||||||
on:
|
|
||||||
workflow_run:
|
|
||||||
workflows: ["Quick check"]
|
|
||||||
types:
|
|
||||||
- completed
|
|
||||||
|
|
||||||
env:
|
|
||||||
SCHEME: chez
|
|
||||||
|
|
||||||
jobs:
|
|
||||||
|
|
||||||
# Building the executable
|
|
||||||
|
|
||||||
build-bootstrap-chez:
|
|
||||||
if: ${{ github.event.workflow_run.conclusion == 'success' }}
|
|
||||||
runs-on: macos-latest
|
|
||||||
steps:
|
|
||||||
- name: Checkout
|
|
||||||
uses: actions/checkout@v2
|
|
||||||
- name: Install build dependencies
|
|
||||||
run: |
|
|
||||||
brew install chezscheme
|
|
||||||
brew install coreutils
|
|
||||||
echo "$HOME/.idris2/bin" >> $GITHUB_PATH
|
|
||||||
- name: Build Idris 2 from bootstrap
|
|
||||||
run: make bootstrap && make install
|
|
||||||
shell: bash
|
|
||||||
- name: Artifact Bootstrapped Idris2
|
|
||||||
uses: actions/upload-artifact@v2
|
|
||||||
with:
|
|
||||||
name: installed-bootstrapped-idris2-chez
|
|
||||||
path: ~/.idris2/
|
|
||||||
|
|
||||||
# self hosting and testing
|
|
||||||
|
|
||||||
self-host-chez:
|
|
||||||
needs: build-bootstrap-chez
|
|
||||||
runs-on: macos-latest
|
|
||||||
steps:
|
|
||||||
- name: Checkout
|
|
||||||
uses: actions/checkout@v2
|
|
||||||
- name: Download Idris2 Artifact
|
|
||||||
uses: actions/download-artifact@v2
|
|
||||||
with:
|
|
||||||
name: installed-bootstrapped-idris2-chez
|
|
||||||
path: ~/.idris2/
|
|
||||||
- name: Install build dependencies
|
|
||||||
run: |
|
|
||||||
brew install chezscheme
|
|
||||||
brew install coreutils
|
|
||||||
echo "$HOME/.idris2/bin" >> $GITHUB_PATH
|
|
||||||
chmod +x $HOME/.idris2/bin/idris2 $HOME/.idris2/bin/idris2_app/*
|
|
||||||
- name: Build self-hosted
|
|
||||||
run: make all IDRIS2_BOOT="idris2 -Werror" && make install
|
|
||||||
shell: bash
|
|
||||||
- name: Test self-hosted
|
|
||||||
run: make test INTERACTIVE=''
|
|
||||||
shell: bash
|
|
||||||
|
|
||||||
# this gambit test is really slow so se run it separately
|
|
||||||
|
|
||||||
# test-gambit:
|
|
||||||
# needs: build-bootstrap-chez
|
|
||||||
# runs-on: macos-latest
|
|
||||||
# steps:
|
|
||||||
# - name: Checkout
|
|
||||||
# uses: actions/checkout@v2
|
|
||||||
# - name: Download Idris2 Artifact
|
|
||||||
# uses: actions/download-artifact@v2
|
|
||||||
# with:
|
|
||||||
# name: installed-bootstrapped-idris2-chez
|
|
||||||
# path: ~/.idris2/
|
|
||||||
# - name: Install build dependencies
|
|
||||||
# run: |
|
|
||||||
# brew install chezscheme
|
|
||||||
# brew install coreutils
|
|
||||||
# brew install gambit-scheme
|
|
||||||
# CURRENTDIR=$(find /usr/local/Cellar/gambit-scheme -type l -name current)
|
|
||||||
# echo "::add-path::${CURRENTDIR}/bin"
|
|
||||||
# echo "$HOME/.idris2/bin" >> $GITHUB_PATH
|
|
||||||
# chmod +x $HOME/.idris2/bin/idris2 $HOME/.idris2/bin/idris2_app/*
|
|
||||||
# - name: Test gambit
|
|
||||||
# run: cd tests/gambit/bitops001/ && ./run idris2
|
|
||||||
# shell: bash
|
|
20
.github/workflows/ci-nix.yml
vendored
20
.github/workflows/ci-nix.yml
vendored
@ -1,20 +0,0 @@
|
|||||||
name: Nix
|
|
||||||
|
|
||||||
on:
|
|
||||||
workflow_run:
|
|
||||||
workflows: ["Quick check"]
|
|
||||||
types:
|
|
||||||
- completed
|
|
||||||
|
|
||||||
jobs:
|
|
||||||
tests:
|
|
||||||
if: ${{ github.event.workflow_run.conclusion == 'success' }}
|
|
||||||
runs-on: ubuntu-latest
|
|
||||||
steps:
|
|
||||||
- uses: actions/checkout@v2
|
|
||||||
with:
|
|
||||||
fetch-depth: 0
|
|
||||||
- uses: cachix/install-nix-action@v12
|
|
||||||
with:
|
|
||||||
install_url: https://github.com/numtide/nix-flakes-installer/releases/download/nix-2.4pre20210126_f15f0b8/install
|
|
||||||
- run: nix-build -A checks.x86_64-linux
|
|
54
.github/workflows/ci-quick-check.yml
vendored
54
.github/workflows/ci-quick-check.yml
vendored
@ -1,54 +0,0 @@
|
|||||||
name: Quick check
|
|
||||||
|
|
||||||
on:
|
|
||||||
push:
|
|
||||||
branches:
|
|
||||||
- '*'
|
|
||||||
tags:
|
|
||||||
- '*'
|
|
||||||
pull_request:
|
|
||||||
branches:
|
|
||||||
- master
|
|
||||||
- main
|
|
||||||
|
|
||||||
env:
|
|
||||||
IDRIS2_VERSION: 0.4.0 # For previous-version build
|
|
||||||
SCHEME: scheme
|
|
||||||
|
|
||||||
jobs:
|
|
||||||
|
|
||||||
from-cached-bootstrap:
|
|
||||||
runs-on: ubuntu-latest
|
|
||||||
env:
|
|
||||||
IDRIS2_CG: chez
|
|
||||||
steps:
|
|
||||||
- name: Checkout
|
|
||||||
uses: actions/checkout@v2
|
|
||||||
- name: Install build dependencies
|
|
||||||
run: |
|
|
||||||
echo "deb http://security.ubuntu.com/ubuntu hirsute universe" | sudo tee -a /etc/apt/sources.list
|
|
||||||
sudo apt-get update
|
|
||||||
sudo apt-get install -y -t hirsute chezscheme
|
|
||||||
echo "$HOME/.idris2/bin" >> $GITHUB_PATH
|
|
||||||
- name: Cache Chez Previous Version
|
|
||||||
id: previous-version-cache
|
|
||||||
uses: actions/cache@v2
|
|
||||||
with:
|
|
||||||
path: Idris2-${{ env.IDRIS2_VERSION }}
|
|
||||||
key: ${{ runner.os }}-idris2-bootstrapped-hirsute-chez-${{ env.IDRIS2_VERSION }}
|
|
||||||
- name : Build previous version
|
|
||||||
if: steps.previous-version-cache.outputs.cache-hit != 'true'
|
|
||||||
run: |
|
|
||||||
wget https://www.idris-lang.org/idris2-src/idris2-$IDRIS2_VERSION.tgz
|
|
||||||
tar zxvf idris2-$IDRIS2_VERSION.tgz
|
|
||||||
cd Idris2-$IDRIS2_VERSION
|
|
||||||
make bootstrap
|
|
||||||
cd ..
|
|
||||||
- name: Install previous version
|
|
||||||
run: |
|
|
||||||
cd Idris2-$IDRIS2_VERSION
|
|
||||||
make install
|
|
||||||
cd ..
|
|
||||||
- name: Build current version
|
|
||||||
run: |
|
|
||||||
make
|
|
45
.github/workflows/ci-windows.yml
vendored
45
.github/workflows/ci-windows.yml
vendored
@ -1,45 +0,0 @@
|
|||||||
name: Windows
|
|
||||||
|
|
||||||
on:
|
|
||||||
workflow_run:
|
|
||||||
workflows: ["Quick check"]
|
|
||||||
types:
|
|
||||||
- completed
|
|
||||||
|
|
||||||
env:
|
|
||||||
MSYSTEM: MINGW64
|
|
||||||
MSYS2_PATH_TYPE: inherit
|
|
||||||
SCHEME: scheme
|
|
||||||
CC: gcc
|
|
||||||
|
|
||||||
jobs:
|
|
||||||
build:
|
|
||||||
if: ${{ github.event.workflow_run.conclusion == 'success' }}
|
|
||||||
runs-on: windows-latest
|
|
||||||
steps:
|
|
||||||
- name: Init
|
|
||||||
run: |
|
|
||||||
git config --global core.autocrlf false
|
|
||||||
- name: Checkout
|
|
||||||
uses: actions/checkout@v2
|
|
||||||
- name: Get Chez Scheme
|
|
||||||
run: |
|
|
||||||
git clone --depth 1 https://github.com/cisco/ChezScheme
|
|
||||||
c:\msys64\usr\bin\bash -l -c "pacman -S --noconfirm tar make"
|
|
||||||
echo "PWD=$(c:\msys64\usr\bin\cygpath -u $(pwd))" | Out-File -FilePath $env:GITHUB_ENV -Encoding utf8 -Append
|
|
||||||
- name: Configure and Build Chez Scheme
|
|
||||||
run: |
|
|
||||||
c:\msys64\usr\bin\bash -l -c "cd $env:PWD && cd ChezScheme && ./configure --threads && make"
|
|
||||||
- name: Set Path
|
|
||||||
run: |
|
|
||||||
$chez="$(pwd)\ChezScheme\ta6nt\bin\ta6nt"
|
|
||||||
$idris="$(pwd)\.idris2"
|
|
||||||
echo "$chez" | Out-File -FilePath $env:GITHUB_PATH -Encoding utf8 -Append
|
|
||||||
echo "$idris\bin" | Out-File -FilePath $env:GITHUB_PATH -Encoding utf8 -Append
|
|
||||||
echo "IDRIS_PREFIX=$idris" | Out-File -FilePath $env:GITHUB_ENV -Encoding utf8 -Append
|
|
||||||
echo "PREFIX=$(c:\msys64\usr\bin\cygpath -u $idris)" | Out-File -FilePath $env:GITHUB_ENV -Encoding utf8 -Append
|
|
||||||
- name: Test Scheme
|
|
||||||
run: |
|
|
||||||
scheme --version
|
|
||||||
- name: Bootstrap and install
|
|
||||||
run: c:\msys64\usr\bin\bash -l -c "cd $env:PWD && make bootstrap && make bootstrap-test && make install"
|
|
Loading…
Reference in New Issue
Block a user