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

Bench nomad exec #4852

Merged
merged 6 commits into from
Mar 14, 2023
Merged

Bench nomad exec #4852

merged 6 commits into from
Mar 14, 2023

Conversation

fmaste
Copy link
Contributor

@fmaste fmaste commented Jan 26, 2023

Exec task driver and standalone Nomad Server and Clients (no -dev mode)

  • Local/testing environment
    • Bye bye -dev mode, now both Nomad Servers and Clients are started independently
    • Can automate as many Nomad Clients as needed (wb backend pass nomad server|client start|stop NAME)
    • Optional stateful Nomad Agents instead of starting and stopping on every run
    • Only when using the Nomad exec Task Driver Clients are run as root
    • Create symlinks to every Task's stdout and stderr file for easier/live monitoring and debugging
  • Cloud deployments
    • Add a new mode called nomadexec that uses SRE's patched version of Nomad
    • As part of the switch-over to directly-executable derivations, the Nomad Job specification file is self contained. Every script and config file is included as a template stanza only leaving outside the genesis folder.
    • Created an ad-hoc "container-specs.json" file with GitHub references (towards being able to benchmark any cardano-node commit from any workbench version).
    • The workbench checks that the commit being tested is publicly available on GitHub
    • Fetch all Nomad (some dynamically) generated start.sh and config.json files for log and debugging purposes
  • Both local and cloud
    • Control and monitoring of Nomad Jobs was refactored in line with the important role it has
    • Removal of all locality assumptions
    • Removal of all 1-1 allocation ID-task name relation assumptions
  • Others
    • Fixed how wb backend calls backend specific subcommands

@fmaste fmaste force-pushed the bench-nomad-exec branch 3 times, most recently from a015319 to 8898923 Compare February 1, 2023 14:04
@fmaste fmaste force-pushed the bench-nomad-exec branch 2 times, most recently from 41f05c8 to 177b9ce Compare February 8, 2023 05:57
@fmaste fmaste force-pushed the bench-nomad-exec branch 13 times, most recently from 528fc5e to e9dfef8 Compare March 1, 2023 13:58
@fmaste fmaste force-pushed the bench-nomad-exec branch 3 times, most recently from a897d37 to 5230b79 Compare March 8, 2023 20:02
@fmaste fmaste marked this pull request as ready for review March 9, 2023 14:09
@fmaste fmaste requested review from a team, deepfire, mgmeier, dcoutts, Jimbo4350 and erikd as code owners March 9, 2023 14:09
@fmaste fmaste force-pushed the bench-nomad-exec branch from 2604801 to fd0a93d Compare March 13, 2023 13:11
Copy link
Contributor

@deepfire deepfire left a comment

Choose a reason for hiding this comment

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

@fmaste, just one comment/question.

Thank you! : -)

@fmaste
Copy link
Contributor Author

fmaste commented Mar 14, 2023

bors merge

iohk-bors bot added a commit that referenced this pull request Mar 14, 2023
Merge #4852

Verified

This commit was created on GitHub.com and signed with GitHub’s verified signature.
4852: Bench nomad exec r=fmaste a=fmaste

Exec task driver and standalone Nomad Server and Clients (no -dev mode)

- Local/testing environment
- - Bye bye `-dev` mode, now both Nomad Servers and Clients are started independently 
- - Can automate as many Nomad Clients as needed (`wb backend pass nomad server|client start|stop NAME`)
- - Optional stateful Nomad Agents instead of starting and stopping on every run
- - Only when using the Nomad `exec` Task Driver Clients are run as root
- - Create symlinks to every Task's `stdout` and `stderr` file for easier/live monitoring and debugging
- Cloud deployments
- - Add a new mode called `nomadexec` that uses SRE's patched version of Nomad
- - As part of the switch-over to directly-executable derivations, the Nomad Job specification file is self contained. Every script and config file is included as a template stanza only leaving outside the genesis folder.
- - Created an ad-hoc "container-specs.json" file with GitHub references (towards being able to benchmark any cardano-node commit from any workbench version).
- - The workbench checks that the commit being tested is publicly available on GitHub
- - Fetch all Nomad (some dynamically) generated `start.sh` and `config.json` files for log and debugging purposes
- Both local and cloud
- - Control and monitoring of Nomad Jobs was refactored in line with the important role it has
- - Removal of all locality assumptions
- - Removal of all 1-1 `allocation ID`-`task name` relation assumptions
- Others
- - Fixed how `wb backend` calls backend specific subcommands

Co-authored-by: Federico Mastellone <[email protected]>
@iohk-bors
Copy link
Contributor

iohk-bors bot commented Mar 14, 2023

This PR was included in a batch that successfully built, but then failed to merge into master. It will not be retried.

Additional information:

{"message":"Validation Failed","documentation_url":"https://docs.github.com/articles/about-protected-branches"}

