public
Created

  • Download Gist
gistfile1.txt
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63
PASSOS:
 
1) alterar no arquivo index.js o nome do projeto de "node-ant" para "node_ant" na geração da tag <project>. Isso foi necessário para conseguirmos recuperar a referência ao nome do projeto no código javascript que iremos escrever no teste item (3). Não sei como o ant gera o nome quando usamos "-" no meio desse nome.
 
2) alterar no arquivo jxon.js o trecho de código:
 
...
else if (key === 'keyValue') {
keyValue = cur;
}
...
 
para:
 
...
else if (key === 'keyValue') {
if(typeof cur == 'function'){
keyValue = '(' + cur + ')();'
}
else
keyValue = cur;
}
...
 
Aqui verifico se o conteúdo da tag é uma função. Passaremos a nossa função javascript para o conteúdo da tag "script". É apenas um teste, este código não está legal :)
 
3) Testar: criar um arquivo de teste como o conteudo abaixo:
 
===============================================
require('./index').exec(
{
script: {
'@language': 'javascript',
keyValue: function () {
var echo = node_ant.createTask("echo");
echo.setMessage("Apenas um teste!");
echo.perform();
}
}
},
function(err, stdout, stderror){
// it doesn't throw any errors and also doesn't log the stdout by
// default that way you can control what you want to do.
if (stderror) console.log(stderror);
if (err) throw err;
if (stdout) console.log(stdout);
}
);
=======================================
 
OBS.: Precisei alterar a linha 17 do arquivo index.js
 
var _jxon = require('lib/jxon');
 
para:
 
var _jxon = require('./lib/jxon');
 
------------------------------------------------------------------------------
 
Se tudo der certo como aqui nos meus testes o código irá executar e retornar o texto "[echo] Apenas um teste!". Caso não tenha conseguido seguir estes passos me fale que eu reviso tudo aqui novamente.
 
Vlw!

Valew! adicionei as mudanças e aproveitei pra limpar o código: https://github.com/millermedeiros/node-ant#v020-20120803

Legal @millermedeiros, eu até fiz um fork com as alterações pra facilitar o entendimento mais vi que vc conseguiu ajustar de boa. As refatorações ficaram legais.

Gostei muito do teu projeto por que sempre gostei do ant, no meu caso mais precisamente Nant por ser programador .net (embora em .net tenhamos o saldoso msbuild).

Essa semana o tempo está muito corrido mais vou tentar contribuir mais. A ideia do projeto é bem legal.

vlw por ter aceito as sugestões.

Abraços!

Please sign in to comment on this gist.

Something went wrong with that request. Please try again.