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

[cmd/opampsupervisor] Add integration tests #24292

Closed
Tracked by #24327
evan-bradley opened this issue Jul 17, 2023 · 3 comments · Fixed by #27002
Closed
Tracked by #24327

[cmd/opampsupervisor] Add integration tests #24292

evan-bradley opened this issue Jul 17, 2023 · 3 comments · Fixed by #27002
Assignees
Labels

Comments

@evan-bradley
Copy link
Contributor

Component(s)

cmd/opampsupervisor

Is your feature request related to a problem? Please describe.

The OpAMP supervisor needs a high-level test suite that tests it correctly controls a Collector when communicating with an OpAMP server.

Describe the solution you'd like

Add an integration test suite that implements a testing instance of an OpAMP server to test the Supervisor, which will run a Collector binary.

Test the following:

  • Supervisor startup and shutdown
  • OpAMP message handling
  • Collector executable execution

The test framework and test cases can be iteratively developed over multiple PRs to make review easier.

Describe alternatives you've considered

No response

Additional context

No response

@github-actions
Copy link
Contributor

This issue has been inactive for 60 days. It will be closed in 60 days if there is no activity. To ping code owners by adding a component label, see Adding Labels via Comments, or if you are unsure of which component this issue relates to, please ping @open-telemetry/collector-contrib-triagers. If this issue is still relevant, please ping the code owners or leave a comment explaining why it is still relevant. Otherwise, please close it.

Pinging code owners:

See Adding Labels via Comments if you do not have permissions to add labels yourself.

@github-actions github-actions bot added the Stale label Sep 18, 2023
@evan-bradley evan-bradley self-assigned this Sep 19, 2023
@evan-bradley
Copy link
Contributor Author

I'm working on this and hope to have a PR out soon.

Copy link
Contributor

This issue has been inactive for 60 days. It will be closed in 60 days if there is no activity. To ping code owners by adding a component label, see Adding Labels via Comments, or if you are unsure of which component this issue relates to, please ping @open-telemetry/collector-contrib-triagers. If this issue is still relevant, please ping the code owners or leave a comment explaining why it is still relevant. Otherwise, please close it.

Pinging code owners:

See Adding Labels via Comments if you do not have permissions to add labels yourself.

@github-actions github-actions bot added the Stale label Nov 20, 2023
evan-bradley added a commit that referenced this issue Dec 12, 2023
**Description:**

Add tests that verify the Supervisor's behavior using a real Collector
binary against an OpAMP server written with the opamp-go library. This
tests a basic set of functionality mostly based on what is currently
listed as implemented in the Supervisor's feature table.

Right now these tests start the Supervisor using the Go API to avoid
process handling, but could be changed to start it through a binary in
the future. I've placed these tests in the E2E testing workflow even
though they run fairly quickly since they depend on a built Collector
binary, may become more expansive in the future, and don't fit in any of
the existing jobs in the `build-and-test` workflow. I'm open to placing
them in another location if we'd prefer them elsewhere.

This also updates opamp-go to v0.9.0 to take advantage of
open-telemetry/opamp-go#200.

**Link to tracking Issue:**

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

Successfully merging a pull request may close this issue.

1 participant