SlideShare uma empresa Scribd logo
1 de 13
Automatizando tarefas com Psake
Nicolas Takashi
TRILHA | DESENVOLVIMENTO MODERNO
@ntakashics twitter
Tópicos
• Apresentação
• Qual o problema que queremos resolver?
• O que é Build?
• Introdução ao Psake
• Demo
@_ntakashi
/ntakashii
Nicolas Takashi
nicolas.tcs@hotmail.com
ntakashi.net
Qual o problema que queremos resolver?
• Automação de tarefas corriqueiras;
• Agilizar o processo de configuração de ambientes;
• Reutilização de processos para o Build;
Mas o que é Build?
• Build não é CTRL + SHIFT + B
• Build é um processo que pode ter mais de uma etapa, dentro delas
estão:
• Test;
• Empacotamento;
• Compilação;
Introdução ao Psake
• Uma ferramenta para automação de build escrita em PowerShell
• Aproveita seu conhecimento de PowerShell
• Psake está para .NET assim como:
• Make está para C++
• Bake está para Boo
• Rake está para Ruby
Introdução ao Psake – Como ele trabalha?
• Fornecendo um ótimo padrão de dependência, com um grupo de
tarefas, que basicamente são chamadas de funções.
• Cada função pode ter outra dependência e validação de parâmetros.
• Funções com manipulação de erros, para cenários de riscos.
Introdução ao Psake – Como ele trabalha?
Introdução ao Psake – Como ele trabalha?
Introdução ao Psake – Como ele trabalha?
Ferramentas Alternativas e Instalação
• Quais são as ferramentas alternativas ao Psake?
• MSBuild
• Nant
• Rake
• A instalação pode ser feita através do próprio PowerShell
• Executando o comando: Install-Module Psake
Demo
• Demonstração da criação de um Script PowerShell com Psake
• Demonstração de uma Build de CI - Continuos Integration.
Automatizando tarefas com Psake - Psake para automação de build

Mais conteúdo relacionado

Mais procurados

Docker de ponta a ponta: do Desenvolvimento à Nuvem - UNICID - Novembro-2019
Docker de ponta a ponta: do Desenvolvimento à Nuvem - UNICID - Novembro-2019Docker de ponta a ponta: do Desenvolvimento à Nuvem - UNICID - Novembro-2019
Docker de ponta a ponta: do Desenvolvimento à Nuvem - UNICID - Novembro-2019Renato Groff
 
Acelerando o caminho para nuvem com serverless e java
Acelerando o caminho para nuvem com serverless e javaAcelerando o caminho para nuvem com serverless e java
Acelerando o caminho para nuvem com serverless e javaEvandro Pires da Silva
 
Do marketplace ao WordPress - WordCamp BH 2015
Do marketplace ao WordPress -  WordCamp BH 2015Do marketplace ao WordPress -  WordCamp BH 2015
Do marketplace ao WordPress - WordCamp BH 2015Fellyph Cintra
 
Dilemas de um Desenvolvedor .NET na Terra do PowerShell
Dilemas de um Desenvolvedor .NET na Terra do PowerShellDilemas de um Desenvolvedor .NET na Terra do PowerShell
Dilemas de um Desenvolvedor .NET na Terra do PowerShellIgor Abade
 
WordCamp Rio de Janeiro 2016 - Vinícius Lourenço | Lojas Virtuais Descomplica...
WordCamp Rio de Janeiro 2016 - Vinícius Lourenço | Lojas Virtuais Descomplica...WordCamp Rio de Janeiro 2016 - Vinícius Lourenço | Lojas Virtuais Descomplica...
WordCamp Rio de Janeiro 2016 - Vinícius Lourenço | Lojas Virtuais Descomplica...Vinícius Lourenço
 
Escalabilidade com docker - ASP.NET Conference 2016
Escalabilidade com docker - ASP.NET Conference 2016Escalabilidade com docker - ASP.NET Conference 2016
Escalabilidade com docker - ASP.NET Conference 2016Rodolfo Fadino Junior
 
