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

Adding retry functionality when parallel is set to True #61631

Merged
merged 139 commits into from
May 26, 2022

Conversation

garethgreenaway
Copy link
Contributor

@garethgreenaway garethgreenaway commented Feb 11, 2022

What does this PR do?

Making the retry state system feature available when parallel is set to True.

What issues does this PR fix or reference?

Fixes: #61630 #61439

Previous Behavior

When the retry options are set in a state and parallel is set to True, the job is rerun regardless of the original state results and the subsequent runs are not done in parallel.

New Behavior

Retry functionality is properly honored with parallel: True

Merge requirements satisfied?

[NOTICE] Bug fixes or features added to Salt require tests.

Commits signed with GPG?

Yes

Please review Salt's Contributing Guide for best practices.

See GitHub's page on GPG signing for more information about signing commits with GPG.

@garethgreenaway garethgreenaway requested a review from a team as a code owner February 11, 2022 17:15
@garethgreenaway garethgreenaway requested review from twangboy and Ch3LL and removed request for a team February 11, 2022 17:15
Copy link
Contributor

@Ch3LL Ch3LL left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

just a question

salt/state.py Outdated Show resolved Hide resolved
Ch3LL
Ch3LL previously approved these changes Feb 14, 2022
@Ch3LL Ch3LL added the Phosphorus v3005.0 Release code name and version label Feb 14, 2022
@Ch3LL
Copy link
Contributor

Ch3LL commented Mar 7, 2022

Looks like the windows test failures are related to this PR

Ch3LL
Ch3LL previously approved these changes Mar 9, 2022
ITJamie and others added 19 commits May 23, 2022 14:40
Co-authored-by: Pedro Algarvio <pedro@algarvio.me>
Co-authored-by: Pedro Algarvio <pedro@algarvio.me>
Co-authored-by: Pedro Algarvio <pedro@algarvio.me>
Co-authored-by: Pedro Algarvio <pedro@algarvio.me>
Co-authored-by: Pedro Algarvio <pedro@algarvio.me>
- Adds file.version that will get just the version
- Adds file.version_details to get additional information
- Adds tests
- Adds changelog

@amalaguti originally submitted a PR for this: saltstack#59770, but he has
since deleted his branch. Recognizing his contribution here.
These tests cover the entire state, but are only concerned with the
ret["result"] of the outputs. It would be a good idea to test other
outputs as well - these tests could be modified to include assertions
about the other parts of ret. (Obviously they would need to be slightly
renamed. Maybe to `..._return_expected_ret`
@github-actions
Copy link

Hi! I'm your friendly PR bot!

You might be wondering what I'm doing commenting here on your PR.

Yes, as a matter of fact, I am...

I'm just here to help us improve the documentation. I can't respond to
questions or anything, but what I can do, I do well!

Okay... so what do you do?

I detect modules that are missing docstrings or "CLI Example" on existing docstrings!
When I was created we had a lot of these. The documentation for these
modules need some love and attention to make Salt better for our users.

So what does that have to do with my PR?

I noticed that in this PR there are some files changed that have some of these
issues. So I'm leaving this comment to let you know your options.

Okay, what are they?

Well, my favorite, is that since you were making changes here I'm hoping that
you would be the most familiar with this module and be able to add some other
examples or fix any of the reported issues.

If I can, then what?

Well, you can either add them to this PR or add them to another PR. Either way is fine!

Well... what if I can't, or don't want to?

That's also fine! We appreciate all contributions to the Salt Project. If you
can't add those other examples, either because you're too busy, or unfamiliar,
or you just aren't interested, we still appreciate the contributions that
you've made already.

Whatever approach you decide to take, just drop a comment here letting us know!

Detected Issues (click me)
Check Known Missing Docstrings...........................................Failed
- hook id: invoke
- duration: 1.35s
- exit code: 1

/home/runner/.cache/pre-commit/repoyjfv85dg/py_env-python3/lib/python3.9/site-packages/_distutils_hack/init.py:30: UserWarning: Setuptools is replacing distutils.
warnings.warn("Setuptools is replacing distutils.")
The function 'assumed_creds' on 'salt/utils/aws.py' does not have a docstring
The function 'fqdns' on 'salt/modules/network.py' was previously known to not have a CLI Example, which is no longer the case. Please remove it from 'MISSING_EXAMPLES'. in 'tasks/docstrings.py'
The function 'expand_repo_def' on 'salt/modules/aptpkg.py' does not have a 'CLI Example:' in it's docstring
Found 1 warnings
Found 2 errors


Thanks again!

@Ch3LL
Copy link
Contributor

Ch3LL commented May 24, 2022

…ing_platform. Bump up duration for test_retry_option_success_parallel to 30 seconds to account for test running on Mac OS.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Phosphorus v3005.0 Release code name and version
Projects
None yet
Development

Successfully merging this pull request may close these issues.

[BUG] retry state option unavailble when parallel is True