Skip to content

Migrate wathola components to use deployment#4445

Merged
knative-prow-robot merged 1 commit into
knative:masterfrom
cardil:bugfix/wathola-migrate-to-deployments
Nov 2, 2020
Merged

Migrate wathola components to use deployment#4445
knative-prow-robot merged 1 commit into
knative:masterfrom
cardil:bugfix/wathola-migrate-to-deployments

Conversation

@cardil
Copy link
Copy Markdown
Contributor

@cardil cardil commented Oct 30, 2020

Fixes #4444

Proposed Changes

  • Avoid using bare pods for wathola components

@google-cla google-cla Bot added the cla: yes Indicates the PR's author has signed the CLA. label Oct 30, 2020
@knative-prow-robot knative-prow-robot added the size/L Denotes a PR that changes 100-499 lines, ignoring generated files. label Oct 30, 2020
@knative-prow-robot knative-prow-robot added the area/test-and-release Test infrastructure, tests or release label Oct 30, 2020
@codecov
Copy link
Copy Markdown

codecov Bot commented Oct 30, 2020

Codecov Report

Merging #4445 into master will not change coverage.
The diff coverage is n/a.

Impacted file tree graph

@@           Coverage Diff           @@
##           master    #4445   +/-   ##
=======================================
  Coverage   81.06%   81.06%           
=======================================
  Files         281      281           
  Lines        7981     7981           
=======================================
  Hits         6470     6470           
  Misses       1122     1122           
  Partials      389      389           

Continue to review full report at Codecov.

Legend - Click here to learn more
Δ = absolute <relative> (impact), ø = not affected, ? = missing data
Powered by Codecov. Last update 29ff951...ed06afa. Read the comment docs.

@cardil
Copy link
Copy Markdown
Contributor Author

cardil commented Oct 30, 2020

/test pull-knative-eventing-upgrade-tests

@matzew
Copy link
Copy Markdown
Member

matzew commented Oct 31, 2020

/test all

On OpenShift we've observed a disparity when using pods vs deployments.
Using both of those can lead to having different effective user for a
bare pods and pods managed by deployment.

That leads to differences in reading a config file by wathola
components, as `~` points to different places sender and
receiver+forwarder.

This changes the code to avoid using bare pods for wathola components.
@cardil cardil force-pushed the bugfix/wathola-migrate-to-deployments branch from d6c2a90 to ed06afa Compare October 31, 2020 12:11
@cardil
Copy link
Copy Markdown
Contributor Author

cardil commented Oct 31, 2020

I don't know how to retrigger failed Github Action, so I amend the commit.

Copy link
Copy Markdown
Member

@matzew matzew left a comment

Choose a reason for hiding this comment

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

/lgtm
/approve

@knative-prow-robot knative-prow-robot added the lgtm Indicates that a PR is ready to be merged. label Nov 2, 2020
@knative-prow-robot
Copy link
Copy Markdown
Contributor

[APPROVALNOTIFIER] This PR is APPROVED

This pull-request has been approved by: cardil, matzew

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

The pull request process is described here

Details 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

@knative-prow-robot knative-prow-robot added the approved Indicates a PR has been approved by an approver from all required OWNERS files. label Nov 2, 2020
@knative-prow-robot knative-prow-robot merged commit 766a24c into knative:master Nov 2, 2020
@cardil cardil deleted the bugfix/wathola-migrate-to-deployments branch November 2, 2020 12:06
cardil added a commit to cardil/knative-eventing that referenced this pull request Nov 18, 2020
On OpenShift we've observed a disparity when using pods vs deployments.
Using both of those can lead to having different effective user for a
bare pods and pods managed by deployment.

That leads to differences in reading a config file by wathola
components, as `~` points to different places sender and
receiver+forwarder.

This changes the code to avoid using bare pods for wathola components.
openshift-merge-robot pushed a commit to openshift/knative-eventing that referenced this pull request Nov 19, 2020
* Eventing upgrade tests prober fully configurable (knative#4421)

* Eventing upgrade tests prober fully configurable

* Embedding configuration structs

* Reduce a test name length to prevent DNS label too long error (knative#4442)

Having too long namespace or kservice name can lead to an error like:

```
$ host wathola-receiver-test-continuous-events-propagation-with-prober-zxmkp.apps.example.org
host: 'wathola-receiver-test-continuous-events-propagation-with-prober-zxmkp.apps.example.org' is not a legal IDN name (domain label longer than 63 characters), use +noidnin
```

In this case my namespace is test-continuous-events-propagation-with-prober-zxmkp
and knative service name is wathola-receiver. The namespace is taken
from Go test method name. The limit is 63 characters. In this example
the subdomain is 69 characters.

This does affect OpenShift Serverless as kservices there have a URL
format of `${ksvc.name}-${ksvc.namespace}` to enable usage of TLS
wildcard certificates.

Reducing this test method name length will help fit within this strict
limit of 63 chars.

* Use deployment to avoid disparity in effective user (knative#4445)

On OpenShift we've observed a disparity when using pods vs deployments.
Using both of those can lead to having different effective user for a
bare pods and pods managed by deployment.

That leads to differences in reading a config file by wathola
components, as `~` points to different places sender and
receiver+forwarder.

This changes the code to avoid using bare pods for wathola components.

* Refactor fetching of wathola receiver's delivery report using special batch Job (knative#4460)

* Reimplementing fetching of wathola report with K8s job

This change targets the problem of how to get report from cluster.
Clusters may have different networking setup, and it might not be
possible to directly make HTTP request from outside of cluster.

Previous approach used to guess an external address of cluster. That for
sure fails on OpenShift deployed on AWS.

This approach deploys a special Job that, being inside cluster, can
download a report and print it in it's logs. Then test client can fetch
logs of completed job, and parse it, replay the logs, and process report
further.

* Removal of unneeded external node address package

* Fixing lints & boilerplate

* spec.template.spec.restartPolicy=never

* Apply @devguyio suggestions for test/upgrade/README.md

Co-authored-by: Ahmed Abdalla Abdelrehim <aabdelre@redhat.com>

* Changes after review

Co-authored-by: Ahmed Abdalla Abdelrehim <aabdelre@redhat.com>

Co-authored-by: Ahmed Abdalla Abdelrehim <aabdelre@redhat.com>
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. area/test-and-release Test infrastructure, tests or release cla: yes Indicates the PR's author has signed the CLA. lgtm Indicates that a PR is ready to be merged. size/L Denotes a PR that changes 100-499 lines, ignoring generated files.

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Disparity of using pod vs deployment in upgrade tests wathola components

3 participants