Propagation des modifications de l'environnement de test vers l'environnement de production avec OCE Toolkit

Une fois que vous avez mis au point un modèle de site, vous pouvez utiliser la commande de l'interface de ligne de commande OCE Toolkit pour propager le modèle de l'environnement de développement à l'environnement de test et à l'environnement de production sur les serveurs Oracle Content Management.

Afin de propager les modifications, vous pouvez utiliser les commandes d'OCE Toolkit pour créer les sites et gérer leur cycle de vie sur les serveurs de développement, de test et de production. Vous pouvez modifier les sites dans un environnement de développement et propager les modifications vers les environnements de test et de production. Vous pouvez également incorporer cet ensemble d'utilitaires de ligne de commande aux environnements de génération de scripts afin de gérer les déploiements. Grâce aux utilitaires de l'interface de ligne de commande, vous pouvez déployer de nouveaux éléments, tels que des ressources et des composants, ainsi que des mises à jour du contenu existant.

Les étapes suivantes montrent comment utiliser l'interface de ligne de commande OCE Toolkit pour propager vos modifications d'un serveur de développement à un serveur de test et d'un serveur de test à un serveur de production :

  1. Configurez des serveurs de développement, de test et de production avec le même répertoire et la même stratégie de localisation.

    Pour propager les modifications d'un serveur de développement vers un serveur de test, puis d'un serveur de test à un serveur de production, vous devez configurer un référentiel portant le même nom et contenant la même stratégie de localisation sur les trois serveurs. La stratégie de localisation par défaut pour le répertoire de ressources est en-US, mais vous pouvez utiliser n'importe quelle autre stratégie du moment qu'elle est identique dans les trois serveurs.

    Reportez-vous à Configuration de référentiels de ressources.

  2. Inscrivez vos serveurs de développement, de test et de production auprès d'Oracle Content Management.

    Pour propager les modifications vers un site, vous devez inscrire chacun des serveurs. Vous pouvez inscrire un serveur à l'aide de la commande cec register-server fournie par OCE Toolkit :

    cec register-server <name>

    Indiquez les options de commande suivantes :

    • -e <endpoint> pour l'URL du serveur

    • -u <user> et -p <password> pour la connexion au serveur

    • -t <type> (facultatif) pour définir le type de serveur. La valeur par défaut est pod_ec.

      Lors de la connexion à un locataire Oracle Content Management sur Oracle Public Cloud, utilisez uniquement pod_ec.

    Par exemple, la commande suivante inscrit un serveur (locataire) sur Oracle Public Cloud :

    cec register-server DEV -e https://DEV.example.com -u user1 -p <password>
    

    La commande suivante inscrit une instance de développement autonome d'Oracle Content Management :

    cec register-server DEV -e https://DEV.git.oraclecorp.example.com -u user1 -p <password>

    Après l'inscription d'un serveur Oracle Content Management, vous pouvez répertorier son contenu à l'aide de la commande cec list d'OCE Toolkit.

    La commande suivante répertorie le contenu d'un serveur de développement :

    cec-compontents> cec list -s DEV
     - Logged in to remote server: <host:port>
    Channels:
      Name                           Token
      StarterSite                    <site-id>
    
    Components:
      Name                           Type                       Published
      FooterBar                      Component group
      StarterComponent               Local component
      StarterFooter                  Component group
      StarterNavMenu                 Local component
    
    Localization policies:
      Name                           Required languages         Optional Languages
      en-US                          en-US
    
    Repositories:
      Name
      r
    
    Sites:                           Theme                      Type        Published   Online
      Name                           StarterSiteTheme           Enterprise
    
    Templates:
      Name                           Theme                      Type
      StarterTemplate                StarterTheme               Standard
  3. Téléchargez un modèle de site vers votre serveur de développement et créez un site à partir du modèle.

    Vous pouvez créer un modèle de site à l'aide de la commande cec create-template, puis le télécharger vers le serveur de développement. Vous pouvez ensuite créer le site à partir du modèle à l'aide de la commande cec create-site. Les commandes suivantes créent un modèle et le téléchargent vers le serveur :

    - cec create-template blog -f BlogTemplate
    - cec upload-template blog -s DEV

    La commande suivante crée un site nommé blog à partir du modèle téléchargé :

    cec-components> cec create-site blog -t blog -r r -l "en-US" -d "en-US" --server DEV
     - Logged in to remote server: <https:<host:<port>
     - establish user session
     - get template
     - get repository
     - get localization policy
     - creating enterprise site . . .
       name                 blog
       template             blog
       site prefix          blog
       repository           r
       localization policy  en-US
       default language     en-US
     - submit create site site
     - create site in process: percentage 95
     - create site in process: percentage 95
     - create site in process: percentage 95
     - create site in process: percentage 95
     - create site in process: percentage 95
     - site created
  4. Publiez le site, puis mettez-le en ligne sur votre serveur de développement.

    Une fois le site créé, vous pouvez utiliser la commande cec control-site pour le publier et le mettre en ligne :

    cec-components> cec control-site
    Usage: cec contrl-site <action>
    Perform <action> on site in CEC server. Specify the site with -s <site> Specify the server with -r <server>.
    
      publish
      unpublish
      bring-online
      take-offline
    
    Options: 
      --site, -s    <site> Site
      --server, -r  <server> The registered CEC server
      --help, -h    Show help
    
    Examples:
      cec control-site publish -s Site1              Publish site Site1 on the server
      cec control-site publish -s Site1 -r UAT       Publish site Site1 on the registered server UAT
      cec control-site unpublish -s Site1 -r UAT     Inpublish site Site1 on the registered server UAT
      cec control-site bring-online -s Site1 -r UAT  Bring site Site1 online on the registered server UAT
      cec control-site take-offline -s Site1 -r UAT  Take site Site1 offline on the registered server UAT
    
    Not enough non-option arguments: got 0, need at least 1
    cec-components> cec control-site publish --site blog --server DEV
     - Logged in to the remote server: https://<host>:<port>
     - establish user session
     - get site: runtimeStatus: offline publishStatus: unpublished
     - submit publish site
     - publish in process: percentage 20
     - publish in process: percentage 40
     - publish in process: percentage 49
     - publish in process: percentage 49
     - publish in process: percentage 50
     - publish in process: percentage 50
    
  5. Pour déplacer un site du serveur de développement vers le serveur de test, vous devez packager le site. Le modèle de package pour le déplacement des sites entre les serveurs correspond au modèle. Créez un modèle à partir du site que vous avez créé sur le serveur de développement, puis téléchargez-le en local.

    Dans l'exemple suivant, la commande cec create-template-from-site crée un modèle de site nommé blog2 à partir du site blog.

    cec create-template-from-site blog2 -s blog

    Téléchargez en local le modèle créé à partir du site de développement à l'aide de la commande cec download-template :

    cec-components: cec download-template blog2 --server DEV
     - Logged in to remote server: https://<host>:<port>
     - establish user session
     - export template
     - template download to /Users/<user-name>/devenv/git/webclient/developer/sites-toolkit/cec-components/dist/blog2.zip
     - the template will be at /Users/<user-name>/devenv/git/webclient/developer/sites-toolkit/cec-components/src/main/templates/blog2
     - the theme for the template will be at /Users/<user-name>/devenv/git/webclient/developer/sites-toolkit/cec-components/src/main/themes/blogTheme
     - create link _scs_theme_root_
     - create link _scs_design_name_
     - override component /Users/<user-name>devenv/git/webclient/developer/sites-toolkit/cec-components/src/main/components/Starter-Blog-Author-Summary
     - override component /Users/<user-name>devenv/git/webclient/developer/sites-toolkit/cec-components/src/main/components/Starter-Blog-Post-Content
     - override component /Users/<user-name>devenv/git/webclient/developer/sites-toolkit/cec-components/src/main/components/Starter-Blog-Post-Header
     - override component /Users/<user-name>devenv/git/webclient/developer/sites-toolkit/cec-components/src/main/components/Starter-Blog-Post-Search-Result
     - override component /Users/<user-name>devenv/git/webclient/developer/sites-toolkit/cec-components/src/main/components/Starter-Blog-Post-Post-Sidebar
     - override component /Users/<user-name>devenv/git/webclient/developer/sites-toolkit/cec-components/src/main/components/Starter-Blog-Post-Summary
     - set themeName to blogTheme in siteinfo.json
     - unzip tmplate content file
     *** template is ready to test: https://localhost:8085/templates/blog2
    cec upload-template blog2 --server UAT
  6. Téléchargez le modèle vers le serveur pour créer les types de contenu et les cartes de présentation de contenu.

    cec upload-template blog2 --server UAT
  7. Téléchargez le modèle vers le serveur en excluant les éléments de contenu (modèle de contenu) du modèle.

    cec upload-template blog2 --server UAT -x

    Cette opération est utile pour créer un site dont le contenu présente les mêmes GUID que le site d'origine. Lorsque vous créez un site à partir d'un modèle qui comporte du contenu, tout le contenu du nouveau site utilise de nouveaux GUID. Pour pouvoir mettre à jour le contenu plutôt que de devoir le créer, vous devez exclure le contenu du modèle.

  8. Créez le site à partir du modèle.

    cec create-site blog -t blog2 -r r -l "en-US" -d "end-US" --server UAT
  9. Téléchargez le modèle de contenu vers le canal et la collection du site. Vous devez effectuer cette opération car vous avez exclu le contenu du modèle à l'étape 7.

    cec upload-content blog2 -t -r r -c blog -l "blog site" --server UAT 
  10. Publiez le site, puis mettez-le en ligne sur votre serveur de test.

    Utilisez la commande cec control-site pour publier le site et le mettre en ligne :

    cec-components> cec control-site publish --site blog --server UAT
     - Logged in to the remote server: https://<host>:<port>
     - establish user session
     - get site: runtimeStatus: offline publishStatus: unpublished
     - submit publish site
     - publish in process: percentage 20
     - publish in process: percentage 40
     - publish in process: percentage 49
     - publish in process: percentage 49
     - publish in process: percentage 50
     - publish in process: percentage 50
     - publish blob finished
  11. Si vous apportez ultérieurement des modifications à votre site blog sur le serveur de développement, vous pourrez propager les modifications au site que vous avez créé sur le serveur de test.

  12. Créez un autre modèle à partir du site pour qu'il prenne en compte vos modifications.

    cec create-template-from-site blog3 -s blog --server DEV
  13. Téléchargez le modèle en local.

    cec download-template blog3 -s DEV
  14. Téléchargez le modèle vers le serveur et créez un site à partir de ce modèle pour propager les modifications à votre environnement de test.

    cec upload-template blog3 -s UAT

    Cette commande crée ou met à jour tous les composants et les thèmes qui ont été modifiés tout en excluant le contenu.

  15. Utilisez ensuite la commande update-site pour choisir le contenu et mettre à jour les pages.

    cec update-site blog -t blog3 - UAT

    Par exemple :

    cec-components> cec update-site blog -t blog3 --server UAT
    Updating site: blog3
     - Logged in to remote server: https://<host>:<port>
     - pages               : updating file# 6    of 6    files
     - content             : updating file# 3    of 3    files
     - System Files        : updating file# 5    of 5    files
     - controller          : no files in update, removing files on server
     - favicons            : no files in update, removing files on server
     - misc                : no files in update, removing files on server
     - seo                 : no files in update, removing files on server
     - system              : no files in update, removing files on server
     - created content file /Users/<user-name>/devenv/git/webclient/developer/sites-toolkit/cec-compnents/dist/blog3_export.zip
     - upload content file
     - get CSRF token
     - submit import job, updating content
     - import job in progress. . .
     - import job in progress. . .
     - import job in progress. . .
     - content imported:
    Update Site Results:
     - Site Pages          : completed with 0 errors.
     - Embedded Content    : completed with 0 errors.
     - System Files        : completed with 0 errors.
     - Settings Files      : completed with 0 errors.
     - Content Update      : completed with 0 errors.
  16. Consultez le site pour vérifier si les modifications ont été propagées.

  17. Répétez les étapes précédentes pour propager les modifications du serveur de test au serveur de production, comme vous l'avez fait pour les serveurs de développement et de test.

  18. Créez le site sur votre serveur de production, mettez-le en ligne et vérifiez que les modifications ont été propagées.

    Vous pouvez utiliser la commande cec list pour visualiser le contenu de votre site de production et vous assurer qu'il comprend les modifications que vous avez apportées dans l'environnement de développement. Vous pouvez également vérifier le site pour voir si les modifications ont été propagées vers le serveur de production.