Header Ads Widget

Ticker

6/recent/ticker-posts

Hướng dẫn chỉnh lại file cmsshell.sh trong OpenCMS để sử dụng trên Ubuntu

Keyword: How to edit file cmsshell.sh in OpenCMS to use on Ubuntu
Bài viết này mình nghĩ nó sẻ rất hữu ích đối với những bạn đã và đang làm DevOps khi đụng chạm với Project OpenCMS bởi lẽ muốn build với Jenkins thì chỉ có cách là sử dụng command line của OpenCMS để thực thi một số vấn đề một cách tự động.
Nếu như bạn không sửa thì nó sẻ thông báo lỗi sau: Error: Could not find or load main class org.opencms.main.CmsShell
Và cách giải quyết nó rất là đơn giản chỉ cần edit lại file cmsshell.sh những chỗ sau
Ta chỉ việc ẩn pushd và popd lại thôi còn thăng OPENCMS_BASE=`dirs +0` thì chỉ việc sửa lại như hình trên là pwd là ngon lành cành đào, tiếp đến ta remove 1 trong 2 file  jlanConfig và edit chúng lại, thực hiện truy cập thư mục config các bạn chú ý dưới hình
Hình trên là do mình đã Edit nó lại nên nó sẻ như vậy do mình dùng ubuntu nên mình đã edit name file jlanConfig.xml.linux thành jlanConfig.xml thôi, như vậy là ok rồi đấy, còn nếu ai sử dụng Windows thì chỉ việc edit name của file Windows lại thôi nhé bây giờ để thực hiện chạy lệnh cmsshell bằng script ta thực hiện như sau
Tạo môi trường để chạy lệnh cmsshell ở bất kì nơi nào trên ubuntu bằng cách
cd /usr/bin
vi cmsshell
Thực hiện thêm nội dung sau vào
cd /opt/tomcat8/webapps/opencms/WEB-INF/
sudo ./cmsshell.sh
Thực hiện save lại và cấp quyền thực thi cho file đó
chmod +x /usr/bin/cmsshell
Ok rồi bây giờ thực hiện test và tạo con script nào
 Thực hiện tạo file sh với nội dung sau
vi test.sh
Nội dung trong file test đó là
#!/bin/bash
echo 'Execute cmsshell'
service tomcat stop
bash cmsshell -script=global.txt
service tomcat restart
và tiếp đến mình sẻ tạo file txt với nội dung là những câu lệnh của cmsshell như sau
vi global.txt
Vì file test.sh đã trỏ đến file txt để thực thi những đoạn mã trong đó rồi nên khi mình chạy file sh thì đồng nghĩ cũng thực thi các lệnh trong file txt
login "Admin" "admin"
importModule "/opt/tomcat8/webapps/opencms/WEB-INF/packages/modules/com.prudential.v2.global-1.0.0.zip"
quit
Chúng ta cần phải có câu lệnh login đầu tiên mới thực hiện được trong OpenCMS các bạn muốn tham khảo thêm các câu lệnh khác của OpenCMS thì có thể xem link phía dưới mình để nhé
http://www.opencms-wiki.org/wiki/CMS_Shell
Như vậy là mình đã hướng dẫn cho các bạn thực hiện auto với OpenCMS bằng cmsshell rồi đấy.
Nguồn: itblognote.com

Post a Comment

0 Comments