Fix uv conflict with pyenv on Sherlock #122
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
# Modified from GitHub Actions template | |
name: Workflow | |
on: | |
push: | |
branches: [master] | |
pull_request: | |
branches: [master] | |
jobs: | |
Reproducibility: | |
runs-on: macos-latest | |
steps: | |
- uses: actions/checkout@v2 | |
- name: Install uv | |
uses: astral-sh/setup-uv@v4 | |
with: | |
enable-cache: true | |
version: "0.5.7" | |
- name: Install model | |
run: USE_CYTHON=1 uv sync --frozen | |
- name: Test ParCa reproducibility | |
run: | | |
uv run --env-file .env runscripts/parca.py --config ecoli/composites/ecoli_configs/run_parca.json \ | |
-c 3 -o out/parca_1 | |
uv run --env-file .env runscripts/parca.py --config ecoli/composites/ecoli_configs/run_parca.json \ | |
-c 3 -o out/parca_2 | |
uv run --env-file .env runscripts/debug/compare_pickles.py out/parca_1/kb out/parca_2/kb | |
- name: Test simulation reproducibility | |
run: | | |
uv run --env-file .env ecoli/experiments/ecoli_master_sim.py \ | |
--generations 1 --emitter parquet --emitter_arg out_dir='out' \ | |
--experiment_id "parca_1" --daughter_outdir "out/parca_1" \ | |
--sim_data_path "out/parca_1/kb/simData.cPickle" --fail_at_total_time & | |
uv run --env-file .env ecoli/experiments/ecoli_master_sim.py \ | |
--generations 1 --emitter parquet --emitter_arg out_dir='out' \ | |
--experiment_id "parca_2" --daughter_outdir "out/parca_2" \ | |
--sim_data_path "out/parca_2/kb/simData.cPickle" --fail_at_total_time | |
uv run --env-file .env runscripts/debug/diff_simouts.py -o "out" "parca_1*" "parca_2*" | |
Two-gens: | |
runs-on: macos-latest | |
steps: | |
- uses: actions/checkout@v2 | |
- name: Install uv | |
uses: astral-sh/setup-uv@v4 | |
with: | |
enable-cache: true | |
version: "0.5.7" | |
- name: Install model | |
run: USE_CYTHON=1 uv sync --frozen | |
- name: Install nextflow edge | |
run: | | |
curl -s https://get.nextflow.io | bash | |
chmod +x nextflow | |
echo "PATH=.:$PATH" >> $GITHUB_ENV | |
NXF_EDGE=1 ./nextflow self-update | |
- name: Two generations | |
run: | | |
uv run --env-file .env runscripts/workflow.py --config ecoli/composites/ecoli_configs/two_generations.json |