You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
for one job fail rather than being merged. Authorized named collections remain
42
+
Item-only.
43
+
44
+
Repeated upserts overwrite manual curation on generated Catalog and Collection
45
+
records. The deployed loader still has `CREATE_COLLECTIONS_IF_MISSING=TRUE`,
46
+
and pgSTAC is configured to maintain collection extents from ingested Items, so
47
+
a source extent is initial metadata and may be updated asynchronously from
48
+
Items. Named collections are untouched.
49
+
50
+
To add hierarchy records for historical generated collections, preview this
51
+
conservative, restartable backfill before applying it:
52
+
53
+
```bash
54
+
uv run --script scripts/backfill_dps_user_catalogs.py --dry-run
55
+
uv run --script scripts/backfill_dps_user_catalogs.py --apply
56
+
```
57
+
58
+
The backfill uses hydrated item metadata and actual collection IDs. It recognizes
59
+
both current three-part and legacy tag-specific four-part generated IDs, and
60
+
skips named, authorized, mixed, incomplete, and ambiguous collections. Historical
61
+
authorization cannot always be proven when its registry is incomplete, so review
62
+
the dry-run report. Existing Collection metadata is preserved; apply only adds
63
+
the parent relationship and creates a missing user Catalog. It does not rewrite
64
+
or rename Items.
65
+
35
66
To merge legacy tag-specific DPS collections into these tag-free IDs, preview
36
67
then apply the database migration:
37
68
@@ -42,10 +73,10 @@ then apply the database migration:
42
73
43
74
It recognizes four-part IDs (`username__algorithm__version__tag`), merges their
44
75
items into the corresponding three-part ID, and adds the DPS metadata fields
45
-
from the legacy ID. Collections containing an item-ID collision after merging
46
-
are reported and left unchanged. For a deployed database, follow the
47
-
[RDS connection guide](#connect-to-rds-through-an-ssm-tunnel) below and the
48
-
RDS usage instructions in the migration script's docstring.
76
+
from the legacy ID. Collections containing an item-ID collision retain their
77
+
legacy ID, but their Items still receive those metadata fields. For a deployed
78
+
database, follow the [RDS connection guide](#connect-to-rds-through-an-ssm-tunnel)
79
+
below and the RDS usage instructions in the migration script's docstring.
49
80
50
81
Collection-only STAC transactions can still be enabled with:
51
82
@@ -74,6 +105,8 @@ The script is standalone and uses an inline `uv` execution header, so it install
74
105
-`DPS Team Catalogs` as a root catalog, containing the shared `maap-demo-team` catalog
75
106
- two synthetic DPS-output collections per user
76
107
108
+
Open <http://127.0.0.1:8080> to test the user STAC Browser configuration used by the deployment. Its landing page shows only root catalogs; opening a catalog shows its scoped collections.
109
+
77
110
Useful options:
78
111
79
112
```bash
@@ -93,6 +126,16 @@ For a catalogs-enabled deployment, verify:
93
126
-`GET /` includes `rel="child"` links for listed catalogs so STAC Browser can discover catalog roots.
94
127
- catalog write routes are absent unless `USER_STAC_CATALOG_TRANSACTIONS_AUTH_MODE=basic` is configured.
95
128
129
+
The deployment includes a public STAC Browser and, when
130
+
`USER_STAC_BROWSER_CUSTOM_DOMAIN_NAME` and `USER_STAC_BROWSER_CERTIFICATE_ARN` are
131
+
set, a separate user-STAC Browser. Set `STAC_BROWSER_REPO_TAG` to `v5.1.0` (or a
132
+
compatible STAC Browser v5 release) for the user browser configuration. On the
133
+
user-STAC Browser landing page, verify that catalog links are shown and the
134
+
landing page's broad `rel="data"` link is not. Open a child catalog and verify
135
+
that its scoped `rel="data"` link still lists collections, then open a
136
+
collection and verify that `rel="items"` lists its items. The customization
137
+
uses the browser path for root detection, not an API landing-page ID.
138
+
96
139
For a transaction-enabled internal deployment, verify:
97
140
98
141
-`GET /conformance` includes `https://api.stacspec.org/v1.0.0/collections/extensions/transaction` when collection transactions are enabled.
@@ -166,7 +209,7 @@ STAC HTTP basic-auth secret. CloudFormation gives you the secret's identifier; r
166
209
from Secrets Manager. In the same terminal:
167
210
168
211
```bash
169
-
SECRET_ID='<database secret physical ID (not arn) from the table>'
0 commit comments