CloudControl est une plate-forme cloud un peu comme Heroku. La création d’un module complémentaire cloudControl est très similaire à la création d’un module complémentaire Heroku, mais il existe quelques différences. Cet article explique ces différences.

Introduction

Le module complémentaire de GroupDocs pour cloudControl est un outil Web qui peut être installé sur n’importe quelle application Web pour fournir la fonctionnalité GroupDocs :

  • Créez un nouvel utilisateur GroupDocs avec un forfait gratuit et obtenez l’ID utilisateur et la clé privée de cet utilisateur. Cela se fait automatiquement lorsque le module complémentaire est installé.
  • L’utilisateur peut modifier le plan de paiement à l’aide de la fonction de changement de plan du module complémentaire.
  • Accès à toutes les méthodes de l’API GroupDocs à l’aide de l’ID client et de la clé privée (que vous pouvez obtenir à partir du module complémentaire). Nous avons créé cet exemple qui montre comment utiliser le module complémentaire et le SDK GroupDocs Python pour certaines actions de base.

Exigences

  • Outil Kensa
  • outil cloudControl
  • Python 2.7
  • application cloudControl

Création du module complémentaire

Le processus de création d’un module complémentaire cloudControl est le même que pour la création d’un module complémentaire Heroku, mais, comme je l’ai dit plus tôt, avec quelques différences. Nous n’entrerons pas dans la façon de créer l’add-on car Heroku a beaucoup de documentation pour cela et vous décidez comment vous le construisez. Je vais seulement montrer quelles sont exactement les différences. Supposons que nous ayons déjà un module complémentaire Heroku sympa et que nous souhaitions le reconstruire pour cloudControl :

  1. Installez les outils Kensa et cloudControl. Ils vous aident à gérer les applications complémentaires et cloudControl. Découvrez comment installer l’outil cloudControl.
  2. Après avoir installé les outils, modifiez le fichier addon-manifest.json. Celui-ci contient toutes les informations de base pour l’installation du module complémentaire, telles que les variables d’environnement qui seront créées et d’où télécharger et installer les fichiers complémentaires.
    • Avant de télécharger le fichier addon-manifest.json modifié, définissez la variable d’environnement ADDONS\URL=https://api.cloudcontrol.com:.
    • Spécifiez le serveur de production. Heroku vous a demandé de spécifier le serveur de production, puis a construit l’URL utilisée pour provisionner votre module complémentaire en y ajoutant “/heroku/resources”. Maintenant, fournissez un hachage au lieu d’une chaîne et remplacez “/heroku/resources” par “/cloudcontrol/resources”.
    • Ajoutez “sso\salt”:“PASSWORD” et “production”: {“base\url”:“https://your.add-on.com/cloudcontrol/resources", “sso\url”:“https:/ /your.add-on.com/cloudcontrol/resources”}.
  3. Remplacez “heroku\id” par “cloudcontrol\id” dans les fichiers complémentaires.
  4. Lorsque les modifications ont été apportées, testez l’add-on avec les tests Kensa en l’exécutant dans la console : kensa test provision et kensa deprovision test. [caption id=“attachment\3488” align=“alignnone” width=“600” caption=“Tests Kensa”]
  5. Si les tests réussissent, poussez addon-manifest.json vers cloudControl avec kensa push -f addon-manifest.json. [caption id=“attachment\3489” align=“alignnone” width=“600” caption=“Kensa push”]
  6. Installez le module complémentaire sur votre application cloudControl : cctrlapp VOTRE\APP\NOM addon.add VOTRE\ADDON\NOM.PLANE

Nous avons maintenant publié un module complémentaire cloudControl et l’avons installé. Jusqu’ici, tout va bien. Comment obtenir les variables d’environnement créées par le module complémentaire ? Découvrons-le.

Comment obtenir des variables d’environnement

Dans Heroku, c’est facile. Par exemple, en Python, nous pouvons le faire avec la ligne os.environ[‘VARIABLE NAME’]. Si vous essayez ceci dans cloudControl, vous n’obtenez que quelques propriétés Python de base et non vos variables complémentaires. Dans cloudControl, toutes les variables d’environnement créées par le module complémentaire sont écrites dans le fichier json que nous pouvons obtenir en utilisant CRED\FILE. Il s’agit du nom d’une propriété système qui contient le chemin d’accès au fichier JSON avec les variables d’environnement. Pour obtenir nos données, il nous suffit de lire ce fichier JSON et de décoder la chaîne JSON. En Python, nous pouvons le faire avec ce code :

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

C’est ainsi que nous obtenons l’ID client et la clé privée de l’utilisateur du module complémentaire GroupDocs. Et c’est tout. Vous savez maintenant quelle est la différence entre les modules complémentaires Heroku et cloudControl.