Αναπαραγωγή αλλαγών από το περιβάλλον δοκιμών στο περιβάλλον παραγωγής με το OCE Toolkit

Αφού αναπτύξετε ένα πρότυπο τοποθεσίας, μπορείτε να χρησιμοποιήσετε το περιβάλλον γραμμής εντολών (CLI) του OCE Toolkit για να αναπαραγάγετε το πρότυπο, από την ανάπτυξη στη δοκιμή στην παραγωγή, στους δικούς σας Oracle Content Management server.

Για να αναπαραγάγετε αλλαγές, μπορείτε να χρησιμοποιήσετε εντολές του Toolkit για τη δημιουργία τοποθεσιών και τη διαχείριση των κύκλων ζωής τους στους server ανάπτυξης, δοκιμής και παραγωγής. Μπορείτε να κάνετε αλλαγές σε τοποθεσίες σε ένα περιβάλλον ανάπτυξης και να αναπαράγετε αυτές τις αλλαγές στα περιβάλλοντα δοκιμών και παραγωγής. Μπορείτε επίσης να ενσωματώσετε αυτό το σύνολο βοηθητικών προγραμμάτων γραμμής εντολών στα περιβάλλοντα δημιουργίας αρχείων εντολών για να διαχειριστείτε τις αναπτύξεις σας. Με τα βοηθητικά προγράμματα CLI, μπορείτε να κυκλοφορήσετε νέα στοιχεία, όπως πόρους και συστατικά στοιχεία, καθώς και ενημερώσεις του υπάρχοντος περιεχομένου.

