Skip to content

Sync files from source repo #33

Sync files from source repo

Sync files from source repo #33

Workflow file for this run

name: MATLAB MLX to HTML Conversion
# Trigger the workflow on push events but only for the main branch
on:
push:
branches:
- gh-pages
paths:
- '**.mlx'
# The jobs key is a collection of the jobs to run
jobs:
convert-mlx-to-html:
# The type of runner that the job will run on
runs-on: self-hosted
# Steps represent a sequence of tasks that will be executed as part of the job
steps:
- name: Manual Repository Checkout
run: |
# Check if the cobratoolbox_repo directory exists
if [ -d "cobratoolbox_repo" ]; then
# If it exists, clean it to avoid conflicts
rm -rf cobratoolbox_repo/*
else
# If it doesn't exist, create it
mkdir cobratoolbox_repo
fi
# Clone the repository into the cobratoolbox_repo directory
git clone --depth=1 https://github.com/opencobra/cobratoolbox.git cobratoolbox_repo
cd cobratoolbox_repo
- name: Get Changed MLX Files
id: getfile
run: |
changed_files=$(git diff --name-only ${{ github.event.before }} ${{ github.sha }} | grep '\.mlx' || echo "")
echo "Changed MLX files: $changed_files"
echo "::set-output name=mlx_file::$changed_files"
- name: Print Changed MLX Files
if: steps.getfile.outputs.mlx_file != ''
run: echo "The following MLX files have been changed ${{ steps.getfile.outputs.mlx_file }}"
- name: Make MATLAB Script Executable
run: chmod +x ./run_matlab.sh
- name: Convert MLX to HTML
if: steps.getfile.outputs.mlx_file != ''
run: |
./run_matlab.sh "${{ steps.getfile.outputs.mlx_file }}"
- name: Commit and Push New File
run: |
git config user.name "GitHub Action"
git config user.email "[email protected]"
git add .
git commit -m "Add new HTML file" || echo "No changes to commit"
git push -f origin gh-pages