CloudControl è una piattaforma cloud molto simile a Heroku. La creazione di un componente aggiuntivo cloudControl è molto simile alla creazione di un componente aggiuntivo Heroku, ma ci sono alcune differenze. Questo articolo spiega queste differenze.

introduzione

Il componente aggiuntivo di GroupDocs per cloudControl è uno strumento Web che può essere installato su qualsiasi applicazione Web per fornire funzionalità di GroupDocs:

  • Crea un nuovo utente GroupDocs con un piano gratuito e ottieni l’ID utente e la chiave privata per questo utente. Questo viene fatto automaticamente quando il componente aggiuntivo è installato.
  • L’utente può modificare il piano di pagamento utilizzando la funzione di modifica del piano del componente aggiuntivo.
  • Accesso a qualsiasi metodo dall’API GroupDocs utilizzando l’ID client e la chiave privata (che puoi ottenere dal componente aggiuntivo). Abbiamo creato questo esempio che mostra come utilizzare il componente aggiuntivo e GroupDocs Python SDK per alcune azioni di base.

Requisiti

  • Strumento Kensa
  • strumento cloudControl
  • Python 2.7
  • applicazione cloudControl

Creazione del componente aggiuntivo

Il processo per la creazione di un componente aggiuntivo cloudControl è lo stesso di creazione di un componente aggiuntivo Heroku, ma, come ho detto prima, con un paio di differenze. Non entreremo nel dettaglio su come creare l’add-on perché Heroku ha molta documentazione per questo e tu decidi come costruirlo. Mostrerò solo quali sono esattamente le differenze. Supponiamo di avere già un fantastico componente aggiuntivo Heroku e di volerlo ricostruire per cloudControl:

  1. Installa gli strumenti Kensa e cloudControl. Ti aiutano a gestire le applicazioni aggiuntive e cloudControl. Scopri come installare lo strumento cloudControl.
  2. Dopo aver installato gli strumenti, modificare il file addon-manifest.json. Contiene tutte le informazioni di base per l’installazione del componente aggiuntivo, ad esempio quali variabili di ambiente verranno create e da dove scaricare e installare i file del componente aggiuntivo.
    • Prima di caricare il file addon-manifest.json modificato, impostare la variabile di ambiente ADDONS\URL=https://api.cloudcontrol.com:.
    • Specificare il server di produzione. Heroku ti ha richiesto di specificare il server di produzione, quindi ha creato l’URL utilizzato per eseguire il provisioning del tuo componente aggiuntivo aggiungendovi “/heroku/resources”. Ora, fornisci un hash invece di una stringa e cambia “/heroku/resources” in “/cloudcontrol/resources”.
    • Aggiungi “sso\salt”:“PASSWORD” e “production”: {“base\url”:“https://your.add-on.com/cloudcontrol/resources", “sso\url”:“https:/ /your.add-on.com/cloudcontrol/resources”}.
  3. Cambia “heroku\id” in “cloudcontrol\id” nei file aggiuntivi.
  4. Una volta apportate le modifiche, testare l’add-on con i test Kensa eseguendolo nella console: kensa test provision e kensa deprovision test. [caption id=“attachment\3488” align=“alignnone” width=“600” caption=“Kensa test”]
  5. Se i test vengono superati, esegui il push di addon-manifest.json su cloudControl con kensa push -f addon-manifest.json. [caption id=“attachment\3489” align=“alignnone” width=“600” caption=“Kensa push”]
  6. Installa il componente aggiuntivo nella tua applicazione cloudControl: cctrlapp TUA\APP\NOME addon.add TUO\ADDON\NOME.PLANE

Ora abbiamo pubblicato un componente aggiuntivo cloudControl e lo abbiamo installato. Fin qui tutto bene. Come otteniamo le variabili di ambiente create dal componente aggiuntivo? Scopriamolo.

Come ottenere le variabili d’ambiente

In Heroku, questo è facile. Ad esempio, in Python possiamo farlo con la riga os.environ[‘VARIABLE NAME’]. Se provi questo in cloudControl, ottieni solo alcune proprietà Python di base e non le tue variabili aggiuntive. In cloudControl, tutte le variabili di ambiente create dal componente aggiuntivo vengono scritte nel file json che possiamo ottenere utilizzando CRED\FILE. Questo è il nome di una proprietà di sistema che contiene il percorso del file JSON con le variabili di ambiente. Per ottenere i nostri dati, tutto ciò di cui abbiamo bisogno è leggere questo file JSON e decodificare la stringa JSON. In Python, possiamo farlo con questo codice:

credentialsFile = os.getenv('CRED\_FILE')
    credentials = open(credentialsFile)
    data = json.load(credentials)
    credentials.close()
    clientId = data\['GROUPDOCS'\]\['GROUPDOCS\_CID'\]
    privateKey = data\['GROUPDOCS'\]\['GROUPDOCS\_PKEY'\]

È così che otteniamo l’ID client e la chiave privata dell’utente del componente aggiuntivo GroupDocs. E questo è tutto. Ora sai qual è la differenza tra i componenti aggiuntivi di Heroku e cloudControl.