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

Support for multiple execution runtimes #54

Open
vladimirvivien opened this issue Mar 26, 2020 · 0 comments
Open

Support for multiple execution runtimes #54

vladimirvivien opened this issue Mar 26, 2020 · 0 comments
Assignees
Labels
enhancement New feature or request

Comments

@vladimirvivien
Copy link
Contributor

vladimirvivien commented Mar 26, 2020

Currently, crash-diagnostics uses a single execution runtime that assumes all commands are executed remotely using ssh or scp. While this assumption is easy to implement, it also makes the tool inflexible.

This issue is for the support of different executor runtimes. This would allow the tool to support commands with no prior assumptions where/how the command will be executed.

Runtimes

For instance, the followings shows several commands each using different runtimes.

FROM hosts:"host0.local host1.local"
CAPTURE cmd:"command -param0 -param1" runtime:"ssh"
COPY path:"/var/logs/log.txt" runtime:"http"
ENV JUMP="12.34.56.78"
RUN cmd:"ssh -i $HOME/.ssh/key_rsa -J user@$JUMP user@$FROM_HOST uptime" runtime:"shell" scope:"all"

runtime:ssh

  • SSH protocol will be used for remote execution
  • Each machine in FROM will be contacted on specified port (22 default)

runtime:http

  • Assumes HTTP Get will be used to retrieve resource
  • Each machine in FROM will be contacted on specified port (80 default)

runtime:shell

  • A local shell is used to execute the command as it appears
  • The local command will be executed for each machine in FROM
  • Use scope to control how many time the command is executed

See #55 for command scopes

@vladimirvivien vladimirvivien self-assigned this Mar 26, 2020
@vladimirvivien vladimirvivien added the enhancement New feature or request label Mar 26, 2020
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
enhancement New feature or request
Projects
None yet
Development

No branches or pull requests

1 participant