Skip to content
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

Check if controllers' CRDs are provided and manageable by operator #6351

Merged
merged 3 commits into from
Apr 2, 2024

Conversation

haanhvu
Copy link
Contributor

@haanhvu haanhvu commented Feb 29, 2024

Description

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

Fixes #6140

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

Check locally with some crds not provided.

Before the change:

level=warn ts=2024-02-29T14:21:04.383739949Z caller=klog.go:118 component=k8s_client_runtime func=Warningf msg="pkg/mod/k8s.io/client-go@v0.29.2/tools/cache/reflector.go:229: failed to list *v1.Prometheus: the server could not find the requested resource (get prometheuses.monitoring.coreos.com)"
level=error ts=2024-02-29T14:21:04.383844053Z caller=klog.go:126 component=k8s_client_runtime func=ErrorDepth msg="pkg/mod/k8s.io/client-go@v0.29.2/tools/cache/reflector.go:229: Failed to watch *v1.Prometheus: failed to list *v1.Prometheus: the server could not find the requested resource (get prometheuses.monitoring.coreos.com)"

With the change:

level=info ts=2024-02-29T14:27:23.197293317Z caller=operator.go:425 component=prometheusagent-controller msg="successfully synced all caches"

When no controllers are provided:

level=error ts=2024-02-29T14:46:33.051429048Z caller=main.go:431 msg="no controller is supported"

Changelog entry

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

@haanhvu haanhvu requested a review from a team as a code owner February 29, 2024 15:05
Copy link
Member

@ArthurSens ArthurSens left a comment

Choose a reason for hiding this comment

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

Awesome, thanks for raising the PR!

This is a small code change but a big behavior change for the operator in my opinion. I'm worried that we might require different RBAC permissions in the future and forget to change those pre-requisites. Would it make sense to add e2e tests?

@@ -325,16 +355,80 @@ func run(fs *flag.FlagSet) int {
}
}

