Сборка html5 проектов
Какой системой сборки проектов вы пользуетесь?
И как у вас вообще организованны билды, тесты и деплойманты? |
compass юзаю
с ходу трудно придумать пример для теста css/html) пробовал grunt, но он оказался сложным и громоздким |
Для сборки файлов в один использую https://github.com/Kolyaj/Jossy, для сборки проекта пока использую свой скриптик, но приглядываюсь в сторону Ant.
Авто тестирование UI крайне геморойная задача, но как вариант: Использование Selenium IDE для тестирования интерфейсов, а для тестирования вёрстки - скрины и получения diff-а (тоже тулзы есть, но названий не помню). |
написал таки велосипед для этого дела
https://github.com/animhotep/feBuilder http://habrahabr.ru/sandbox/61747/ |
Цитата:
|
ну что поделать) на bash у меня не вышло написать html вставки, пришлось Python юзать
тем более что устанавливается это всё одной командой и у большинства уже установлено |
Цитата:
плагины ставятся через npm install -g и линкуются в локальную папку с модулями. даже для google closure compiler плагин есть) |
Цитата:
-потом мне нужно выполнить npm install который качает кучу зависимостей -чтоб добавить js файл мне нужно дописать его в конфиг Gruntfile.js |
Цитата:
Цитата:
и у каждого Цитата:
|
Цитата:
сейчас у меня на версии ругается npm ERR! Error: No compatible version found: grunt-cli вобщем как-то не срослось с ним |
Цитата:
|
Цитата:
Цитата:
ну а насчёт ошибки - это вынесли интерфейс командной строки в отдельный модуль grunt-cli |
Цитата:
Может со временем я забуду bash и буду писать конфиги на JS ) Цитата:
# Получить список файлов с расширением .cxx SOURCES := ${wildcard *.cxx} # Заменить расширения файлов .cxx на .o OBJECTS := ${SOURCES:.cxx=.o} # Можно считать что это цикл, с количеством итераций равным количеству файлов с расширением .cxx .cxx.o: # Удалить все файлы с расширением .cxx и .o -rm -fv $@ $< # Выполнить инструкции выше и пр. build: $(OBJECTS) # ... PS: я знаю что в конкретном случае можно сделать проще (пример не для этого): rm -fv *.cxx *.o Для JS-проектов это конечно очень специфические вещи, но тем не менее ) |
monolithed,
я гранте яваскрипт лол.. ты думаешь там такое нельзя??) там есть задачи и прочее чо только нет. тебе видеоурок дать? (я не умею в грант) |
Цитата:
Цитата:
var fs = require('fs'); var files = fs.readdirSync('./'); grunt.registerTask('default', files.map(function(file) { return file.replace(/\.cxx$/, '.o'); }), function(object) { files.forEach(function(file) { exec('rm -fv ' + file + ' ' + object, function (error, stdout, stderr) { console.log(stdout); }); }); } ); // Можно конечно не привязываться к POSIX-командам, но в этом случае будет куда меньше гибкости: fs.unlink(file, function () { console.log(file); }); |
|
Цитата:
|
melky,
я так обрадовался когда ты написал я думал ты обьяснишь почему у меня задачи min нет.... я думал она стандартная... |
Часовой пояс GMT +3, время: 04:03. |