Skip to content

Releases: mvisonneau/gitlab-ci-pipelines-exporter

0.3.5

17 Sep 08:51
0395270
Compare
Choose a tag to compare

Changed

  • Health endpoints to avoid issues with default configuration
  • Bumped go-gitlab to 0.38.1
  • Bumped golang to 1.15
  • Switch default branch to main

0.3.4

23 Jul 10:57
e873a93
Compare
Choose a tag to compare

Added

  • New gitlab_ci_pipeline_last_job_run_id metric which returns the ID of the most recent job run.

Changed

  • Fixed some issues with the polling of the jobs information which led to innacurate results.
  • Bumped all dependencies
    • goreleaser to 0.140.0
    • go-gitlab to 0.33.0

0.3.3

09 Jun 16:37
450a4f7
Compare
Choose a tag to compare

Changed

  • Fixed a bug where gitlab_ci_pipeline_time_since_last_run_seconds and gitlab_ci_pipeline_time_since_last_job_run_seconds would not get updated after beingfetched for the first time on each pipelines (#106)

0.3.2

27 May 13:13
dd7e507
Compare
Choose a tag to compare

Changed

  • Fixed a bug where gitlab_ci_pipeline_last_run_status would not get updated after being fetched for the first time (#102)
  • Fixed a bug on gitlab_ci_pipeline_run_count, not being updated when a job in a pipeline gets restarted (linked to #102)
  • Bumped all dependencies
    • goreleaser to 0.136.0
    • go-gitlab to 0.32.0

0.3.1

30 Apr 16:42
cf4fe9e
Compare
Choose a tag to compare

Added

  • Added --enable-pprof flag which provides pprof http endpoint at /debug/pprof

Changed

  • Fixed a critical bug introduced with the refactoring of workers in v0.3.0 where the exporter would hang if there are more project refs to poll than workers available
  • Fixed a bug where multiple go routines were accessing a single variable without semaphore
  • Renamed maximum_projects_poller_workers into polling_workers
  • Enhanced signals handling using a global context with derivatives throughout go routines

0.3.0

28 Apr 23:14
928ce07
Compare
Choose a tag to compare

BREAKING CHANGES

  • default_refs & refs parameter have been renamed respectively to default_refs_regexp and refs_regexp to make them more explicit
  • In the config, there is a new defaults parameter group for any setting which can be overridden at the project or wildcard level. It includes the following parameters:
    • fetch_pipeline_job_metrics
    • fetch_pipeline_variables
    • output_sparse_status_metrics
    • pipeline_variables_filter_regex
    • refs_regexp
  • Renamed the following parameters (their behaviour remains the same):
    • projects_polling_interval_seconds into wildcards_projects_discover_interval_seconds
    • refs_polling_interval_seconds into projects_refs_discover_interval_seconds
    • pipelines_polling_interval_seconds into projects_refs_polling_interval_seconds

Added

  • kind label on all metrics which reflects the type of the ref : branch, tag or merge-request
  • project/wildcard parameters fetch_merge_request_pipelines_refs and fetch_merge_request_pipelines_refs_init_limit to enable the metrics polling of merge requests pipelines
  • Configuration for OpenMetrics Encoding in metrics HTTP endpoint. Enabled by default but can be disable using disable_openmetrics_encoding: true
  • Worker pool for projects polling: set maximum_projects_poller_workers with an integer value to control parallelism (defaults to runtime.GOMAXPROCS(0))
  • Augmented disable_tls_verify with disable_health_check additional parameter to drive the behaviour of checking healthiness of target service
  • Reading pipeline variables if enabled setting fetch_pipeline_variables to true (defaults to false)
  • Pipeline variables can be filtered with pipeline_variables_filter_regex (defaults to .*)
  • Configurable ServiceMonitor resource through the helm chart

Changed

  • Projects polling from GitLab API is done in parallel using maximum_projects_poller_workers pollers and concurrently fetching refs and projects
  • Fixed a bug causing duplicate metrics when status changes with sparse flag enabled
  • Updated labels syntax in helm chart to comply with standards
  • Updated logging, using more extensively the log.WithFields parameter for an enhanced troubleshooting experience
  • Bumped prometheus/client_golang to 1.6

0.2.14

09 Apr 20:15
e0ab3a0
Compare
Choose a tag to compare

Added

  • Support for pipelines status : manual

Changed

  • Bumped go-gitlab to v0.31.0 which includes an exponentional backoff retry mechanism on API errors
  • Renamed the job label into job_name
  • Fixed a bug in the helm deployment when using service labels

0.2.13

27 Mar 15:47
7b5cd2c
Compare
Choose a tag to compare

Added

  • new fetch_pipeline_job_metrics configuration flag (default false).
    When enabled, various statistics for the jobs from the last pipeline run will be collected.

  • new output_sparse_status_metrics flag (default false).
    When enabled, only reports the status metric currently matching the last pipeline run.
    Reduces reported metric count, at the cost of status values being expired from storage
    if not seen in a long time.

Changed

  • Corrected the ordering of variable assigments in the assertion tests functions
  • Updated the user agent to gitlab-ci-pipelines-exporter
  • Bumped goreleaser to 0.129.0

0.2.12

09 Mar 16:37
3e2fd13
Compare
Choose a tag to compare

Added

  • Now using stretchr/testify for asserting test results
  • Capability to filter in/out archived projects

Changed

  • Fix --gitlab-token and improve docs/chart
  • Bumped to go 1.14
  • Bumped goreleaser to 0.128.0

0.2.11

03 Feb 09:35
13e6ca0
Compare
Choose a tag to compare

Added

  • Added global rate limit capability to avoid hammering GitLab API endpoints
  • Added --gitlab-token flag. Can be use to specify the gitlab token as flag or env var.

Changed

  • Bumped gitlab & prometheus libaries to their latest versions