From 48a120b834a66805df44791cdf655f8ff8735717 Mon Sep 17 00:00:00 2001 From: LizenzFass78851 <82592556+LizenzFass78851@users.noreply.github.com> Date: Wed, 10 Jul 2024 17:50:50 +0200 Subject: [PATCH] add support for generating auto readme for mikrotik lists --- .../Mikrotik-Hosts/IPv4/readme.md/01 | 7 ++ .../Mikrotik-Hosts/IPv4/readme.md/02 | 1 + .../Mikrotik-Hosts/IPv6/readme.md/01 | 7 ++ .../Mikrotik-Hosts/IPv6/readme.md/02 | 1 + .github/scripts/gen_mikrotik_readme.md.sh | 64 +++++++++++++++++++ .github/workflows/gen_md_files.yml | 10 ++- 6 files changed, 84 insertions(+), 6 deletions(-) create mode 100644 .github/markdown_templates/Mikrotik-Hosts/IPv4/readme.md/01 create mode 100644 .github/markdown_templates/Mikrotik-Hosts/IPv4/readme.md/02 create mode 100644 .github/markdown_templates/Mikrotik-Hosts/IPv6/readme.md/01 create mode 100644 .github/markdown_templates/Mikrotik-Hosts/IPv6/readme.md/02 create mode 100644 .github/scripts/gen_mikrotik_readme.md.sh diff --git a/.github/markdown_templates/Mikrotik-Hosts/IPv4/readme.md/01 b/.github/markdown_templates/Mikrotik-Hosts/IPv4/readme.md/01 new file mode 100644 index 000000000..482c87b43 --- /dev/null +++ b/.github/markdown_templates/Mikrotik-Hosts/IPv4/readme.md/01 @@ -0,0 +1,7 @@ +# Blocklisten (Auf Basis von Host-Dateien für Mikrotik-Router und darauf aufbauende Adblocker-Lösungen) zur Ergänzung nach eigenem Ermessen. Die Listen stammen teilweise von Dritten und können daher nicht auf Richtigkeit geprüft werden. Doppelnennungen möglich. +## Diese Listen sind für den Einsatz an "IPv4" Netzwerke ausgelegt. + + +# Eigene Listen (Copy & Paste): + +``` diff --git a/.github/markdown_templates/Mikrotik-Hosts/IPv4/readme.md/02 b/.github/markdown_templates/Mikrotik-Hosts/IPv4/readme.md/02 new file mode 100644 index 000000000..8c5b07d1f --- /dev/null +++ b/.github/markdown_templates/Mikrotik-Hosts/IPv4/readme.md/02 @@ -0,0 +1 @@ +``` diff --git a/.github/markdown_templates/Mikrotik-Hosts/IPv6/readme.md/01 b/.github/markdown_templates/Mikrotik-Hosts/IPv6/readme.md/01 new file mode 100644 index 000000000..d7773dc3a --- /dev/null +++ b/.github/markdown_templates/Mikrotik-Hosts/IPv6/readme.md/01 @@ -0,0 +1,7 @@ +# Blocklisten (Auf Basis von Host-Dateien für Mikrotik-Router und darauf aufbauende Adblocker-Lösungen) zur Ergänzung nach eigenem Ermessen. Die Listen stammen teilweise von Dritten und können daher nicht auf Richtigkeit geprüft werden. Doppelnennungen möglich. +## Diese Listen sind für den Einsatz an "IPv6" Netzwerke ausgelegt. + + +# Eigene Listen (Copy & Paste): + +``` diff --git a/.github/markdown_templates/Mikrotik-Hosts/IPv6/readme.md/02 b/.github/markdown_templates/Mikrotik-Hosts/IPv6/readme.md/02 new file mode 100644 index 000000000..8c5b07d1f --- /dev/null +++ b/.github/markdown_templates/Mikrotik-Hosts/IPv6/readme.md/02 @@ -0,0 +1 @@ +``` diff --git a/.github/scripts/gen_mikrotik_readme.md.sh b/.github/scripts/gen_mikrotik_readme.md.sh new file mode 100644 index 000000000..17da475a8 --- /dev/null +++ b/.github/scripts/gen_mikrotik_readme.md.sh @@ -0,0 +1,64 @@ +#!/bin/bash +set -e # Beende das Skript bei einem Fehler + +function runner() { +TEMPLATE_S1=./.github/markdown_templates/$ARBEITSVERZEICHNIS/$SUCHVERZEICHNIS/$PATCHTHEFILE/01 +TEMPLATE_S2=./.github/markdown_templates/$ARBEITSVERZEICHNIS/$SUCHVERZEICHNIS/$PATCHTHEFILE/02 + +LINKS=/tmp/$SUCHVERZEICHNIS.txt + +# Hole die Links +if [ -e "$LINKS" ]; then + rm "$LINKS" +fi + + +find ./$ARBEITSVERZEICHNIS/$SUCHVERZEICHNIS/* -name '*' -type f \ + | grep -v ".md" \ + | sed 's#^.#https://raw.githubusercontent.com/RPiList/specials/master#g' \ + | grep -v "DomainSquatting/" \ + | sort >> $LINKS + +find ./$ARBEITSVERZEICHNIS/$SUCHVERZEICHNIS/* -name '*' -type f \ + | grep -v ".md" \ + | sed 's#^.#https://raw.githubusercontent.com/RPiList/specials/master#g' \ + | grep "DomainSquatting/" \ + | sort >> $LINKS + +# Lösche die Datei +rm $ARBEITSVERZEICHNIS/$SUCHVERZEICHNIS/$PATCHTHEFILE + +# Erstelle die Datei +# Schicht 1 +while read line; do + echo "$line " >> $ARBEITSVERZEICHNIS/$SUCHVERZEICHNIS/$PATCHTHEFILE +done < $TEMPLATE_S1 + +# Die Links +while read line; do + echo "$line " >> $ARBEITSVERZEICHNIS/$SUCHVERZEICHNIS/$PATCHTHEFILE +done < $LINKS + +# Schicht 2 +while read line; do + echo "$line " >> $ARBEITSVERZEICHNIS/$SUCHVERZEICHNIS/$PATCHTHEFILE +done < $TEMPLATE_S2 + +} + + +# Setzte Arbeitsverzeichnis +ARBEITSVERZEICHNIS=Mikrotik-Hosts + +# Voreinstellungen 1 +SUCHVERZEICHNIS=IPv4 +PATCHTHEFILE=readme.md + +runner + +# Voreinstellungen 2 +SUCHVERZEICHNIS=IPv6 +PATCHTHEFILE=readme.md + +runner + diff --git a/.github/workflows/gen_md_files.yml b/.github/workflows/gen_md_files.yml index 19fd15d6d..011ea63b9 100644 --- a/.github/workflows/gen_md_files.yml +++ b/.github/workflows/gen_md_files.yml @@ -5,12 +5,8 @@ on: branches: [ master ] paths: - '.github/workflows/gen_md_files.yml' - - - '.github/scripts/gen_blocklisten.md.sh' - - '.github/markdown_templates/Blocklisten.md/*' - - - '.github/scripts/gen_dnsmasq_readme.md.sh' - - '.github/markdown_templates/DNSMASQ/readme.md/*' + - '.github/scripts/gen_*.sh' + - '.github/markdown_templates/*' schedule: - cron: '20 12 * * *' @@ -19,6 +15,7 @@ on: env: SCRIPT01: .github/scripts/gen_blocklisten.md.sh SCRIPT02: .github/scripts/gen_dnsmasq_readme.md.sh + SCRIPT03: .github/scripts/gen_mikrotik_readme.md.sh jobs: generate-and-deploy: @@ -60,6 +57,7 @@ jobs: seq $c | while read x; do echo run ${{ env.SCRIPT01 }} && chmod +x ${{ env.SCRIPT01 }} && ./${{ env.SCRIPT01 }}; done seq $c | while read x; do echo run ${{ env.SCRIPT02 }} && chmod +x ${{ env.SCRIPT02 }} && ./${{ env.SCRIPT02 }}; done + seq $c | while read x; do echo run ${{ env.SCRIPT03 }} && chmod +x ${{ env.SCRIPT03 }} && ./${{ env.SCRIPT03 }}; done - name: commit env: