From c213672a2e13a3e971cb0f6857bf23ed0e032a50 Mon Sep 17 00:00:00 2001 From: Peter Johnson Date: Wed, 25 Sep 2024 17:36:32 +0200 Subject: [PATCH] feat(ogr): configurable docker image --- README.md | 6 ++++++ bin/cmd/feature/ogr.js | 7 ++++++- 2 files changed, 12 insertions(+), 1 deletion(-) diff --git a/README.md b/README.md index db60bec..b6a941e 100644 --- a/README.md +++ b/README.md @@ -228,6 +228,12 @@ cat jsonstream | wof feature ogr example.gpkg --format='GPKG' cat jsonstream | wof feature ogr example.parquet --format='Parquet' ``` +use a dockerized version of `ogr2ogr` (to avoid installing locally): + +```bash +wof feature ogr --docker +``` + see: https://gdal.org/programs/ogr2ogr.html #### Feature Properties diff --git a/bin/cmd/feature/ogr.js b/bin/cmd/feature/ogr.js index d91a5c5..fd1e2cf 100644 --- a/bin/cmd/feature/ogr.js +++ b/bin/cmd/feature/ogr.js @@ -30,6 +30,11 @@ module.exports = { default: false, describe: 'use a docker image for ogr2ogr' }) + yargs.option('image', { + type: 'string', + default: 'ghcr.io/osgeo/gdal:alpine-normal-latest', + describe: 'docker image to use' + }) }, handler: (argv) => { const tap = new Stream.PassThrough() @@ -74,7 +79,7 @@ function docker (argv) { return stream.shell.duplex('docker', [ 'run', '-i', '--rm', '-v', `${path.dirname(path.resolve(process.cwd(), argv.dst))}:/work`, - 'ghcr.io/osgeo/gdal:alpine-normal-latest', + argv.image, 'ogr2ogr', ...flags(argv), `/work/${path.basename(argv.dst)}`,