o3de / sig-testing

Documentation and materials for the Open 3D Engine Test Special Interest Group
9 stars 7 forks source link

Proposed RFC Feature: Static Analysis via GitHub Actions #21

Open Kadino opened 2 years ago

Kadino commented 2 years ago

Summary:

Static Analysis tool(s) could execute during Automated Review OR periodically run and auto-cut issues based on the findings. Static analysis tools exist in GitHub actions, which O3DE has "free" credits for executing as part of being an open source project: https://github.com/marketplace/category/code-quality . Determine which are appropriate to run, and propose the cadence they should run.

TODO: This RFC is a stub, and needs to be further defined before it is ready for comment and further revision. Fill out the sections below, and bring this document to review with SIG-Testing

What is the relevance of this feature?

Why is this important? What are the use cases? What will it do once completed?

Feature design description:

Technical design description:

What are the advantages of the feature?

What are the disadvantages of the feature?

How will this be implemented or integrated into the O3DE environment?

Are there any alternatives to this feature?

How will users learn this feature?

Are there any open questions?

Kadino commented 2 years ago

Some static analyzers appear more focused on security, and some . Need to clarify which aside from CodeQL are useful: https://codeql.github.com/docs/codeql-overview/

Kadino commented 2 years ago

This RFC will need to define how the emitted warnings are tracked and acted upon. Emitting them less than half the story.

Kadino commented 2 years ago

While it remains unclear what the requirements are of a static analysis tool, there is a request for a specific tool in https://github.com/o3de/o3de/issues/10032

lmbr-pip commented 2 years ago

Would be good to cover how this work, if at all, with GitHub code scanning https://docs.github.com/en/code-security/code-scanning/automatically-scanning-your-code-for-vulnerabilities-and-errors/about-code-scanning

Kadino commented 1 year ago

If SIG-Testing investigates static analysis., be sure to sync with SIG-Build on requirements and recommendations. SIG-Build is looking into enabling static analysis.