Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
11 changes: 6 additions & 5 deletions .github/workflows/build-manifests.yml
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
name: Fetch releases from S3
name: Build and publish releases artifacts

on:
push:
Expand Down Expand Up @@ -33,26 +33,27 @@ jobs:
with:
persist-credentials: false

- name: Set up Python 3.11
- name: Set up Python 3.12
uses: actions/setup-python@a309ff8b426b58ec0e2a45f0f869d46889d02405 # v6.2.0
with:
python-version: "3.11"
python-version: "3.12"

- name: Install dependencies
run: |
python -m pip install --upgrade pip
cd utils
pip install -r requirements.txt

- name: Build releases.json and latest.dbb
- name: Build releases.json and latest.ddb
run: |
cd utils
python3 fetch-releases-from-s3.py
python3 fetch_releases_from_stac.py
python3 simple-registry-manifest.py

- name: Copy output to publish directory
run: |
mkdir publish
cp index.html publish/
cp utils/releases.json publish/
cp utils/registry-manifest.json publish/
cp utils/latest.ddb publish/
Expand Down
39 changes: 39 additions & 0 deletions .github/workflows/test.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,39 @@
name: Test utils

on:
push:
branches: main
pull_request:

permissions:
contents: read

concurrency:
group: "test-${{ github.ref }}"
cancel-in-progress: true

jobs:
test:
name: Run unit tests
runs-on: ubuntu-latest
steps:
- name: Checkout
uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6.0.2
with:
persist-credentials: false

- name: Set up Python 3.12
uses: actions/setup-python@a309ff8b426b58ec0e2a45f0f869d46889d02405 # v6.2.0
with:
python-version: "3.12"

- name: Install dependencies
run: |
python -m pip install --upgrade pip
cd utils
pip install -r requirements-test.txt

- name: Run tests
run: |
cd utils
python -m pytest tests/ -v
3 changes: 3 additions & 0 deletions .gitignore
Original file line number Diff line number Diff line change
@@ -0,0 +1,3 @@

__pycache__/
*.pyc
193 changes: 193 additions & 0 deletions index.html
Original file line number Diff line number Diff line change
@@ -0,0 +1,193 @@
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>Overture Maps Data</title>
<link rel="preconnect" href="https://fonts.googleapis.com">
<link rel="preconnect" href="https://fonts.gstatic.com" crossorigin>
<link href="https://fonts.googleapis.com/css2?family=Montserrat:wght@300;400;700&display=swap" rel="stylesheet">
<style>
:root {
--omf-navy: #2C2E7F;
--omf-teal: #0EC1BD;
--omf-blue: #4051CC;
--omf-cyan: #4EDAD8;
--omf-dark: #001A39;
--omf-white: #FFFFFF;
}

* { box-sizing: border-box; margin: 0; padding: 0; }

body {
font-family: 'Montserrat', Arial, sans-serif;
font-weight: 400;
background: var(--omf-white);
color: var(--omf-dark);
min-height: 100vh;
display: flex;
flex-direction: column;
}

header {
background: var(--omf-dark);
padding: 1.5rem 2rem;
}

header h1 {
color: var(--omf-white);
font-weight: 700;
font-size: 1.1rem;
letter-spacing: 0.05em;
text-transform: uppercase;
}

header p {
color: var(--omf-cyan);
font-weight: 300;
font-size: 0.85rem;
margin-top: 0.25rem;
}

main {
flex: 1;
max-width: 720px;
width: 100%;
margin: 2.5rem auto;
padding: 0 1.5rem;
}

h2 {
font-size: 0.75rem;
font-weight: 700;
text-transform: uppercase;
letter-spacing: 0.08em;
color: var(--omf-navy);
margin-bottom: 0.75rem;
}

table {
width: 100%;
border-collapse: collapse;
font-size: 0.9rem;
}

