Configurando o Bitbucket para realizar a integração continua de sua aplicação na Umbler

Bom, se você está se pergunta se é possível utilizar o Pipeline do Bitbucket para realizar o CI/CD de sua aplicação em seu repositório do Bitbucket com a Umbler a resposta é SIM, É POSSÍVEL!!!

Fizemos um passo a passo para lhe ajudar no procedimento de realizar a configuração de sua pipeline.

1 - Você precisa acessar seu repositório no BitBucket e vai então em Repository settings > Pipelines > SSH Keys

Após isso você vai em Generate keys:

Após isso o Bitbucket irá gerar uma chave SSH que você precisará cadastrar em sua hospedagem em seu Painel do Usuário da Umbler, por isso copie a Publick key gerada, pois vamos precisar dela.

Caso o acesso SSH não esteja habilitado para sua hospedagem ative-o!

Com o acesso SSH ativo você deverá cadastrar a chave SSH (Publick Key) criada no Bitbucket em seu Painel do Usuário, para isso, você pode clicar nesse botão Gerenciar chaves (caso seu plano seja CloudSites aparecerá um botão para você Adicionar uma nova chave SSH) e então em Adicionar.

3 - Após adicionado a Public key gerada no Bitbucket dentro de seu Painel você também precisará gerar uma chave SSH de seu computador pois precisaremos acessar a hospedagem uma vez para configurar tudo certinho antes do Pipeline rodar. Então gere uma chave SSH em seu computador através do comando:

ssh-keygen

Após gerado essa chave copie a chave pública (chaveSSH.pub) e você também deverá adicioná-la em seu painel assim como você fez com a chave SSH do Bitbucket no passo anterior.

4 - Após cadastrada a chave SSH que você gerou em seu computador, precisaremos acessar a hospedagem via SSH, para isso vamos voltar em seu Painel do Usuário, em Site > Configurações > SSH e então acessar sua hospedagem via SSH através da configuração de conexão que aparece para você:


5 - Já dentro de sua hospedagem, através do acesso via SSH você deverá voltar ao painel do Bitbucket e ir em seu repositório > Repositoy settings > Security > Access tokens e então voce deverá criar um token de acesso:

Crie e deixe as opções marcada como abaixo:

Após isso será geradao alguns tokes, copie todos esses tokens e guarde em um local seguro, pois uma vez que você fechar essa tela esses tokens não poderão mais ser acessados!

6 - Após gerado os tokens vamos configurar os tokens de acesso através da conexão SSH de sua hospedagem, para isso acesse a pasta public/ de sua hospedagem:

Estando então dentro de sua pasta public ou dentro da pasta que você quer realizar a clonagem e atualização do dados de sua aplicação (no meu caso é a pasta public/deployBitbucket/ ) vamos então realizar a clonagem de seu repositório através do token para clonagem que foi gerado no passo anterior:

7 - Agora vamos criar, no repositório do Bitbucket, o arquivo da pipeline.

Esse arquivo, necessariamente, precisa ter o nome: bitbucket-pipelines.yml:

Dentro desse arquivo iremos adicionar os seguintes parâmentros:

(Obs: a Configuração de Conexão SSH da Umbler será a mesma que você encontra dentro de seu painel, ver passo 4)

image: atlassian/default-image:2

pipelines:
  default:
    - step:
        name: Integração Contínua na Umbler
        deployment: production
        script:
          - ssh -v -o StrictHostKeyChecking=no ssh-user@geonosis.ssh.umbler.com -p 49961 "cd public/deployBitbucket; git pull"

Após isso salve o arquivo bitbucket-pipelines.yml e ative o Pipeline em seu Bitbucket e pronto!

Agora toda vez que for feito uma atualização em seu repositório na branch que você configurou, o pipeline irá rodar e atualizar seu arquivos aqui na Umbler.