I am using a machine instead of Docker images (a few reasons for this) and I would like to have a single step that does all of the initial configuration of the machine and then have separate jobs use the existing, running instance of the machine. As far as I can tell, each job requires a machine (or docker) configuration that resets the environment. I can imagine ways to work around this that are purely Docker based, but again, there are a few reasons the machine is strongly preferred.
Staring from the example workflow example (https://circleci.com/docs/2.0/workflows/) I would like to accomplish something like this:
jobs: build: machine: true steps: - checkout - run: sudo apt-get install -y git rsync curl make ... test: # machine: true steps: - run: run-all-my-crazy-scripts-that-require-packages-from-build.sh workflows: version: 2 build_and_test: jobs: - build - test
The key thing is I don’t want to have to re-install packages / rebuild a machine for every step.
Is this possible?