Skip to content

fix: ScrapeClass TLSConfig nil pointer exception #6507

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Merged
merged 2 commits into from
Apr 15, 2024

Conversation

kakkoyun
Copy link
Member

Signed-off-by: Kemal Akkoyun [email protected]

Description

When only relabeling is configured in a ScrapeClass object, the TLSConfig field is nil. This causes a panic when the TLSConfig field is accessed in the ScrapeClass object.

I'm not sure about the business logic of the ScrapeClass TLSConfig field, but from pure Go perspective, it should fix the panic.

panic: runtime error: invalid memory address or nil pointer dereference
[signal SIGSEGV: segmentation violation code=0x1 addr=0x48 pc=0x1ad78e1]

goroutine 386 [running]:
github.com/prometheus-operator/prometheus-operator/pkg/prometheus.(*ConfigGenerator).MergeTLSConfigWithScrapeClass(0x20d7080?, 0xc00172b420, 0xc000fe6d08?)
        /home/runner/work/prometheus-operator/prometheus-operator/pkg/prometheus/promcfg.go:417 +0x81
github.com/prometheus-operator/prometheus-operator/pkg/prometheus.(*ConfigGenerator).generateServiceMonitorConfig(_, _, {{0xc000a7c250, 0x5}, 0x0, {0xc000a7c128, 0x8}, {0xc000a7c255, 0x5}, 0x0, ...}, ...)
        /home/runner/work/prometheus-operator/prometheus-operator/pkg/prometheus/promcfg.go:1370 +0xd3d
github.com/prometheus-operator/prometheus-operator/pkg/prometheus.(*ConfigGenerator).appendServiceMonitorConfigs(0xc000c5a6c0, {0x0, 0x0, 0x0}, 0xc0014ae420, 0x0, 0xc000b4d500, 0x1)
        /home/runner/work/prometheus-operator/prometheus-operator/pkg/prometheus/promcfg.go:2298 +0x3e5
github.com/prometheus-operator/prometheus-operator/pkg/prometheus.(*ConfigGenerator).GenerateServerConfiguration(0xc000c5a6c0, {0x27b2620, 0xc00098b540}, {0xc000e372fd, 0x3}, {0x0, 0x0}, _, _, {{0x0, ...}}, ...)
        /home/runner/work/prometheus-operator/prometheus-operator/pkg/prometheus/promcfg.go:672 +0x3f5
github.com/prometheus-operator/prometheus-operator/pkg/prometheus/server.(*Operator).createOrUpdateConfigurationSecret(0xc000173688, {0x27b2620, 0xc00098b540}, 0xc0010aa308, 0xc000c5a6c0, {0xc001adc830, 0x1, 0x1}, 0xc000b4d500)
        /home/runner/work/prometheus-operator/prometheus-operator/pkg/prometheus/server/operator.go:1152 +0xa68
github.com/prometheus-operator/prometheus-operator/pkg/prometheus/server.(*Operator).sync(0xc000173688, {0x27b2620, 0xc00098b540}, {0xc00148a060, 0xe})
        /home/runner/work/prometheus-operator/prometheus-operator/pkg/prometheus/server/operator.go:778 +0x8c5
github.com/prometheus-operator/prometheus-operator/pkg/prometheus/server.(*Operator).Sync(0xc000173688, {0x27b2620?, 0xc00098b540?}, {0xc00148a060, 0xe})
        /home/runner/work/prometheus-operator/prometheus-operator/pkg/prometheus/server/operator.go:725 +0x2c
github.com/prometheus-operator/prometheus-operator/pkg/operator.(*ResourceReconciler).processNextReconcileItem(0xc000066600, {0x27b2620, 0xc00098b540})
        /home/runner/work/prometheus-operator/prometheus-operator/pkg/operator/resource_reconciler.go:449 +0x231
github.com/prometheus-operator/prometheus-operator/pkg/operator.(*ResourceReconciler).Run.func1()
        /home/runner/work/prometheus-operator/prometheus-operator/pkg/operator/resource_reconciler.go:412 +0x3f
golang.org/x/sync/errgroup.(*Group).Go.func1()
        /home/runner/go/pkg/mod/golang.org/x/[email protected]/errgroup/errgroup.go:78 +0x56
created by golang.org/x/sync/errgroup.(*Group).Go in goroutine 497
        /home/runner/go/pkg/mod/golang.org/x/[email protected]/errgroup/errgroup.go:75 +0x96

Type of change

What type of changes does your code introduce to the Prometheus operator? Put an x in the box that apply.

  • CHANGE (fix or feature that would cause existing functionality to not work as expected)
  • FEATURE (non-breaking change which adds functionality)
  • BUGFIX (non-breaking change which fixes an issue)
  • ENHANCEMENT (non-breaking change which improves existing functionality)
  • NONE (if none of the other choices apply. Example, tooling, build system, CI, docs, etc.)

Verification

Please check the Prometheus-Operator testing guidelines for recommendations about automated tests.

Example config to reproduce the issue:

apiVersion: monitoring.coreos.com/v1
kind: Prometheus
metadata:
  name: k8s
spec:
  scrapeClasses:
    - name: base-scrape-class
      default: true
      relabelings:
        - targetLabel: cluster
          replacement: my-awesome-cluster
      # tlsConfig: {} # This would work.

Changelog entry

Please put a one-line changelog entry below. This will be copied to the changelog file during the release process.

[BUGFIX] Fix ScrapeClass TLSConfig nil pointer panic when only relabeling is configured.

@kakkoyun kakkoyun requested a review from a team as a code owner April 13, 2024 17:18
@xiu
Copy link
Contributor

xiu commented Apr 14, 2024

It looks good to me but I'd rather leave the approval to @nicolastakashi to check the logic.

Can we maybe add a test for this case in TestMergeTLSConfigWithScrapeClass?

@kakkoyun
Copy link
Member Author

Can we maybe add a test for this case in TestMergeTLSConfigWithScrapeClass?

Good point. I'll ad it.

Copy link
Contributor

@simonpasquier simonpasquier left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I agree that tests would be good to have :)

@pull-request-size pull-request-size bot added size/M and removed size/S labels Apr 15, 2024
Signed-off-by: Kemal Akkoyun <[email protected]>
@kakkoyun kakkoyun force-pushed the fix_nil_ptr_exception branch from 8bedda7 to 4245ea0 Compare April 15, 2024 13:36
Copy link
Contributor

@simonpasquier simonpasquier left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

👍
@kakkoyun merge it at your will :)

@kakkoyun
Copy link
Member Author

There's no merge button for me 😱 Could one of you please merge it?

@xiu xiu merged commit c15b12a into prometheus-operator:main Apr 15, 2024
@kakkoyun kakkoyun deleted the fix_nil_ptr_exception branch April 16, 2024 12:17
@kakkoyun
Copy link
Member Author

@simonpasquier Maybe I should have merged this to the release branch?

@simonpasquier
Copy link
Contributor

@kakkoyun right it would be better to have the fix now rather than in a month. If you're motivated, you can cherry-pick the commit to the release-0.73 branch and push another PR.
cc @slashpai who's the current release shepherd :)

@slashpai
Copy link
Contributor

@kakkoyun Since its already merged can you cherry-pick and create the PR to release branch?

@kakkoyun
Copy link
Member Author

Thanks. I'll do it.