ao, err := alertmanagercontroller.New(ctx, restConfig, cfg, logger, r, canReadStorageClass, eventRecorderFactory)
alertManagerSupported, err := checkPrerequisites(
Copy link
Member

Choose a reason for hiding this comment

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

Suggested change
alertManagerSupported, err := checkPrerequisites(
alertmanagerSupported, err := checkPrerequisites(

Copy link
Contributor Author

@haanhvu haanhvu Mar 22, 2024

Choose a reason for hiding this comment

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

I fixed this nit in the last commit. CI says TestAllNS/y/PromRulesExceedingConfigMapLimit fails this time.

This test passed locally for me. And it doesn't make sense that a typo fix could fail an e2e test. Could you reactivate CI to see if it's flaky?

Copy link
Contributor Author

Choose a reason for hiding this comment

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

I just realized I didn't rebase to the latest main. Let me rebase to see how it goes.

Copy link
Contributor Author

Choose a reason for hiding this comment

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

After rebased everything is green now. Sorry for making noise...

Copy link
Member

Choose a reason for hiding this comment

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

I think we have a few flaky tests and that was one of them, don't worry 😅

@haanhvu
Copy link
Contributor Author

haanhvu commented Mar 5, 2024

I'm worried that we might require different RBAC permissionss in the future and forget to change those pre-requisites. Would it make sense to add e2e tests?

@ArthurSens Yeah right now RBAC permissions in checkPrerequisites() are hardcoded. It's indeed a valid concern. Is there anywhere we can get the RBAC permission requirement of each resource and return it to checkPrerequisites(), instead of hardcoding like now?

@haanhvu haanhvu changed the title operator cmd: check if controllers' crds are supplied operator cmd: check if controllers' crds are provided and manageable by operator Mar 5, 2024
@simonpasquier
Copy link
Contributor

This is great!

I'm worried that we might require different RBAC permissions in the future and forget to change those pre-requisites.

It wouldn't be very different than with the current situation? e.g. if the operator starts requiring permission "update" on resource "foo" and users don't update the prometheus-operator SA RBAC, the controller starts but it wouldn't work fully.

Copy link
Member

@ArthurSens ArthurSens left a comment

Choose a reason for hiding this comment

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

Yeah, let's see how this evolves

LGTM

@haanhvu haanhvu force-pushed the issue6140 branch 2 times, most recently from df80594 to 322c124 Compare March 22, 2024 12:35
}
}

if po == nil && pao == nil && ao == nil && to == nil {
Copy link
Contributor

Choose a reason for hiding this comment

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

Suggested change
if po == nil && pao == nil && ao == nil && to == nil {
if po == nil && pao == nil && ao == nil && to == nil && kc == nil {

}

if po == nil && pao == nil && ao == nil && to == nil {
level.Error(logger).Log("msg", "no controller is supported")
Copy link
Contributor

Choose a reason for hiding this comment

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

Suggested change
level.Error(logger).Log("msg", "no controller is supported")
level.Error(logger).Log("msg", "no controller can be started, check the RBAC permissions of the service account")

@ArthurSens
Copy link
Member

ArthurSens commented Mar 23, 2024

@simonpasquier, I remember that when I did something similar with the prometheus-agent controller the openshift e2e test captured a degradation that we didn't. Do you think it is worth testing this PR with openshift?

@simonpasquier
Copy link
Contributor

I'm quite confident but sure it wouldn't hurt to run a pre-test against the OpenShift CI. cc @slashpai who's signed up for the next release 😃

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

Fixes prometheus-operator#6140
@haanhvu haanhvu changed the title operator cmd: check if controllers' crds are provided and manageable by operator Check if controllers' crds are provided and manageable by operator Mar 31, 2024
@haanhvu haanhvu changed the title Check if controllers' crds are provided and manageable by operator Check if controllers' CRDs are provided and manageable by operator Mar 31, 2024
@slashpai
Copy link
Contributor

slashpai commented Apr 2, 2024

I'm quite confident but sure it wouldn't hurt to run a pre-test against the OpenShift CI. cc @slashpai who's signed up for the next release 😃

I missed the notification, I cherry-picked the changes openshift#282

@slashpai
Copy link
Contributor

slashpai commented Apr 2, 2024

@simonpasquier I tested with cherry-picked changes openshift#282 and it is passing test. So this looks good to go?

@ArthurSens
Copy link
Member

Nice, let's merge it then :)

@ArthurSens ArthurSens merged commit ffaeca2 into prometheus-operator:main Apr 2, 2024
17 checks passed
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 <arthur.sens@coralogix.com>

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

---------

Co-authored-by: Herve Nicol <12008875+hervenicol@users.noreply.github.com>

* chore: refactor generateScrapeConfig()

From a comment while reviewing prometheus-operator#6153.

Signed-off-by: Simon Pasquier <spasquie@redhat.com>

* 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] <support@github.com>

* 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 <spasquie@redhat.com>

* 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] <support@github.com>

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

* Add proposal for automated sharding

Signed-off-by: Arthur Silva Sens <arthur.sens@coralogix.com>

* 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 <arthur.sens@coralogix.com>
Co-authored-by: Simon Pasquier <spasquie@redhat.com>

* chore: refactor ShardedSecret

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

Signed-off-by: Simon Pasquier <spasquie@redhat.com>

* Add testing guidelines (prometheus-operator#5903)

* Add testing guidelines

Signed-off-by: Arthur Silva Sens <arthur.sens@coralogix.com>

* Add separate Makefile targets for e2e-tests

Signed-off-by: Arthur Silva Sens <arthur.sens@coralogix.com>

* Apply suggestions from code review

Signed-off-by: Arthur Silva Sens <arthur.sens@coralogix.com>

Co-authored-by: Simon Pasquier <spasquie@redhat.com>

---------

Signed-off-by: Arthur Silva Sens <arthur.sens@coralogix.com>
Co-authored-by: Simon Pasquier <spasquie@redhat.com>

* 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 <arthur.sens@coralogix.com>

* Fix godot issues

Signed-off-by: Arthur Silva Sens <arthur.sens@coralogix.com>

---------

Signed-off-by: Arthur Silva Sens <arthur.sens@coralogix.com>

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

* Prevent mistakes with testify

By enabling testifylint

Signed-off-by: Arthur Silva Sens <arthur.sens@coralogix.com>

* Fix testifylint issues

Signed-off-by: Arthur Silva Sens <arthur.sens@coralogix.com>

---------

Signed-off-by: Arthur Silva Sens <arthur.sens@coralogix.com>

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

* Prevent unnecessary type conversions

By enabling the unconvert linter

Signed-off-by: Arthur Silva Sens <arthur.sens@coralogix.com>

* Fix unconvert issues

Signed-off-by: Arthur Silva Sens <arthur.sens@coralogix.com>

---------

Signed-off-by: Arthur Silva Sens <arthur.sens@coralogix.com>

* 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] <support@github.com>

* 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 <slashpai9@gmail.com>

* 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 <rexagod@gmail.com>

* Decouple event recorder from operator metrics

Signed-off-by: Arthur Silva Sens <arthur.sens@coralogix.com>

* Only emit events if permissions were given

Signed-off-by: Arthur Silva Sens <arthur.sens@coralogix.com>

* Keep operator name consistent across telemetry

Signed-off-by: Arthur Silva Sens <arthur.sens@coralogix.com>

* Address comments

Signed-off-by: Arthur Silva Sens <arthur.sens@coralogix.com>

---------

Signed-off-by: Pranshu Srivastava <rexagod@gmail.com>
Signed-off-by: Arthur Silva Sens <arthur.sens@coralogix.com>
Co-authored-by: Pranshu Srivastava <rexagod@gmail.com>

* 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 <dongjiang1989@126.com>

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

* Add scale subresource to Prometheus/PrometheusAgent

Signed-off-by: Arthur Silva Sens <arthur.sens@coralogix.com>

* 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 <arthur.sens@coralogix.com>

* Create function to generate selector labels

Signed-off-by: Arthur Silva Sens <arthur.sens@coralogix.com>

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

Signed-off-by: Arthur Silva Sens <arthur.sens@coralogix.com>

---------

Signed-off-by: Arthur Silva Sens <arthur.sens@coralogix.com>

* 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 <spasquie@redhat.com>

* 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 <slashpai9@gmail.com>
Co-authored-by: Simon Pasquier <spasquie@redhat.com>

* chore: refactor creation of the TLS assets volume

Signed-off-by: Simon Pasquier <spasquie@redhat.com>

* chore: Add ArthurSens as 0.72 shepherd

Signed-off-by: Arthur Silva Sens <arthur.sens@coralogix.com>

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

* chore: cut v0.71.0

---------

Signed-off-by: Simon Pasquier <spasquie@redhat.com>
Co-authored-by: Jayapriya Pai <slashpai9@gmail.com>

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

* fix golangci-lint files exists errors

---------

Signed-off-by: dongjiang1989 <dongjiang1989@126.com>
Co-authored-by: Simon Pasquier <spasquie@redhat.com>

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

Signed-off-by: Simon Pasquier <spasquie@redhat.com>

* setting targeted go version

Signed-off-by: dongjiang1989 <dongjiang1989@126.com>

* Enable revive (prometheus-operator#6207)

* Enable revive linter in test/framework

Signed-off-by: Arthur Silva Sens <arthur.sens@coralogix.com>

* Fix revive issues

Signed-off-by: Arthur Silva Sens <arthur.sens@coralogix.com>

---------

Signed-off-by: Arthur Silva Sens <arthur.sens@coralogix.com>

* 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] <support@github.com>

* 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] <support@github.com>

* feat(scrapeConfigs): Add sharding to scrapeConfigs

Signed-off-by: adinhodovic <hodovicadin@gmail.com>

* chore: remove proxyconfig code duplication

Fixes prometheus-operator#6218

Signed-off-by: Jayapriya Pai <slashpai9@gmail.com>

* chore: fix makefile targets

Signed-off-by: Arthur Silva Sens <arthur.sens@coralogix.com>

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

* update prometheus version

---------

Signed-off-by: dongjiang1989 <dongjiang1989@126.com>

* 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] <support@github.com>

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

* support enable_compression setting

---------

Signed-off-by: dongjiang1989 <dongjiang1989@126.com>

* 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] <support@github.com>

* 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 <slashpai9@gmail.com>

* 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 <dongjiang1989@126.com>
Co-authored-by: Simon Pasquier <spasquie@redhat.com>

* chore: bump k8s dependencies to v1.29.1

Signed-off-by: Simon Pasquier <spasquie@redhat.com>

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

* update dns sd config

---------

Signed-off-by: dongjiang1989 <dongjiang1989@126.com>
Co-authored-by: Simon Pasquier <spasquie@redhat.com>

* chore: cut v0.71.1

Signed-off-by: Simon Pasquier <spasquie@redhat.com>

* 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] <support@github.com>

* 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] <support@github.com>

* 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] <support@github.com>

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

* fix: typo on AuthenticationMethod check

* chore: cut v0.71.2

Signed-off-by: Simon Pasquier <spasquie@redhat.com>

* 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] <support@github.com>

* 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] <support@github.com>

* 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] <support@github.com>

* chore: update remote-write tests

Signed-off-by: Simon Pasquier <spasquie@redhat.com>

* 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 <spasquie@redhat.com>

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

* support scrape_protocols to podmonitor/servicemonitor

---------

Signed-off-by: dongjiang1989 <dongjiang1989@126.com>

