Skip to content

[gpkde, memory, deallocate] solves minor memory leak, deallocating di… #13

[gpkde, memory, deallocate] solves minor memory leak, deallocating di…

[gpkde, memory, deallocate] solves minor memory leak, deallocating di… #13

Workflow file for this run

name: GPKDE continuous integration
on:
push:
branches:
- main
- develop
paths-ignore:
- '**.md'
- 'doc/**'
pull_request:
branches:
- main
- develop
paths-ignore:
- '**.md'
- 'doc/**'
jobs:
build:
name: Build (gfortran 12)
runs-on: ubuntu-latest
defaults:
run:
shell: bash -l {0}
env:
FC: gfortran
GCC_V: 12
steps:
- name: Checkout gpkde
uses: actions/checkout@v3
- name: Setup gfortran ${{ env.GCC_V }}
uses: awvwgk/setup-fortran@main
with:
compiler: gcc
version: ${{ env.GCC_V }}
- name: Micromamba
uses: mamba-org/provision-with-micromamba@main
with:
cache-downloads: true
cache-env: true
- name: Meson setup
run: meson setup builddir -Dwarning_level=0 -Ddebug=false -Dwerror=true
- name: Meson compile
run: meson compile -C builddir
- name: Meson test
run: meson test --verbose --no-rebuild -C builddir
smoke_test:
name: Smoke test (gfortran 12)
runs-on: ubuntu-latest
defaults:
run:
shell: bash -l {0}
env:
FC: gfortran
GCC_V: 12
steps:
- name: Checkout gpkde
uses: actions/checkout@v3
with:
path: gpkde
- name: Setup gfortran ${{ env.GCC_V }}
uses: awvwgk/setup-fortran@main
with:
compiler: gcc
version: ${{ env.GCC_V }}
- name: Micromamba
uses: mamba-org/provision-with-micromamba@main
with:
environment-file: gpkde/environment.yml
cache-downloads: true
cache-env: true
- name: Build gpkde
working-directory: gpkde
run: |
meson setup builddir -Dwarning_level=0 -Ddebug=false --prefix=$(pwd) --libdir=bin
meson install -C builddir
meson test --verbose --no-rebuild -C builddir
build_gfortran_previous:
name: Build gfortran (${{ matrix.GCC_V }}, ${{ matrix.os }})
needs:
- build
- smoke_test
runs-on: ${{ matrix.os }}
strategy:
fail-fast: false
matrix:
os: [ ubuntu-20.04 ]
GCC_V: [ 8, 9, 10, 11 ]
defaults:
run:
shell: bash -l {0}
env:
FC: gfortran
steps:
- name: Checkout gpkde
uses: actions/checkout@v3
with:
path: gpkde
- name: Setup GNU Fortran ${{ matrix.GCC_V }}
uses: awvwgk/setup-fortran@main
with:
compiler: gcc
version: ${{ matrix.GCC_V }}
- name: Micromamba
uses: mamba-org/provision-with-micromamba@main
with:
environment-file: gpkde/environment.yml
cache-downloads: true
cache-env: true
- name: Build gpkde
working-directory: gpkde
run: |
meson setup builddir -Dwarning_level=0 -Ddebug=false --prefix=$(pwd) --libdir=bin
meson install -C builddir
meson test --verbose --no-rebuild -C builddir
#build_ifort:
# name: Build IFORT multi-platform
# needs:
# - build
# - smoke_test
# runs-on: ${{ matrix.os }}
# strategy:
# fail-fast: false
# matrix:
# os: [ ubuntu-latest, macos-latest ]
# # Installing ifort in windows-latest takes ages
# defaults:
# run:
# shell: bash -l {0}
# steps:
# - name: Checkout gpkde
# uses: actions/checkout@v3
# with:
# path: gpkde
# - name: Setup Micromamba
# uses: mamba-org/provision-with-micromamba@main
# with:
# environment-file: gpkde/environment.yml
# cache-downloads: true
# cache-env: true
# - name: Setup Intel Fortran
# uses: modflowpy/install-intelfortran-action@v1
# - name: Fix Micromamba path (Windows)
# if: runner.os == 'Windows'
# shell: pwsh
# run: |
# # https://github.com/modflowpy/install-intelfortran-action#conda-scripts
# $mamba_bin = "C:\Users\runneradmin\micromamba-root\envs\gpkde\Scripts"
# echo $mamba_bin | Out-File -FilePath $env:GITHUB_PATH -Encoding utf8 -Append
# - name: Build gpkde
# if: runner.os != 'Windows'
# working-directory: gpkde
# run: |
# meson setup builddir -Dwarning_level=0 -Ddebug=false --prefix=$(pwd) --libdir=bin
# meson install -C builddir
# meson test --verbose --no-rebuild -C builddir
# - name: Build gpkde (Windows)
# if: runner.os == 'Windows'
# working-directory: gpkde
# shell: pwsh
# run: |
# meson setup builddir -Dwarning_level=0 -Ddebug=false --prefix=$(pwd) --libdir=bin
# meson install -C builddir
# meson test --verbose --no-rebuild -C builddir