Skip to content

feat(GSP1298): esports Dataflow streaming lab script and full Hashnode guide - #56

Draft
hoangsvit wants to merge 2 commits into
mainfrom
feat/gsp1298-esports-dataflow-scout-20261031
Draft

hoangsvit wants to merge 2 commits into
mainfrom
feat/gsp1298-esports-dataflow-scout-20261031

Conversation

@hoangsvit

@hoangsvit hoangsvit commented Oct 30, 2026 •

Copy link
Copy Markdown
Member

New Google Skills lab — GSP1298

Scope and coverage

  • labs/GSP1298/lab.sh: detect project/region and existing lab bucket; idempotent Pub/Sub topic/subscription and BigQuery dataset; download and patch official Python sources with strict assignment matching; python3 -m py_compile; upload checkpoint files; launch Pub/Sub simulator and Dataflow streaming job; scoped Dataflow service-agent/worker IAM; bounded readiness polling; create and query BigQuery views.
  • labs/GSP1298/HASHNODE.md: complete Overview → Setup → Task 1–5 with manual commands, SQL and checkpoints → Solution at the end. Quick exactly two commands targeting main (only available after merge), Manual video placeholder, source links. Original diagrams linked, not embedded because reuse rights unverified.
  • ANSI TTY/NO_COLOR/FORCE_COLOR; ePlus.DEV banner; Copyright (c) 2026 ePlus.DEV | Unlicense; no hardcoded project/region/secrets; bounded retries and no destructive cleanup.
  • Does not automatically disable bucket soft-delete or cancel streaming jobs; review resource cost and IAM changes in the authorized temporary lab.

Validation

  • GitHub CI pending for latest PR head: bash -n, ShellCheck severity error and unit tests. Local ShellCheck unavailable; do not claim PASS before CI.
  • Python source syntax is checked by the script at runtime, but the original Google Storage objects were not executable in this environment.
  • static validated only; runtime/grader unverified after CI; no GCP credentials or lab account used. Review Dataflow API/role propagation, streaming table readiness and original Python source compatibility.
  • No merge, auto-approve or push to main.

Test latest PR commit

Run only inside an authorized temporary Google Skills Cloud Shell. Resolves the latest PR branch SHA, verifies it is nonempty, fetches the immutable commit to avoid caches, and records a SHA-stamped log. NO_COLOR takes precedence over FORCE_COLOR=1.

BRANCH=feat/gsp1298-esports-dataflow-scout-20261031
SHA="$(git ls-remote https://github.com/ePlus-DEV/storage.git refs/heads/$BRANCH | awk '{print $1}')"
test -n "$SHA" || { echo "Missing latest PR head SHA" >&2; exit 1; }
curl -fL --retry 3 "https://raw.githubusercontent.com/ePlus-DEV/storage/$SHA/labs/GSP1298/lab.sh" -o lab-test.sh
set -o pipefail
FORCE_COLOR=1 bash lab-test.sh 2>&1 | tee "lab-GSP1298-${SHA:0:12}.log"

This is a PR test with bash lab-test.sh, not the two-command Hashnode Quick. It does not assert runtime or grader success. Review before merge. Tracks #16.

Latest GitHub CI verification

  • Lab Script Health run #41139900457 completed SUCCESS at head 15e8f04351f5.
  • Read-only changed-script checks: Bash syntax, ShellCheck severity error, and repository unit tests PASS.
  • static validated only; runtime/grader unverified; no authorized lab session used.

@coderabbitai

coderabbitai Bot commented Oct 30, 2026

Copy link
Copy Markdown

Important

Draft PR not reviewed

Draft PRs are not automatically reviewed by default.

  • Trigger a manual review

To automatically review draft PRs, update your CodeRabbit configuration:

reviews:
  auto_review:
    drafts: true
  • Autofix · Keep fixing CodeRabbit findings and required CI, and resolving merge conflicts

Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out.

❤️ Share

Comment @coderabbitai help to get the list of available commands.

This branch has not been deployed

No deployments
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.

1 participant