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

Isolate sudo usage #1671

Merged
merged 65 commits into from Apr 30, 2024
Merged

Isolate sudo usage #1671

merged 65 commits into from Apr 30, 2024

Conversation

abejgonzalez
Copy link
Contributor

@abejgonzalez abejgonzalez commented Nov 17, 2023

Eventually, we want to make FireSim not depend on sudo, and if it does, then it should only do sudo operations during system setup (i.e. when installing FPGAs). This will isolate the spread of sudo throughout the codebase and instead focus it on a few functions. This will allow local setups to not depend on passwordless sudo (which generally isn't a good practice).

For non-AWS setups, there is now a "sysadmin" step where you install FireSim scripts to /usr/local/bin that are used by the manager. This PR does the following:

  • Fixes the CI so that we can run U250 CI simulations. Now checks single-core Rocket/BOOM and multi-core Rocket Linux boots.
  • Updates the CI to build more images and use new machines.
  • sudo is removed in as many places as possible (really only needed during AWS now)

Misc. TODO:

Related PRs / Issues

UI / API Impact

Verilog / AGFI Compatibility

Contributor Checklist

  • Is this PR's title suitable for inclusion in the changelog and have you added a changelog:<topic> label?
  • Did you add Scaladoc/docstring/doxygen to every public function/method?
  • Did you add at least one test demonstrating the PR?
  • Did you delete any extraneous prints/debugging code?
  • Did you state the UI / API impact?
  • Did you specify the Verilog / AGFI compatibility impact?
  • If applicable, did you regenerate and publicly share default AGFIs?
  • If applicable, did you apply the ci:fpga-deploy label?
  • If applicable, did you apply the Please Backport label?

Reviewer Checklist (only modified by reviewer)

Note: to run CI on PRs from forks, comment @Mergifyio copy main and manage the change from the new PR.

  • Is the title suitable for inclusion in the changelog and does the PR have a changelog:<topic> label?
  • Did you mark the proper release milestone?
  • Did you check whether all relevant Contributor checkboxes have been checked?

Add alveo u250 script to ci

run please

OOPS
@abejgonzalez
Copy link
Contributor Author

All simulations are now verified. On merge, I'll squash/rebase the PR.

Copy link
Contributor

@joonho3020 joonho3020 left a comment

Choose a reason for hiding this comment

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

Do you think we should we DRY out /usr/local/bin throughout the manager?
Otherwise LGTM!

@abejgonzalez
Copy link
Contributor Author

Do you think we should we DRY out /usr/local/bin throughout the manager? Otherwise LGTM!

Sure. I was just lazy and haven't done that.

@abejgonzalez
Copy link
Contributor Author

Ping @sagark

@abejgonzalez
Copy link
Contributor Author

abejgonzalez commented Apr 30, 2024

I've gotten an offline approval from @sagark on this PR. I will merge on CI passes on this.

@joonho3020
Copy link
Contributor

joonho3020 commented Apr 30, 2024

I've gotten an offline approval from @sagark on this PR. I will merge on CI passes on this.

Great stuff! Thanks for cleaning it up.

@abejgonzalez abejgonzalez merged commit e08207f into main Apr 30, 2024
12 checks passed
@abejgonzalez abejgonzalez deleted the sudo-once branch April 30, 2024 05:58
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
changelog:changed Put PR title in 'Changed' section of changelog ci:fpga-deploy
Projects
None yet
Development

Successfully merging this pull request may close these issues.

None yet

2 participants