OCE Toolkit을 사용하여 테스트에서 운용으로 변경사항 전달

사이트 템플리트를 개발한 후 OCE Toolkit의 CLI(명령행 인터페이스)를 사용하여 Oracle Content Management 서버의 개발에서 테스트, 운용 환경으로 템플리트를 전달할 수 있습니다.

변경사항을 전달하려면 Toolkit 명령을 사용하여 사이트를 생성하고 개발, 테스트 및 운용 서버에서 수명 주기를 관리할 수 있습니다. 개발 환경에서 사이트를 변경하고 이 변경사항을 테스트 및 운용 환경으로 전달할 수 있습니다. 이 명령행 유틸리티 집합을 스크립팅 환경으로 통합하여 배치를 관리할 수도 있습니다. CLI 유틸리티를 사용하여 자산 및 구성요소와 같은 새 항목뿐만 아니라 기존 콘텐츠의 업데이트를 롤아웃할 수 있습니다.

다음 단계는 OCE Toolkit CLI를 사용하여 개발에서 테스트, 운용 환경으로 변경사항을 전달하는 방법을 보여줍니다.

  1. 동일한 저장소 및 지역화 정책으로 개발, 테스트 및 운용 서버를 설정합니다.

    개발 서버에서 테스트 서버로, 그 다음 운용 서버로 변경사항을 전달하려면 각각의 3대 서버에서 동일한 이름과 지역화 정책으로 저장소를 설정해야 합니다. 자산 저장소의 기본 지역화 정책은 en-US이지만, 3대 서버에서 모두 같다면 다른 것을 사용할 수 있습니다.

    자산 저장소 설정을 참조하십시오.

  2. Oracle Content Management에 개발, 테스트 및 운용 서버를 등록합니다.

    사이트로 변경사항을 전달하기 전에 각 서버를 등록해야 합니다. OCE Toolkit에서 제공한 cec register-server 명령으로 서버를 등록할 수 있습니다.

    cec register-server <name>

    다음 명령 옵션을 지정합니다.

    • -e <endpoint>는 서버 URL용

    • -u <user> 및 -p <password>는 서버 접속용

    • -t <type>은 선택사항, 서버 유형 설정. 기본값은 pod_ec입니다.

      Oracle Public Cloud의 Oracle Content Management 테넌트에 접속할 때 pod_ec만 사용하십시오.

    예를 들어, 다음 명령은 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 서버를 등록한 후 cec list Toolkit 명령으로 콘텐츠를 나열할 수 있습니다.

    다음 명령은 개발 서버의 콘텐츠를 나열합니다.

    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. 사이트 템플리트를 개발 서버로 업로드하고 템플리트에서 사이트를 생성합니다.

    cec create-template 명령으로 사이트 템플리트를 생성하고 개발 서버로 템플리트를 업로드합니다. 그런 다음 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. 개발 서버에 사이트를 게시하고 온라인으로 가져옵니다.

    사이트를 생성한 후 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로 사이트를 이동하려면 사이트를 패키징해야 합니다. 서버 간의 사이트 이동을 위한 패키징 모델은 템플리트입니다. 개발 서버에서 생성한 사이트에서 새 템플리트를 생성하고 템플리트를 다운로드합니다.

    다음 예제의 cec create-template-from-site 명령은 blog에서 blog2라는 사이트 템플리트를 생성합니다.

    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. 테스트 서버에 사이트를 게시하고 온라인으로 가져옵니다.

    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. DEV 서버의 blog 사이트를 변경한 경우 이미 UAT 서버에 생성한 사이트로 변경사항을 전달할 수 있습니다.

  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. DEV 서버에서 UAT 서버로 사이트를 이동할 때와 동일한 단계를 수행하여 UAT에서 PROD로 이동합니다.

  18. 운용 서버에 사이트를 생성하고 온라인으로 가져와서 변경사항을 확인합니다.

    cec list 명령을 사용하여 운용 사이트의 콘텐츠를 보고 개발 환경에서 수행한 변경사항이 포함되었는지 확인할 수 있습니다. 또한 사이트에서 변경사항이 운용 환경으로 전달되었는지 확인할 수 있습니다.