Skip to content

docs(contributor): contrib-readme-action has updated readme #527

docs(contributor): contrib-readme-action has updated readme

docs(contributor): contrib-readme-action has updated readme #527

Workflow file for this run

name: Generate MD files from submissions
on:
push:
branches:
- main
workflow_dispatch:
jobs:
generate_md_files:
runs-on: ubuntu-latest
steps:
- name: Setup Node.js
uses: actions/setup-node@v3
with:
node-version: 20
- name: Checkout code
uses: actions/checkout@v2
with:
fetch-depth: '0'
- name: Generate MD Files for Algorithms
run: |
rm -f src/pages/submissions/*
for file in ALGORITHMS/*; do
if [ -f "$file" ]; then
filename=$(basename "$file")
filename_noext="${filename%.*}"
file_extension="${filename##*.}"
echo "Creating $filename.md from $file"
# Add front matter to the MD file
echo "---" > "src/pages/submissions/$filename.md"
echo "extension: $file_extension" >> "src/pages/submissions/$filename.md" # Add the extension
# Get the author's username who committed the file
author_username=$(git log --reverse -1 --format='%an' -- "$file")
echo "author: $author_username" >> "src/pages/submissions/$filename.md" # Add the author
echo "category: Algorithms" >> "src/pages/submissions/$filename.md"
echo "layout: '../../layouts/SubmissionLayout.astro'" >> "src/pages/submissions/$filename.md"
echo "title: $filename_noext" >> "src/pages/submissions/$filename.md"
echo "---" >> "src/pages/submissions/$filename.md"
echo "\`\`\`$file_extension" >> "src/pages/submissions/$filename.md"
cat "$file" >> "src/pages/submissions/$filename.md"
echo "\`\`\`" >> "src/pages/submissions/$filename.md"
fi
done
working-directory: ${{ github.workspace }}
- name: Generate MD Files for Data Structures
run: |
for file in DATA\ STRUCTURES/*; do
if [ -f "$file" ]; then
filename=$(basename "$file")
filename_noext="${filename%.*}"
file_extension="${filename##*.}"
echo "Creating $filename.md from $file"
# Add front matter to the MD file
echo "---" > "src/pages/submissions/$filename.md"
echo "extension: $file_extension" >> "src/pages/submissions/$filename.md" # Add the extension
# Get the author's username who committed the file
author_username=$(git log --reverse -1 --format='%an' -- "$file")
echo "author: $author_username" >> "src/pages/submissions/$filename.md" # Add the author
echo "category: Data Structures" >> "src/pages/submissions/$filename.md"
echo "layout: '../../layouts/SubmissionLayout.astro'" >> "src/pages/submissions/$filename.md"
echo "title: $filename_noext" >> "src/pages/submissions/$filename.md"
echo "---" >> "src/pages/submissions/$filename.md"
echo "\`\`\`$file_extension" >> "src/pages/submissions/$filename.md"
cat "$file" >> "src/pages/submissions/$filename.md"
echo "\`\`\`" >> "src/pages/submissions/$filename.md"
fi
done
working-directory: ${{ github.workspace }}
- name: Generate MD Files for AppScript
run: |
for file in APPSCRIPT/*; do
if [ -f "$file" ]; then
filename=$(basename "$file")
filename_noext="${filename%.*}"
file_extension="${filename##*.}"
echo "Creating $filename.md from $file"
# Add front matter to the MD file
echo "---" > "src/pages/submissions/$filename.md"
echo "extension: $file_extension" >> "src/pages/submissions/$filename.md" # Add the extension
# Get the author's username who committed the file
author_username=$(git log --reverse -1 --format='%an' -- "$file")
echo "author: $author_username" >> "src/pages/submissions/$filename.md" # Add the author
echo "category: AppScript" >> "src/pages/submissions/$filename.md"
echo "layout: '../../layouts/SubmissionLayout.astro'" >> "src/pages/submissions/$filename.md"
echo "title: $filename_noext" >> "src/pages/submissions/$filename.md"
echo "---" >> "src/pages/submissions/$filename.md"
echo "\`\`\`$file_extension" >> "src/pages/submissions/$filename.md"
cat "$file" >> "src/pages/submissions/$filename.md"
echo "\`\`\`" >> "src/pages/submissions/$filename.md"
fi
done
working-directory: ${{ github.workspace }}
- name: Generate MD Files for Bash
run: |
for file in BASH/*; do
if [ -f "$file" ]; then
filename=$(basename "$file")
filename_noext="${filename%.*}"
file_extension="${filename##*.}"
echo "Creating $filename.md from $file"
# Add front matter to the MD file
echo "---" > "src/pages/submissions/$filename.md"
echo "extension: $file_extension" >> "src/pages/submissions/$filename.md" # Add the extension
# Get the author's username who committed the file
author_username=$(git log --reverse -1 --format='%an' -- "$file")
echo "author: $author_username" >> "src/pages/submissions/$filename.md" # Add the author
echo "category: Bash" >> "src/pages/submissions/$filename.md"
echo "layout: '../../layouts/SubmissionLayout.astro'" >> "src/pages/submissions/$filename.md"
echo "title: $filename_noext" >> "src/pages/submissions/$filename.md"
echo "---" >> "src/pages/submissions/$filename.md"
echo "\`\`\`$file_extension" >> "src/pages/submissions/$filename.md"
cat "$file" >> "src/pages/submissions/$filename.md"
echo "\`\`\`" >> "src/pages/submissions/$filename.md"
fi
done
working-directory: ${{ github.workspace }}
- name: Generate MD Files for Interview Questions
run: |
for file in INTERVIEW\ QUESTIONS/*; do
if [ -f "$file" ]; then
filename=$(basename "$file")
filename_noext="${filename%.*}"
file_extension="${filename##*.}"
echo "Creating $filename_noext.md from $file"
# Add front matter to the MD file
echo "---" > "src/pages/submissions/$filename_noext.md"
echo "extension: $file_extension" >> "src/pages/submissions/$filename_noext.md" # Add the extension
# Get the author's username who committed the file
author_username=$(git log --reverse -1 --format='%an' -- "$file")
echo "author: $author_username" >> "src/pages/submissions/$filename_noext.md" # Add the author
echo "category: Interview Questions" >> "src/pages/submissions/$filename_noext.md"
echo "layout: '../../layouts/SubmissionLayout.astro'" >> "src/pages/submissions/$filename_noext.md"
echo "title: $filename_noext" >> "src/pages/submissions/$filename_noext.md"
echo "---" >> "src/pages/submissions/$filename_noext.md"
cat "$file" >> "src/pages/submissions/$filename_noext.md"
fi
done
working-directory: ${{ github.workspace }}
- name: Commit and Push MD Files
run: |
git config user.name "ACES Bot"
git config user.email "147253511+acesditbot@users.noreply.github.com"
git add .
git commit -m "Generate MD files from code"
git push --force
working-directory: ${{ github.workspace }}
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}