Docker: visão geral, possibilidades e primeiros passos - UNIVAG - Junho-2020
Docker: visão geral, possibilidades e primeiros passos - UNIVAG - Junho-2020Docker: visão geral, possibilidades e primeiros passos - UNIVAG - Junho-2020
Docker: visão geral, possibilidades e primeiros passos - UNIVAG - Junho-2020Renato Groff
 
TDC2018SP | Trilha .Net - Crie SPAs com Razor e C# usando Blazor em .Net Core
TDC2018SP | Trilha .Net - Crie SPAs com Razor e C# usando Blazor  em .Net CoreTDC2018SP | Trilha .Net - Crie SPAs com Razor e C# usando Blazor  em .Net Core
TDC2018SP | Trilha .Net - Crie SPAs com Razor e C# usando Blazor em .Net Coretdc-globalcode
 
AMP Roadshow SP 2019 - Web Apps Modernas
AMP Roadshow SP 2019 - Web Apps ModernasAMP Roadshow SP 2019 - Web Apps Modernas
AMP Roadshow SP 2019 - Web Apps ModernasDan Vitoriano
 
Projeto blog - Sistemas Multimídia
Projeto blog - Sistemas MultimídiaProjeto blog - Sistemas Multimídia
Projeto blog - Sistemas MultimídiaRobson Guedes
 
Do Caos ao Objetivo: Como implementamos Scrum em 5 minutos
Do Caos ao Objetivo: Como implementamos Scrum em 5 minutosDo Caos ao Objetivo: Como implementamos Scrum em 5 minutos
Do Caos ao Objetivo: Como implementamos Scrum em 5 minutosMauricio Andreazza
 
DevOps: Primeiros passos - Lightning Talk
DevOps: Primeiros passos - Lightning TalkDevOps: Primeiros passos - Lightning Talk
DevOps: Primeiros passos - Lightning TalkFernanda Martins
 
Deu Match! - Azure DevOps e Seus Super Poderes
Deu Match! - Azure DevOps e Seus Super PoderesDeu Match! - Azure DevOps e Seus Super Poderes
Deu Match! - Azure DevOps e Seus Super PoderesEdson Marques Teixeira
 
O que você precisa saber sobre ASP.NET CORE
O que você precisa saber sobre ASP.NET COREO que você precisa saber sobre ASP.NET CORE
O que você precisa saber sobre ASP.NET CORERodrigo Kono
 
Walker Leite apresenta usando o WordPress como backend de aplicação
Walker Leite apresenta usando o WordPress como backend de aplicaçãoWalker Leite apresenta usando o WordPress como backend de aplicação
Walker Leite apresenta usando o WordPress como backend de aplicaçãoWordCamp Floripa
 
Drupal 7 - Nova Versão para Novos Desafios
Drupal 7 - Nova Versão para Novos DesafiosDrupal 7 - Nova Versão para Novos Desafios
Drupal 7 - Nova Versão para Novos DesafiosPaulino Michelazzo
 
Palestra WordCamp RJ 2016 Configure um servidor Nginx de alta performance par...
Palestra WordCamp RJ 2016 Configure um servidor Nginx de alta performance par...Palestra WordCamp RJ 2016 Configure um servidor Nginx de alta performance par...
Palestra WordCamp RJ 2016 Configure um servidor Nginx de alta performance par...Bruno Rodrigo S. Souza
 

Mais procurados (20)

Docker de ponta a ponta: do Desenvolvimento à Nuvem - UNICID - Novembro-2019
Docker de ponta a ponta: do Desenvolvimento à Nuvem - UNICID - Novembro-2019Docker de ponta a ponta: do Desenvolvimento à Nuvem - UNICID - Novembro-2019
Docker de ponta a ponta: do Desenvolvimento à Nuvem - UNICID - Novembro-2019
 
