Thanks for listing your steps! Sad it’s not working yet.
This is probably a temporary connectivity issue and will resolve itself (try again later; example).
That Failed to validate the SSL certificate is the error you list in step 3, then in step 4 you apply roots/trellis#708, but note that these two are different issues. You shouldn’t need #708 unless your ssh -V shows an OpenSSH version less than 6.5 (maybe that does apply to you).
I assume the error in step 5 is a repeat of the Failed to validate the SSL certificate. If this doesn’t resolve itself when you try again after an hour or two, you could cause the offending task to skip by including this line in your group_vars/all/main.yml for the next day or two:
ssh_client_ip_lookup: false
You saw no red errors for the command with --tags users but note that this runs only one role (users) among many, so most of the provisioning has not completed. So, it is not surprising that subdirectories seem missing from the server.
Try adding ssh_client_ip_lookup: false and run ansible-playbook server.yml -e env=production and see if it finishes. If you get new consistent errors that you cannot resolve by searching around a bit, post verbose output (-vvv) from this command:
ansible-playbook server.yml -e env=production -vvv