Skip to content

Build FPTaylor Binary (Linux Only) #6

Build FPTaylor Binary (Linux Only)

Build FPTaylor Binary (Linux Only) #6

Workflow file for this run

name: Build FPTaylor Binary (Linux Only)
on:
workflow_dispatch
jobs:
build-fptaylor:
runs-on: ubuntu-latest
steps:
- name: Checkout FPTaylor develop branch
uses: actions/checkout@v4
with:
repository: soarlab/FPTaylor
ref: develop
- name: Install OCaml and Opam manually
run: |
sudo apt update
sudo apt install -y opam ocaml ocaml-native-compilers m4 bubblewrap
- name: Initialize opam and install dependencies
run: |
opam init --disable-sandboxing -y
eval $(opam env)
opam install -y num
- name: Set up Python 3.7
uses: actions/setup-python@v4
with:
python-version: 3.7
- name: Install Python and system dependencies
run: |
sudo apt install -y flex bison wget
pip install --upgrade pip setuptools wheel pyyaml sly
- name: Clone and build Gelpia
run: |
git clone https://github.com/soarlab/gelpia.git
cd gelpia
git checkout develop
make requirements
make
- name: Build FPTaylor
run: |
eval $(opam env)
make
- name: Create FPTaylor compiled directory
run: |
mkdir -p fptaylor-dist/linux/fptaylor-compiled
cp -r *.ml* *.sh *.cfg *.txt fptaylor fptaylor.native gelpia fptaylor-dist/linux/fptaylor-compiled/
- name: Zip the distribution
run: |
cd fptaylor-dist
zip -r ../fptaylor-dist.zip *
- name: Release FPTaylor Binary
uses: softprops/action-gh-release@v1
with:
tag_name: fptaylor-component
name: "FPTaylor Binary (Linux)"
body: "Automated release of FPTaylor binary for Linux."
draft: false
prerelease: false
files: fptaylor-dist.zip
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}