Generate Apps List #273
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
name: Generate Apps List | |
on: | |
#push: | |
#branches: | |
#- main | |
schedule: | |
- cron: '0 1 * * *' #UTC | |
jobs: | |
generate-apps-list: | |
runs-on: ubuntu-latest | |
steps: | |
- name: Checkout Code | |
uses: actions/checkout@v2 | |
- name: Set up Node.js | |
uses: actions/setup-node@v2 | |
with: | |
node-version: '14' | |
- name: Install jq | |
run: sudo apt-get install jq -y | |
- name: Generate Apps List | |
id: generate-apps-list | |
run: | | |
# Create an empty README.md file | |
echo "" > README.md | |
app_list="" | |
for app_folder in Apps/*; do | |
if [ -f "$app_folder/app.json" ]; then | |
app_data=$(cat "$app_folder/app.json") | |
app_name=$(echo "$app_data" | jq -r .app) | |
app_name_url=$(echo "$app_data" | jq -r .app_url) | |
app_description=$(echo "$app_data" | jq -r .description) | |
app_image=$(echo "$app_data" | jq -r .image) | |
app_image_url=$(echo "$app_data" | jq -r .image_url) | |
app_tag=$(echo "$app_data" | jq -r .tag) | |
app_list+="| <h2><img src="$app_folder/icon.png" width="21" height="21"> $app_name</h2> [![tag](https://img.shields.io/badge/$app_image-$app_tag-blue?style=plastic)]($app_image_url) [![tag](https://img.shields.io/badge/visit-project-green?style=plastic)]($app_name_url) <br /> $app_description | ![thumbnail]($app_folder/thumbnail.png) |\n" | |
fi | |
done | |
echo "::set-output name=content::${app_list}" | |
- name: Update README.md with App List | |
run: | | |
app_list="${{ steps.generate-apps-list.outputs.content }}" | |
awk -v app_list="$app_list" '1; ENDFILE { printf "%s", app_list }' ABOUT.md > README.md | |
- name: Commit and Push Changes | |
run: | | |
git config user.name "GitHub Actions" | |
git config user.email "[email protected]" | |
git add README.md | |
git commit -m "Update README.md with apps list" | |
git push --set-upstream origin ${{ github.ref }} | |
env: | |
GH_TOKEN: ${{ secrets.GH_TOKEN }} |