Gulp Env и Preprocess

В Grunt я использовал плагин под названиемокр, Это позволило бы мне определить среду в конкретной сборке. У меня было 3 билда. Одним из них был DEV, который будет использовать все файлы по отдельности. PROD согласовал бы все, и RELEASE согласился бы и угадал. Я хочу сделать то же самое в Gulp. Я вижу препроцессор для Gulp, но ничего, чтобы определить среду.

Вопрос в том. Что я могу сделать? Очевидно, что я не хочу определять все файлы JS все время, и я не хочу 3 разных HTML-страниц с разными тегами скрипта.

В моем HTML у меня было бы что-то вроде этого:

<!-- @if NODE_ENV == 'DEVELOPMENT' -->
<script src="js/example1.js" type="text/javascript"></script>
<script src="js/example2.js" type="text/javascript"></script>
<script src="js/example3.js" type="text/javascript"></script>
<!-- @endif -->

<!-- @if NODE_ENV == 'PRODUCTION' -->
<script src="js/project.js" type="text/javascript"></script>
<!-- @endif -->

<!-- @if NODE_ENV == 'RELEASE' -->
<script src="js/project.min.js" type="text/javascript"></script>
<!-- @endif -->

И мои плачевые плагины будут выглядеть так:

env: {
    dev: {
        NODE_ENV: 'DEVELOPMENT'
    },
    prod: {
        NODE_ENV: 'PRODUCTION'
    },
    release: {
        NODE_ENV: 'RELEASE'
    }
},
preprocess: {
    options: {
        context: {
            name: '<%= pkg.outputName %>',
            version: '<%= pkg.version %>',
            port: '<%= pkg.port %>'
        }
    },
    dev: {
        src: 'index.html',
        dest: '<%= pkg.outputFolder %>/index.html'
    },
    prod: {
        src: 'index.html',
        dest: '<%= pkg.outputFolder %>/index.html'
    },
    release: {
        src: 'index.html',
        dest: '<%= pkg.outputFolder %>/index.html'
    }
},

Ответы на вопрос(2)

Ваш ответ на вопрос