Skip to content

fix: correct vfx_pipeline build docs and frame/publish edge cases - #264

Merged
crowecawcaw merged 2 commits into
aws-deadline:mainlinefrom
crowecawcaw:fix/vfx-pipeline-followup
Jul 30, 2026
Merged

fix: correct vfx_pipeline build docs and frame/publish edge cases#264
crowecawcaw merged 2 commits into
aws-deadline:mainlinefrom
crowecawcaw:fix/vfx-pipeline-followup

Conversation

@crowecawcaw

@crowecawcaw crowecawcaw commented Jul 27, 2026

Copy link
Copy Markdown
Contributor

What

Follow-up to #258. A post-merge review surfaced a few issues in the newly added job_bundles/vfx_pipeline sample; this PR fixes them. All changes are confined to that sample.

Fixes

  • Documented build command failed as written. The rattler-build build command in the sample README (twice) and the conda_channel README runs the recipe's post-build test, which must solve blender — available only in the farm's deadline-cloud channel, not on a workstation. The build exited non-zero and left no package, so the next step published an empty channel. Added --test skip (with an explanation) to all three build commands, and fixed the local conda create test command to include the deadline-cloud channel that provides Blender.
  • Placeholder Flow project id rendered before failing. project.yaml ships project_id: 0. Because "0" is non-empty it passed the preSubmission hook's required-variable check, so a shot with publishing enabled rendered every frame (real farm cost) and only then failed in PublishToFlow against project 0. The hook now rejects FlowProjectId == 0 at submit time with a clear message when publishing is enabled.
  • Single-frame range crashed the scripts. render_shot.py, encode_movie.py, and make_thumbnail.py did start, end = frame_range.split("-"), which raised ValueError for a bare single frame like FrameRange=5 (a valid OpenJD range). They now handle the no-- case. (Step ranges and comma lists remain unsupported, as before.)
  • studio-pipe submit pass-through help. Clarified that extra args for deadline bundle submit go after a -- separator (e.g. -- --yes), matching the README and how argparse routes them.

Verification

  • openjd check passes on the template.
  • scripts/validate_repository.py passes (unit tests + local link check).
  • Simulated the preSubmission hook: publish + project 0 fails fast, publish + real project passes, publish-off + project 0 passes.
  • Single-frame parse verified for 1-48, 5, and 1-1.

Opening as a draft.

  • Bundle README local-render snippet failed verbatim. It enabled the add-on with --addon-module but never set BLENDER_USER_SCRIPTS, and used unrunnable paths (bare scripts/... from a CWD where studio/ is two levels up, plus a .../ placeholder). Replaced it with a pointer to the working top-level walkthrough, and noted the tested Blender version (4.2+). Found by running every documented step locally.

@github-actions github-actions Bot added the waiting-on-maintainers Waiting on the maintainers to review. label Jul 27, 2026
Follow-up to aws-deadline#258, addressing issues found in post-merge review and local testing.

- Documented `rattler-build build` commands failed as written: the recipe's
  post-build test needs Blender (only in the farm's deadline-cloud channel),
  so the build exited non-zero and published an empty channel. Add `--test skip`
  (with an explanation) to the two README build commands and the conda_channel
  README, and fix the local `conda create` test command to include the
  deadline-cloud channel that provides Blender.
- Fail fast when FLOW_PROJECT_ID is the placeholder 0 and publishing is enabled.
  Previously "0" passed the required-variable check, so a shot rendered every
  frame (real farm cost) before PublishToFlow failed against project 0.
- Handle a single-frame range (e.g. FrameRange=5) in render_shot.py,
  encode_movie.py, and make_thumbnail.py instead of raising a ValueError on the
  `start-end` unpack. OpenJD accepts a bare integer as a valid range.
- Clarify in the `studio-pipe submit` help that pass-through args for
  `deadline bundle submit` go after a `--` separator (e.g. `-- --yes`).
- Replace the bundle README's local-render snippet, which failed verbatim
  (it enabled the add-on without setting BLENDER_USER_SCRIPTS and used
  unrunnable paths), with a pointer to the working top-level walkthrough. Note
  the tested Blender version (4.2+).

Signed-off-by: Stephen Crowe <6042774+crowecawcaw@users.noreply.github.com>
@crowecawcaw
crowecawcaw force-pushed the fix/vfx-pipeline-followup branch from c68a81e to b8f7ecb Compare July 30, 2026 15:13
@crowecawcaw
crowecawcaw marked this pull request as ready for review July 30, 2026 15:19
@crowecawcaw
crowecawcaw requested a review from a team as a code owner July 30, 2026 15:19
@crowecawcaw
crowecawcaw enabled auto-merge (squash) July 30, 2026 20:20
@crowecawcaw
crowecawcaw merged commit 1b5fab7 into aws-deadline:mainline Jul 30, 2026
11 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

waiting-on-maintainers Waiting on the maintainers to review.

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants