Skip to content

"Intelligent" Fuzzing in GitHub CI #90

@julianharty

Description

@julianharty

Context

At the risk of generating an oxymoron, in a discussion with @rwestphal and @Paul-weqe we'd like to explore ways fuzzing might be run automatically using GitHub Actions in a similar way to running as part of Continuous Integration (CI).

I'll mention a couple of ideas here, we can explore these and consider others.

  1. Spawn cargo fuzz tests for any protocol where relevant code has been updated within the last week. Don't run cargo fuzz for code that's unrelated to recent changes.
  2. Only run extended fuzzing when there hasn't been [m]any updates recently. Here the key idea is to use otherwise unused facilities provided by GitHub Actions, and not to run compute intensive testing including cargo fuzz when the project is already using lots of resources.

TBD whether and how a GitHub Actions script can determine what other GitHub Actions were run recently and/or whether a GitHub Actions script can detect what changes have been made that affect particular protocols within a specified period, such as the last calendar week (168 hours).

Metadata

Metadata

Assignees

Labels

Type

No type

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions