From 0f552c97d6b5a208e93d05ec0ed0e07d49fcf568 Mon Sep 17 00:00:00 2001 From: Bruno Domingues Date: Thu, 12 Jun 2025 00:31:41 -0300 Subject: [PATCH 1/2] SIENTIAPDE-1105: add ServiceMonitor configuration for Prometheus metrics collection. --- values.yaml | 21 +++++++++++++++++++-- 1 file changed, 19 insertions(+), 2 deletions(-) diff --git a/values.yaml b/values.yaml index d5293bd..0701d16 100644 --- a/values.yaml +++ b/values.yaml @@ -116,7 +116,24 @@ service: type: ClusterIP port: 4840 targetPort: 4840 - + +# Configuração do ServiceMonitor para o Prometheus Operator +# ref: https://github.com/prometheus-operator/prometheus-operator +serviceMonitor: + # Se true, um recurso ServiceMonitor será criado. + enabled: true + # O intervalo no qual as métricas devem ser coletadas (ex: 30s, 1m). + interval: 30s + # O path do endpoint de métricas na sua aplicação. + path: /metrics + # Labels adicionais para o recurso ServiceMonitor. + # Essencial para que o Prometheus Operator o descubra. Se você usa o helm chart kube-prometheus-stack, + # ele procura por ServiceMonitors com o label "release: kube-prometheus-stack". + additionalLabels: + release: kube-prometheus-stack + # Configurações de relabeling adicionais, se necessário. + # ref: https://prometheus.io/docs/prometheus/latest/configuration/configuration/#relabel_config + relabelings: [] env: # Entrypoint variables @@ -163,7 +180,7 @@ ssh: knownHostsPath: /mnt/known_hosts # kubectl create secret docker-registry docker-hub-secret --namespace sientia --docker-server=http://aignosi.azurecr.io --docker-username=aignosi --docker-password=5I5zpQ6sRaHqX1hD3dr+2mo647yO3FRc359/wu6gsP+ACRDRz5mp -# helm upgrade --install sientia-opc-ingestor sientia/sientia-module -n sientia --create-namespace -f ./values.yaml --version 0.1.0-uat +# helm upgrade --install sientia-opc-ingestor sientia/sientia-module -n sientia --create-namespace -f ./values.yaml --version 0.2.0-uat # kubectl create secret generic git-ssh-key-sientia-opc-ingestor \ # --namespace sientia \ From 762b9072dcca745e37decc8d3b72c1a42e9e3ff5 Mon Sep 17 00:00:00 2001 From: Bruno Domingues Date: Mon, 23 Jun 2025 12:49:52 -0300 Subject: [PATCH 2/2] SIENTIAPDE-1111: refactor sonarqube pipeline. --- .github/workflows/quality-gate.yml | 30 +++--------------------------- sonar-project.properties | 11 +++++++++++ 2 files changed, 14 insertions(+), 27 deletions(-) create mode 100644 sonar-project.properties diff --git a/.github/workflows/quality-gate.yml b/.github/workflows/quality-gate.yml index cb52e6d..73504bf 100644 --- a/.github/workflows/quality-gate.yml +++ b/.github/workflows/quality-gate.yml @@ -4,12 +4,9 @@ on: push: branches: - main - - 'feature/**' - - 'release/**' pull_request: branches: - main - - 'release/**' types: [ opened, synchronize, reopened ] jobs: @@ -17,7 +14,6 @@ jobs: name: SonarQube Analysis runs-on: ubuntu-latest permissions: write-all - steps: - name: ⬇️ Checkout Code uses: actions/checkout@v4 @@ -52,33 +48,13 @@ jobs: python -m pip install --upgrade pip pip install -r requirements.txt pip install pytest pytest-cov - - - name: ⬇️ Setup Node.js 18 - uses: actions/setup-node@v4 - with: - node-version: 18 - - - name: 📥 Setup SonarScanner - uses: warchant/setup-sonar-scanner@v7 - name: 🧪 Run Tests with Pytest run: | pytest tests --junitxml=pytest.xml --cov=ingestor --cov-report=xml --cov-report=term - - name: 📊 Run SonarQube Analysis + - name: Run SonarQube Analysis + uses: SonarSource/sonarqube-scan-action@v5 env: - SONAR_PROJECT_KEY: ${{ secrets.SONAR_PROJECT_KEY }} - SONAR_HOST_URL: ${{ secrets.SONAR_HOST_URL }} SONAR_TOKEN: ${{ secrets.SONAR_TOKEN }} - run: | - sonar-scanner \ - -Dsonar.projectKey=$SONAR_PROJECT_KEY \ - -Dsonar.sources=ingestor \ - -Dsonar.tests=tests \ - -Dsonar.python.coverage.reportPaths=coverage.xml \ - -Dsonar.python.xunit.reportPath=pytest.xml \ - -Dsonar.host.url=$SONAR_HOST_URL \ - -Dsonar.token=$SONAR_TOKEN \ - -Dsonar.python.version=3.11 \ - -Dsonar.projectVersion=1.2.0 \ - -Dsonar.coverage.exclusions=ingestor/app.py + SONAR_HOST_URL: ${{ secrets.SONAR_HOST_URL }} diff --git a/sonar-project.properties b/sonar-project.properties new file mode 100644 index 0000000..e65fac4 --- /dev/null +++ b/sonar-project.properties @@ -0,0 +1,11 @@ +sonar.projectKey=Aignosi_sientia-dataops-opc-ingestor_7a3d9693-a2bf-4699-bd82-df68d9a854f3 +sonar.projectName=sientia-dataops-opc-ingestor +sonar.sources=ingestor +sonar.tests=tests +sonar.qualitygate.wait=true +sonar.qualitygate.timeout=300 +sonar.python.coverage.reportPaths=coverage.xml +sonar.python.xunit.reportPath=pytest.xml +sonar.python.version=3.11 +sonar.projectVersion=1.2.0 +sonar.coverage.exclusions=ingestor/app.py