Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
22 commits
Select commit Hold shift + click to select a range
e7a499c
enable: wpb-17321 refactor and fixes for wiab-demo, added all changes…
mohitrajain Nov 18, 2025
9476a68
fix: create a new tag for wire_secrets and handle errors from zauth …
mohitrajain Nov 25, 2025
cf86db9
fix wpb-17321: made wire_secrets playbook idempotent
mohitrajain Nov 26, 2025
e2c94c6
fix wpb-17321: handle wire-utility deploy issues and update documenta…
mohitrajain Nov 26, 2025
d423872
Update changelog.d/3-deploy-builds/demo-wiab-ansible-fixes
mohitrajain Nov 26, 2025
0f8af37
Update changelog.d/3-deploy-builds/demo-wiab-ansible-fixes
mohitrajain Nov 26, 2025
f64c7bb
fix wpb-17321: parameterize y-go version in install_pkgs playbook
mohitrajain Nov 26, 2025
f09c603
fix wpb-17321: change http check to netcat based check in hairpin net…
mohitrajain Nov 27, 2025
318d8d1
fix wpb-17321: refactor offline_deploy_k8s.sh to work with envs and u…
mohitrajain Nov 27, 2025
5646be5
fix wpb-17321: refactor wire_secrets to be idempotent and move all se…
mohitrajain Nov 27, 2025
9b22b12
fix wpb-17321: when conditions in deploy_wiab to better manage common…
mohitrajain Nov 27, 2025
1a026a1
fix wpb-17321: cert-manager deploy control with cert_manager_networki…
mohitrajain Nov 27, 2025
8467037
fix wpb-17321: update the documentation for demo-wiab
mohitrajain Nov 27, 2025
b7585dd
fix wpb-17321: added minio secrets in demo-values and removed extra B…
mohitrajain Nov 28, 2025
262a219
fix wpb-17321: move away from yq-go to ansible native yaml updates an…
mohitrajain Nov 28, 2025
f3f56c7
fix wpb-17321: fix basc script suggestions from sonarcloud
mohitrajain Nov 28, 2025
3fcf0f0
fix wpb-17321: fix wire_secrets for cargohold
mohitrajain Dec 1, 2025
38fb265
fix wpb-17321: fix wire_secrets for fake-aws-s3
mohitrajain Dec 1, 2025
85752e0
fix wpb-17321: fix clean_cluster permissions
mohitrajain Dec 2, 2025
6793606
fix: wpb-17321 add coturn empty values file, ignore the download task…
mohitrajain Dec 2, 2025
d4f3728
fix: wpb-17321 fix wire_secrets for non-prepared secrets, fixed flow …
mohitrajain Dec 2, 2025
d9a7f25
Wpb 17321 enable demo cd (#828)
mohitrajain Dec 3, 2025
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 2 additions & 0 deletions .github/workflows/deploy-wiab.yml
Original file line number Diff line number Diff line change
@@ -1,3 +1,5 @@
# This playbook is not-up-to-date, requires to be updated to match with current developments
# A new WIAB (wire in a box) dev solution has been created https://docs.wire.com/latest/how-to/install/demo-wiab.html and can be used until this (wiab-staging) gets updated
name: Deploy on Hetzner WIAB setup
on:
workflow_run:
Expand Down
17 changes: 17 additions & 0 deletions .github/workflows/offline.yml
Original file line number Diff line number Diff line change
Expand Up @@ -201,6 +201,23 @@ jobs:
AWS_SECRET_ACCESS_KEY: "${{ secrets.AWS_SECRET_ACCESS_KEY }}"
AWS_REGION: "eu-west-1"

- name: Install terraform
uses: hashicorp/setup-terraform@v3
with:
terraform_version: "^1.3.7"
terraform_wrapper: false

- name: Deploy offline demo-wiab environment to hetzner
run: ./offline/cd_demo.sh
env:
HCLOUD_TOKEN: '${{ secrets.HCLOUD_TOKEN }}'

- name: Clean up hetzner wiab environment; just in case
if: always()
run: (cd terraform/examples/wiab-demo-hetzner ; terraform init && terraform destroy -auto-approve)
env:
HCLOUD_TOKEN: '${{ secrets.HCLOUD_TOKEN }}'

- name: Cleanup demo build assets
run: rm -rf offline/demo-build/output/

Expand Down
2 changes: 2 additions & 0 deletions ansible/hetzner-single-deploy.yml
Original file line number Diff line number Diff line change
@@ -1,3 +1,5 @@
# This playbook is not-up-to-date, requires to be updated to match with current developments
# A new WIAB (wire in a box) dev solution has been created https://docs.wire.com/latest/how-to/install/demo-wiab.html and can be used until this (wiab-staging) gets updated
- hosts: all
become: true
vars:
Expand Down
11 changes: 7 additions & 4 deletions ansible/inventory/demo/host.yml
Original file line number Diff line number Diff line change
@@ -1,8 +1,9 @@

wiab:
hosts:
deploy_node:
ansible_host: example.com
ansible_ssh_common_args: '-o StrictHostKeyChecking=no -o UserKnownHostsFile=/dev/null'
ansible_ssh_common_args: '-o StrictHostKeyChecking=no -o UserKnownHostsFile=/dev/null -o ServerAliveInterval=60 -o ServerAliveCountMax=3 -o TCPKeepAlive=yes'
ansible_user: 'ubuntu'
ansible_ssh_private_key_file: "~/.ssh/wiab-demo.pem"

Expand All @@ -17,7 +18,7 @@ wiab:
wire_ip: ""

# artifact_hash
artifact_hash: "89e4fa122e6ddba9df2f81612de1ee45ec2238b3"
artifact_hash: "8e5087a0d9c58a9bd34c6c02f87514abe8b3ce0e"

# docker vars
docker_ce_version: "5:28.1.1-1~ubuntu.24.04~noble"
Expand Down Expand Up @@ -47,14 +48,16 @@ wiab:
# list of helm charts to deploy
charts_to_deploy:
- fake-aws
- demo-smtp
- smtp
- rabbitmq
- databases-ephemeral
- postgresql # postgresql chart should be deployed before deploying wire-server
- reaper
- smallstep-accomp
- kube-prometheus-stack
- wire-server
- webapp
- account-pages
- team-settings
- smallstep-accomp
- ingress-nginx-controller
- nginx-ingress-services
35 changes: 17 additions & 18 deletions ansible/wiab-demo/clean_cluster.yml
Original file line number Diff line number Diff line change
@@ -1,10 +1,9 @@
- name: Clean the installation
hosts: deploy_node
become: yes
tasks:
# stopping the cluster defined in minikube_cluster playbook
- name: clean minikube
become_user: "{{ ansible_user }}"
tags: [never, remove_minikube]
block:
- name: Check if Minikube is running
shell: minikube status --profile="{{ minikube_profile }}"
Expand All @@ -22,11 +21,11 @@
minikube delete --profile="{{ minikube_profile }}"
when: "'Running' in minikube_status.stdout"

when: "remove_minikube is defined and remove_minikube | bool"

# following packages were installed in install_pkgs playbook
# these packages can only be removed post stopping the minikube cluster
- name: remove packages
tags: [never, remove_packages]
become: yes
block:
- name: Remove Minikube
file:
Expand Down Expand Up @@ -75,11 +74,11 @@
apt:
update_cache: yes

when: (uninstall_pkgs | default(false) | bool) and (remove_minikube | default(false) | bool)

# remove the iptables rules defined by iptables_rules playbook
# it makes sense to remove them when removing the k8s cluster or individually to clean them
- name: remove iptables rules
tags: [never, remove_iptables]
become: yes
vars:
iptables_rules_comment: "Wire Iptables Rules"
iptables_save_dir: "/home/{{ ansible_user }}/wire-iptables-rules"
Expand Down Expand Up @@ -135,28 +134,30 @@
- "{{ iptables_save_dir }}/rules_post_wire.v4"
- "{{ iptables_save_dir }}"

when: (remove_iptables | default(false) | bool) or (remove_minikube | default(false) | bool)

- name: Remove ssh keys
tags: [never, remove_ssh]
become_user: "{{ ansible_user }}"
block:
- name: Remove SSH key if it exist
shell: |
if [ -f "/home/{{ ansible_user }}/.ssh/id_rsa_wire" ]; then
rm "/home/{{ ansible_user }}/.ssh/id_rsa_wire"
if [ -f "{{ ansible_user_dir }}/.ssh/id_rsa_wire" ]; then
rm "{{ ansible_user_dir }}/.ssh/id_rsa_wire"
fi
when: "remove_ssh is defined and remove_ssh | bool"


- name: remove the downloaded artifacts
tags: [never, remove_artifacts]
file:
path: "{{ item }}"
state: absent
loop:
- "/home/{{ ansible_user }}/wire-server-deploy"
- "/home/{{ ansible_user }}/wire-server-deploy-static-demo-{{ artifact_hash }}.tgz"
- "/home/{{ ansible_user }}/wire_ip"
when: "remove_artifacts is defined and remove_artifacts | bool"
- "{{ ansible_user_dir }}/wire-server-deploy"
- "{{ ansible_user_dir }}/wire-server-deploy-static-demo-{{ artifact_hash }}.tgz"
- "{{ ansible_user_dir }}/wire_ip"
- "{{ ansible_user_dir }}/wire_secrets"

- name: clean asset_host artifacts and remove service
tags: [never, clean_assethost]
become: yes
block:
- name: Stop and disable serve-assets systemd service
systemd:
Expand All @@ -178,5 +179,3 @@
file:
path: /opt/assets/containers-helm
state: absent

when: "clean_assethost is defined and clean_assethost | bool"
Loading