This package contains mock service implementations for worker tests.
Design goals:
- All tests runnable against mocks or a real deployed cluster
- Tests to run against mocks by default, but configurable to run against a real taskcluster deployment
- Mocks to service HTTP requests on localhost, emulating a real worker environment, in order to maximise test coverage of worker code
- All worker required network services to be mocked, including AWS S3 upload (for artifact publishing), cloud metadata endpoints and taskcluster HTTP endpoints
- Tests requiring external conditions hard to trigger in a real deployment may bypass requirement for compatibility with a real taskcluster deployment
At the current time, the following are NOT design goals, due to the increased complexity to implement. These may become design goals in the future.
- Mock services to be usable by both generic-worker and docker-worker tests
- Sharable tests between generic-worker and docker-worker