Exibindo a ajuda por padrão

Enviado por Yukare em quinta-feira, 3 de Agosto de 2017 - 20:37

O padrão no Phing, isso é, quando você digita apenas o comando Phing sem nenhum argumento é executar a tarefa que esta definida como padrão. No entanto nem sempre você sabe quais as tarefas que estão disponíveis ou simplesmente não se lembra do nome exato da tarefa que precisa. O Phing possui um comando para isso, que é utiliza-lo com o argumento -l (phing -l), entretanto não acho esta a melhor maneira.

Eu considero melhor fazer como vários outros programas e exibir uma ajuda nesse caso. Seria possível criar uma tarefa com vários comandos echo, mas assim cada vez que você precisar adicionar ou remover uma tarefa, vai precisar modificar a ajuda. O que eu uso é simplesmente mostrar a ajuda padrão do phing quando o usuário utiliza o comando phing sem argumentos, desta maneira não precisamos nos preocupar em atualizar a ajuda.

Crie um arquivo chamado build.xml e insira o seguinte conteúdo:

<?xml version="1.0" encoding="UTF-8"?>

<project name="exemplo" default="ajuda">
  <target name="ajuda" description="Exibe ajuda sobre este arquivo do Phing.">
    <exec command="phing -f ${phing.file} -l" outputProperty="phing_targets" />
    <echo>Por favor selecione uma tarefa:</echo>
    <echo>${phing_targets}</echo>
  </target>

</project>

Nada de muito complexo, nós criamos o projeto e definimos que a tarefa padrão será a tarefa "ajuda" (linha 1). Depois nós criamos a tarefa na linha 2, o argumento description é o conteúdo que aparecerá de ajuda para esta tarefa. Caso você tenha uma tarefa que não deva aparecer na ajuda, você deve ocultar ela, para isso use o argumento hidden="true". Na linha 3 nós executamos o phing -l e colocamos o resultado em uma variável que exibimos depois na linha 5.

O padrão no Phing, isso é, quando você digita apenas o comando Phing sem nenhum argumento é executar a tarefa que esta definida como padrão. No entanto nem sempre você sabe quais as tarefas que estão disponíveis ou simplesmente não se lembra do nome exato da tarefa que precisa. O Phing possui um comando para isso, que é utiliza-lo com o argumento -l (phing -l), entretanto não acho esta a melhor maneira.

Eu considero melhor fazer como vários outros programas e exibir uma ajuda nesse caso. Seria possível criar uma tarefa com vários comandos echo, mas assim cada vez que você precisar adicionar ou remover uma tarefa, vai precisar modificar a ajuda. O que eu uso é simplesmente mostrar a ajuda padrão do phing quando o usuário utiliza o comando phing sem argumentos, desta maneira não precisamos nos preocupar em atualizar a ajuda.

Crie um arquivo chamado build.xml e insira o seguinte conteúdo:

<?xml version="1.0" encoding="UTF-8"?>

<project name="exemplo" default="ajuda">
  <target name="ajuda" description="Exibe ajuda sobre este arquivo do Phing.">
    <exec command="phing -f ${phing.file} -l" outputProperty="phing_targets" />
    <echo>Por favor selecione uma tarefa:</echo>
    <echo>${phing_targets}</echo>
  </target>

</project>

Nada de muito complexo, nós criamos o projeto e definimos que a tarefa padrão será a tarefa "ajuda" (linha 1). Depois nós criamos a tarefa na linha 2, o argumento description é o conteúdo que aparecerá de ajuda para esta tarefa. Caso você tenha uma tarefa que não deva aparecer na ajuda, você deve ocultar ela, para isso use o argumento hidden="true". Na linha 3 nós executamos o phing -l e colocamos o resultado em uma variável que exibimos depois na linha 5.

Tags