私が勤務する会社では、社内メッセージにSlackを使用しています。これにより、さまざまなソフトウェアやサービスとの素晴らしい統合が可能になります。Webhook を Slack に送信するための独自のボットを作成しています。
JSON ペイロードを送信する Perl スクリプトがあります。スクリプトを手動でトリガーすると、すべてが問題なく機能し、Slack ボットがメッセージを送信します。
ただし、スクリプトがFinalbuilder (自動ビルド処理用ソフトウェア) によってトリガーされると、失敗します。次の応答が返されます。
501 Can't load 'C:/Strawberry/perl/site/lib/auto/Net/SSLeay/SSLeay.dll' for module Net::SSLeay: load_file:The specified module could not be found (LWP::Protocol::https not installed)
そこで、「LWP::Protocol::https」モジュールをインストールする必要があると考えました。私は自分のcpanクライアントを開いて書きましたinstall LWP::Protocol::https
モジュールをインストールした後もエラーが発生します。私が書いたtest LWP::Protocol:https
、それは次の応答を与えました:
Running test for module 'LWP::Protocol::https'
Running make for M/MS/MSCHILLI/LWP-Protocol-https-6.06.tar.gz
Checksum for C:\Strawberry\cpan\sources\authors\id\M\MS\MSCHILLI\LWP-Protocol-https-6.06.tar.gz ok
Scanning cache C:\Strawberry\cpan\build for sizes
............................................................................DONE
CPAN.pm: Going to build M/MS/MSCHILLI/LWP-Protocol-https-6.06.tar.gz
Checking if your kit is complete...
Looks good
Writing Makefile for LWP::Protocol::https
Could not read metadata file. Falling back to other methods to determine prerequisites
cp lib/LWP/Protocol/https.pm blib\lib\LWP\Protocol\https.pm
MSCHILLI/LWP-Protocol-https-6.06.tar.gz
C:\Strawberry\c\bin\dmake.EXE -- OK
Running make test
C:\Strawberry\perl\bin\perl.exe "-MExtUtils::Command::MM" "-e" "test_harness(0,'blib\lib', 'blib\arch')" t/*.t
t/apache.t ....... ok
t/https_proxy.t .. 1/56 # creating cert for direct.ssl.access
# creating cert for direct.ssl.access
# creating cert for foo
# creating cert for bar
# creating cert for foo
# creating cert for foo
# creating cert for bar
# creating cert for bar
t/https_proxy.t .. ok
All tests successful.
Files=2, Tests=61, 8 wallclock secs ( 0.02 usr + 0.01 sys = 0.03 CPU)
Result: PASS
MSCHILLI/LWP-Protocol-https-6.06.tar.gz
C:\Strawberry\c\bin\dmake.EXE test -- OK
Windows CMD または Finalbuilder でスクリプトをトリガーできます。どちらも正常に動作しますが、Finalbuilder プロジェクトが Continua CI を介してアクティブ化されると、「ssleay.dll を読み込めません」というエラーが発生します。
私は今何をすべきかわかりません。Perlエラーを修正する方法を知っている人はいますか?