|
| 1 | +cat ansible/roles/distributed_press/tasks/main.yml |
1 | 2 | # Vars are prefixed with distributed_press_ |
2 | 3 |
|
3 | 4 | - name: Ensure user exists for DP service |
|
54 | 55 | clone: yes |
55 | 56 | update: yes |
56 | 57 |
|
57 | | -- name: Install NPM Dependencies |
| 58 | +- name: Install NPM Dependencies (via nvm) |
58 | 59 | become: yes |
59 | 60 | become_user: "{{distributed_press_user}}" |
60 | 61 | shell: | |
| 62 | + export NVM_DIR="$HOME/.nvm" |
| 63 | + [ -s "$NVM_DIR/nvm.sh" ] && . "$NVM_DIR/nvm.sh" |
| 64 | + nvm use --lts |
61 | 65 | cd {{distributed_press_source}} |
62 | 66 | npm ci |
| 67 | + args: |
| 68 | + executable: /bin/bash |
63 | 69 |
|
64 | 70 | - name: "Enable Node to bind to port 53 for DNS" |
65 | 71 | shell: setcap CAP_NET_BIND_SERVICE=+eip /usr/bin/node |
|
81 | 87 | path: "{{distributed_press_data}}/keys/" |
82 | 88 | register: distributed_press_keys |
83 | 89 |
|
84 | | -- name: "Generate keys for JWT" |
| 90 | +- name: "Generate keys for JWT (via nvm)" |
85 | 91 | when: not distributed_press_keys.stat.exists |
86 | 92 | become: yes |
87 | 93 | become_user: "{{distributed_press_user}}" |
88 | 94 | shell: | |
| 95 | + export NVM_DIR="$HOME/.nvm" |
| 96 | + [ -s "$NVM_DIR/nvm.sh" ] && . "$NVM_DIR/nvm.sh" |
| 97 | + nvm use --lts |
89 | 98 | cd {{distributed_press_source}} |
90 | 99 | npm run keygen |
| 100 | + args: |
| 101 | + executable: /bin/bash |
91 | 102 |
|
92 | 103 | - name: "Run distributed.press service" |
93 | 104 | systemd: |
|
135 | 146 | become_user: "{{social_inbox_user}}" |
136 | 147 | shell: | |
137 | 148 | cd {{social_inbox_source}} |
138 | | - npm run import-blocklist -- --list {{social_inbox_blocklist}} |
| 149 | + NODE_OPTIONS='--loader ts-node/esm' npm run import-blocklist -- --list {{social_inbox_blocklist}} |
139 | 150 |
|
140 | 151 |
|
141 | 152 | - name: Import admin list for social inbox |
|
242 | 253 | state: restarted |
243 | 254 | enabled: true |
244 | 255 | name: nginx |
245 | | - |
|
0 commit comments