New split volume program #1076
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
# Name of the GitHub Action | |
name: Build scipion-em-xmipp on Pull Request | |
# Specify when the Action should be triggered: when a pull request is opened against the 'devel' or 'master' branch | |
on: | |
pull_request: | |
branches: [devel, master] | |
# Define the job that should be run | |
jobs: | |
build: | |
# Specify the machine to run the job on | |
runs-on: ubuntu-22.04 | |
#Avoid send statistics | |
env: | |
SEND_INSTALLATION_STATISTICS: "False" | |
# Define the steps to be taken in the job | |
steps: | |
# Check out the repository in the pull request | |
- name: Checkout repository | |
uses: actions/checkout@v4 | |
with: | |
ref: ${{ github.head_ref }} | |
# Installing CUDA | |
- name: Install CUDA | |
uses: Jimver/[email protected] | |
id: cuda-toolkit | |
with: | |
cuda: '11.8.0' | |
method: network | |
sub-packages: '["nvcc", "toolkit"]' | |
# Installing Miniconda | |
- name: Install Miniconda | |
working-directory: ${{ github.workspace }}/../ | |
run: | | |
wget https://repo.anaconda.com/miniconda/Miniconda3-latest-Linux-x86_64.sh | |
bash Miniconda3-latest-Linux-x86_64.sh -b -p ${{ github.workspace }}/../miniconda/ | |
source ./miniconda/etc/profile.d/conda.sh | |
conda update -n base -c defaults conda -y | |
# Installing Scipion | |
- name: Install Scipion | |
working-directory: ${{ github.workspace }}/../ | |
run: | | |
eval "$(${{ github.workspace }}/../miniconda/bin/conda shell.bash hook)" | |
pip3 install --user scipion-installer | |
python3 -m scipioninstaller -conda -noXmipp -noAsk scipion | |
# Install the plugin | |
- name: Install plugin from pull request | |
working-directory: ${{ github.workspace }} | |
run: ../scipion/scipion3 installp -p . --devel --noBin | |
# Install xmipp's dependencies package | |
- name: Install dependencies package | |
working-directory: ${{ github.workspace }} | |
run: ../scipion/scipion3 installb xmippDep | |
# Cloning Xmipp | |
- name: Cloning Xmipp | |
working-directory: ${{ github.workspace }}/../ | |
run: git clone https://github.com/I2PC/xmipp.git | |
# Checkout Xmipp to Pull Request branch if exists, by default stays in devel | |
- name: Conditionally checkout Xmipp to ${{ github.head_ref }} | |
working-directory: ${{ github.workspace }}/../xmipp | |
env: | |
BRANCH_NAME: ${{ github.head_ref }} | |
run: | | |
if [ $(git ls-remote --heads https://github.com/I2PC/xmipp.git $BRANCH_NAME | wc -l) -eq 1 ]; then | |
git checkout $BRANCH_NAME | |
fi | |
# Installing Xmipp | |
- name: Compile Xmipp and show log | |
working-directory: ${{ github.workspace }}/../xmipp | |
env: | |
BUILD_TESTS: True | |
BRANCH_NAME: ${{ github.head_ref }} | |
run: ../scipion/scipion3 run ./xmipp -b $BRANCH_NAME --keep-output || (cat compilation.log && false) |