Skip to main content

A set of constructs deploying pgSTAC with CDK

Project description

eoAPI CDK Constructs

eoapi-cdk is a package of AWS CDK constructs designed to encapsulate eoAPI services and best practices as simple reusable components.

For more background on the included services see The Earth Observation API

Included constructs

Detailed API docs for the constructs can be found here.

pgSTAC Database

An RDS instance with pgSTAC installed and the Postgres parameters optimized for the selected instance type.

STAC API

A STAC API implementation using stac-fastapi with a pgSTAC backend. Packaged as a complete runtime for deployment with API Gateway and Lambda.

pgSTAC Titiler API

A complete dynamic tiling API using titiler-pgstac to create dynamic mosaics of assets based on STAC Search queries. Packaged as a complete runtime for deployment with API Gateway and Lambda and fully integrated with the pgSTAC Database construct.

STAC browser

A CDK construct to host a static Radiant Earth STAC browser on S3.

OGC Features/Tiles API

A complete OGC Features/Tiles API using tipg. Packaged as a complete runtime for deployment with API Gateway and Lambda. By default the API will be connected to the Database's public schema.

STAC Ingestor

An API for large scale STAC data ingestion and validation into a pgSTAC instance.

ingestor

Authentication for the STAC Ingestor API can be configured with JWTs authenticated by JWKS. To learn more about securing FastAPI applications with this approach see Securing FastAPI with JWKS (AWS Cognito, Auth0).

A sample Cognito-based authentication system is available at aws-asdi-auth.

Bastion Host

A bastion host is a secure gateway that provides access to resources in a private subnet. In this case it provides the ability to make administrative connections to eoAPI's pgSTAC instance.

Alt text

For more background on bastion hosts in AWS see this article.

And for configuration instructions for this construct see the docs.

Published Packages

Release

Versioning is automatically handled via Conventional Commits and Semantic Release.

Warning: If you rebase main, you must ensure that the commits referenced by tags point to commits that are within the main branch. If a commit references a commit that is no longer on the main branch, Semantic Release will fail to detect the correct version of the project. More information.

Tests

Each pull request to main is added to a merge queue so that a "deployment test" workflow can run before the merge actually happens. If the deployment fails, the merge is cancelled. Here is the definition of this workflow and the tests definition.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

eoapi-cdk-7.2.1.tar.gz (748.9 kB view details)

Uploaded Source

Built Distribution

eoapi_cdk-7.2.1-py3-none-any.whl (747.6 kB view details)

Uploaded Python 3

File details

Details for the file eoapi-cdk-7.2.1.tar.gz.

File metadata

  • Download URL: eoapi-cdk-7.2.1.tar.gz
  • Upload date:
  • Size: 748.9 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/5.1.1 CPython/3.10.12

File hashes

Hashes for eoapi-cdk-7.2.1.tar.gz
Algorithm Hash digest
SHA256 e9c9df6d47cb9bb2770d85283838902a33207954aac0e5aa4cf97bf571ccac33
MD5 d364de4545ae6494d7d4f772f897a1a3
BLAKE2b-256 83fad1a1a09cd6cc4c506f375543a68bed147eaff1eda49fdba20816ed3055a3

See more details on using hashes here.

File details

Details for the file eoapi_cdk-7.2.1-py3-none-any.whl.

File metadata

  • Download URL: eoapi_cdk-7.2.1-py3-none-any.whl
  • Upload date:
  • Size: 747.6 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/5.1.1 CPython/3.10.12

File hashes

Hashes for eoapi_cdk-7.2.1-py3-none-any.whl
Algorithm Hash digest
SHA256 d2ecdf3fccb35639f9209dcce19a77928768aecc129f093491cf071caab3ea37
MD5 c58b0e5900447c63f0088fa9f60f20a5
BLAKE2b-256 d0bb30d5c5395bff2f0f448f42a27e5bf9e54848b5baa3a5a7c9862ebffd12d0

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page