Migrate CI from Drone to Gitea Actions
- add .gitea/workflows/convert.yaml: download BeST addresses, convert them to csv with GDAL and publish the gzipped files to the v1.1.1 release, replacing the existing assets - run weekly (monday 03:00 UTC) and on manual dispatch, on cth-ubuntu-latest - remove the Drone configuration - document the weekly build in the README Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01XqsmB8BBnudp4djsjWpk11
This commit is contained in:
1 parent
54f0d0a6a2
commit
6c1076abc8
3 files changed
+56
-47
No files matched your search
-47
@@ -1,47 +0,0 @@
|
|||||||
---
|
|
||||||
kind: pipeline
|
|
||||||
type: docker
|
|
||||||
name: v1
|
|
||||||
|
|
||||||
steps:
|
|
||||||
- name: download
|
|
||||||
image: plugins/download
|
|
||||||
settings:
|
|
||||||
source: https://ac.ngi.be/remoteclient-open/GeoBePartners-open/BOSA/ca0fd5c0-8146-11e9-9012-482ae30f98d9_geopackage+sqlite3_3812.zip
|
|
||||||
destination: bestaddresses.zip
|
|
||||||
|
|
||||||
- name: convert
|
|
||||||
image: osgeo/gdal:alpine-normal-3.6.3
|
|
||||||
environment:
|
|
||||||
SELECT: SELECT shape AS geom, id, best_id, coalesce(streetname_fr, streetname_nl, streetname_de) AS streetname, postal_info_objectid, municipality_objectid, COALESCE(municipality_fr, municipality_nl, municipality_de) AS municipality, housenumber, boxnumber
|
|
||||||
commands:
|
|
||||||
- unzip -o bestaddresses.zip
|
|
||||||
- ogrinfo ca0fd5c0-8146-11e9-9012-482ae30f98d9_geopackage+sqlite3_3812.gpkg -sql "CREATE INDEX idx_postal_code ON addresses_complete (postal_info_objectid) WHERE status NOT LIKE 'retired'"
|
|
||||||
- ogr2ogr -sql "select St_Centroid(St_Envelope(St_Collect(shape))) AS center, COALESCE(municipality_fr, municipality_nl, municipality_de) AS municipality_name, postal_info_objectid, municipality_objectid FROM addresses_complete where fid % 10 = 1 AND status NOT LIKE 'retired' GROUP BY COALESCE(municipality_fr, municipality_nl, municipality_de), postal_info_objectid, municipality_objectid" -lco GEOMETRY=AS_XY postals.fr.csv ca0fd5c0-8146-11e9-9012-482ae30f98d9_geopackage+sqlite3_3812.gpkg
|
|
||||||
- ogr2ogr -sql "$${SELECT} FROM addresses_complete WHERE status NOT LIKE 'retired' LIMIT 10000" -lco GEOMETRY=AS_XY addresses-extract.fr.csv ca0fd5c0-8146-11e9-9012-482ae30f98d9_geopackage+sqlite3_3812.gpkg
|
|
||||||
- ogr2ogr -sql "$${SELECT} FROM addresses_complete WHERE status NOT LIKE 'retired'" -lco GEOMETRY=AS_XY addresses-full.fr.csv ca0fd5c0-8146-11e9-9012-482ae30f98d9_geopackage+sqlite3_3812.gpkg
|
|
||||||
- ogr2ogr -sql "$${SELECT} FROM addresses_complete WHERE postal_info_objectid LIKE '1%' AND status NOT LIKE 'retired'" -lco GEOMETRY=AS_XY addresses-1xxx.fr.csv ca0fd5c0-8146-11e9-9012-482ae30f98d9_geopackage+sqlite3_3812.gpkg
|
|
||||||
- ogr2ogr -sql "$${SELECT} FROM addresses_complete WHERE postal_info_objectid LIKE '2%' AND status NOT LIKE 'retired'" -lco GEOMETRY=AS_XY addresses-2xxx.fr.csv ca0fd5c0-8146-11e9-9012-482ae30f98d9_geopackage+sqlite3_3812.gpkg
|
|
||||||
- ogr2ogr -sql "$${SELECT} FROM addresses_complete WHERE postal_info_objectid LIKE '3%' AND status NOT LIKE 'retired'" -lco GEOMETRY=AS_XY addresses-3xxx.fr.csv ca0fd5c0-8146-11e9-9012-482ae30f98d9_geopackage+sqlite3_3812.gpkg
|
|
||||||
- ogr2ogr -sql "$${SELECT} FROM addresses_complete WHERE postal_info_objectid LIKE '4%' AND status NOT LIKE 'retired'" -lco GEOMETRY=AS_XY addresses-4xxx.fr.csv ca0fd5c0-8146-11e9-9012-482ae30f98d9_geopackage+sqlite3_3812.gpkg
|
|
||||||
- ogr2ogr -sql "$${SELECT} FROM addresses_complete WHERE postal_info_objectid LIKE '5%' AND status NOT LIKE 'retired'" -lco GEOMETRY=AS_XY addresses-5xxx.fr.csv ca0fd5c0-8146-11e9-9012-482ae30f98d9_geopackage+sqlite3_3812.gpkg
|
|
||||||
- ogr2ogr -sql "$${SELECT} FROM addresses_complete WHERE postal_info_objectid LIKE '6%' AND status NOT LIKE 'retired'" -lco GEOMETRY=AS_XY addresses-6xxx.fr.csv ca0fd5c0-8146-11e9-9012-482ae30f98d9_geopackage+sqlite3_3812.gpkg
|
|
||||||
- ogr2ogr -sql "$${SELECT} FROM addresses_complete WHERE postal_info_objectid LIKE '7%' AND status NOT LIKE 'retired'" -lco GEOMETRY=AS_XY addresses-7xxx.fr.csv ca0fd5c0-8146-11e9-9012-482ae30f98d9_geopackage+sqlite3_3812.gpkg
|
|
||||||
- ogr2ogr -sql "$${SELECT} FROM addresses_complete WHERE postal_info_objectid LIKE '8%' AND status NOT LIKE 'retired'" -lco GEOMETRY=AS_XY addresses-8xxx.fr.csv ca0fd5c0-8146-11e9-9012-482ae30f98d9_geopackage+sqlite3_3812.gpkg
|
|
||||||
- ogr2ogr -sql "$${SELECT} FROM addresses_complete WHERE postal_info_objectid LIKE '9%' AND status NOT LIKE 'retired'" -lco GEOMETRY=AS_XY addresses-9xxx.fr.csv ca0fd5c0-8146-11e9-9012-482ae30f98d9_geopackage+sqlite3_3812.gpkg
|
|
||||||
- gzip -9 *.csv
|
|
||||||
|
|
||||||
- name: gitea_release
|
|
||||||
image: plugins/gitea-release
|
|
||||||
settings:
|
|
||||||
api_key:
|
|
||||||
from_secret: gitea_key
|
|
||||||
title: "v1.0.0"
|
|
||||||
files:
|
|
||||||
- "*.fr.csv.gz"
|
|
||||||
base_url: https://gitea.champs-libres.be
|
|
||||||
trigger:
|
|
||||||
event:
|
|
||||||
include:
|
|
||||||
- tag
|
|
||||||
|
|
||||||
@@ -0,0 +1,55 @@
|
|||||||
|
name: Convert BeST addresses
|
||||||
|
run-name: Convert BeST addresses to csv (${{ gitea.ref_name }})
|
||||||
|
|
||||||
|
on:
|
||||||
|
schedule:
|
||||||
|
# every monday at 03:00 UTC
|
||||||
|
- cron: '0 3 * * 1'
|
||||||
|
workflow_dispatch:
|
||||||
|
|
||||||
|
permissions:
|
||||||
|
contents: write
|
||||||
|
|
||||||
|
env:
|
||||||
|
GPKG: ca0fd5c0-8146-11e9-9012-482ae30f98d9_geopackage+sqlite3_3812.gpkg
|
||||||
|
SOURCE_URL: https://ac.ngi.be/remoteclient-open/GeoBePartners-open/BOSA/ca0fd5c0-8146-11e9-9012-482ae30f98d9_geopackage+sqlite3_3812.zip
|
||||||
|
SELECT: SELECT shape AS geom, id, best_id, coalesce(streetname_fr, streetname_nl, streetname_de) AS streetname, postal_info_objectid, municipality_objectid, COALESCE(municipality_fr, municipality_nl, municipality_de) AS municipality, housenumber, boxnumber
|
||||||
|
|
||||||
|
jobs:
|
||||||
|
convert:
|
||||||
|
runs-on: cth-ubuntu-latest
|
||||||
|
steps:
|
||||||
|
- name: install dependencies
|
||||||
|
run: |
|
||||||
|
apt-get update
|
||||||
|
DEBIAN_FRONTEND=noninteractive apt-get install -y --no-install-recommends gdal-bin unzip curl ca-certificates
|
||||||
|
ogr2ogr --version
|
||||||
|
|
||||||
|
- name: download
|
||||||
|
run: curl --fail --location --silent --show-error --output bestaddresses.zip "$SOURCE_URL"
|
||||||
|
|
||||||
|
- name: convert
|
||||||
|
run: |
|
||||||
|
set -eu
|
||||||
|
unzip -o bestaddresses.zip
|
||||||
|
rm bestaddresses.zip
|
||||||
|
ogrinfo "$GPKG" -sql "CREATE INDEX idx_postal_code ON addresses_complete (postal_info_objectid) WHERE status NOT LIKE 'retired'"
|
||||||
|
ogr2ogr -sql "select St_Centroid(St_Envelope(St_Collect(shape))) AS center, COALESCE(municipality_fr, municipality_nl, municipality_de) AS municipality_name, postal_info_objectid, municipality_objectid FROM addresses_complete where fid % 10 = 1 AND status NOT LIKE 'retired' GROUP BY COALESCE(municipality_fr, municipality_nl, municipality_de), postal_info_objectid, municipality_objectid" -lco GEOMETRY=AS_XY postals.fr.csv "$GPKG"
|
||||||
|
ogr2ogr -sql "$SELECT FROM addresses_complete WHERE status NOT LIKE 'retired' LIMIT 10000" -lco GEOMETRY=AS_XY addresses-extract.fr.csv "$GPKG"
|
||||||
|
ogr2ogr -sql "$SELECT FROM addresses_complete WHERE status NOT LIKE 'retired'" -lco GEOMETRY=AS_XY addresses-full.fr.csv "$GPKG"
|
||||||
|
for i in 1 2 3 4 5 6 7 8 9; do
|
||||||
|
ogr2ogr -sql "$SELECT FROM addresses_complete WHERE postal_info_objectid LIKE '${i}%' AND status NOT LIKE 'retired'" -lco GEOMETRY=AS_XY "addresses-${i}xxx.fr.csv" "$GPKG"
|
||||||
|
done
|
||||||
|
rm "$GPKG"
|
||||||
|
gzip -9 *.csv
|
||||||
|
ls -lh *.fr.csv.gz
|
||||||
|
|
||||||
|
- name: gitea release
|
||||||
|
uses: https://github.com/akkuman/gitea-release-action@v1
|
||||||
|
with:
|
||||||
|
server_url: https://gitea.champs-libres.be
|
||||||
|
token: ${{ secrets.GITEA_TOKEN }}
|
||||||
|
name: v1.1.1
|
||||||
|
tag_name: v1.1.1
|
||||||
|
files: |-
|
||||||
|
*.fr.csv.gz
|
||||||
@@ -2,6 +2,7 @@
|
|||||||
|
|
||||||
Ce dépôt convertit les données d'adresses mises à disposition dans le cadre de [Best Address](https://www.geo.be/catalog/details/ca0fd5c0-8146-11e9-9012-482ae30f98d9?l=fr) en un format csv, utilisable par le logiciel Chill.
|
Ce dépôt convertit les données d'adresses mises à disposition dans le cadre de [Best Address](https://www.geo.be/catalog/details/ca0fd5c0-8146-11e9-9012-482ae30f98d9?l=fr) en un format csv, utilisable par le logiciel Chill.
|
||||||
|
|
||||||
|
Ce dépôt compile chaque semaine les adresses (le lundi), et remplace les fichiers de la release [v1.1.1](https://gitea.champs-libres.be/Chill-project/belgian-bestaddresses-transform/releases/tag/v1.1.1).
|
||||||
|
|
||||||
## Liste des codes postaux
|
## Liste des codes postaux
|
||||||
|
|
||||||
|
|||||||
Reference in new issue
Block a user