Skip to content

Update workflows to use actions/setup-python@v5 and upgrade Python ve… #26

Update workflows to use actions/setup-python@v5 and upgrade Python ve…

Update workflows to use actions/setup-python@v5 and upgrade Python ve… #26

Workflow file for this run

name: linux
on:
push:
jobs:
build-linux:
runs-on: ${{ matrix.os }}
strategy:
matrix:
os: [ubuntu-20.04]
steps:
- uses: actions/checkout@v4
with:
submodules: true
- name: set env vars
run: |
if [ ${{github.ref_name}} == 'juce8' ]; then
echo "GUI_BRANCH=development-juce8" >> "$GITHUB_ENV"
elif [ ${{github.ref_name}} == 'testing-juce8' ]; then
echo "GUI_BRANCH=testing-juce8" >> "$GITHUB_ENV"
else
echo "Invalid branch : ${{github.ref_name}}"
exit 1
fi
- uses: actions/setup-python@v5
with:
python-version: '3.12'
- name: setup
run: |
sudo apt update
cd ../..
git clone https://github.com/open-ephys/plugin-GUI.git --branch $GUI_BRANCH
sudo ./plugin-GUI/Resources/Scripts/install_linux_dependencies.sh
cd plugin-GUI/Build && cmake -G "Unix Makefiles" -DCMAKE_BUILD_TYPE=Release ..
- name: build
run: |
conda env list
cd Build
cmake -G "Unix Makefiles" -DCMAKE_BUILD_TYPE=Release -DCOPY_PYTHON_DL=ON ..
make
# - name: test
# run: cd build && ctest
- name: package
env:
build_dir: "Build"
package: PythonProcessor-linux
run: |
plugin_api=$(grep -rnw ../../plugin-GUI/Source -e '#define PLUGIN_API_VER' | grep -Eo "[0-9]*" | tail -1)
tag=$(grep -w Source/OpenEphysLib.cpp -e 'info->libVersion' | grep -Eo "[0-9]+.[0-9]+.[0-9]+")
new_plugin_ver=$tag-API$plugin_api
mkdir plugins
cp -r $build_dir/*.so plugins
mv $build_dir/shared .
zipfile=${package}_${new_plugin_ver}.zip
echo "zipfile=${zipfile}" >> $GITHUB_ENV
zip -r -X $zipfile plugins shared
- uses: actions/upload-artifact@v4
with:
name: ${{ env.zipfile }}
path: ${{ env.zipfile }}
- name: deploy
if: github.ref == 'refs/heads/testing-juce8'
env:
secrets.ARTIFACTORY_ACCESS_TOKEN: ${{ secrets.secrets.ARTIFACTORY_ACCESS_TOKEN }}
run: |
curl -H "X-JFrog-Art-Api:$secrets.ARTIFACTORY_ACCESS_TOKEN" -T ${{ env.zipfile }} "https://openephys.jfrog.io/artifactory/PythonProcessor-plugin/linux/${{ env.zipfile }}"