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

Modify FIPS test runner environment for integration tests #17096

Open
wants to merge 2 commits into
base: feature/fedramp-high-8.x
Choose a base branch
from

Conversation

donoghuc
Copy link
Member

@donoghuc donoghuc commented Feb 14, 2025

Release notes

[rn:skip]

What does this PR do?

This commit makes two small changes to the dockerfile used to define the fips test environment. Specifically it adds curl (which is required by integration tests) and turns off debug ssl logging as it is extremely noisy in logs and breaking some assumptions in tests about logfile content.

Related issues

Closes https://github.com/elastic/ingest-dev/issues/5074

This commit makes two small changes to the dockerfile used to define the fips
test environment. Specifically it adds curl (which is required by integration
tests), make (which is required by test setup) and turns off debug ssl
logging as it is extremely noisy in logs and breaking some assumptions in
tests about logfile content.
@donoghuc donoghuc force-pushed the integration-tests-setup branch from 773d794 to 872cc99 Compare February 14, 2025 23:47
@donoghuc
Copy link
Member Author

Exploring elastic/ingest-dev#5088 and trying to get
this to run in CI. Still a WIP as there are some duplicated commands and other
things to clean up.
Copy link

Quality Gate passed Quality Gate passed

Issues
0 New issues
0 Accepted issues

Measures
0 Security Hotspots
No data about Coverage
No data about Duplication

See analysis details on SonarQube

@elasticmachine
Copy link
Collaborator

elasticmachine commented Feb 19, 2025

@donoghuc
Copy link
Member Author

Need to sort out what is hanging in CI, but for FIPS part one locally on commit 71a886b i'm down to just these failures!

    Failures:

      1) Beat Input Without TLS successfully send events
         Failure/Error: @fixture = Fixture.new(__FILE__)

         RuntimeError:
           /logstash/qa/integration/services/filebeat_setup.sh FAILED with exit status pid 952 exit 127
         Shared Example Group: "send events" called from ./specs/beats_input_spec.rb:98
         # ./services/service.rb:36:in `setup'
         # ./framework/fixture.rb:82:in `block in setup_services'
         # ./framework/fixture.rb:81:in `setup_services'
         # ./framework/fixture.rb:47:in `initialize'
         # ./specs/beats_input_spec.rb:28:in `block in <main>'
         # ./rspec.rb:36:in `<main>'

      2) Beat Input With TLS Server auth successfully send events
         Failure/Error: @fixture = Fixture.new(__FILE__)

         RuntimeError:
           /logstash/qa/integration/services/filebeat_setup.sh FAILED with exit status pid 952 exit 127
         Shared Example Group: "send events" called from ./specs/beats_input_spec.rb:131
         # ./services/service.rb:36:in `setup'
         # ./framework/fixture.rb:82:in `block in setup_services'
         # ./framework/fixture.rb:81:in `setup_services'
         # ./framework/fixture.rb:47:in `initialize'
         # ./specs/beats_input_spec.rb:28:in `block in <main>'
         # ./rspec.rb:36:in `<main>'

      3) Beat Input With TLS Mutual auth successfully send events
         Failure/Error: @fixture = Fixture.new(__FILE__)

         RuntimeError:
           /logstash/qa/integration/services/filebeat_setup.sh FAILED with exit status pid 952 exit 127
         Shared Example Group: "send events" called from ./specs/beats_input_spec.rb:162
         # ./services/service.rb:36:in `setup'
         # ./framework/fixture.rb:82:in `block in setup_services'
         # ./framework/fixture.rb:81:in `setup_services'
         # ./framework/fixture.rb:47:in `initialize'
         # ./specs/beats_input_spec.rb:28:in `block in <main>'
         # ./rspec.rb:36:in `<main>'

      4) Install and run java plugin successfully runs a pipeline with an installed Java plugins
         Got 2 failures:

         4.1) Failure/Error: expect(execute.stderr_and_stdout).to match(/Installation successful/)

                expected "Using bundled JDK: /logstash/build/logstash-8.18.0-SNAPSHOT/jdk\nERROR: Something went wrong when installing logstash-input-java_input_example, message: Received fatal alert: handshake_failure\n" to match /Installation successful/
                Diff:
                @@ -1 +1,2 @@
                -/Installation successful/
                +Using bundled JDK: /logstash/build/logstash-8.18.0-SNAPSHOT/jdk
                +ERROR: Something went wrong when installing logstash-input-java_input_example, message: Received fatal alert: handshake_failure

              # ./specs/install_java_plugin_spec.rb:53:in `block in <main>'
              # /logstash/build/qa/integration/vendor/jruby/3.1.0/gems/logstash-devutils-2.6.2-java/lib/logstash/devutils/rspec/spec_helper.rb:47:in `block in <main>'
              # ./rspec.rb:36:in `<main>'

         4.2) Failure/Error: expect(removal.stderr_and_stdout).to match(/Successfully removed #{plugin_name}/)

                expected "Using bundled JDK: /logstash/build/logstash-8.18.0-SNAPSHOT/jdk\nERROR: Operation aborted, cannot remove plugin, message: This plugin has not been previously installed\n" to match /Successfully removed logstash-input-java_input_example/
                Diff:
                @@ -1 +1,2 @@
                -/Successfully removed logstash-input-java_input_example/
                +Using bundled JDK: /logstash/build/logstash-8.18.0-SNAPSHOT/jdk
                +ERROR: Operation aborted, cannot remove plugin, message: This plugin has not been previously installed

              # ./specs/install_java_plugin_spec.rb:41:in `block in <main>'
              # /logstash/build/qa/integration/vendor/jruby/3.1.0/gems/logstash-devutils-2.6.2-java/lib/logstash/devutils/rspec/spec_helper.rb:47:in `block in <main>'
              # ./rspec.rb:36:in `<main>'

    Finished in 5 minutes 12 seconds (files took 1.02 seconds to load)
    33 examples, 4 failures

    Failed examples:

    rspec './specs/beats_input_spec.rb[1:1:1]' # Beat Input Without TLS successfully send events
    rspec './specs/beats_input_spec.rb[1:2:1:1]' # Beat Input With TLS Server auth successfully send events
    rspec './specs/beats_input_spec.rb[1:2:2:1]' # Beat Input With TLS Mutual auth successfully send events
    rspec ./specs/install_java_plugin_spec.rb:50 # Install and run java plugin successfully runs a pipeline with an installed Java plugins

    Randomized with seed 48078

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants