From 061ecf6365ff8d548de07b51e2b51020f475b464 Mon Sep 17 00:00:00 2001 From: Georg Lauterbach <44545919+georglauterbach@users.noreply.github.com> Date: Sat, 11 Sep 2021 00:49:39 +0200 Subject: [PATCH] Introduce issue forms and update debug output for forms (#2160) * chore(issue forms): introduce issue forms and update debug output * update links to our code of conduct * added double-check mechanism * Update .github/ISSUE_TEMPLATE/bug_report_form.yml Co-authored-by: William Desportes Co-authored-by: Frederic Werner <20406381+wernerfred@users.noreply.github.com> Co-authored-by: Brennan Kinney <5098581+polarathene@users.noreply.github.com> Co-authored-by: Casper --- .github/ISSUE_TEMPLATE/bug_report.md | 82 --------- .github/ISSUE_TEMPLATE/bug_report.yml | 243 ++++++++++++++++++++++++++ .github/ISSUE_TEMPLATE/config.yml | 4 - target/bin/print-environment | 7 + target/scripts/start-mailserver.sh | 3 +- 5 files changed, 251 insertions(+), 88 deletions(-) delete mode 100644 .github/ISSUE_TEMPLATE/bug_report.md create mode 100644 .github/ISSUE_TEMPLATE/bug_report.yml create mode 100644 target/bin/print-environment diff --git a/.github/ISSUE_TEMPLATE/bug_report.md b/.github/ISSUE_TEMPLATE/bug_report.md deleted file mode 100644 index c54d02aa..00000000 --- a/.github/ISSUE_TEMPLATE/bug_report.md +++ /dev/null @@ -1,82 +0,0 @@ ---- -name: "\U0001F41E Bug report" -about: Create a report about a reproducible bug -title: "[BUG]" -labels: kind/bug, meta/needs triage, priority/medium -assignees: "" ---- - - - -# Bug Report - -## Context - - - -### What is affected by this bug? - -### When does this occur? - -### How do we replicate the issue? - -1. -2. -3. -4. - -## Behavior - -### Actual Behavior - -### Expected Behavior - -## Your Environment - - - -- version: `v` -- available RAM: `GB` -- Docker version: `v` -- docker-compose version: `v` - -### Environment Variables - -```CFG - -``` - -### Relevant Stack Traces - - - -```BASH -# BEGIN - -# END -``` diff --git a/.github/ISSUE_TEMPLATE/bug_report.yml b/.github/ISSUE_TEMPLATE/bug_report.yml new file mode 100644 index 00000000..4b0f9b8d --- /dev/null +++ b/.github/ISSUE_TEMPLATE/bug_report.yml @@ -0,0 +1,243 @@ +name: Bug report +description: File a bug report +title: "[BUG] " +labels: + - kind/bug + - meta/needs triage + - priority/medium + +body: + - type: markdown + attributes: + value: | + # Filing a report + + Thank you for participating in this project and reporting a bug. Docker Mail Server (DMS) is a community-driven project, and each contribution counts. + + Please **fill out all the fields and checkboxes of this form** to make it easier for maintainers to understand the problem and to solve it. The maintainers and moderators are volunteers that need you to fill this template with accurate informations in order to help you in the best and quickest way. We will have to label your request with `meta/no template - no support` if your request is sloppy and provides no way to help you correctly. + + **Make sure** you read through the whole [README](https://github.com/docker-mailserver/docker-mailserver/blob/master/README.md), the [documentation](https://docker-mailserver.github.io/docker-mailserver/edge/) and the [issue tracker](https://github.com/docker-mailserver/docker-mailserver/issues?q=is%3Aissue) before opening a new bug report. + + ## Levels of support + + We provide official support for + + 1. OS/ARCH: Linux on amd64/x86_64 or ARMv7 or ARM64 + 2. Containerization platform: Docker and Docker Compose (i.e. based on Docker Engine) + + Other configurations are not officially supported, but there are maintainers that may be able to help you. This is the case for + + 1. OS/ARCH: macOS + 2. Containerization platform: Kubernetes (K8s) + + Support for these cases is dependent on specific maintainers, and these cases are marked with `not officially supported`. All other cases are not supported and there are very likely no maintainers that can help you. These cases are marked with `unsupported`. + - type: checkboxes + id: miscellaneous-first-checks + attributes: + label: Miscellaneous first checks + description: Please read these carefully. + options: + - label: I checked that all ports are open and not blocked by my ISP / hosting provider. + required: true + - label: I know that SSL errors are likely the result of a wrong setup on the user side and not caused by DMS itself. I'm confident my setup is correct. + required: true + - type: input + id: affected-components + attributes: + label: Affected Component(s) + description: What is affected by this bug? Please describe it with only a few words here. Detailed description can be given later. + placeholder: No debug output is shown. + validations: + required: true + - type: textarea + id: when-does-it-occur + attributes: + label: What happened and when does this occur? + description: Tell us what happened. Use [fenced code blocks](https://docs.github.com/en/github/writing-on-github/working-with-advanced-formatting/creating-and-highlighting-code-blocks#fenced-code-blocks) when pasting lots of text! + placeholder: Although `DMS_DEBUG=1` is set, I see no debug output. + render: Markdown + validations: + required: true + - type: textarea + id: what-did-you-expect-to-happen + attributes: + label: What did you expect to happen? + description: Tell us what you expected. + placeholder: I expected to see debug messages. + render: Markdown + validations: + required: true + - type: textarea + id: how-do-we-replicate-this-issue + attributes: + label: How do we replicate the issue? + description: What did you do and how can we replicate this issue? + value: | + 1. + 2. + 3. + ... + render: Markdown + validations: + required: true + - type: input + id: mailserver-version + attributes: + label: DMS version + description: On which version (image tag) did you encounter this bug? + placeholder: v10.1.2 + validations: + required: true + - type: dropdown + id: main-memory + attributes: + label: How much RAM is available to DMS explicitly? + description: Please provide the amount of memory that DMS can really use. This includes physical memory (RAM), but also virtual memory (like swap or zram). Consider any resource limits you may have set that would affect this. + options: + - less than 1GB (very low) + - less than 2GB + - less than 4GB + - more than 4GB + validations: + required: true + - type: dropdown + id: cpu-count + attributes: + label: How many CPU cores are available? + description: How many CPU cores can DMS use? Consider any resource limits you may have set that would affect this. + options: + - less than 1 Core + - less than 2 Cores + - less than 4 Cores + - more than 4 Cores + validations: + required: true + - type: dropdown + id: system-type + attributes: + label: Is DMS running in a virtualized environment? + description: Choose the option that your setup is the most similar to. DMS is running on... + options: + - ... a physical host (with real, physical CPU cores, i.e. bare metal) + - ... a virtual dedicated server (VDS) (with real, physical cores) + - ... a virtual private server (VPS) (with virtual CPU cores) + validations: + required: true + - type: dropdown + id: operating-system + attributes: + label: What operating system is DMS running on? + options: + - Linux + - macOS (not officially supported) + - Windows (unsupported) + - Other (unsupported) + validations: + required: true + - type: dropdown + id: isa + attributes: + label: What instruction set architecture is DMS running on? + options: + - x86_64 / AMD64 + - ARM64 / ARM v8 (and newer) + - ARM v7 + - Other (unsupported) + validations: + required: true + - type: input + id: persistent-memory + attributes: + label: I/O - Persistent memory + description: As we had problems with I/O and slow disks in the past, please provide a _short_ description of the underlying persistent memory architecture. Especially the file system is of interest. + placeholder: Docker bind-mount from local EXT4 storage + validations: + required: true + - type: dropdown + id: container-orchestrator + attributes: + label: What container orchestration tool are you using? + options: + - Docker + - Docker Compose + - Podman (not officially supported) + - Kubernetes (not officially supported) + - Other (unsupported) + validations: + required: true + - type: input + id: docker-version + attributes: + label: Docker version + description: If you're using Docker, please show us the output of `docker --version` on the host running your DMS container. _Note that maintainers primarily provide support for Docker Engine only (users of `docker` and `docker-compose`)._ + placeholder: Docker version 20.10.7, build f0df350 + validations: + required: false + - type: input + id: docker-compose-version + attributes: + label: Docker Compose version + description: If you're using Docker Compose, please show us the output of `docker-compose --version` on the host running your DMS container. _Note that maintainers primarily provide support for Docker Engine only (users of `docker` and `docker-compose`)._ + placeholder: docker-compose version 1.28.6, build 5db8d86f + validations: + required: false + - type: input + id: uname-a + attributes: + label: The output of `uname -a` + description: Please paste the output of `uname -a` here. If you're unable to do so (maybe because you're on Windows), tell us the reason here. + placeholder: Linux swift 5.11.0-31-generic \#33-Ubuntu SMP Wed Aug 11 13:19:04 UTC 2021 x86_64 x86_64 x86_64 GNU/Linux + validations: + required: true + - type: textarea + id: important-environment-variables + attributes: + label: Important environment variables + description: If there are environment variables important to this issue, please post them here. If we ask for the values of variables, make sure to put them in here too. + render: bash + - type: textarea + id: relevant-log-output + attributes: + label: Relevant log output + description: Show us relevant log output here. You can enable debug output by setting the environment variable `DMS_DEBUG` to `1`. + render: shell + - type: textarea + id: other-relevant-information + attributes: + label: Other relevant information + description: If there is more, you can tell us here. Make sure to use Markdown formatting here. + render: Markdown + - type: dropdown + id: experience + attributes: + label: What level of experience do you have with Docker and mail servers? + description: > + **You are not obliged to answer this question**. + We do encourage answering though as it provides context to better assist you. + Less experienced users tend to make common mistakes, which is ok; by letting us know we can spot those more easily. + For the more experienced, we can skip ahead and communicate more effectively to resolve the issue ASAP. + options: + - I have no idea what I'm doing! [beginner] + - I know the basics, I've used Docker before [novice] + - I'm comfortable with Docker / containers, but I'm relatively new to all this mail stuff + - I have experience with mail servers, but less experience working with containers + - I know both pretty well actually [experienced] + - Trust me, I'm a (computer) engineer! [expert] + validations: + required: false + - type: checkboxes + id: terms-code-of-conduct + attributes: + label: Code of conduct + description: By submitting this issue, you agree to follow [our code of conduct](https://github.com/docker-mailserver/docker-mailserver/blob/master/CODE_OF_CONDUCT.md). + options: + - label: I have read this project's [Code of Conduct](https://github.com/docker-mailserver/docker-mailserver/blob/master/CODE_OF_CONDUCT.md) and I agree + required: true + - label: I have read the [README](https://github.com/docker-mailserver/docker-mailserver/blob/master/README.md) and the [documentation](https://docker-mailserver.github.io/docker-mailserver/edge/) and I searched the [issue tracker](https://github.com/docker-mailserver/docker-mailserver/issues?q=is%3Aissue) but could not find a solution + required: true + - type: textarea + id: form-improvements + attributes: + label: Improvements to this form? + description: If you have criticism or general feedback about this issue form, feel free to tell us so we can enhance the experience for everyone. + render: Markdown diff --git a/.github/ISSUE_TEMPLATE/config.yml b/.github/ISSUE_TEMPLATE/config.yml index 0091c97d..c1efca2e 100644 --- a/.github/ISSUE_TEMPLATE/config.yml +++ b/.github/ISSUE_TEMPLATE/config.yml @@ -1,13 +1,9 @@ -# disables the possibility to choose blank issues blank_issues_enabled: false contact_links: - name: Documentation url: https://docker-mailserver.github.io/docker-mailserver/edge about: Extended documentaton - visit this first before opening issues - - name: Default Documentation - url: https://github.com/docker-mailserver/docker-mailserver/blob/master/README.md - about: Read this first and carefully - name: Environment Variables Section url: https://docker-mailserver.github.io/docker-mailserver/edge/config/environment/ about: Read this section for information about mail server variables diff --git a/target/bin/print-environment b/target/bin/print-environment new file mode 100644 index 00000000..062c4622 --- /dev/null +++ b/target/bin/print-environment @@ -0,0 +1,7 @@ +#! /bin/bash + +# shellcheck source=../scripts/helper-functions.sh +. /usr/local/bin/helper-functions.sh + +_notify 'inf' 'Printing environment variables. Make sure no sensitive data is copied.' +grep ^export /root/.bashrc | sed 's|export ||' diff --git a/target/scripts/start-mailserver.sh b/target/scripts/start-mailserver.sh index 5fc9b1e9..160403ba 100755 --- a/target/scripts/start-mailserver.sh +++ b/target/scripts/start-mailserver.sh @@ -256,12 +256,11 @@ function _defunc # ------------------------------------------------------------ _notify 'tasklog' "Welcome to docker-mailserver $(