SlideShare uma empresa Scribd logo
1 de 28
Canaries in the air
     Ricardo Almeida
Qual propósito?
Remova as
dependências
Serviço
CRUD                 Externo




        Importante




                     Validações
Cache
git clone ...
“Faça meio produto e
não um produto meia
       boca”
Modularização


 MyLib::Stuff
Evite sistemas
 monolíticos
Arquitetura
Ruby/Git


• https://github.com/schacon/ruby-git
Multi-version
• thoughtbot/appraisal
Redis

               Store data (project attributes)

{"Project-1" : "{"gem": "rails", "versions": ["3.1.0", "3.1.1.rc3"],
  "run": "rake test", "repo": "git://github.com/user/repo.git" }"
Redis


• https://github.com/ezmobius/redis-rb
• https://github.com/mloughran/em-hiredis
RabbitMQ
RabbitMQ


• https://github.com/ruby-amqp/amqp
Resque
Pusher
Restful


• Hypermedia
Browsah


• https://github.com/abril/browsah
Templates

• Goliath (erb, haml)
• Backbone.js
• SproutCore
• Jquery Templates
DEMO
Canaries


• http://github.com/ricardoalmeida/canaries
TODOs

• Automatizar Git
• Automatizar Appraisal
• Adequar pusher
• Criar templates
• Pots/Put/Delete de projetos
Obrigado!
         Perguntas?

          @almeidaricardo
http://github.com/ricardoalmeida/canaries
 ricardo.almeida@gonow.com.br
      vagas@gonow.com.br

Mais conteúdo relacionado

Semelhante a Canaries in the air: monitorando projetos com Ruby e Redis

Palestra Desenvolvimento Ágil para Web com ROR UVA
Palestra Desenvolvimento Ágil para Web com ROR UVAPalestra Desenvolvimento Ágil para Web com ROR UVA
Palestra Desenvolvimento Ágil para Web com ROR UVAThiago Cifani
 
Como colaborar com projetos opensource com o GitHub
Como colaborar com projetos opensource com o GitHubComo colaborar com projetos opensource com o GitHub
Como colaborar com projetos opensource com o GitHubJulio Monteiro
 
OpenShift: NoSQL "a la carte" num PaaS 100% Open Source
OpenShift: NoSQL  "a la carte"  num PaaS 100% Open SourceOpenShift: NoSQL  "a la carte"  num PaaS 100% Open Source
OpenShift: NoSQL "a la carte" num PaaS 100% Open SourceEdgar Silva
 
Curso de Verão - Aula 02 - Orquestração de Contêineres
Curso de Verão - Aula 02 - Orquestração de ContêineresCurso de Verão - Aula 02 - Orquestração de Contêineres
Curso de Verão - Aula 02 - Orquestração de ContêineresGuilhermeJorgeAragod
 
Scrum Gathering Rio 2016 - Conteinerizando Testes com Docker Compose
Scrum Gathering Rio 2016 - Conteinerizando Testes com Docker ComposeScrum Gathering Rio 2016 - Conteinerizando Testes com Docker Compose
Scrum Gathering Rio 2016 - Conteinerizando Testes com Docker ComposeStefan Teixeira
 
Controlo de Versões Distribuído com Git
Controlo de Versões Distribuído com GitControlo de Versões Distribuído com Git
Controlo de Versões Distribuído com GitC. Augusto Proiete
 
Controlo de Versões Distribuído com Git - C. Augusto Proiete
Controlo de Versões Distribuído com Git - C. Augusto ProieteControlo de Versões Distribuído com Git - C. Augusto Proiete
Controlo de Versões Distribuído com Git - C. Augusto ProieteComunidade NetPonto
 
Ruby on Rails 100% na cloud com heroku e outros serviços
Ruby on Rails 100% na cloud com heroku e outros serviçosRuby on Rails 100% na cloud com heroku e outros serviços
Ruby on Rails 100% na cloud com heroku e outros serviçosBruno Ghisi
 
Workshop de Introdução ao Git GitHub
Workshop de Introdução ao Git GitHubWorkshop de Introdução ao Git GitHub
Workshop de Introdução ao Git GitHubGilson Junior
 
Criando operators para kubernetes usando go
Criando operators para kubernetes usando goCriando operators para kubernetes usando go
Criando operators para kubernetes usando goMatheus Moraes
 
Tecnologias para desenvolvimento ágil de aplicações Web-Isemanatsi_UTFPR
Tecnologias para desenvolvimento ágil de aplicações Web-Isemanatsi_UTFPRTecnologias para desenvolvimento ágil de aplicações Web-Isemanatsi_UTFPR
Tecnologias para desenvolvimento ágil de aplicações Web-Isemanatsi_UTFPRAlessandro Dias
 
Docker - minicurso utfpr 2017
Docker -  minicurso utfpr 2017Docker -  minicurso utfpr 2017
Docker - minicurso utfpr 2017Fabio Janiszevski
 
Testes Unitários com JavaScript utilizando Jasmine Framework
Testes Unitários com JavaScript utilizando Jasmine FrameworkTestes Unitários com JavaScript utilizando Jasmine Framework
Testes Unitários com JavaScript utilizando Jasmine FrameworkYuri Adams
 
Buscas Poderosas Com Solr
Buscas Poderosas Com SolrBuscas Poderosas Com Solr
Buscas Poderosas Com Solralmeidaricardo
 

Semelhante a Canaries in the air: monitorando projetos com Ruby e Redis (20)

Palestra Desenvolvimento Ágil para Web com ROR UVA
Palestra Desenvolvimento Ágil para Web com ROR UVAPalestra Desenvolvimento Ágil para Web com ROR UVA
Palestra Desenvolvimento Ágil para Web com ROR UVA
 
De 0 a DevOps
De 0 a DevOpsDe 0 a DevOps
De 0 a DevOps
 
Como colaborar com projetos opensource com o GitHub
Como colaborar com projetos opensource com o GitHubComo colaborar com projetos opensource com o GitHub
Como colaborar com projetos opensource com o GitHub
 
OpenShift: NoSQL "a la carte" num PaaS 100% Open Source
OpenShift: NoSQL  "a la carte"  num PaaS 100% Open SourceOpenShift: NoSQL  "a la carte"  num PaaS 100% Open Source
OpenShift: NoSQL "a la carte" num PaaS 100% Open Source
 
Rails na pratica
Rails na praticaRails na pratica
Rails na pratica
 
Curso de Verão - Aula 02 - Orquestração de Contêineres
Curso de Verão - Aula 02 - Orquestração de ContêineresCurso de Verão - Aula 02 - Orquestração de Contêineres
Curso de Verão - Aula 02 - Orquestração de Contêineres
 
Git
GitGit
Git
 
Curso de Grails
Curso de GrailsCurso de Grails
Curso de Grails
 
Scrum Gathering Rio 2016 - Conteinerizando Testes com Docker Compose
Scrum Gathering Rio 2016 - Conteinerizando Testes com Docker ComposeScrum Gathering Rio 2016 - Conteinerizando Testes com Docker Compose
Scrum Gathering Rio 2016 - Conteinerizando Testes com Docker Compose
 
Controlo de Versões Distribuído com Git
Controlo de Versões Distribuído com GitControlo de Versões Distribuído com Git
Controlo de Versões Distribuído com Git
 
Controlo de Versões Distribuído com Git - C. Augusto Proiete
Controlo de Versões Distribuído com Git - C. Augusto ProieteControlo de Versões Distribuído com Git - C. Augusto Proiete
Controlo de Versões Distribuído com Git - C. Augusto Proiete
 
Resque
ResqueResque
Resque
 
Primeiros passos - GIT
Primeiros passos - GITPrimeiros passos - GIT
Primeiros passos - GIT
 
Ruby on Rails 100% na cloud com heroku e outros serviços
Ruby on Rails 100% na cloud com heroku e outros serviçosRuby on Rails 100% na cloud com heroku e outros serviços
Ruby on Rails 100% na cloud com heroku e outros serviços
 
Workshop de Introdução ao Git GitHub
Workshop de Introdução ao Git GitHubWorkshop de Introdução ao Git GitHub
Workshop de Introdução ao Git GitHub
 
Criando operators para kubernetes usando go
Criando operators para kubernetes usando goCriando operators para kubernetes usando go
Criando operators para kubernetes usando go
 
Tecnologias para desenvolvimento ágil de aplicações Web-Isemanatsi_UTFPR
Tecnologias para desenvolvimento ágil de aplicações Web-Isemanatsi_UTFPRTecnologias para desenvolvimento ágil de aplicações Web-Isemanatsi_UTFPR
Tecnologias para desenvolvimento ágil de aplicações Web-Isemanatsi_UTFPR
 
Docker - minicurso utfpr 2017
Docker -  minicurso utfpr 2017Docker -  minicurso utfpr 2017
Docker - minicurso utfpr 2017
 
Testes Unitários com JavaScript utilizando Jasmine Framework
Testes Unitários com JavaScript utilizando Jasmine FrameworkTestes Unitários com JavaScript utilizando Jasmine Framework
Testes Unitários com JavaScript utilizando Jasmine Framework
 
Buscas Poderosas Com Solr
Buscas Poderosas Com SolrBuscas Poderosas Com Solr
Buscas Poderosas Com Solr
 

Mais de almeidaricardo

Mais de almeidaricardo (6)

Pipeline - Continuous Delivery
Pipeline - Continuous DeliveryPipeline - Continuous Delivery
Pipeline - Continuous Delivery
 
Excelencia puc
Excelencia pucExcelencia puc
Excelencia puc
 
Excelência - PUC
Excelência - PUCExcelência - PUC
Excelência - PUC
 
Event machine
Event machineEvent machine
Event machine
 
Bdd e ci
Bdd e ciBdd e ci
Bdd e ci
 
Palestra Fatec
Palestra FatecPalestra Fatec
Palestra Fatec
 

Canaries in the air: monitorando projetos com Ruby e Redis

Notas do Editor

  1. \n
  2. \n
  3. \n
  4. \n
  5. \n
  6. \n
  7. \n
  8. \n
  9. \n
  10. \n
  11. \n
  12. \n
  13. \n
  14. \n
  15. \n
  16. \n
  17. \n
  18. \n
  19. \n
  20. \n
  21. \n
  22. \n
  23. \n
  24. \n
  25. \n
  26. \n
  27. \n
  28. \n