Skip to content

Refactor commit and push step in Owner CI/CD workflow to use git comm… #3

Refactor commit and push step in Owner CI/CD workflow to use git comm…

Refactor commit and push step in Owner CI/CD workflow to use git comm… #3

Workflow file for this run

name: Owner CI/CD Workflow
on:
push:
branches:
- main
jobs:
build:
runs-on: ubuntu-latest
steps:
# Step 1: Checkout the repository
- name: Checkout repository
uses: actions/checkout@v3
# Step 2: Set up Python environment
- name: Set up Python
uses: actions/setup-python@v4
with:
python-version: '3.12.7'
# Step 3: Install dependencies for each project
- name: Install dependencies for each project
run: |
for dir in */; do
# Skip non-project folders
if [[ "$dir" == ".github/" ]]; then
continue
fi
echo "Processing $dir"
if [ -f "$dir/requirements.txt" ]; then
echo "Installing dependencies for $dir"
pip install -r "$dir/requirements.txt"
else
echo "No requirements.txt found in $dir"
fi
done
# Step 4: Generate README files for each project
- name: Generate README files
run: |
for dir in */; do
# Skip non-project folders
if [[ "$dir" == ".github/" ]]; then
continue
fi
project_name=$(basename "$dir")
readme_file="$project_name/README.md"
# Create a README file with documentation
echo "# $project_name" > "$readme_file"
echo "" >> "$readme_file"
echo "## Description" >> "$readme_file"
echo "This is the README for the $project_name project." >> "$readme_file"
echo "" >> "$readme_file"
echo "## Installation" >> "$readme_file"
echo "To install the dependencies, run the following command:" >> "$readme_file"
echo "```bash" >> "$readme_file"
echo "pip install -r requirements.txt" >> "$readme_file"
echo "```" >> "$readme_file"
echo "" >> "$readme_file"
echo "## Usage" >> "$readme_file"
echo "Instructions for using the $project_name project go here." >> "$readme_file"
echo "" >> "$readme_file"
echo "---" >> "$readme_file"
echo "*📄 This README was automatically generated by the CI/CD workflow. 🤖*" >> "$readme_file"
echo "Generated README for $project_name"
done
# Step 5: Commit and push changes
- name: Commit and push changes
run: |
git config user.name "github-actions[bot]"
git config user.email "github-actions[bot]@users.noreply.github.com"
git add .
git commit -m "Update READMEs" || echo "No changes to commit"
git push https://${{ secrets.GH_TOKEN }}@github.com/${{ github.repository }} main