- name: Ensure docker-compose directory exists file: state: directory path: /etc/hound-docker - name: Write settings file template: src: docker-compose.yaml.j2 dest: /etc/hound-docker/docker-compose.yaml - name: Install apache2 apt: name: - apache2 - apache2-utils state: present - name: Apache modules apache2_module: state: present name: "{{ item }}" loop: - rewrite - proxy - proxy_http - ssl - headers - proxy_wstunnel - name: Copy apache config template: src: codesearch.vhost.j2 dest: /etc/apache2/sites-enabled/000-default.conf owner: root group: root mode: 0644 notify: codesearch Reload apache2 - name: Create hound data storage area file: state: directory path: /var/lib/hound/data owner: root group: root mode: 0755 - name: Create hound www storage area file: state: directory path: /var/lib/hound/www owner: root group: root mode: 0755 - name: Copy hound robots.txt copy: src: robots.txt dest: /var/lib/hound/www/robots.txt - name: Run docker-compose pull shell: cmd: docker-compose pull chdir: /etc/hound-docker/ - name: Run docker-compose up shell: cmd: docker-compose up -d chdir: /etc/hound-docker/ - name: Run docker prune to cleanup unneeded images shell: cmd: docker image prune -f # Daily update of codesearch. This only reloads hound # if the project-config yaml has changed - name: Install update cron job cron: name: Update codesearch state: present user: root job: > /usr/local/bin/docker-compose -f /etc/hound-docker/docker-compose.yaml exec -T hound /usr/local/bin/resync-hound >> /var/log/resync-hound.log 2>&1 hour: 5 minute: 30 - name: Rotate sync logs include_role: name: logrotate vars: logrotate_file_name: /var/log/resync-hound.log