Jenkins : Comandos via SSH

Neste post será apresentado como rodar um job no Jenkins para executar uma tarefa no Redhat / CentOS.

Jenkins é uma ferramenta de integração contínua , segue abaixo um post de instalação e primeira configuração da ferramenta :

http://fajlinux.com.br/devops/jenkins-instalacao-no-rhel-7/

1) Ambiente :

10.0.0.95 – jenkins-01.example.com – Centos 7
10.0.0.96 – client-01.example.com – Centos 7

2) Configurando do Jenkins :

Tenha certeza que o plugin SSH esteja instalado em sua máquina , logo abaixo vá até a configuração do Jenkins e na àrea SSH defina o host que deseja se conectar e a credencial necessária para se conectar na máquina .

Acesse : http://JENKINS SERVER/configure

Definições de SSH :

SSH Jenkins Config

3) Configurando o JOB :

Em nosso JOB instalaremos o Apache e será aplicada as devidas regras de firewall para o FirewallD.

Instala Apache

Para configurarmos o job em “Ambiente de Build” será marcado a caixa “Execute shell script on remote host using ssh” logo em seguida no campo “SSH Site” selecionaremos o servidor que cadastramos na configuração do Jenkins.

No campo Pre Build Script serão executadas as ações de instalação do Apache e caso seja executadas com sucesso serão aplicadas as definições de Post Build Script , onde aplicamos as regras de firewall e iniciamos o Apache.

Job Apache build config

4) Executando o JOB :

Segue abaixo o log de execução do job onde rodamos o Pre Build Script e Post Build Script com sucesso.

Pre Build :

Apache Pre Build Script

Post Build :

Captura de Tela 2016-01-24 às 15.14.27

5) Testando o Apache em Client-01 :

Apache Teste Jenkins

Conclusão

Criando os jobs de comandos remotos via ssh podemos criar uma série de execuções que automatizam o ambiente, é ideal também para quem gosta de usar baselines e manter a infraestrutura equalizada.