Sunday, July 1, 2018

Export SOA Composites Menggunakan Python Script

Pada Blog kali ini saya akan membahas bagaimana cara untuk Export SOA Composite menggunakan python script.
Apasih SOA Composite itu?
Untuk teman-teman yang sudah biasa bermain di dunia oracle middleware pasti tidak jarang lagi mendengar SOA Composite. SOA Composite merupakan kumpulan dari service-service yang sudah kita deploy dan di simpan dalam satu app (contoh project BPEL, BPM dan lain-lain).
Ketika kita ingin melakukan export atau download project yang sudah kita deploy ke SOA Server pada umumnya kita harus melakukan export satu-satu. Bagaimana jika project yang akan kita export ada ribuan? apakah kita akan melakukan export satu-satu juga?
Saya rasa itu akan membuat kita pusing dan bukan kerjaan bangat kalau harus export satu-satu .jar file nya.
Nah untuk itulah, saya akan membagikan python script untuk memudahkan kita dalam melakukan export project yang banyak hanya dengan sekali execute file python script.
Langkah-klangkahnya adalah sebagai berikut :
Siapkan python script nya terlebih dahulu.
Ada dua script python, dan anda bisa melihatnya pada gambar di bawah :

  • Script untuk melihat semua list SOA Composite yang ada pada SOA Server.
    Arthur_ListSoaComposites.py
    Dalam file Arthur_ListSoaComposites.py paste command WLST di bawah ini :
    sca_listDeployedComposites("host", "port", "username", "password")
    Ganti host, port, username dan password sesuai dengan host, port, username dan password SOA Server anda.
    Siapkan satu file lagi untuk meng-eksekusi WLST Command diatas, untuk mendapatkan semua list SOA Composites yang ada pada SOA Server anda.
    Arthur_SOAMigrateScript.py (*fungsi save_list_to_file())
    Script diatas berguna untuk mendapatkan semua list project SOA yang ada pada SOA Server anda. List tersebut kemudian akan disimpa pada sebuah file .txt dengan nama fileHandling.txt.
    Anda bisa menentukan kemana path file tersebut akan disimpan, dengan cara menambahkan path terlebih dahulu kemudian di ikuti dengan nama file pada variable file pada script anda.
  • Script untuk melakukan Proses Export SOA Composite
    Arthur_SOAMigrateScript.py (*fungsi export_composites())
    Script diatas terlebih dahulu akan membaca file .txt yang sudah anda buat sebelumnya menggunakan script List SOA diatas. Nah dari file itu Script ini akan mengetahui project mana saja yang akan di export.
    Setelah Membaca file, maka script ini akan otomatis menjalankan WLST Command untuk export SOA composite sebanyak nama project yang tertera pada file anda.
  • Script main function untuk memilih operasi apa yang akan dijalankan oleh Script kita.
    Urutannya adalah kita harus memilih operasi save_list_to_file(), kemudian pilih operasi export_composites().
    Arthur_SOAMigrateScript.py (*fungsi main()).

Langkah untuk menjalankan Script ini juga sangat sederhana :
  • Pastikan anda sudah menyediakan folder kemana semua hasil export-an anda akan disimpan.
  • Dalam Script semua project yang ter-export akan tersimpan ke path : /u01/apps/oracle/bpel/
  • Pastikan anda sudah memasukkan host, username dan password SOA Server sesuai dengan host, username, dan password SOA server anda dengan benar.
  • Pastikan anda mengetahui letak path nodemanager SOA Server anda. Dimana anda akan meletakkan file python script nya di path ini.
  • Jika Anda membuat python Script tersebut pada local anda, maka pastikan anda sudah meng-copy file tersebut ke path nodemanager SOA Server anda.
    untuk melakukan copy dari local ke SOA Server bisa anda lakukan dengan menjalankan command berikut (jangan lupa memasukkan host dan username yang sesuai dengan SOA Server anda):
    scp /Users/toms/Documents/Nostra/ORACLE/DokumentasiTutorial/Arthur_SOAMigrateScript.py user@host:/u01/oracle/config/aserver/JWS_BPM/nodemanager/
  • Sekarang silahkan masuk ke SOA Server anda. Dalam hal ini saya melakukan ssh ke SOA Server saya.
    berikut ada contoh command yang saya jalankan untuk masuk ke SOA server saya menggunakan ssh :
    ssh user@host
  • Silahkan masuk menggunakan command CD menuju path nodemanager anda.
    berikut ada contoh command yang saya jalankan untuk masuk ke nodemanager server saya :
    cd /u01/oracle/config/aserver/JWS_BPM/nodemanager/
  • Pastikan bahwa python Script dan file .txt anda sudah ter-copy ke path nodemanager.
  • Jika sudah, maka sekarang saatnya kita menjalankan script nya.
    Namun, seperti umumnya dalam oracle. Untuk bisa menjalankan WLST Command maka kita harus set envelope wlst command terlebih dahulu.
    Biasanya pada SOA Server yang sudah tersedia, kita langsung bisa menjalankan satu script untuk set envelope yang ada pada path nodemanager itu juga. Berikut ada cara jalankan script untuk set envelope untuk wlst command:
    . ./setWLSTEnv.sh 
  • Jika sudah, maka jalankan scriptnya. Berikut ada command untuk menjalankan scriptnya:
    java weblogic.WLST Arthur_SOAMigrateScript.py (*pilih operasi save_list_to_file() untuk menyimpan List SOA Composite ke file .txt)
    Berikut adalah contoh isi file list .txt yang sudah berhasil ter-create pada folder saya ketika script Arthur_SOAMigrateScript.py dengan pilihan operasi save_list_to_file() di jalankan :
    java weblogic.WLST Arthur_SOAMigrateScript.py (*pilih operasi export_composite() untuk meng-export List SOA Composite dari file .txt ke path /u01/apps/oracle/bpel/)
    Kedua operasi yang ada pada script di atas harus di jalankan satu-satu, setelah script Arthur_SOAMigrateScript.py dengan operasi save_list_to_file() selesai maka dengan command yang sama jalankan script Arthur_SOAMigrateScript.py dan pilih operasi export_composites().
  • Tunggu hingga proses export selesai.
  • jika sudah selesai, maka silahkan masuk ke folder dimana anda menyimpan .jar file hasil export-an dari script anda.
    cd /u01/apps/oracle/bpel/
  • tarrraaaa, maka secara otomatis folder anda akan di isi dengan .jar file yang sudah berhasil ke export.
    Berikut contoh project saya yang sudah berhasil ter-export :
  • Finish
  • Anda tidak perlu lelah lagi melakukan export satu-satu .jar file anda, karena sekarang anda tinggal jalankan script diatas.
Demikian yang bisa saya bagikan kali ini, semoga bermanfaat dan terimakasih.



No comments:

Post a Comment