Skip to content

Commit

Permalink
reorganize code, tests
Browse files Browse the repository at this point in the history
  • Loading branch information
jonhealy1 committed Jan 31, 2024
1 parent 34310f1 commit 311fabd
Show file tree
Hide file tree
Showing 59 changed files with 40 additions and 38 deletions.
7 changes: 4 additions & 3 deletions Dockerfile.dev.es
Original file line number Diff line number Diff line change
Expand Up @@ -13,8 +13,9 @@ ENV CURL_CA BUNDLE=/etc/ssl/certs/ca-certificates.crt
WORKDIR /app

# Copy the contents of common and elastic_search directories directly into /app
COPY ./stac_fastapi/common /app/stac_fastapi/common
COPY ./stac_fastapi/elastic_search /app/stac_fastapi/elastic_search
COPY ./stac_api/common /app/stac_api/common
COPY ./stac_api/elastic_search /app/stac_api/elastic_search
COPY ./stac_api/tests /app/stac_api/tests

# Install dependencies
RUN pip install --no-cache-dir -e ./stac_fastapi/elastic_search[dev,server]
RUN pip install --no-cache-dir -e ./stac_api/elastic_search[dev,server]
7 changes: 4 additions & 3 deletions docker-compose.yml
Original file line number Diff line number Diff line change
Expand Up @@ -22,14 +22,15 @@ services:
ports:
- "8080:8080"
volumes:
- ./stac_fastapi/elastic_search:/app/stac_fastapi/elastic_search
- ./stac_fastapi/common:/app/stac_fastapi/common
- ./stac_api/elastic_search:/app/stac_api/elastic_search
- ./stac_api/common:/app/stac_api/common
- ./stac_api/tests:/app/stac_api/tests
- ./scripts:/app/scripts
- ./esdata:/usr/share/elasticsearch/data
depends_on:
- elasticsearch
command:
bash -c "./scripts/wait-for-it-es.sh es-container:9200 && python -m stac_fastapi.elastic_search.app"
bash -c "./scripts/wait-for-it-es.sh es-container:9200 && python -m stac_api.elastic_search.app"

app-opensearch:
container_name: stac-fastapi-os
Expand Down
File renamed without changes.
File renamed without changes.
File renamed without changes.
20 changes: 10 additions & 10 deletions stac_fastapi/common/core.py → stac_api/common/core.py
Original file line number Diff line number Diff line change
Expand Up @@ -20,10 +20,10 @@
from stac_pydantic.shared import MimeTypes

