Esta é uma pré-visualização de arquivo. Entre para ver o arquivo original
Documentação de Implantação da aplicação Avaliação de Serviços Contrato: Nº 007/20/2023/MTI Ordem de Serviço: 00010/2023/UGPGD/MTI> Documentação de Implantação da aplicação Avaliação de Serviços Cliente: Empresa MatoGrossense de Tecnologia da Informação - MTI Contrato Nº007/2023/MTI Ordem de Serviço: 00010/2023/UGPGD/MTI Período: dd/mm/aaaa a dd/mm/aaaa (confirmar) [caso alguma das informações acima não faça sentido na elaboração deste artefato poderá ser retirada da capa] REGISTRO DE ALTERAÇÕES DO DOCUMENTO Versão Data Autor Descrição 001 06/05/2024 Kenny Johnson da Silva Amorim Ricardo Alexandre Germano de Assis Elaboração do Documento. SUMÁRIO 1. Identificação do Projeto 5 2. Objetivo 5 3. Estrutura do Projeto 6 4. Produto 01: avaliacao-servico-admin-app 6 4.1 Implementação Local 6 4.2 Clonar o Repositório 7 4.3 Pré-requisitos obrigatórios para configurar Ambiente 7 4.4 Instalação de Dependências 7 4.5 Execução de Migrations 7 4.5.1 Criação de Usuário para Acesso à Aplicação Avaliação de Serviço 7 4.6 Executar em Ambiente de Desenvolvimento 8 4.7 Build e Execução com Docker (opcional) - Build da Imagem Docker 8 4.7.1 Execução do Container Docker 10 4.7.2 Testando a Aplicação 10 4.7.3 Parar o Container Docker (se aplicável) 10 4.8 Passos de Implantação (GitLab CI) 11 4.9 Fluxo de Trabalho 11 5. Variáveis de Ambiente 11 6. Produto 02: avaliacao-servico-admin-app 13 6.1 Pré-requisitos 13 6.2 Passos de Implantação (LOCAL) - Clonar o Repositório 14 6.3. Configuração do Ambiente 14 6.4. Instalar Dependências 14 6.5. Executar em Ambiente de Desenvolvimento 14 6.6. Build e Execução com Docker (opcional), build da Imagem Docker 14 6.7. Execução do Container Docker 15 6.8. Testando a Aplicação 15 6.9. Parar o Container Docker (se aplicável) 15 7. Passos de Implantação (GitLab CI), fluxo de Trabalho: 15 7.1. Variáveis de Ambiente 16 8. Produto 03: avaliacao-servico-cidadao-app 16 8.1. Pré-requisitos 16 8.2. Passos de Implantação (LOCAL)- Clonar o Repositório 17 8.3. Configuração do Ambiente 17 8.4 . Instalar Dependências 17 8.5. Executar em Ambiente de Desenvolvimento 17 8.6. Build e Execução com Docker (opcional) - Build da Imagem Docker 17 8.7 Execução do Container Docker 18 8.8. Testando a Aplicação 18 8.9. Parar o Container Docker (se aplicável) 18 9. Passos de Implantação (GitLab CI) 18 9.1. Fluxo de Trabalho 18 9.2. Variáveis de Ambiente 19 5. Aprovação 20 1. Identificação do Projeto Nome do Projeto: Avaliação de Serviços Digitais Cliente: Empresa MatoGrossense de Tecnologia da Informação - MTI Nº Contrato: Nº007/2023/MTI Patrocinador: Gerente do Projeto: Início: Término: 2. Objetivo Este Termo contempla a formalização da entrega [|], descrevendo passos necessários para implementar e executar a Aplicação de Avaliação de Serviços acima identificado, em atendimento a Demanda de STE/Ordem de Serviço nº [] referente ao período de [] a []. Produto Serviço Pré-requisitos Implantação Local Totalmente Aceito Parcialmente Aceito Não aceito avaliacao-servico-admin-api Avaliação de Serviços Certifique-se de ter um servidor Postgres em execução. Crie um arquivo .env baseado no env.example, configure as variáveis de ambiente necessárias, como as credenciais do banco de dados, as chaves de autenticação, e as URLs de integração. Possível a partir deste documento [Marcar um X nesta coluna se a Estória for totalmente aceita] [Marcar um X nesta coluna se a Estória for parcialmente aceita] [Marcar um X nesta coluna se a Estória não foi aceita] avaliacao-servico-admin-app Avaliação de Serviços Este aplicativo é responsável por administrar os questionários de avaliação de serviços, fornece uma interface para os administradores gerenciarem as avaliações. Possível a partir deste documento avaliacao-servico-cidadao-app Avaliação de Serviços Este aplicativo é responsável por disponibilizar as avaliações para o cidadão, fornece uma interface para os cidadãos realizarem as avaliações dos serviços públicos realizados. Possível a partir deste documento Total Produtos: X [X = Quantidade de incidentes homologadas] Y [Quantidade de incidentes marcados nesta coluna] Z [Quantidade de incidentes marcados nesta coluna] W [Quantidade de incidentes marcados nesta coluna] 3. Estrutura do Projeto O projeto Avaliação de Serviços é organizado em três repositórios: · Produto 01: avaliacao-servico-admin-api · Produto 02: avaliacao-servico-admin-app · Produto 03: avaliacao-servico-cidadao-app 4. Produto 01: avaliacao-servico-admin-app Esta API é responsável por fornecer os endpoints para o gerenciamento de avaliações de serviços, incluindo operações como criar, atualizar e excluir perguntas, questionários e pesquisas. Além disso, a API oferece endpoints para que os cidadãos possam realizar avaliações de serviços e é responsável por fornecer métodos de integração com serviços externos. 4.1 Implementação Local Estes passos são os percorridos para implementação local do projeto: 4.2 Clonar o Repositório 4.3 Pré-requisitos obrigatórios para configurar Ambiente · Certifique-se de ter um servidor Postgres em execução. · Crie um arquivo .env baseado no .env.example, configure as variáveis de ambiente necessárias, como as credenciais do banco de dados, as chaves de autenticação, e as URLs de integração. 4.4 Instalação de Dependências 4.5 Execução de Migrations 4.5.1 Criação de Usuário para Acesso à Aplicação Avaliação de Serviço Para acessar a aplicação de Avaliação de Serviço, é necessário criar um usuário no sistema. Siga a instrução SQL para criar um novo usuário: Este comando SQL insere um novo usuário na tabela "Usuario". Abaixo está a descrição dos campos utilizados no comando de inserção: Campo Descrição cpf CPF do usuário, somente números. Exemplo: 12345678901 identificacao Identificação do usuário (nome) contato Informações de contato do usuário (telefone, celular, etc.) - apenas números email Endereço de e-mail do usuário perfilId ID do perfil do usuário (indicando permissões e acessos) dataCriacao Data de criação do registro dataUltimaAtualizacao Data da última atualização do registro excluido Indica se o usuário foi excluído (pode ser nulo se não estiver excluído) 4.6 Executar em Ambiente de Desenvolvimento 4.7 Build e Execução com Docker (opcional) - Build da Imagem Docker 4.7.1 Execução do Container Docker Antes de construir a imagem Docker, certifique-se de ter definido todas as variáveis de ambiente necessárias. Abaixo está um exemplo de como passar os argumentos de build necessários: 4.7.2 Testando a Aplicação Acesse a API de administração em http://localhost:3000 (ou no endereço configurado, se diferente). 4.7.3 Parar o Container Docker (se aplicável) 4.8 Passos de Implantação (GitLab CI) O GitLab CI/CD é uma ferramenta poderosa para automatizar o processo de integração contínua e implantação contínua. Ele permite que você defina, construa, teste e implante seu código automaticamente em diferentes ambientes. 4.9 Fluxo de Trabalho O arquivo .gitlab-ci.yml define os estágios e tarefas a serem executadas durante a execução do pipeline de CI/CD. Aqui está uma visão geral do fluxo de trabalho definido no arquivo: · build-docker: Compila a imagem Docker do projeto com base nos arquivos - Dockerfile e o push para um registro de contêineres. · deploy: Implanta a aplicação em um ambiente específico, GCP (Google Cloud Platform). · techdocs: Gera e pública a documentação técnica usando o TechDocs. · sonar-prepare: Prepara o ambiente para a análise de código no SonarQube, importando o certificado SSL do servidor SonarQube. · sonar: Realiza a análise estática do código no SonarQube. · publish-api: Pública a API em um catálogo, como o Backstage. 5. Variáveis de Ambiente Realizar a configuração das variáveis de ambiente de acordo com cada ambiente de execução. Descrição Desenvolvimento (DEV) Homologação (HML) Produção (PROD) Host do banco de dados DEV_DB_HOST HML_DB_HOST PROD_DB_HOST Porta do banco de dados DEV_DB_PORT HML_DB_PORT PROD_DB_PORT Usuário do banco de dados DEV_DB_USER HML_DB_USER PROD_DB_USER Senha do banco de dados DEV_DB_PASSWORD HML_DB_PASSWORD PROD_DB_PASSWORD Nome do database do banco de dados DEV_DB_DATABASE HML_DB_DATABASE PROD_DB_DATABASE Ambiente de execução DEV_NODE_ENV HML_NODE_ENV PROD_NODE_ENV Chave pública do Keycloak DEV_KEYCLOAK_PUBLIC_KEY HML_KEYCLOAK_PUBLIC_KEY PROD_KEYCLOAK_PUBLIC_KEY The security server address DEV_SECURITY_SERVER HML_SECURITY_SERVER PROD_SECURITY_SERVER Instância X-ROAD DEV_XROAD_INSTANCE HML_XROAD_INSTANCE PROD_XROAD_INSTANCE The consumer member class DEV_MEMBER_CLASS HML_MEMBER_CLASS PROD_MEMBER_CLASS The consumer member code DEV_MEMBER_CODE HML_MEMBER_CODE PROD_MEMBER_CODE The consumer subsystem code DEV_SUBSYSTEMCODE HML_SUBSYSTEMCODE PROD_SUBSYSTEMCODE X-ROAD Client DEV_X_ROAD_CLIENT HML_X_ROAD_CLIENT PROD_X_ROAD_CLIENT URL do serviço cidadão APP DEV_AVALIACAO_SERVICO_CIDADAO_URL HML_AVALIACAO_SERVICO_CIDADAO_URL PROD_AVALIACAO_SERVICO_CIDADAO_URL Client ID do MT Login DEV_MT_LOGIN_CLIENT_ID HML_MT_LOGIN_CLIENT_ID PROD_MT_LOGIN_CLIENT_ID Client Secret do MT Login DEV_MT_LOGIN_CLIENT_SECRET HML_MT_LOGIN_CLIENT_SECRET PROD_MT_LOGIN_CLIENT_SECRET URL de API do MT Login DEV_MT_LOGIN_URL HML_MT_LOGIN_URL PROD_MT_LOGIN_URL URL de serviço de notify DEV_NOTIFY_URL HML_NOTIFY_URL PROD_NOTIFY_URL 6. Produto 02: avaliacao-servico-admin-app Este aplicativo é responsável por administrar os questionários de avaliação de serviços, fornece uma interface para os administradores gerenciarem as avaliações. 6.1 Pré-requisitos · Node.js (versão 18 ou superior) · Yarn (versão 2 ou superior) · Docker (opcional, para implantação com contêineres) · Docker Compose (opcional, para implantação com contêineres) 6.2 Passos de Implantação (LOCAL) - Clonar o Repositório 6.3. Configuração do Ambiente · Certifique-se de ter um servidor Postgres em execução. · Crie um arquivo .env baseado no .env.example e configure as variáveis de ambiente necessárias, como as credenciais do banco de dados, as chaves de autenticação, e as URLs de integração. 6.4. Instalar Dependências 6.5. Executar em Ambiente de Desenvolvimento 6.6. Build e Execução com Docker (opcional), build da Imagem Docker Antes de construir a imagem Docker, certifique-se de ter definido todas as variáveis de ambiente necessárias. Abaixo está um exemplo de como passar os argumentos de build necessários: 6.7. Execução do Container Docker 6.8. Testando a Aplicação Acesse a APP de administração em : http://localhost:3000 (ou no endereço configurado, se diferente). 6.9. Parar o Container Docker (se aplicável) 7. Passos de Implantação (GitLab CI), fluxo de Trabalho: O arquivo .gitlab-ci.yml define os estágios e tarefas a serem executadas durante a execução do pipeline de CI/CD. Aqui está uma visão geral do fluxo de trabalho definido no arquivo: · build-docker: Compila a imagem Docker do projeto com base nos arquivos - Dockerfile e o push para um registro de contêineres. · deploy: Implanta a aplicação em um ambiente específico, GCP (Google Cloud Platform). 7.1. Variáveis de Ambiente Realizar a configuração das variáveis de ambiente de acordo com cada ambiente de execução. Descrição Desenvolvimento (DEV) Homologação (HML) Produção (PROD) URL do portal AVALIACAO_DEV_PORTAL_URL AVALIACAO_HOMOL_PORTAL_URL AVALIACAO_PROD_PORTAL_URL URL de login do SmartPass AVALIACAO_DEV_SMARTPASS_LOGIN_URL AVALIACAO_HOMOL_SMARTPASS_LOGIN_URL AVALIACAO_PROD_SMARTPASS_LOGIN_URL Reino de autenticação do SmartPass AVALIACAO_DEV_SMARTPASS_LOGIN_REALM Documentação de Implantação da aplicação Avaliação de Serviços.docxAVALIACAO_HOMOL_SMARTPASS_LOGIN_REALM AVALIACAO_PROD_SMARTPASS_LOGIN_REALM ID do cliente para autenticação no SmartPass AVALIACAO_DEV_SMARTPASS_LOGIN_CLIENT_ID AVALIACAO_HOMOL_SMARTPASS_LOGIN_CLIENT_ID AVALIACAO_PROD_SMARTPASS_LOGIN_CLIENT_ID Chave pública para autenticação no SmartPass AVALIACAO_DEV_SMARTPASS_LOGIN_PUBLIC_KEY AVALIACAO_HOMOL_SMARTPASS_LOGIN_PUBLIC_KEY AVALIACAO_PROD_SMARTPASS_LOGIN_PUBLIC_KEY URL da API utilizada pelo aplicativo React AVALIACAO_DEV_REACT_APP_API_URL AVALIACAO_HOMOL_REACT_APP_API_URL AVALIACAO_PROD_REACT_APP_API_URL 8. Produto 03: avaliacao-servico-cidadao-app Este aplicativo é responsável por disponibilizar as avaliações para o cidadão, fornece uma interface para os cidadãos realizarem as avaliações dos serviços públicos realizados. 8.1. Pré-requisitos · Node.js (versão 18 ou superior) · Yarn (versão 2 ou superior) · Docker (opcional, para implantação com containers) · Docker Compose (opcional, para implantação com containers) 8.2. Passos de Implantação (LOCAL)- Clonar o Repositório 8.3. Configuração do Ambiente · Certifique-se de ter um servidor Postgres em execução. · Crie um arquivo .env baseado no .env.example e configure as variáveis de ambiente necessárias, como as credenciais do banco de dados, as chaves de autenticação, e as URLs de integração. 8.4 . Instalar Dependências 8.5. Executar em Ambiente de Desenvolvimento 8.6. Build e Execução com Docker (opcional) - Build da Imagem Docker Antes de construir a imagem Docker, certifique-se de ter definido todas as variáveis de ambiente necessárias. Abaixo está um exemplo de como passar os argumentos de build necessários: 8.7 Execução do Container Docker 8.8. Testando a Aplicação Acesse a APP de administração em http://localhost:3000 (ou no endereço configurado, se diferente). 8.9. Parar o Container Docker (se aplicável) 9. Passos de Implantação (GitLab CI) 9.1. Fluxo de Trabalho O arquivo .gitlab-ci.yml define os estágios e tarefas a serem executadas durante a execução do pipeline de CI/CD. Aqui está uma visão geral do fluxo de trabalho definido no arquivo: · build-docker: Compila a imagem Docker do projeto com base nos arquivos - Dockerfile e o push para um registro de contêineres. · deploy: Implanta a aplicação em um ambiente específico, GCP (Google Cloud Platform). 9.2. Variáveis de Ambiente Realizar a configuração das variáveis de ambiente de acordo com cada ambiente de execução. Descrição Desenvolvimento (DEV) Homologação (HML) Produção (PROD) URL do portal AVALIACAO_DEV_PORTAL_URL AVALIACAO_HOMOL_PORTAL_URL AVALIACAO_PROD_PORTAL_URL URL de login do SmartPass AVALIACAO_DEV_SMARTPASS_LOGIN_URL AVALIACAO_HOMOL_SMARTPASS_LOGIN_URL AVALIACAO_PROD_SMARTPASS_LOGIN_URL Reino de autenticação do SmartPass AVALIACAO_DEV_SMARTPASS_LOGIN_REALM AVALIACAO_HOMOL_SMARTPASS_LOGIN_REALM AVALIACAO_PROD_SMARTPASS_LOGIN_REALM ID do cliente para autenticação no SmartPass AVALIACAO_DEV_SMARTPASS_LOGIN_CLIENT_ID AVALIACAO_HOMOL_SMARTPASS_LOGIN_CLIENT_ID AVALIACAO_PROD_SMARTPASS_LOGIN_CLIENT_ID Chave pública para autenticação no SmartPass AVALIACAO_DEV_SMARTPASS_LOGIN_PUBLIC_KEY AVALIACAO_HOMOL_SMARTPASS_LOGIN_PUBLIC_KEY AVALIACAO_PROD_SMARTPASS_LOGIN_PUBLIC_KEY URL da API utilizada pelo aplicativo React AVALIACAO_DEV_REACT_APP_API_URL AVALIACAO_HOMOL_REACT_APP_API_URLDocumentação de Implantação da aplicação Avaliação de Serviços.docx AVALIACAO_PROD_REACT_APP_API_URL Produto Serviço Observação 01 avaliacao-servico-admin-api Esta API é responsável por fornecer os endpoints para o gerenciamento de avaliações de serviços, incluindo operações como criar, atualizar e excluir perguntas, questionários e pesquisas. Além disso, a API oferece endpoints para que os cidadãos possam realizar avaliações de serviços e é responsável por fornecer métodos de integração com serviços externos. 02 avaliacao-servico-admin-app Este aplicativo é responsável por administrar os questionários de avaliação de serviços, fornece uma interface para os administradores gerenciarem as avaliações. 03 avaliacao-servico-cidadao-app Este aplicativo é responsável por disponibilizar as avaliações para o cidadão, fornece uma interface para os cidadãos realizarem as avaliações dos serviços públicos realizados. 5. Aprovação Declaramos que todos os Incidentes acima identificados foram solucionados e atendem a todos os requisitos especificados anteriormente. Fiscal do Contrato Data Assinatura Gestor do Contrato Data Assinatura Suplente do Fiscal Data Assinatura Gerente de Projeto Log, Lab. Data Assinatura Data Assinatura [Caso seja necessário adicionar ou excluir “atores” na tabela de assinatura o elaborador do documento poderá fazer a edição] image22.png image11.png image10.png image8.png image20.png image15.png image4.png image19.png image13.png image21.png image17.png image18.png image12.png image16.png image7.png image5.png image6.png image23.png image1.png image14.png image2.png image3.png image9.jpg