Yeah, I always plead for as much as possible to be automated offline. Ideally, I'd like the CI/CD job to trigger just one command, which is what you'd trigger offline as well.
In practice, that doesn't always work out. Because the runners aren't insanely beefy, you need to split up your tasks into multiple jobs, so that they can be put onto multiple runners.
And that means you need to trigger multiple partial commands and need additional logic in the CI/CD to download any previous artifacts and upload the results.
It also means you can restart intermediate jobs.
But yeah, I do often wonder whether that's really worth the added complexity...