SMARCH-129 new server/playbook for mpmx dev
parent
e9f5dc36ae
commit
6798cd1dee
@ -0,0 +1,14 @@
|
||||
---
|
||||
pass_tenant_id: "mpmx"
|
||||
|
||||
hetzner_server_type: cpx51
|
||||
|
||||
custom_platform_users:
|
||||
- 'klaus.muellner'
|
||||
|
||||
prometheus_alert_extra_config:
|
||||
high_load:
|
||||
duration: 24h
|
||||
description: "High load for more than 24 hour."
|
||||
|
||||
server_type: "master"
|
||||
@ -0,0 +1,14 @@
|
||||
$ANSIBLE_VAULT;1.1;AES256
|
||||
65356439376234613339666538653732656330323831323961393162303161306432336464623064
|
||||
3436343262346261316333393136326165633865613839380a383736376432326531636239646231
|
||||
38636663663764623237343066626466303965656637376634623462376566623637636134363763
|
||||
3530323362366230640a306230636364646130306363303261336439313635633735356264363532
|
||||
38313665646537326230383163393037326534353966353933663533373638333436336535366662
|
||||
63336336383839306165343961313832353166323561336338333565363765636538356161313631
|
||||
30303737636265313436643733343938313562323739383335656330303261393433383662646135
|
||||
64313039646162323439373930313066343062333061653234616661663034363238653138336438
|
||||
33663939666632376663666437636339663765666661646531346436396365643937633465336439
|
||||
35663638343663366637643061656232333937323361623631353063353630306234326530326536
|
||||
65373966646430626634643731306266633238333362623063666531646336333836616533346566
|
||||
30653862313633666238313734393962326465393533616265613266333063636432313131373636
|
||||
3231
|
||||
@ -0,0 +1,2 @@
|
||||
---
|
||||
pgadmin4_image_name: "dpage/pgadmin4"
|
||||
@ -0,0 +1,62 @@
|
||||
---
|
||||
### tags:
|
||||
### update_config
|
||||
### update_deployment
|
||||
|
||||
- name: "Setup DNS configuration for <{{ pgadmin_id }}> to <{{ stage_server_ip }}>"
|
||||
include_role:
|
||||
name: hetzner-ansible-dns
|
||||
vars:
|
||||
record_data: "{{ stage_server_ip }}"
|
||||
record_name: "{{ pgadmin_id }}"
|
||||
|
||||
- name: "Check if <{{ pgadmin_id }}/docker-compose.yml> exists"
|
||||
stat:
|
||||
path: "{{ service_base_path }}/{{ pgadmin_id }}/docker-compose.yml"
|
||||
register: check_docker_compose_file
|
||||
tags:
|
||||
- update_config
|
||||
- update_deployment
|
||||
|
||||
- name: "Stop <{{ pgadmin_id }}>"
|
||||
community.docker.docker_compose:
|
||||
project_src: "{{ service_base_path }}/{{ pgadmin_id }}"
|
||||
state: absent
|
||||
when: check_docker_compose_file.stat.exists
|
||||
tags:
|
||||
- update_deployment
|
||||
|
||||
- name: "Deploy docker templates for <{{ pgadmin_id }}>"
|
||||
include_role:
|
||||
name: hetzner-ansible-sma-deploy
|
||||
tasks_from: templates
|
||||
vars:
|
||||
current_config: "_docker"
|
||||
current_base_path: "{{ service_base_path }}"
|
||||
current_destination: "{{ pgadmin_id }}"
|
||||
current_owner: "{{ docker_owner }}"
|
||||
current_group: "{{ docker_group }}"
|
||||
current_docker: "{{ pgadmin4_docker }}"
|
||||
tags:
|
||||
- update_config
|
||||
|
||||
- name: "Deploy service templates for <{{ pgadmin_id }}>"
|
||||
include_role:
|
||||
name: hetzner-ansible-sma-deploy
|
||||
tasks_from: templates
|
||||
vars:
|
||||
current_config: "mpmx"
|
||||
current_base_path: "{{ service_base_path }}"
|
||||
current_destination: "{{ pgadmin_id }}"
|
||||
current_owner: "{{ docker_owner }}"
|
||||
current_group: "{{ docker_group }}"
|
||||
tags:
|
||||
- update_config
|
||||
|
||||
- name: "Update <{{ pgadmin_id }}>pgadmin_id"
|
||||
community.docker.docker_compose:
|
||||
project_src: "{{ service_base_path }}/{{ pgadmin_id }}"
|
||||
state: present
|
||||
pull: yes
|
||||
tags:
|
||||
- update_deployment
|
||||
@ -0,0 +1,56 @@
|
||||
---
|
||||
pgadmin_id: "{{ inventory_hostname }}-pgadmin4"
|
||||
postgres_id: "{{ inventory_hostname }}-postgres"
|
||||
|
||||
pgadmin4_docker:
|
||||
networks:
|
||||
- name: front-tier
|
||||
external: true
|
||||
- name: back-tier
|
||||
external: true
|
||||
volumes:
|
||||
- name: pgadmin_data
|
||||
- name: postgres_15_data
|
||||
- name: postgres_16_data
|
||||
services:
|
||||
- name: "{{ pgadmin_id }}"
|
||||
image_name: "{{ pgadmin4_image_name }}"
|
||||
image_version: "{{ pgadmin4_version }}"
|
||||
labels:
|
||||
- '"traefik.enable=true"'
|
||||
- '"traefik.http.routers.{{ pgadmin_id }}.service={{ pgadmin_id }}"'
|
||||
- '"traefik.http.routers.{{ pgadmin_id }}.rule=Host(`{{ pgadmin_id }}.{{ domain }}`)"'
|
||||
- '"traefik.http.routers.{{ pgadmin_id }}.entrypoints=websecure"'
|
||||
- '"traefik.http.routers.{{ pgadmin_id }}.tls=true"'
|
||||
- '"traefik.http.routers.{{ pgadmin_id }}.tls.certresolver=letsencrypt"'
|
||||
- '"traefik.http.services.{{ pgadmin_id }}.loadbalancer.server.port={{ http_port }}"'
|
||||
environment:
|
||||
- 'PGADMIN_DEFAULT_EMAIL: "{{ pgadmin4_admin_username }}"'
|
||||
- 'PGADMIN_DEFAULT_PASSWORD: "{{ pgadmin4_admin_password }}"'
|
||||
volumes:
|
||||
- "pgadmin_data:/var/lib/pgadmin"
|
||||
networks:
|
||||
- front-tier
|
||||
- back-tier
|
||||
- name: "{{ postgres_id }}-15"
|
||||
image_name: "postgres"
|
||||
image_version: "15"
|
||||
environment:
|
||||
- 'POSTGRES_DB: "{{ mpmx_postgres_database }}"'
|
||||
- 'POSTGRES_USER: "{{ mpmx_postgres_username }}"'
|
||||
- 'POSTGRES_PASSWORD: "{{ mpmx_postgres_password }}"'
|
||||
volumes:
|
||||
- "postgres_15_data:/var/lib/postgresql/data"
|
||||
networks:
|
||||
- "back-tier"
|
||||
- name: "{{ postgres_id }}-16"
|
||||
image_name: "postgres"
|
||||
image_version: "16"
|
||||
environment:
|
||||
- 'POSTGRES_DB: "{{ mpmx_postgres_database }}"'
|
||||
- 'POSTGRES_USER: "{{ mpmx_postgres_username }}"'
|
||||
- 'POSTGRES_PASSWORD: "{{ mpmx_postgres_password }}"'
|
||||
volumes:
|
||||
- "postgres_16_data:/var/lib/postgresql/data"
|
||||
networks:
|
||||
- "back-tier"
|
||||
@ -0,0 +1 @@
|
||||
ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIDt4ZC9W+UE5iM7dreAbOe2Zt396J4FcU5+4mtSXi4xj klaus.muellner@netgo.de
|
||||
Loading…
Reference in New Issue