diff options
author | Sacha Chua <sacha@sachachua.com> | 2022-10-16 18:11:09 -0400 |
---|---|---|
committer | Sacha Chua <sacha@sachachua.com> | 2022-10-16 18:11:09 -0400 |
commit | 12c465a8f6e127a599b0477094552fc90c7e2ce0 (patch) | |
tree | 81abef4c2a2d0230ca403eed1133815f2e37a740 /roles/wiki/tasks | |
parent | 84ccb907a14bd8bd06afec7b5ac836fa7a0883f6 (diff) | |
parent | 54af5163644ef58a641e86288c7af8653970a319 (diff) | |
download | emacsconf-ansible-12c465a8f6e127a599b0477094552fc90c7e2ce0.tar.xz emacsconf-ansible-12c465a8f6e127a599b0477094552fc90c7e2ce0.zip |
Merge branch 'main' of git.emacsconf.org:pub/emacsconf-ansible into main
Diffstat (limited to 'roles/wiki/tasks')
-rw-r--r-- | roles/wiki/tasks/docker.yml | 49 | ||||
-rw-r--r-- | roles/wiki/tasks/main.yml | 60 |
2 files changed, 109 insertions, 0 deletions
diff --git a/roles/wiki/tasks/docker.yml b/roles/wiki/tasks/docker.yml new file mode 100644 index 0000000..1a759a4 --- /dev/null +++ b/roles/wiki/tasks/docker.yml @@ -0,0 +1,49 @@ +- name: Set up docker stuff if on docker + apt: + pkg: + - lighttpd + - supervisord +- name: Create the anon user + user: + name: anon +- name: Set up Ikiwiki setup + template: + src: emacsconf.setup + dest: "{{ ikiwiki_path }}/emacsconf.setup" + owner: www-data + group: www-data +- name: Set up the ikiwiki directories + file: + dest: /var/www/html + state: directory + owner: www-data + group: www-data +- name: Clone the bare git repo + git: + bare: true + repo: "{{ ikiwiki_git_source_mount }}" + dest: "{{ ikiwiki_bare_git_dir }}" + version: "{{ ikiwiki_git_branch }}" +- name: Change owner + file: + dest: "{{ ikiwiki_bare_git_dir }}" + recurse: true + owner: www-data + group: www-data +- name: Clone the working git repo + git: + repo: "{{ ikiwiki_bare_git_dir }}" + dest: "{{ ikiwiki_src_dir }}" + version: "{{ ikiwiki_git_branch }}" +- name: Copy supervisor config + template: + src: supervisord.conf + dest: /etc/supervisor/conf.d/ikiwiki.conf +- name: Start lighttpd + service: + name: lighttpd + state: started +- name: Start supervisord + service: + name: supervisor + state: restarted diff --git a/roles/wiki/tasks/main.yml b/roles/wiki/tasks/main.yml new file mode 100644 index 0000000..35c297d --- /dev/null +++ b/roles/wiki/tasks/main.yml @@ -0,0 +1,60 @@ +--- +- name: Set up packages + ansible.builtin.apt: + update_cache: true + pkg: + - ikiwiki + - git + - openssh-server + - libimage-magick-perl + - libtext-csv-perl + - libxml-writer-perl + - imagemagick + - nginx + - wget + state: present +- name: Create ikiwiki group + group: + name: ikiwiki + state: present +- name: Create ikiwiki user + user: + name: ikiwiki + group: ikiwiki + state: present +- debug: + var: docker +- name: Set up or update repositories + ansible.builtin.git: + repo: git://git.emacsconf.org/emacsconf-wiki + dest: "{{ ikiwiki_src_dir }}" + when: not docker|d(false) +- name: Template the config + ansible.builtin.template: + src: emacsconf.setup + dest: "{{ ikiwiki_path }}/emacsconf.setup" + owner: ikiwiki +- name: Copy Ikiwiki plugins + tags: wiki-plugins + template: + src: "{{ item }}" + dest: "{{ ikiwiki_plugin_path }}/{{ item }}" + loop: + - copyright.pm + - htmlscrubber.pm + - license.pm +- include: docker.yml + when: docker is true +- name: Chown all the files to ikiwiki + tags: wiki-plugins + file: + dest: "{{ ikiwiki_path }}" + owner: ikiwiki + group: ikiwiki + recurse: true +- name: Regenerate all the files + tags: wiki-regenerate, wiki-plugins + shell: ikiwiki --setup "{{ ikiwiki_path }}/emacsconf.setup" --rebuild --wrappers + register: output +- debug: + var: output |