|
135 | 135 |
|
136 | 136 | - when: not matrix_appservice_irc_stat_auth_media_key.stat.exists
|
137 | 137 | block:
|
138 |
| - - name: Generate IRC appservice signing key for authenticated media |
139 |
| - community.docker.docker_container: |
140 |
| - name: "create-auth-media-jwk-key" |
141 |
| - image: "{{ matrix_appservice_irc_docker_image }}" |
142 |
| - cleanup: yes |
143 |
| - network_mode: none |
144 |
| - entrypoint: "/usr/local/bin/node" |
145 |
| - command: > |
146 |
| - -e "const webcrypto = require('node:crypto'); |
147 |
| - async function main() { |
148 |
| - const key = await webcrypto.subtle.generateKey({ |
149 |
| - name: 'HMAC', |
150 |
| - hash: 'SHA-512', |
151 |
| - }, true, ['sign', 'verify']); |
152 |
| - console.log(JSON.stringify(await webcrypto.subtle.exportKey('jwk', key), undefined, 4)); |
153 |
| - } |
154 |
| - main().then(() => process.exit(0)).catch(err => { throw err });" |
155 |
| - detach: false |
156 |
| - register: matrix_appservice_irc_jwk_result |
| 138 | + - name: Generate IRC appservice signing key for authenticated media |
| 139 | + community.docker.docker_container: |
| 140 | + name: "create-auth-media-jwk-key" |
| 141 | + image: "{{ matrix_appservice_irc_docker_image }}" |
| 142 | + cleanup: true |
| 143 | + network_mode: none |
| 144 | + entrypoint: "/usr/local/bin/node" |
| 145 | + command: > |
| 146 | + -e "const webcrypto = require('node:crypto'); |
| 147 | + async function main() { |
| 148 | + const key = await webcrypto.subtle.generateKey({ |
| 149 | + name: 'HMAC', |
| 150 | + hash: 'SHA-512', |
| 151 | + }, true, ['sign', 'verify']); |
| 152 | + console.log(JSON.stringify(await webcrypto.subtle.exportKey('jwk', key), undefined, 4)); |
| 153 | + } |
| 154 | + main().then(() => process.exit(0)).catch(err => { throw err });" |
| 155 | + detach: false |
| 156 | + register: matrix_appservice_irc_jwk_result |
157 | 157 |
|
158 |
| - - name: Write auth media signing key to file |
159 |
| - ansible.builtin.copy: |
160 |
| - content: "{{ matrix_appservice_irc_jwk_result.container.Output }}" |
161 |
| - dest: "{{ matrix_appservice_irc_data_path }}/auth-media.jwk" |
162 |
| - mode: "0644" |
163 |
| - owner: "{{ matrix_user_username }}" |
164 |
| - group: "{{ matrix_user_groupname }}" |
| 158 | + - name: Write auth media signing key to file |
| 159 | + ansible.builtin.copy: |
| 160 | + content: "{{ matrix_appservice_irc_jwk_result.container.Output }}" |
| 161 | + dest: "{{ matrix_appservice_irc_data_path }}/auth-media.jwk" |
| 162 | + mode: "0644" |
| 163 | + owner: "{{ matrix_user_username }}" |
| 164 | + group: "{{ matrix_user_groupname }}" |
165 | 165 |
|
166 | 166 | # In the past, we used to generate the passkey.pem file with root, so permissions may not be okay.
|
167 | 167 | # Fix it.
|
|
0 commit comments