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

Update test versions of NGINX, Apache and MongoDB #33789

Merged
merged 4 commits into from
Nov 28, 2022

Conversation

rdner
Copy link
Member

@rdner rdner commented Nov 23, 2022

What does this PR do?

The old tests were based on Debian Jessie released in April 2015 (end-of-life on June 30, 2020).

We started having problems with expired GPG keys when installing dependencies in our Docker files.

Why is it important?

Our CI is currently failing with:

[2022-11-23T02:15:50.651Z] W: GPG error: http://security.debian.org/ jessie/updates InRelease: The following signatures were invalid: KEYEXPIRED 1668892417 The following signatures couldn't be verified because the public key is not available: NO_PUBKEY AA8E81B4331F7F50
[2022-11-23T02:15:50.651Z] W: GPG error: http://nginx.org/ jessie InRelease: The following signatures were invalid: KEYEXPIRED 1471427554
[2022-11-23T02:15:50.651Z] W: GPG error: http://httpredir.debian.org/ jessie Release: The following signatures were invalid: KEYEXPIRED 1668891673

Author's Checklist

@rdner rdner added Metricbeat Metricbeat Team:Elastic-Agent-Data-Plane Label for the Agent Data Plane team backport-7.17 Automated backport to the 7.17 branch with mergify backport-v8.5.0 Automated backport with mergify backport-v8.6.0 Automated backport with mergify labels Nov 23, 2022
@rdner rdner requested a review from a team as a code owner November 23, 2022 11:03
@rdner rdner self-assigned this Nov 23, 2022
@elasticmachine
Copy link
Collaborator

Pinging @elastic/elastic-agent-data-plane (Team:Elastic-Agent-Data-Plane)

@botelastic botelastic bot added needs_team Indicates that the issue/PR needs a Team:* label and removed needs_team Indicates that the issue/PR needs a Team:* label labels Nov 23, 2022
@elasticmachine
Copy link
Collaborator

elasticmachine commented Nov 23, 2022

💚 Build Succeeded

the below badges are clickable and redirect to their specific view in the CI or DOCS
Pipeline View Test View Changes Artifacts preview preview

Expand to view the summary

Build stats

  • Start Time: 2022-11-28T15:30:50.308+0000

  • Duration: 118 min 33 sec

Test stats 🧪

Test Results
Failed 0
Passed 24114
Skipped 1954
Total 26068

💚 Flaky test report

Tests succeeded.

🤖 GitHub comments

Expand to view the GitHub comments

To re-run your PR in the CI, just comment with:

  • /test : Re-trigger the build.

  • /package : Generate the packages and run the E2E tests.

  • /beats-tester : Run the installation tests with beats-tester.

  • run elasticsearch-ci/docs : Re-trigger the docs validation. (use unformatted text in the comment!)

@rdner rdner force-pushed the update-test-versions branch from 587679b to ce6b8f1 Compare November 23, 2022 18:44
@@ -1,6 +1,5 @@
ARG APACHE_VERSION=${APACHE_VERSION}
FROM httpd:$APACHE_VERSION
RUN sed -i "/jessie-updates/d" /etc/apt/sources.list
RUN apt-get update && apt-get install -y curl
RUN apt update && yes | apt install curl
Copy link
Member Author

Choose a reason for hiding this comment

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

This is different on purpose. yes | also allows to install packages without authentication in case of expired keys. The keys in Jessie are expired at the moment and we need this Debian version for testing old log format for httpd <= 2.4.12. So either we have to update the keys as one of the steps or just accept the prompt to install without authentication.

@rdner rdner requested a review from a team as a code owner November 24, 2022 09:24
@rdner rdner requested review from belimawr and fearful-symmetry and removed request for a team November 24, 2022 09:24
@rdner rdner requested review from a team as code owners November 24, 2022 10:23
@rdner rdner force-pushed the update-test-versions branch from 8d6338c to 2b17815 Compare November 24, 2022 10:45
@rdner rdner removed request for a team November 24, 2022 10:46
@rdner rdner force-pushed the update-test-versions branch from 4e17685 to 2b17815 Compare November 24, 2022 12:31
@rdner rdner marked this pull request as draft November 24, 2022 13:22
@rdner rdner force-pushed the update-test-versions branch from 8ec4529 to 6231062 Compare November 24, 2022 15:51
The old tests were based on Debian Jessie released in April
2015 (end-of-life on June 30, 2020).

We started having problems with expired GPG keys when installing
dependencies in our Docker files.

Add the missing MPM module and the `ServerName` directive for Apache.
@rdner rdner force-pushed the update-test-versions branch from 6231062 to 38b7077 Compare November 24, 2022 15:55
require.Eventually(t, func() bool {
events, errs = mbtest.ReportingFetchV2Error(f)
return len(events) > 0 && len(errs) == 0
}, 30*time.Second, time.Second, "events cannot be empty: %v, %v", events, errs)
Copy link
Member Author

Choose a reason for hiding this comment

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

This test was flaky, sometimes Logstash returns 0 events the first time around.

@rdner rdner marked this pull request as ready for review November 24, 2022 19:16
@rdner rdner requested a review from a team as a code owner November 24, 2022 19:16
@rdner rdner removed the request for review from a team November 25, 2022 12:34
@andrewkroh
Copy link
Member

My mage is 1.13.0 and the Github action is running 1.14.0.

I noticed this too. There's a Makefile that predates using go install to install the versions from go.mod. So it has a statically defined 1.13 command in it. That should probably be changed over to to using go install without any version specifier.

MAGE_VERSION ?= v1.13.0

@andrewkroh
Copy link
Member

make check and make check-default are passing on my machine, seems like there is something wrong with the Github action.

