Skip to content

Refactor GitHub Actions workflows #32

Refactor GitHub Actions workflows

Refactor GitHub Actions workflows #32

Workflow file for this run

name: linux
on:
push:
branches:
- '**' # Runs on push to any branch
tags:
- '*' # Runs on any tag push
pull_request:
branches:
- main # Runs on pull requests targeting the main branch
jobs:
build-linux:
if: github.event_name == 'push' || (github.event_name == 'pull_request' && github.base_ref == 'main')
runs-on: ubuntu-22.04
steps:
- uses: actions/checkout@v4
with:
fetch-depth: 0
- name: setup
run: |
sudo apt update
cd ../..
git clone https://github.com/open-ephys/plugin-GUI.git --branch main
sudo ./plugin-GUI/Resources/Scripts/install_linux_dependencies.sh
cd plugin-GUI/Build && cmake -G "Unix Makefiles" -DCMAKE_BUILD_TYPE=Release ..
- name: build
run: |
cd Build
cmake -G "Unix Makefiles" -DCMAKE_BUILD_TYPE=Release ..
make
# - name: test
# run: cd build && ctest
- name: deploy
if: github.ref == 'refs/heads/main'
env:
ARTIFACTORY_ACCESS_TOKEN: ${{ secrets.ARTIFACTORY_ACCESS_TOKEN }}
build_dir: "Build"
package: OpenEphysHDF5Lib-linux
run: |
plugin_api=$(grep -rnw ../../plugin-GUI/Source -e '#define PLUGIN_API_VER' | grep -Eo "[0-9]*" | tail -1)
tag=$(git describe --tags $(git rev-list --tags --max-count=1))
new_plugin_ver=$tag-API$plugin_api
mkdir shared
cp -r $build_dir/*.so shared
cp -r libs/linux/bin/* shared
zipfile=${package}_${new_plugin_ver}.zip
zip -r -X $zipfile shared
curl -H "X-JFrog-Art-Api:$ARTIFACTORY_ACCESS_TOKEN" -T $zipfile "https://openephys.jfrog.io/artifactory/OpenEphysHDF5Lib-plugin/linux/$zipfile"