Граф коммитов

11 Коммитов

Автор SHA1 Сообщение Дата
Matt McFarland 66fa8fe96d
Update pydantic, titiler, stac-fastapi (#233)
* update pccommon requirements

* update pcstac requirements

* update pcfuncs

* update pcfuncs/pcstac/pccommon

* allow YYYY-MM-DD date format in search

* update pctiler

* update stac-fastapi.*

* Dependencies

* Get mosaic tiles working

* Formatting

* Use items request model

* Backwards compat with searchid

* certifi upgrade

* Read envs correctly

* Restore health check filtering

* Update titiler uvicorn

* lint

* Fix casing on colormaps

* Fix cmap and add /crop

* Fixups

---------

Co-authored-by: vincentsarago <vincent.sarago@gmail.com>
2024-07-17 10:22:54 -04:00
Matt McFarland 3b1e9f7258
Set root-path from uvicorn (#221)
* Set root-path from uvicorn

Sets the root path in uvicorn to match that set via FastAPI. This is
required with updates to starlette, which were included previously.

Fixes https://github.com/microsoft/PlanetaryComputer/issues/360

* New black formatting
2024-06-14 13:58:12 -04:00
Matt McFarland 034b9c3bb2
Security patching (#219)
* Security patching

Near-SLA security updates

* fixup
2024-06-12 10:53:46 -04:00
Gustavo Hidalgo d68ec50e0c
Security patching (#191)
* Generate requirments.txt

* remove hashes

* Delete non-extra requirements file

* Now all projects have requirements.txt

* Remove BaseHTTPMiddlewares ,  Ensure origin host is used in STAC links

* Successfully build containers

* lint

* Docker images build

* Delete unused requirements file

* save

* Now requirements do get generated

* Update Azurite

* format setup.py

* add type annotation

* Read lerc_zstd

* speed up image rebuilds and better UT for lerc

* Update more packages

* upgrade stac-api-validation

* Remove files from older commits

---------

Co-authored-by: maitjoshi <maitjoshi@microsoft.com>
2024-04-16 10:22:07 -04:00
Gustavo Hidalgo dcfd7c7666
Use Key Vault secrets instead of cert-manager secret in AKS cluster (#185)
* Update deployment script and add nginx-values.yaml

* Update Dockerfile, values.yaml, variables.tf, and lib script

* Update to satisfy pydantic and mypy

* More mypy induced changes

* More mypy changes
2024-02-05 09:03:07 -05:00
Matt McFarland b4912be57c
Fix middleware runtime error and release prep fixes (#130)
* Temporarily use fork for starlette 0.21 release

The 0.21 release resolves a frequent error on our fastapi version.

See:
https://github.com/encode/starlette/pull/1710
https://github.com/encode/starlette/pull/1715

* Disable FTP as function app deploy option

Security controls

* Trace request attributes before invoking middleware

If an exception is raised in subsequent middlewares, added trace
attributes will still be logged to Azure. This allows us to find
requests that fail in the logs.

* Make config cache thread safe

cachetools cache is not thread safe and there were frequent exceptions
logged indicating that cache updates during async calls were failing
with key errors similar to those described in:

https://github.com/tkem/cachetools/issues/80

Add a lock per table instance synchronizes cache updates across threads
in.

* Lint

* Changelog
2022-10-25 10:44:07 -04:00
Rob Emanuele bb4ac9de96
Add Azure Functions for creating images and animations (#115)
* Consolidate dev dependencies into requirements-dev.txt

* Add simple azure storage support to pccommon

* Set up azurite container for dev output

* Add pcfuncs codebase

This includes the "animation" and "image" functions,
as well as the "funclib" library that contains
reusable code for fetching rasters from the
PC data API.

* Add pcfuncs to dev servers and processes

* Add Azure Functions to deployment

* Move funcs information to main README

* Fix titiler link

* Avoid flake8 on setup.py

* Delete unused reprojection utility method/type

* Remove debug log information

* Don't restrict concurrency setting
2022-08-16 12:02:09 -04:00
Rob Emanuele 174db793bf
Include hostname in redis cache key (#98)
* Consolidate how dev depenencies are installed

Previous to this change pcstac and pctiler had
two methods for installing dev dependencies.
This caused different behavior between the two
test projects. For instance, one project auto
upgraded the pytest asyncio plugin, which
under a new version started printing warnings.

This users the setup.py method for installing dev
dependencies consistently and pins some test dependencies

* Use asyncio_mode = auto to quell warnings

* Fix dependencies in docker-compose

* Use hostname in caching key.

Previous to this change, requests coming in from
different hostnames were causing the cache to return
results for different hostnames if that service was
accessible through both - this is the case after a release,
when planetarycomputer-staging.msft.com and planetarycomputer.msft.com
both point to the same stack. This was causing cached
results to be returned with links for staging through
requests to the production endpoints. Added the hostname
to the cache key will ensure cached results are scoped
to the specific hostname.

* Update CHANGELOG
2022-05-24 13:19:27 -04:00
Vincent Sarago 5afddf53eb
switch to uvicorn for tiler api (#67)
* switch to uvicorn for tiler api
* ignore type
* update black
2022-03-31 14:29:45 -04:00
Vincent Sarago 61985a8dea
add packages setup.py and simplify dockerfiles (#30)
* add packages setup.py and simplify dockerfiles
2022-02-07 09:52:01 -05:00
Rob Emanuele e1ec9529c6 Initial commit. 2021-10-18 12:13:28 -04:00