Same for me. I can't reproduce the diff that CI is giving for the NOTICE.

@rdner
Copy link
Member Author

rdner commented Nov 28, 2022

@andrewkroh I found the cause, it's because of:
#33832
elastic/elastic-agent-client#48

I've pinned the version in 4048b65

@andrewkroh
Copy link
Member

😆 I just found it too.

github.com/elastic/elastic-agent@v0.0.0-20220831162706-5f1e54f40d3e: invalid version: unknown revision 5f1e54f40d3e

Great!

Copy link
Member

@cmacknz cmacknz left a comment

Choose a reason for hiding this comment

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

Thanks for fighting through all this!

@rdner
Copy link
Member Author

rdner commented Nov 28, 2022

E2E test fails with

Error: Error response from daemon: No such image: docker.elastic.co/beats/filebeat:8.6.0-SNAPSHOT

it's definitely unrelated to the change, I'm merging.

@rdner rdner merged commit 4f639d7 into elastic:main Nov 28, 2022
@rdner rdner deleted the update-test-versions branch November 28, 2022 18:12
mergify bot pushed a commit that referenced this pull request Nov 28, 2022
The old tests were based on Debian Jessie released in April
2015 (end-of-life on June 30, 2020).

We started having problems with expired GPG keys when installing
dependencies in our Docker files.

Also:
* Add the missing MPM module and the `ServerName` directive for Apache.
* Add retries to Logstash tests because they are flaky
* Do not install mage v1.14.0
* Update elastic-agent-client version to avoid broken agent dependency

(cherry picked from commit 4f639d7)

# Conflicts:
#	NOTICE.txt
#	go.mod
#	go.sum
mergify bot pushed a commit that referenced this pull request Nov 28, 2022
The old tests were based on Debian Jessie released in April
2015 (end-of-life on June 30, 2020).

We started having problems with expired GPG keys when installing
dependencies in our Docker files.

Also:
* Add the missing MPM module and the `ServerName` directive for Apache.
* Add retries to Logstash tests because they are flaky
* Do not install mage v1.14.0
* Update elastic-agent-client version to avoid broken agent dependency

(cherry picked from commit 4f639d7)

# Conflicts:
#	NOTICE.txt
#	go.mod
#	go.sum
mergify bot pushed a commit that referenced this pull request Nov 28, 2022
The old tests were based on Debian Jessie released in April
2015 (end-of-life on June 30, 2020).

We started having problems with expired GPG keys when installing
dependencies in our Docker files.

Also:
* Add the missing MPM module and the `ServerName` directive for Apache.
* Add retries to Logstash tests because they are flaky
* Do not install mage v1.14.0
* Update elastic-agent-client version to avoid broken agent dependency

(cherry picked from commit 4f639d7)
cmacknz pushed a commit that referenced this pull request Nov 28, 2022
The old tests were based on Debian Jessie released in April
2015 (end-of-life on June 30, 2020).

We started having problems with expired GPG keys when installing
dependencies in our Docker files.

Also:
* Add the missing MPM module and the `ServerName` directive for Apache.
* Add retries to Logstash tests because they are flaky
* Do not install mage v1.14.0
* Update elastic-agent-client version to avoid broken agent dependency

(cherry picked from commit 4f639d7)

Co-authored-by: Denis <denis.rechkunov@elastic.co>
rdner added a commit that referenced this pull request Nov 30, 2022
…oDB (#33844)

* Update test versions of NGINX, Apache and MongoDB (#33789)

The old tests were based on Debian Jessie released in April
2015 (end-of-life on June 30, 2020).

We started having problems with expired GPG keys when installing
dependencies in our Docker files.

Also:
* Add the missing MPM module and the `ServerName` directive for Apache.
* Add retries to Logstash tests because they are flaky
* Do not install mage v1.14.0
* Update elastic-agent-client version to avoid broken agent dependency

(cherry picked from commit 4f639d7)

# Conflicts:
#	NOTICE.txt
#	go.mod
#	go.sum

Co-authored-by: Denis <denis.rechkunov@elastic.co>
rdner added a commit that referenced this pull request Dec 1, 2022
…goDB (#33843)

* Update test versions of NGINX, Apache and MongoDB (#33789)

The old tests were based on Debian Jessie released in April
2015 (end-of-life on June 30, 2020).

We started having problems with expired GPG keys when installing
dependencies in our Docker files.

Also:
* Add the missing MPM module and the `ServerName` directive for Apache.
* Add retries to Logstash tests because they are flaky
* Do not install mage v1.14.0
* Update elastic-agent-client version to avoid broken agent dependency

(cherry picked from commit 4f639d7)

# Conflicts:
#	NOTICE.txt
#	go.mod
#	go.sum

* Resolve conflicts

* Rollback the client version update

Co-authored-by: Denis <denis.rechkunov@elastic.co>
chrisberkhout pushed a commit that referenced this pull request Jun 1, 2023
The old tests were based on Debian Jessie released in April
2015 (end-of-life on June 30, 2020).

We started having problems with expired GPG keys when installing
dependencies in our Docker files.

Also:
* Add the missing MPM module and the `ServerName` directive for Apache.
* Add retries to Logstash tests because they are flaky
* Do not install mage v1.14.0
* Update elastic-agent-client version to avoid broken agent dependency
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
backport-7.17 Automated backport to the 7.17 branch with mergify backport-v8.5.0 Automated backport with mergify backport-v8.6.0 Automated backport with mergify Metricbeat Metricbeat Team:Elastic-Agent-Data-Plane Label for the Agent Data Plane team
Projects
None yet
Development

Successfully merging this pull request may close these issues.

Logstash integration tests are flaky
4 participants