Skip to content

Github Action: build synApps finally #10

Github Action: build synApps finally

Github Action: build synApps finally #10

Workflow file for this run

name: build
# Controls when the action will run.
on:
# Triggers the workflow on push or pull request events but only for the main branch
push:
branches: [main]
pull_request:
branches: [main]
# Allows you to run this workflow manually from the Actions tab
workflow_dispatch:
jobs:
build:
# convert this to a matrix if builds differ between platforms
runs-on: ${{ matrix.os }}
strategy:
matrix:
os: ['ubuntu-latest']
steps:
- name: Install required packages
run: |
sudo apt-get install -y git build-essential curl libusb-dev libusb-1.0-0-dev re2c x11proto-dev libx11-dev libxext-dev
# get & build EPICS first
- name: Restore cached EPICS
id: cache-epics
uses: actions/cache/restore@v4
with:
path: epics-base
key: ${{ runner.os }}-epics-base
- name: Check out epics
if: steps.cache-epics.outputs.cache-hit != 'true'
uses: actions/checkout@v4
with:
repository: epics-base/epics-base
ref: '7.0'
submodules: recursive
path: epics-base
- name: Build EPICS
if: steps.cache-epics.outputs.cache-hit != 'true'
run: |
cd epics-base
make distclean
make
- name: Cache EPICS
uses: actions/cache/save@v4
with:
path: epics-base
key: ${{ steps.cache-epics.outputs.cache-primary-key }}
- name: Check out assemble_synApps
uses: actions/checkout@v4
with:
path: assemble_synApps
- name: Build synApps
run: |
./assemble_synApps/assemble_synApps --base="$(pwd)/epics-base" --dir="$(pwd)/synapps"
cd synapps/support
make