* chore: add e2e test detecting the issue

Signed-off-by: Simon Pasquier <spasquie@redhat.com>

* 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 <spasquie@redhat.com>

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

Signed-off-by: Jayapriya Pai <slashpai9@gmail.com>

* chore: update Kind version to v0.21.0

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

Signed-off-by: Simon Pasquier <spasquie@redhat.com>

* update go version 1.22

Signed-off-by: dongjiang1989 <dongjiang1989@126.com>

* 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] <support@github.com>

* 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] <support@github.com>

* 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] <support@github.com>

* fix: remove deprecation on service monitor's targetPort

Closes prometheus-operator#6269

Signed-off-by: Simon Pasquier <spasquie@redhat.com>

* 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] <support@github.com>

* 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] <support@github.com>

* 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 <amrini@redhat.com>
Signed-off-by: Simon Pasquier <spasquie@redhat.com>

* test: add TestPartialObjectMetadataStripOnDeletedFinalStateUnknown

Co-authored-by: machine424 <ayoubmrini424@gmail.com>
Signed-off-by: Simon Pasquier <spasquie@redhat.com>

Signed-off-by: machine424 <ayoubmrini424@gmail.com>

---------

Signed-off-by: Simon Pasquier <spasquie@redhat.com>
Signed-off-by: machine424 <ayoubmrini424@gmail.com>
Co-authored-by: Ayoub Mrini <amrini@redhat.com>
Co-authored-by: machine424 <ayoubmrini424@gmail.com>

* 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] <support@github.com>

* 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] <support@github.com>

* chore: update Kubernetes to v1.29.2

Signed-off-by: Simon Pasquier <spasquie@redhat.com>

* chore: switch example app image

Signed-off-by: Simon Pasquier <spasquie@redhat.com>

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

* Update go dependencies before release

Signed-off-by: Arthur Silva Sens <arthur.sens@coralogix.com>

* make generate

Signed-off-by: Arthur Silva Sens <arthur.sens@coralogix.com>

---------

Signed-off-by: Arthur Silva Sens <arthur.sens@coralogix.com>

* docs: correct slashpai slack id

Signed-off-by: Jayapriya Pai <slashpai9@gmail.com>

* 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] <support@github.com>

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

* Update default Thanos version

Signed-off-by: Arthur Silva Sens <arthur.sens@coralogix.com>

* Update unit tests depending on DefaultThanosVersion

Signed-off-by: Arthur Silva Sens <arthur.sens@coralogix.com>

---------

Signed-off-by: Arthur Silva Sens <arthur.sens@coralogix.com>

* Update Default Prometheus version

Signed-off-by: Arthur Silva Sens <arthur.sens@coralogix.com>

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

* feat: adding scrape class

Signed-off-by: Nicolas Takashi <nicolas.tcs@hotmail.com>

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

Co-authored-by: Arthur Silva Sens <arthursens2005@gmail.com>

* Update pkg/prometheus/promcfg.go

Co-authored-by: Arthur Silva Sens <arthursens2005@gmail.com>

* Update pkg/prometheus/store.go

Co-authored-by: Simon Pasquier <spasquie@redhat.com>

* Update pkg/prometheus/resource_selector.go

Co-authored-by: Arthur Silva Sens <arthursens2005@gmail.com>

* Update pkg/prometheus/store.go

Co-authored-by: Simon Pasquier <spasquie@redhat.com>

* Update pkg/prometheus/resource_selector.go

Co-authored-by: Simon Pasquier <spasquie@redhat.com>

* Update pkg/prometheus/resource_selector.go

Co-authored-by: Arthur Silva Sens <arthursens2005@gmail.com>

* Update pkg/prometheus/promcfg.go

Co-authored-by: Simon Pasquier <spasquie@redhat.com>

* Update pkg/prometheus/promcfg.go

Co-authored-by: Simon Pasquier <spasquie@redhat.com>

* Update pkg/prometheus/server/operator.go

Co-authored-by: Simon Pasquier <spasquie@redhat.com>

* Update pkg/prometheus/promcfg.go

Co-authored-by: Simon Pasquier <spasquie@redhat.com>

* Update prometheus_types.go

Co-authored-by: Simon Pasquier <spasquie@redhat.com>

---------

Signed-off-by: Nicolas Takashi <nicolas.tcs@hotmail.com>
Co-authored-by: Arthur Silva Sens <arthursens2005@gmail.com>
Co-authored-by: Simon Pasquier <spasquie@redhat.com>

* fix: update kubernetes slack link

Signed-off-by: Jayapriya Pai <slashpai9@gmail.com>

* 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] <support@github.com>

* chore: move ProxyConfig type to v1

Related-to prometheus-operator#6301

Signed-off-by: Jayapriya Pai <slashpai9@gmail.com>

* 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] <support@github.com>

* update prometheus version

Signed-off-by: dongjiang1989 <dongjiang1989@126.com>

* 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] <support@github.com>

* update alertmanager version

Signed-off-by: dongjiang1989 <dongjiang1989@126.com>

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

Signed-off-by: Nicolas Takashi <nicolas.tcs@hotmail.com>

* 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] <support@github.com>

* 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 <ddbindra@gmail.com>

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

* change string to duration

---------

Signed-off-by: dongjiang1989 <dongjiang1989@126.com>

* Prepare 0.72 release (prometheus-operator#6329)

Signed-off-by: Arthur Silva Sens <arthur.sens@coralogix.com>

* 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] <support@github.com>

* 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] <support@github.com>

* Bump prometheus/common

Signed-off-by: Arthur Silva Sens <arthur.sens@coralogix.com>

* 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 <yonatanxd7@gmail.com>

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

* add SampleAgeLimit

Signed-off-by: dongjiang1989 <dongjiang1989@126.com>

