summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--.github/workflows/build.yml26
-rwxr-xr-xbin/build-linux (renamed from bin/build-linux-dist)15
2 files changed, 24 insertions, 17 deletions
diff --git a/.github/workflows/build.yml b/.github/workflows/build.yml
index f664d594..06d44177 100644
--- a/.github/workflows/build.yml
+++ b/.github/workflows/build.yml
@@ -16,18 +16,12 @@ jobs:
- uses: actions/setup-python@v5
with:
python-version: '3.9.x'
- - uses: actions/cache@v4
- id: pip-cache
- with:
- path: ~/.cache/pip
- key: ${{ runner.os }}-20.04-pip-${{ hashFiles('**/requirements.txt') }}
- restore-keys: |
- ${{ runner.os }}-20.04-pip-
+ cache: 'pip'
- uses: actions/cache@v4
id: geos-build-cache
with:
path: geos/build
- key: ${{ runner.os }}-20.04-geos-build-${{ hashFiles('bin/build-linux') }}
+ key: ${{ runner.os }}-20.04-geos-build-${{ hashFiles('**/bin/build-linux') }}
restore-keys: |
${{ runner.os }}-20.04-geos-build-
@@ -75,7 +69,13 @@ jobs:
echo "${{ env.pythonLocation }}\bin" >> $GITHUB_PATH
- shell: bash
run: |
- bin/build-linux-dist
+ bin/build-linux
+ - shell: bash
+ run: |
+ pytest
+ - shell: bash
+ run: |
+ make dist
env:
BUILD: linux
INKSTITCH_GPG_KEY: ${{ secrets.INKSTITCH_GPG_KEY }}
@@ -93,11 +93,12 @@ jobs:
with:
python-version: '3.8.x'
architecture: 'x86'
+ cache: 'pip'
- uses: actions/cache@v4
id: geos-build-cache
with:
path: geos
- key: win32-geos-build-${{ hashFiles('bin/geos-win.cmd') }}
+ key: win32-geos-build-${{ hashFiles('**/bin/build-geos-win.cmd') }}
restore-keys: |
win32-geos-build-
- uses: microsoft/setup-msbuild@v2
@@ -166,11 +167,12 @@ jobs:
with:
python-version: '3.8.x'
architecture: 'x64'
+ cache: 'pip'
- uses: actions/cache@v4
id: geos-build-cache
with:
path: geos
- key: win64-geos-build-${{ hashFiles('bin/geos-win.cmd') }}
+ key: win64-geos-build-${{ hashFiles('**/bin/build-geos-win.cmd') }}
restore-keys: |
win64-geos-build-
- uses: microsoft/setup-msbuild@v2
@@ -232,6 +234,7 @@ jobs:
- uses: actions/setup-python@v5
with:
python-version: '3.9.x'
+ cache: 'pip'
- name: install dependencies
shell: bash
run: |
@@ -293,6 +296,7 @@ jobs:
- uses: actions/setup-python@v5
with:
python-version: '3.9.x'
+ cache: 'pip'
- name: install dependencies
shell: bash
run: |
diff --git a/bin/build-linux-dist b/bin/build-linux
index 5b591f71..c7014658 100755
--- a/bin/build-linux-dist
+++ b/bin/build-linux
@@ -17,13 +17,16 @@ export PATH=$GEOS_PATH/bin:$PATH
export GEOS_INCLUDE_PATH=$GEOS_PATH/include
export GEOS_LIBRARY_PATH=$GEOS_PATH/lib
export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:$GEOS_PATH/lib
+if [ ! -z "$CI" ]; then
+ # Write the geos path to GITHUB_PATH so successive steps can use
+ echo $GEOS_PATH/bin >> $GITHUB_PATH
+ # Set these variables in GITHUB_ENV so successive steps can use them.
+ echo "GEOS_INCLUDE_PATH=$GEOS_INCLUDE_PATH" >> $GITHUB_ENV
+ echo "GEOS_LIBRARY_PATH=$GEOS_LIBRARY_PATH" >> $GITHUB_ENV
+ echo "LD_LIBRARY_PATH=$LD_LIBRARY_PATH" >> $GITHUB_ENV
+fi
+
cd ../..
python -m pip uninstall -y shapely
python -m pip cache remove shapely
python -m pip install -v shapely --no-binary shapely
-# Future improvement might be to split this out so pytest is a separate step and line on the build log,
-# but the LD_LIBRARY_PATH env var needs to be passed between those steps with step outputs or something.
-# This works for now.
-pytest
-make dist
-