Acelerando o caminho para nuvem com serverless e java
Acelerando o caminho para nuvem com serverless e javaAcelerando o caminho para nuvem com serverless e java
Acelerando o caminho para nuvem com serverless e java
 
Do marketplace ao WordPress - WordCamp BH 2015
Do marketplace ao WordPress -  WordCamp BH 2015Do marketplace ao WordPress -  WordCamp BH 2015
Do marketplace ao WordPress - WordCamp BH 2015
 
Dilemas de um Desenvolvedor .NET na Terra do PowerShell
Dilemas de um Desenvolvedor .NET na Terra do PowerShellDilemas de um Desenvolvedor .NET na Terra do PowerShell
Dilemas de um Desenvolvedor .NET na Terra do PowerShell
 
WordCamp Rio de Janeiro 2016 - Vinícius Lourenço | Lojas Virtuais Descomplica...
WordCamp Rio de Janeiro 2016 - Vinícius Lourenço | Lojas Virtuais Descomplica...WordCamp Rio de Janeiro 2016 - Vinícius Lourenço | Lojas Virtuais Descomplica...
WordCamp Rio de Janeiro 2016 - Vinícius Lourenço | Lojas Virtuais Descomplica...
 
Mvc
MvcMvc
Mvc
 
Escalabilidade com docker - ASP.NET Conference 2016
Escalabilidade com docker - ASP.NET Conference 2016Escalabilidade com docker - ASP.NET Conference 2016
Escalabilidade com docker - ASP.NET Conference 2016
 
Docker: visão geral, possibilidades e primeiros passos - UNIVAG - Junho-2020
Docker: visão geral, possibilidades e primeiros passos - UNIVAG - Junho-2020Docker: visão geral, possibilidades e primeiros passos - UNIVAG - Junho-2020
Docker: visão geral, possibilidades e primeiros passos - UNIVAG - Junho-2020
 
Node.js e Express
Node.js e ExpressNode.js e Express
Node.js e Express
 
TDC2018SP | Trilha .Net - Crie SPAs com Razor e C# usando Blazor em .Net Core
TDC2018SP | Trilha .Net - Crie SPAs com Razor e C# usando Blazor  em .Net CoreTDC2018SP | Trilha .Net - Crie SPAs com Razor e C# usando Blazor  em .Net Core
TDC2018SP | Trilha .Net - Crie SPAs com Razor e C# usando Blazor em .Net Core
 
AMP Roadshow SP 2019 - Web Apps Modernas
AMP Roadshow SP 2019 - Web Apps ModernasAMP Roadshow SP 2019 - Web Apps Modernas
AMP Roadshow SP 2019 - Web Apps Modernas
 
Projeto blog - Sistemas Multimídia
Projeto blog - Sistemas MultimídiaProjeto blog - Sistemas Multimídia
Projeto blog - Sistemas Multimídia
 
Do Caos ao Objetivo: Como implementamos Scrum em 5 minutos
Do Caos ao Objetivo: Como implementamos Scrum em 5 minutosDo Caos ao Objetivo: Como implementamos Scrum em 5 minutos
Do Caos ao Objetivo: Como implementamos Scrum em 5 minutos
 
DevOps: Primeiros passos - Lightning Talk
DevOps: Primeiros passos - Lightning TalkDevOps: Primeiros passos - Lightning Talk
DevOps: Primeiros passos - Lightning Talk
 
Deu Match! - Azure DevOps e Seus Super Poderes
Deu Match! - Azure DevOps e Seus Super PoderesDeu Match! - Azure DevOps e Seus Super Poderes
Deu Match! - Azure DevOps e Seus Super Poderes
 
O que você precisa saber sobre ASP.NET CORE
O que você precisa saber sobre ASP.NET COREO que você precisa saber sobre ASP.NET CORE
O que você precisa saber sobre ASP.NET CORE
 
Walker Leite apresenta usando o WordPress como backend de aplicação
Walker Leite apresenta usando o WordPress como backend de aplicaçãoWalker Leite apresenta usando o WordPress como backend de aplicação
Walker Leite apresenta usando o WordPress como backend de aplicação
 
