Skip to content

Devops/render worker ghactions deploy - #1867

Open
shreyash-jain wants to merge 6 commits into
mainfrom
devops/render-worker-ghactions-deploy
Open

Devops/render worker ghactions deploy#1867
shreyash-jain wants to merge 6 commits into
mainfrom
devops/render-worker-ghactions-deploy

Conversation

@shreyash-jain

Copy link
Copy Markdown
Contributor

Summary of Changes

Related Issue

Type of Change

  • Bug fix (non-breaking change that fixes an issue)
  • New feature (non-breaking change that adds functionality)
  • Breaking change (fix or feature that would cause existing functionality to change)
  • Documentation update

How Has This Been Tested?

Checklist

  • My code follows the project's style guidelines
  • I have performed a self-review of my code
  • I have added tests that prove my fix is effective or that my feature works
  • New and existing tests pass locally with my changes
  • I have updated the documentation accordingly

Shreyash Jain and others added 6 commits June 3, 2026 00:03
The standalone build host (157.90.162.154) was decommissioned. New deploy flow:
- GH-hosted runner builds the image (build.sh --context-only + buildx)
- Pushes ghcr.io/vacademy-io/render-worker:v<date>-<sha> + :latest
- kubectl set image rolls the new tag onto the k3s Deployment
- Smoke-tests /health via cluster DNS from ai-service pod

deploy.sh becomes a thin 'gh workflow run' wrapper with:
- Detached-HEAD guard
- Pre-flight check that the ref exists on origin
- Warning when working tree is dirty or local is ahead of origin
- Timestamp-based run resolution (no race against prior runs); 10s
  safety margin for clock skew
- --help output bounded by heavy banner rules so it doesn't leak code

Triggers: workflow_dispatch + push to main when render_worker or
ai-video-gen-main code changes.

Three rounds of adversarial review caught a race condition, a help-output
sed-range bug, and a few minor concerns. All addressed before commit.

Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
The callback redirected with a generic ?zoom_error=connect_failed, forcing a per-pod log
hunt to find the cause. Append &zoom_reason=<message> (URL-encoded, truncated, no secrets)
so the failure is visible in the browser URL.

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
getMe swallowed the Zoom response and returned null, so a missing-scope failure showed
only as the generic 'Could not read the connected Zoom user profile'. Now it propagates
Zoom's status + body (e.g. code 4711 'does not contain scopes:[user:read]'), which the
callback puts in the redirect URL — pinpointing exactly which scope to grant.

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
getZakToken logged only the exception class, so a missing-scope ZAK failure (which leaves
host/role=1 unable to start the meeting) was invisible. Log Zoom's status + body so e.g.
'does not contain scopes:[user_zak:read]' is clear.

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
@codacy-production

Copy link
Copy Markdown
Contributor

Up to standards ✅

🟢 Issues 0 issues

Results:
0 new issues

View in Codacy

NEW Get contextual insights on your PRs based on Codacy's metrics, along with PR and Jira context, without leaving GitHub. Enable AI reviewer
TIP This summary will be updated as you push new changes.

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