* update by code review

Signed-off-by: dongjiang1989 <dongjiang1989@126.com>

* change string type to duration

Signed-off-by: dongjiang1989 <dongjiang1989@126.com>

* update make generate

Signed-off-by: dongjiang1989 <dongjiang1989@126.com>

* update promcfg_test unittest

Signed-off-by: dongjiang1989 <dongjiang1989@126.com>

* update some nits by code review

Signed-off-by: dongjiang1989 <dongjiang1989@126.com>

---------

Signed-off-by: dongjiang1989 <dongjiang1989@126.com>

* 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 <dongjiang1989@126.com>

* [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 <nicolas.tcs@hotmail.com>

* 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] <support@github.com>

* 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] <support@github.com>

* 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] <support@github.com>

* Regenerate documentation

Signed-off-by: Simon Pasquier <spasquie@redhat.com>

* chore: add slashpai as v0.73 release shepherd

Signed-off-by: Jayapriya Pai <slashpai9@gmail.com>

* [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 <mariofer@redhat.com>
Co-authored-by: Simon Pasquier <spasquie@redhat.com>

* 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 <in648ent@Gijss-MacBook-Pro.local>

* 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] <support@github.com>

* 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] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>

* Signed-off-by: deterclosed <fliter@outlook.com>

chore: remove repetitive words

Signed-off-by: deterclosed <fliter@outlook.com>

* 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] <support@github.com>

* 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 <spasquie@redhat.com>

* 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] <support@github.com>

* 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 <arthur.sens@coralogix.com>

* 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 <jamshidi.m799@gmail.com>

---------

Signed-off-by: Mohammad Jamshidi <jamshidi.m799@gmail.com>

* 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 <dongjiang1989@126.com>

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

* chore: bump go dependencies before release

Signed-off-by: Jayapriya Pai <slashpai9@gmail.com>

* chore: update default prometheus version

Signed-off-by: Jayapriya Pai <slashpai9@gmail.com>

* Update kakkoyun's affiliation

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

* support kuma xds

Signed-off-by: dongjiang1989 <dongjiang1989@126.com>

* 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 <slashpai9@gmail.com>

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 <slashpai9@gmail.com>

* 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 <dongjiang1989@126.com>
Co-authored-by: Jayapriya Pai <slashpai9@gmail.com>

* 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 <slashpai9@gmail.com>

* fix: log deprecated bearer token fields at debug level

Signed-off-by: Simon Pasquier <spasquie@redhat.com>

* chore: cut v0.73.1

Signed-off-by: Jayapriya Pai <slashpai9@gmail.com>

* 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 <spasquie@redhat.com>

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


Signed-off-by: Simon Pasquier <spasquie@redhat.com>

* chore:cut v0.73.2

Signed-off-by: Jayapriya Pai <slashpai9@gmail.com>

Co-authored-by: Simon Pasquier <spasquie@redhat.com>

* Fix errors and go versions in build scripts

Signed-off-by: Coleen Iona Quadros <coleen.quadros27@gmail.com>

* Run make --always-make format generate

Signed-off-by: Coleen Iona Quadros <coleen.quadros27@gmail.com>

* lint

Signed-off-by: Coleen Iona Quadros <coleen.quadros27@gmail.com>

* remove duplicate code

Signed-off-by: Coleen Iona Quadros <coleen.quadros27@gmail.com>

---------