Drupal 7 - Nova Versão para Novos Desafios
Drupal 7 - Nova Versão para Novos DesafiosDrupal 7 - Nova Versão para Novos Desafios
Drupal 7 - Nova Versão para Novos Desafios
 
Integração Contínua
Integração ContínuaIntegração Contínua
Integração Contínua
 
Palestra WordCamp RJ 2016 Configure um servidor Nginx de alta performance par...
Palestra WordCamp RJ 2016 Configure um servidor Nginx de alta performance par...Palestra WordCamp RJ 2016 Configure um servidor Nginx de alta performance par...
Palestra WordCamp RJ 2016 Configure um servidor Nginx de alta performance par...
 

Semelhante a Automatizando tarefas com Psake - Psake para automação de build

Carrefour E-commerce - Multicloud Brasil Day 2017
Carrefour E-commerce - Multicloud Brasil Day 2017Carrefour E-commerce - Multicloud Brasil Day 2017
Carrefour E-commerce - Multicloud Brasil Day 2017Denis Santos
 
GitHub Boas Práticas
GitHub Boas PráticasGitHub Boas Práticas
GitHub Boas PráticasCDS
 
Como criar uma TI orientada por processos
Como criar uma TI orientada por processosComo criar uma TI orientada por processos
Como criar uma TI orientada por processosVenki
 
Colaboração em Projetos FLOSS: CakePHP
Colaboração em Projetos FLOSS: CakePHPColaboração em Projetos FLOSS: CakePHP
Colaboração em Projetos FLOSS: CakePHPCBA2012
 
Metodologias Ágeis: Uma breve introdução
Metodologias Ágeis: Uma breve introduçãoMetodologias Ágeis: Uma breve introdução
Metodologias Ágeis: Uma breve introduçãoAchiles Camilo
 
Intensive Delphi 2017 - E este tal de Redis hein?
Intensive Delphi 2017 - E este tal de Redis hein?Intensive Delphi 2017 - E este tal de Redis hein?
Intensive Delphi 2017 - E este tal de Redis hein?Mario Guedes
 
Modelagem Ágil - UaiJug TechDays 2013 - Uberlândia MG
Modelagem Ágil - UaiJug TechDays 2013 - Uberlândia MGModelagem Ágil - UaiJug TechDays 2013 - Uberlândia MG
Modelagem Ágil - UaiJug TechDays 2013 - Uberlândia MGNeubio Ferreira
 
Colaboração em Projetos FLOSS: CakePHP
Colaboração em Projetos FLOSS: CakePHPColaboração em Projetos FLOSS: CakePHP
Colaboração em Projetos FLOSS: CakePHPThiago Colares
 
Performance em-front-end-luiz-tanure
Performance em-front-end-luiz-tanurePerformance em-front-end-luiz-tanure
Performance em-front-end-luiz-tanureLuiz Tanure
 
Conhecendo o Team Foundation Server
Conhecendo o Team Foundation ServerConhecendo o Team Foundation Server
Conhecendo o Team Foundation ServerJulio Arruda
 
Cake php selecaodeprojetos-apres-em-modelo
Cake php selecaodeprojetos-apres-em-modeloCake php selecaodeprojetos-apres-em-modelo
Cake php selecaodeprojetos-apres-em-modeloCBA2012
 
Carreira de Desenvolvimento
Carreira de DesenvolvimentoCarreira de Desenvolvimento
Carreira de DesenvolvimentoAlvaro Viebrantz
 
Testes em uma startup do mundo financeiro
Testes em uma startup do mundo financeiroTestes em uma startup do mundo financeiro
Testes em uma startup do mundo financeiroLuiz Alberto Hespanha
 
