Open durvalcarvalho opened 2 years ago
Todos as métricas disponíveis no Sonar já estão salvas na tabela Supported metrics
no banco do Heroku. Para cadastrá-las localmente basta rodar o comando python manage.py load_initial_data
.
Para salvar uma métrica coletada basta usar a tabela Collected metrics
. As tuplas dessa tabelas precisam da chave estrangeira da métrica em questão (referência para a tabela Supported metrics
) e um valor.
A sugestão é que se use o endpoint organizations/1/repository/1/import/sonarqube-metrics/
Isso pode ser feito fazendo uma requisição diretamente a API do SonarQube OU por meio de um dos arquivos já salvos no repositórios dos projetos da disciplina de EPS.
Link do analytics-raw-data do projeto measuresoftgram
A maneira mais fácil de se fazer isso é por meio da Browsable API do MeasureSoftGram. Para isso acesse o link e cole o conteúdo do JSON no campo Content:
O link que lista os valores das métricas do repositório do exemplo é: https://measuresoftgram-service.herokuapp.com/api/v1/organizations/8/products/6/repositories/11/historical-values/metrics/
Observação: Caso você tenha enviado o JSON para outro repositório, utiliza o ID da organização, do produto e do repositório em questão.
História de Usuário
Como Valéria Gostaria que o sistema tivesse um endpoint que recebesse o JSON do SonarQube e salvasse as métricas Para assim ser possível posteriormente calcular o valor das demais entidades do modelo
Critérios de aceitação
Observações
É preciso que o serviço
service
seja capaz de receber o JSON que contém as métricas do SonarCube e salve em seu banco de dados. Para isso é preciso modelar a tabelaMetrics
que irá armazenar os dados calculados pelo Sonar, uma vez que haverá outras partes do sistema que irá requisitar o valor mais recente de determinada métricas e também o histórico de valores de uma métricas.Tarefas