# from common.base_database_logic import BaseDatabaseLogic
from stac_fastapi.common.models.links import PagingLinks
from stac_fastapi.elastic_search import serializers
from stac_fastapi.elastic_search.serializers import CollectionSerializer, ItemSerializer
from stac_fastapi.elastic_search.session import Session
from stac_api.common.models.links import PagingLinks
from stac_api.elastic_search import serializers
from stac_api.elastic_search.serializers import CollectionSerializer, ItemSerializer
from stac_api.elastic_search.session import Session
from stac_fastapi.extensions.third_party.bulk_transactions import (
BaseBulkTransactionsClient,
BulkTransactionMethod,
Expand Down Expand Up @@ -85,13 +85,13 @@ def __attrs_post_init__(self):
try:
# Dynamically import the database logic based on installed package
database_module = importlib.import_module(
"stac_fastapi.elastic_search.database_logic"
"stac_api.elastic_search.database_logic"
)
DatabaseLogicClass = getattr(database_module, "DatabaseLogic")
except ImportError:
# Fall back to OpenSearch if Elasticsearch is not available
database_module = importlib.import_module(
"stac_fastapi.open_search.database_logic"
"stac_api.open_search.database_logic"
)
DatabaseLogicClass = getattr(database_module, "DatabaseLogic")

Expand Down Expand Up @@ -580,13 +580,13 @@ def __attrs_post_init__(self):
try:
# Dynamically import the database logic based on installed package
database_module = importlib.import_module(
"stac_fastapi.elastic_search.database_logic"
"stac_api.elastic_search.database_logic"
)
DatabaseLogicClass = getattr(database_module, "DatabaseLogic")
except ImportError:
# Fall back to OpenSearch if Elasticsearch is not available
database_module = importlib.import_module(
"stac_fastapi.opensearch.database_logic"
"stac_api.opensearch.database_logic"
)
DatabaseLogicClass = getattr(database_module, "DatabaseLogic")

Expand Down Expand Up @@ -774,13 +774,13 @@ def __attrs_post_init__(self):
try:
# Dynamically import the database logic based on installed package
database_module = importlib.import_module(
"stac_fastapi.elastic_search.database_logic"
"stac_api.elastic_search.database_logic"
)
DatabaseLogicClass = getattr(database_module, "DatabaseLogic")
except ImportError:
# Fall back to OpenSearch if Elasticsearch is not available
database_module = importlib.import_module(
"stac_fastapi.opensearch.database_logic"
"stac_api.opensearch.database_logic"
)
DatabaseLogicClass = getattr(database_module, "DatabaseLogic")

Expand Down
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
Original file line number Diff line number Diff line change
Expand Up @@ -8,7 +8,7 @@

from stac_pydantic.api.extensions.fields import FieldsExtension as FieldsBase

from stac_fastapi.types.config import Settings
from stac_api.types.config import Settings

logger = logging.getLogger("uvicorn")
logger.setLevel(logging.INFO)
Expand Down
File renamed without changes.
File renamed without changes.
Original file line number Diff line number Diff line change
Expand Up @@ -3,16 +3,16 @@

from stac_fastapi.api.app import StacApi
from stac_fastapi.api.models import create_get_request_model, create_post_request_model
from stac_fastapi.common.core import (
from stac_api.common.core import (
BulkTransactionsClient,
CoreClient,
EsAsyncBaseFiltersClient,
TransactionsClient,
)
from stac_fastapi.common.extensions import QueryExtension
from stac_fastapi.elastic_search.config import ElasticsearchSettings
from stac_fastapi.elastic_search.database_logic import create_collection_index
from stac_fastapi.elastic_search.session import Session
from stac_api.common.extensions import QueryExtension
from stac_api.elastic_search.config import ElasticsearchSettings
from stac_api.elastic_search.database_logic import create_collection_index
from stac_api.elastic_search.session import Session
from stac_fastapi.extensions.core import (
ContextExtension,
FieldsExtension,
Expand Down Expand Up @@ -67,7 +67,7 @@ def run() -> None:
import uvicorn

uvicorn.run(
"stac_fastapi.elastic_search.app:app",
"stac_api.elastic_search.app:app",
host=settings.app_host,
port=settings.app_port,
log_level="info",
Expand Down
File renamed without changes.
Original file line number Diff line number Diff line change
Expand Up @@ -9,13 +9,13 @@
from elasticsearch_dsl import Q, Search

from elasticsearch import exceptions, helpers # type: ignore
from common.extensions import filter
from elastic_search import serializers
from elastic_search.config import AsyncElasticsearchSettings
from elastic_search.config import (
from stac_api.common.extensions import filter
from stac_api.elastic_search import serializers
from stac_api.elastic_search.config import AsyncElasticsearchSettings
from stac_api.elastic_search.config import (
ElasticsearchSettings as SyncElasticsearchSettings,
)
from elastic_search.utilities import bbox2polygon
from stac_api.elastic_search.utilities import bbox2polygon
from stac_fastapi.types.errors import ConflictError, NotFoundError
from stac_fastapi.types.stac import Collection, Item

Expand Down Expand Up @@ -283,10 +283,10 @@ class DatabaseLogic:
sync_client = SyncElasticsearchSettings().create_client

item_serializer: Type[serializers.ItemSerializer] = attr.ib(
default=serializers.ItemSerializer # type: ignore
default=serializers.ItemSerializer # type: ignore
)
collection_serializer: Type[serializers.CollectionSerializer] = attr.ib(
default=serializers.CollectionSerializer # type: ignore
default=serializers.CollectionSerializer # type: ignore
)

"""CORE LOGIC"""
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -4,7 +4,7 @@

import attr

from stac_fastapi.common.datetime_utils import now_to_rfc3339_str
from stac_api.common.datetime_utils import now_to_rfc3339_str
from stac_fastapi.types import stac as stac_types
from stac_fastapi.types.links import CollectionLinks, ItemLinks, resolve_links

Expand Down
File renamed without changes.
File renamed without changes.
Original file line number Diff line number Diff line change
Expand Up @@ -65,6 +65,6 @@
tests_require=extra_reqs["dev"],
extras_require=extra_reqs,
entry_points={
"console_scripts": ["stac-fastapi-elasticsearch=elastic_search.app:run"]
"console_scripts": ["stac-fastapi-elasticsearch=stac_api.elastic_search.app:run"]
},
)
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
# import sys
import sys

# sys.path.insert(0, "/app")
sys.path.insert(0, "/app")

import asyncio
import copy
Expand All @@ -10,18 +10,18 @@

import pytest
import pytest_asyncio
from elastic_search.config import AsyncElasticsearchSettings
from elastic_search.database_logic import create_collection_index
from stac_api.elastic_search.config import AsyncElasticsearchSettings
from stac_api.elastic_search.database_logic import create_collection_index
from httpx import AsyncClient

from stac_fastapi.api.app import StacApi
from stac_fastapi.api.models import create_get_request_model, create_post_request_model
from stac_fastapi.common.core import (
from stac_api.common.core import (
BulkTransactionsClient,
CoreClient,
TransactionsClient,
)
from stac_fastapi.common.extensions import QueryExtension
from stac_api.common.extensions import QueryExtension
from stac_fastapi.extensions.core import ( # FieldsExtension,
ContextExtension,
FieldsExtension,
Expand Down
File renamed without changes.
File renamed without changes.
File renamed without changes.
Empty file.
File renamed without changes.
File renamed without changes.
File renamed without changes.

0 comments on commit 311fabd

Please sign in to comment.