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

Align from upstream 2022-06-14 #62

Closed
wants to merge 45 commits into from

Conversation

fedepaol
Copy link
Member

Aligning from upstream.

oribon and others added 30 commits June 14, 2022 16:15
The E2E jobs shouldn't run if one of the
"basics" fail - lint/unit/build/...
In addition, we should build the images once
before we run the E2Es instead of building
10+ times.

Having these dependencies saves CI time and resources
in case of a failure that would anyways require a retest.

Signed-off-by: Ori Braunshtein <obraunsh@redhat.com>
This is more of a legacy for when we did not
enforce rebases before merge.
Now there is no point in running e2e here -
it already passed using the latest version in the PR.

Signed-off-by: Ori Braunshtein <obraunsh@redhat.com>
Operator lane failing because we're deploying
a too old version

Signed-off-by: Ori Braunshtein <obraunsh@redhat.com>
The apis are now stable, we can bump. Also, we'll leverage the changes
to the test framework to comply to pod security admission.

Signed-off-by: Federico Paolinelli <fpaoline@redhat.com>
The description of secretName changed and so we need to regenerate the
manifests.

Signed-off-by: Federico Paolinelli <fpaoline@redhat.com>
So far, to deploy MetalLB with webhooks we had a hard
dependency - deploying cert-manager first.
With the cert-controller library we can avoid this dependency.
Using the cert-controller we create a secret and patch
the webhooks as part of the MetalLB controller.

https://github.com/open-policy-agent/cert-controller
Deploying cert-manager for MetalLB webhooks is
not needed anymore. We now use cert-controller
in MetalLB controller to create a secret and patch
the webhooks.
Deploying cert-manager for MetalLB webhooks is
not needed anymore. We now use cert-controller
in MetalLB controller to create a secret and patch
the webhooks.
Deploying cert-manager for MetalLB webhooks is
not needed anymore. We now use cert-controller
in MetalLB controller to create a secret and patch
the webhooks.
Deploying cert-manager for MetalLB webhooks is
not needed anymore. We now use cert-controller
in MetalLB controller to create a secret and patch
the webhooks.
…ctice

Switched dockerfile to use copy instead of add and condensed chmod into copy command

Signed-off-by: Joshua Carnes <56089764+jtcarnes@users.noreply.github.com>
Now that we don't have the cert-manager dependency
for webhooks, we can enable the webhooks by default.
The webhooks are now enabled by default so
no need to set the flag.
The webhooks are now enabled by default
by the controller.
The webhooks are now enabled by default
by the controller.
The webhooks are now enabled by default
by the controller.
Added a helmdocs task to the task file to make it easier
for users to keep the helm docs up to date.

This prefers using the helm-docs container like the build task.
Added a check in the CI to make sure the charts README
is kept up to date.
Updated the out of date helm chart README.
This commit replaces existing Circle CI job to build and publish
metallb docker images with GitHub actions.

Signed-off-by: Periyasamy Palanisamy <pepalani@redhat.com>
The setup step is the same for all the lanes. Here we use a composite
action to reduce duplication.

Signed-off-by: Federico Paolinelli <fpaoline@redhat.com>
We support the latest 3 released k8s versions (like k8s does), so we
want to ensure that we are not breaking the compatibility.
We bump kind to consume latest (1.24) and we add a lane to test against
1.22

Signed-off-by: Federico Paolinelli <fpaoline@redhat.com>
When creating the e2e tests pods via the k8s framework, they fail
because they are not enforcing security fields, for example
securityContext.runAsNonRoot=true. The framework exposes a way to
declare the namespace as priviledged and we do so because we can't
change the pod generation.

Signed-off-by: Federico Paolinelli <fpaoline@redhat.com>
Running go mod tidy after addiing the dependency of pod security
admission.

Signed-off-by: Federico Paolinelli <fpaoline@redhat.com>
We run the speakers also on master nodes, and in 1.24 a new
"control-plane" taint was added.

Signed-off-by: Federico Paolinelli <fpaoline@redhat.com>
The CR generator is a tool for converting MetalLB
configmap to custom resources yaml.
This allows users to copy their configuration from the configmap-based MetalLB,
(which is not supported anymore) into the current CR-based version.

A readme file was added with further details.

Co-authored-by: Federico Paolinelli <fpaoline@redhat.com>
Added Dockerfile and image building automation.
(Generator image size: 86.5MB)

