Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Break out STAC Ingestor codebase into separate repo #4

Open
alukach opened this issue Nov 29, 2022 · 5 comments
Open

Break out STAC Ingestor codebase into separate repo #4

alukach opened this issue Nov 29, 2022 · 5 comments
Assignees
Labels
enhancement New feature or request help wanted Extra attention is needed

Comments

@alukach
Copy link
Member

alukach commented Nov 29, 2022

Currently, we store the STAC Ingestor codebase alongside the STAC Ingestor CDK construct. This means that if a user wants to customize the STAC Ingestor, they need to copy/replicate the STAC Ingestor codebase into a separate repo, customize it, and then recreate the logic around the StacIngestor construct. A better scenario would be to be able to provide the construct an argument that represents a pip-friendly location the codebase can be installed from. I am not certain of the best way to do this.

First pass at a solution

Currently, we are using the PythonFunction construct which requires that a user pass in a directory where either a Pipfile.lock, poetry.lock, or requirements.txt file can be found (source).

It seems like something along the lines of the following may work: Create a custom construct that took in the identifier of an installable module, wrote that to a requirements.txt file, and then passed the path of that requirements.txt file to the Python Lambda to be built. I'm not sure how we could support the customization of the entry and handler arguments...

@alukach alukach added enhancement New feature or request help wanted Extra attention is needed labels Nov 29, 2022
@sharkinsspatial sharkinsspatial self-assigned this Jan 25, 2023
@sharkinsspatial
Copy link
Member

@alukach I might have some time available to look at this next week if you want to tackle this. I might be missing something but would a simpler approach be just to avoid PythonFunction and force users to pass a deployment package via fromAsset. If they wanted to build the deployment package dynamically as part of their own CDK code and inject it into the construct they could.

@vincentsarago
Copy link
Member

👋 if no-one already did this, I could work on it.

any objection about using pgstac-ingestor name? also are we fine having this in devseed organisation for now (we could put in in stac-utils if we wanted)?

@vincentsarago
Copy link
Member

I started something over https://github.com/developmentseed/pgstac-ingestor

@emileten
Copy link
Contributor

Maybe we could try to solve this #9 at the same time?

@vincentsarago
Copy link
Member

@emileten I think this is fixed in developmentseed/pgstac-ingestor#2 🤷‍♂️

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
enhancement New feature or request help wanted Extra attention is needed
Projects
None yet
Development

No branches or pull requests

4 participants