git subrepo commit mailcow/src/mailcow-dockerized
subrepo: subdir: "mailcow/src/mailcow-dockerized"
merged: "308860af"
upstream: origin: "https://github.com/mailcow/mailcow-dockerized.git"
branch: "master"
commit: "3f1a5af8"
git-subrepo: version: "0.4.5"
origin: "???"
commit: "???"
Change-Id: I5d51c14b45db54fe706be40a591ddbfcea50d4b0
diff --git a/mailcow/src/mailcow-dockerized/.github/workflows/integration_tests.yml b/mailcow/src/mailcow-dockerized/.github/workflows/integration_tests.yml
new file mode 100644
index 0000000..ee083bf
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/.github/workflows/integration_tests.yml
@@ -0,0 +1,63 @@
+name: mailcow Integration Tests
+
+on:
+ push:
+ branches: [ "master", "staging" ]
+ workflow_dispatch:
+
+permissions:
+ contents: read
+
+jobs:
+ integration_tests:
+ runs-on: ubuntu-latest
+ steps:
+ - name: Setup Ansible
+ run: |
+ export DEBIAN_FRONTEND=noninteractive
+ sudo apt-get update
+ sudo apt-get install python3 python3-pip git
+ sudo pip3 install ansible
+ - name: Prepair Test Environment
+ run: |
+ git clone https://github.com/mailcow/mailcow-integration-tests.git --branch $(curl -sL https://api.github.com/repos/mailcow/mailcow-integration-tests/releases/latest | jq -r '.tag_name') --single-branch .
+ ./fork_check.sh
+ ./ci.sh
+ ./ci-pip-requirements.sh
+ env:
+ VAULT_PW: ${{ secrets.MAILCOW_TESTS_VAULT_PW }}
+ VAULT_FILE: ${{ secrets.MAILCOW_TESTS_VAULT_FILE }}
+ - name: Start Integration Test Server
+ run: |
+ ./fork_check.sh
+ ansible-playbook mailcow-start-server.yml --diff
+ env:
+ PY_COLORS: '1'
+ ANSIBLE_FORCE_COLOR: '1'
+ ANSIBLE_HOST_KEY_CHECKING: 'false'
+ - name: Setup Integration Test Server
+ run: |
+ ./fork_check.sh
+ sleep 30
+ ansible-playbook mailcow-setup-server.yml --private-key id_ssh_rsa --diff
+ env:
+ PY_COLORS: '1'
+ ANSIBLE_FORCE_COLOR: '1'
+ ANSIBLE_HOST_KEY_CHECKING: 'false'
+ - name: Run Integration Tests
+ run: |
+ ./fork_check.sh
+ ansible-playbook mailcow-integration-tests.yml --private-key id_ssh_rsa --diff
+ env:
+ PY_COLORS: '1'
+ ANSIBLE_FORCE_COLOR: '1'
+ ANSIBLE_HOST_KEY_CHECKING: 'false'
+ - name: Delete Integration Test Server
+ if: always()
+ run: |
+ ./fork_check.sh
+ ansible-playbook mailcow-delete-server.yml --diff
+ env:
+ PY_COLORS: '1'
+ ANSIBLE_FORCE_COLOR: '1'
+ ANSIBLE_HOST_KEY_CHECKING: 'false'