confluentinc / confluentinc/kafka-tutorials
Enable 1-click remote dev environments for all tutorials with Gitpod or Codespaces
- Dominant language
- Java
- Stars
- 39
- Forks
- 91
- PR merge metrics
- No merged PRs in 30d
Description
The current kafka tutorials user experience is sub optimal:
- User must install Docker, ccloud CLI, and sometimes other tools
- User must download several GB of docker images
- User must do things like exec into containers in order to use tools installed within
Ideally the user experience would be:
- Click a link to open a remote dev environment with all prerequisites baked in.
- Focus entirely on the learning objective
This more ideal user experience is possible with [gitpod](https://gitpod.io) workspaces or GitHub Codespaces. In fact, I've already "gitpodified" a kafka tutorial [here](https://github.com/chuck-alt-delete/kafka-tutorial-with-gitpod)!
Enabling gitpod would require configuring a `.gitpod.yml` file in the repo root. Gitpod doesn't yet support [multiple .gitpod.yml files](https://github.com/gitpod-io/gitpod/issues/5521), but as a workaround, we could use environment variables via URL ([docs](https://www.gitpod.io/docs/environment-variables#provide-env-vars-via-url) and [example]()) to automatically change into the proper code directory on launch. This would mean we'd need one workspace to be able to run any tutorial which should be fine since everything is on docker. If something's not on docker, we could just install it to the workspace, or alias it with docker underneath (e.g. how the `az` CLI is aliased in the kafka docker playground project [here](https://github.com/vdesabou/kafka-docker-playground/blob/master/scripts/utils.sh#L638))
Contributor guide
Assessment
This issue has not been assessed yet.