TDC2018SP | Trilha UX - Deploy Continuo de Software Legado: Loucura ou Genial...
TDC2018SP | Trilha UX - Deploy Continuo de Software Legado: Loucura ou Genial...TDC2018SP | Trilha UX - Deploy Continuo de Software Legado: Loucura ou Genial...
TDC2018SP | Trilha UX - Deploy Continuo de Software Legado: Loucura ou Genial...tdc-globalcode
 
Aprendendo Na Prática: Aplicativos Web Com Asp.Net MVC em C# e Entity Framewo...
Aprendendo Na Prática: Aplicativos Web Com Asp.Net MVC em C# e Entity Framewo...Aprendendo Na Prática: Aplicativos Web Com Asp.Net MVC em C# e Entity Framewo...
Aprendendo Na Prática: Aplicativos Web Com Asp.Net MVC em C# e Entity Framewo...Daniel Makiyama
 
Entity Framework 4, Novas funcionalidades
Entity Framework 4, Novas funcionalidadesEntity Framework 4, Novas funcionalidades
Entity Framework 4, Novas funcionalidadesC. Augusto Proiete
 

Semelhante a Automatizando tarefas com Psake - Psake para automação de build (20)

Introdução ao TDD
Introdução ao TDDIntrodução ao TDD
Introdução ao TDD
 
Carrefour E-commerce - Multicloud Brasil Day 2017
Carrefour E-commerce - Multicloud Brasil Day 2017Carrefour E-commerce - Multicloud Brasil Day 2017
Carrefour E-commerce - Multicloud Brasil Day 2017
 
GitHub Boas Práticas
GitHub Boas PráticasGitHub Boas Práticas
GitHub Boas Práticas
 
#Moving br workshop
#Moving br workshop#Moving br workshop
#Moving br workshop
 
Como criar uma TI orientada por processos
Como criar uma TI orientada por processosComo criar uma TI orientada por processos
Como criar uma TI orientada por processos
 
Colaboração em Projetos FLOSS: CakePHP
Colaboração em Projetos FLOSS: CakePHPColaboração em Projetos FLOSS: CakePHP
Colaboração em Projetos FLOSS: CakePHP
 
Scrum
ScrumScrum
Scrum
 
Metodologias Ágeis: Uma breve introdução
Metodologias Ágeis: Uma breve introduçãoMetodologias Ágeis: Uma breve introdução
Metodologias Ágeis: Uma breve introdução
 
Intensive Delphi 2017 - E este tal de Redis hein?
Intensive Delphi 2017 - E este tal de Redis hein?Intensive Delphi 2017 - E este tal de Redis hein?
Intensive Delphi 2017 - E este tal de Redis hein?
 
Modelagem Ágil - UaiJug TechDays 2013 - Uberlândia MG
Modelagem Ágil - UaiJug TechDays 2013 - Uberlândia MGModelagem Ágil - UaiJug TechDays 2013 - Uberlândia MG
Modelagem Ágil - UaiJug TechDays 2013 - Uberlândia MG
 
Colaboração em Projetos FLOSS: CakePHP
Colaboração em Projetos FLOSS: CakePHPColaboração em Projetos FLOSS: CakePHP
Colaboração em Projetos FLOSS: CakePHP
 
Performance em-front-end-luiz-tanure
Performance em-front-end-luiz-tanurePerformance em-front-end-luiz-tanure
Performance em-front-end-luiz-tanure
 
Conhecendo o Team Foundation Server
Conhecendo o Team Foundation ServerConhecendo o Team Foundation Server
Conhecendo o Team Foundation Server
 
Cake php selecaodeprojetos-apres-em-modelo
Cake php selecaodeprojetos-apres-em-modeloCake php selecaodeprojetos-apres-em-modelo
Cake php selecaodeprojetos-apres-em-modelo
 
Apresentacao dev ops
Apresentacao dev opsApresentacao dev ops
Apresentacao dev ops
 
Carreira de Desenvolvimento
Carreira de DesenvolvimentoCarreira de Desenvolvimento
Carreira de Desenvolvimento
 
