-
Notifications
You must be signed in to change notification settings - Fork 1.2k
[Fixes #13381] Allowing remote WMS dataset to be automatically connected to existing… #13380
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
base: master
Are you sure you want to change the base?
Conversation
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Summary of Changes
Hello @mattiagiupponi, I'm Gemini Code Assist1! I'm currently reviewing this pull request and will post my feedback shortly. In the meantime, here's a summary to help you and other reviewers quickly get up to speed!
This pull request significantly enhances the WMS dataset import process by introducing automatic integration with existing harvesters, ensuring better organization and management of remote resources. It also includes a refactoring effort to improve the clarity of WMS layer identification within the system.
Highlights
- WMS Dataset Harvesting Integration: I've implemented functionality to automatically connect newly imported WMS datasets to existing harvesters. This occurs if the remote service URL of the imported dataset matches a pre-configured harvester, streamlining the management of external WMS resources.
- Field Name Refactoring: The
lookup
field in the WMS remote resource serializer has been renamed toidentifier
. This change, along with updates to all corresponding code and tests, improves clarity and consistency in how WMS layers are referenced. - Enhanced Testing: A new end-to-end test case has been added to specifically validate the automatic creation of harvestable resources for WMS imports. Existing WMS import tests were also updated to reflect the field name change and use environment variables for better test configurability.
Using Gemini Code Assist
The full guide for Gemini Code Assist can be found on our documentation page, here are some quick tips.
Invoking Gemini
You can request assistance from Gemini at any point in your pull request via creating an issue comment (i.e. comment on the pull request page) using either /gemini <command>
or @gemini-code-assist <command>
. Below is a summary of the supported commands.
Feature | Command | Description |
---|---|---|
Code Review | /gemini review |
Performs a code review for the current pull request in its current state. |
Pull Request Summary | /gemini summary |
Provides a summary of the current pull request in its current state. |
Comment | @gemini-code-assist | Responds in comments when explicitly tagged, both in issue comments and review comments. |
Help | /gemini help |
Displays a list of available commands. |
Customization
To customize Gemini Code Assist for GitHub experience, repository maintainers can create a configuration file and/or provide a custom code review style guide (such as PEP-8 for Python) by creating and adding files to a .gemini/
folder in the base of the repository. Detailed instructions can be found here.
Limitations & Feedback
Gemini Code Assist may make mistakes. Please leave feedback on any instances where its feedback is incorrect or counter productive. You can react with 👍 and 👎 on @gemini-code-assist comments or fill out our survey to provide feedback.
You can also get AI-powered code generation, chat, as well as code reviews directly in the IDE at no cost with the Gemini Code Assist IDE Extension.
Footnotes
-
Review the Privacy Notices, Generative AI Prohibited Use Policy, Terms of Service, and learn how to configure Gemini Code Assist in GitHub here. Gemini can make mistakes, so double check it and use code with caution. ↩
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Code Review
This pull request refactors the WMS remote resource handler to use identifier
instead of lookup
for clarity and introduces functionality to automatically connect a newly created WMS dataset to an existing harvester if the service URL matches. The changes are supported by new end-to-end tests. My review focuses on fixing a syntax error and a logical issue in the tests, and improving test robustness.
Codecov Report❌ Patch coverage is
Additional details and impacted files@@ Coverage Diff @@
## master #13380 +/- ##
==========================================
- Coverage 73.25% 66.46% -6.80%
==========================================
Files 915 916 +1
Lines 52364 52458 +94
Branches 5962 5972 +10
==========================================
- Hits 38359 34864 -3495
- Misses 12454 16114 +3660
+ Partials 1551 1480 -71 🚀 New features to boost your workflow:
|
…ted to existing harvesters
026f7d9
to
269d0fc
Compare
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
@mattiagiupponi please check the comment
# if exists, we need to be sure that the resource from geonode is getting connected | ||
if not hresource.geonode_resource: | ||
hresource.geonode_resource = geonode_resource | ||
hresource.should_be_harvested = True |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
@mattiagiupponi in this line: hresource.should_be_harvested = True
I think we should check if the harvester is sheduled or not (if <Harvester>.scheduling_enabled = True
) Because otherwise, I think that we should keep the hresource.should_be_harvested
as False. should_be_harvested
is used only by a shceduled harvester in order to be aware that in the next run, this resource will be harvested.
… harvesters
Checklist
For all pull requests:
The following are required only for core and extension modules (they are welcomed, but not required, for contrib modules):
Submitting the PR does not require you to check all items, but by the time it gets merged, they should be either satisfied or inapplicable.