Τα ακόλουθα βήματα δείχνουν πώς να χρησιμοποιήσετε το OCE Toolkit CLI για να αναπαραγάγετε τις αλλαγές σας από την ανάπτυξη στη δοκιμή στην παραγωγή:

  1. Ρυθμίστε server ανάπτυξης, δοκιμής και παραγωγής με το ίδιο αποθετήριο και την ίδια πολιτική τοπικής προσαρμογής.

    Για να αναπαραγάγετε αλλαγές από έναν server ανάπτυξης σε έναν server δοκιμής και έπειτα σε έναν server παραγωγής, χρειάζεται να ρυθμίσετε ένα αποθετήριο με το ίδιο όνομα και την ίδια πολιτική τοπικής προσαρμογής σε καθέναν από τους τρεις server. Η προεπιλεγμένη πολιτική τοπικής προσαρμογής για το αποθετήριο πόρων είναι en-US, αλλά μπορείτε να χρησιμοποιήσετε μια διαφορετική, εάν είναι ίδια και στους τρεις server.

    Ανατρέξτε στην ενότητα Ρύθμιση αποθετηρίων πόρων.

  2. Εγγράψτε τους server ανάπτυξης, δοκιμής και παραγωγής στο Oracle Content Management.

    Προτού αναπαραγάγετε αλλαγές σε μια τοποθεσία, πρέπει να εγγράψετε καθέναν από τους server. Μπορείτε να εγγράψετε έναν server με την εντολή cec register-server που παρέχεται από το OCE Toolkit:

    cec register-server <name>

    Καθορίστε τις παρακάτω επιλογές εντολών:

    • -e <endpoint> για τη διεύθυνση τοποθεσίας server

    • -u <user> και -p <password> για τη σύνδεση στον server

    • -t <type>, η οποία είναι προαιρετική, για τη ρύθμιση του τύπου server. Η προεπιλεγμένη τιμή είναι pod_ec.

      Κατά τη σύνδεση σε έναν μισθωτή του Oracle Content Management στο Oracle Public Cloud, χρησιμοποιήστε μόνο την εντολή pod_ec.

    Για παράδειγμα, η ακόλουθη εντολή εγγράφει έναν server που είναι μισθωτής στο Oracle Public cloud:

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

    Η επόμενη εντολή εγγράφει ένα αυτόνομο στιγμιότυπο ανάπτυξης του Oracle Content Management:

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

    Αφού εγγράψετε έναν Oracle Content Management server, μπορείτε να εμφανίσετε σε λίστα τα περιεχόμενά του με την εντολή cec list του Toolkit.

    Η ακόλουθη εντολή παραθέτει τα περιεχόμενα ενός server ανάπτυξης:

    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. Κάντε αποστολή ενός προτύπου τοποθεσίας στον server ανάπτυξης και δημιουργήστε μια τοποθεσία από το πρότυπο.

    Μπορείτε να δημιουργήσετε ένα πρότυπο τοποθεσίας με την εντολή cec create-template και έπειτα να αποστείλετε το πρότυπο στον server ανάπτυξης. Στη συνέχεια, μπορείτε να δημιουργήσετε μια τοποθεσία από το πρότυπο με την εντολή cec create-site. Οι ακόλουθες εντολές δημιουργούν ένα πρότυπο και κάνουν αποστολή του προτύπου:

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

    Η επόμενη εντολή δημιουργεί μια τοποθεσία με όνομα blog από το απεσταλμένο πρότυπο:

    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. Δημοσιεύστε την τοποθεσία και θέστε την σε σύνδεση στον server ανάπτυξης.

    Αφού δημιουργήσετε μια τοποθεσία, μπορείτε να χρησιμοποιήσετε την εντολή cec control-site για να δημοσιεύσετε την τοποθεσία και να τη θέσετε σε σύνδεση:

    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. Για να μετακινήσετε μια τοποθεσία από DEV σε UAT, πρέπει να συσκευάσετε την τοποθεσία. Το μοντέλο συσκευασίας για τη μετακίνηση τοποθεσιών μεταξύ server είναι το πρότυπο. Δημιουργήστε ένα νέο πρότυπο από την τοποθεσία που δημιουργήσατε στον server ανάπτυξης και κάντε λήψη του προτύπου.

    Η εντολή cec create-template-from-site στο ακόλουθο παράδειγμα δημιουργεί ένα πρότυπο τοποθεσίας με όνομα blog2 από blog.

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

    Κάντε λήψη του προτύπου που δημιουργήσατε από την τοποθεσία ανάπτυξης με την εντολή 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. Κάντε αποστολή του προτύπου για να δημιουργήσετε τους τύπους περιεχομένου και τους χάρτες διάταξης περιεχομένου.

    cec upload-template blog2 --server UAT
  7. Κάντε αποστολή του προτύπου αλλά εξαιρέστε τα στοιχεία περιεχομένου (πρότυπο περιεχομένου) από το πρότυπο.

    cec upload-template blog2 --server UAT -x

    Αυτό θέλετε να το κάνετε για να δημιουργήσετε μια τοποθεσία με περιεχόμενο που έχει τα ίδια GUID με την αρχική τοποθεσία. Όταν δημιουργείτε μια τοποθεσία από ένα πρότυπο που περιέχει περιεχόμενο, όλο το περιεχόμενο στη νέα τοποθεσία θα έχει νέα GUID. Επειδή θέλουμε να επιτρέψουμε την ενημέρωση του περιεχομένου αντί για τη δημιουργία νέου περιεχομένου, θα πρέπει να εξαιρέσετε το περιεχόμενο από το πρότυπο.

  8. Δημιουργήστε την τοποθεσία από το πρότυπο.

    cec create-site blog -t blog2 -r r -l "en-US" -d "end-US" --server UAT
  9. Κάντε αποστολή του προτύπου περιεχομένου στο κανάλι της τοποθεσίας και στη συλλογή. Αυτό πρέπει να το κάνετε επειδή το εξαιρέσατε από το πρότυπο στο βήμα 7.

    cec upload-content blog2 -t -r r -c blog -l "blog site" --server UAT 
  10. Δημοσιεύστε την τοποθεσία και θέστε την σε σύνδεση στον server δοκιμής.

    Χρησιμοποιήστε την εντολή 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. Εάν τότε κάνετε αλλαγές στο blog της τοποθεσίας σας στον DEV server, μπορείτε να αναπαραγάγετε τις αλλαγές στην τοποθεσία που έχετε ήδη δημιουργήσει στον UAT server.

  12. Δημιουργήστε ένα άλλο πρότυπο από την τοποθεσία σας, ώστε το πρότυπο να έχει τις αλλαγές σας.

    cec create-template-from-site blog3 -s blog --server DEV
  13. Κάντε λήψη του προτύπου.

    cec download-template blog3 -s DEV
  14. Κάντε αποστολή του προτύπου και δημιουργήστε μια τοποθεσία από αυτό, ώστε να αναπαραγάγετε τις αλλαγές στο περιβάλλον δοκιμής.

    cec upload-template blog3 -s UAT

    Αυτή η εντολή δημιουργεί ή ενημερώνει τυχόν συστατικά στοιχεία και θέματα που έχουν αλλάξει, αλλά εξαιρεί το περιεχόμενο.

  15. Τώρα χρησιμοποιήστε την εντολή update-site για να επιλέξετε το περιεχόμενο και να ενημερώσετε τις σελίδες.

    cec update-site blog -t blog3 - UAT

    Για παράδειγμα:

    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. Ελέγξτε την τοποθεσία για να επαληθεύσετε ότι οι αλλαγές αναπαράχθηκαν.

  17. Κάντε τα ίδια βήματα για να μεταβείτε από τον UAT server στον PROD server όπως κάνατε για να μετακινήσετε την τοποθεσία από τον DEV στον UAT.

  18. Δημιουργήστε την τοποθεσία στον server παραγωγής, θέστε την σε σύνδεση και επαληθεύστε τις αλλαγές.

    Μπορείτε να χρησιμοποιήσετε την εντολή cec list για να προβάλετε τα περιεχόμενα της τοποθεσίας παραγωγής και να διασφαλίσετε ότι περιλαμβάνει τις αλλαγές που κάνατε στο περιβάλλον ανάπτυξης. Επίσης, μπορείτε να ελέγξετε την τοποθεσία για να επαληθεύσετε ότι οι αλλαγές έχουν αναπαραχθεί στην παραγωγή.