Currently, Pipelines does not wait until all declared services are up and running before the build execution starts. As a result, a build could fail because a service container was not fully started yet (e.g. a test failed because a database service container had not fully started).
Maybe this should be an optional configurable setting in the YML? This might require user input to define when a service container is considered to be 'ready'.