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/FUNDING.yml b/mailcow/src/mailcow-dockerized/.github/FUNDING.yml
index befe7db..1140212 100644
--- a/mailcow/src/mailcow-dockerized/.github/FUNDING.yml
+++ b/mailcow/src/mailcow-dockerized/.github/FUNDING.yml
@@ -1 +1 @@
-custom: https://mailcow.github.io/mailcow-dockerized-docs/#help-mailcow
+custom: ["https://www.servercow.de/mailcow?lang=en#sal"]
diff --git a/mailcow/src/mailcow-dockerized/.github/ISSUE_TEMPLATE/Bug_report.md b/mailcow/src/mailcow-dockerized/.github/ISSUE_TEMPLATE/Bug_report.md
deleted file mode 100644
index 6e39c4c..0000000
--- a/mailcow/src/mailcow-dockerized/.github/ISSUE_TEMPLATE/Bug_report.md
+++ /dev/null
@@ -1,60 +0,0 @@
----
-name: 🐞 Bug Report
-about: Report a reproducible bug for mailcow. (NOT to be used for support questions.)
-labels: bug
----
-
-<!--
-  Please DO NOT delete this template or use it for support questions.
-  You are welcome to visit us on our community channels listed at https://mailcow.github.io/mailcow-dockerized-docs/#community-support
-  For official support, please check https://mailcow.github.io/mailcow-dockerized-docs/#commercial-support
--->
-
-**Prior to placing the issue, please check following:** *(fill out each checkbox with an `X` once done)*
-- [ ] I understand that not following or deleting the below instructions will result in immediate closure and/or deletion of my issue.
-- [ ] I have understood that this bug report is dedicated for bugs, and not for support-related inquiries.
-- [ ] I have understood that answers are voluntary and community-driven, and not commercial support.
-- [ ] I have verified that my issue has not been already answered in the past. I also checked previous [issues](https://github.com/mailcow/mailcow-dockerized/issues).
-
-## Summary
-<!--
-  This should be a clear and concise description of what the bug is. What EXACTLY does happen?
-  If applicable, add screenshots to help explain your problem. Very useful for bugs in mailcow UI.
-  Write your detailed description below.
-
-  Also mention on which commit/date your mailcow instance was last updated.
--->
-
-## Logs
-<!--
-  Please take a look at the [official documentation](https://mailcow.github.io/mailcow-dockerized-docs/debug-logs/) and post the last
-  few lines of logs, when the error occurs. For example, docker container logs of affected containers.
--->
-
-## Reproduction
-<!--
-  It is really helpful to know how exactly you are able to reproduce the reported issue.
-  Have you tried to fix the issue? What did you try?
-  What are the exact steps to get the above described behavior?
-  Screenshots can be added, if helpful. Add the text below.
--->
-
-## System information
-<!--
-  In this stage we would kindly ask you to attach general system information about your setup.
-  Please carefully read the questions and instructions below.
--->
-
-| Question | Answer |
-| --- | --- |
-| My operating system | I_DO_REPLY_HERE |
-| Is Apparmor, SELinux or similar active? | I_DO_REPLY_HERE |
-| Virtualization technlogy (KVM, VMware, Xen, etc - **LXC and OpenVZ are not supported** | I_DO_REPLY_HERE |
-| Server/VM specifications (Memory, CPU Cores) | I_DO_REPLY_HERE |
-| Docker Version (`docker version`) | I_DO_REPLY_HERE |
-| Docker-Compose Version (`docker-compose version`) | I_DO_REPLY_HERE |
-| Reverse proxy (custom solution) | I_DO_REPLY_HERE |
-
-- Output of `git diff origin/master`, any other changes to the code? If so, **please post them**.
-- All third-party firewalls and custom iptables rules are unsupported. *Please check the Docker docs about how to use Docker with your own ruleset*. Nevertheless, iptabels output can help us to help you: `iptables -L -vn`, `ip6tables -L -vn`, `iptables -L -vn -t nat` and `ip6tables -L -vn -t nat`.
-- DNS problems? Please run `docker exec -it $(docker ps -qf name=acme-mailcow) dig +short stackoverflow.com @172.22.1.254` (set the IP accordingly, if you changed the internal mailcow network) and post the output.
diff --git a/mailcow/src/mailcow-dockerized/.github/ISSUE_TEMPLATE/Bug_report.yml b/mailcow/src/mailcow-dockerized/.github/ISSUE_TEMPLATE/Bug_report.yml
new file mode 100644
index 0000000..3cfbbe0
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/.github/ISSUE_TEMPLATE/Bug_report.yml
@@ -0,0 +1,157 @@
+name: 🐞 Bug Report
+description: Report a reproducible bug for mailcow. (NOT to be used for support questions.)
+labels: ["bug"]
+body:
+  - type: checkboxes
+    attributes:
+      label: Contribution guidelines
+      description: Please read the contribution guidelines before proceeding.
+      options:
+      - label: I've read the [contribution guidelines](https://github.com/mailcow/mailcow-dockerized/blob/master/CONTRIBUTING.md) and wholeheartedly agree
+        required: true
+  - type: checkboxes
+    attributes:
+      label: I've found a bug and checked that ...
+      description: Prior to placing the issue, please check following:** *(fill out each checkbox with an `X` once done)*
+      options:
+      - label: ... I understand that not following the below instructions will result in immediate closure and/or deletion of my issue.
+        required: true
+      - label: ... I have understood that this bug report is dedicated for bugs, and not for support-related inquiries.
+        required: true
+      - label: ... I have understood that answers are voluntary and community-driven, and not commercial support.
+        required: true
+      - label: ... I have verified that my issue has not been already answered in the past. I also checked previous [issues](https://github.com/mailcow/mailcow-dockerized/issues).
+        required: true
+  - type: textarea
+    attributes:
+      label: Description
+      description: Please provide a brief description of the bug in 1-2 sentences. If applicable, add screenshots to help explain your problem. Very useful for bugs in mailcow UI.
+      render: plain text
+    validations:
+      required: true
+  - type: textarea
+    attributes:
+      label: "Logs:"
+      description: "Please take a look at the [official documentation](https://docs.mailcow.email/troubleshooting/debug-logs/) and post the last few lines of logs, when the error occurs. For example, docker container logs of affected containers. This will be automatically formatted into code, so no need for backticks."
+      render: plain text
+    validations:
+      required: true
+  - type: textarea
+    attributes:
+      label: "Steps to reproduce:"
+      description: "Please describe the steps to reproduce the bug. Screenshots can be added, if helpful."
+      render: plain text
+      placeholder: |-
+        1. ...
+        2. ...
+        3. ...
+    validations:
+      required: true
+  - type: markdown
+    attributes:
+      value: |
+        ## System information
+        ### In this stage we would kindly ask you to attach general system information about your setup.
+  - type: dropdown
+    attributes:
+      label: "Which branch are you using?"
+      description: "#### `git rev-parse --abbrev-ref HEAD`"
+      multiple: false
+      options:
+        - master
+        - nightly
+    validations:
+      required: true
+  - type: input
+    attributes:
+      label: "Operating System:"
+      placeholder: "e.g. Ubuntu 22.04 LTS"
+    validations:
+      required: true
+  - type: input
+    attributes:
+      label: "Server/VM specifications:"
+      placeholder: "Memory, CPU Cores"
+    validations:
+      required: true
+  - type: input
+    attributes:
+      label: "Is Apparmor, SELinux or similar active?"
+      placeholder: "yes/no"
+    validations:
+      required: true
+  - type: input
+    attributes:
+      label: "Virtualization technology:"
+      placeholder: "KVM, VMware, Xen, etc - **LXC and OpenVZ are not supported**"
+    validations:
+      required: true
+  - type: input
+    attributes:
+      label: "Docker version:"
+      description: "#### `docker version`"
+      placeholder: "20.10.21"
+    validations:
+      required: true
+  - type: input
+    attributes:
+      label: "docker-compose version or docker compose version:"
+      description: "#### `docker-compose version` or `docker compose version`"
+      placeholder: "v2.12.2"
+    validations:
+      required: true
+  - type: input
+    attributes:
+      label: "mailcow version:"
+      description: "#### ```git describe --tags `git rev-list --tags --max-count=1` ```"
+      placeholder: "2022-08"
+    validations:
+      required: true
+  - type: input
+    attributes:
+      label: "Reverse proxy:"
+      placeholder: "e.g. Nginx/Traefik"
+    validations:
+      required: true
+  - type: textarea
+    attributes:
+      label: "Logs of git diff:"
+      description: "#### Output of `git diff origin/master`, any other changes to the code? If so, **please post them**:"
+      render: plain text
+    validations:
+      required: true
+  - type: textarea
+    attributes:
+      label: "Logs of iptables -L -vn:"
+      description: "#### Output of `iptables -L -vn`"
+      render: plain text
+    validations:
+      required: true
+  - type: textarea
+    attributes:
+      label: "Logs of ip6tables -L -vn:"
+      description: "#### Output of `ip6tables -L -vn`"
+      render: plain text
+    validations:
+      required: true
+  - type: textarea
+    attributes:
+      label: "Logs of iptables -L -vn -t nat:"
+      description: "#### Output of `iptables -L -vn -t nat`"
+      render: plain text
+    validations:
+      required: true
+  - type: textarea
+    attributes:
+      label: "Logs of ip6tables -L -vn -t nat:"
+      description: "#### Output of `ip6tables -L -vn -t nat`"
+      render: plain text
+    validations:
+      required: true
+  - type: textarea
+    attributes:
+      label: "DNS check:"
+      description: "#### Output of `docker exec -it $(docker ps -qf name=acme-mailcow) dig +short stackoverflow.com @172.22.1.254` (set the IP accordingly, if you changed the internal mailcow network)"
+      render: plain text
+    validations:
+      required: true
diff --git a/mailcow/src/mailcow-dockerized/.github/ISSUE_TEMPLATE/Feature_request.md b/mailcow/src/mailcow-dockerized/.github/ISSUE_TEMPLATE/Feature_request.md
deleted file mode 100644
index 64ff9d3..0000000
--- a/mailcow/src/mailcow-dockerized/.github/ISSUE_TEMPLATE/Feature_request.md
+++ /dev/null
@@ -1,29 +0,0 @@
----
-name: 💡 Feature Request
-about: Suggest an idea for mailcow.
-labels: enhancement
----
-
-<!--
-  Please note that the mailcow team and its contributors do have finite
-  resources and that we can not work on all filed feature requests.
-
-  However making us aware about certain ideas can help us improving
-  mailcow together.
-  
-  We're also happy to help you getting a specific  feature implemented.
--->
-
-## Summary
-
-A clear and concise description of what the problem is.
-For example: I'm always frustrated when [...]
-
-## Motivation
-
-What are you about to solve or improve with this idea?
-What would be the benefit for most users?
-
-## Additional context
-
-Add any other context or screenshots about the feature request.
diff --git a/mailcow/src/mailcow-dockerized/.github/ISSUE_TEMPLATE/Feature_request.yml b/mailcow/src/mailcow-dockerized/.github/ISSUE_TEMPLATE/Feature_request.yml
new file mode 100644
index 0000000..39414f1
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/.github/ISSUE_TEMPLATE/Feature_request.yml
@@ -0,0 +1,20 @@
+name: 💡 Feature Request
+description: Suggest an idea for mailcow.
+labels: ["enhancement"]
+body:
+  - type: textarea
+    attributes:
+      label: Summary
+      description: Please describe your idea in a reasonable amount of detail.
+    validations:
+      required: true
+  - type: textarea
+    attributes:
+      label: Motivation
+      description: Please describe how your idea would benefit you and other users.
+    validations:
+      required: true
+  - type: textarea
+    attributes:
+      label: Additional context
+      description: Add any other context or screenshots about the feature request.
diff --git a/mailcow/src/mailcow-dockerized/.github/ISSUE_TEMPLATE/pr_to_nighty_template.yml b/mailcow/src/mailcow-dockerized/.github/ISSUE_TEMPLATE/pr_to_nighty_template.yml
new file mode 100644
index 0000000..8854ac9
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/.github/ISSUE_TEMPLATE/pr_to_nighty_template.yml
@@ -0,0 +1,13 @@
+## :memo:  Brief description
+<!-- Diff summary - START -->
+<!-- Diff summary - END -->
+
+
+## :computer:  Commits
+<!-- Diff commits - START -->
+<!-- Diff commits - END -->
+
+
+## :file_folder:  Modified files
+<!-- Diff files - START -->
+<!-- Diff files - END -->
diff --git a/mailcow/src/mailcow-dockerized/.github/renovate.json b/mailcow/src/mailcow-dockerized/.github/renovate.json
new file mode 100644
index 0000000..37962b2
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/.github/renovate.json
@@ -0,0 +1,13 @@
+{
+  "enabled": true,
+  "timezone": "Europe/Berlin",
+  "dependencyDashboard": false,
+  "dependencyDashboardTitle": "Renovate Dashboard",
+  "commitBody": "Signed-off-by: milkmaker <milkmaker@mailcow.de>",
+  "rebaseWhen": "auto",
+  "assignees": [
+    "@magiccc"
+  ],
+  "baseBranches": ["staging"],
+  "enabledManagers": ["github-actions"]
+}
diff --git a/mailcow/src/mailcow-dockerized/.github/workflows/assets/check_prs_if_on_staging.png b/mailcow/src/mailcow-dockerized/.github/workflows/assets/check_prs_if_on_staging.png
new file mode 100644
index 0000000..2e0fc7f
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/.github/workflows/assets/check_prs_if_on_staging.png
Binary files differ
diff --git a/mailcow/src/mailcow-dockerized/.github/workflows/check_prs_if_on_staging.yml b/mailcow/src/mailcow-dockerized/.github/workflows/check_prs_if_on_staging.yml
new file mode 100644
index 0000000..cb49ffb
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/.github/workflows/check_prs_if_on_staging.yml
@@ -0,0 +1,33 @@
+name: Check PRs if on staging
+on:
+    pull_request_target:
+      types: [opened, edited]
+permissions: {}
+
+jobs:
+  is_not_staging:
+    runs-on: ubuntu-latest
+    if: github.event.pull_request.base.ref != 'staging' #check if the target branch is not staging
+    steps:
+      - name: Send message
+        uses: thollander/actions-comment-pull-request@main
+        with:
+          GITHUB_TOKEN: ${{ secrets.CHECKIFPRISSTAGING_ACTION_PAT }}
+          message: |
+                   Thanks for contributing!
+
+                   I noticed that you didn't select `staging` as your base branch. Please change the base branch to `staging`.
+                   See the attached picture on how to change the base branch to `staging`:
+
+                   ![check_prs_if_on_staging.png](https://raw.githubusercontent.com/mailcow/mailcow-dockerized/master/.github/workflows/assets/check_prs_if_on_staging.png)
+
+      - name: Fail #we want to see failed checks in the PR
+        if: ${{ success() }} #set exit code to 1 even if commenting somehow failed
+        run: exit 1
+
+  is_staging:
+    runs-on: ubuntu-latest
+    if: github.event.pull_request.base.ref == 'staging' #check if the target branch is staging
+    steps:
+      - name: Success
+        run: exit 0
diff --git a/mailcow/src/mailcow-dockerized/.github/workflows/close_old_issues_and_prs.yml b/mailcow/src/mailcow-dockerized/.github/workflows/close_old_issues_and_prs.yml
index cfb3603..83a75d2 100644
--- a/mailcow/src/mailcow-dockerized/.github/workflows/close_old_issues_and_prs.yml
+++ b/mailcow/src/mailcow-dockerized/.github/workflows/close_old_issues_and_prs.yml
@@ -14,7 +14,7 @@
       pull-requests: write
     steps:
       - name: Mark/Close Stale Issues and Pull Requests 🗑️
-        uses: actions/stale@v4
+        uses: actions/stale@v6.0.1
         with:
           repo-token: ${{ secrets.STALE_ACTION_PAT }}
           days-before-stale: 60
@@ -25,10 +25,12 @@
           stale-pr-message: >
             This pull request has been automatically marked as stale because it has not had
             recent activity. It will be closed if no further activity occurs.
-          exempt-issue-labels: "pinned,security,enhancement,investigating"
-          exempt-pr-labels: "pinned,security,enhancement,investigating"
+          exempt-issue-labels: "pinned,security,enhancement,investigating,neverstale"
+          exempt-pr-labels: "pinned,security,enhancement,investigating,neverstale"
           stale-issue-label: "stale"
           stale-pr-label: "stale"
+          exempt-draft-pr: "true"
+          close-issue-reason: "not_planned"
           operations-per-run: "250"
           ascending: "true"
           #DRY-RUN
diff --git a/mailcow/src/mailcow-dockerized/.github/workflows/image_builds.yml b/mailcow/src/mailcow-dockerized/.github/workflows/image_builds.yml
new file mode 100644
index 0000000..65678df
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/.github/workflows/image_builds.yml
@@ -0,0 +1,43 @@
+name: Build mailcow Docker Images
+
+on:
+  push:
+    branches: [ "master", "staging" ]
+  workflow_dispatch:
+
+permissions:
+  contents: read # to fetch code (actions/checkout)
+
+jobs:
+  docker_image_builds:
+    strategy:
+      matrix:
+        images:
+          - "acme-mailcow"
+          - "clamd-mailcow"
+          - "dockerapi-mailcow"
+          - "dovecot-mailcow"
+          - "netfilter-mailcow"
+          - "olefy-mailcow"
+          - "php-fpm-mailcow"
+          - "postfix-mailcow"
+          - "rspamd-mailcow"
+          - "sogo-mailcow"
+          - "solr-mailcow"
+          - "unbound-mailcow"
+          - "watchdog-mailcow"
+    runs-on: ubuntu-latest
+    steps:
+      - uses: actions/checkout@v3
+      - name: Setup Docker
+        run: |
+          curl -sSL https://get.docker.com/ | CHANNEL=stable sudo sh
+          sudo service docker start
+      - name: Prepair Image Builds
+        run: |
+          cp helper-scripts/docker-compose.override.yml.d/BUILD_FLAGS/docker-compose.override.yml docker-compose.override.yml
+      - name: Build Docker Images
+        run: |
+          docker compose build ${image}
+        env:
+          image: ${{ matrix.images }}
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'
diff --git a/mailcow/src/mailcow-dockerized/.github/workflows/pr_to_nightly.yml b/mailcow/src/mailcow-dockerized/.github/workflows/pr_to_nightly.yml
new file mode 100644
index 0000000..54dbda3
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/.github/workflows/pr_to_nightly.yml
@@ -0,0 +1,25 @@
+name: Create PR to merge to nightly from staging
+on:
+  push:
+    branches:
+      - staging
+jobs:
+  action-pull-request:
+    runs-on: ubuntu-latest
+    steps:
+      - name: Checkout repository
+        uses: actions/checkout@v3
+        with:
+          fetch-depth: 0
+      - name: Run the Action
+        uses: devops-infra/action-pull-request@v0.5.3
+        with:
+          github_token: ${{ secrets.PRTONIGHTLY_ACTION_PAT }}
+          title: Automatic PR to nightly from ${{ github.event.repository.updated_at}}
+          assignee: DerLinkman
+          source_branch: staging
+          target_branch: nightly
+          reviewer: DerLinkman
+          label: upstream
+          template: .github/ISSUE_TEMPLATE/pr_to_nighty_template.yml
+          get_diff: true
diff --git a/mailcow/src/mailcow-dockerized/.github/workflows/rebuild_backup_image.yml b/mailcow/src/mailcow-dockerized/.github/workflows/rebuild_backup_image.yml
new file mode 100644
index 0000000..120d68d
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/.github/workflows/rebuild_backup_image.yml
@@ -0,0 +1,34 @@
+name: Build mailcow backup image
+
+on:
+  schedule:
+    # At 00:00 on Sunday
+    - cron: "0 0 * * 0"
+  workflow_dispatch: # Allow to run workflow manually
+
+jobs:
+  docker_image_build:
+    runs-on: ubuntu-latest
+    steps:
+      - name: Checkout
+        uses: actions/checkout@v3
+
+      - name: Set up QEMU
+        uses: docker/setup-qemu-action@v2
+
+      - name: Set up Docker Buildx
+        uses: docker/setup-buildx-action@v2
+
+      - name: Login to Docker Hub
+        uses: docker/login-action@v2
+        with:
+          username: ${{ secrets.BACKUPIMAGEBUILD_ACTION_DOCKERHUB_USERNAME }}
+          password: ${{ secrets.BACKUPIMAGEBUILD_ACTION_DOCKERHUB_TOKEN }}
+
+      - name: Build and push
+        uses: docker/build-push-action@v3
+        with:
+          context: .
+          file: data/Dockerfiles/backup/Dockerfile
+          push: true
+          tags: mailcow/backup:latest
diff --git a/mailcow/src/mailcow-dockerized/.github/workflows/tweet-trigger-publish-release.yml b/mailcow/src/mailcow-dockerized/.github/workflows/tweet-trigger-publish-release.yml
new file mode 100644
index 0000000..86cf628
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/.github/workflows/tweet-trigger-publish-release.yml
@@ -0,0 +1,20 @@
+name: "Tweet trigger release"
+on:
+  release:
+    types: [published]
+
+jobs:
+  tweet:
+    runs-on: ubuntu-latest
+    steps:
+      - name: "Get Release Tag"
+        run:  |
+          RELEASE_TAG=$(curl https://api.github.com/repos/mailcow/mailcow-dockerized/releases/latest | jq -r '.tag_name')
+      - name: Tweet-trigger-publish-release
+        uses: mugi111/tweet-trigger-release@v1.1
+        with:
+          consumer_key: ${{ secrets.CONSUMER_KEY }}
+          consumer_secret: ${{ secrets.CONSUMER_SECRET }}
+          access_token_key: ${{ secrets.ACCESS_TOKEN_KEY }}
+          access_token_secret: ${{ secrets.ACCESS_TOKEN_SECRET }}
+          tweet_body: 'A new mailcow update has just been released! Checkout the GitHub Page for changelog and more informations: https://github.com/mailcow/mailcow-dockerized/releases/latest'