Etcd and ObjectStorage are external services with many possible types and options so are up to the user. It doesn’t makes sense to define them in agola.yml since there’re many options. I see you deployed minio (also if not defined in agola.yml), so the same should be done for etcd.
The distributed example is complex and requires the user to understand how agola works. Providing how to deploy your etcd or the object storage doesn’t makes much sense since there’re many options. The simple example uses embedded etcd and object storage but the distributed one cannot do this. What can be done is improving the documentation to explain this. Feel free to open a PR.
The reasons for this are complex and tied to the etcd client, needs time to improve it. Feel free to open an issue/PR.