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

feat(Docker): add "Start Local Kafka" command/action #396

Draft
wants to merge 17 commits into
base: main
Choose a base branch
from

Conversation

shouples
Copy link
Contributor

@shouples shouples commented Oct 16, 2024

Summary of Changes

As a follow-up to #347, this PR adds the functionality for creating a confluent-local Kafka broker container through the Docker engine API.

TODO:

  • update docker event listener to check container listing before setting localKafkaConnected.fire(false)
  • handle progress notification cancellation behavior
  • handle errors creating/starting container

Any additional details or context that should be provided?

Beyond the command added in https://github.com/confluentinc/vscode/blob/djs/local-kafka-start/src/commands/docker.ts, this PR is also adding some wrappers around the basic movements we'll need going forward to check for the existence of Docker images (and pull if they don't exist), create Docker networks, create and start Docker containers.

This PR also adds a LocalResourceWorkflow abstract base class for creating "workflows" to start and stop local resources depending on the base image chosen by the user in our extension settings. Initially, this is just for the confluentinc/confluent-local Docker image, but will be extended in future PRs for supporting additional images.

Associated PRs

Pull request checklist

Please check if your PR fulfills the following (if applicable):

Tests
  • Added new
  • Updated existing
  • Deleted existing
Other
  • Does anything in this PR need to be mentioned in the user-facing CHANGELOG or README?
  • Have you validated this change locally by packaging and installing the extension .vsix file?
    gulp clicktest

@shouples shouples requested a review from a team as a code owner October 16, 2024 13:40
@shouples shouples marked this pull request as draft October 16, 2024 13:41
@shouples shouples changed the title feat: add "Start Local Kafka" feat(Docker): add "Start Local Kafka" command/action Oct 16, 2024
@shouples shouples linked an issue Oct 16, 2024 that may be closed by this pull request
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.

Add configuration for local Kafka REST port
2 participants