Skip to content

Conversation

@dhower-qc
Copy link
Collaborator

Regression tests are taking too long. This PR splits testing into smoke, regress, and nightly.

  • smoke is basic validation tests (no generation)
  • regress is needed to merge a PR. It contains smoke + generates one of each type of output.
  • nightly is regress + builds all outputs.

This also adds a nightly run on GitHub.

NOTE This changes some of the task names to get more uniformity. Notably do validate is now do test:smoke.

The full list of documented tasks is:

hu-dhower-lv:riscv-unified-db-3 (90) ./do --tasks
do clean                                # Clean up all generated files
do gen:adoc[config_name]                # Generate Asciidoc source for config into gen/CONFIG_NAME/adoc
do gen:arch                             # Generate a unified architecture file (configuration independent) / Generate architecture files from layouts
do gen:cert_model_pdf[cert_model_name]  # Generate certificate documentation for a specific version as a PDF
do gen:cert_profile_pdfs                # Generate all certificates and profile PDFs
do gen:cfg_arch[config_name]            # Generate the cfg-specific architecture files for config_name
do gen:cfg_ext_html[extension,cfg]      # Generate HTML documentation for :extension that is defined or overlayed in :cfg
do gen:cfg_ext_pdf[extension,cfg]       # Generate PDF documentation for :extension that is defined or overlayed in :cfg
do gen:ext_pdf[extension]               # Generate PDF documentation for :extension
do gen:html[config_name]                # Generate HTML documentation for config(s)
do gen:html_manual                      # Generate an HTML site for one or more versions of the manual (./do --desc for options)
do gen:index                            # Generate index of the database
do gen:profile[profile_release]         # Create a specification PDF for +profile_release+
do gen:profile_html[profile_release]    # Create a specification HTML for +profile_release+
do gen:tool_doc                         # Generate documentation for the ruby tooling
do serve:html[config_name,port]         # Start an HTML server to view the generated HTML documentation for config_name
do serve:tool_doc[port]                 # Start an HTML server to view the generated HTML documentation for the tool
do test:nightly                         # Run the nightly regression tests
do test:regress                         # Run the regression tests
do test:smoke                           # Run smoke tests

AFOliveira
AFOliveira previously approved these changes Nov 25, 2024
Copy link
Collaborator

@AFOliveira AFOliveira left a comment

Choose a reason for hiding this comment

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

I think this is great, it definitely improves workflow!

Copy link
Collaborator

@kbroch-rivosinc kbroch-rivosinc left a comment

Choose a reason for hiding this comment

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

I agree the existing regress action was taking nearly 1/2 hr.

@dhower-qc dhower-qc dismissed stale reviews from kbroch-rivosinc and AFOliveira via 02076bb December 2, 2024 14:25
@dhower-qc dhower-qc merged commit ea3dda8 into main Dec 2, 2024
5 checks passed
@dhower-qc dhower-qc deleted the regress branch December 2, 2024 14:56
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.

4 participants