1414jobs :
1515 foundation :
1616
17- strategy :
18- matrix :
19- python-version : ["3.10"]
2017 defaults :
2118 run :
2219 shell : bash -l {0}
23- name : linux-64-py${{ matrix.python-version }}
20+ name : linux-64
2421 runs-on : ubuntu-latest
2522 steps :
2623 # checkout the code in this repository
2724 - uses : actions/checkout@v4
25+
26+ - name : Install uv
27+ uses : astral-sh/setup-uv@v5
28+ with :
29+ version : " 0.8.8"
30+ enable-cache : true
31+ cache-dependency-glob : " uv.lock"
32+
33+ - name : " Set up Python"
34+ uses : actions/setup-python@v5
2835 with :
29- path : ' activitysim-sandag-abm3'
36+ python-version-file : " .python-version"
37+
38+ - name : Install everything
39+ run : |
40+ uv sync --locked
3041
3142 # checkout the main branch of ActivitySim itself
3243 - uses : actions/checkout@v4
3344 with :
3445 repository : ' ActivitySim/activitysim'
3546 ref : main
36- path : ' activitysim'
47+ path : ' cloned/ activitysim'
3748 fetch-depth : 0 # get all tags, lets setuptools_scm do its thing
3849
39- - name : Setup Miniforge
40- uses : conda-incubator/setup-miniconda@v3
41- with :
42- auto-update-conda : true
43- miniforge-version : latest
44- mamba-version : " 2.0.5"
45- conda-solver : classic
46- conda-remove-defaults : true
47- activate-environment : asim-test
48- python-version : ${{ matrix.python-version }}
49-
50- - name : Set cache date for year and month
51- run : echo "DATE=$(date +'%Y%m')" >> $GITHUB_ENV
52-
53- - uses : actions/cache@v4
54- with :
55- path : miniconda3/envs/asim-test
56- key : linux-64-conda-${{ hashFiles('activitysim/conda-environments/github-actions-tests.yml') }}-${{ env.DATE }}-${{ env.CACHE_NUMBER }}
57- id : cache
58-
59- - name : Update environment
50+ # install ActivitySim, overriding the one in the workspace,
51+ # as the pre-installed one is the latest release but not the most up-to-date
52+ - name : Install ActivitySim
6053 run : |
61- conda env update -n asim-test -f activitysim/conda-environments/github-actions-tests.yml
62- if : steps.cache.outputs.cache-hit != 'true'
54+ uv pip install --no-deps ./cloned/activitysim
6355
64- - name : Install activitysim
65- # installing without dependencies is faster, we trust that all needed dependencies
66- # are in the conda environment defined above. Also, this avoids pip getting
67- # confused and reinstalling tables (pytables).
68- run : |
69- python -m pip install ./activitysim --no-deps
70- - name : Conda checkup
71- run : |
72- conda info -a
73- conda list
7456 - name : Test this implementation
7557 run : |
76- cd activitysim-sandag-abm3 /test
77- python -m pytest test_sandag_abm3.py::test_sandag_abm3_progressive
58+ uv run pytest . /test
59+
0 commit comments