-
Notifications
You must be signed in to change notification settings - Fork 5
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
feat: add e2e tests #172
feat: add e2e tests #172
Conversation
PR Description updated to latest commit (dec4418) |
88d536d
to
98384f5
Compare
@dwertent pls approve, I cannot alone since I contributed |
Summary:
|
9437788
to
46b4628
Compare
Summary:
|
46b4628
to
5ca4b63
Compare
Summary:
|
@dwertent we should merge this |
Any news about the PR? @matthyx |
9c1b759
to
17e1c01
Compare
Summary:
|
17e1c01
to
1894025
Compare
@dwertent DNS test fails because of |
Signed-off-by: Alessio Greggi <ale_grey_91@hotmail.it>
Signed-off-by: Alessio Greggi <ale_grey_91@hotmail.it>
Signed-off-by: Alessio Greggi <ale_grey_91@hotmail.it>
Signed-off-by: Alessio Greggi <ale_grey_91@hotmail.it>
Signed-off-by: Alessio Greggi <ale_grey_91@hotmail.it>
Signed-off-by: Alessio Greggi <ale_grey_91@hotmail.it>
Signed-off-by: Alessio Greggi <ale_grey_91@hotmail.it>
Signed-off-by: Alessio Greggi <ale_grey_91@hotmail.it>
Signed-off-by: Alessio Greggi <ale_grey_91@hotmail.it>
Signed-off-by: Alessio Greggi <ale_grey_91@hotmail.it>
Signed-off-by: Alessio Greggi <ale_grey_91@hotmail.it>
Signed-off-by: Alessio Greggi <ale_grey_91@hotmail.it>
Signed-off-by: Alessio Greggi <ale_grey_91@hotmail.it>
Signed-off-by: Matthias Bertschy <matthias.bertschy@gmail.com>
Signed-off-by: Matthias Bertschy <matthias.bertschy@gmail.com>
1894025
to
272057b
Compare
Summary:
|
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I see the tests are using SBOMSPDXv2p3Filtered
, but the node-agent no longer creates SBOMs of that kind, we work now with syftsbom
instead
User description
Overview
This PR provides the implementation of an e2e test suite using
ginkgo
.Additional Information
This PR provides test to verify generation of
SBOMSPDXv2p3Filtered
resource in the cluster.How to Test
make e2e/v1.27.3
(you can chose whatever version of Kubernetes you prefer)Checklist before requesting a review
Type
Tests
Description
This PR introduces end-to-end (e2e) tests for the
node-agent
component. The main changes include:go.mod
file to include the dependencies required for the e2e tests, such asginkgo
for BDD testing andgomega
for matchers and assertions.Makefile
to include commands for running the e2e tests.README.md
file providing documentation for the e2e tests.Changes walkthrough
e2e_utils.go
e2e/e2e_utils.go
This file contains utility functions for the e2e tests. It
includes functions for creating, deleting, and checking the
status of Kubernetes Pods and Custom Resources. It also
includes functions for waiting for a Pod or Custom Resource
to be ready.
generate_filtered_sbom_test.go
e2e/generate_filtered_sbom_test.go
This file contains the actual e2e test for generating a
filtered SBOM (Software Bill of Materials). It tests the
creation of a Pod and a Custom Resource, and checks if a
filtered SBOM is generated within 2 minutes.
e2e_suite_test.go
e2e/e2e_suite_test.go
This file sets up the test suite for the e2e tests. It
includes functions for setting up and tearing down the test
environment, which involves creating a Kubernetes cluster
and ensuring all necessary Pods are running.
go.mod
go.mod
This file has been updated to include the dependencies
required for the e2e tests, such as
ginkgo
for BDD testingand
gomega
for matchers and assertions.Makefile
Makefile
The Makefile has been updated to include commands for
running the e2e tests. This includes creating a KinD
cluster, installing dependencies, loading the Docker image
into the cluster, running the tests, and cleaning up the
environment.
README.md
e2e/README.md
This file provides documentation for the e2e tests. It
includes information on the prerequisites for running the
tests, and instructions on how to run the tests and clean up
the environment.
✨ Usage guide:
Overview:
The
describe
tool scans the PR code changes, and generates a description for the PR - title, type, summary, walkthrough and labels. The tool can be triggered automatically every time a new PR is opened, or can be invoked manually by commenting on a PR.When commenting, to edit configurations related to the describe tool (
pr_description
section), use the following template:With a configuration file, use the following template:
Enabling\disabling automation
meaning the
describe
tool will run automatically on every PR, will keep the original title, and will add the original user description above the generated description.the tool will replace every marker of the form
pr_agent:marker_name
in the PR description with the relevant content, wheremarker_name
is one of the following:type
: the PR type.summary
: the PR summary.walkthrough
: the PR walkthrough.Note that when markers are enabled, if the original PR description does not contain any markers, the tool will not alter the description at all.
Custom labels
The default labels of the
describe
tool are quite generic: [Bug fix
,Tests
,Enhancement
,Documentation
,Other
].If you specify custom labels in the repo's labels page or via configuration file, you can get tailored labels for your use cases.
Examples for custom labels:
Main topic:performance
- pr_agent:The main topic of this PR is performanceNew endpoint
- pr_agent:A new endpoint was added in this PRSQL query
- pr_agent:A new SQL query was added in this PRDockerfile changes
- pr_agent:The PR contains changes in the DockerfileThe list above is eclectic, and aims to give an idea of different possibilities. Define custom labels that are relevant for your repo and use cases.
Note that Labels are not mutually exclusive, so you can add multiple label categories.
Make sure to provide proper title, and a detailed and well-phrased description for each label, so the tool will know when to suggest it.
Utilizing extra instructions
The
describe
tool can be configured with extra instructions, to guide the model to a feedback tailored to the needs of your project.Be specific, clear, and concise in the instructions. With extra instructions, you are the prompter. Notice that the general structure of the description is fixed, and cannot be changed. Extra instructions can change the content or style of each sub-section of the PR description.
Examples for extra instructions:
Use triple quotes to write multi-line instructions. Use bullet points to make the instructions more readable.
More PR-Agent commands
See the describe usage page for a comprehensive guide on using this tool.