geopython / geopython/GeoHealthCheck
Create, Read, Update, Delete Resources Programatically (API?)
- Lingua principale
- Python
- Stelle
- 92
- Fork
- 75
- Metriche di merge delle PR
- Nessuna PR unita negli ultimi 30g
Descrizione
## User Story
As a developer
I want to programmatically Create, read, update delete resources
So that I can integrate health checking into my application
## Proposal
- Implement a CRUD API
- Implement API keys for registered users
- allow the creation of new resources through JSON or XML api
- implement CRUD
- Create new resource: http://server/resource/create
- Read (implemented?): http://server/resource/1/
- Update: http://server/resource/1/update
- Delete: http://server/resource/1/delete
## Use Case
1. A user with an account at http://geohealthcheck.osgeo.org/ gets an API key
2. from an application such as GeoNetwork (http://geonetwork-opensource.org/)
- requires some collaboration perhaps for a reference implementation
- requires some settings added to an admin panel
3. A Geonetwork user enters a new WMS endpoint as a resource to a metadata record
4. The GeoNetwork catalogue then checks GHC if the resource exists and is monitored eg. http://geohealthcheck.osgeo.org/json?resource_type=OGC%3AWMS
5. it starts by checking if the domain name is being tracked
6. It then checks to see if a WMS service on that domain is being monitored http://geohealthcheck.osgeo.org/json?resource_type=OGC%3AWMS
1.1 if so then the API returns the URL(s) of the candidate resource(s)
1.2 if not then the API return the URL to create a new resource
7. details of the new resource to create are posted to http://geohealthcheck.osgeo.org/create
8. new resource is created and then discovered at http://geohealthcheck.osgeo.org/json?resource_type=OGC%3AWMS
9. Geonetwork then is able to probe the health checking server for the resource
10. Depending on the status of the health check the developer can add red, green, yellow icon next to resource in the application (aka GeoNetwork)
## Notes
- Some implementations of ArcGIS server actually have a unique endpoint per resource, feature or layer. So you might have multiple services at a single domain and therefore you may want o constrain monitoring to a single service. Perhaps assuming that if one service on the domain is running then all would be running/
Guida per i contributori
Apri la guida per i contributori
Direzione di ricerca
Inizia esaminando gli endpoint CRUD proposti nell’issue, il flusso API-key e i casi d’uso JSON/XML, quindi ispeziona i punti di ingresso esistenti per le risorse e l’API nel repository. Chiarisci l’autenticazione, la corrispondenza delle risorse e le questioni irrisolte sull’ambito del servizio ArcGIS prima dell’implementazione. Il lavoro è completato quando gli utenti registrati possono autenticarsi e creare, leggere, aggiornare ed eliminare risorse tramite un’API documentata.
Scritto dal modello di indicizzazione a partire dal testo della issue.
Valutazione
- Stack tecnologico
- python
- Ambito
- api, authentication, backend
- Tipo di issue
- Funzionalità
- Difficoltà
- 5/5
- Tempo stimato
- Più di una settimana
- Stato di attività
- Ferma
- Chiarezza
- Da chiarire
- Idoneità per principianti
- 25/100