Signed-off-by: Arthur Silva Sens <arthur.sens@coralogix.com>
Signed-off-by: Simon Pasquier <spasquie@redhat.com>
Signed-off-by: dependabot[bot] <support@github.com>
Signed-off-by: Jayapriya Pai <slashpai9@gmail.com>
Signed-off-by: Pranshu Srivastava <rexagod@gmail.com>
Signed-off-by: dongjiang1989 <dongjiang1989@126.com>
Signed-off-by: adinhodovic <hodovicadin@gmail.com>
Signed-off-by: machine424 <ayoubmrini424@gmail.com>
Signed-off-by: Nicolas Takashi <nicolas.tcs@hotmail.com>
Signed-off-by: Dhruv Bindra <ddbindra@gmail.com>
Signed-off-by: Yonatan Sasson <yonatanxd7@gmail.com>
Signed-off-by: Mario Fernandez <mariofer@redhat.com>
Signed-off-by: deterclosed <fliter@outlook.com>
Signed-off-by: Mohammad Jamshidi <jamshidi.m799@gmail.com>
Signed-off-by: Coleen Iona Quadros <coleen.quadros27@gmail.com>
Co-authored-by: Simon Pasquier <spasquie@redhat.com>
Co-authored-by: Arthur Silva Sens <arthursens2005@gmail.com>
Co-authored-by: Hervé Nicol <hervenicol@users.noreply.github.com>
Co-authored-by: Herve Nicol <12008875+hervenicol@users.noreply.github.com>
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 <slashpai9@gmail.com>
Co-authored-by: Pranshu Srivastava <rexagod@gmail.com>
Co-authored-by: dongjiang <dongjiang1989@126.com>
Co-authored-by: Arthur Silva Sens <arthur.sens@coralogix.com>
Co-authored-by: adinhodovic <hodovicadin@gmail.com>
Co-authored-by: Jimmy Zelinskie <jimmy@zelinskie.com>
Co-authored-by: Sam Kirsch <SamKirsch10@users.noreply.github.com>
Co-authored-by: Michael Borens <appo.esl@gmail.com>
Co-authored-by: Prajjwal <prajjwaldimri@hotmail.com>
Co-authored-by: DeamonMV <deamonmv@gmail.com>
Co-authored-by: Ayoub Mrini <amrini@redhat.com>
Co-authored-by: machine424 <ayoubmrini424@gmail.com>
Co-authored-by: Nicolas Takashi <nicolas.tcs@hotmail.com>
Co-authored-by: Mouad Elhaouari <jm_elhaouari@esi.dz>
Co-authored-by: Dhruv Bindra <dbindra@asu.edu>
Co-authored-by: Yonatan Sasson <107778824+Yuni-sa@users.noreply.github.com>
Co-authored-by: Mohammad <jamshidi.m799@gmail.com>
Co-authored-by: Helia Barroso <helia.barroso@hotmail.com>
Co-authored-by: Seriki Ayodele <serikiayodele@gmail.com>
Co-authored-by: Quentin Bisson <quentin@giantswarm.io>
Co-authored-by: Mario Fernandez Herrero <mariofer@redhat.com>
Co-authored-by: Mouad Elhaouari <80008527+mouad-eh@users.noreply.github.com>
Co-authored-by: Gijs Entius <g.m.entius@gmail.com>
Co-authored-by: Gijs Entius <in648ent@Gijss-MacBook-Pro.local>
Co-authored-by: deterclosed <fliter@outlook.com>
Co-authored-by: M Viswanath Sai <110663831+mviswanathsai@users.noreply.github.com>
Co-authored-by: googs1025 <googs1025@gmail.com>
Co-authored-by: Ha Anh Vu <75315486+haanhvu@users.noreply.github.com>
Co-authored-by: Ashwin <ashwinsriram11@gmail.com>
Co-authored-by: Pavan Gudiwada <25551553+pavangudiwada@users.noreply.github.com>
Co-authored-by: Kemal Akkoyun <kakkoyun@users.noreply.github.com>
Co-authored-by: mviswanathsai <mviswanath.sai.met21@itbhu.ac.in>
Co-authored-by: Matheus Sousa <73663610+MateSousa@users.noreply.github.com>
Co-authored-by: yash <yp969803@gmail.com>
Co-authored-by: haanhvu <haanh6594@gmail.com>
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.

Errors about CRDs not present even if they are not needed
4 participants