Bug Description
I'm following the operator quick start guide to run a local instance of the basemap server and am receiving an invalid URL error when running the bundle command in the basemaps/cli docker container.
Steps to Reproduce
Steps to reproduce the behaviour:
- Downloaded the Otago and Queenstown Lakes sample images from the bucket to my working folder, including the STAC collection files, and structured as suggested in the guide (
imagery/queenstown-lakes_2022-2023_0.1m/ & imagery/otago_2017-2019_0.3m/).
- Confirmed that running the server directly against tiff files works correctly.
- Created the
config/aerial.json file with the content:
{
"type": "raster",
"id": "ts_basic",
"title": "Basic Imagery Basemap",
"layers": [
{
"2193": "/home/parkerb1/linz_data_server/imagery/otago_2017-2019_0.3m/",
"name": "otago_2017-2019_0.3m",
"title": "Otago 0.3m Rural Aerial Photos (2017-2019)"
},
{
"2193": "/home/parkerb1/linz_data_server/imagery/queenstown-lakes_2022-2023_0.1m/",
"name": "queenstown-lakes_2022-2023_0.1m",
"title": "Queenstown Lakes 0.1m Urban Aerial Photos (2022-2023)",
"minZoom": 15
}
]
}
- Confirmed both paths specified in the config file are correct and contain the expected images:
parkerb1@RES01237:~/linz_data_server$ ls /home/parkerb1/linz_data_server/imagery/otago_2017-2019_0.3m/
CA12_5000_1007.tiff CA12_5000_1008.tiff CB12_5000_0107.tiff CB12_5000_0108.tiff collection.json
parkerb1@RES01237:~/linz_data_server$ ls /home/parkerb1/linz_data_server/imagery/queenstown-lakes_2022-2023_0.1m/
CB12_1000_0434.tiff CB12_1000_0436.tiff CB12_1000_0438.tiff CB12_1000_0535.tiff CB12_1000_0537.tiff collection.json
CB12_1000_0435.tiff CB12_1000_0437.tiff CB12_1000_0534.tiff CB12_1000_0536.tiff CB12_1000_0538.tiff
- Run the configuration bundle generation tool using docker:
docker run --rm -v $PWD:$PWD -it ghcr.io/linz/basemaps/cli:latest config bundle --config $PWD/config/ --output $PWD/
- Receive the following log messages:
[2026-05-29T04:53:06.494Z] INFO Cli:Start package={ package=@cli-config version=v8.20.1 hash=0ed5769fbfc070ca14c95a498a80eff05128203f buildId=26007034648-1 } cli=bundle args={ verbose=false extraVerbose=false config=/home/parkerb1/linz_data_server/config/ output=/home/parkerb1/linz_data_server/ } isArgo=false
[2026-05-29T04:53:06.495Z] INFO BundleConfig:Start configUrl=file:///home/parkerb1/linz_data_server/config/
[2026-05-29T04:53:06.497Z] DEBUG Config:Load path=file:///home/parkerb1/linz_data_server/config/aerial.json type=ts config=ts_basic
[2026-05-29T04:53:06.498Z] INFO Config:Loaded:TileSet config=ts_basic
[2026-05-29T04:53:06.501Z] DEBUG fetch source=file:///home/parkerb1/linz_data_server/imagery/otago_2017-2019_0.3m/CA12_5000_1007.tiff offset=0 length=131072 requestId=FARa9Duz8J8CWKvSZ2TaQ2tRBFWYSR3rxuDJ44d89jLk duration=0.8246269999999924
[2026-05-29T04:53:06.502Z] DEBUG fetch source=file:///home/parkerb1/linz_data_server/imagery/otago_2017-2019_0.3m/CA12_5000_1008.tiff offset=0 length=131072 requestId=9bJdEAHqdjCz3UFmhciX8C2ynnCKWuVLVE1re3SxrbUx duration=1.5599699999999928
[2026-05-29T04:53:06.502Z] DEBUG fetch source=file:///home/parkerb1/linz_data_server/imagery/otago_2017-2019_0.3m/CB12_5000_0107.tiff offset=0 length=131072 requestId=9f462kpj1nEZb7duE3ukECGgbhGvqNvzSmz9ozGUBTU7 duration=1.910143000000005
[2026-05-29T04:53:06.502Z] DEBUG fetch source=file:///home/parkerb1/linz_data_server/imagery/otago_2017-2019_0.3m/CB12_5000_0108.tiff offset=0 length=131072 requestId=425oyhDZGr1kCwF37rejuSDZoijWf9rxgu9ZmkHwp2QJ duration=2.0743229999999926
[2026-05-29T04:53:06.507Z] INFO Tiff:Loaded title=Otago 0.3m Rural Aerial Photos (2017-2019) imageryName=otago_2017-2019_0.3m files=4
[2026-05-29T04:53:06.507Z] DEBUG fetch source=file:///home/parkerb1/linz_data_server/imagery/queenstown-lakes_2022-2023_0.1m/CB12_1000_0434.tiff offset=0 length=131072 requestId=DHkBUs2NUsoP6hCsb7oV4Tw6XVGEJsvSRUxvs2pMnW1p duration=3.9235109999999906
[2026-05-29T04:53:06.508Z] DEBUG fetch source=file:///home/parkerb1/linz_data_server/imagery/queenstown-lakes_2022-2023_0.1m/CB12_1000_0436.tiff offset=0 length=131072 requestId=5NUeysvw4QnPvyFcYxveXfzv1Mrk5cS5dqXijgDBucii duration=4.308187000000004
[2026-05-29T04:53:06.508Z] DEBUG fetch source=file:///home/parkerb1/linz_data_server/imagery/queenstown-lakes_2022-2023_0.1m/CB12_1000_0437.tiff offset=0 length=131072 requestId=Ct48WtszTYUShK9cB9WCcirGvkp1DZeB6WBkJRKTWf9b duration=4.526060000000001
[2026-05-29T04:53:06.508Z] DEBUG fetch source=file:///home/parkerb1/linz_data_server/imagery/queenstown-lakes_2022-2023_0.1m/CB12_1000_0438.tiff offset=0 length=131072 requestId=6XwLy56Lcrwvjxzk9Do7xZz7Hk9cJzy7tCB924F6S2cF duration=4.737265000000008
[2026-05-29T04:53:06.508Z] DEBUG fetch source=file:///home/parkerb1/linz_data_server/imagery/queenstown-lakes_2022-2023_0.1m/CB12_1000_0534.tiff offset=0 length=131072 requestId=263WmSUzFJ8Ltf1Jz4qoYkfVSWWuFANjxNyYHL14i27q duration=4.976452999999992
[2026-05-29T04:53:06.509Z] DEBUG fetch source=file:///home/parkerb1/linz_data_server/imagery/queenstown-lakes_2022-2023_0.1m/CB12_1000_0536.tiff offset=0 length=131072 requestId=5K8ULKn34Rr1SGAExyNYHTxfVS2bBX4864JXTM7apEpR duration=5.257999000000012
[2026-05-29T04:53:06.509Z] DEBUG fetch source=file:///home/parkerb1/linz_data_server/imagery/queenstown-lakes_2022-2023_0.1m/CB12_1000_0537.tiff offset=0 length=131072 requestId=4LNcW9BvDYexfaxNZ6DBpzyonYPHchvXV8ed1YLoDWYQ duration=5.596591999999987
[2026-05-29T04:53:06.509Z] DEBUG fetch source=file:///home/parkerb1/linz_data_server/imagery/queenstown-lakes_2022-2023_0.1m/CB12_1000_0535.tiff offset=0 length=131072 requestId=6CKFXFm4d4dmXrocJscz2XPraAjRptUDqs2LQgJBTd8W duration=6.004876000000024
[2026-05-29T04:53:06.510Z] DEBUG fetch source=file:///home/parkerb1/linz_data_server/imagery/queenstown-lakes_2022-2023_0.1m/CB12_1000_0538.tiff offset=0 length=131072 requestId=G2VBJMNPxqv4m79SsqL2AWdv7eRtd3WuaST62tY1QUbV duration=6.384309000000002
[2026-05-29T04:53:06.510Z] DEBUG fetch source=file:///home/parkerb1/linz_data_server/imagery/queenstown-lakes_2022-2023_0.1m/CB12_1000_0435.tiff offset=0 length=131072 requestId=3ZBjBtkZEpn8zweJ27mQK6K3xZABnpEUxbaKwMt7Nq1i duration=7.167710999999997
[2026-05-29T04:53:06.512Z] INFO Tiff:Loaded title=Queenstown Lakes 0.1m Urban Aerial Photos (2022-2023) imageryName=queenstown-lakes_2022-2023_0.1m files=10
[2026-05-29T04:53:06.513Z] FATAL Command:Failed err={ type=TypeError message=Invalid URL stack=TypeError: Invalid URL
at new URL (node:internal/url:819:25)
at matchUri (/app/index.cjs:144870:16)
at /app/index.cjs:145044:43
at Array.find (<anonymous>)
at updateLayerUri (/app/index.cjs:145044:30)
at _ConfigJson.tileSet (/app/index.cjs:145064:25)
at async /app/index.cjs:144977:25
at async Promise.all (index 0)
at async _ConfigJson.fromUrl (/app/index.cjs:144990:5)
at async Object.handler (/app/index.cjs:145200:17)
at async Object.run (/app/index.cjs:2922:28)
at async Object.run (/app/index.cjs:2634:30)
at async Object.run (/app/index.cjs:75583:30)
at async runSafely (/app/index.cjs:76367:24)
at async run2 (/app/index.cjs:76355:22) code=ERR_INVALID_URL input=/home/parkerb1/linz_data_server/imagery/otago_2017-2019_0.3m/ }
Desktop
- Environment: Ubuntu 24.04.1 on WSL 2.7.3.0
- Docker version 29.0.4, build 3247a5a
Bug Description
I'm following the operator quick start guide to run a local instance of the basemap server and am receiving an invalid URL error when running the bundle command in the basemaps/cli docker container.
Steps to Reproduce
Steps to reproduce the behaviour:
imagery/queenstown-lakes_2022-2023_0.1m/&imagery/otago_2017-2019_0.3m/).config/aerial.jsonfile with the content:{ "type": "raster", "id": "ts_basic", "title": "Basic Imagery Basemap", "layers": [ { "2193": "/home/parkerb1/linz_data_server/imagery/otago_2017-2019_0.3m/", "name": "otago_2017-2019_0.3m", "title": "Otago 0.3m Rural Aerial Photos (2017-2019)" }, { "2193": "/home/parkerb1/linz_data_server/imagery/queenstown-lakes_2022-2023_0.1m/", "name": "queenstown-lakes_2022-2023_0.1m", "title": "Queenstown Lakes 0.1m Urban Aerial Photos (2022-2023)", "minZoom": 15 } ] }Desktop