Categorias

Exibir | Ocultar

Arquivos

Exibir | Ocultar

Tags

Estatísticas

Patrocinadores

Twitter, cURL e SVN

Estava eu pensando em como fazer um sistema que pudesse escrever comentários automaticamente no meu twitter a cada commit dado no svn.

Buscando mais a fundo pela internet, enconcrei a API do Twitter e com um pouco de esforço consegui criar um script tão simples que chega a ser sem graça, abaixo segue o processo:

Precisaremos de:

  1. Uma conta do Twitter com senha conhecida (óbvio);
  2. Repositório SVN;
  3. Acesso a pasta de scripts hooks do repositório svn;
  4. Utilitário cURL.

Descreverei o processo para utilizar o script em ambiente linux, mas em outros sistemas deverá funcionar de maneira semelhante, bastando instalar o cURL ou equivalente na maquina.

Para começar, navegue até a pasta hooks do seu repositorio. No meu caso que uso dreamhost(cupons de desconto aqui), fica localizado na pasta: “/home/(seu_user)/svn/(nome_repositorio)/hooks/” . Aqui encontramos alguns scripts de modelo, no caso utilizaremos o “post-commit.tmpl”, basta renomear ele para “post-commit” caso o arquivo “post-commit” não exista, e após isso, torná-lo executavel(chmod a+x post-commit); caso o arquivo ja exista, adicione as seguintes linhas de comando ao término dele:

COMMENT='svnlook log -r${REV} ${REPOS}'
curl -u user:pass -d status="${COMMENT}" http://twitter.com/statuses/update.json

A primeira linha serve para pegar a mensagem de log associada ao commit, a segunda serve para enviar sua mensagem ao twitter. Ah!  ${REV} e ${REPOS} ja estão definidos pelo padrão do post-commit.tmpl, logo caso ja se tenha um post-commit existente, é bom verificar como o .tmpl se essa parte foi alterada. Ainda na segunda linha, lembre de alterar “user” pelo seu nome de usuário do twitter e o nome “pass” pelo seu password.

Uma observação para quem gosta de colocar caracteres malucos no user ou pass: provavelmente o terminal interpretará seus caracteres como funções, portanto, teste antes na mão mesmo para ver se não ocorre nenhum erro, pois comigo ocorreu e mudei meu password.

Feito tudo isso, basta fazer um commit que ele estará automaticamente no seu twitter.

Qualquer dúvida, entre em contato comigo no bate-papo aqui do site ou então pelo twitter. (http://twitter.com/tolstenko).

VN:F [1.8.3_1051]
Rating: 0.0/10 (0 votes cast)
Share and Enjoy:
  • Digg
  • Sphinn
  • del.icio.us
  • Facebook
  • Mixx
  • Google Bookmarks
  • Live
  • MyShare
  • MySpace
  • Yahoo! Buzz
  • YahooMyWeb
  • Twitter

Leave a Reply

 

 

 

You can use these HTML tags

<a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong> <pre lang="" line="" escaped="">

Get Adobe Flash playerPlugin by wpburn.com wordpress themes