Ladies and gents it is the final frontier.

I am trying to conquer the matrix docker ansible playbook. So far, because of all the knowledge I have gained setting this damn thing up around 4 times now (conduit, dendrite, synapse with sqlite3, conduwuit) things are going swimmingly.

I would say that except for now when I am running the playbook I keep getting this error:

" fatal: [matrix.example.com]: FAILED! => changed=false msg: |- The matrix_homeserver_generic_secret_key variable must be defined and have a non-null and non-empty value.

If you're observing this error on a new installation, you should ensure that the `matrix_homeserver_generic_secret_key` is defined.
If you think you've defined it, but are still getting this error, then it's likely that you have a typo
in your domain name in `inventory/hosts` or in one of the directories leading up to your `inventory/host_vars/matrix.example.com/vars.yml` file.

If you're observing this error on an existing homeserver installation, you can fix it easily and in a backward-compatible way by adding
`matrix_homeserver_generic_secret_key: "{{ matrix_synapse_macaroon_secret_key }}"`
to your `vars.yml` file. Using another secret value for the new variable is also possible and shouldn't cause any trouble.  "

The thing is I do have a secret key and from what I can also tell is the folder structure is also correct.

I mean hell i even changed it back to “matrix.example.com” just for shits and giggles and still nothing.

I have tried putting the playbook in my home directory I even tried the instructions for an existing homeserver and it still pops up.

I am losing my mind!

This is the guide I am following:

https://github.com/spantaleev/matrix-docker-ansible-deploy/blob/master/docs/quick-start.md

My server is running ubuntu 20.04 and my machine I am running ansible on is running arch.

As always any help is massively appreciated!

EDIT:

These are the file structures I have tried:

I set it up multiple different times in different locations:

/home/inventory/host_vars/matrix.bishbash.com

/home/inventory/hosts

/home/matrix-docker-ansible-deploy/inventory/host_vars/

/Home/matrix-docker-ansible-deploy/inventory/hosts

/desktop/ansible playbook/matrix-docker-ansible-deploy/inventory/host_vars

/desktop/ansible playbook/matrix-docker-ansible-deploy/inventory/hosts

Is is my ansible vars.yml :

# The bare domain name which represents your Matrix identity.
# Matrix user IDs for your server will be of the form (`@alice:example.com`).
#
# Note: this playbook does not touch the server referenced here.
# Installation happens on another server ("matrix.example.com", see `matrix_server_fqn_matrix`).
#
# If you've deployed using the wrong domain, you'll have to run the Uninstalling step,
# because you can't change the Domain after deployment.
matrix_domain: matrix.bishbash.com

# The Matrix homeserver software to install.
# See:
#  - `roles/custom/matrix-base/defaults/main.yml` for valid options
# - the `docs/configuring-playbook-IMPLEMENTATION_NAME.md` documentation page, if one is available for your implementation choice
#
# By default, we use Synapse, because it's the only full-featured Matrix server at the moment.
#
# Note that the homeserver implementation of a server will not be able to be changed without data loss.
matrix_homeserver_implementation: synapse

# A secret used as a base, for generating various other secrets.
# You can put any string here, but generating a strong one is preferred (e.g. `pwgen -s 64 1`).
matrix_homeserver_generic_secret_key: 'I_put_my_actual_key_here'

# By default, the playbook manages its own Traefik (https://doc.traefik.io/traefik/) reverse-proxy server.
# It will retrieve SSL certificates for you on-demand and forward requests to all other components.
# For alternatives, see `docs/configuring-playbook-own-webserver.md`.
matrix_playbook_reverse_proxy_type: playbook-managed-traefik

# This is something which is provided to Let's Encrypt when retrieving SSL certificates for domains.
#
# In case SSL renewal fails at some point, you'll also get an email notification there.
#
# If you decide to use another method for managing SSL certificates (different than the default Let's Encrypt),
# you won't be required to define this variable (see `docs/configuring-playbook-ssl-certificates.md`).
#
# Example value: [email protected]
traefik_config_certificatesResolvers_acme_email: ''

# A Postgres password to use for the superuser Postgres user (called `matrix` by default).
#
# The playbook creates additional Postgres users and databases (one for each enabled service)
# using this superuser account.
postgres_connection_password: 'I_made_a_password_here'

# By default, we configure Coturn's external IP address using the value specified for `ansible_host` in your `inventory/hosts` file.
# If this value is an external IP address, you can skip this section.
#
# If `ansible_host` is not the server's external IP address, you have 2 choices:
# 1. Uncomment the line below, to allow IP address auto-detection to happen (more on this below)
# 2. Uncomment and adjust the line below to specify an IP address manually
#
# By default, auto-detection will be attempted using the `https://ifconfig.co/json` API.
# Default values for this are specified in `matrix_coturn_turn_external_ip_address_auto_detection_*` variables in the Coturn role
# (see `roles/custom/matrix-coturn/defaults/main.yml`).
#
# If your server has multiple IP addresses, you may define them in another variable which allows a list of addresses.
# Example: `matrix_coturn_turn_external_ip_addresses: ['1.2.3.4', '4.5.6.7']`
#
#matrix_coturn_turn_external_ip_address: '' ```
  • ludicolo@lemmy.mlOP
    link
    fedilink
    English
    arrow-up
    1
    ·
    edit-2
    1 day ago

    I am not dead set on using ansible that is just the top recommendation I was recieving purely based off of how much documentation there is for it. That and iy sets up element chat for you which is what I really needed.also a postgres database. This seems a lot closer to my tempo and I will totally try to get it running! Thank you!