• Matthew Slipper's avatar
    ci: Refactor dependencies to reduce runtime (#9335) · 31845fd2
    Matthew Slipper authored
    * ci: Refactor dependencies to reduce runtime
    
    This PR makes the following changes in order to reduce CI runtime:
    
    1. Move the long-running Cannon E2E tests into a scheduled job. This reduces E2E runtime by 8 minutes.
    2. Updates the `devnet` task to leverage the contract artifacts and cannon pre-state created in order jobs. This job was also updated to use a Geth binary rather than compiling it from source. This reduces devnet runtime by 5 minutes.
    3. Removes intermediate linting, allocs, and geth version check jobs by putting them all in `pnpm-monorepo`. `pnpm-monorepo` already builds the contracts, devnet allocs, and checks the Geth version in parallel so splitting these jobs out actually makes things slower due to CCI image download/environment spin-up overhead. The `pnpm-monorepo` job now plugs into a bunch of downstream jobs.
    4. Refactors the action tests to take advantage of multiple test executors.
    5. Swaps the `bedrock-go-tests` image to a simple CCI base image to reduce runtime (this job alone was taking ~1min due to spin up overhead).
    6. Puts linting in `go-mod-download` to avoid spin-up overhead.
    
    In sum, this PR reduces overall CI runtime from 22 minutes to ~13.
    
    * Use develop as a trigger rather than schedule
    
    * schedule fpp-verify
    31845fd2
multi_test.go 1.58 KB