--- # - name: install git in host # apt: name=git state=present # - name: checkout kanboard source # git: # repo: https://github.com/kanboard/kanboard.git # dest: /tmp/kanboard-source # - name: find latest tag # command: git describe --abbrev=0 # args: # chdir: /tmp/kanboard-source # register: kb_ver # - name: checkout kanboard source tag {{ kb_ver.stdout }} # git: # repo: https://github.com/kanboard/kanboard.git # dest: /tmp/kanboard-source # version: "{{ kb_ver.stdout }}" # - name: build dir # file: # path: /tmp/build.kanboard/src # state: directory # - name: find latest release # uri: # url: https://api.github.com/repos/kanboard/kanboard/releases/latest # return_content: yes # register: latest # - name: download latest release # unarchive: # src: "https://github.com/kanboard/kanboard/archive/{{ latest.json.tag_name }}.tar.gz" # dest: /tmp/build.kanboard/src # remote_src: yes # register: dl # - name: link release dir # file: # src: /tmp/build.kanboard/src/kanboard-{{ latest.json.tag_name|regex_replace('^v') }} # path: /tmp/build.kanboard/src/kanboard # state: link # - name: copy build files # copy: src={{ item }} dest=/tmp/build.kanboard/ # loop: # - Dockerfile # - Caddyfile # register: cp # - name: build image # docker_image: # path: /tmp/build.kanboard # name: "{{ kanboard_image_name }}" # tag: "{{ latest.json.tag_name }}" # force: "{{ dl is changed or cp is changed }}" # register: b_img - name: start container docker_container: image: kanboard/kanboard pull: yes name: "{{ kanboard_container_name }}" ports: # - "10080:80" # - "10443:443" volumes: - kanboard_data:/srv/app/data - kanboard_plugins:/srv/app/plugins env: networks: - name: "{{ docker_network_name }}" - name: copy frontend config copy: content: | server { listen 80; server_name kanban.mau.ro; root /www; index index.html index.htm; rewrite ^ https://$http_host$request_uri? permanent; include conf.d/enabled-http/certbot.conf; } server { listen 443 ssl; server_name kanban.mau.ro; root /www; index index.html index.htm; location / { proxy_set_header Host $http_host; proxy_pass https://{{ kanboard_container_name }}; } include conf.d/enabled-https/certbot.conf; } dest: "{{ frontend_config_root }}/kanboard.conf" register: fe_config - name: restart frontend docker_container: name: "{{ frontend_container_name }}" restart: yes when: fe_config is changed