 
			
				10.12.2013, 14:53
			
			
			
		  
	 | 
 
	
		
		
		
			  | 
			
			
				
				
				 Быдлокодер;) 
				
				
				
				
	
 
 
 
			 | 
			  | 
			
				
				
					Регистрация: 19.11.2010 
					
					
					
						Сообщений: 4,338
					 
					
					
			
		
 
		 
		
			 | 
		 
		 
		
	 | 
 
	| 
	
	
		
		
			
			 
				Запуск тасков Grunt из Node
			 
			
		
		
		
		Не могу понять, как запустить grunt из ноды, делаю так: 
grunt.task.loadTasks('./');
grunt.task.run('default');
Gruntfile загружается, всё ок, но таск не выполняется. Сам таск рабочий и работает через консоль хорошо.
 
Сейчас делаю через создание дочернего процесса:
 
var grunt = require('child_process').exec('call node_modules/.bin/grunt.cmd', ['--gruntfile', 'Gruntfile.js']);
grunt.stdout.on('data', function (data) {
});
grunt.stderr.on('data', function (data) {
});
grunt.on('close', function (code) {
});
Работает, но мне не очень нравится такое решение. Мб, кто в курсе?
 
***
 
И ещё вопрос: можно ли как то задать шаблон вида: 
*.styl => *.css , т.е. все файлы styl компилятся и сохраняются под таким же именем, но с расширением .css ?  
		
	
		
		
		
		
		
			
		
		
		
		
		
						  
				
				Последний раз редактировалось kobezzza, 10.12.2013 в 19:08.
				
				
			
		
		
	
		
		
	
	
	 | 
 
 
	 
		 | 
 
 
	
	
	
	
		
	
		
		
		
			
			 
			
				11.12.2013, 01:30
			
			
			
		  
	 | 
 
	
		
		
		
			  | 
			
			
				
				
				 I am Student 
				
				
				
				
	
 
 
 
			 | 
			  | 
			
				
				
					Регистрация: 17.12.2011 
					
					
					
						Сообщений: 4,415
					 
					
					
			
		
 
		 
		
			 | 
		 
		 
		
	 | 
 
	
	
	
		
		
		
		
		kobezzza, тут какой то скринкаст по грант, не смотрел, случайно в твиттере увидил может пригодиться  http://css-tricks.com/video-screenca...medium=twitter 
		
	
		
		
		
		
		
			
				__________________ 
				
	
 
	| 
		
			 Цитата: 
		
	 | 
 
	| 
		Если ограничения и условия описываются как "коробка", то хитрость в том что бы найти именно коробку... Не думайте о чем то глобальном - найдите коробку.
	 | 
 
	
 
 
			 
		
		
		
		
	
		
		
	
	
	 | 
 
 
	 
		 | 
 
 
	
	
	
		
	
		
		
		
			
			 
			
				11.12.2013, 08:13
			
			
			
		  
	 | 
 
	
		
		
		
			  | 
			
			
				
				
				 Быдлокодер;) 
				
				
				
				
	
 
 
 
			 | 
			  | 
			
				
				
					Регистрация: 19.11.2010 
					
					
					
						Сообщений: 4,338
					 
					
					
			
		
 
		 
		
			 | 
		 
		 
		
	 | 
 
	
	
	
		
		
		
		
		Спасибо за ссылку, хотя скринкаст оказался довольно бестолковым и если бы у чувака не было бы "словесного поноса", то мог бы уложить его в 5 минут   
		
	
		
		
		
		
		
			
		
		
		
		
	
		
		
	
	
	 | 
 
 
	 
		 | 
 
 
	
	
	
		
	
		
		
		
			
			 
			
				11.12.2013, 19:42
			
			
			
		  
	 | 
 
	
		
		
		
			  | 
			
			
				
				
				 I am Student 
				
				
				
				
	
 
 
 
			 | 
			  | 
			
				
				
					Регистрация: 17.12.2011 
					
					
					
						Сообщений: 4,415
					 
					
					
			
		
 
		 
		
			 | 
		 
		 
		
	 | 
 
	| 
	
	
		
		
		
		
		 kobezzza, а для чего вообще нужен грант, а то не особо понял из описания на их сайте? (знаю что вопрос нубский) 
		
	
		
		
		
		
		
			
				__________________ 
				
	
 
	| 
		
			 Цитата: 
		
	 | 
 
	| 
		Если ограничения и условия описываются как "коробка", то хитрость в том что бы найти именно коробку... Не думайте о чем то глобальном - найдите коробку.
	 | 
 
	
 
 
			 
		
		
		
		
	
		
		
	
	
	 | 
 
 
	 
		 | 
 
 
	
	
	
		
	
		
		
		
			
			 
			
				11.12.2013, 21:31
			
			
			
		  
	 | 
 
	
		
		
		
			  | 
			
			
				
				
				 Быдлокодер;) 
				
				
				
				
	
 
 
 
			 | 
			  | 
			
				
				
					Регистрация: 19.11.2010 
					
					
					
						Сообщений: 4,338
					 
					
					
			
		
 
		 
		
			 | 
		 
		 
		
	 | 
 
	
	
	
		
		
		
		
		
	
 
	
		
			Сообщение от cyber
			 
		
	 | 
 
	| 
		kobezzza, а для чего вообще нужен грант, а то не особо понял из описания на их сайте? (знаю что вопрос нубский)
	 | 
 
	
 
 Для удобного управления тасками в проекте, если ты знаком с Make или Ant, то Grunt - это ровно тоже самое, только написано на JS под ноду и весь его функционал - это веб и обычно он справляется с ними лучше, чем тот же Ant, который создавался больше для языков вроде Java.
 
