Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

fix: Set default value to output parameters if suspend node timeout. Fixes #12230 #12960

Merged
merged 1 commit into from
Oct 31, 2024

Conversation

jswxstw
Copy link
Member

@jswxstw jswxstw commented Apr 22, 2024

Fixes #12230

Motivation

Node is marked to Succeeded when suspension is expired, but the value of node outputs parameters was not filled up with ValueFrom.Default if ValueFrom.Supplied != nil.

Modifications

Set default value to output parameters if suspend node timeout or mark the suspend node to error if raw output parameter has not been set and does not have a default value.

Verification

local test and add e2e test

@jswxstw jswxstw marked this pull request as draft April 22, 2024 03:53
@jswxstw jswxstw marked this pull request as ready for review April 22, 2024 05:02
test/e2e/suspend_test.go Outdated Show resolved Hide resolved
@tczhao
Copy link
Member

tczhao commented Apr 23, 2024

The test-corefunctional, minimal was succeed before the last commit 2317852,
The last commit only alters the functional test, the test-corefunctional, minimal failure is not an issue

@terrytangyuan terrytangyuan merged commit 3df05eb into argoproj:main Oct 31, 2024
28 checks passed
@tooptoop4
Copy link
Contributor

seems all lint on new prs are failing:

level=info msg="Execution took 3m43.470673472s"
			assert.Equal(t, 1, len(status.Outputs.Parameters))
			^
Error: test/e2e/suspend_test.go:124:4: len: use assert.Len (testifylint)
			assert.Equal(t, 1, len(status.Inputs.Parameters))
			^
make: *** [Makefile:466: lint] Error 1
Error: Process completed with exit code 2.

MasonM added a commit to MasonM/argo-workflows that referenced this pull request Nov 2, 2024
Every PR has been failing the `make lint` checked with the following
error since argoproj#12960 was merged:
```
 			assert.Equal(t, 1, len(status.Outputs.Parameters))
			^
Error: test/e2e/suspend_test.go:124:4: len: use assert.Len (testifylint)
			assert.Equal(t, 1, len(status.Inputs.Parameters))
			^
make: *** [Makefile:466: lint] Error 1
```

This is happening due to a conflict between that PR and
argoproj#13467. The latter PR was
merged on August 14th, but the latest CI run for the former
(https://github.com/argoproj/argo-workflows/actions/runs/9191558853/job/25278229097)
was on May 22nd.

Signed-off-by: Mason Malone <[email protected]>
@MasonM
Copy link
Contributor

MasonM commented Nov 2, 2024

@tooptoop4 I entered a PR to fix this: #13853

Joibel pushed a commit that referenced this pull request Nov 22, 2024
@kush-work
Copy link

@terrytangyuan @jswxstw Is there any chance to release a patch with the above fix?

@jswxstw
Copy link
Member Author

jswxstw commented Dec 6, 2024

@terrytangyuan @jswxstw Is there any chance to release a patch with the above fix?

@kush-work I think this is a reasonable request, but I don't have the permission to do that. @Joibel Could you please take a look at this?

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.

Supplied valueFrom ignores defaults after duration elapsed
6 participants