@@ -6,21 +6,15 @@ inputs:
66 python-version :
77 description : Python version
88 required : true
9- build-mode :
10- required : false
11- default : conan
129 conan-args :
1310 required : false
1411 default : " "
15- extra-apt :
16- required : false
17- default : " "
1812 is-canary :
1913 description : If a canary build is being performed.
2014 required : false
2115 default : false
22- install-doc-reqs :
23- description : If documentation requirements should be installed.
16+ skip-build :
17+ description : Used to do all build related setup, while skipping the actual build
2418 required : false
2519 default : false
2620
4135 shell : bash
4236 run : |
4337 sudo apt-get update
44- sudo apt-get install -y build-essential python3-setuptools python3-tk ${{ inputs.extra-apt }}
38+ sudo apt-get install -y build-essential python3-setuptools python3-tk libgtk2.0
4539
4640 - name : SWIG Install (Linux)
4741 if : runner.os == 'Linux'
7872 $newPath = “C:\Program Files\SWIG\swigwin-4.2.1;$oldpath;${{ env.GITHUB_WORKSPACE }}\dist3\Basilisk”
7973 echo "PATH=$newPath" | Out-File -FilePath $env:GITHUB_ENV -Encoding utf8 -Append
8074
81- - name : Update Python tooling to latest
82- shell : bash
83- run : pip install -U pip wheel setuptools
84-
8575 - name : Install requirements
8676 shell : bash
8777 run : |
9181 pip install -r requirements.txt -r requirements_dev.txt
9282 fi
9383
94- - name : Install documentation requirements
95- if : ${{ inputs.install-doc-reqs == 'true' }}
96- shell : bash
97- run : |
98- if [[ "${{ inputs.is-canary }}" == 'true' ]]; then
99- pip install -r .github/workflows/requirements_doc.txt
100- else
101- pip install -r requirements_doc.txt
102- fi
103-
10484 - name : Cache Conan
105- if : ${{ inputs.build-mode == 'conan' }}
10685 uses : actions/cache@v4
10786 with :
10887 path : ${{ env.HOME }}/.conan2
@@ -113,29 +92,21 @@ runs:
11392 conan-${{ runner.os }}-py${{ inputs.python-version }}-
11493
11594 - name : Configure Conan profile
116- if : ${{ inputs.build-mode == 'conan' }}
11795 shell : bash
11896 run : |
11997 python -m conans.conan profile detect --exist-ok
12098 prof_path="$(python -m conans.conan profile path default)"
121-
12299 grep -q '^\[conf\]' "$prof_path" || printf "\n[conf]\n" >> "$prof_path"
123100 grep -q '^tools.system.package_manager:mode=install$' "$prof_path" || \
124- printf "tools.system.package_manager:mode=install\n" >> "$prof_path"
101+ printf "tools.system.package_manager:mode=install\n" >> "$prof_path"
125102 grep -q '^tools.system.package_manager:sudo=True$' "$prof_path" || \
126103 printf "tools.system.package_manager:sudo=True\n" >> "$prof_path"
127104
128- - name : Build Basilisk (Conanfile)
129- if : ${{ inputs.build-mode == 'conan' }}
105+ - name : Build Basilisk
130106 shell : bash
107+ if : ${{ inputs.skip-build == 'false' }}
131108 env :
132- CONAN_NON_INTERACTIVE : " 1"
133- run : |
134- python conanfile.py ${{ inputs.conan-args }}
135-
136- - name : Build Basilisk (Pip)
137- if : ${{ inputs.build-mode == 'pip' }}
138- shell : bash
109+ CONAN_ARGS : ${{ inputs.conan-args }}
139110 run : |
140- pip install . -v
111+ pip install --no-build-isolation -e . -v
141112 bskLargeData
0 commit comments