ホームページ  >  記事  >  バックエンド開発  >  サーバードッキングコードクラウドWebhookにより自動展開を実現

サーバードッキングコードクラウドWebhookにより自動展開を実現

little bottle
little bottle転載
2019-04-20 14:47:503666ブラウズ

この記事の主な内容は、サーバーがコード クラウド Webhook に接続して自動デプロイメントを実現できるようにすることです。これには一定の参考価値があります。興味のある友人はそれについて学ぶことができます。

Code Cloud WebHook 機能は、ユーザーがコードをプッシュし、設定した http アドレスに自動的にコールバックするのを支援します。

サービスのインストール git

php コード (外部ネットワークからアクセスできる必要があります)


<?php
//本地路径滚adminasdfdasfasdf
$file = "/wwwroot/webhooksLog.txt";
$_File = fopen($file, "a+");
$local = &#39;/wwwroot/test&#39;;
//仓库地址
$remote = &#39;远程仓库地址&#39;;
 
//密码
$password = &#39;123456&#39;;
 
//获取请求参数
$request = file_get_contents(&#39;php://input&#39;);
if (empty($request)) {
  die(&#39;请求参数为空&#39;);
}
 
//验证密码是否正确
$data = json_decode($request, true);
if ($data[&#39;password&#39;] != $password) {
  die(&#39;密码错误&#39;);
}
fwrite($_File, "************************************************\r\n");
fwrite($_File, "推送人Name: ");
fwrite($_File, $data["pusher"]["name"] . "\r\n");
fwrite($_File, "推送人Email: ");
fwrite($_File, $data["pusher"]["email"] . "\r\n");
fwrite($_File, "推送人UserName: ");
fwrite($_File, $data["pusher"]["username"] . "\r\n");
fwrite($_File, "推送人备注: ");
fwrite($_File, $data["head_commit"]["message"] . "\r\n");
fwrite($_File, "推送项目: ");
fwrite($_File, $data["repository"]["full_name"] . "\r\n");
fwrite($_File, "推送分支: ");
fwrite($_File, $data["ref"] . "\r\n");
fwrite($_File, "推送日期: ");
fwrite($_File, $data["head_commit"]["timestamp"] . "\r\n");
fwrite($_File, "************************************************\r\n");
fclose($_File);
//return;
//echo shell_exec("cd {$local} && git pull {$remote} 2>&1");
system(&#39;cd &#39;.$local.&#39; && "C:/Program Files/Git/cmd/git.exe" pull &#39;.$remote.&#39; 2>&1&#39;, $out);
echo $out;
die(&#39;done&#39; . date(&#39;Y-m-d H:i:s&#39;));
?>

fill ドメイン名を入力して送信をクリックします

完了

関連チュートリアル:PHP ビデオ チュートリアル

以上がサーバードッキングコードクラウドWebhookにより自動展開を実現の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事はcnblogs.comで複製されています。侵害がある場合は、admin@php.cn までご連絡ください。