thead th {
text-align: left;
font-weight: 700;
font-size: 0.75rem;
text-transform: uppercase;
letter-spacing: 0.06em;
color: var(--omf-navy);
border-bottom: 2px solid var(--omf-navy);
padding: 0.4rem 0.75rem 0.4rem 0;
}

tbody tr:hover td { background: #f4f5ff; }

tbody td {
padding: 0.6rem 0.75rem 0.6rem 0;
border-bottom: 1px solid #e5e7f0;
font-weight: 300;
vertical-align: top;
}

tbody td:first-child { font-weight: 400; }

a {
color: var(--omf-blue);
text-decoration: none;
}
a:hover { text-decoration: underline; color: var(--omf-navy); }

.badge {
display: inline-block;
font-size: 0.65rem;
font-weight: 700;
text-transform: uppercase;
letter-spacing: 0.05em;
padding: 0.1rem 0.4rem;
border-radius: 3px;
margin-left: 0.4rem;
vertical-align: middle;
background: #f0f0f0;
color: #666;
}

.note {
font-size: 0.8rem;
font-weight: 300;
color: #555;
margin-top: 2rem;
border-left: 3px solid var(--omf-teal);
padding-left: 0.75rem;
line-height: 1.6;
}

.note a { color: var(--omf-blue); }

footer {
background: var(--omf-dark);
color: var(--omf-cyan);
font-size: 0.75rem;
font-weight: 300;
text-align: center;
padding: 1rem;
}

footer a { color: var(--omf-cyan); }
</style>
</head>
<body>

<header>
<h1>Overture Maps Foundation</h1>
<p>labs.overturemaps.org/data: published release artifacts</p>
</header>

<main>
<h2>Available Files</h2>
<table>
<thead>
<tr>
<th>File</th>
<th>Description</th>
</tr>
</thead>
<tbody>
<tr>
<td><a href="releases.json">releases.json</a> <span class="badge">deprecated</span></td>
<td>Release list with latest pointer, supplanted by <a href="https://stac.overturemaps.org/catalog.json">STAC</a> (SpatioTemporal Asset Catalog)</td>
</tr>
<tr>
<td><a href="latest.ddb">latest.ddb</a></td>
<td>DuckDB database with views pointing to the latest Overture release on S3</td>
</tr>
<tr>
<td><a href="latest.dbb">latest.dbb</a> <span class="badge">deprecated</span></td>
<td>Alias for latest.ddb (legacy filename)</td>
</tr>
<tr>
<td><a href="registry-manifest.json">registry-manifest.json</a></td>
<td>Parquet file manifest for the Overture GERS registry</td>
</tr>
<tr>
<td><a href="overture_releases.yaml">overture_releases.yaml</a> <span class="badge">deprecated</span></td>
<td>Historical release list, no longer maintained. Use <a href="https://stac.overturemaps.org/catalog.json">STAC</a> (SpatioTemporal Asset Catalog) instead</td>
</tr>
</tbody>
</table>

<p class="note">
For authoritative release discovery, use the
<a href="https://stac.overturemaps.org/catalog.json">STAC</a> (SpatioTemporal Asset Catalog).
Full documentation at <a href="https://docs.overturemaps.org">docs.overturemaps.org</a>.
</p>
</main>

<footer>
<a href="https://overturemaps.org">overturemaps.org</a>
</footer>

</body>
</html>
3 changes: 3 additions & 0 deletions overture_releases.yaml
Original file line number Diff line number Diff line change
@@ -1,3 +1,6 @@
# DEPRECATED: This file is no longer maintained and will be removed in a future release.
# Use the Overture STAC catalog for authoritative release discovery:
# https://stac.overturemaps.org/catalog.json
- schema: "1.16.0"
release: "2026-04-15.0"
- schema: "1.16.0"
Expand Down
89 changes: 0 additions & 89 deletions utils/fetch-releases-from-s3.py

This file was deleted.

Loading
Loading