simonpasquier pushed a commit to simonpasquier/prometheus-operator that referenced this pull request Apr 18, 2024
simonpasquier added a commit that referenced this pull request Apr 18, 2024
fix: ScrapeClass TLSConfig nil pointer exception (#6507)
openshift-merge-bot bot pushed a commit to stolostron/prometheus-operator that referenced this pull request May 22, 2024
* Disable dependabot automation targeting k8s libs (prometheus-operator#6191)

Signed-off-by: Arthur Silva Sens <[email protected]>

* Add support for enableHttp2 in prometheus remotewrite (prometheus-operator#6192)

---------

Co-authored-by: Herve Nicol <[email protected]>

* chore: refactor generateScrapeConfig()

From a comment while reviewing prometheus-operator#6153.

Signed-off-by: Simon Pasquier <[email protected]>

* build(deps): bump github.com/prometheus-community/prom-label-proxy

Bumps [github.com/prometheus-community/prom-label-proxy](https://github.com/prometheus-community/prom-label-proxy) from 0.7.0 to 0.8.0.
- [Release notes](https://github.com/prometheus-community/prom-label-proxy/releases)
- [Changelog](https://github.com/prometheus-community/prom-label-proxy/blob/main/CHANGELOG.md)
- [Commits](prometheus-community/prom-label-proxy@v0.7.0...v0.8.0)

---
updated-dependencies:
- dependency-name: github.com/prometheus-community/prom-label-proxy
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <[email protected]>

* chore: fix pkg/apis/monitoring/go.mod

PR prometheus-operator#6001 updated the `go.mod` file under `pkg/apis/monitoring` to depend
on `github.com/prometheus-operator/prometheus-operator` which isn't
desired: the goal is that external projects can import
`github.com/prometheus-operator/prometheus-operator/pkg/apis/monitoring`
pulling as few dependencies as possible.

This commit removes the unneeded dependency by moving the validation
function to the `pkg/prometheus` directory.

Signed-off-by: Simon Pasquier <[email protected]>

* build(deps): bump golang.org/x/sync from 0.5.0 to 0.6.0

Bumps [golang.org/x/sync](https://github.com/golang/sync) from 0.5.0 to 0.6.0.
- [Commits](golang/sync@v0.5.0...v0.6.0)

---
updated-dependencies:
- dependency-name: golang.org/x/sync
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <[email protected]>

* Add proposal for Shard Autoscaling (prometheus-operator#5961)

* Add proposal for automated sharding

Signed-off-by: Arthur Silva Sens <[email protected]>

* Update Documentation/proposals/202310-shard-autoscaling.md

* Update Documentation/proposals/202310-shard-autoscaling.md

* Update Documentation/proposals/202310-shard-autoscaling.md

* Update Documentation/proposals/202310-shard-autoscaling.md

* Update Documentation/proposals/202310-shard-autoscaling.md

* Update Documentation/proposals/202310-shard-autoscaling.md

---------

Signed-off-by: Arthur Silva Sens <[email protected]>
Co-authored-by: Simon Pasquier <[email protected]>

* chore: refactor ShardedSecret

This commit reorganizes the code makinguse of `SharedSecret` to reduce
duplication.

Signed-off-by: Simon Pasquier <[email protected]>

* Add testing guidelines (prometheus-operator#5903)

* Add testing guidelines

Signed-off-by: Arthur Silva Sens <[email protected]>

* Add separate Makefile targets for e2e-tests

Signed-off-by: Arthur Silva Sens <[email protected]>

* Apply suggestions from code review

Signed-off-by: Arthur Silva Sens <[email protected]>

Co-authored-by: Simon Pasquier <[email protected]>

---------

Signed-off-by: Arthur Silva Sens <[email protected]>
Co-authored-by: Simon Pasquier <[email protected]>

* Ensure all comments end with a period (prometheus-operator#6208)

* Ensure all comments end with a period.

By enabling the godot linter

Signed-off-by: Arthur Silva Sens <[email protected]>

* Fix godot issues

Signed-off-by: Arthur Silva Sens <[email protected]>

---------

Signed-off-by: Arthur Silva Sens <[email protected]>

* Prevent mistakes with testify lib (prometheus-operator#6211)

* Prevent mistakes with testify

By enabling testifylint

Signed-off-by: Arthur Silva Sens <[email protected]>

* Fix testifylint issues

Signed-off-by: Arthur Silva Sens <[email protected]>

---------

Signed-off-by: Arthur Silva Sens <[email protected]>

* Prevent unnecessary type conversions  (prometheus-operator#6210)

* Prevent unnecessary type conversions

By enabling the unconvert linter

Signed-off-by: Arthur Silva Sens <[email protected]>

* Fix unconvert issues

Signed-off-by: Arthur Silva Sens <[email protected]>

---------

Signed-off-by: Arthur Silva Sens <[email protected]>

* build(deps): bump golang.org/x/net from 0.19.0 to 0.20.0

Bumps [golang.org/x/net](https://github.com/golang/net) from 0.19.0 to 0.20.0.
- [Commits](golang/net@v0.19.0...v0.20.0)

---
updated-dependencies:
- dependency-name: golang.org/x/net
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <[email protected]>

* chore: create new feature and support issue templates

Based on github's new issue template form
https://docs.github.com/en/communities/using-templates-to-encourage-useful-issues-and-pull-requests/syntax-for-issue-forms

Signed-off-by: Jayapriya Pai <[email protected]>

* feat: emit events for invalid configurations (prometheus-operator#6179)

* feat: emit events for invalid configurations

Emit events when the controller rejects a resource, owing to an invalid
configuration.

Fixes: prometheus-operator#3611

Signed-off-by: Pranshu Srivastava <[email protected]>

* Decouple event recorder from operator metrics

Signed-off-by: Arthur Silva Sens <[email protected]>

* Only emit events if permissions were given

Signed-off-by: Arthur Silva Sens <[email protected]>

* Keep operator name consistent across telemetry

Signed-off-by: Arthur Silva Sens <[email protected]>

* Address comments

Signed-off-by: Arthur Silva Sens <[email protected]>

---------

Signed-off-by: Pranshu Srivastava <[email protected]>
Signed-off-by: Arthur Silva Sens <[email protected]>
Co-authored-by: Pranshu Srivastava <[email protected]>

* feat: support the operator make use of the config-reloader tls and basic auth with prometheus/alertmanager webConfigFile (prometheus-operator#6194)

* support the operator make use of the config-reloader tls and basic authentication

---------

Signed-off-by: dongjiang1989 <[email protected]>

* Add scale subresource to Prometheus/PrometheusAgent (prometheus-operator#5962)

* Add scale subresource to Prometheus/PrometheusAgent

Signed-off-by: Arthur Silva Sens <[email protected]>

* Add retry mechanism when updating Status subresource

The goal is to allow the new Prometheus-Operator version to run even with outdated CRDs.
It will try to update the Status subresource and also Scale subresource. If it fails, it will retry but without Scale-related fields.

Signed-off-by: Arthur Silva Sens <[email protected]>

* Create function to generate selector labels

Signed-off-by: Arthur Silva Sens <[email protected]>

* Add UpdateScale and GetScale methods (prometheus-operator#6197)

Signed-off-by: Arthur Silva Sens <[email protected]>

---------

Signed-off-by: Arthur Silva Sens <[email protected]>

* chore: fix field name to comply with conventions

The Kubernetes API conventions say:

> All letters in the acronym should have the same case, using the
> appropriate case for the situation.

Since no release includes the field yet, it's ok to change the name.

Signed-off-by: Simon Pasquier <[email protected]>

* feat: add support for remaining fields in Kubernetes SD (prometheus-operator#6178)

* feat: add support for remaining fields in Kubernetes SD

Fixes prometheus-operator#6087

---------

Signed-off-by: Jayapriya Pai <[email protected]>
Co-authored-by: Simon Pasquier <[email protected]>

* chore: refactor creation of the TLS assets volume

Signed-off-by: Simon Pasquier <[email protected]>

* chore: Add ArthurSens as 0.72 shepherd

Signed-off-by: Arthur Silva Sens <[email protected]>

* chore: cut v0.71.0 (prometheus-operator#6223)

* chore: cut v0.71.0

---------

Signed-off-by: Simon Pasquier <[email protected]>
Co-authored-by: Jayapriya Pai <[email protected]>

* chore: fix golangci-lint `Files Exists` errors (prometheus-operator#6221)

* fix golangci-lint files exists errors

---------

Signed-off-by: dongjiang1989 <[email protected]>
Co-authored-by: Simon Pasquier <[email protected]>

* chore: refactor logger and eventrecorder creations (prometheus-operator#6225)

Signed-off-by: Simon Pasquier <[email protected]>

* setting targeted go version

Signed-off-by: dongjiang1989 <[email protected]>

* Enable revive (prometheus-operator#6207)

* Enable revive linter in test/framework

Signed-off-by: Arthur Silva Sens <[email protected]>

* Fix revive issues

Signed-off-by: Arthur Silva Sens <[email protected]>

---------

Signed-off-by: Arthur Silva Sens <[email protected]>

* build(deps): bump github.com/evanphx/json-patch/v5 from 5.7.0 to 5.8.0

Bumps [github.com/evanphx/json-patch/v5](https://github.com/evanphx/json-patch) from 5.7.0 to 5.8.0.
- [Release notes](https://github.com/evanphx/json-patch/releases)
- [Commits](evanphx/json-patch@v5.7.0...v5.8.0)

---
updated-dependencies:
- dependency-name: github.com/evanphx/json-patch/v5
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <[email protected]>

* build(deps): bump github.com/prometheus/common from 0.45.0 to 0.46.0

Bumps [github.com/prometheus/common](https://github.com/prometheus/common) from 0.45.0 to 0.46.0.
- [Release notes](https://github.com/prometheus/common/releases)
- [Commits](prometheus/common@v0.45.0...v0.46.0)

---
updated-dependencies:
- dependency-name: github.com/prometheus/common
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <[email protected]>

* feat(scrapeConfigs): Add sharding to scrapeConfigs

Signed-off-by: adinhodovic <[email protected]>

* chore: remove proxyconfig code duplication

Fixes prometheus-operator#6218

Signed-off-by: Jayapriya Pai <[email protected]>

* chore: fix makefile targets

Signed-off-by: Arthur Silva Sens <[email protected]>

* chore: bump to Prometheus v2.49.1 (prometheus-operator#6234)

* update prometheus version

---------

Signed-off-by: dongjiang1989 <[email protected]>

* build(deps): bump sigs.k8s.io/controller-runtime from 0.16.3 to 0.17.0

Bumps [sigs.k8s.io/controller-runtime](https://github.com/kubernetes-sigs/controller-runtime) from 0.16.3 to 0.17.0.
- [Release notes](https://github.com/kubernetes-sigs/controller-runtime/releases)
- [Changelog](https://github.com/kubernetes-sigs/controller-runtime/blob/main/RELEASE.md)
- [Commits](kubernetes-sigs/controller-runtime@v0.16.3...v0.17.0)

---
updated-dependencies:
- dependency-name: sigs.k8s.io/controller-runtime
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <[email protected]>

* feat: support `enable_compression` for ScrapeConfig (prometheus-operator#6236)

* support enable_compression setting

---------

Signed-off-by: dongjiang1989 <[email protected]>

* build(deps): bump github.com/evanphx/json-patch/v5 from 5.8.0 to 5.8.1

Bumps [github.com/evanphx/json-patch/v5](https://github.com/evanphx/json-patch) from 5.8.0 to 5.8.1.
- [Release notes](https://github.com/evanphx/json-patch/releases)
- [Commits](evanphx/json-patch@v5.8.0...v5.8.1)

---
updated-dependencies:
- dependency-name: github.com/evanphx/json-patch/v5
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <[email protected]>

* ADOPTERS: add authzed

* ruler: add subpath to volumeMounts if specified (prometheus-operator#6243)

* ruler: pass spec.volumeMount as-is

* feat: add support for DigitalOcean SD (prometheus-operator#6220)

Signed-off-by: Jayapriya Pai <[email protected]>

* ruler: add subpath to volumeMounts if specified (prometheus-operator#6243)

* ruler: pass spec.volumeMount as-is

* feat: support scrape_protocols for GlobalConfig and ScrapeConfig (prometheus-operator#6235)

* support scrape_protocols for GlobalConfig and ScrapeConfig

---------

Signed-off-by: dongjiang1989 <[email protected]>
Co-authored-by: Simon Pasquier <[email protected]>

* chore: bump k8s dependencies to v1.29.1

Signed-off-by: Simon Pasquier <[email protected]>

* feat: Add support for NS records to DNSSDConfig (prometheus-operator#6240)

* update dns sd config

---------

Signed-off-by: dongjiang1989 <[email protected]>
Co-authored-by: Simon Pasquier <[email protected]>

* chore: cut v0.71.1

Signed-off-by: Simon Pasquier <[email protected]>

* build(deps): bump github.com/google/uuid from 1.5.0 to 1.6.0

Bumps [github.com/google/uuid](https://github.com/google/uuid) from 1.5.0 to 1.6.0.
- [Release notes](https://github.com/google/uuid/releases)
- [Changelog](https://github.com/google/uuid/blob/master/CHANGELOG.md)
- [Commits](google/uuid@v1.5.0...v1.6.0)

---
updated-dependencies:
- dependency-name: github.com/google/uuid
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <[email protected]>

* build(deps): bump github.com/thanos-io/thanos

Bumps [github.com/thanos-io/thanos](https://github.com/thanos-io/thanos) from 0.32.5-0.20231124114724-023faa2d67a3 to 0.34.0-rc.1.
- [Release notes](https://github.com/thanos-io/thanos/releases)
- [Changelog](https://github.com/thanos-io/thanos/blob/main/CHANGELOG.md)
- [Commits](https://github.com/thanos-io/thanos/commits/v0.34.0-rc.1)

---
updated-dependencies:
- dependency-name: github.com/thanos-io/thanos
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <[email protected]>

* build(deps): bump github.com/prometheus/prometheus from 0.48.1 to 0.49.1

Bumps [github.com/prometheus/prometheus](https://github.com/prometheus/prometheus) from 0.48.1 to 0.49.1.
- [Release notes](https://github.com/prometheus/prometheus/releases)
- [Changelog](https://github.com/prometheus/prometheus/blob/main/CHANGELOG.md)
- [Commits](prometheus/prometheus@v0.48.1...v0.49.1)

---
updated-dependencies:
- dependency-name: github.com/prometheus/prometheus
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <[email protected]>

* fix: azuresdconfig typo (prometheus-operator#6259)

* fix: typo on AuthenticationMethod check

* chore: cut v0.71.2

Signed-off-by: Simon Pasquier <[email protected]>

* build(deps): bump github.com/thanos-io/thanos from 0.34.0-rc.1 to 0.34.0

Bumps [github.com/thanos-io/thanos](https://github.com/thanos-io/thanos) from 0.34.0-rc.1 to 0.34.0.
- [Release notes](https://github.com/thanos-io/thanos/releases)
- [Changelog](https://github.com/thanos-io/thanos/blob/main/CHANGELOG.md)
- [Commits](thanos-io/thanos@v0.34.0-rc.1...v0.34.0)

---
updated-dependencies:
- dependency-name: github.com/thanos-io/thanos
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <[email protected]>

* build(deps): bump github.com/prometheus-community/prom-label-proxy

Bumps [github.com/prometheus-community/prom-label-proxy](https://github.com/prometheus-community/prom-label-proxy) from 0.8.0 to 0.8.1.
- [Release notes](https://github.com/prometheus-community/prom-label-proxy/releases)
- [Changelog](https://github.com/prometheus-community/prom-label-proxy/blob/main/CHANGELOG.md)
- [Commits](prometheus-community/prom-label-proxy@v0.8.0...v0.8.1)

---
updated-dependencies:
- dependency-name: github.com/prometheus-community/prom-label-proxy
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <[email protected]>

* build(deps): bump github.com/evanphx/json-patch/v5 from 5.8.1 to 5.9.0

Bumps [github.com/evanphx/json-patch/v5](https://github.com/evanphx/json-patch) from 5.8.1 to 5.9.0.
- [Release notes](https://github.com/evanphx/json-patch/releases)
- [Commits](evanphx/json-patch@v5.8.1...v5.9.0)

---
updated-dependencies:
- dependency-name: github.com/evanphx/json-patch/v5
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <[email protected]>

* chore: update remote-write tests

Signed-off-by: Simon Pasquier <[email protected]>

* chore: create monitors before Prometheus

It speeds up the tests since it doesn't have to wait for the updated
configuration to be propagated to Prometheus.

Signed-off-by: Simon Pasquier <[email protected]>

* feat: support added scrape_protocols to Pod/Service monitors (prometheus-operator#6268)

* support scrape_protocols to podmonitor/servicemonitor

---------

Signed-off-by: dongjiang1989 <[email protected]>

* chore: add e2e test detecting the issue

Signed-off-by: Simon Pasquier <[email protected]>

* fix: convert `continue` field between v1beta1 and v1alpha1

This change converts the `continue` field between v1alpha1 and v1beta1
AlertmanagerConfig versions.

When a v1beta1 AlertmanagerConfig object was created with `continue:
true`, the `continue` field was always converted to `false` when stored
as v1alpha1.

Signed-off-by: Simon Pasquier <[email protected]>

* add slashpai to maintainers (prometheus-operator#6280)

Signed-off-by: Jayapriya Pai <[email protected]>

* chore: update Kind version to v0.21.0

This commit also bumps the Kubernetes version to v1.29.1.

Signed-off-by: Simon Pasquier <[email protected]>

* update go version 1.22

Signed-off-by: dongjiang1989 <[email protected]>

* Adds Warpbuild

* Bracket change

* Update ADOPTERS.md

* build(deps): bump golang.org/x/net from 0.20.0 to 0.21.0

Bumps [golang.org/x/net](https://github.com/golang/net) from 0.20.0 to 0.21.0.
- [Commits](golang/net@v0.20.0...v0.21.0)

---
updated-dependencies:
- dependency-name: golang.org/x/net
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <[email protected]>

* feat: add version check for thanos. keep_firing_for now available (prometheus-operator#6283)

* build(deps): bump golangci/golangci-lint-action from 3.7.0 to 3.7.1

Bumps [golangci/golangci-lint-action](https://github.com/golangci/golangci-lint-action) from 3.7.0 to 3.7.1.
- [Release notes](https://github.com/golangci/golangci-lint-action/releases)
- [Commits](golangci/golangci-lint-action@v3.7.0...v3.7.1)

---
updated-dependencies:
- dependency-name: golangci/golangci-lint-action
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <[email protected]>

* build(deps): bump sigs.k8s.io/controller-runtime from 0.17.0 to 0.17.1

Bumps [sigs.k8s.io/controller-runtime](https://github.com/kubernetes-sigs/controller-runtime) from 0.17.0 to 0.17.1.
- [Release notes](https://github.com/kubernetes-sigs/controller-runtime/releases)
- [Changelog](https://github.com/kubernetes-sigs/controller-runtime/blob/main/RELEASE.md)
- [Commits](kubernetes-sigs/controller-runtime@v0.17.0...v0.17.1)

---
updated-dependencies:
- dependency-name: sigs.k8s.io/controller-runtime
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <[email protected]>

* fix: remove deprecation on service monitor's targetPort

Closes prometheus-operator#6269

Signed-off-by: Simon Pasquier <[email protected]>

* build(deps): bump helm/kind-action from 1.8.0 to 1.9.0

Bumps [helm/kind-action](https://github.com/helm/kind-action) from 1.8.0 to 1.9.0.
- [Release notes](https://github.com/helm/kind-action/releases)
- [Commits](helm/kind-action@v1.8.0...v1.9.0)

---
updated-dependencies:
- dependency-name: helm/kind-action
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <[email protected]>

* build(deps): bump golangci/golangci-lint-action from 3.7.1 to 4.0.0

Bumps [golangci/golangci-lint-action](https://github.com/golangci/golangci-lint-action) from 3.7.1 to 4.0.0.
- [Release notes](https://github.com/golangci/golangci-lint-action/releases)
- [Commits](golangci/golangci-lint-action@v3.7.1...v4.0.0)

---
updated-dependencies:
- dependency-name: golangci/golangci-lint-action
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <[email protected]>

* fix: don't fail metadata transform on unknown types (prometheus-operator#6298)

* fix: don't fail metadata transform on unknown types

This change modifies the `PartialObjectMetadataStrip` function to return
the object unmodified if casting to `*v1.PartialObjectMetadata` fails.
When the informer processes a deleted object, its type can be
`cache.DeletedFinalStateUnknown`.

Co-authored-by: Ayoub Mrini <[email protected]>
Signed-off-by: Simon Pasquier <[email protected]>

* test: add TestPartialObjectMetadataStripOnDeletedFinalStateUnknown

Co-authored-by: machine424 <[email protected]>
Signed-off-by: Simon Pasquier <[email protected]>

Signed-off-by: machine424 <[email protected]>

---------

Signed-off-by: Simon Pasquier <[email protected]>
Signed-off-by: machine424 <[email protected]>
Co-authored-by: Ayoub Mrini <[email protected]>
Co-authored-by: machine424 <[email protected]>

* build(deps): bump github.com/prometheus/common from 0.46.0 to 0.47.0

Bumps [github.com/prometheus/common](https://github.com/prometheus/common) from 0.46.0 to 0.47.0.
- [Release notes](https://github.com/prometheus/common/releases)
- [Commits](prometheus/common@v0.46.0...v0.47.0)

---
updated-dependencies:
- dependency-name: github.com/prometheus/common
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <[email protected]>

* build(deps): bump sigs.k8s.io/controller-runtime from 0.17.1 to 0.17.2

Bumps [sigs.k8s.io/controller-runtime](https://github.com/kubernetes-sigs/controller-runtime) from 0.17.1 to 0.17.2.
- [Release notes](https://github.com/kubernetes-sigs/controller-runtime/releases)
- [Changelog](https://github.com/kubernetes-sigs/controller-runtime/blob/main/RELEASE.md)
- [Commits](kubernetes-sigs/controller-runtime@v0.17.1...v0.17.2)

---
updated-dependencies:
- dependency-name: sigs.k8s.io/controller-runtime
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <[email protected]>

* chore: update Kubernetes to v1.29.2

Signed-off-by: Simon Pasquier <[email protected]>

* chore: switch example app image

Signed-off-by: Simon Pasquier <[email protected]>

* Update go dependencies before release (prometheus-operator#6315)

* Update go dependencies before release

Signed-off-by: Arthur Silva Sens <[email protected]>

* make generate

Signed-off-by: Arthur Silva Sens <[email protected]>

---------

Signed-off-by: Arthur Silva Sens <[email protected]>

* docs: correct slashpai slack id

Signed-off-by: Jayapriya Pai <[email protected]>

* build(deps): bump github.com/prometheus/prometheus from 0.49.1 to 0.50.0

Bumps [github.com/prometheus/prometheus](https://github.com/prometheus/prometheus) from 0.49.1 to 0.50.0.
- [Release notes](https://github.com/prometheus/prometheus/releases)
- [Changelog](https://github.com/prometheus/prometheus/blob/main/CHANGELOG.md)
- [Commits](prometheus/prometheus@v0.49.1...v0.50.0)

---
updated-dependencies:
- dependency-name: github.com/prometheus/prometheus
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <[email protected]>

* Update default Thanos version (prometheus-operator#6317)

* Update default Thanos version

Signed-off-by: Arthur Silva Sens <[email protected]>

* Update unit tests depending on DefaultThanosVersion

Signed-off-by: Arthur Silva Sens <[email protected]>

---------

Signed-off-by: Arthur Silva Sens <[email protected]>

* Update Default Prometheus version

Signed-off-by: Arthur Silva Sens <[email protected]>

* feat: adding scrape class (prometheus-operator#6199)

* feat: adding scrape class

Signed-off-by: Nicolas Takashi <[email protected]>

* Update pkg/apis/monitoring/v1/prometheus_types.go

Co-authored-by: Arthur Silva Sens <[email protected]>

* Update pkg/prometheus/promcfg.go

Co-authored-by: Arthur Silva Sens <[email protected]>

* Update pkg/prometheus/store.go

Co-authored-by: Simon Pasquier <[email protected]>

* Update pkg/prometheus/resource_selector.go

Co-authored-by: Arthur Silva Sens <[email protected]>

* Update pkg/prometheus/store.go

Co-authored-by: Simon Pasquier <[email protected]>

* Update pkg/prometheus/resource_selector.go

Co-authored-by: Simon Pasquier <[email protected]>

* Update pkg/prometheus/resource_selector.go

Co-authored-by: Arthur Silva Sens <[email protected]>

* Update pkg/prometheus/promcfg.go

Co-authored-by: Simon Pasquier <[email protected]>

* Update pkg/prometheus/promcfg.go

Co-authored-by: Simon Pasquier <[email protected]>

* Update pkg/prometheus/server/operator.go

Co-authored-by: Simon Pasquier <[email protected]>

* Update pkg/prometheus/promcfg.go

Co-authored-by: Simon Pasquier <[email protected]>

* Update prometheus_types.go

Co-authored-by: Simon Pasquier <[email protected]>

---------

Signed-off-by: Nicolas Takashi <[email protected]>
Co-authored-by: Arthur Silva Sens <[email protected]>
Co-authored-by: Simon Pasquier <[email protected]>

* fix: update kubernetes slack link

Signed-off-by: Jayapriya Pai <[email protected]>

* build(deps): bump github.com/prometheus/prometheus from 0.50.0 to 0.50.1

Bumps [github.com/prometheus/prometheus](https://github.com/prometheus/prometheus) from 0.50.0 to 0.50.1.
- [Release notes](https://github.com/prometheus/prometheus/releases)
- [Changelog](https://github.com/prometheus/prometheus/blob/main/CHANGELOG.md)
- [Commits](prometheus/prometheus@v0.50.0...v0.50.1)

---
updated-dependencies:
- dependency-name: github.com/prometheus/prometheus
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <[email protected]>

* chore: move ProxyConfig type to v1

Related-to prometheus-operator#6301

Signed-off-by: Jayapriya Pai <[email protected]>

* build(deps): bump github.com/prometheus/alertmanager

Bumps [github.com/prometheus/alertmanager](https://github.com/prometheus/alertmanager) from 0.26.0 to 0.27.0.
- [Release notes](https://github.com/prometheus/alertmanager/releases)
- [Changelog](https://github.com/prometheus/alertmanager/blob/main/CHANGELOG.md)
- [Commits](prometheus/alertmanager@v0.26.0...v0.27.0)

---
updated-dependencies:
- dependency-name: github.com/prometheus/alertmanager
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <[email protected]>

* update prometheus version

Signed-off-by: dongjiang1989 <[email protected]>

* build(deps): bump github.com/prometheus/client_golang

Bumps [github.com/prometheus/client_golang](https://github.com/prometheus/client_golang) from 1.18.0 to 1.19.0.
- [Release notes](https://github.com/prometheus/client_golang/releases)
- [Changelog](https://github.com/prometheus/client_golang/blob/v1.19.0/CHANGELOG.md)
- [Commits](prometheus/client_golang@v1.18.0...v1.19.0)

---
updated-dependencies:
- dependency-name: github.com/prometheus/client_golang
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <[email protected]>

* update alertmanager version

Signed-off-by: dongjiang1989 <[email protected]>

* [FIX] scrape class regression (prometheus-operator#6345)

Signed-off-by: Nicolas Takashi <[email protected]>

* build(deps): bump github.com/stretchr/testify from 1.8.4 to 1.9.0

Bumps [github.com/stretchr/testify](https://github.com/stretchr/testify) from 1.8.4 to 1.9.0.
- [Release notes](https://github.com/stretchr/testify/releases)
- [Commits](stretchr/testify@v1.8.4...v1.9.0)

---
updated-dependencies:
- dependency-name: github.com/stretchr/testify
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <[email protected]>

* AlertmanagerConfig CRD: fix MonthRange validation regex

* AlertmanagerConfig CRD: improve MonthRange unit tests

* docs: correct example of scrapeConfigSelector in scrapeConfig doc

In the docs for scrapeConfig, the example of scrapeConfig in prometheus CR was incorrect.
In prometheus CR, in scrapeConfigSelector, there should be matchLabels and then the scrapeConfig label.

fixes prometheus-operator#6350

Signed-off-by: Dhruv Bindra <[email protected]>

* chores: change string type to duration type (prometheus-operator#6337)

* change string to duration

---------

Signed-off-by: dongjiang1989 <[email protected]>

* Prepare 0.72 release (prometheus-operator#6329)

Signed-off-by: Arthur Silva Sens <[email protected]>

* build(deps): bump golang.org/x/net from 0.21.0 to 0.22.0

Bumps [golang.org/x/net](https://github.com/golang/net) from 0.21.0 to 0.22.0.
- [Commits](golang/net@v0.21.0...v0.22.0)

---
updated-dependencies:
- dependency-name: golang.org/x/net
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <[email protected]>

* build(deps): bump google.golang.org/protobuf from 1.32.0 to 1.33.0

Bumps google.golang.org/protobuf from 1.32.0 to 1.33.0.

---
updated-dependencies:
- dependency-name: google.golang.org/protobuf
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <[email protected]>

* Bump prometheus/common

Signed-off-by: Arthur Silva Sens <[email protected]>

* feat: support --enable-feature argument in Alertmanager CRD (prometheus-operator#6152)

* feat: support alertmanager --enable-feature argument

this will expose more Alertmanager configuration parameters to users of the Alertmanager CRD.

Signed-off-by: Yonatan Sasson <[email protected]>

* feat: support sample_age_limit for QueueConfig (prometheus-operator#6326)

* add SampleAgeLimit

Signed-off-by: dongjiang1989 <[email protected]>

* update by code review

Signed-off-by: dongjiang1989 <[email protected]>

* change string type to duration

Signed-off-by: dongjiang1989 <[email protected]>

* update make generate

Signed-off-by: dongjiang1989 <[email protected]>

* update promcfg_test unittest

Signed-off-by: dongjiang1989 <[email protected]>

* update some nits by code review

Signed-off-by: dongjiang1989 <[email protected]>

---------

Signed-off-by: dongjiang1989 <[email protected]>

* feat: add bodySizeLimit to service and pod monitors (prometheus-operator#6349)

* feat: add EnforcedBodySizeLimit to service and monitor

* chore: bump to golangci-lint v1.56.2 (prometheus-operator#6384)

* update golangci lint version

---------

Signed-off-by: dongjiang1989 <[email protected]>

* [fix] test

* thanos: add support for web configuration to the ThanosRuler CRD (prometheus-operator#6278)

* thanos: add support for web configuration to the ThanosRuler CRD

This enable us to set tls for thanos ruler

Fixes prometheus-operator#6157

* [CHORE] normalizing tls structs monitor objects

Signed-off-by: Nicolas Takashi <[email protected]>

* build(deps): bump google.golang.org/protobuf in /scripts

Bumps google.golang.org/protobuf from 1.31.0 to 1.33.0.

---
updated-dependencies:
- dependency-name: google.golang.org/protobuf
  dependency-type: indirect
...

Signed-off-by: dependabot[bot] <[email protected]>

* build(deps): bump google.golang.org/protobuf in /pkg/client

Bumps google.golang.org/protobuf from 1.32.0 to 1.33.0.

---
updated-dependencies:
- dependency-name: google.golang.org/protobuf
  dependency-type: indirect
...

Signed-off-by: dependabot[bot] <[email protected]>

* Documentation: adding link for other supported service discoveries prometheus-operator#6382 (prometheus-operator#6391)

* build(deps): bump the k8s-libs group with 5 updates

Bumps the k8s-libs group with 5 updates:

| Package | From | To |
| --- | --- | --- |
| [k8s.io/api](https://github.com/kubernetes/api) | `0.29.2` | `0.29.3` |
| [k8s.io/apiextensions-apiserver](https://github.com/kubernetes/apiextensions-apiserver) | `0.29.2` | `0.29.3` |
| [k8s.io/apimachinery](https://github.com/kubernetes/apimachinery) | `0.29.2` | `0.29.3` |
| [k8s.io/client-go](https://github.com/kubernetes/client-go) | `0.29.2` | `0.29.3` |
| [k8s.io/component-base](https://github.com/kubernetes/component-base) | `0.29.2` | `0.29.3` |


Updates `k8s.io/api` from 0.29.2 to 0.29.3
- [Commits](kubernetes/api@v0.29.2...v0.29.3)

Updates `k8s.io/apiextensions-apiserver` from 0.29.2 to 0.29.3
- [Release notes](https://github.com/kubernetes/apiextensions-apiserver/releases)
- [Commits](kubernetes/apiextensions-apiserver@v0.29.2...v0.29.3)

Updates `k8s.io/apimachinery` from 0.29.2 to 0.29.3
- [Commits](kubernetes/apimachinery@v0.29.2...v0.29.3)

Updates `k8s.io/client-go` from 0.29.2 to 0.29.3
- [Changelog](https://github.com/kubernetes/client-go/blob/master/CHANGELOG.md)
- [Commits](kubernetes/client-go@v0.29.2...v0.29.3)

Updates `k8s.io/component-base` from 0.29.2 to 0.29.3
- [Commits](kubernetes/component-base@v0.29.2...v0.29.3)

---
updated-dependencies:
- dependency-name: k8s.io/api
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: k8s-libs
- dependency-name: k8s.io/apiextensions-apiserver
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: k8s-libs
- dependency-name: k8s.io/apimachinery
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: k8s-libs
- dependency-name: k8s.io/client-go
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: k8s-libs
- dependency-name: k8s.io/component-base
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: k8s-libs
...

Signed-off-by: dependabot[bot] <[email protected]>

* Regenerate documentation

Signed-off-by: Simon Pasquier <[email protected]>

* chore: add slashpai as v0.73 release shepherd

Signed-off-by: Jayapriya Pai <[email protected]>

* [fix] test

* Add extra relabelings to scrape classes (prometheus-operator#6379)

* [fix] - message

* Controller id implementation to avoid errors with multiple operators (prometheus-operator#6319)



Signed-off-by: Mario Fernandez <[email protected]>
Co-authored-by: Simon Pasquier <[email protected]>

* fix: enqueue in updating secret

* Add extra context to warnings (prometheus-operator#6410)

* Add extra context to warnings

* fix spread operator

* ScrapeConfig CRD: refactor ProxyConfig struct embedding (prometheus-operator#6401)

* ScrapeConfig CRD: refactor ProxyConfig embedding to v1.ProxyConfig instead of *v1.ProxyConfig

* Documentation: Remove experimental tag from sharding option in Prometheus CRD (prometheus-operator#6409)

This commit changes the docs so that future prometheus operator users know the option is out of experimental. The sharding option is used for many years by multiple contributers.

Co-authored-by: Gijs Entius <[email protected]>

* Update MAINTAINERS.md (prometheus-operator#6413)

Moving from Nicolas from triage to Maintainer

* build(deps): bump github.com/prometheus/common from 0.50.0 to 0.51.0

Bumps [github.com/prometheus/common](https://github.com/prometheus/common) from 0.50.0 to 0.51.0.
- [Release notes](https://github.com/prometheus/common/releases)
- [Commits](prometheus/common@v0.50.0...v0.51.0)

---
updated-dependencies:
- dependency-name: github.com/prometheus/common
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <[email protected]>

* build(deps): bump dependabot/fetch-metadata from 1 to 2 (prometheus-operator#6420)

Bumps [dependabot/fetch-metadata](https://github.com/dependabot/fetch-metadata) from 1 to 2.
- [Release notes](https://github.com/dependabot/fetch-metadata/releases)
- [Commits](dependabot/fetch-metadata@v1...v2)

---
updated-dependencies:
- dependency-name: dependabot/fetch-metadata
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <[email protected]>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>

* Signed-off-by: deterclosed <[email protected]>

chore: remove repetitive words

Signed-off-by: deterclosed <[email protected]>

* build(deps): bump github.com/prometheus/common from 0.51.0 to 0.51.1

Bumps [github.com/prometheus/common](https://github.com/prometheus/common) from 0.51.0 to 0.51.1.
- [Release notes](https://github.com/prometheus/common/releases)
- [Commits](prometheus/common@v0.51.0...v0.51.1)

---
updated-dependencies:
- dependency-name: github.com/prometheus/common
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <[email protected]>

* Document PodMonitor, Probe and Thanos sidecar as stable

These 3 features have been there for so long that we agreed to remove
the experimental warning on them.

This commit also makes the wording more consistent for all fields which
are still considered experimental (either from the operator standpoint
or from Prometheus standpoint).

Signed-off-by: Simon Pasquier <[email protected]>

* Fix: ScrapeConfigs Selection Issue Across Different Namespaces (prometheus-operator#6390)

* Add testing for scrapeconfig and prometheus CR in different namespaces

* fix: wrap panic for scheme

* build(deps): bump github.com/distribution/reference from 0.5.0 to 0.6.0

Bumps [github.com/distribution/reference](https://github.com/distribution/reference) from 0.5.0 to 0.6.0.
- [Release notes](https://github.com/distribution/reference/releases)
- [Commits](distribution/reference@v0.5.0...v0.6.0)

---
updated-dependencies:
- dependency-name: github.com/distribution/reference
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <[email protected]>

* Docs: Include Local Deployment in CONTRIBUTING.md (prometheus-operator#6388)

* Update CONTRIBUTING.md to include local deployment section

* Bump prometheus to 0.51.1

Signed-off-by: Arthur Silva Sens <[email protected]>

* Kubelet: Add a flag to set node address priority (prometheus-operator#6377)

* Add a flag to set node address priority

Currently internal node addresses are prioritized over external addresses. This adds a flag to allow users to freely set node address priority (internal/external). This is helpful for use cases where node internal addresses exist but are not routable.

Fixes prometheus-operator#3247

* Refactor operators event handler (prometheus-operator#6416)

* chore: Refactor controller's event handler to reduce code duplication
Signed-off-by: Mohammad Jamshidi <[email protected]>

---------

Signed-off-by: Mohammad Jamshidi <[email protected]>

* Fixed the link in Prometheus Agent page

* feat(xds): Add support eureka service discovery to the ScrapeConfig CRD  (prometheus-operator#6408)

feat: add eureka sd config

Signed-off-by: dongjiang1989 <[email protected]>

* Update http_sd description for clarity (prometheus-operator#6454)

* chore: bump go dependencies before release

Signed-off-by: Jayapriya Pai <[email protected]>

* chore: update default prometheus version

Signed-off-by: Jayapriya Pai <[email protected]>

* Update kakkoyun's affiliation

* feat(xds): Add Kuma service discovery to the ScrapeConfig CRD (prometheus-operator#6327)

* support kuma xds

Signed-off-by: dongjiang1989 <[email protected]>

* Add DockerSD support for ScrapeConfig CRD

Add DockerSDConfig struct and array of DockerSDConfig to the ScrapeConfig struct

Add code block placeholder to process DockerSDConfig

Add Code-gen for the updated scrapeconfig with DockerSDConfig

Revert "Add Code-gen for the updated scrapeconfig with DockerSDConfig"

This reverts commit f7d2ff9.

Edit DockerSDConfig struct

Add Code-gen for the updated DockerSDConfig

Add processing code block for DockerSDConfig in the ScrapeConfig CRD

Update processing filters in DockerSDConfig

Add tests for DockerSDConfig

Add missing host field to DockerSDConfig struct and remove TODOs in promcfg.go

Update promcfg.go to append host field to the DockerSDConfiguration

Update autogen code and perform formatting fixes

Update DockerSD tests to include Host field

Add resource_selector validation and tests for Docker SD configs

Update tests according to host variable, tests pass

Add DockerFilter type for the filters field in DockerSDConfigs

Add code-gen for DockerFilter type update

Update promcfg test and test data for DockerFilter type

Update DockerFilter

Format code

Update pkg/apis/monitoring/v1alpha1/scrapeconfig_types.go

Co-authored-by: Jayapriya Pai <[email protected]>

Add validation for host field

Add relevant comments and remove unrelated debug code

Code-gen and format code

Revert "Change git mod file"

This reverts commit 232816f.

Change from pointer to ProxyConfig to variable reference

Generate Code and Format

Format code

Refactor test cases for Docker SD

One test case each for OAuth, BasicAuth and Authorization fields. Also includes other fields like TLSConfig, hostnetworkinghost etc.

Format code

* feat: added a check to determine if thanos support the '--prometheus.http-client' flag (prometheus-operator#6448)

* feat: added a check to determine if thanos support the '--prometheus.http-client' flag

* Check if controllers' CRDs are provided and manageable by operator (prometheus-operator#6351)

* operator cmd: check if controllers' crds are supplied

Only start each controller when its crd is provided, and fail the operator if no controllers start.

Fixes prometheus-operator#6140

* Nit

* Resolve reviews

* chore: Add checks for selectors in KubernetesSDConfig (prometheus-operator#6177)

chore: test added

rfac: kubernetes sd role

chore: cofig.Role to lowercase

rfac: unit_test role_consts

* fix: add proxyURL validation for smon,pmon and probe

If a user specify a non-parsable proxyUrl it was not validated/rejected
but will break reloading and restarting of Prometheus due to possible invalid syntax.
This commit adds validation and rejects the invalid ones

Signed-off-by: Jayapriya Pai <[email protected]>

* feat: add support for Hetzner SD in ScrapeConfig CRD (prometheus-operator#6436)

* ScrapeConfig CRD: add HetznerSDConfig API definition & include it under ScrapeConfig spec

* feat(kuma): Add validation for kuma server (prometheus-operator#6465)

Signed-off-by: dongjiang1989 <[email protected]>
Co-authored-by: Jayapriya Pai <[email protected]>

* relabel config: allow empty separator

Allow empty separator in relabel config. This is corresponding to Prometheus' relabel config.

Fixes prometheus-operator#5003

* chore: cut v0.73.0

Signed-off-by: Jayapriya Pai <[email protected]>

* fix: log deprecated bearer token fields at debug level

Signed-off-by: Simon Pasquier <[email protected]>

* chore: cut v0.73.1

Signed-off-by: Jayapriya Pai <[email protected]>

* fix: register k8s metrics

controller-runtime also calls `metrics.Register()` during init and this
function can be called only once. To ensure that the k8s client metrics
get updated, the global variables need to be set again by the operator.

https://github.com/kubernetes-sigs/controller-runtime/blob/67b27f27e514bd9ac4cf9a2d84dec089ece95bf7/pkg/metrics/client_go_adapter.go#L42-L55
https://github.com/kubernetes/client-go/blob/aa7909e7d7c0661792ba21b9e882f3cd6ad0ce53/tools/metrics/metrics.go#L129-L170

Signed-off-by: Simon Pasquier <[email protected]>

* fix: ScrapeClass TLSConfig nil pointer exception (prometheus-operator#6507)


Signed-off-by: Simon Pasquier <[email protected]>

* chore:cut v0.73.2

Signed-off-by: Jayapriya Pai <[email protected]>

Co-authored-by: Simon Pasquier <[email protected]>

* Fix errors and go versions in build scripts

Signed-off-by: Coleen Iona Quadros <[email protected]>

* Run make --always-make format generate

Signed-off-by: Coleen Iona Quadros <[email protected]>

* lint

Signed-off-by: Coleen Iona Quadros <[email protected]>

* remove duplicate code

Signed-off-by: Coleen Iona Quadros <[email protected]>

---------

Signed-off-by: Arthur Silva Sens <[email protected]>
Signed-off-by: Simon Pasquier <[email protected]>
Signed-off-by: dependabot[bot] <[email protected]>
Signed-off-by: Jayapriya Pai <[email protected]>
Signed-off-by: Pranshu Srivastava <[email protected]>
Signed-off-by: dongjiang1989 <[email protected]>
Signed-off-by: adinhodovic <[email protected]>
Signed-off-by: machine424 <[email protected]>
Signed-off-by: Nicolas Takashi <[email protected]>
Signed-off-by: Dhruv Bindra <[email protected]>
Signed-off-by: Yonatan Sasson <[email protected]>
Signed-off-by: Mario Fernandez <[email protected]>
Signed-off-by: deterclosed <[email protected]>
Signed-off-by: Mohammad Jamshidi <[email protected]>
Signed-off-by: Coleen Iona Quadros <[email protected]>
Co-authored-by: Simon Pasquier <[email protected]>
Co-authored-by: Arthur Silva Sens <[email protected]>
Co-authored-by: Hervé Nicol <[email protected]>
Co-authored-by: Herve Nicol <[email protected]>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
Co-authored-by: Jayapriya Pai <[email protected]>
Co-authored-by: Pranshu Srivastava <[email protected]>
Co-authored-by: dongjiang <[email protected]>
Co-authored-by: Arthur Silva Sens <[email protected]>
Co-authored-by: adinhodovic <[email protected]>
Co-authored-by: Jimmy Zelinskie <[email protected]>
Co-authored-by: Sam Kirsch <[email protected]>
Co-authored-by: Michael Borens <[email protected]>
Co-authored-by: Prajjwal <[email protected]>
Co-authored-by: DeamonMV <[email protected]>
Co-authored-by: Ayoub Mrini <[email protected]>
Co-authored-by: machine424 <[email protected]>
Co-authored-by: Nicolas Takashi <[email protected]>
Co-authored-by: Mouad Elhaouari <[email protected]>
Co-authored-by: Dhruv Bindra <[email protected]>
Co-authored-by: Yonatan Sasson <[email protected]>
Co-authored-by: Mohammad <[email protected]>
Co-authored-by: Helia Barroso <[email protected]>
Co-authored-by: Seriki Ayodele <[email protected]>
Co-authored-by: Quentin Bisson <[email protected]>
Co-authored-by: Mario Fernandez Herrero <[email protected]>
Co-authored-by: Mouad Elhaouari <[email protected]>
Co-authored-by: Gijs Entius <[email protected]>
Co-authored-by: Gijs Entius <[email protected]>
Co-authored-by: deterclosed <[email protected]>
Co-authored-by: M Viswanath Sai <[email protected]>
Co-authored-by: googs1025 <[email protected]>
Co-authored-by: Ha Anh Vu <[email protected]>
Co-authored-by: Ashwin <[email protected]>
Co-authored-by: Pavan Gudiwada <[email protected]>
Co-authored-by: Kemal Akkoyun <[email protected]>
Co-authored-by: mviswanathsai <[email protected]>
Co-authored-by: Matheus Sousa <[email protected]>
Co-authored-by: yash <[email protected]>
Co-authored-by: haanhvu <[email protected]>
openshift-merge-bot bot pushed a commit to stolostron/prometheus-operator that referenced this pull request Aug 2, 2024
* fix: ScrapeClass TLSConfig nil pointer exception (prometheus-operator#6507)


Signed-off-by: Simon Pasquier <[email protected]>

* Update .github/workflows/stale.yaml

Co-authored-by: Jayapriya Pai <[email protected]>

* build(deps): bump github.com/prometheus/common from 0.52.3 to 0.53.0

Bumps [github.com/prometheus/common](https://github.com/prometheus/common) from 0.52.3 to 0.53.0.
- [Release notes](https://github.com/prometheus/common/releases)
- [Commits](prometheus/common@v0.52.3...v0.53.0)

---
updated-dependencies:
- dependency-name: github.com/prometheus/common
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <[email protected]>

* build(deps): bump golang.org/x/net from 0.21.0 to 0.23.0 in /scripts

Bumps [golang.org/x/net](https://github.com/golang/net) from 0.21.0 to 0.23.0.
- [Commits](golang/net@v0.21.0...v0.23.0)

---
updated-dependencies:
- dependency-name: golang.org/x/net
  dependency-type: indirect
...

Signed-off-by: dependabot[bot] <[email protected]>

* build(deps): bump golang.org/x/net from 0.22.0 to 0.23.0 in /pkg/client

Bumps [golang.org/x/net](https://github.com/golang/net) from 0.22.0 to 0.23.0.
- [Commits](golang/net@v0.22.0...v0.23.0)

---
updated-dependencies:
- dependency-name: golang.org/x/net
  dependency-type: indirect
...

Signed-off-by: dependabot[bot] <[email protected]>

* chore:cut v0.73.2

Signed-off-by: Jayapriya Pai <[email protected]>

Co-authored-by: Simon Pasquier <[email protected]>

* chore: update RELEASE.md instructions (prometheus-operator#6539)

* chore: update RELEASE.md instructions

Signed-off-by: Jayapriya Pai <[email protected]>

* Update RELEASE.md

Co-authored-by: Arthur Silva Sens <[email protected]>

---------

Signed-off-by: Jayapriya Pai <[email protected]>
Co-authored-by: Arthur Silva Sens <[email protected]>

* update golangci-lint version (prometheus-operator#6543)

Signed-off-by: dongjiang1989 <[email protected]>

* feat(xds): Add support nomad service discovery to the ScrapeConfig CRD (prometheus-operator#6485)

* add support for nomad sd

Signed-off-by: dongjiang1989 <[email protected]>

* fix generate checks

Signed-off-by: Jayapriya Pai <[email protected]>

* build(deps): bump golangci/golangci-lint-action from 4.0.0 to 5.0.0 (prometheus-operator#6547)

Bumps [golangci/golangci-lint-action](https://github.com/golangci/golangci-lint-action) from 4.0.0 to 5.0.0.
- [Release notes](https://github.com/golangci/golangci-lint-action/releases)
- [Commits](golangci/golangci-lint-action@v4.0.0...v5.0.0)

---
updated-dependencies:
- dependency-name: golangci/golangci-lint-action
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <[email protected]>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>

* build(deps): bump helm/kind-action from 1.9.0 to 1.10.0

Bumps [helm/kind-action](https://github.com/helm/kind-action) from 1.9.0 to 1.10.0.
- [Release notes](https://github.com/helm/kind-action/releases)
- [Commits](helm/kind-action@v1.9.0...v1.10.0)

---
updated-dependencies:
- dependency-name: helm/kind-action
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <[email protected]>

* chore: bump k8s libs to v0.30.0

Signed-off-by: Simon Pasquier <[email protected]>

* chore: refactor the assets package

This commit simplifies the API of the assets package. To limit the
impact, it tackles only Basic Auth secrets for now.

Previous API:

```
// storing the credentials from function A
err = store.AddBasicAuth(ctx, namespace, httpConfig.BasicAuth, "some key")

// retrieving the credentials from function B
basicAuth := store.BasicAuthAssets["some key"]
```

New API:

```
// storing the credentials from function A
err = store.AddBasicAuth(ctx, namespace, httpConfig.BasicAuth)

// retrieving the credentials from function B
s := store.ForNamespace(namespace)
username, err := s.GetSecretKey(basicAuth.Username)
password, err := s.GetSecretKey(basicAuth.Password)
```

The main simplification is that function B doesn't need to know how
function A built the key value. It also makes testing more decoupled and
reduces the risk of leaking data across namespaces.

Signed-off-by: Simon Pasquier <[email protected]>

* build(deps): bump sigs.k8s.io/controller-runtime from 0.17.3 to 0.18.0

Bumps [sigs.k8s.io/controller-runtime](https://github.com/kubernetes-sigs/controller-runtime) from 0.17.3 to 0.18.0.
- [Release notes](https://github.com/kubernetes-sigs/controller-runtime/releases)
- [Changelog](https://github.com/kubernetes-sigs/controller-runtime/blob/main/RELEASE.md)
- [Commits](kubernetes-sigs/controller-runtime@v0.17.3...v0.18.0)

---
updated-dependencies:
- dependency-name: sigs.k8s.io/controller-runtime
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <[email protected]>

* Chore: Change *RelabelConfigs to values instead of Pointers  (prometheus-operator#6479)

Signed-off-by: Simon Pasquier <[email protected]>

---------

Signed-off-by: Simon Pasquier <[email protected]>
Co-authored-by: Simon Pasquier <[email protected]>

* doc: fix sample port name used

* build(deps): bump golangci/golangci-lint-action from 5.0.0 to 5.1.0

Bumps [golangci/golangci-lint-action](https://github.com/golangci/golangci-lint-action) from 5.0.0 to 5.1.0.
- [Release notes](https://github.com/golangci/golangci-lint-action/releases)
- [Commits](golangci/golangci-lint-action@v5.0.0...v5.1.0)

---
updated-dependencies:
- dependency-name: golangci/golangci-lint-action
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <[email protected]>

* build(deps): bump google.golang.org/protobuf from 1.33.0 to 1.34.0

Bumps google.golang.org/protobuf from 1.33.0 to 1.34.0.

---
updated-dependencies:
- dependency-name: google.golang.org/protobuf
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <[email protected]>

* chore: refactor OAuth2 in the assets package

This is the follow-up of prometheus-operator#6537 for OAuth2 credentials.

Signed-off-by: Simon Pasquier <[email protected]>

* build(deps): bump sigs.k8s.io/controller-runtime from 0.18.0 to 0.18.1

Bumps [sigs.k8s.io/controller-runtime](https://github.com/kubernetes-sigs/controller-runtime) from 0.18.0 to 0.18.1.
- [Release notes](https://github.com/kubernetes-sigs/controller-runtime/releases)
- [Changelog](https://github.com/kubernetes-sigs/controller-runtime/blob/main/RELEASE.md)
- [Commits](kubernetes-sigs/controller-runtime@v0.18.0...v0.18.1)

---
updated-dependencies:
- dependency-name: sigs.k8s.io/controller-runtime
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <[email protected]>

* build(deps): bump github.com/thanos-io/thanos from 0.34.1 to 0.35.0

Bumps [github.com/thanos-io/thanos](https://github.com/thanos-io/thanos) from 0.34.1 to 0.35.0.
- [Release notes](https://github.com/thanos-io/thanos/releases)
- [Changelog](https://github.com/thanos-io/thanos/blob/main/CHANGELOG.md)
- [Commits](thanos-io/thanos@v0.34.1...v0.35.0)

---
updated-dependencies:
- dependency-name: github.com/thanos-io/thanos
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <[email protected]>

* feat: add Go runtime scheduler metrics

Signed-off-by: Simon Pasquier <[email protected]>

* chore: add link to public calendar (prometheus-operator#6564)

Signed-off-by: Simon Pasquier <[email protected]>

* Add testing steps for podman with kind (prometheus-operator#6509)

* chore: Add testing instructions for using Podman with Kind

* chore: fixing typos

* Update formatting according to the failing checks.

* Removed whitespace to match the standard.

* Updating according to the suggestions from review.

* update prometheus version

Signed-off-by: dongjiang1989 <[email protected]>

* build(deps): bump golangci/golangci-lint-action from 5.1.0 to 5.3.0

Bumps [golangci/golangci-lint-action](https://github.com/golangci/golangci-lint-action) from 5.1.0 to 5.3.0.
- [Release notes](https://github.com/golangci/golangci-lint-action/releases)
- [Commits](golangci/golangci-lint-action@v5.1.0...v5.3.0)

---
updated-dependencies:
- dependency-name: golangci/golangci-lint-action
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <[email protected]>

* chore: make TLSConfig fields optional

This commit changes the `serverName` and `insecureSkipVerify` fields of
TLS configuration to pointers instead of values.

Signed-off-by: Simon Pasquier <[email protected]>

* build(deps): bump sigs.k8s.io/controller-runtime from 0.18.1 to 0.18.2

Bumps [sigs.k8s.io/controller-runtime](https://github.com/kubernetes-sigs/controller-runtime) from 0.18.1 to 0.18.2.
- [Release notes](https://github.com/kubernetes-sigs/controller-runtime/releases)
- [Changelog](https://github.com/kubernetes-sigs/controller-runtime/blob/main/RELEASE.md)
- [Commits](kubernetes-sigs/controller-runtime@v0.18.1...v0.18.2)

---
updated-dependencies:
- dependency-name: sigs.k8s.io/controller-runtime
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <[email protected]>

* build(deps): bump golang.org/x/net from 0.24.0 to 0.25.0

Bumps [golang.org/x/net](https://github.com/golang/net) from 0.24.0 to 0.25.0.
- [Commits](golang/net@v0.24.0...v0.25.0)

---
updated-dependencies:
- dependency-name: golang.org/x/net
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <[email protected]>

* fix: apply TLS scrape class to all objects

Before this change, the TLS configuration from the scrape class wasn't
applied to the generated configuration for PodMonitor, ScrapeConfig and
Probe objects.

Closes prometheus-operator#6556

Signed-off-by: Simon Pasquier <[email protected]>

* build(deps): bump google.golang.org/protobuf from 1.34.0 to 1.34.1

Bumps google.golang.org/protobuf from 1.34.0 to 1.34.1.

---
updated-dependencies:
- dependency-name: google.golang.org/protobuf
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <[email protected]>

* update thanos version

Signed-off-by: dongjiang1989 <[email protected]>

* fix mistake by make generate

Signed-off-by: dongjiang1989 <[email protected]>

* build(deps): bump golangci/golangci-lint-action from 5.3.0 to 6.0.1

Bumps [golangci/golangci-lint-action](https://github.com/golangci/golangci-lint-action) from 5.3.0 to 6.0.1.
- [Release notes](https://github.com/golangci/golangci-lint-action/releases)
- [Commits](golangci/golangci-lint-action@v5.3.0...v6.0.1)

---
updated-dependencies:
- dependency-name: golangci/golangci-lint-action
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <[email protected]>

* build(deps): bump github.com/prometheus/prometheus from 0.51.2 to 0.52.0

Bumps [github.com/prometheus/prometheus](https://github.com/prometheus/prometheus) from 0.51.2 to 0.52.0.
- [Release notes](https://github.com/prometheus/prometheus/releases)
- [Changelog](https://github.com/prometheus/prometheus/blob/main/CHANGELOG.md)
- [Commits](prometheus/prometheus@v0.51.2...v0.52.0)

---
updated-dependencies:
- dependency-name: github.com/prometheus/prometheus
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <[email protected]>

* build(deps): bump github.com/prometheus/client_golang

Bumps [github.com/prometheus/client_golang](https://github.com/prometheus/client_golang) from 1.19.0 to 1.19.1.
- [Release notes](https://github.com/prometheus/client_golang/releases)
- [Changelog](https://github.com/prometheus/client_golang/blob/main/CHANGELOG.md)
- [Commits](prometheus/client_golang@v1.19.0...v1.19.1)

---
updated-dependencies:
- dependency-name: github.com/prometheus/client_golang
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <[email protected]>

* fix: deref nil pointer on WebexConfig

Signed-off-by: Yoan Blanc <[email protected]>

* feat: add `go_sync_mutex_wait_total_seconds_total` metric

Signed-off-by: Simon Pasquier <[email protected]>

* chore: update golangci-lint configuration

Signed-off-by: Simon Pasquier <[email protected]>

* chore: update kind version to v0.23.0

Signed-off-by: Simon Pasquier <[email protected]>

* chore: update Prometheus to v2.52.0

Signed-off-by: Simon Pasquier <[email protected]>

* feat(ProxyConfig): Update CRD for ProxyConnectHeader type (prometheus-operator#6541)

* update CRD for ProxyConnectHeader

---------

Signed-off-by: dongjiang1989 <[email protected]>

* Feat: Add `relabel_configs` field to AlertmanagerEndpoints  (prometheus-operator#6467)

* Add RelabelConfigs to AlertmanagerEndpoints

* chore: Update vulnerable dependency golang.org/x/net

Signed-off-by: Arthur Silva Sens <[email protected]>

* chore: bump k8s libraries

Signed-off-by: Simon Pasquier <[email protected]>

* feat(env):  auto set GOMAXPROCS by go.uber.org/automaxprocs (prometheus-operator#6576)


---------

Signed-off-by: dongjiang1989 <[email protected]>

* feat: support SDK auth in AzureSD

Related-to prometheus-operator#6584

Signed-off-by: Jayapriya Pai <[email protected]>

* feat: support SDK auth in AzureAD RemoteWrite

Related-to prometheus-operator#6584

Signed-off-by: Jayapriya Pai <[email protected]>

* Update promcfg.go

Co-authored-by: Simon Pasquier <[email protected]>

* Add structure for feature flags

Signed-off-by: Arthur Silva Sens <[email protected]>

* [WIP] Feat: Add `alert_relabel_configs` to the Prometheus and PrometheusAgent CRD's (prometheus-operator#6450)

* AlertmanagerEndpoints: add alertRelabelingConfigs field to AlertmanagerEndpoints

* alertmanagerEndpoints: wrap errors and fix naming for tests

* fix: attempt to manually revert mistakenly commited code

* chore: cut v0.74.0

Signed-off-by: Simon Pasquier <[email protected]>

* Corrected Documentation for xxxMonitorNamespaceSelector  (prometheus-operator#6605)

Chore: Clarify that null is the default value for Service/PodMonitor selectors

* Reload alert manager when notification templates change (prometheus-operator#6607)

* Reload alert manager when notification templates change

* feat: add automatic GOMAXPROCS to admission webhook

Signed-off-by: Simon Pasquier <[email protected]>

* crd: add support for source pagerduty_config option in AlertMananger CRD (prometheus-operator#6427)

* crd: add support for source pagerduty_config option in AlertMananger CRD

The AlertManager CRD was expected to have 1:1 fields mapped from
https://prometheus.io/docs/alerting/latest/configuration/#pagerduty_config
. Currently source was missing so it is added.


---------

Co-authored-by: Jayapriya Pai <[email protected]>

* AlertmanagerEndpoints: Move AlertmanagerEndpoints validation to pkg/prometheus/server

* chore: remove WebTLSConfigError

Signed-off-by: Simon Pasquier <[email protected]>

* chore: rework webconfig package

Signed-off-by: Simon Pasquier <[email protected]>

* Add extra metric relabelings to scrape classes

Signed-off-by: Mathieu Parent <[email protected]>

* bugfix: Fix bug created from race conditions during merge

Signed-off-by: Arthur Silva Sens <[email protected]>

* [CHORE] considering global limits over enforced

Signed-off-by: Nicolas Takashi <[email protected]>

* build(deps): bump sigs.k8s.io/controller-runtime from 0.18.2 to 0.18.3

Bumps [sigs.k8s.io/controller-runtime](https://github.com/kubernetes-sigs/controller-runtime) from 0.18.2 to 0.18.3.
- [Release notes](https://github.com/kubernetes-sigs/controller-runtime/releases)
- [Changelog](https://github.com/kubernetes-sigs/controller-runtime/blob/main/RELEASE.md)
- [Commits](kubernetes-sigs/controller-runtime@v0.18.2...v0.18.3)

---
updated-dependencies:
- dependency-name: sigs.k8s.io/controller-runtime
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <[email protected]>

* e2e/framework: Allow setting feature-gates when creating Prometheus-Operator

Signed-off-by: Arthur Silva Sens <[email protected]>

* chore: add slashpai as release shepherd for v0.75

Signed-off-by: Jayapriya Pai <[email protected]>

* Make a cluster of 2 worker nodes for e2e

* [BUGFIX] Fix PrometheusAgent reconciliation for the statefulset changes (prometheus-operator#6615)

* [BUGFIX] Fix PrometheusAgent reconciliation for the statefulset changes

Signed-off-by: junotx <[email protected]>

---------

Signed-off-by: junotx <[email protected]>

* chore: add test for AlertmanagerConfig with subroutes

Signed-off-by: Simon Pasquier <[email protected]>

* Use functional options pattern for Prometheus Controller

Signed-off-by: Arthur Silva Sens <[email protected]>

* ScrapeConfig: Add `JobName` field to the CRD

Co-authored-by: M Viswanath Sai <[email protected]>

* chore: fix testScrapeConfigKubernetesNodeRole()

Signed-off-by: Simon Pasquier <[email protected]>

* chore: bump k8s dependencies for api

regenerate assets

Fixes prometheus-operator#6617

Signed-off-by: Jayapriya Pai <[email protected]>

* [CHORE] allowing kubeconfig as parameter (prometheus-operator#6623)

Signed-off-by: Nicolas Takashi <[email protected]>

* Add feature gate for Prometheus Agent's DaemonSet deployment (prometheus-operator#6626)

* Add feature gate for Prometheus Agent's DaemonSet deployment

* Update pkg/prometheus/promcfg.go

Co-authored-by: Simon Pasquier <[email protected]>

* feat(env): Add automatic memory limit handling (prometheus-operator#6591)

* add auto GOMEMLIMIT

Signed-off-by: dongjiang1989 <[email protected]>


---------

Signed-off-by: dongjiang1989 <[email protected]>
Co-authored-by: Simon Pasquier <[email protected]>

* build(deps): bump github.com/KimMachineGun/automemlimit

Bumps [github.com/KimMachineGun/automemlimit](https://github.com/KimMachineGun/automemlimit) from 0.6.0 to 0.6.1.
- [Release notes](https://github.com/KimMachineGun/automemlimit/releases)
- [Commits](KimMachineGun/automemlimit@v0.6.0...v0.6.1)

---
updated-dependencies:
- dependency-name: github.com/KimMachineGun/automemlimit
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <[email protected]>

* fix: use a separate port number for init container

The Kubernetes API starting from v1.30 will return a warning when a pod
template contains 2 containers exposing the same port number, even
across init and regular containers.

[1] kubernetes/kubernetes#113245

Signed-off-by: Simon Pasquier <[email protected]>

* Update pkg/prometheus/promcfg.go

Co-authored-by: Simon Pasquier <[email protected]>

* build(deps): bump github.com/prometheus/prometheus from 0.52.0 to 0.52.1

Bumps [github.com/prometheus/prometheus](https://github.com/prometheus/prometheus) from 0.52.0 to 0.52.1.
- [Release notes](https://github.com/prometheus/prometheus/releases)
- [Changelog](https://github.com/prometheus/prometheus/blob/main/CHANGELOG.md)
- [Commits](prometheus/prometheus@v0.52.0...v0.52.1)

---
updated-dependencies:
- dependency-name: github.com/prometheus/prometheus
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <[email protected]>

* build(deps): bump github.com/thanos-io/thanos from 0.35.0 to 0.35.1

Bumps [github.com/thanos-io/thanos](https://github.com/thanos-io/thanos) from 0.35.0 to 0.35.1.
- [Release notes](https://github.com/thanos-io/thanos/releases)
- [Changelog](https://github.com/thanos-io/thanos/blob/v0.35.1/CHANGELOG.md)
- [Commits](thanos-io/thanos@v0.35.0...v0.35.1)

---
updated-dependencies:
- dependency-name: github.com/thanos-io/thanos
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <[email protected]>

* Update pkg/prometheus/promcfg.go

Co-authored-by: Simon Pasquier <[email protected]>

* Update pkg/prometheus/promcfg.go

Co-authored-by: Simon Pasquier <[email protected]>

* Update pkg/prometheus/promcfg.go

Co-authored-by: Simon Pasquier <[email protected]>

* Update pkg/prometheus/promcfg.go

Co-authored-by: Simon Pasquier <[email protected]>

* Update pkg/prometheus/promcfg.go

Co-authored-by: Simon Pasquier <[email protected]>

* Update pkg/prometheus/promcfg.go

Co-authored-by: Simon Pasquier <[email protected]>

* chore: refactor tokens management in the assets package

This is a follow-up of prometheus-operator#6537 and prometheus-operator#6557.

Signed-off-by: Simon Pasquier <[email protected]>

* chore: add test-e2e-image target to Makefile

This change also simplifies the end-to-end testing instructions.

Signed-off-by: Simon Pasquier <[email protected]>

* Add `mode` field in PrometheusAgent CRD (prometheus-operator#6640)

* Add mode field in PrometheusAgent CRD

* build(deps): bump github.com/prometheus/common from 0.53.0 to 0.54.0

Bumps [github.com/prometheus/common](https://github.com/prometheus/common) from 0.53.0 to 0.54.0.
- [Release notes](https://github.com/prometheus/common/releases)
- [Changelog](https://github.com/prometheus/common/blob/main/RELEASE.md)
- [Commits](prometheus/common@v0.53.0...v0.54.0)

---
updated-dependencies:
- dependency-name: github.com/prometheus/common
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <[email protected]>

* chore: refactor sigv4 management in the assets package

This is a follow-up of prometheus-operator#6537 and prometheus-operator#6557 and prometheus-operator#6641.

Signed-off-by: Simon Pasquier <[email protected]>

* Update pkg/prometheus/promcfg.go

Co-authored-by: Simon Pasquier <[email protected]>

* chore: refactor AzureAD management in the assets package

This is a follow-up of prometheus-operator#6537 and prometheus-operator#6557, prometheus-operator#6641 and prometheus-operator#6644.

Signed-off-by: Simon Pasquier <[email protected]>

* build(deps): bump github.com/prometheus-community/prom-label-proxy

Bumps [github.com/prometheus-community/prom-label-proxy](https://github.com/prometheus-community/prom-label-proxy) from 0.8.1 to 0.9.0.
- [Release notes](https://github.com/prometheus-community/prom-label-proxy/releases)
- [Changelog](https://github.com/prometheus-community/prom-label-proxy/blob/main/CHANGELOG.md)
- [Commits](prometheus-community/prom-label-proxy@v0.8.1...v0.9.0)

---
updated-dependencies:
- dependency-name: github.com/prometheus-community/prom-label-proxy
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <[email protected]>

* build(deps): bump golang.org/x/net from 0.25.0 to 0.26.0

Bumps [golang.org/x/net](https://github.com/golang/net) from 0.25.0 to 0.26.0.
- [Commits](golang/net@v0.25.0...v0.26.0)

---
updated-dependencies:
- dependency-name: golang.org/x/net
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <[email protected]>

* ScrapeConfig CRD: Add DockerswarmSDConfigs to the ScrapeConfig CRD

* ScrapeConfig: Add LinodeSDConfigs To The ScrapeConfig CRD

* ScrapeConfig CRD: Add PuppetDB Service Discovery Configurations

* build(deps): bump sigs.k8s.io/controller-runtime from 0.18.3 to 0.18.4

Bumps [sigs.k8s.io/controller-runtime](https://github.com/kubernetes-sigs/controller-runtime) from 0.18.3 to 0.18.4.
- [Release notes](https://github.com/kubernetes-sigs/controller-runtime/releases)
- [Changelog](https://github.com/kubernetes-sigs/controller-runtime/blob/main/RELEASE.md)
- [Commits](kubernetes-sigs/controller-runtime@v0.18.3...v0.18.4)

---
updated-dependencies:
- dependency-name: sigs.k8s.io/controller-runtime
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <[email protected]>

* Add NODE_NAME env in config reloader (prometheus-operator#6636)

* Add NODE_NAME env in config reloader

* feat: add `prometheus_operator_feature_gate_info` metric

This change also moves the feature gates to the operator config struct.
It means that after a feature gate is enabled/disabled, the operator
will reconcile the managed Prometheus resources which should be the
right thing to do.

Signed-off-by: Simon Pasquier <[email protected]>

* chore: bump code-generator to v0.30.1

The gen tools arguments have changed a bit, the Makefile commands have
been adjusted accordingly.

Signed-off-by: Simon Pasquier <[email protected]>

* Changed the description for ```overrideHonorLabels``` field (prometheus-operator#6653)

* Changed the decription for overrideHonorLabels

* Update pkg/prometheus/promcfg.go

Co-authored-by: Simon Pasquier <[email protected]>

* build(deps): bump google.golang.org/protobuf from 1.34.1 to 1.34.2

Bumps google.golang.org/protobuf from 1.34.1 to 1.34.2.

---
updated-dependencies:
- dependency-name: google.golang.org/protobuf
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <[email protected]>

* build(deps): bump github.com/Azure/azure-sdk-for-go/sdk/azidentity

Bumps [github.com/Azure/azure-sdk-for-go/sdk/azidentity](https://github.com/Azure/azure-sdk-for-go) from 1.5.2 to 1.6.0.
- [Release notes](https://github.com/Azure/azure-sdk-for-go/releases)
- [Changelog](https://github.com/Azure/azure-sdk-for-go/blob/main/documentation/release.md)
- [Commits](Azure/azure-sdk-for-go@sdk/internal/v1.5.2...sdk/azcore/v1.6.0)

---
updated-dependencies:
- dependency-name: github.com/Azure/azure-sdk-for-go/sdk/azidentity
  dependency-type: indirect
...

Signed-off-by: dependabot[bot] <[email protected]>

* build(deps): bump imjasonh/setup-crane from 0.3 to 0.4

Bumps [imjasonh/setup-crane](https://github.com/imjasonh/setup-crane) from 0.3 to 0.4.
- [Release notes](https://github.com/imjasonh/setup-crane/releases)
- [Commits](imjasonh/setup-crane@v0.3...v0.4)

---
updated-dependencies:
- dependency-name: imjasonh/setup-crane
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <[email protected]>

* [Enhancement] Replacing t.Fatal with testify/require package  (prometheus-operator#6659)

chore: pkg/operator: Replace t.Fatal with require.testify

* chore: Add feature-gated tests to CI

Signed-off-by: Arthur Silva Sens <[email protected]>

* ScrapeConfig CRD: Add LightSail Service Discovery Config Options

* chore: bump to k8s.io libs v0.30.2

Signed-off-by: Simon Pasquier <[email protected]>

* build(deps): bump github.com/prometheus-community/prom-label-proxy

Bumps [github.com/prometheus-community/prom-label-proxy](https://github.com/prometheus-community/prom-label-proxy) from 0.9.0 to 0.10.0.
- [Release notes](https://github.com/prometheus-community/prom-label-proxy/releases)
- [Changelog](https://github.com/prometheus-community/prom-label-proxy/blob/main/CHANGELOG.md)
- [Commits](prometheus-community/prom-label-proxy@v0.9.0...v0.10.0)

---
updated-dependencies:
- dependency-name: github.com/prometheus-community/prom-label-proxy
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <[email protected]>

* Alertmanager pkg,t.Fatal->require pkg

* chore: fix build after prom-label-proxy bump

Signed-off-by: Simon Pasquier <[email protected]>

* Replacing t.fatal with require Package  (prometheus-operator#6680)

chore: Replace t.Fatal with require package

* feat(remote): add support prometheus remote write/read ProxyConfig  (prometheus-operator#6512)

* update prometheus remote write/read proxy config

Signed-off-by: dongjiang1989 <[email protected]>



---------

Signed-off-by: dongjiang1989 <[email protected]>

* WIP: Refactor common test code between Prometheus Agent's StatefulSet and DaemonSet modes (prometheus-operator#6688)

* Refactor test code between Prometheus Agent's StatefulSet and DaemonSet modes

* update default thanos version

Signed-off-by: dongjiang1989 <[email protected]>

* build(deps): bump github.com/prometheus/prometheus from 0.52.1 to 0.53.0

Bumps [github.com/prometheus/prometheus](https://github.com/prometheus/prometheus) from 0.52.1 to 0.53.0.
- [Release notes](https://github.com/prometheus/prometheus/releases)
- [Changelog](https://github.com/prometheus/prometheus/blob/main/CHANGELOG.md)
- [Commits](prometheus/prometheus@v0.52.1...v0.53.0)

---
updated-dependencies:
- dependency-name: github.com/prometheus/prometheus
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <[email protected]>

* update prometheus version

Signed-off-by: dongjiang1989 <[email protected]>

* config-reloader: create correct probes when `listenLocal` is set to `true`

When the prometheus operator is started with `--enable-config-reloader-probes`
it will now create `exec` probes that run curl/wget in the config-reloader
container against localhost to check the /healthz endpoint if `listenLocal` is
set to `true`. Otherwise, it creates `httpGet` probes as before.

Fixes prometheus-operator#6682

* Nit: Check if EnableFeatures already contains agent mode's features (prometheus-operator#6701)

* Check if EnableFeatures already contains ageent mode's features

* [CHORE] Nicolas as release volunteer

Signed-off-by: Nicolas Takashi <[email protected]>

* Add `ttl` obj to alertmanagercfgs resource (prometheus-operator#6515)

* add ttl obj into alertmanagerConfig rsc


---------

Co-authored-by: Nicolas Takashi <[email protected]>
Co-authored-by: Simon Pasquier <[email protected]>

* chore: factorize prober code

This is a quick follow-up of prometheus-operator#6698.

Signed-off-by: Simon Pasquier <[email protected]>

* chore: Replace StringPtrValOrDefault with ptr.Deref

Signed-off-by: Arthur Silva Sens <[email protected]>

* Proposal for DaemonSet deployment of Prometheus Agent (prometheus-operator#6600)

chore: Add Proposal for Daemonset deployment of Prometheus Agent

* chore: refactor TLS management in the assets package

This is a follow-up of prometheus-operator#6537, prometheus-operator#6557, prometheus-operator#6641, prometheus-operator#6644 and prometheus-operator#6645.

Signed-off-by: Simon Pasquier <[email protected]>

* Refactor the common implementation code (not including tests) between Prometheus's modes (prometheus-operator#6686)

* Refactor the common implementation code (not including tests) between Prometheus's modes

* Continue prometheus-operator#6688: Refactor common test code between Prometheus modes (prometheus-operator#6694)

* chore: optimize get secret key from store (prometheus-operator#6700)

* optimize code

Signed-off-by: dongjiang1989 <[email protected]>


---------

Signed-off-by: dongjiang1989 <[email protected]>

* build(deps): bump github.com/go-test/deep from 1.1.0 to 1.1.1

Bumps [github.com/go-test/deep](https://github.com/go-test/deep) from 1.1.0 to 1.1.1.
- [Release notes](https://github.com/go-test/deep/releases)
- [Changelog](https://github.com/go-test/deep/blob/master/CHANGES.md)
- [Commits](go-test/deep@v1.1.0...v1.1.1)

---
updated-dependencies:
- dependency-name: github.com/go-test/deep
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <[email protected]>

* chore: bump go dependencies before release

Signed-off-by: Jayapriya Pai <[email protected]>

* feat(xds): Add OVHcloud service discovery to the ScrapeConfig CRD (prometheus-operator#6689)

* add service discovery for ovhcloud

Signed-off-by: dongjiang1989 <[email protected]>

---------

Signed-off-by: dongjiang1989 <[email protected]>

* chore: cut 0.75.0

Signed-off-by: Jayapriya Pai <[email protected]>

* cherry-pick 6722

Signed-off-by: dongjiang1989 <[email protected]>

* chore: cut 0.75.1

Signed-off-by: Jayapriya Pai <[email protected]>

* fix: avoid invalid alerting config with TLS

Signed-off-by: Simon Pasquier <[email protected]>

* chore: cut 0.75.2

Signed-off-by: Jayapriya Pai <[email protected]>

* conflict fix

Signed-off-by: Coleen Iona Quadros <[email protected]>

* conflict

Signed-off-by: Coleen Iona Quadros <[email protected]>

* conflict files

Signed-off-by: Coleen Iona Quadros <[email protected]>

* conflict files

Signed-off-by: Coleen Iona Quadros <[email protected]>

* conflict files

Signed-off-by: Coleen Iona Quadros <[email protected]>

---------

Signed-off-by: Simon Pasquier <[email protected]>
Signed-off-by: dependabot[bot] <[email protected]>
Signed-off-by: Jayapriya Pai <[email protected]>
Signed-off-by: dongjiang1989 <[email protected]>
Signed-off-by: Yoan Blanc <[email protected]>
Signed-off-by: Arthur Silva Sens <[email protected]>
Signed-off-by: Arthur Silva Sens <[email protected]>
Signed-off-by: Mathieu Parent <[email protected]>
Signed-off-by: Nicolas Takashi <[email protected]>
Signed-off-by: junotx <[email protected]>
Signed-off-by: Coleen Iona Quadros <[email protected]>
Co-authored-by: Kemal Akkoyun <[email protected]>
Co-authored-by: Simon Pasquier <[email protected]>
Co-authored-by: Jayapriya Pai <[email protected]>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
Co-authored-by: Arthur Silva Sens <[email protected]>
Co-authored-by: dongjiang <[email protected]>
Co-authored-by: M Viswanath Sai <[email protected]>
Co-authored-by: Horaci Macias <[email protected]>
Co-authored-by: Kapil Ramwani <[email protected]>
Co-authored-by: Nicolas Takashi <[email protected]>
Co-authored-by: Yoan Blanc <[email protected]>
Co-authored-by: Arthur Silva Sens <[email protected]>
Co-authored-by: Ashwin Sriram <[email protected]>
Co-authored-by: Muhammad Hamza Zaib <[email protected]>
Co-authored-by: mviswanathsai <[email protected]>
Co-authored-by: Mathieu Parent <[email protected]>
Co-authored-by: haanhvu <[email protected]>
Co-authored-by: junot <[email protected]>
Co-authored-by: janluak <_>
Co-authored-by: Ha Anh Vu <[email protected]>
Co-authored-by: Ashwin <[email protected]>
Co-authored-by: Simon Dickhoven <[email protected]>
Co-authored-by: Afzal Ansari <[email protected]>
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
Co-authored-by: Coleen Iona Quadros <[email protected]>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Projects
None yet
Development

Successfully merging this pull request may close these issues.

5 participants