1

私はビルド ワークフローを適切に設定した PHP/Javascript プロジェクトに取り組んでいます。これには、テスト、縮小、最終的な zip 成果物への圧縮、およびその他の多くの優れた機能が含まれます。

ソース コードに特定のパターンがある場合に失敗するタスクを作成したいと考えています。、、、などの関数を探してprint_r()、存在する場合はビルド プロセスを停止したいと思います。おそらく後で、Javascript または CSS のことを確認したいので、これは PHP だけの質問ではありません。error_log()var_dump()

grunt-shellandで実行できることは知っていますがgrep、次のことを知りたいです。

  1. このタスクに固有の grunt プラグインはありますか? 理想的には、ファイルの種類ごとに正規表現のリストを指定し、パターン マッチでビルドを続行するか失敗するかを設定できるようにしたいと考えています。
  2. パッケージ化されたソースをダブルチェックして、最も一般的なデバッグ ステートメントやその他のパタ​​ーンを確認するという問題に、他の人はどのように取り組んでいますか?
4

1 に答える 1

1

私の質問に対する完全な回答ではありませんが、最近、多少関連するこのうなり声プラグインに出くわしました。console.logJavaScript からステートメントを削除します。まだ試していません。いいね。PHPに似たようなものがあるかどうかはまだ知りたいです。

http://grunt-tasks.com/grunt-remove-logging-calls/

編集:ここではタンブルウィードが風になびいているだけなので、に基づいた回避策を投稿していgrunt-shellます。しかし、これは私が探していたものではありません。適切な構文解析を行わないため、完全ではありません。

    shell: {
        check_debug_prints: {
            command: '(! (egrep -r "var_dump|print_r|error_log" --include=*.php src || egrep -r "console\.\w+|debugger;" --include=*.js src) ) || (echo "Debug prints in source - build aborted" && false )'
        }
    },

grunt.loadNpmTasks( 'grunt-shell' );

編集 2:探していた正確な grunt プラグインをついに見つけました。いなり検索です。failOnMatch特定の正規表現パターンが見つかったときにビルドが失敗するかどうかを示すブール値オプションがあります。

于 2016-05-11T09:24:10.123 に答える