{"id":16779797,"url":"https://github.com/petermosmans/ansible-role-dokuwiki","last_synced_at":"2025-04-10T21:15:09.696Z","repository":{"id":75894866,"uuid":"91790728","full_name":"PeterMosmans/ansible-role-dokuwiki","owner":"PeterMosmans","description":"An ansible role to install Dokuwiki","archived":false,"fork":false,"pushed_at":"2019-08-22T11:49:12.000Z","size":34,"stargazers_count":6,"open_issues_count":2,"forks_count":14,"subscribers_count":2,"default_branch":"master","last_synced_at":"2025-04-10T21:14:59.833Z","etag":null,"topics":["ansible","ansible-role","dokuwiki"],"latest_commit_sha":null,"homepage":null,"language":"Shell","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"gpl-3.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/PeterMosmans.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2017-05-19T09:37:27.000Z","updated_at":"2025-03-10T22:58:09.000Z","dependencies_parsed_at":null,"dependency_job_id":"f7334863-c53a-44e6-ae11-b3df13bf0ded","html_url":"https://github.com/PeterMosmans/ansible-role-dokuwiki","commit_stats":null,"previous_names":[],"tags_count":4,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/PeterMosmans%2Fansible-role-dokuwiki","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/PeterMosmans%2Fansible-role-dokuwiki/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/PeterMosmans%2Fansible-role-dokuwiki/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/PeterMosmans%2Fansible-role-dokuwiki/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/PeterMosmans","download_url":"https://codeload.github.com/PeterMosmans/ansible-role-dokuwiki/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":248298312,"owners_count":21080320,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["ansible","ansible-role","dokuwiki"],"created_at":"2024-10-13T07:32:25.740Z","updated_at":"2025-04-10T21:15:09.690Z","avatar_url":"https://github.com/PeterMosmans.png","language":"Shell","funding_links":[],"categories":[],"sub_categories":[],"readme":"Ansible Role: Dokuwiki\n=========\n\nBuild status for this role: [![Build Status](https://travis-ci.org/PeterMosmans/ansible-role-dokuwiki.svg)](https://travis-ci.org/PeterMosmans/ansible-role-dokuwiki)\n\n\nThis role installs, configures, hardens and/or upgrades Dokuwiki on a server.\nThe main focus is on provisioning Dokuwiki instances in a repeatable and secure\nfashion. It does not install a webserver by itself, but it can add and enable an\nApache configuration file (which is included as template in the role).\n\n\nRequirements\n------------\n\nA webserver having PHP installed, e.g. by using PeterMosmans.apache2\n\n\nRole Variables\n--------------\n\nAvailable variables are listed below, along with default values. The default\nvalues are specified in `default/main.yml`.\n\n**dokuwiki_configure_apache2**: When true, will deploy an Apache configuration\n(`dokuwiki.conf.j2`) to Apache, and enable the site. By default, the variable is\nundefined (false).\n\n\n**dokuwiki_name**: The 'internal' name of the dokuwiki, which is e.g. used for\nApache logfiles and the cleanup cronjob. (when `dokuwiki_configure_apache2` is\ntrue). This allows the Ansible role to be used for multiple Dokuwiki sites on\nthe same server. Default:\n```\ndokuwiki_name: dokuwiki\n```\n\n\n**dokuwiki_source**: The URL where the (latest) version of Dokuwiki can be\nfound. By default, it uses the official Dokuwiki source.\n```\ndokuwiki_source: https://download.dokuwiki.org/src/dokuwiki/dokuwiki-stable.tgz\n```\n\n\n**dokuwiki_base**: The local path where Dokuwiki will be installed.\n```\ndokuwiki_base: /var/www/html\n```\n\n\n**dokuwiki_group**: The group owning the Dokuwiki files.\n```\ndokuwiki_group: www-data\n```\n\n\n**dokuwiki_plugins**: A list of name / source pairs, with plugins to\nautomatically install. The sources need to point to tar or .tgz sources (e.g.).\nExample:\n```\n - name: pagelist\n   src: https://github.com/dokufreaks/plugin-pagelist/tarball/master\n```\n\n\n**dokuwiki_plugins_remove**: A list of plugins to automatically remove upon\ninstallation or upgrade.\nDefault:\n```\ndokuwiki_plugins_remove:\n  - name: authad\n  - name: authldap\n  - name: authmysql\n  - name: authpdo\n  - name: authpgsql\n  - name: info\n  - name: popularity\n```\n\n\n**dokuwiki_provision**: When true, apply configuration templates to provision\nDokuwiki. If not specified or false, Dokuwiki will be unprovisioned, a default\ninstallation. See below in the provisioning chapter which variables can be used\nin the configuration templates. Note that when this variable is true, it will\n(re-)template and overwrite the current Dokuwiki configuration.\n\nThe following configuration files are templated:\n- `/conf/acl.auth.php`\n- `/conf/local.php`\n- `/conf/plugins.local.php`\n- `/conf/users.auth.php`\n\nExample:\n```\ndokuwiki_provision: true\n```\n\n\n**dokuwiki_savedir**: The directory where all files (content) will be stored.\n```\ndokuwiki_savedir: /var/www/html/data\n```\n\n\n**dokuwiki_templates**: A list of name / source pairs, with templates to\nautomatically install. The sources need to point to tar or .tgz sources (e.g.).\nExample:\n```\ndokuwiki_templates:\n - name: bootstrap3\n   src: https://github.com/LotarProject/dokuwiki-template-bootstrap3/tarball/master\n```\n\n\n**dokuwiki_user**: The user owning the Dokuwiki files.\n```\ndokuwiki_user: root\n```\n\n\n## Provisioning\nThe following variables will be used in the configuration templates\n(`local.php.j2`, `users.auth.php.j2`), and therefore will only be applied if\n`dokuwiki_provision` is set to `true`.\n\n\n**dokuwiki_acl_all**: The ACL bits for the default (@ALL) group. By default,\nonly logged on users are allowed access (0).\n\n\n**dokuwiki_acl_user**: The ACL bits for the user (@user) group. By default,\nusers have upload, create, edit, and read permissions (8).\n\n\n**dokuwiki_disableactions**: Which actions to disable. By default, registering\nis disabled.\n\n\n**dokuwiki_title**: The Dokuwiki title\n\n\n**dokuwiki_local**: A list of name / value configuration pairs to be added to\nthe `local.php` configuration file.\nExample:\n```\ndokuwiki_local:\n  - name: \"['passcrypt']\"\n    value: 'bcrypt'\n```\nThis will result in adding the following string to `/conf/local.php`:\n```\n$conf['mytemplate'] = 'myvalue';\n```\n\n\n**dokuwiki_users**: A list of users, containing the following name / value pairs:\n```\n- login: login\n- hash: password hash\n- name: full name\n- email: email address\n- groups: comma separated list of groups\n```\n\nExample:\n```\ndokuwiki_users:\n- login: admin\n  hash: \"$2y$05$Nr3wFqH54gcdhxPK9easseLSVwLAnLTD2flYmQbAbCVIiiTU4mCjS\"\n  name: Administrator\n  email: admin@admin\n  groups: admin,user\n```\n\nThis will result in adding the user admin to Dokuwiki, with the bcrypted password `admin`.\n\nDependencies\n------------\n\nNone.\n\n\nExample Playbook\n----------------\n```\n- hosts: all\n  become: yes\n  become_method: sudo\n  roles:\n  - role: PeterMosmans.dokuwiki\n  vars:\n    dokuwiki_base: /var/www/html\n    dokuwiki_configure_apache2: true\n    dokuwiki_plugins:\n      - name: tag\n        src: https://github.com/dokufreaks/plugin-tag/tarball/master\n      - name: pagelist\n        src: https://github.com/dokufreaks/plugin-pagelist/tarball/master\n    dokuwiki_plugins_remove:\n      - name: authad\n      - name: authldap\n      - name: authmysql\n      - name: authpdo\n      - name: authpgsql\n      - name: info\n      - name: popularity\n    dokuwiki_preconfigure: true\n    dokuwiki_savedir: /var/www/html/data\n    dokuwiki_template: bootstrap3\n    dokuwiki_templates:\n      - name: bootstrap3\n        src: https://github.com/LotarProject/dokuwiki-template-bootstrap3/tarball/master\n    dokuwiki_users:\n      - login: admin\n        hash: \"$2y$05$Nr3wFqH54gcdhxPK9easseLSVwLAnLTD2flYmQbAbCVIiiTU4mCjS\"\n        name: Administrator\n        email: admin@admin\n        groups: admin,user\n```\nThis example will install Dokuwiki to `/var/www/html`, and use `/var/www/html/data` as data directory.\nIt will install the plugins `tag` and `pagelist`, and remove the plugins `authad`, `authldap`, `authmysql`, `authpdo`, `authpgsql`, `info` and `popularity`.\nIt will install and use the `bootstrap3` theme, and grant the user `admin` with the password `admin` access to the wiki.\nMoreover, it will configure and enable the Apache site.\n\n\nLicense\n-------\n\nGPLv3\n\n\nAuthor Information\n------------------\n\nCreated by Peter Mosmans. Suggestions, feedback and pull requests are always\nwelcome.\n\nContributions by @onny\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fpetermosmans%2Fansible-role-dokuwiki","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fpetermosmans%2Fansible-role-dokuwiki","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fpetermosmans%2Fansible-role-dokuwiki/lists"}