firesim/.github/workflows/firesim-publish-scala-doc.yml

63 lines
1.8 KiB
YAML
Raw Normal View History

Port to Python3 + Switch to GH-A CI (#878) * First pass at porting to python3 * Fix import errors | Setup user argcomplete * Update awstools CLI with user data file | Bump CI to use it * Wait until launch is complete * Add userdata as string | Use sudo for machine-launch-script * Remove execute permissions on machine-launch-script * Better match on machine-launch-script complete * Revert python-devel removal * Use python3 for pytests * Update more python3 items * Remove extra shebang * Port docs to python3 and add to CI * Add ISCA experiments to CI build check * Use yum not apt-get * Add make to doc section * Bump multilate-loadgen for sysroot fix * For BW test build don't use shebang * Fix docs Makefile options * Fix more doc warnings * Add first set of regression tests * Fix raw_input * Regression bump | Run workload fix * Add functools to topology * Fix linux poweroff test (nic still has issues) * Update regression scripts * Ignore machine-launch-script.sh in regression area * Fix map python3 issues * Get rid of shebangs * Fix more regressions * Print machine-launch.log on fail | More clarification on user_data * Transfer to CI some shorter regressions * Add a manual approval to fpga based tests * Fix indentation in config.yml * Fix test symlink * Use spot for CI manager instance | Try to use python3 for aws CI container | Version all pip packages * Make run-ini-api-tests an executable * Fix CI terminaterunfarm arg * Add firesim.pem file to manager * Bump python in CI instance * Bump pip in CI container * Remove pip sudo in CI container * Fix launch script pip version equals * Ini converted into strings * Properly pass test_dir to opts in CI * First pass at GH-A * Round 2 CI fixes * Try changes * Remove CircleCI | Switch to fancy GH-A * Rename self-host setup script * Update chmod * Use - instead of _ for env. vars * Rename some defs | Remove extra imports * Small comment updates * Forgot to import in ini-api tests | Small comment on Fabric timeouts * Add sys to linux poweroff * Update linux timeout, fix small imports * Update comment * Fix-up workflow-monitor.py * Avoid excessive logging in run-linux | Terminate spot instances after max-runtime * Add more workflow-monitor states | Add pty=False to running workloads * Update CI documentation | Add CI badge [ci skip] * Don't use spot instances * Update CI readme * Determine runner version from remote repo and check for runner setup * Address PR comments * Update CI_README location of where to find IPs | Forgot ret_code * Only run CI on prs/pushes to dev/main/master * Fix terminate_workflow_instances in init-manager.py * Cleanup FireSim repo cloning | Only run CI on PRs (since its runs on merge commit)
2022-01-21 03:03:37 +08:00
name: firesim-publish-scala-doc
on:
# On pushes to these branches / tags publish the scala doc to GH pages.
Port to Python3 + Switch to GH-A CI (#878) * First pass at porting to python3 * Fix import errors | Setup user argcomplete * Update awstools CLI with user data file | Bump CI to use it * Wait until launch is complete * Add userdata as string | Use sudo for machine-launch-script * Remove execute permissions on machine-launch-script * Better match on machine-launch-script complete * Revert python-devel removal * Use python3 for pytests * Update more python3 items * Remove extra shebang * Port docs to python3 and add to CI * Add ISCA experiments to CI build check * Use yum not apt-get * Add make to doc section * Bump multilate-loadgen for sysroot fix * For BW test build don't use shebang * Fix docs Makefile options * Fix more doc warnings * Add first set of regression tests * Fix raw_input * Regression bump | Run workload fix * Add functools to topology * Fix linux poweroff test (nic still has issues) * Update regression scripts * Ignore machine-launch-script.sh in regression area * Fix map python3 issues * Get rid of shebangs * Fix more regressions * Print machine-launch.log on fail | More clarification on user_data * Transfer to CI some shorter regressions * Add a manual approval to fpga based tests * Fix indentation in config.yml * Fix test symlink * Use spot for CI manager instance | Try to use python3 for aws CI container | Version all pip packages * Make run-ini-api-tests an executable * Fix CI terminaterunfarm arg * Add firesim.pem file to manager * Bump python in CI instance * Bump pip in CI container * Remove pip sudo in CI container * Fix launch script pip version equals * Ini converted into strings * Properly pass test_dir to opts in CI * First pass at GH-A * Round 2 CI fixes * Try changes * Remove CircleCI | Switch to fancy GH-A * Rename self-host setup script * Update chmod * Use - instead of _ for env. vars * Rename some defs | Remove extra imports * Small comment updates * Forgot to import in ini-api tests | Small comment on Fabric timeouts * Add sys to linux poweroff * Update linux timeout, fix small imports * Update comment * Fix-up workflow-monitor.py * Avoid excessive logging in run-linux | Terminate spot instances after max-runtime * Add more workflow-monitor states | Add pty=False to running workloads * Update CI documentation | Add CI badge [ci skip] * Don't use spot instances * Update CI readme * Determine runner version from remote repo and check for runner setup * Address PR comments * Update CI_README location of where to find IPs | Forgot ret_code * Only run CI on prs/pushes to dev/main/master * Fix terminate_workflow_instances in init-manager.py * Cleanup FireSim repo cloning | Only run CI on PRs (since its runs on merge commit)
2022-01-21 03:03:37 +08:00
push:
branches:
2022-02-15 09:43:18 +08:00
- main
2022-08-31 09:16:33 +08:00
- stable
Port to Python3 + Switch to GH-A CI (#878) * First pass at porting to python3 * Fix import errors | Setup user argcomplete * Update awstools CLI with user data file | Bump CI to use it * Wait until launch is complete * Add userdata as string | Use sudo for machine-launch-script * Remove execute permissions on machine-launch-script * Better match on machine-launch-script complete * Revert python-devel removal * Use python3 for pytests * Update more python3 items * Remove extra shebang * Port docs to python3 and add to CI * Add ISCA experiments to CI build check * Use yum not apt-get * Add make to doc section * Bump multilate-loadgen for sysroot fix * For BW test build don't use shebang * Fix docs Makefile options * Fix more doc warnings * Add first set of regression tests * Fix raw_input * Regression bump | Run workload fix * Add functools to topology * Fix linux poweroff test (nic still has issues) * Update regression scripts * Ignore machine-launch-script.sh in regression area * Fix map python3 issues * Get rid of shebangs * Fix more regressions * Print machine-launch.log on fail | More clarification on user_data * Transfer to CI some shorter regressions * Add a manual approval to fpga based tests * Fix indentation in config.yml * Fix test symlink * Use spot for CI manager instance | Try to use python3 for aws CI container | Version all pip packages * Make run-ini-api-tests an executable * Fix CI terminaterunfarm arg * Add firesim.pem file to manager * Bump python in CI instance * Bump pip in CI container * Remove pip sudo in CI container * Fix launch script pip version equals * Ini converted into strings * Properly pass test_dir to opts in CI * First pass at GH-A * Round 2 CI fixes * Try changes * Remove CircleCI | Switch to fancy GH-A * Rename self-host setup script * Update chmod * Use - instead of _ for env. vars * Rename some defs | Remove extra imports * Small comment updates * Forgot to import in ini-api tests | Small comment on Fabric timeouts * Add sys to linux poweroff * Update linux timeout, fix small imports * Update comment * Fix-up workflow-monitor.py * Avoid excessive logging in run-linux | Terminate spot instances after max-runtime * Add more workflow-monitor states | Add pty=False to running workloads * Update CI documentation | Add CI badge [ci skip] * Don't use spot instances * Update CI readme * Determine runner version from remote repo and check for runner setup * Address PR comments * Update CI_README location of where to find IPs | Forgot ret_code * Only run CI on prs/pushes to dev/main/master * Fix terminate_workflow_instances in init-manager.py * Cleanup FireSim repo cloning | Only run CI on PRs (since its runs on merge commit)
2022-01-21 03:03:37 +08:00
tags:
- '[0-9]*.[0-9]*.[0-9]*'
# On PRs to stable or main, check that the docs build correctly without publishing
pull_request:
branches:
- main
2022-08-31 09:16:33 +08:00
- stable
Port to Python3 + Switch to GH-A CI (#878) * First pass at porting to python3 * Fix import errors | Setup user argcomplete * Update awstools CLI with user data file | Bump CI to use it * Wait until launch is complete * Add userdata as string | Use sudo for machine-launch-script * Remove execute permissions on machine-launch-script * Better match on machine-launch-script complete * Revert python-devel removal * Use python3 for pytests * Update more python3 items * Remove extra shebang * Port docs to python3 and add to CI * Add ISCA experiments to CI build check * Use yum not apt-get * Add make to doc section * Bump multilate-loadgen for sysroot fix * For BW test build don't use shebang * Fix docs Makefile options * Fix more doc warnings * Add first set of regression tests * Fix raw_input * Regression bump | Run workload fix * Add functools to topology * Fix linux poweroff test (nic still has issues) * Update regression scripts * Ignore machine-launch-script.sh in regression area * Fix map python3 issues * Get rid of shebangs * Fix more regressions * Print machine-launch.log on fail | More clarification on user_data * Transfer to CI some shorter regressions * Add a manual approval to fpga based tests * Fix indentation in config.yml * Fix test symlink * Use spot for CI manager instance | Try to use python3 for aws CI container | Version all pip packages * Make run-ini-api-tests an executable * Fix CI terminaterunfarm arg * Add firesim.pem file to manager * Bump python in CI instance * Bump pip in CI container * Remove pip sudo in CI container * Fix launch script pip version equals * Ini converted into strings * Properly pass test_dir to opts in CI * First pass at GH-A * Round 2 CI fixes * Try changes * Remove CircleCI | Switch to fancy GH-A * Rename self-host setup script * Update chmod * Use - instead of _ for env. vars * Rename some defs | Remove extra imports * Small comment updates * Forgot to import in ini-api tests | Small comment on Fabric timeouts * Add sys to linux poweroff * Update linux timeout, fix small imports * Update comment * Fix-up workflow-monitor.py * Avoid excessive logging in run-linux | Terminate spot instances after max-runtime * Add more workflow-monitor states | Add pty=False to running workloads * Update CI documentation | Add CI badge [ci skip] * Don't use spot instances * Update CI readme * Determine runner version from remote repo and check for runner setup * Address PR comments * Update CI_README location of where to find IPs | Forgot ret_code * Only run CI on prs/pushes to dev/main/master * Fix terminate_workflow_instances in init-manager.py * Cleanup FireSim repo cloning | Only run CI on PRs (since its runs on merge commit)
2022-01-21 03:03:37 +08:00
defaults:
run:
shell: bash -leo pipefail {0}
Port to Python3 + Switch to GH-A CI (#878) * First pass at porting to python3 * Fix import errors | Setup user argcomplete * Update awstools CLI with user data file | Bump CI to use it * Wait until launch is complete * Add userdata as string | Use sudo for machine-launch-script * Remove execute permissions on machine-launch-script * Better match on machine-launch-script complete * Revert python-devel removal * Use python3 for pytests * Update more python3 items * Remove extra shebang * Port docs to python3 and add to CI * Add ISCA experiments to CI build check * Use yum not apt-get * Add make to doc section * Bump multilate-loadgen for sysroot fix * For BW test build don't use shebang * Fix docs Makefile options * Fix more doc warnings * Add first set of regression tests * Fix raw_input * Regression bump | Run workload fix * Add functools to topology * Fix linux poweroff test (nic still has issues) * Update regression scripts * Ignore machine-launch-script.sh in regression area * Fix map python3 issues * Get rid of shebangs * Fix more regressions * Print machine-launch.log on fail | More clarification on user_data * Transfer to CI some shorter regressions * Add a manual approval to fpga based tests * Fix indentation in config.yml * Fix test symlink * Use spot for CI manager instance | Try to use python3 for aws CI container | Version all pip packages * Make run-ini-api-tests an executable * Fix CI terminaterunfarm arg * Add firesim.pem file to manager * Bump python in CI instance * Bump pip in CI container * Remove pip sudo in CI container * Fix launch script pip version equals * Ini converted into strings * Properly pass test_dir to opts in CI * First pass at GH-A * Round 2 CI fixes * Try changes * Remove CircleCI | Switch to fancy GH-A * Rename self-host setup script * Update chmod * Use - instead of _ for env. vars * Rename some defs | Remove extra imports * Small comment updates * Forgot to import in ini-api tests | Small comment on Fabric timeouts * Add sys to linux poweroff * Update linux timeout, fix small imports * Update comment * Fix-up workflow-monitor.py * Avoid excessive logging in run-linux | Terminate spot instances after max-runtime * Add more workflow-monitor states | Add pty=False to running workloads * Update CI documentation | Add CI badge [ci skip] * Don't use spot instances * Update CI readme * Determine runner version from remote repo and check for runner setup * Address PR comments * Update CI_README location of where to find IPs | Forgot ret_code * Only run CI on prs/pushes to dev/main/master * Fix terminate_workflow_instances in init-manager.py * Cleanup FireSim repo cloning | Only run CI on PRs (since its runs on merge commit)
2022-01-21 03:03:37 +08:00
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
2023-08-02 12:12:49 +08:00
AWS_ACCESS_KEY_ID: ${{ secrets.AWS_ACCESS_KEY_ID_08012023 }}
AWS_SECRET_ACCESS_KEY: ${{ secrets.AWS_SECRET_ACCESS_KEY_08012023 }}
AWS_DEFAULT_REGION: ${{ secrets.AWS_DEFAULT_REGION_08012023 }}
FIRESIM_PEM: ${{ secrets.FIRESIM_PEM_08012023 }}
2023-06-13 12:50:53 +08:00
FIRESIM-REPO-DEP-KEY: ${{ secrets.BARTENDER_PRIVATE_SSH_KEY }}
MANAGER_FIRESIM_LOCATION: "~/firesim"
Port to Python3 + Switch to GH-A CI (#878) * First pass at porting to python3 * Fix import errors | Setup user argcomplete * Update awstools CLI with user data file | Bump CI to use it * Wait until launch is complete * Add userdata as string | Use sudo for machine-launch-script * Remove execute permissions on machine-launch-script * Better match on machine-launch-script complete * Revert python-devel removal * Use python3 for pytests * Update more python3 items * Remove extra shebang * Port docs to python3 and add to CI * Add ISCA experiments to CI build check * Use yum not apt-get * Add make to doc section * Bump multilate-loadgen for sysroot fix * For BW test build don't use shebang * Fix docs Makefile options * Fix more doc warnings * Add first set of regression tests * Fix raw_input * Regression bump | Run workload fix * Add functools to topology * Fix linux poweroff test (nic still has issues) * Update regression scripts * Ignore machine-launch-script.sh in regression area * Fix map python3 issues * Get rid of shebangs * Fix more regressions * Print machine-launch.log on fail | More clarification on user_data * Transfer to CI some shorter regressions * Add a manual approval to fpga based tests * Fix indentation in config.yml * Fix test symlink * Use spot for CI manager instance | Try to use python3 for aws CI container | Version all pip packages * Make run-ini-api-tests an executable * Fix CI terminaterunfarm arg * Add firesim.pem file to manager * Bump python in CI instance * Bump pip in CI container * Remove pip sudo in CI container * Fix launch script pip version equals * Ini converted into strings * Properly pass test_dir to opts in CI * First pass at GH-A * Round 2 CI fixes * Try changes * Remove CircleCI | Switch to fancy GH-A * Rename self-host setup script * Update chmod * Use - instead of _ for env. vars * Rename some defs | Remove extra imports * Small comment updates * Forgot to import in ini-api tests | Small comment on Fabric timeouts * Add sys to linux poweroff * Update linux timeout, fix small imports * Update comment * Fix-up workflow-monitor.py * Avoid excessive logging in run-linux | Terminate spot instances after max-runtime * Add more workflow-monitor states | Add pty=False to running workloads * Update CI documentation | Add CI badge [ci skip] * Don't use spot instances * Update CI readme * Determine runner version from remote repo and check for runner setup * Address PR comments * Update CI_README location of where to find IPs | Forgot ret_code * Only run CI on prs/pushes to dev/main/master * Fix terminate_workflow_instances in init-manager.py * Cleanup FireSim repo cloning | Only run CI on PRs (since its runs on merge commit)
2022-01-21 03:03:37 +08:00
LANG: "en_US.UTF-8" # required by SBT when it sees boost directories
LANGUAGE: "en_US:en"
LC_ALL: "en_US.UTF-8"
jobs:
change-filters:
name: filter-jobs-on-changes
2022-10-16 08:19:14 +08:00
runs-on: ubuntu-20.04
# Queried by downstream jobs to determine if they should run.
outputs:
needs-scala-doc: ${{ steps.filter.outputs.scala-docs }}
steps:
2022-10-16 08:22:59 +08:00
- uses: actions/checkout@v3
- uses: dorny/paths-filter@v2
id: filter
with:
filters: |
scala-docs:
- '**/build.sbt'
- '**/*.scala'
Port to Python3 + Switch to GH-A CI (#878) * First pass at porting to python3 * Fix import errors | Setup user argcomplete * Update awstools CLI with user data file | Bump CI to use it * Wait until launch is complete * Add userdata as string | Use sudo for machine-launch-script * Remove execute permissions on machine-launch-script * Better match on machine-launch-script complete * Revert python-devel removal * Use python3 for pytests * Update more python3 items * Remove extra shebang * Port docs to python3 and add to CI * Add ISCA experiments to CI build check * Use yum not apt-get * Add make to doc section * Bump multilate-loadgen for sysroot fix * For BW test build don't use shebang * Fix docs Makefile options * Fix more doc warnings * Add first set of regression tests * Fix raw_input * Regression bump | Run workload fix * Add functools to topology * Fix linux poweroff test (nic still has issues) * Update regression scripts * Ignore machine-launch-script.sh in regression area * Fix map python3 issues * Get rid of shebangs * Fix more regressions * Print machine-launch.log on fail | More clarification on user_data * Transfer to CI some shorter regressions * Add a manual approval to fpga based tests * Fix indentation in config.yml * Fix test symlink * Use spot for CI manager instance | Try to use python3 for aws CI container | Version all pip packages * Make run-ini-api-tests an executable * Fix CI terminaterunfarm arg * Add firesim.pem file to manager * Bump python in CI instance * Bump pip in CI container * Remove pip sudo in CI container * Fix launch script pip version equals * Ini converted into strings * Properly pass test_dir to opts in CI * First pass at GH-A * Round 2 CI fixes * Try changes * Remove CircleCI | Switch to fancy GH-A * Rename self-host setup script * Update chmod * Use - instead of _ for env. vars * Rename some defs | Remove extra imports * Small comment updates * Forgot to import in ini-api tests | Small comment on Fabric timeouts * Add sys to linux poweroff * Update linux timeout, fix small imports * Update comment * Fix-up workflow-monitor.py * Avoid excessive logging in run-linux | Terminate spot instances after max-runtime * Add more workflow-monitor states | Add pty=False to running workloads * Update CI documentation | Add CI badge [ci skip] * Don't use spot instances * Update CI readme * Determine runner version from remote repo and check for runner setup * Address PR comments * Update CI_README location of where to find IPs | Forgot ret_code * Only run CI on prs/pushes to dev/main/master * Fix terminate_workflow_instances in init-manager.py * Cleanup FireSim repo cloning | Only run CI on PRs (since its runs on merge commit)
2022-01-21 03:03:37 +08:00
publish-scala-doc:
name: publish-scala-doc
needs: change-filters
if: needs.change-filters.outputs.needs-scala-doc == 'true'
2022-10-16 08:19:14 +08:00
runs-on: ubuntu-20.04
Port to Python3 + Switch to GH-A CI (#878) * First pass at porting to python3 * Fix import errors | Setup user argcomplete * Update awstools CLI with user data file | Bump CI to use it * Wait until launch is complete * Add userdata as string | Use sudo for machine-launch-script * Remove execute permissions on machine-launch-script * Better match on machine-launch-script complete * Revert python-devel removal * Use python3 for pytests * Update more python3 items * Remove extra shebang * Port docs to python3 and add to CI * Add ISCA experiments to CI build check * Use yum not apt-get * Add make to doc section * Bump multilate-loadgen for sysroot fix * For BW test build don't use shebang * Fix docs Makefile options * Fix more doc warnings * Add first set of regression tests * Fix raw_input * Regression bump | Run workload fix * Add functools to topology * Fix linux poweroff test (nic still has issues) * Update regression scripts * Ignore machine-launch-script.sh in regression area * Fix map python3 issues * Get rid of shebangs * Fix more regressions * Print machine-launch.log on fail | More clarification on user_data * Transfer to CI some shorter regressions * Add a manual approval to fpga based tests * Fix indentation in config.yml * Fix test symlink * Use spot for CI manager instance | Try to use python3 for aws CI container | Version all pip packages * Make run-ini-api-tests an executable * Fix CI terminaterunfarm arg * Add firesim.pem file to manager * Bump python in CI instance * Bump pip in CI container * Remove pip sudo in CI container * Fix launch script pip version equals * Ini converted into strings * Properly pass test_dir to opts in CI * First pass at GH-A * Round 2 CI fixes * Try changes * Remove CircleCI | Switch to fancy GH-A * Rename self-host setup script * Update chmod * Use - instead of _ for env. vars * Rename some defs | Remove extra imports * Small comment updates * Forgot to import in ini-api tests | Small comment on Fabric timeouts * Add sys to linux poweroff * Update linux timeout, fix small imports * Update comment * Fix-up workflow-monitor.py * Avoid excessive logging in run-linux | Terminate spot instances after max-runtime * Add more workflow-monitor states | Add pty=False to running workloads * Update CI documentation | Add CI badge [ci skip] * Don't use spot instances * Update CI readme * Determine runner version from remote repo and check for runner setup * Address PR comments * Update CI_README location of where to find IPs | Forgot ret_code * Only run CI on prs/pushes to dev/main/master * Fix terminate_workflow_instances in init-manager.py * Cleanup FireSim repo cloning | Only run CI on PRs (since its runs on merge commit)
2022-01-21 03:03:37 +08:00
steps:
2022-10-16 08:22:59 +08:00
- uses: actions/checkout@v3
Port to Python3 + Switch to GH-A CI (#878) * First pass at porting to python3 * Fix import errors | Setup user argcomplete * Update awstools CLI with user data file | Bump CI to use it * Wait until launch is complete * Add userdata as string | Use sudo for machine-launch-script * Remove execute permissions on machine-launch-script * Better match on machine-launch-script complete * Revert python-devel removal * Use python3 for pytests * Update more python3 items * Remove extra shebang * Port docs to python3 and add to CI * Add ISCA experiments to CI build check * Use yum not apt-get * Add make to doc section * Bump multilate-loadgen for sysroot fix * For BW test build don't use shebang * Fix docs Makefile options * Fix more doc warnings * Add first set of regression tests * Fix raw_input * Regression bump | Run workload fix * Add functools to topology * Fix linux poweroff test (nic still has issues) * Update regression scripts * Ignore machine-launch-script.sh in regression area * Fix map python3 issues * Get rid of shebangs * Fix more regressions * Print machine-launch.log on fail | More clarification on user_data * Transfer to CI some shorter regressions * Add a manual approval to fpga based tests * Fix indentation in config.yml * Fix test symlink * Use spot for CI manager instance | Try to use python3 for aws CI container | Version all pip packages * Make run-ini-api-tests an executable * Fix CI terminaterunfarm arg * Add firesim.pem file to manager * Bump python in CI instance * Bump pip in CI container * Remove pip sudo in CI container * Fix launch script pip version equals * Ini converted into strings * Properly pass test_dir to opts in CI * First pass at GH-A * Round 2 CI fixes * Try changes * Remove CircleCI | Switch to fancy GH-A * Rename self-host setup script * Update chmod * Use - instead of _ for env. vars * Rename some defs | Remove extra imports * Small comment updates * Forgot to import in ini-api tests | Small comment on Fabric timeouts * Add sys to linux poweroff * Update linux timeout, fix small imports * Update comment * Fix-up workflow-monitor.py * Avoid excessive logging in run-linux | Terminate spot instances after max-runtime * Add more workflow-monitor states | Add pty=False to running workloads * Update CI documentation | Add CI badge [ci skip] * Don't use spot instances * Update CI readme * Determine runner version from remote repo and check for runner setup * Address PR comments * Update CI_README location of where to find IPs | Forgot ret_code * Only run CI on prs/pushes to dev/main/master * Fix terminate_workflow_instances in init-manager.py * Cleanup FireSim repo cloning | Only run CI on PRs (since its runs on merge commit)
2022-01-21 03:03:37 +08:00
- uses: ./.github/actions/repo-setup
- uses: ./.github/actions/build-scala-doc
- name: "Push ScalaDoc to remote"
if: ${{ github.event_name == 'push' }}
uses: ./.github/actions/push-scaladoc-to-ghpages