Azure Pipelines para o Banco de Dados do Azure para MySQL – Servidor único
APLICA-SE A: Banco de Dados do Azure para MySQL – Servidor Único
Introdução ao Banco de Dados do Azure para MySQL por meio da implantação de uma atualização de banco de dados com o Azure Pipelines. O Azure Pipelines permite criar, testar e implantar com CI (integração contínua) e CD (entrega contínua) usando o Azure DevOps.
Você usará a Tarefa de implantação do Banco de Dados do Azure para MySQL. A tarefa de Implantação do Banco de Dados do Azure para MySQL só funciona com o servidor único do Banco de Dados do Azure para MySQL.
Pré-requisitos
Antes de começar, você precisa de:
- Uma conta do Azure com uma assinatura ativa. Crie uma conta gratuitamente.
- Uma organização ativa do Azure DevOps. Inscreva-se no Azure Pipelines.
- Um repositório GitHub que você pode usar para o seu pipeline. Se você não tiver um repositório existente, confira Criar o seu primeiro pipeline.
Este guia de início rápido usa os recursos criados em um destes guias como ponto de partida:
- Criar um servidor de Banco de Dados do Azure para MySQL usando o portal do Azure
- Criar um servidor de Banco de Dados do Azure para MySQL usando a CLI do Azure
Criar o seu pipeline
Você usará o pipeline inicial básico como base para o seu pipeline.
Entre na organização do Azure DevOps e acesse seu projeto.
Em seu projeto, navegue até a página Pipelines. Em seguida, escolha a ação para criar um novo pipeline.
Percorra as etapas do assistente selecionando primeiro GitHub como o local do código-fonte.
Você pode ser redirecionado para o GitHub para então entrar. Nesse caso, insira suas credenciais do GitHub.
Quando a lista de repositórios for exibida, selecione o repositório desejado.
O Azure Pipelines analisará o seu repositório e oferecerá opções de configuração. Selecione Pipeline de início.
Criar um segredo
Você precisará saber o nome do servidor de banco de dados, o nome de usuário do SQL e a senha do SQL a serem usados com a tarefa de Implantação do Banco de Dados do Azure para MySQL.
Para segurança, salve a sua senha do SQL como uma variável secreta na interface do usuário de configurações de pipeline para o seu pipeline.
- Acesse a página Pipelines, selecione o pipeline apropriado e escolha Editar.
- Selecione Variáveis.
- Adicione uma nova variável nomeada
SQLpass
e selecione Manter este valor em segredo para criptografar e salvar a variável. - Selecione Ok e Salvar para adicionar a variável.
Verificar permissões para o seu banco de dados
Para acessar o seu banco de dados MySQL com o Azure Pipelines, você precisa definir o seu banco de dados para aceitar conexões de todos os recursos do Azure.
- No portal do Azure, abra o seu recurso de banco de dados.
- Selecione Segurança da conexão.
- Alterne a opção Permitir o acesso aos serviços do Azure para Sim.
Adicionar a tarefa de implantação do Banco de Dados do Azure para MySQL
Neste exemplo, criaremos um novo banco de dados nomeado quickstartdb
e adicionaremos uma tabela de inventário. O script SQL embutido:
- Excluirá
quickstartdb
se ele existir e criará um novo banco de dadosquickstartdb
. - Excluirá a tabela
inventory
se ela existir e criará uma nova tabelainventory
. - Inserirá três linhas em
inventory
. - Mostrará todas as linhas.
- Atualizará o valor da primeira linha em
inventory
. - Excluirá a segunda linha em
inventory
.
Você precisará substituir os seguintes valores na sua tarefa de implantação.
Entrada | Descrição | Exemplo |
---|---|---|
azureSubscription |
Autentique com a sua Assinatura do Azure com uma conexão de serviço. | My Subscription |
ServerName |
O nome do seu servidor de Banco de Dados do Azure para MySQL. | fabrikam.mysql.database.azure.com |
SqlUsername |
O nome do usuário do seu Banco de Dados do Azure para MySQL. | mysqladmin@fabrikam |
SqlPassword |
A senha do nome de usuário. Isso deve ser definido como uma variável secreta. | $(SQLpass) |
trigger:
- main
pool:
vmImage: ubuntu-latest
steps:
- task: AzureMysqlDeployment@1
inputs:
azureSubscription: '<your-subscription>
ServerName: '<db>.mysql.database.azure.com'
SqlUsername: '<username>@<db>'
SqlPassword: '$(SQLpass)'
TaskNameSelector: 'InlineSqlTask'
SqlInline: |
DROP DATABASE IF EXISTS quickstartdb;
CREATE DATABASE quickstartdb;
USE quickstartdb;
-- Create a table and insert rows
DROP TABLE IF EXISTS inventory;
CREATE TABLE inventory (id serial PRIMARY KEY, name VARCHAR(50), quantity INTEGER);
INSERT INTO inventory (name, quantity) VALUES ('banana', 150);
INSERT INTO inventory (name, quantity) VALUES ('orange', 154);
INSERT INTO inventory (name, quantity) VALUES ('apple', 100);
-- Read
SELECT * FROM inventory;
-- Update
UPDATE inventory SET quantity = 200 WHERE id = 1;
SELECT * FROM inventory;
-- Delete
DELETE FROM inventory WHERE id = 2;
SELECT * FROM inventory;
IpDetectionMethod: 'AutoDetect'
Implantar e verificar recursos
Escolha Salvar e executar para implantar o seu pipeline. O trabalho do pipeline será iniciado e, após alguns minutos, o status do trabalho deverá indicar Success
.
Você pode verificar se o pipeline foi executado com êxito dentro da tarefa AzureMysqlDeployment
na execução do pipeline.
Abra a tarefa e verifique se as duas últimas entradas mostram duas linhas em inventory
. Há duas linhas porque a segunda linha foi excluída.
Limpar os recursos
Quando terminar de trabalhar com o seu pipeline, exclua quickstartdb
no seu Banco de Dados do Azure para MySQL. Você também pode excluir o pipeline de implantação criado.