--- - name: make sure wikifundi data folder exists file: path: "{{ wikifundi_data_root }}" state: directory tags: move-content - name: make sure images folder does not exists file: path: "{{ wikifundi_data_root }}/images_{{ item }}" state: absent with_items: "{{ ansible_local.config.wikifundi_languages | default(omit) }}" tags: move-content - name: move wikifundi LocalSettings command: mv {{ wikifundi_langpack_prefix }}{{ item }}/config/LocalSettings.custom.php {{ mediawiki_root }}/LocalSettings.custom.{{ item }}.php with_items: "{{ ansible_local.config.wikifundi_languages | default(omit) }}" tags: move-content - name: change sqliteDataDir in LocalSettings.custom lineinfile: dest: "{{ mediawiki_root }}/LocalSettings.custom.{{ item }}.php" regexp: '^\$wgSQLiteDataDir = "/var/www/data";' line: '$wgSQLiteDataDir = "{{ wikifundi_data_root }}/";' with_items: "{{ ansible_local.config.wikifundi_languages | default(omit) }}" tags: move-content - name: add parsoid config to LocalSettings.custom lineinfile: dest: "{{ mediawiki_root }}/LocalSettings.custom.{{ item }}.php" line: "$wgVirtualRestConfig['modules']['parsoid'] = array('url' => 'http://localhost:8000', 'domain' => '{{ item }}.{{ wikifundi_fqdn }}', 'prefix' => 'mediawiki_kiwix', 'forwardCookies' => true);" insertbefore: '\?>' with_items: "{{ ansible_local.config.wikifundi_languages | default(omit) }}" tags: ['move-content', 'rename'] - name: add upload path to LocalSettings.custom lineinfile: dest: "{{ mediawiki_root }}/LocalSettings.custom.{{ item }}.php" line: '$wgUploadPath = "$wgScriptPath/images";' insertbefore: '\?>' with_items: "{{ ansible_local.config.wikifundi_languages | default(omit) }}" tags: move-content - name: add wgUploadDirectory path to LocalSettings.custom lineinfile: dest: "{{ mediawiki_root }}/LocalSettings.custom.{{ item }}.php" line: '$wgUploadDirectory = "{{ wikifundi_data_root }}/images_{{ item }}";' insertbefore: '\?>' with_items: "{{ ansible_local.config.wikifundi_languages | default(omit) }}" tags: move-content - name: move wikifundi database command: mv {{ wikifundi_langpack_prefix }}{{ item }}/mw_wikifundi_{{ item }}.sqlite {{ wikifundi_data_root }}/mw_wikifundi_{{ item }}.sqlite with_items: "{{ ansible_local.config.wikifundi_languages | default(omit) }}" tags: move-content - name: Add admin account to Wikifundi environment: WIKIFUNDI_LANG: "{{ item }}" ADMIN_ACCOUNT: "{{ admin_account }}" ADMIN_PASSWORD: "{{ admin_password }}" command: php maintenance/createAndPromote.php --bureaucrat --sysop --force "$ADMIN_ACCOUNT" "$ADMIN_PASSWORD" args: chdir: "{{ mediawiki_root }}" with_items: "{{ ansible_local.config.wikifundi_languages | default(omit) }}" when: ansible_local.config.admin_account is defined tags: move-content - name: move wikifundi images command: mv {{ wikifundi_langpack_prefix }}{{ item }}/images {{ wikifundi_data_root }}/images_{{ item }} with_items: "{{ ansible_local.config.wikifundi_languages | default(omit) }}" tags: move-content - name: Add wikifundi CSS hack lineinfile: dest: /opt/venvs/ideascube/lib/python{{ python3_version }}/site-packages/ideascube/static/ideascube/cards.css line: '.card.tinted[href*="http://{{ item }}.{{ wikifundi_fqdn }}"], { background-image: url("http://{{ item }}.{{ wikifundi_fqdn }}/logo-sq.png"); background-size: 48px; }' insertafter: EOF state: present with_items: '{{ ansible_local.config.wikifundi_languages | default(omit) }}' when: ansible_local.config.wikifundi_languages | length tags: ['move-content', 'rename']