Testes em uma startup do mundo financeiro
Testes em uma startup do mundo financeiroTestes em uma startup do mundo financeiro
Testes em uma startup do mundo financeiro
 
TDC2018SP | Trilha UX - Deploy Continuo de Software Legado: Loucura ou Genial...
TDC2018SP | Trilha UX - Deploy Continuo de Software Legado: Loucura ou Genial...TDC2018SP | Trilha UX - Deploy Continuo de Software Legado: Loucura ou Genial...
TDC2018SP | Trilha UX - Deploy Continuo de Software Legado: Loucura ou Genial...
 
Aprendendo Na Prática: Aplicativos Web Com Asp.Net MVC em C# e Entity Framewo...
Aprendendo Na Prática: Aplicativos Web Com Asp.Net MVC em C# e Entity Framewo...Aprendendo Na Prática: Aplicativos Web Com Asp.Net MVC em C# e Entity Framewo...
Aprendendo Na Prática: Aplicativos Web Com Asp.Net MVC em C# e Entity Framewo...
 
Entity Framework 4, Novas funcionalidades
Entity Framework 4, Novas funcionalidadesEntity Framework 4, Novas funcionalidades
Entity Framework 4, Novas funcionalidades
 

Mais de Nicolas Takashi

Azure api app autenticação e autorização
Azure api app   autenticação e autorizaçãoAzure api app   autenticação e autorização
Azure api app autenticação e autorizaçãoNicolas Takashi
 
Azure api app métricas com application insights
Azure api app métricas com application insightsAzure api app métricas com application insights
Azure api app métricas com application insightsNicolas Takashi
 
Azure api app monitoramento de log
Azure api app   monitoramento de logAzure api app   monitoramento de log
Azure api app monitoramento de logNicolas Takashi
 
Azure api app monitoramento, métricas e cotas
Azure api app   monitoramento, métricas e cotasAzure api app   monitoramento, métricas e cotas
Azure api app monitoramento, métricas e cotasNicolas Takashi
 
Azure api apps - Deploy ASP.Net Core
Azure api apps - Deploy ASP.Net CoreAzure api apps - Deploy ASP.Net Core
Azure api apps - Deploy ASP.Net CoreNicolas Takashi
 
TypeScript em Aplicações Modernas
TypeScript em Aplicações ModernasTypeScript em Aplicações Modernas
TypeScript em Aplicações ModernasNicolas Takashi
 
Integração continua e release manegement com asp.net core
Integração continua e release manegement com asp.net coreIntegração continua e release manegement com asp.net core
Integração continua e release manegement com asp.net coreNicolas Takashi
 
Azure api apps – entendendo o que é azure app service
Azure api apps – entendendo o que é azure app serviceAzure api apps – entendendo o que é azure app service
Azure api apps – entendendo o que é azure app serviceNicolas Takashi
 
Azure api apps introdução ao microsoft azure
Azure api apps   introdução ao microsoft azureAzure api apps   introdução ao microsoft azure
Azure api apps introdução ao microsoft azureNicolas Takashi
 
Conhecendo o asp.net core
Conhecendo o asp.net coreConhecendo o asp.net core
Conhecendo o asp.net coreNicolas Takashi
 
Gerenciando recursos com Visual Studio e Azure Resource Manager
Gerenciando recursos com Visual Studio e Azure Resource ManagerGerenciando recursos com Visual Studio e Azure Resource Manager
Gerenciando recursos com Visual Studio e Azure Resource ManagerNicolas Takashi
 
Novidades do AngularJS 2.0
Novidades do AngularJS 2.0Novidades do AngularJS 2.0
Novidades do AngularJS 2.0Nicolas Takashi
 

Mais de Nicolas Takashi (15)

Azure api app autenticação e autorização
Azure api app   autenticação e autorizaçãoAzure api app   autenticação e autorização
Azure api app autenticação e autorização
 
Azure app service
Azure app serviceAzure app service
Azure app service
 
