diff --git a/ansible/requirements.yml b/ansible/requirements.yml index 61ae220e9..b82048f6c 100644 --- a/ansible/requirements.yml +++ b/ansible/requirements.yml @@ -6,4 +6,5 @@ roles: collections: - community.general +- community.docker - devsec.hardening diff --git a/ansible/roles/backup/tasks/main.yml b/ansible/roles/backup/tasks/main.yml index 56b28e01a..9eb5504c9 100644 --- a/ansible/roles/backup/tasks/main.yml +++ b/ansible/roles/backup/tasks/main.yml @@ -5,7 +5,7 @@ - name: Query id of database container command: - cmd: docker-compose -f docker-compose.yml -f docker-compose.prod.yml ps -q db + cmd: docker compose -f docker-compose.yml -f docker-compose.prod.yml ps -q db chdir: /home/ansible register: get_container_id tags: diff --git a/ansible/roles/installation/tasks/main.yml b/ansible/roles/installation/tasks/main.yml index 7b9fbf08c..4c97ca2d2 100644 --- a/ansible/roles/installation/tasks/main.yml +++ b/ansible/roles/installation/tasks/main.yml @@ -19,7 +19,7 @@ - ../docker-compose.prod.yml - ../docker-compose.traefik.yml -- name: Run `docker-compose up` +- name: Run `docker compose up` environment: DOCKER_IMAGE_TAG: "{{ docker_image_tag }}" RAILS_ENV: "{{ rails.environment }}" @@ -56,23 +56,22 @@ THREE_SIXTY_DIALOG_PARTNER_ID: "{{ rails.three_sixty_dialog.partner.id | default('') }}" THREE_SIXTY_DIALOG_PARTNER_USERNAME: "{{ rails.three_sixty_dialog.partner.username | default('') }}" THREE_SIXTY_DIALOG_PARTNER_PASSWORD: "{{ rails.three_sixty_dialog.partner.password | default('') }}" - - community.general.docker_compose: + community.docker.docker_compose_v2: project_src: /home/ansible - build: no - debug: yes - pull: yes - restarted: yes + recreate: always + build: never + pull: always + wait: true files: - docker-compose.yml - docker-compose.prod.yml - docker-compose.traefik.yml - name: Prune outdated images - community.general.docker_prune: + community.docker.docker_prune: images: yes - name: Create and migrate database command: - cmd: docker-compose -f docker-compose.yml -f docker-compose.prod.yml exec app bin/rails db:migrate + cmd: docker compose -f docker-compose.yml -f docker-compose.prod.yml exec app bin/rails db:migrate chdir: /home/ansible diff --git a/ansible/roles/local_restore/tasks/restore_backup.yml b/ansible/roles/local_restore/tasks/restore_backup.yml index 451b9a59a..621e4f1eb 100644 --- a/ansible/roles/local_restore/tasks/restore_backup.yml +++ b/ansible/roles/local_restore/tasks/restore_backup.yml @@ -19,14 +19,9 @@ src: "{{ backup_host_folder.path }}/tmp/100eyes-storage.tgz" dest: "{{ playbook_dir }}/.." -- name: Install docker-compose python package - ansible.builtin.pip: - name: docker-compose - -- name: Run `docker-compose up` - community.general.docker_compose: +- name: Run `docker compose up` + community.docker.docker_compose_v2: project_src: "{{ playbook_dir }}/.." - debug: yes state: present services: - db @@ -42,17 +37,16 @@ - name: Re-create empty databse and restore database backup command: - cmd: "docker-compose exec -T db bash -c \"{{ item }}\"" + cmd: "docker compose exec -T db bash -c \"{{ item }}\"" chdir: "{{ playbook_dir }}/.." loop: - dropdb app_development -U postgres --if-exists - createdb app_development -U postgres - pg_restore -d app_development -U postgres --no-owner --role=postgres < /tmp/100eyes-db-dump -- name: Run `docker-compose down` - community.general.docker_compose: +- name: Run `docker compose down` + community.docker.docker_compose_v2: project_src: "{{ playbook_dir }}/.." - debug: yes state: absent files: - docker-compose.yml diff --git a/ansible/roles/signal/tasks/main.yml b/ansible/roles/signal/tasks/main.yml index fd0f00f78..fac1de235 100644 --- a/ansible/roles/signal/tasks/main.yml +++ b/ansible/roles/signal/tasks/main.yml @@ -66,4 +66,4 @@ ansible.builtin.cron: name: "Receive signal messages" minute: "*" # job gets run every minute - job: "/usr/local/bin/docker-compose -f /home/ansible/docker-compose.yml -f /home/ansible/docker-compose.prod.yml exec -T app bin/rails signal:receive_messages" + job: "/usr/bin/docker compose -f /home/ansible/docker-compose.yml -f /home/ansible/docker-compose.prod.yml exec -T app bin/rails signal:receive_messages" diff --git a/ansible/site.yml b/ansible/site.yml index 5e9c03dae..2352cb984 100644 --- a/ansible/site.yml +++ b/ansible/site.yml @@ -21,14 +21,11 @@ - role: gantsign.inotify inotify_max_user_watches: 524288 - role: geerlingguy.pip - vars: - pip_install_packages: - - name: "docker < 7.0.0" - - name: docker-compose - - name: passlib + pip_install_packages: + - name: passlib - role: geerlingguy.docker + docker_packages_state: latest vars: - docker_compose_version: "1.27.4" docker_users: - ansible - role: installation