Если же то, что я написал выше не послужило ответом на вопрос, то вот более развёрнутый вариант: допустим у тебя есть проект, который стал довольно большим и перед тем, как залить в продакшн тебе необходимо осуществлять так называемую "сборку", а именно: склеить файлы, пожать, провести статический анализ кода, запустить тесты, оптимизировать графику, создать архивы для gzip отдачи и т.д. то очень удобно заиметь файлик, где в декларативной форме просто (и самое главное - коротко) последовательно описываются задачи.
 
Ну а почему стоит юзать именно Grunt - он стремительно развивается, у него большое комьюнити, его юзают крупные проекты и главное: под него уже существует огромное количество плагинов на любой случай (ну а если вдруг его не оказалось, то его легко написать самому).  
		
	
		
		
		
		
		
			
		
		
		
		
		
						  
				
				Последний раз редактировалось kobezzza, 11.12.2013 в 21:37.
				
				
			
		
		
	
		
		
	
	
	 | 
 
 
	 
		 | 
 
 
	
	
	
		
	
		
		
		
			
			 
			
				11.12.2013, 21:42
			
			
			
		  
	 | 
 
	
		
		
		
			  | 
			
			
				
				
				 I am Student 
				
				
				
				
	
 
 
 
			 | 
			  | 
			
				
				
					Регистрация: 17.12.2011 
					
					
					
						Сообщений: 4,415
					 
					
					
			
		
 
		 
		
			 | 
		 
		 
		
	 | 
 
	| 
	
	
		
		
		
		
		 kobezzza, спс, плюсануть больше не могу) 
		
	
		
		
		
		
		
			
				__________________ 
				
	
 
	| 
		
			 Цитата: 
		
	 | 
 
	| 
		Если ограничения и условия описываются как "коробка", то хитрость в том что бы найти именно коробку... Не думайте о чем то глобальном - найдите коробку.
	 | 
 
	
 
 
			 
		
		
		
		
	
		
		
	
	
	 | 
 
 
	 
		 | 
 
 
	
	
	
		
	
		
		
		
			
			 
			
				11.12.2013, 21:47
			
			
			
		  
	 | 
 
	
		
		
		
			  | 
			
			
				
				
				 Быдлокодер;) 
				
				
				
				
	
 
 
 
			 | 
			  | 
			
				
				
					Регистрация: 19.11.2010 
					
					
					
						Сообщений: 4,338
					 
					
					
			
		
 
		 
		
			 | 
		 
		 
		
	 | 
 
	
	
	
		
		
		
		
		
	
 
	
		
			Сообщение от cyber
			 
		
	 | 
 
	| 
		kobezzza, спс, плюсануть больше не могу)
	 | 
 
	
 
 Нез, ничего страшного   
		
	
		
		
		
		
		
			
		
		
		
		
	
		
		
	
	
	 | 
 
 
	 
		 | 
 
 
	
	
	
		
	
		
		
		
			
			 
			
				11.12.2013, 23:30
			
			
			
		  
	 | 
 
	
		
		
		
			
			| 
			
				
				
				 Особый гость 
				
				
				
				
	
 
 
			 | 
			  | 
			
				
				
					Регистрация: 02.04.2010 
					
					
					
						Сообщений: 4,260
					 
					
					
			
		
 
		 
		
			 | 
		 
		 
		
	 | 
 
	
	
	
		
		
		
		
		kobezzza, 
 а зачем запускать таск из js?
 
var grunt = require('grunt');
console.log(grunt);
Просто в конце вызови  grunt.cli(); 
		
	
		
		
		
		
		
		
		
						  
				
				Последний раз редактировалось monolithed, 11.12.2013 в 23:44.
				
				
			
		
		
	
		
		
	
	
	 | 
 
 
	 
		 | 
 
 
	
	
	
		
	
		
		
		
			
			 
			
				12.12.2013, 11:35
			
			
			
		  
	 | 
 
	
		
		
		
			  | 
			
			
				
				
				 Быдлокодер;) 
				
				
				
				
	
 
 
 
			 | 
			  | 
			
				
				
					Регистрация: 19.11.2010 
					
					
					
						Сообщений: 4,338
					 
					
					
			
		
 
		 
		
			 | 
		 
		 
		
	 | 
 
	
	
	
		
		
		
		
		
	
 
	
		
			Сообщение от monolithed
			 
		
	 | 
 
	
		kobezzza, 
 а зачем запускать таск из js? 
 
var grunt = require('grunt');
console.log(grunt);
Просто в конце вызови grunt.cli();
	 | 
 
	
 
 Спасибо! А нужно, чтобы при каждом запуске/перезапуске сервера он пересобирался. Т.к. юзаю MS Azure пакет "Сайт", с настроенной синхронизацией с гитхабом, т.е. я пушу в мастер, и сервер сам перезапускается. Я хз, мб к процессу перезапуска можно приаттачить какойнить .cmd, но из ноды мне это кажется более правильным.  
		
	
		
		
		
		
		
			
		
		
		
		
	
		
		
	
	
	 | 
 
 
	 
		 | 
 
 
 
 |  
  |