Azure api app métricas com application insights
Azure api app métricas com application insightsAzure api app métricas com application insights
Azure api app métricas com application insights
 
Azure api app monitoramento de log
Azure api app   monitoramento de logAzure api app   monitoramento de log
Azure api app monitoramento de log
 
Azure api app monitoramento, métricas e cotas
Azure api app   monitoramento, métricas e cotasAzure api app   monitoramento, métricas e cotas
Azure api app monitoramento, métricas e cotas
 
Azure api apps - Deploy ASP.Net Core
Azure api apps - Deploy ASP.Net CoreAzure api apps - Deploy ASP.Net Core
Azure api apps - Deploy ASP.Net Core
 
TypeScript em Aplicações Modernas
TypeScript em Aplicações ModernasTypeScript em Aplicações Modernas
TypeScript em Aplicações Modernas
 
Azure api apps
Azure api appsAzure api apps
Azure api apps
 
Integração continua e release manegement com asp.net core
Integração continua e release manegement com asp.net coreIntegração continua e release manegement com asp.net core
Integração continua e release manegement com asp.net core
 
Azure api apps – entendendo o que é azure app service
Azure api apps – entendendo o que é azure app serviceAzure api apps – entendendo o que é azure app service
Azure api apps – entendendo o que é azure app service
 
Azure api apps introdução ao microsoft azure
Azure api apps   introdução ao microsoft azureAzure api apps   introdução ao microsoft azure
Azure api apps introdução ao microsoft azure
 
Conhecendo o asp.net core
Conhecendo o asp.net coreConhecendo o asp.net core
Conhecendo o asp.net core
 
Gerenciando recursos com Visual Studio e Azure Resource Manager
Gerenciando recursos com Visual Studio e Azure Resource ManagerGerenciando recursos com Visual Studio e Azure Resource Manager
Gerenciando recursos com Visual Studio e Azure Resource Manager
 
Novidades do AngularJS 2.0
Novidades do AngularJS 2.0Novidades do AngularJS 2.0
Novidades do AngularJS 2.0
 
Azure mobile services
Azure mobile servicesAzure mobile services
Azure mobile services
 

Automatizando tarefas com Psake - Psake para automação de build

  • 1. Automatizando tarefas com Psake Nicolas Takashi TRILHA | DESENVOLVIMENTO MODERNO @ntakashics twitter
  • 2. Tópicos • Apresentação • Qual o problema que queremos resolver? • O que é Build? • Introdução ao Psake • Demo
  • 4. Qual o problema que queremos resolver? • Automação de tarefas corriqueiras; • Agilizar o processo de configuração de ambientes; • Reutilização de processos para o Build;
  • 5. Mas o que é Build? • Build não é CTRL + SHIFT + B • Build é um processo que pode ter mais de uma etapa, dentro delas estão: • Test; • Empacotamento; • Compilação;
  • 6. Introdução ao Psake • Uma ferramenta para automação de build escrita em PowerShell • Aproveita seu conhecimento de PowerShell • Psake está para .NET assim como: • Make está para C++ • Bake está para Boo • Rake está para Ruby
  • 7. Introdução ao Psake – Como ele trabalha? • Fornecendo um ótimo padrão de dependência, com um grupo de tarefas, que basicamente são chamadas de funções. • Cada função pode ter outra dependência e validação de parâmetros. • Funções com manipulação de erros, para cenários de riscos.
  • 8. Introdução ao Psake – Como ele trabalha?
  • 9. Introdução ao Psake – Como ele trabalha?
  • 10. Introdução ao Psake – Como ele trabalha?
  • 11. Ferramentas Alternativas e Instalação • Quais são as ferramentas alternativas ao Psake? • MSBuild • Nant • Rake • A instalação pode ser feita através do próprio PowerShell • Executando o comando: Install-Module Psake
  • 12. Demo • Demonstração da criação de um Script PowerShell com Psake • Demonstração de uma Build de CI - Continuos Integration.