@fmaste fmaste force-pushed the bench-nomad-exec branch from fd0a93d to 723e9ab Compare March 14, 2023 02:34
@fmaste
Copy link
Contributor Author

fmaste commented Mar 14, 2023

bors merge

iohk-bors bot added a commit that referenced this pull request Mar 14, 2023
4852: Bench nomad exec r=fmaste a=fmaste

Exec task driver and standalone Nomad Server and Clients (no -dev mode)

- Local/testing environment
- - Bye bye `-dev` mode, now both Nomad Servers and Clients are started independently 
- - Can automate as many Nomad Clients as needed (`wb backend pass nomad server|client start|stop NAME`)
- - Optional stateful Nomad Agents instead of starting and stopping on every run
- - Only when using the Nomad `exec` Task Driver Clients are run as root
- - Create symlinks to every Task's `stdout` and `stderr` file for easier/live monitoring and debugging
- Cloud deployments
- - Add a new mode called `nomadexec` that uses SRE's patched version of Nomad
- - As part of the switch-over to directly-executable derivations, the Nomad Job specification file is self contained. Every script and config file is included as a template stanza only leaving outside the genesis folder.
- - Created an ad-hoc "container-specs.json" file with GitHub references (towards being able to benchmark any cardano-node commit from any workbench version).
- - The workbench checks that the commit being tested is publicly available on GitHub
- - Fetch all Nomad (some dynamically) generated `start.sh` and `config.json` files for log and debugging purposes
- Both local and cloud
- - Control and monitoring of Nomad Jobs was refactored in line with the important role it has
- - Removal of all locality assumptions
- - Removal of all 1-1 `allocation ID`-`task name` relation assumptions
- Others
- - Fixed how `wb backend` calls backend specific subcommands

Co-authored-by: Federico Mastellone <[email protected]>
@iohk-bors
Copy link
Contributor

iohk-bors bot commented Mar 14, 2023

This PR was included in a batch that successfully built, but then failed to merge into master. It will not be retried.

Additional information:

{"message":"Validation Failed","documentation_url":"https://docs.github.com/articles/about-protected-branches"}

@fmaste fmaste force-pushed the bench-nomad-exec branch from 723e9ab to 6dc3f9e Compare March 14, 2023 12:46
@fmaste
Copy link
Contributor Author

fmaste commented Mar 14, 2023

bors merge

iohk-bors bot added a commit that referenced this pull request Mar 14, 2023
4852: Bench nomad exec r=fmaste a=fmaste

Exec task driver and standalone Nomad Server and Clients (no -dev mode)

- Local/testing environment
- - Bye bye `-dev` mode, now both Nomad Servers and Clients are started independently 
- - Can automate as many Nomad Clients as needed (`wb backend pass nomad server|client start|stop NAME`)
- - Optional stateful Nomad Agents instead of starting and stopping on every run
- - Only when using the Nomad `exec` Task Driver Clients are run as root
- - Create symlinks to every Task's `stdout` and `stderr` file for easier/live monitoring and debugging
- Cloud deployments
- - Add a new mode called `nomadexec` that uses SRE's patched version of Nomad
- - As part of the switch-over to directly-executable derivations, the Nomad Job specification file is self contained. Every script and config file is included as a template stanza only leaving outside the genesis folder.
- - Created an ad-hoc "container-specs.json" file with GitHub references (towards being able to benchmark any cardano-node commit from any workbench version).
- - The workbench checks that the commit being tested is publicly available on GitHub
- - Fetch all Nomad (some dynamically) generated `start.sh` and `config.json` files for log and debugging purposes
- Both local and cloud
- - Control and monitoring of Nomad Jobs was refactored in line with the important role it has
- - Removal of all locality assumptions
- - Removal of all 1-1 `allocation ID`-`task name` relation assumptions
- Others
- - Fixed how `wb backend` calls backend specific subcommands

Co-authored-by: Federico Mastellone <[email protected]>
@iohk-bors
Copy link
Contributor

iohk-bors bot commented Mar 14, 2023

This PR was included in a batch that successfully built, but then failed to merge into master. It will not be retried.

Additional information:

{"message":"Required status check \"build-complete\" is expected.","documentation_url":"https://docs.github.com/articles/about-protected-branches"}

@fmaste fmaste enabled auto-merge March 14, 2023 12:53
@fmaste fmaste disabled auto-merge March 14, 2023 13:05
@fmaste fmaste enabled auto-merge March 14, 2023 13:06
@fmaste fmaste added this pull request to the merge queue Mar 14, 2023
@github-merge-queue github-merge-queue bot removed this pull request from the merge queue due to failed status checks Mar 14, 2023
@fmaste fmaste added this pull request to the merge queue Mar 14, 2023
Merged via the queue into master with commit a16c198 Mar 14, 2023
@iohk-bors iohk-bors bot deleted the bench-nomad-exec branch March 14, 2023 14:07
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.

None yet

2 participants