This tool is used to export summary of XML coverage report into a SQL database.
export ANALYTICS_DATABASE_HOST="localhost"export ANALYTICS_DATABASE_PORT="5433"export ANALYTICS_DATABASE_USERNAME="postgres"export ANALYTICS_DATABASE_PASSWORD=""export ANALYTICS_DATABASE_NAME="analytics"export DRONE_REPO="openware/go-coverage"export ANALYTICS_COMPONENT="go-coverage"# use it to differenciate different applications in a mono-repo.export DRONE_TAG="1.0.0"# trigger this script on drone tag to track only stable versions
go run ./ coverage.xmlTo create a Postgres instance with the coverage_analytics database by Helm
helm upgrade -i postgres-coverage bitnami/postgresql -f ./values.yml -n corevalues.yml
image:
tag: 14.5.0auth:
database: coverage_analyticsenablePostgresUser: trueexistingSecret: ""password: changemepostgresPassword: changemereplicationPassword: ""replicationUsername: repl_usersecretKeys:
adminPasswordKey: postgres-passwordreplicationPasswordKey: replication-passworduserPasswordKey: passwordusePasswordFiles: falseusername: coverage_analyticskubectl apply -f ./service.yml -n ${your-namespace}
kubectl apply -f ./ingress.yml -n ${your-namespace}service.yml
apiVersion: v1kind: Servicemetadata:
name: postgres-coverage-postgresqllabels:
app.kubernetes.io/component: primaryapp.kubernetes.io/instance: postgres-coverageapp.kubernetes.io/managed-by: Helmapp.kubernetes.io/name: postgresqlhelm.sh/chart: postgresql-12.1.2annotations:
meta.helm.sh/release-name: postgres-coveragemeta.helm.sh/release-namespace: corespec:
ports:
- protocol: TCPport: 5432targetPort: 5432nodePort: 30432selector:
app.kubernetes.io/component: primaryapp.kubernetes.io/instance: postgres-coverageapp.kubernetes.io/name: postgresqltype: NodePortsessionAffinity: NoneexternalTrafficPolicy: Clusteringress.yml
apiVersion: networking.k8s.io/v1beta1kind: Ingressmetadata:
name: postgres-coveragelabels:
app: postgres-coverageannotations:
kubernetes.io/ingress.class: nginxkubernetes.io/tls-acme: 'true'spec:
tls:
- hosts:
- pg.example.appsecretName: postgres-coverage-tlsrules:
- host: pg.example.apphttp:
paths:
- path: /backend:
serviceName: postgres-coverage-postgresqlservicePort: 5432