1
0

Transcriber: rewrite deploy

Same as homepage deploy

Prepare for two-step deploy:
- local build and fix local tag
- deploy to remote server
This commit is contained in:
2025-10-23 11:37:24 +03:00
parent 61e2431975
commit 6fd6d76594
5 changed files with 54 additions and 52 deletions

View File

@@ -1,9 +1,10 @@
services: services:
transcriber_app: transcriber_app:
# noinspection ComposeUnknownValues
image: "{{ registry_transcriber_image }}" image: "{{ registry_transcriber_image }}"
container_name: transcriber_app container_name: transcriber_app
user: '{{ user_create_result.uid }}:{{ user_create_result.group }}' user: "{{ user_create_result.uid }}:{{ user_create_result.group }}"
restart: unless-stopped restart: unless-stopped
volumes: volumes:
- "{{ config_file }}:/config/config.toml:ro" - "{{ config_file }}:/config/config.toml:ro"

View File

@@ -0,0 +1,21 @@
---
- name: "Upload local transcriber images to registry"
hosts: all
gather_facts: no
vars_files:
- vars/ports.yml
- vars/secrets.yml
- vars/transcriber.yml
- vars/transcriber.images.yml
tasks:
- name: "Push web service image to remote registry"
community.docker.docker_image:
state: present
source: local
name: "{{ transcriber_image }}"
repository: "{{ registry_transcriber_image }}"
push: true
delegate_to: 127.0.0.1

View File

@@ -5,23 +5,8 @@
vars_files: vars_files:
- vars/ports.yml - vars/ports.yml
- vars/secrets.yml - vars/secrets.yml
- vars/transcriber.yml
- vars/transcriber.images.yml
vars:
app_name: "transcriber"
app_user: "{{ app_name }}"
base_dir: "/home/{{ app_user }}"
config_dir: "{{ (base_dir, 'config') | path_join }}"
config_file: "{{ (config_dir, 'config.toml') | path_join }}"
data_dir: "{{ (base_dir, 'data') | path_join }}"
backups_dir: "{{ (base_dir, 'backups') | path_join }}"
docker_registry_prefix: "cr.yandex/crplfk0168i4o8kd7ade"
# transcriber_image: "{{ transcriber_image | default(omit) }}"
tasks: tasks:
- name: "Create user and environment" - name: "Create user and environment"
@@ -55,31 +40,9 @@
ansible.builtin.script: ansible.builtin.script:
cmd: "files/yandex-docker-registry-auth.sh" cmd: "files/yandex-docker-registry-auth.sh"
- name: "Deploy service"
when: transcriber_image is defined
block:
# - name: "Check is web service image passed"
# ansible.builtin.assert:
# that:
# - "transcriber_image is defined"
# fail_msg: 'You must pass variable "transcriber_image"'
- name: "Create full image name with container registry"
ansible.builtin.set_fact:
registry_transcriber_image: "{{ (docker_registry_prefix, transcriber_image) | path_join }}"
- name: "Push web service image to remote registry"
community.docker.docker_image:
state: present
source: local
name: "{{ transcriber_image }}"
repository: "{{ registry_transcriber_image }}"
push: true
delegate_to: 127.0.0.1
- name: "Copy docker compose file" - name: "Copy docker compose file"
ansible.builtin.template: ansible.builtin.template:
src: "./files/{{ app_name }}/docker-compose.yml.j2" src: "./files/{{ app_name }}/docker-compose.template.yml"
dest: "{{ base_dir }}/docker-compose.yml" dest: "{{ base_dir }}/docker-compose.yml"
owner: "{{ app_user }}" owner: "{{ app_user }}"
group: "{{ app_user }}" group: "{{ app_user }}"

View File

@@ -0,0 +1,2 @@
---
transcriber_image: ""

15
vars/transcriber.yml Normal file
View File

@@ -0,0 +1,15 @@
---
app_name: "transcriber"
app_user: "{{ app_name }}"
base_dir: "/home/{{ app_user }}"
config_dir: "{{ (base_dir, 'config') | path_join }}"
config_file: "{{ (config_dir, 'config.toml') | path_join }}"
data_dir: "{{ (base_dir, 'data') | path_join }}"
backups_dir: "{{ (base_dir, 'backups') | path_join }}"
docker_registry_prefix: "cr.yandex/crplfk0168i4o8kd7ade"
# Registry images
registry_transcriber_image: "{{ (docker_registry_prefix, transcriber_image) | path_join }}"