Files
hassio-addons/.github/workflows/daily_README.yaml
Alexandre ffd1f8b5f9 If then
2022-04-21 17:01:28 +02:00

55 lines
2.9 KiB
YAML

# yamllint disable rule:line-length
---
name: Generate README
on:
schedule:
- cron: '0 17 * * *'
workflow_dispatch:
jobs:
README_updater:
runs-on: ubuntu-20.04
steps:
- name: Checkout Repo
uses: actions/checkout@v3
- name: Run script file
run: |
echo "Starting"
cp .templates/.README.md README2.md
ADDONSLINE=$(sed -n '/%%ADDONS_LIST%%/=' README2.md)
sed -i "/**ADDONS_LIST%%/d" README2.md
for f in $( find -- * -type d | sort -r ); do
# $f is an addon directory
if [ -f "$f"/config.json ]; then
echo "Project $f"
sed -i "$ADDONSLINE"'{G;}' README2.md
if [[ $(jq '.schema' "$f/config.json") == *"localdisks"* ]]; then sed -i "$ADDONSLINE"'a ![localdisks][localdisks-badge]' README2.md; fi
if [[ $(jq '.schema' "$f/config.json") == *"networkdisks"* ]]; then sed -i "$ADDONSLINE"'a ![smb][smb-badge]' README2.md; fi
if [[ $(jq '.full_access' "$f/config.json") == "true" ]]; then sed -i "$ADDONSLINE"'a ![full_access][full_access-badge]' README2.md; fi
if [[ $(jq '.services[]' "$f/config.json") == *"mysql"* ]]; then sed -i "$ADDONSLINE"'a ![MariaDB][mariadb-badge]' README2.md; fi
if [[ $(jq '.ingress' "$f/config.json") == "true" ]]; then sed -i "$ADDONSLINE"'a ![ingress][ingress-badge]' README2.md; fi
if [[ $(jq '.arch[]' "$f/config.json") == *"armv7"* ]]; then sed -i "$ADDONSLINE"'a ![armv7][armv7-badge]' README2.md; else sed -i "$ADDONSLINE"'a ![armv7no][armv7no-badge]' README2.md; fi
if [[ $(jq '.arch[]' "$f/config.json") == *"amd64"* ]]; then sed -i "$ADDONSLINE"'a ![amd64][amd64-badge]' README2.md; else sed -i "$ADDONSLINE"'a ![amd64no][amd64no-badge]' README2.md; fi
if [[ $(jq '.arch[]' "$f/config.json") == *"aarch64"* ]]; then sed -i "$ADDONSLINE"'a ![aarch64][aarch64-badge]' README2.md; else sed -i "$ADDONSLINE"'a ![aarch64no][aarch64no-badge]' README2.md; fi
sed -i "$ADDONSLINE"'a ![Version](https://img.shields.io/badge/dynamic/json?label=Version&query=%24.version&url=https%3A%2F%2Fraw.githubusercontent.com%2Falexbelgium%2Fhassio-addons%2Fmaster%2F'"$f"'%2Fconfig.json)' README2.md || true
NAME=$(jq -r '.name' "$f"/config.json)
DESCRIPTION=$(jq -r '.description' "$f"/config.json)
sed -i "$ADDONSLINE"'a ✓ ['"$NAME"']('"$f"'/) : '"$DESCRIPTION\\n" README2.md
fi
done
# Replace template if change
if [[ "$(stat -c%s "README2.md")" == "$(stat -c%s "README.md")" ]]; then
echo "no changes"
rm README2.md
else
rm README.md
mv README2.md README.md
fi
shell: bash
- name: Commit if needed
uses: EndBug/add-and-commit@v9
with:
message: "GitHub bot : README updated"
default_author: github_actions