From f1d2f8b4685ea446bbe685c5bbbaea75b5b1e9c6 Mon Sep 17 00:00:00 2001 From: Aetherinox Date: Sun, 1 Dec 2024 09:33:20 -0700 Subject: [PATCH] chore: update .github files --- .github/FUNDING.yml | 10 ++ .github/ISSUE_TEMPLATE/bug-report.yml | 109 +++++++++++++++++++++ .github/ISSUE_TEMPLATE/feature-request.yml | 33 +++++++ .github/PULL_REQUEST_TEMPLATE.md | 49 +++++++++ .github/changelog-configuration.json | 95 ++++++++++++++++++ .github/dependabot.yml | 39 ++++++++ .github/labeler.yml | 45 +++++++++ 7 files changed, 380 insertions(+) create mode 100644 .github/FUNDING.yml create mode 100644 .github/ISSUE_TEMPLATE/bug-report.yml create mode 100644 .github/ISSUE_TEMPLATE/feature-request.yml create mode 100644 .github/PULL_REQUEST_TEMPLATE.md create mode 100644 .github/changelog-configuration.json create mode 100644 .github/dependabot.yml create mode 100644 .github/labeler.yml diff --git a/.github/FUNDING.yml b/.github/FUNDING.yml new file mode 100644 index 00000000..3f50c735 --- /dev/null +++ b/.github/FUNDING.yml @@ -0,0 +1,10 @@ +custom: ["https://buymeacoffee.com/aetherinox"] +github: # [repo-name, aetherinox] +patreon: # Replace with a single Patreon username +open_collective: # name +ko_fi: # Replace with a single Ko-fi username +tidelift: # Replace with a single Tidelift platform-name/package-name e.g., npm/babel +community_bridge: # Replace with a single Community Bridge project-name e.g., cloud-foundry +liberapay: # Replace with a single Liberapay username +issuehunt: # Replace with a single IssueHunt username +otechie: # Replace with a single Otechie username \ No newline at end of file diff --git a/.github/ISSUE_TEMPLATE/bug-report.yml b/.github/ISSUE_TEMPLATE/bug-report.yml new file mode 100644 index 00000000..c75b6e56 --- /dev/null +++ b/.github/ISSUE_TEMPLATE/bug-report.yml @@ -0,0 +1,109 @@ +name: "๐Ÿ› Bug Report" +description: Found something you weren't expecting? Report it here! +title: "๐Ÿ› Bug: " +labels: [ + "Type โ—ฆ Bug" +] +body: + - type: markdown + attributes: + value: | + 1. Please speak `English`. + 2. Make sure you are using the latest version and take a moment to check that your issue hasn't been reported before. + 3. It's really important to provide pertinent details and logs, + incomplete details will be handled as an invalid report. + + <br /> + + - type: textarea + id: description + attributes: + label: Description + description: | + Please provide a description of your issue here. + validations: + required: true + + - type: textarea + id: steps-reproduce + attributes: + label: Steps To Reproduce + description: | + Describe the steps that need taken by the developer to get the error / issue you're experiencing. + value: | + - + - + - + - + validations: + required: true + + - type: input + id: version-thetvapp + attributes: + label: "Version - Tag" + description: | + Version / tag you are pulling for `thetvapp` + placeholder: "Ex: 1.0.0" + validations: + required: true + + - type: input + id: version-docker + attributes: + label: "Version - Docker" + description: "Version of docker you are running. Use command `docker --version`." + placeholder: "Ex: 27.2.0, build 3ab4256" + validations: + required: true + + - type: dropdown + id: image-source + attributes: + label: Docker Image Source + description: | + Select which docker image you are pulling from + options: + - "Github" + - "Dockerhub" + - "Custom Built" + validations: + required: true + + - type: dropdown + id: priority-type + attributes: + label: Priority + description: | + How critical is the issue? + Do not abuse this. Issues that completely break the utility would be classified as critical + options: + - "Low" + - "Normal" + - "High" + - "Urgent" + validations: + required: true + + - type: textarea + id: docker-compose + attributes: + label: docker-compose.yml + description: | + Copy / paste your `docker-compose.yml` file here + + - type: textarea + id: logs + attributes: + label: Logs + description: | + Paste your docker logs here. + Paste logs from inside mounted volume `/config/log/*` + + - type: textarea + id: screenshots + attributes: + label: Screenshots + description: | + Please provide screenshots of any errors or the issue you're having. + Gifs are even better. diff --git a/.github/ISSUE_TEMPLATE/feature-request.yml b/.github/ISSUE_TEMPLATE/feature-request.yml new file mode 100644 index 00000000..6edea9c0 --- /dev/null +++ b/.github/ISSUE_TEMPLATE/feature-request.yml @@ -0,0 +1,33 @@ +name: "๐Ÿ’ก Feature Request" +description: Got a suggestion? Submit your request here. +title: "๐Ÿ’ก Feature: <title>" +labels: [ + "Type โ—ฆ Feature" +] +body: + - type: markdown + attributes: + value: | + 1. Please speak English. + 2. Please take a moment to check that your feature hasn't already been suggested. + 3. Be detailed but to the point. + + - type: textarea + id: description + attributes: + label: Feature Description + placeholder: | + I would like to request ... + validations: + required: true + + - type: textarea + id: screenshots + attributes: + label: Screenshots + description: | + If possible, provide screenshots. + Want a feature placed in a specific location? Mark it in a screenshot. + Want something modified? Try creating a mockup. + The more details about how it should look, the better. + Not required, but appreciated. diff --git a/.github/PULL_REQUEST_TEMPLATE.md b/.github/PULL_REQUEST_TEMPLATE.md new file mode 100644 index 00000000..65b25132 --- /dev/null +++ b/.github/PULL_REQUEST_TEMPLATE.md @@ -0,0 +1,49 @@ +<!-- + + Pull Request + + Ensure you read all of the sections carefully. Failure to fill this form out will result in your pull request being closed. + + This text will remain hidden when you submit your pull request. + + For your pull request title, use the format: + [BUG]: Brief title of the bug being fixed + [FEATURE]: Brief title of the feature being added + + Failure to follow the above title format will result in your PR being ignored. + +--> + +# Pull Request +<small>Checkmark which topic best describes your contribution:</small> + +- [ ] Feature +- [ ] Bug +- [ ] Documentation / Wiki + +--- + +<!----------------------------------------------------------------------> +<br /> +<!----------------------------------------------------------------------> + + +### Description +<small>Explain here what your pull request includes and what you've done</small> + + +<!----------------------------------------------------------------------> +<br /> + +--- + +<br /> +<!----------------------------------------------------------------------> + +### Before You Submit +<small>Please ensure you check the following items to indicate that you've read this section and completed each task</small> + +- [ ] My code follows the [Contribution Guidelines](https://github.com/Aetherinox/thetvapp-docker/blob/main/CONTRIBUTING.md) +- [ ] I give expressed consent for my work to be used in this repo +- [ ] I have tested my work and it functions as intended +- [ ] I have included documentation if the change requires such diff --git a/.github/changelog-configuration.json b/.github/changelog-configuration.json new file mode 100644 index 00000000..1308884f --- /dev/null +++ b/.github/changelog-configuration.json @@ -0,0 +1,95 @@ +{ + "categories": [ + { + "title": "\n\n<br>\n\n#### ๐Ÿช› Continuous integration", + "labels": [ "kind/ci", "ci" ] + }, + { + "title": "\n\n<br>\n\n#### ๐Ÿš€ Features", + "labels": [ "kind/feature", "feature", "feat" ] + }, + { + "title": "\n\n<br>\n\n#### ๐Ÿ› Bugfixes", + "labels": [ "kind/bug", "fix", "bug" ] + }, + { + "title": "\n\n<br>\n\n#### ๐Ÿ”ง Changes", + "labels": [ "kind/chore", "change", "chore" ] + }, + { + "title": "\n\n<br>\n\nn#### โœจ Optimizations", + "labels": [ "kind/perf", "optimization", "perf", "optimize" ] + }, + { + "title": "\n\n<br>\n\n#### ๐Ÿšจ Security ", + "labels": [ "kind/security", "security" ] + }, + { + "title": "\n\n<br>\n\n#### ๐Ÿงน Housekeeping", + "labels": [ "kind/refactor", "refactor", "style" ] + }, + { + "title": "\n\n<br>\n\n#### ๐Ÿ’ Miscellaneous", + "labels": [ "kind/misc", "misc" ] + }, + { + "title": "\n\n<br>\n\n#### โ›” Deprecated", + "labels": [ "kind/deprecate", "deprecate" ] + }, + { + "title": "\n\n<br>\n\n#### โ›” Removed", + "labels": [ "kind/remove", "remove" ] + }, + { + "title": "\n\n<br>\n\n#### ๐Ÿ“ฆ Build & Dependencies", + "labels": [ "kind/build", "build", "dependency", "dep", "package" ] + }, + { + "title": "\n\n<br>\n\n#### โœ๏ธ Docs", + "labels": [ "kind/docs", "doc", "docs", "wiki" ] + }, + { + "title": "\n\n<br>\n\n#### ๐Ÿงช Tests & Demo Vault", + "labels": [ "kind/test", "test", "tests", "vault" ] + } + ], + "sort": "ASC", + "pr_template": "- ${{TITLE_ONLY}} : #{{MERGE_SHA}} @#{{AUTHOR}}", + "empty_template": "- No major changes to address in this release", + "custom_placeholders": [ + { + "name": "TITLE_ONLY", + "source": "TITLE", + "transformer": { + "method": "regexr", + "pattern": "(\\w+(\\(.+\\))?: ?)?(.+)", + "target": "$2 $3" + } + } + ], + "label_extractor": [ + { + "pattern": "^(build|ci|change|chore|doc|docs|wiki|remove|deprecate|security|dependency|dep|package|feat|feature|fix|bug|perf|optimize|optimization|refactor|style|test|tests|vault):(.*)", + "target": "$1", + "on_property": "title" + }, + { + "pattern": "^(build|ci|change|chore|doc|docs|wiki|remove|deprecate|security|dependency|dep|package|feat|feature|fix|bug|perf|optimize|optimization|refactor|style|test|tests|vault){1}(\\([\\w\\-\\.]+\\))?(!)?:(.*)", + "target": "$1", + "on_property": "title" + } + ], + "duplicate_filter": { + "pattern": "github.*", + "on_property": "author", + "method": "match" + }, + "max_tags_to_fetch": 200, + "max_pull_requests": 200, + "max_back_track_time_days": 365, + "exclude_merge_branches": [], + "tag_resolver": { + "method": "semver" + }, + "base_branches": [] +} diff --git a/.github/dependabot.yml b/.github/dependabot.yml new file mode 100644 index 00000000..692808b1 --- /dev/null +++ b/.github/dependabot.yml @@ -0,0 +1,39 @@ +# # +# MIT License +# +# Copyright (c) 2025 Aetherinox +# +# Permission is hereby granted, free of charge, to any person obtaining a copy +# of this software and associated documentation files (the "Software"), to deal +# in the Software without restriction, including without limitation the rights +# to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +# copies of the Software, and to permit persons to whom the Software is +# furnished to do so, subject to the following conditions: +# +# The above copyright notice and this permission notice shall be included in all +# copies or substantial portions of the Software. +# +# THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +# IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +# FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +# AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +# LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +# OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE +# SOFTWARE. +# # + +version: 2 +updates: +- package-ecosystem: npm + directory: "/" + schedule: + interval: daily + labels: + - "Type โ—ฆ Dependency" + +- package-ecosystem: "github-actions" + directory: "/" + schedule: + interval: "daily" + labels: + - "Type โ—ฆ Git Action" diff --git a/.github/labeler.yml b/.github/labeler.yml new file mode 100644 index 00000000..4085b2ce --- /dev/null +++ b/.github/labeler.yml @@ -0,0 +1,45 @@ +# Number of labels to fetch (optional). Defaults to 100 +numLabels: 40 +# These labels will not be used even if the issue contains them (optional). +# Pass a blank array if no labels are to be excluded. +# excludeLabels: [] +excludeLabels: + - pinned +# custom configuration to override default behaviour +# control explicitly what gets added and when +custom: + - location: title + keywords: + - '[roadmap]' + labels: + - Type โ—ฆ Roadmap + - location: title + keywords: + - '[road-map]' + labels: + - Type โ—ฆ Roadmap + - location: title + keywords: + - '[bug]' + labels: + - Type โ—ฆ Bug + - location: title + keywords: + - '[issue]' + labels: + - Type โ—ฆ Bug + - location: title + keywords: + - '[feature]' + labels: + - Type โ—ฆ Feature + - location: body + keywords: + - 'request feature' + labels: + - Type โ—ฆ Feature + - location: title + keywords: + - '[request]' + labels: + - Type โ—ฆ Feature \ No newline at end of file