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

Provide require and filter only timeout hosts #31

Open
wilfriedroset opened this issue Apr 29, 2016 · 3 comments
Open

Provide require and filter only timeout hosts #31

wilfriedroset opened this issue Apr 29, 2016 · 3 comments
Labels

Comments

@wilfriedroset
Copy link

The require dependancy could use an option to filter timed out hosts.
This way all services can be run on responding host.

For example, we could use milkcheck to run several benchmark (one at a time).
With the current behaviour (require), the benchmarking will stop on all hosts if at least one host is not OK.
With a require on succes (rc=0), the benchmarking will stop on the host not ok. In this case we could still run the remaining benchmarck

@cedeyn
Copy link
Collaborator

cedeyn commented Jul 27, 2021

Hi Wilfried,
Can you confirm that using filter dependency is a good way to resolve this issue ?

---
services:
  timedout:
     desc: "check hosts are here"
     target: "vortex[1-10],good[1-10]"
     actions:
        'launch':
           cmd: echo Ready to launch benchmark

  bench:
     desc: "Launch Bench"
     target: "vortex[1-10],good[1-10]"
     filter: timedout
     actions:
         'launch':
           cmd: echo Launching Bench

@wilfriedroset
Copy link
Author

It has been a long time since I've played with milkcheck.
According to your sample and assuming that timedout is a reserved word which will be used to remove timedout node from the previous steps, then yes this could resolve the issue.

@cedeyn
Copy link
Collaborator

cedeyn commented Sep 3, 2021

Nop, timedout is the first declared service in the configuration.
In fact, the previous example should have a timeout option:

---
services:
  timedout:
     desc: "check hosts are here"
     target: "vortex[1-10],good[1-10]"
     timeout: 30
     actions:
        'launch':
           cmd: echo Ready to launch benchmark

  bench:
     desc: "Launch Bench"
     target: "vortex[1-10],good[1-10]"
     filter: timedout
     actions:
         'launch':
           cmd: echo Launching Benchbench:
     desc: "Launch Bench"
     target: "vortex[1-10],good[1-10]"
     filter: timedout
     actions:
         'launch':
           cmd: echo Launching Bench

The idea is to launch a first service that will check the connection with targeted nodes.
The second service bench will effectively launch the bench (thanks to the filter property).

@cedeyn cedeyn added the wontfix label Oct 12, 2021
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Projects
None yet
Development

No branches or pull requests

2 participants