geopython / geopython/GeoHealthCheck

Create, Read, Update, Delete Resources Programatically (API?)

Aperta
#20 0 commenti 1 reazione 0 assegnatari Vedi su GitHub
enhancement
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

Ricevi le nuove issue nella tua casella

Un breve riepilogo di issue GitHub adatte ai principianti.