ホームページ > バックエンド開発 > PHPチュートリアル > [LNMP 自動統合] Jenkins を使用した PHP 継続的統合 - 自動化されたコード検査、分析、単一ケースのテスト

[LNMP 自動統合] Jenkins を使用した PHP 継続的統合 - 自動化されたコード検査、分析、単一ケースのテスト

WBOY
リリース: 2016-06-23 13:13:46
オリジナル
1554 人が閲覧しました

継続的インテグレーションで問題を解決


  1. 統合テストコードリリース
  2. コード自動テスト
  3. マルチマシン自動デプロイ

ツール選択


    統合ツール jenkins 公式ウェブサイト http://jenkins-ci .org /
  1. ビルドツール phing 公式サイト http://www.phing.info/
jenkins+php インストール (Linux 環境、デフォルト php5.3)

wget -O /etc/yum.repos.d/jenkins.repo http://pkg.jenkins-ci.org/redhat/jenkins.reporpm --import https://jenkins-ci.org/redhat/jenkins-ci.org.keyyum install jenkinsyum install javayum install java-1.6.0-openjdkyum install phpyum install php-develyum install php-pearyum install re2cyum install php-pecl-imagickyum install php-domyum install php-pear-phingyum install php-phpunit-PHPUnityum install php-phpunit-phpcpdpear channel-discover pear.phpmd.orgpear install --alldeps phpmd/PHP_PMD
ログイン後にコピー

jenkins の設定と起動


service jenkins startchkconfig jenkins on

jenkins の設定

jenkins によってインストールされる拡張機能 (オンライン Web 拡張機能のインストール)
ロール戦略 (ロールベースの権限管理) SSH 経由で公開プラグイン (SSH 経由でコードを公開) Phing (php ビルド ツール) PMD (コードの静的検査) PlotJDependDRY

ロールの権限管理に基づいています

ロール戦略プラグインを使用して権限管理を実装し、以下で設定します: システム管理-->ロールの管理と割り当て

プロジェクトプレフィックス + 定期的なマッチングを通じて、プロジェクトグループの権限管理は次のことができます。

ssh経由でコードを公開(パスワード入力不要)
    本番マシン、つまり実際にプログラムを実行するマシン上にユーザー本番マシンを作成し、jenkinsデプロイメントマシンからアップロードされたコードをssh経由で受け取る
    useradd jenkins_publisher
    ログイン後にコピー
  1. 公開マシン、つまり Jenkins が配置されているマシンで公開鍵と秘密鍵を生成します
    keygen -t rsa   (全部选择是)然后在 /root/.ssh/ 能够找到公私钥
    ログイン後にコピー
  2. 公開鍵を公開マシンに送信します
    1.将 发布机上的 /root/.ssh/id_rsa.pub 传送到 生产机的 /home/jenkins_publisher/.ssh/2.将 id_rsa.pub 改名为 authorized_keys3.将 authorized_keys 设置为 jenkins_publisher 所有
    ログイン後にコピー
  3. 運用マシン上にプログラム ディレクトリ
    【首次部署】创建对应的 程序包目录: mkdir -p /data/svn_data/chown -R jenkins_publisher /data/svn_data/(根据实际部署环境)【每次应用部署】创建对应的 web程序目录: mkdir -p /data/www/***  (根据实际部署环境)更改目录的所有者:  chown -R  jenkins_publisher /data/www/***
    ログイン後にコピー
    を作成します
  4. Jenkins の設定パスワードを使用しない方法で ssh ソースを作成し (上記の手順で生成された秘密キーをコピーします)、ログイン アカウントは次のとおりです: jenkins_publisher
  5. 運用マシンへの公開

  6. 新しい jenkins プロジェクト

    ビルド ファイル テンプレート
    ビルドの追加.shell)

    ディレクトリ構成をリリース

    コードをリリース

    コードを svn に更新

    Jenkins のプロジェクトで、「Build Now」を操作します

    このビルドコンソールの出力を確認すると、通常のステータスは次のようになります
    1. ビルド結果
    2. ロールバックをリリース

    SVN上のコードを以前の安定したバージョンにロールバックしてコミットします(ローカルファイルをロールバックするだけではなく、コミットする必要があります)

    コードを再ビルドします

    データロールバック
    1. 2015/02作成
ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート