Ambienti
Development, staging e production: una connessione per sorgente dati in ciascuno, e chiavi API che li tengono separati.
Gli ambienti tengono separati i dati di sviluppo, di prova e di produzione. Lo stesso template, con la stessa versione, legge il database di sviluppo mentre lo progetti e quello di produzione quando il tuo ERP lo genera, senza una stringa di connessione nel template.
Che cos'è un ambiente
Un ambiente appartiene a un workspace e ha una chiave (usata dall'API: production), un nome e un'opzione produzione. Decide una cosa sola: quale connessione di ogni sorgente dati usa una query. Non contiene template o versioni propri.
Gli ambienti predefiniti
developmentDevelopment- Dove progetti e provi. Il Designer lo usa come predefinito.
stagingStaging- Per i collaudi su una copia dei dati di produzione.
productionProduction- I tuoi dati reali. Contrassegnato come produzione: in rosso nel selettore degli ambienti; le chiavi test non possono usarlo.
Aggiungere e modificare ambienti
- Nelle impostazioni del workspace, Ambienti (permesso
workspace.manage: admin e owner): Aggiungi un ambiente con chiave, nome e opzione di produzione, oppure cambia nome, ordine e opzione di uno esistente. - Le chiavi iniziano con una lettera minuscola, poi lettere minuscole, cifre e trattini, al massimo 32 caratteri (per esempio
uatocollaudo-cliente), uniche nel workspace. Una chiave non cambia mai dopo la creazione; gli ambienti non si possono eliminare.
Connessioni per ambiente
Ogni sorgente dati ha al massimo una connessione per ambiente, ognuna con il proprio host, le proprie credenziali e la propria modalità (gateway o diretta). Una configurazione tipica:
developmentgateway- ERP_DEV sul server di sviluppo, tramite il gateway dell'ufficio.
staginggateway- ERP_TEST, una copia notturna della produzione.
productiongateway- ERP_PROD, tramite due gateway per l'alta disponibilità.
Se l'ambiente di una richiesta non ha una connessione per una sorgente dati, la richiesta fallisce con DATA_SOURCE_NOT_CONFIGURED: Prynt non ripiega mai sul database di un altro ambiente.
Gli ambienti nel Designer
Il selettore dell'ambiente in alto nell'applicazione decide la connessione usata dall'editor SQL, dall'esploratore del database, dalle prove dei dataset, dalle anteprime e dalle prove di generazione. Parte da Development; gli ambienti di produzione sono evidenziati, così sai sempre quando stai guardando dati reali.
Gli ambienti nell'API
Una generazione legge i dati dell'ambiente indicato nel membro environment della richiesta, altrimenti di quello predefinito della chiave API. La risposta dice quale ha usato nell'header X-Environment.
curl -X POST https://api.prynt.it/api/v1/render \ -H "Authorization: Bearer prynt_test_..." \ -H "Content-Type: application/json" \ -d '{ "template": "INVOICE", "environment": "staging", "parameters": { "DOCUMENT_ID": 18425 } }'ENVIRONMENT_NOT_FOUND404- Nessun ambiente con questa chiave nel workspace.
ENVIRONMENT_NOT_ALLOWED403- Una chiave test ha chiesto un ambiente di produzione.
DATA_SOURCE_NOT_CONFIGURED422- Una sorgente dati del template non ha una connessione per l'ambiente.
Chiavi live e test
- Ogni chiave API è live (
prynt_live_…) o test (prynt_test_…) e ha un ambiente predefinito, scelto quando la crei. - Se non scegli, le chiavi live usano production e le chiavi test development.
- Le chiavi test non possono mai usare un ambiente contrassegnato come produzione, né come predefinito né nella singola richiesta: un sistema di prova non può leggere per errore i dati di produzione.
Vedi Autenticazione.
Ambienti e versioni
Le versioni non vengono promosse da un ambiente all'altro: un template ha una sola versione corrente per tutto il workspace, e ogni ambiente genera quella (o la versione indicata nella richiesta). Per provare una nuova versione sui dati di staging prima che la stampino i tuoi sistemi di produzione, guarda l'anteprima del draft nel Designer con l'ambiente Staging selezionato, oppure pubblicala e generala dal tuo sistema di prova con "environment": "staging"; un rollback riporta subito la versione precedente.
Workspace separati per cicli di vita separati
"version": 7) finché non sei pronto, oppure tieni i template di prova e di produzione in workspace separati.