Skip to content

Check that sphdistance -Q is given a file (#7619) #2093

Check that sphdistance -Q is given a file (#7619)

Check that sphdistance -Q is given a file (#7619) #2093

Workflow file for this run

#
# Build GMT on different Linux distros, using dockers
#
name: Docker
on:
# pull_request:
push:
branches:
- master
- 6.[0-9]+
defaults:
run:
# default to use bash shell
shell: bash
jobs:
docker:
name: ${{ matrix.image }}
runs-on: ubuntu-latest
container:
image: ${{ matrix.image }}
env:
# directories
COASTLINEDIR: ${{ github.workspace }}/coastline
INSTALLDIR: ${{ github.workspace }}/gmt-install-dir
# disable auto-display of GMT plots
GMT_END_SHOW: off
# Compile only
BUILD_DOCS : false
PACKAGE : false
RUN_TESTS : false
strategy:
fail-fast: false
matrix:
image:
- ubuntu:14.04 # CMake 2.8.12 + GNU 4.8.4; EOL: 2024-04-25
- ubuntu:16.04 # CMake 3.5.1 + GNU 5.4.0; EOL: 2026-04-23
- ubuntu:18.04 # CMake 3.10.2 + GNU 7.4.0; EOL: 2028-04-26
- ubuntu:20.04 # CMake 3.16.3 + GNU 9.3.0; EOL: 2030-04-23
- ubuntu:22.04 # CMake 3.22.1 + GNU 11.2.0; EOL: 2032-04-21
- ubuntu:23.04 # CMake 3.24.1 + GNU 12.2.0; EOL: 2024-01-20
- debian:10 # CMake 3.13.4 + GNU 8.3.0; EOL: 2024-06-01
- debian:11 # CMake 3.18.4 + GNU 10.2.1; EOL: 2026-06-01
- debian:12 # CMake 3.25.1 + GNU 12.2.0; EOL: 2028-06-01
- debian:sid # rolling release with latest versions
steps:
- name: Cancel Previous Runs
uses: styfle/cancel-workflow-action@0.11.0
- name: Checkout
uses: actions/checkout@v3.5.3
- name: Install GMT dependencies
run: |
apt-get update
# tzdata is required for Ubuntu>=20.04
DEBIAN_FRONTEND="noninteractive" TZ="America/New_York" apt-get install -y tzdata
apt-get install -y --no-install-recommends --no-install-suggests \
build-essential cmake ninja-build libcurl4-gnutls-dev libnetcdf-dev \
ghostscript curl git \
libgdal-dev libfftw3-dev libpcre3-dev liblapack-dev libglib2.0-dev
- name: Cache GSHHG and DCW data
uses: actions/cache@v3
id: cache-coastline
with:
path: ${{ env.COASTLINEDIR }}
key: coastline-${{ hashFiles('ci/download-coastlines.sh') }}
- name: Download coastlines
run: bash ci/download-coastlines.sh
if: steps.cache-coastline.outputs.cache-hit != 'true'
- name: Configure GMT
run: bash ci/config-gmt-unix.sh
- name: Compile GMT
run: |
mkdir build
cd build
cmake -G Ninja ..
cmake --build .
- name: Download cached GMT remote data from GitHub Artifacts
uses: dawidd6/action-download-artifact@v2.27.0
with:
workflow: ci-caches.yml
name: gmt-cache
path: .gmt
# Move downloaded files to ~/.gmt directory and list them
- name: Move and list downloaded remote files
run: |
mkdir -p ~/.gmt
mv .gmt/* ~/.gmt
ls -lRh ~/.gmt
- name: Install GMT
run: |
cd build
cmake --build . --target install
# Add GMT PATH to bin
echo "${INSTALLDIR}/bin" >> $GITHUB_PATH
- name: Check a few simple commands
run: bash ci/simple-gmt-tests.sh