Co-authored-by: Federico Paolinelli <fpaoline@redhat.com>
Update dependencies.
MetalLB's logger is based on pairs of key and value.
This commit changes the output of the logger in the Run function
at internal/k8s/k8s.go, as currently it outputs:
"{"Starting Manager":"(MISSING)","caller":"k8s.go:394","level":"info","ts":"2022-05-24T07:15:18Z"}"

This will remove the "MISSING" text.
fedepaol and others added 15 commits June 14, 2022 16:15
We want to let the users know that they have a tool for converting.

Signed-off-by: Federico Paolinelli <fpaoline@redhat.com>
Bumps [github.com/google/go-cmp](https://github.com/google/go-cmp) from 0.5.7 to 0.5.8.
- [Release notes](https://github.com/google/go-cmp/releases)
- [Commits](google/go-cmp@v0.5.7...v0.5.8)

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

Signed-off-by: dependabot[bot] <support@github.com>
Adding documentation how to allow specific
pools to BGP Peers.
If there's a problem with client.Run the pod should
be in "Error" instead of "Completed".

Signed-off-by: Ori Braunshtein <obraunsh@redhat.com>
We need to check both v4 and v6 community routes for peers
that receive both

Signed-off-by: Ori Braunshtein <obraunsh@redhat.com>
Adding more tests is not a bad idea, and dual-stack
scenarios might be more sensitive to frr.conf refactors

Signed-off-by: Ori Braunshtein <obraunsh@redhat.com>
Restore the operator lane, aligned to metallb without certmanager.

Signed-off-by: Federico Paolinelli <fpaoline@redhat.com>
Signed-off-by: Federico Paolinelli <fpaoline@redhat.com>
Loadbalancer class enable different loadbalancers to co-exist. We add a
parameter to the speaker and the controller to process only the services
consistent with the loadbalancer class provided to metallb.
We expose a knob to set the loadbalancer class supported by metallb.

Signed-off-by: Federico Paolinelli <fpaoline@redhat.com>
We can't change settings on the fly, but we want to cover the fact that
metallb with no settings will ignore a service with loadbalancer class
set.

Signed-off-by: Federico Paolinelli <fpaoline@redhat.com>
We extend the docs with the newly added loadbalancer class parameter.

Signed-off-by: Federico Paolinelli <fpaoline@redhat.com>
The operator was using an old kubernetes version with no loadbalancer
class support.

Signed-off-by: Federico Paolinelli <fpaoline@redhat.com>
We want to be able to deploy the controller as standalone backend for
the webhook. Also, for such deployments we want the "real" controller
not to act as webhook, so we add a webhook mode parameter to enable,
disable or run only in webhook mode.

Signed-off-by: Federico Paolinelli <fpaoline@redhat.com>
Running go mod vendor to align d/s deps.

Signed-off-by: Federico Paolinelli <fpaoline@redhat.com>
@fedepaol fedepaol requested a review from russellb as a code owner June 14, 2022 14:20
@fedepaol
Copy link
Member Author

/hold

@openshift-ci openshift-ci bot added the do-not-merge/hold Indicates that a PR should not merge because someone has issued a /hold command. label Jun 14, 2022
@openshift-ci
Copy link

openshift-ci bot commented Jun 14, 2022

[APPROVALNOTIFIER] This PR is APPROVED

This pull-request has been approved by: fedepaol

The full list of commands accepted by this bot can be found here.

The pull request process is described here

Needs approval from an approver in each of these files:

Approvers can indicate their approval by writing /approve in a comment
Approvers can cancel approval by writing /approve cancel in a comment

@openshift-ci openshift-ci bot added the approved Indicates a PR has been approved by an approver from all required OWNERS files. label Jun 14, 2022
@openshift-ci
Copy link

openshift-ci bot commented Jun 14, 2022

@fedepaol: The following tests failed, say /retest to rerun all failed tests or /retest-required to rerun all mandatory failed tests:

Test name Commit Details Required Rerun command
ci/prow/metallb-e2e-metal-ipi 79a846e link true /test metallb-e2e-metal-ipi
ci/prow/metallb-e2e-metal-ipi-ovn 79a846e link true /test metallb-e2e-metal-ipi-ovn

Full PR test history. Your PR dashboard.

Instructions for interacting with me using PR comments are available here. If you have questions or suggestions related to my behavior, please file an issue against the kubernetes/test-infra repository. I understand the commands that are listed here.

@fedepaol fedepaol closed this Jun 16, 2022
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
approved Indicates a PR has been approved by an approver from all required OWNERS files. do-not-merge/hold Indicates that a PR should not merge because someone has issued a /hold command.
Projects
None yet
Development

Successfully merging this pull request may close these issues.

6 participants