-
Notifications
You must be signed in to change notification settings - Fork 3
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Add reportinator_server files #90
Conversation
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Looks very good! I left a few suggestions but nothing that I see should block a merge.
vars: | ||
admin_username: admin | ||
homedir: /home/{{ admin_username }} | ||
cert_email: [email protected] |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
can you change this to [email protected]?
--- | ||
reportinator_server: | ||
hosts: | ||
reportinator.nos.social: |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I think reportinator.ansible.fun should be listed here too? At least if we want to absorb the vars
below? Maybe we don't want that.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I removed this because of the issue with nos.social subdomains
src: "{{ item.src }}" | ||
dest: "{{ reportinator_server_dir }}/{{ item.dest }}" | ||
mode: 0644 | ||
loop: |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
If you like you can omit the loop
and just set the src
and dest
above. It's more readable but this is more convenient if we add more template files in the future.
volumes: | ||
- data:/app/data | ||
labels: | ||
- "traefik.enable=true" |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Maybe I'm missing it but I don't see the reportinator_server
role depending on the traefik
role anywhere. Maybe we don't need traefik at all for this app at this time? In which case we could remove these labels.
Also do we need an SSL cert? If so we might need certbot_cloudflare
too.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
it's using traefik, but now the traefik service is coming from the traefik role and it connects to this docker-compose through the network proxy
: https://github.com/planetary-social/ansible-scripts/blob/main/roles/traefik/templates/docker-compose.yml.tpl
This is the file structure to be able to deploy the reportinator server as specified through #85
It's still not complete because we need the vault entries for the secrets in the inventory file. I don't have access to the vault keys and I also don't know how to add stuff to the vault so I'll need some guidance.
I think we'll need a volume to store the google credentials and keep it across restarts. I don't know how to do that from ansible but I'll try first to do it manually from the digital ocean dashboard and once the server is running, if all is good, I'll see how to do it through ansible.