Skip to content

Conversation

@wazery
Copy link
Contributor

@wazery wazery commented Sep 1, 2025

This is a PR to address the issue #4552 which enhances the current script that creates the asciinema demo recording, by having a minimal makefile target that generates the new recording and updates the root readme file.

I also added a minimal script that sets up a minimal demo kind cluster so we can deploy into.

@k8s-ci-robot k8s-ci-robot added do-not-merge/work-in-progress Indicates that a PR should not merge because it is a work in progress. cncf-cla: yes Indicates the PR's author has signed the CNCF CLA. labels Sep 1, 2025
@k8s-ci-robot
Copy link
Contributor

[APPROVALNOTIFIER] This PR is NOT APPROVED

This pull-request has been approved by: wazery
Once this PR has been reviewed and has the lgtm label, please assign camilamacedo86 for approval. For more information see the Code Review Process.

The full list of commands accepted by this bot can be found here.

Needs approval from an approver in each of these files:

Approvers can indicate their approval by writing /approve in a comment
Approvers can cancel approval by writing /approve cancel in a comment

@k8s-ci-robot k8s-ci-robot added the needs-ok-to-test Indicates a PR that requires an org member to verify it is safe to test. label Sep 1, 2025
@k8s-ci-robot
Copy link
Contributor

Hi @wazery. Thanks for your PR.

I'm waiting for a kubernetes-sigs member to verify that this patch is reasonable to test. If it is, they should reply with /ok-to-test on its own line. Until that is done, I will not automatically test new commits in this PR, but the usual testing commands by org members will still work. Regular contributors should join the org to skip this step.

Once the patch is verified, the new status will be reflected by the ok-to-test label.

I understand the commands that are listed here.

Instructions for interacting with me using PR comments are available here. If you have questions or suggestions related to my behavior, please file an issue against the kubernetes-sigs/prow repository.

@k8s-ci-robot k8s-ci-robot added the size/L Denotes a PR that changes 100-499 lines, ignoring generated files. label Sep 1, 2025
@wazery wazery force-pushed the w-asciinema-demo branch 3 times, most recently from ce9b9ee to ada0506 Compare September 1, 2025 16:46
@wazery wazery changed the title (:sparkles:) feat: enhance the asciinema demo creation script ✨ feat: enhance the asciinema demo creation script Sep 1, 2025
@wazery wazery force-pushed the w-asciinema-demo branch 2 times, most recently from b6ef9e6 to 2f5bdbe Compare September 1, 2025 17:04
@wazery wazery changed the title ✨ feat: enhance the asciinema demo creation script 🌱 chore: update the asciinema demo creation script Sep 1, 2025
@wazery wazery force-pushed the w-asciinema-demo branch 2 times, most recently from b339d16 to 0e9254a Compare September 1, 2025 19:47
@wazery wazery marked this pull request as ready for review September 1, 2025 22:06
@k8s-ci-robot k8s-ci-robot removed the do-not-merge/work-in-progress Indicates that a PR should not merge because it is a work in progress. label Sep 1, 2025
@@ -0,0 +1,108 @@
#!/usr/bin/env bash
Copy link
Contributor Author

@wazery wazery Sep 1, 2025

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I checked the Makefile if we have some targets that just creates the needed kind cluster for testing, but I saw it's tightly coupled in the test scripts, so thought of introducing this minimal script just for the demo.

I feel my reasoning is not good here, and it would be nicer if I just decoupled the kind cluster creation from the test scripts, yet it's outside the scope of this PR 🤔 .. just thinking outloud 😅

return 0
}

update_readme() {
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

The script should allow us update other videos such as the example shared so that we could add other demos

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

addressed this, thanks for the pointer @camilamacedo86

Copy link

Copilot AI left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull Request Overview

This PR enhances the asciinema demo recording infrastructure for Kubebuilder by introducing automated demo generation capabilities, a Kind cluster setup script, and Makefile targets for easier workflow management.

Key Changes:

  • Added automated demo recording and SVG generation pipeline
  • Introduced Kind cluster setup automation for consistent demo environments
  • Enhanced demo script with modern Kubebuilder features (deploy-image plugin, validation markers)

Reviewed Changes

Copilot reviewed 5 out of 5 changed files in this pull request and generated 3 comments.

Show a summary per file
File Description
scripts/demo/setup-kind.sh New script that automates Kind cluster setup with installation checks and cluster configuration
scripts/demo/run.sh Updated demo workflow showcasing modern features like deploy-image plugin and validation markers
scripts/demo/generate-demo.sh New orchestration script that automates recording, SVG conversion, and README updates
scripts/demo/README.md Comprehensive documentation update with new targets, prerequisites, and workflow instructions
Makefile Added three new targets (update-demo, setup-demo-cluster, clean-demo) for demo management
Comments suppressed due to low confidence (1)

scripts/demo/setup-kind.sh:1

  • The uname -m commands should be quoted to handle edge cases with spaces or special characters. Use [ "$(uname -m)" = x86_64 ] instead.
#!/usr/bin/env bash

💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.

wazery added a commit to wazery/kubebuilder that referenced this pull request Oct 27, 2025
- Fix kubectl apply command: change -k to -f for single YAML file
- Extract duplicate version logic to main() function
- Remove OS-specific installation commands from prerequisites
- Simplify check_prerequisites error messages

Addresses feedback from PR kubernetes-sigs#5068
wazery added a commit to wazery/kubebuilder that referenced this pull request Oct 27, 2025
- Revert to CronJob example to maintain consistency with existing demos
- Make generate-demo.sh flexible to support multiple demo variations
- Add support for custom demo names and scripts via CLI parameters
- Only update README for default kb-demo, not custom demos
- Add usage/help documentation for the script

This addresses feedback from camilamacedo86 on PR kubernetes-sigs#5068:
1. Keep the same example (CronJob instead of Guestbook/Busybox)
2. Allow script to generate other demos for future extensibility
@wazery
Copy link
Contributor Author

wazery commented Oct 28, 2025

Here is an example recording:

kb-demo v4 7 0

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

cncf-cla: yes Indicates the PR's author has signed the CNCF CLA. needs-ok-to-test Indicates a PR that requires an org member to verify it is safe to test. size/L Denotes a PR that changes 100-499 lines, ignoring generated files.

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants