Add support for GEE service account credentials
@kevinlacaille is already working on this.
Since Nov 16, 2022.
Assessment
This issue has not been assessed yet.
Description
Is your feature request related to a problem? Please describe.
In order for a user to bring their own GCS service account, we must supply them with somewhere to input that SA's credentials in
order_request.google_earth_engine()
We already show support for the credentials field on our Dev Center's example request JSON.
Describe the solution you'd like
Current Google Earth Engine configuration:
def google_earth_engine(project: str, collection: str) -> dict:
'''Google Earth Engine configuration.
Parameters:
project: GEE project name.
collection: GEE Image Collection name.
'''
cloud_details = {
'project': project,
'collection': collection,
}
return {'google_earth_engine': cloud_details}
Proposed solution:
def google_earth_engine(project: str, collection: str, credentials: str) -> dict:
'''Google Earth Engine configuration.
Parameters:
project: GEE project name.
collection: GEE Image Collection name.
credentials: Base64-encoded credentials for the GEE service account
'''
cloud_details = {
'project': project,
'collection': collection,
'credentials': credentials,
}
return {'google_earth_engine': cloud_details}
def test_google_earth_engine():
gee_config = order_request.google_earth_engine('project', 'collection')
expected = {
'google_earth_engine': {
'project': 'project',
'collection': 'collection',
}
}
assert gee_config == expected
Proposed test:
def test_google_earth_engine():
gee_config = order_request.google_earth_engine('project', 'collection', 'credentials')
expected = {
'google_earth_engine': {
'project': 'project',
'collection': 'collection',
'credentials': '<REDACTED>',
}
}
assert gee_config == expected
Additional context
Many users like to bring their own service account over using Planet's, so this feature is likely to be used.
- Dominant language
- Python
- Stars
- 299
- Forks
- 100
- Avg merge
- 7d 8h
- Merged PRs (30d)
- 2
Contributor guide
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
More from planetlabs/planet-client-python
-
better-testing
Difficulty 2/5 1-3 hours Newbie friendliness 65/100
planetlabs/planet-client-python#1110 ·
-
proposal
Difficulty 3/5 1-2 days Newbie friendliness 65/100
planetlabs/planet-client-python#1221 ·
-
proposal
Difficulty 3/5 1-2 days Newbie friendliness 57/100
planetlabs/planet-client-python#1214 ·
-
bug
Difficulty 3/5 1-2 days Newbie friendliness 48/100
planetlabs/planet-client-python#1197 · 1 comment · 1 reaction ·
-
Quota API Openai-claude
planetlabs/planet-client-python#1191 · 1 comment · 1 assignee ·
All issues in planetlabs/planet-client-python
Similar issues
-
bug
Difficulty 2/5 1-3 hours Newbie friendliness 75/100
stephrobert/dsoxlab#238 ·
-
Difficulty 2/5 1-3 hours Newbie friendliness 75/100
-
Difficulty 2/5 1-3 hours Newbie friendliness 75/100
sublimehq/package_control#1780 ·
-
Difficulty 2/5 1-3 hours Newbie friendliness 65/100
-
Difficulty 2/5 1-3 hours Newbie friendliness 70/100
nwg-piotr/nwg-displays#145 ·