Propagare le modifiche dall'ambiente di test all'ambiente di produzione con OCE Toolkit

Dopo aver sviluppato un modello di sito, è possibile utilizzare l'interfaccia della riga di comando (CLI) di OCE Toolkit per propagare il modello dall'ambiente di sviluppo all'ambiente di test e all'ambiente di produzione nei server di Oracle Content Management.

Per propagare le modifiche, è possibile utilizzare i comandi del toolkit per creare i siti e gestirne il ciclo di vita nei server di sviluppo, test e produzione. È possibile apportare modifiche ai siti in un ambiente di sviluppo e propagare le modifiche agli ambienti di test e produzione. È inoltre possibile incorporare questo set di utility della riga di comando in ambienti di script per gestire le distribuzioni. Le utility CLI consentono di implementare nuovi elementi, ad esempio asset e componenti, nonché aggiornamenti del contenuto esistente.

La procedura riportata di seguito mostra come usare l'interfaccia della riga di comando di OCE Toolkit per propagare le modifiche dall'ambiente di test all'ambiente di produzione.

  1. Impostare i server di sviluppo, test e produzione con lo stesso repository e lo stesso criterio di localizzazione.

    Per propagare le modifiche da un server di sviluppo a un server di test e quindi a un server di produzione, è necessario impostare un repository con lo stesso nome e lo stesso criterio di localizzazione in ognuno dei tre server. Il criterio di localizzazione predefinito per il repository degli asset è en-US, ma è possibile utilizzarne uno diverso a condizione che sia lo stesso in tutti e tre i server.

    Vedere Impostare i repository degli asset.

  2. Registrare i server di sviluppo, test e produzione con Oracle Content Management.

    Prima di propagare le modifiche apportate a un sito, è necessario registrare ognuno dei server. Per registrare un server si utilizza il comando cec register-server fornito da OCE Toolkit:

    cec register-server <name>

    Specificare le opzioni di comando seguenti:

    • -e <endpoint> per ottenere l'URL del server;

    • -u <user> e -p <password> per connettersi al server;

    • -t <type>, che è facoltativa, per impostare il tipo di server. Il valore predefinito è pod_ec.

      Durante la connessione a un tenant Oracle Content Management su Oracle Public Cloud, usare solo pod_ec.

    Ad esempio, il comando seguente registra un server che è un tenant in Oracle Public Cloud:

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

    Il comando seguente registra un'istanza di sviluppo standalone di Oracle Content Management:

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

    Dopo aver registrato un server di Oracle Content Management:, è possibile elencarne il contenuto con il comando cec list del toolkit.

    Il comando seguente elenca il contenuto di un server di sviluppo:

    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. Caricare un modello di sito nel server di sviluppo e creare un sito dal modello.

    È possibile creare un modello di sito con il comando cec create-template, quindi caricare il modello creato nel server di sviluppo. Successivamente sarà possibile creare un sito dal modello con il comando cec create-site. I comandi seguenti creano e caricano un modello:

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

    Il comando seguente crea il sito denominato blog dal modello caricato:

    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. Pubblicare il sito e metterlo in linea nel server di sviluppo.

    Dopo aver creato un sito, è possibile utilizzare il comando cec control-site per pubblicarlo e metterlo in linea:

    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. Per spostare un sito dal server DEV (di sviluppo) al server UAT (di test), è necessario raggruppare tutti gli elementi del sito. Il modello di creazione package per lo spostamento di siti tra server diversi è il modello. Creare un nuovo modello dal sito creato nel server di sviluppo e scaricare il modello.

    Il comando cec create-template-from-site nell'esempio seguente crea il modello di sito denominato blog2 da blog.

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

    Scaricare il modello creato dal sito di sviluppo utilizzando il comando 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. Caricare il modello per creare i tipi di contenuto e le mappe dei layout di contenuto.

    cec upload-template blog2 --server UAT
  7. Caricare il modello ma escludere gli elementi di contenuto (modello di contenuto) dal modello.

    cec upload-template blog2 --server UAT -x

    Questa operazione è necessaria per creare un sito con contenuto che abbia gli stessi GUID del sito originale. Quando si crea un sito da un modello con contenuto, tutto il contenuto nel nuovo sito avrà i nuovi GUID. Poiché si desidera consentire l'aggiornamento del contenuto anziché creare nuovo contenuto, è necessario escludere il contenuto dal modello.

  8. Creare il sito dal modello.

    cec create-site blog -t blog2 -r r -l "en-US" -d "end-US" --server UAT
  9. Caricare il modello di contenuto nel canale e nella raccolta del sito. È necessario farlo perché è stato escluso dal modello nel passo 7.

    cec upload-content blog2 -t -r r -c blog -l "blog site" --server UAT 
  10. Pubblicare il sito e metterlo in linea nel server di test.

    Per pubblicare il sito e metterlo in linea, utilizzare il comando cec control-site:

    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. Se in seguito si apportano modifiche al sito blog nel server DEV, sarà possibile propagare le modifiche al sito già creato nel server UAT.

  12. Creare un altro modello dal sito in modo che il modello contenga le modifiche apportate.

    cec create-template-from-site blog3 -s blog --server DEV
  13. Scaricare il modello.

    cec download-template blog3 -s DEV
  14. Caricare il modello e creare un sito da esso per propagare le modifiche all'ambiente di test.

    cec upload-template blog3 -s UAT

    Questo comando crea o aggiorna tutti i componenti e i temi che sono stati modificati, ma esclude il contenuto.

  15. Ora utilizzare il comando update-site per selezionare il contenuto e aggiornare le pagine.

    cec update-site blog -t blog3 - UAT

    Ad esempio:

    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. Controllare il sito per verificare che le modifiche siano state propagate.

  17. Ripetere la procedura utilizzata per spostare il sito dal server DEV al server UAT per effettuare lo spostamento dal server UAT al server PROD.

  18. Creare il sito nel server di produzione, metterlo in linea e verificare le modifiche.

    È possibile utilizzare il comando cec list per visualizzare il contenuto del sito di produzione e assicurarsi che includa le modifiche apportate nell'ambiente di sviluppo. È inoltre possibile controllare il sito per verificare che le modifiche siano state propagate all'ambiente di produzione.