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

OCPBUGS-42687: Rebase etcd 3.5.16 openshift 4.16 #292

Open
wants to merge 106 commits into
base: openshift-4.16
Choose a base branch
from

Conversation

Elbehery
Copy link

@Elbehery Elbehery commented Oct 2, 2024

This PR rebases etcd 3.5.16 into openshift-4.16.

running make locally

SUCCESS: etcd_build (GOARCH=arm64)
./bin/etcd --version
etcd Version: 3.5.16
Git SHA: 29f9e842a
Go Version: go1.22.7
Go OS/Arch: darwin/arm64
./bin/etcdctl version
etcdctl version: 3.5.16
API version: 3.5
./bin/etcdutl version
etcdutl version: 3.5.16

Note: Upstream has refactored clientV3 here. This the changed func was being used downstream in

func (c *cluster) NonLinearizeableMemberList(ctx context.Context) (*MemberListResponse, error) {

cc @openshift/openshift-team-etcd

jmhbnz and others added 30 commits May 31, 2024 20:25
The service at https://beta.transparencylog.net/ has already been
shutdown on November 9th 2021 and the workflow has failed ever since.

Signed-off-by: James Blair <mail@jamesblair.net>
[3.5] Backport removal of asset transparency workflow
Backport of commit 4881e53 / pull
request etcd-io#18095.

Signed-off-by: Ivan Valdes <ivan@vald.es>
…ase-shallow-clone

[3.5] scripts/release: shallow clone repository
Signed-off-by: ArkaSaha30 <arkasaha30@gmail.com>
…-24790

[3.5]Bump Go version to 1.21.11: CVE 2024-24790 fix
Signed-off-by: Benjamin Wang <benjamin.ahrtr@gmail.com>
[3.5] print error log when validation on conf change failed
Signed-off-by: Andy Xie <andy.xning@gmail.com>
This commit fixed the Go Vulnerability Checker CI job, which isn't
scanning for all go.mod files within the project.

Reference:
- etcd-io#18168

Signed-off-by: Chun-Hung Tseng <henrybear327@gmail.com>
Extracted log from govulncheck, suggesting that we should bump the
version of golang.org/x/net

=== Symbol Results ===

Vulnerability openshift#1: GO-2024-2687
    HTTP/2 CONTINUATION flood in net/http
  More info: https://pkg.go.dev/vuln/GO-2024-2687
  Module: golang.org/x/net
    Found in: golang.org/x/net@v0.17.0
    Fixed in: golang.org/x/net@v0.23.0

Reference:
- etcd-io#17708

Signed-off-by: Chun-Hung Tseng <henrybear327@gmail.com>
…ab57 to v0.0.0-20220412211240-33da011f77ad

Extracted log from govulncheck, suggesting that we should bump the
version of golang.org/x/sys

Vulnerability openshift#1: GO-2022-0493
    Incorrect privilege reporting in syscall and golang.org/x/sys/unix
  More info: https://pkg.go.dev/vuln/GO-2022-0493
  Module: golang.org/x/sys
    Found in: golang.org/x/sys@v0.0.0-20210403161142-5e06dd20ab57
    Fixed in: golang.org/x/sys@v0.0.0-20220412211240-33da011f77ad

Signed-off-by: Chun-Hung Tseng <henrybear327@gmail.com>
…_release_3.5

Fix govulncheck CI check on release-3.5
…-of-#18164-origin-release-3.5

bugfix: register of walWriteSec
Makefile's target `verify-dep` current behavior is to use `go list` to
check consistent dependency versions from direct dependencies. Ignoring
indirect dependencies in a multi-module project could lead to version
mismatches. If module A imports module B, module B's dependency will be
an indirect dependency in module A. Which can potentially have a version
mismatch. Therefore, use `go mod edit` with indirect dependencies, too.
So it can work with all dependencies defined in go.mod.

Fix displaying dependencies with mismatches, as the old code was
searching with grep just for the prefix, which would show other
dependencies that shared the same prefix.

Reference:
- etcd-io#18205

Signed-off-by: Ivan Valdes <ivan@vald.es>
Signed-off-by: Chun-Hung Tseng <henrybear327@gmail.com>
Signed-off-by: Chun-Hung Tseng <henrybear327@gmail.com>
…on v0.0.0-20180306012644-bacd9c7ef1dd

Signed-off-by: Chun-Hung Tseng <henrybear327@gmail.com>
Signed-off-by: Chun-Hung Tseng <henrybear327@gmail.com>
…stency

[3.5] Fix dependency inconsistency detection and add make verify-dep
[3.5] Support multiple values for allowed client and peer TLS identities
Include conditional logic to install shellcheck with correct architecture.

This is based on commit 4f23883 and pull request etcd-io#14872.

Signed-off-by: D Tripp <38776199+thedtripp@users.noreply.github.com>
…heckBackport3.5

etcd 3.5: Install shellcheck if not exists.
Signed-off-by: Yao Cheng <chengyao09@hotmail.com>
By running `find -exec`, an error exit code doesn't properly return the
error if there's a failure in a command executed. Use `xargs` to force
an exit with error when a command fails to run.

Signed-off-by: Ivan Valdes <ivan@vald.es>
[3.5] backport deflake TestV3AuthWithLeaseRevokeWithRootJWT
…-govulncheck-exit-code

[3.5] github/govuln: don't swallow govulncheck errors
Right now the basic auth tokens that are deleted after `--auth-token-ttl`
cause info-level logs to be emitted. Change this to debug. This helps with
the issue at etcd-io#18244 where calling `/readyz` frequently pollutes the etcd server
logs with this log message.

Fixes etcd-io#18244.

Signed-off-by: Ahmet Alp Balkan <ahmet@linkedin.com>
Signed-off-by: D Tripp <38776199+thedtripp@users.noreply.github.com>
[3.5] Bump Go version to 1.21.12: GO-2024-2963 fix
r4f4 and others added 7 commits October 2, 2024 13:45
etcd does not use vendored dependencies, which means we need to setup
cachito for ART to be able to build the image. Unfortunately, CI cannot
use cachito, so we need a separate Dockerfile.

Co-authored-by: Daniele Paolella <dpaolell@redhat.com>
Co-authored-by: Joep van Delft <jdelft@redhat.com>
The main installer binary is now statically linked and there is a
separate binary which is dynamically-linked for fips support
(baremetal-installer/openshift-install-fips).

We want the etcd-artifacts image to contain statically-linked binaries
to be included in the non-fips openshift-install binary. When building
with fips support, we'll get etcd binaries from the regular etcd
container image, which has dynamically-linked binaries.

When setting GOOS=X and GOARCH=Y, most of the cross-builds will result
in statically linked binaries, except when the host matches X/Y
system/arch. So let's be explicit and set `CGO_ENABLED=0` and the
exception env var `GO_COMPLIANCE_EXCLUDE`.
This is needed for the s390x/ppc64le arches since we just cross-compile
to linux amd/arm64.
@openshift-ci-robot openshift-ci-robot added jira/valid-reference Indicates that this PR references a valid Jira ticket of any type. jira/invalid-bug Indicates that a referenced Jira bug is invalid for the branch this PR is targeting. labels Oct 2, 2024
@openshift-ci-robot
Copy link

@Elbehery: This pull request references Jira Issue OCPBUGS-42687, which is invalid:

  • expected Jira Issue OCPBUGS-42687 to depend on a bug targeting a version in 4.17.0 and in one of the following states: VERIFIED, RELEASE PENDING, CLOSED (ERRATA), CLOSED (CURRENT RELEASE), CLOSED (DONE), CLOSED (DONE-ERRATA), but no dependents were found

Comment /jira refresh to re-evaluate validity if changes to the Jira bug are made, or edit the title of this pull request to link to a different bug.

The bug has been updated to refer to the pull request using the external bug tracker.

In response to this:

This PR rebases etcd 3.5.16 into openshift-4.16.

running make locally

SUCCESS: etcd_build (GOARCH=arm64)
./bin/etcd --version
etcd Version: 3.5.16
Git SHA: 29f9e842a
Go Version: go1.22.7
Go OS/Arch: darwin/arm64
./bin/etcdctl version
etcdctl version: 3.5.16
API version: 3.5
./bin/etcdutl version
etcdutl version: 3.5.16

Note: Upstream has refactored clientV3 here. This the changed func was being used downstream in

func (c *cluster) NonLinearizeableMemberList(ctx context.Context) (*MemberListResponse, error) {

cc @openshift/openshift-team-etcd

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 openshift-eng/jira-lifecycle-plugin repository.

@Elbehery
Copy link
Author

Elbehery commented Oct 2, 2024

/jira refresh

Copy link

openshift-ci bot commented Oct 2, 2024

[APPROVALNOTIFIER] This PR is APPROVED

This pull-request has been approved by: Elbehery

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-robot
Copy link

@Elbehery: This pull request references Jira Issue OCPBUGS-42687, which is invalid:

  • expected dependent Jira Issue OCPBUGS-42680 to be in one of the following states: VERIFIED, RELEASE PENDING, CLOSED (ERRATA), CLOSED (CURRENT RELEASE), CLOSED (DONE), CLOSED (DONE-ERRATA), but it is POST instead
  • expected dependent Jira Issue OCPBUGS-42680 to target a version in 4.17.0, but it targets "4.17" instead

Comment /jira refresh to re-evaluate validity if changes to the Jira bug are made, or edit the title of this pull request to link to a different bug.

In response to this:

/jira refresh

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 openshift-eng/jira-lifecycle-plugin repository.

@openshift-ci openshift-ci bot added the approved Indicates a PR has been approved by an approver from all required OWNERS files. label Oct 2, 2024
@Elbehery
Copy link
Author

Elbehery commented Oct 2, 2024

/payload 4.16 nightly informing

Copy link

openshift-ci bot commented Oct 2, 2024

@Elbehery: trigger 73 job(s) of type informing for the nightly release of OCP 4.16

  • periodic-ci-openshift-release-master-nightly-4.16-e2e-agent-compact-ipv4-conformance
  • periodic-ci-openshift-release-master-nightly-4.16-e2e-agent-ha-dualstack-conformance
  • periodic-ci-openshift-release-master-nightly-4.16-e2e-agent-single-node-ipv6
  • periodic-ci-openshift-release-master-nightly-4.16-console-aws
  • periodic-ci-openshift-cluster-control-plane-machine-set-operator-release-4.16-periodics-e2e-aws
  • periodic-ci-openshift-release-master-nightly-4.16-e2e-aws-csi
  • periodic-ci-openshift-release-master-ci-4.16-e2e-aws-ovn
  • periodic-ci-openshift-release-master-nightly-4.16-e2e-aws-ovn-fips
  • periodic-ci-openshift-release-master-nightly-4.16-e2e-aws-ovn-single-node
  • periodic-ci-openshift-release-master-nightly-4.16-e2e-aws-ovn-single-node-serial
  • periodic-ci-openshift-release-master-nightly-4.16-e2e-aws-ovn-single-node-techpreview
  • periodic-ci-openshift-release-master-nightly-4.16-e2e-aws-ovn-single-node-techpreview-serial
  • periodic-ci-openshift-release-master-ci-4.16-e2e-aws-ovn-techpreview
  • periodic-ci-openshift-release-master-ci-4.16-e2e-aws-ovn-techpreview-serial
  • periodic-ci-openshift-release-master-ci-4.16-e2e-aws-ovn-upgrade-out-of-change
  • periodic-ci-openshift-release-master-nightly-4.16-e2e-aws-sdn
  • periodic-ci-openshift-release-master-nightly-4.16-e2e-aws-sdn-cgroupsv2
  • periodic-ci-openshift-release-master-ci-4.16-e2e-aws-sdn-upgrade-out-of-change
  • periodic-ci-openshift-release-master-nightly-4.16-e2e-aws-ovn-upi
  • periodic-ci-openshift-cluster-control-plane-machine-set-operator-release-4.16-periodics-e2e-azure
  • periodic-ci-openshift-release-master-nightly-4.16-e2e-azure-csi
  • periodic-ci-openshift-release-master-ci-4.16-e2e-azure-ovn
  • periodic-ci-openshift-release-master-ci-4.16-e2e-azure-ovn-serial
  • periodic-ci-openshift-release-master-ci-4.16-e2e-azure-ovn-techpreview
  • periodic-ci-openshift-release-master-ci-4.16-e2e-azure-ovn-techpreview-serial
  • periodic-ci-openshift-release-master-ci-4.16-e2e-azure-ovn-upgrade-out-of-change
  • periodic-ci-openshift-release-master-nightly-4.16-e2e-azure-sdn
  • periodic-ci-openshift-release-master-ci-4.16-e2e-azure-sdn-upgrade
  • periodic-ci-openshift-release-master-ci-4.16-e2e-azure-sdn-upgrade-out-of-change
  • periodic-ci-openshift-release-master-cnv-nightly-4.16-e2e-azure-deploy-cnv
  • periodic-ci-openshift-release-master-cnv-nightly-4.16-e2e-azure-upgrade-cnv
  • periodic-ci-openshift-release-master-nightly-4.16-e2e-aws-driver-toolkit
  • periodic-ci-openshift-cluster-control-plane-machine-set-operator-release-4.16-periodics-e2e-gcp
  • periodic-ci-openshift-release-master-ci-4.16-e2e-gcp-ovn
  • periodic-ci-openshift-release-master-nightly-4.16-e2e-gcp-ovn-csi
  • periodic-ci-openshift-release-master-nightly-4.16-e2e-gcp-ovn-rt
  • periodic-ci-openshift-release-master-ci-4.16-e2e-gcp-ovn-techpreview
  • periodic-ci-openshift-release-master-ci-4.16-e2e-gcp-ovn-techpreview-serial
  • periodic-ci-openshift-release-master-ci-4.16-upgrade-from-stable-4.15-e2e-gcp-ovn-upgrade
  • periodic-ci-openshift-release-master-nightly-4.16-e2e-gcp-sdn
  • periodic-ci-openshift-release-master-nightly-4.16-e2e-gcp-sdn-serial
  • periodic-ci-openshift-release-master-nightly-4.16-e2e-gcp-sdn-upgrade
  • periodic-ci-openshift-release-master-ci-4.16-upgrade-from-stable-4.15-e2e-gcp-sdn-upgrade
  • periodic-ci-openshift-release-master-nightly-4.16-e2e-metal-ipi-ovn-bm-upgrade
  • periodic-ci-openshift-release-master-nightly-4.16-e2e-metal-ipi-ovn-dualstack
  • periodic-ci-openshift-release-master-nightly-4.16-e2e-metal-ipi-ovn-serial-ipv4
  • periodic-ci-openshift-release-master-nightly-4.16-e2e-metal-ipi-ovn-serial-virtualmedia
  • periodic-ci-openshift-release-master-nightly-4.16-upgrade-from-stable-4.15-e2e-metal-ipi-sdn-upgrade
  • periodic-ci-openshift-release-master-nightly-4.16-e2e-metal-ipi-serial-ovn-ipv6
  • periodic-ci-openshift-release-master-nightly-4.16-e2e-metal-ipi-serial-ovn-dualstack
  • periodic-ci-openshift-release-master-nightly-4.16-e2e-metal-ipi-upgrade-ovn-ipv6
  • periodic-ci-openshift-release-master-nightly-4.16-upgrade-from-stable-4.15-e2e-metal-ipi-upgrade-ovn-ipv6
  • periodic-ci-openshift-release-master-nightly-4.16-e2e-metal-ovn-assisted
  • periodic-ci-openshift-release-master-nightly-4.16-metal-ovn-single-node-recert-cluster-rename
  • periodic-ci-openshift-osde2e-main-nightly-4.16-osd-aws
  • periodic-ci-openshift-osde2e-main-nightly-4.16-conformance-osd-aws
  • periodic-ci-openshift-osde2e-main-nightly-4.16-osd-gcp
  • periodic-ci-openshift-osde2e-main-nightly-4.16-conformance-osd-gcp
  • periodic-ci-openshift-release-master-nightly-4.16-e2e-aws-ovn-proxy
  • periodic-ci-openshift-release-master-nightly-4.16-e2e-metal-ovn-single-node-live-iso
  • periodic-ci-openshift-osde2e-main-nightly-4.16-rosa-classic-sts
  • periodic-ci-openshift-release-master-nightly-4.16-e2e-aws-sdn-upgrade
  • periodic-ci-openshift-release-master-nightly-4.16-e2e-telco5g
  • periodic-ci-openshift-release-master-nightly-4.16-upgrade-from-stable-4.15-e2e-aws-sdn-upgrade
  • periodic-ci-openshift-release-master-nightly-4.16-e2e-vsphere-ovn-csi
  • periodic-ci-openshift-release-master-nightly-4.16-e2e-vsphere-ovn-serial
  • periodic-ci-openshift-release-master-nightly-4.16-e2e-vsphere-ovn-techpreview
  • periodic-ci-openshift-release-master-nightly-4.16-e2e-vsphere-ovn-techpreview-serial
  • periodic-ci-openshift-release-master-ci-4.16-upgrade-from-stable-4.15-e2e-vsphere-ovn-upgrade
  • periodic-ci-openshift-release-master-nightly-4.16-e2e-vsphere-ovn-upi
  • periodic-ci-openshift-release-master-nightly-4.16-e2e-vsphere-ovn-upi-serial
  • periodic-ci-openshift-release-master-nightly-4.16-e2e-vsphere-sdn
  • periodic-ci-openshift-release-master-nightly-4.16-e2e-vsphere-static-ovn

See details on https://pr-payload-tests.ci.openshift.org/runs/ci/33ff3060-80b6-11ef-9902-be7b2d5d7fef-0

@Elbehery
Copy link
Author

Elbehery commented Oct 2, 2024

/payload 4.16 nightly blocking

Copy link

openshift-ci bot commented Oct 2, 2024

@Elbehery: trigger 9 job(s) of type blocking for the nightly release of OCP 4.16

  • periodic-ci-openshift-release-master-nightly-4.16-e2e-aws-ovn-serial
  • periodic-ci-openshift-release-master-ci-4.16-e2e-aws-ovn-upgrade
  • periodic-ci-openshift-release-master-nightly-4.16-e2e-aws-sdn-upgrade
  • periodic-ci-openshift-release-master-ci-4.16-e2e-azure-ovn-upgrade
  • periodic-ci-openshift-release-master-nightly-4.16-fips-payload-scan
  • periodic-ci-openshift-release-master-ci-4.16-upgrade-from-stable-4.15-e2e-gcp-ovn-rt-upgrade
  • periodic-ci-openshift-hypershift-release-4.16-periodics-e2e-aws-ovn-conformance
  • periodic-ci-openshift-release-master-nightly-4.16-e2e-metal-ipi-ovn-bm
  • periodic-ci-openshift-release-master-nightly-4.16-e2e-metal-ipi-ovn-ipv6

See details on https://pr-payload-tests.ci.openshift.org/runs/ci/3da2b010-80b6-11ef-8c95-3e7b51be13a8-0

@Elbehery
Copy link
Author

Elbehery commented Oct 2, 2024

/jira refresh

@openshift-ci-robot
Copy link

@Elbehery: This pull request references Jira Issue OCPBUGS-42687, which is invalid:

  • expected dependent Jira Issue OCPBUGS-42680 to be in one of the following states: VERIFIED, RELEASE PENDING, CLOSED (ERRATA), CLOSED (CURRENT RELEASE), CLOSED (DONE), CLOSED (DONE-ERRATA), but it is POST instead

Comment /jira refresh to re-evaluate validity if changes to the Jira bug are made, or edit the title of this pull request to link to a different bug.

In response to this:

/jira refresh

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 openshift-eng/jira-lifecycle-plugin repository.

@Elbehery
Copy link
Author

Elbehery commented Oct 2, 2024

/assign @geliu2016
/assign @sandeepknd

@geliu2016
Copy link

/label cherry-pick-approved

@openshift-ci openshift-ci bot added the cherry-pick-approved Indicates a cherry-pick PR into a release branch has been approved by the release branch manager. label Oct 8, 2024
@Elbehery
Copy link
Author

Elbehery commented Oct 8, 2024

/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 Oct 8, 2024
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. cherry-pick-approved Indicates a cherry-pick PR into a release branch has been approved by the release branch manager. do-not-merge/hold Indicates that a PR should not merge because someone has issued a /hold command. jira/invalid-bug Indicates that a referenced Jira bug is invalid for the branch this PR is targeting. jira/valid-reference Indicates that this PR references a valid Jira ticket of any type.
Projects
None yet
Development

Successfully merging this pull request may close these issues.