Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
1 change: 1 addition & 0 deletions .github/agents/release.agent.md
Original file line number Diff line number Diff line change
Expand Up @@ -18,6 +18,7 @@ Before starting any release work, read these files completely:
## Core Rules

- **ALWAYS wait for explicit user approval before proceeding to the next step.** After every step, state what you did, whether it succeeded, and the evidence. **WAIT for the user.**
- **ONE command per turn.** Run the command for ONE repo, show the full output, state PASS or FAIL with evidence, then STOP. Do not run the next repo's command until the user explicitly says to proceed. This applies even when the plan shows a `for` loop — execute the loop body manually, one repo per turn.
- **ALWAYS run commands in a terminal** so the user can see them.
- **ALWAYS append `2>&1 | cat`** to every `release-all.sh` and `gh` command — no exceptions.
- **ONE repo at a time.** Execute one phase per repo sequentially. **NEVER parallelize** across repos.
Expand Down
2 changes: 1 addition & 1 deletion lustre-fs-operator
2 changes: 1 addition & 1 deletion nnf-dm
Submodule nnf-dm updated 135 files
2 changes: 1 addition & 1 deletion nnf-integration-test
Submodule nnf-integration-test updated 3 files
+3 −3 go.mod
+6 −6 go.sum
+7 −0 int_test.go
4 changes: 2 additions & 2 deletions tools/release-all/RELEASE-PLAN.md
Original file line number Diff line number Diff line change
Expand Up @@ -102,6 +102,8 @@ Source the release environment helper to auto-compute versions, detect the relea
source ./setup-release-env.sh -B patch # or -B minor / -B major
```

> **Important:** Never pipe this `source` command (e.g. `source ... | cat`). Piping runs `source` in a subshell, which means the exported variables and function definitions (`nnf_cmd`, etc.) are lost to the calling shell. If you need to capture output, redirect to a file or run without the pipe.

This exports `$PREVIOUS_RELEASE`, `$NNF_RELEASE`, `$RELEASE_TYPE`, and `$RELEASE_REVIEWERS`, and defines helper functions `nnf_cmd`, `nnf_create_pr`, `nnf_add_reviewers`, and `nnf_gh_repo`. Confirm the printed summary with the user before proceeding.

List repos:
Expand Down Expand Up @@ -270,8 +272,6 @@ The `-i` flag displays image version changes inline. Use `-d` to display the ful

Check each repo for correct tag, release notes, and artifacts (`manifests.tar` + `manifests-kind.tar` on `nnf-deploy`).



---

### Relevant files
Expand Down
5 changes: 4 additions & 1 deletion tools/release-all/setup-release-env.sh
Original file line number Diff line number Diff line change
Expand Up @@ -78,9 +78,12 @@ fi
# Usage: nnf_cmd <phase> <repo>
nnf_cmd() {
local phase="$1" repo="$2"
local args=()
local args=() _rc
[[ "$repo" == "nnf_sos" ]] && args+=("-M")
./release-all.sh -B "$RELEASE_TYPE" -P "$phase" -R "$repo" "${args[@]}" 2>&1 | cat
# bash uses PIPESTATUS[0]; zsh uses pipestatus[1] (lowercase, 1-indexed)
_rc=${PIPESTATUS[0]:-${pipestatus[1]}}
return "${_rc:-0}"
}

# --- Helper: create-pr + capture PR number -----------------------------------
Expand Down
Loading