Skip to content

Commit

Permalink
Update update-projects.yml
Browse files Browse the repository at this point in the history
  • Loading branch information
Circuit-Overtime authored Jan 30, 2025
1 parent e0da30a commit ee5dbb1
Showing 1 changed file with 39 additions and 82 deletions.
121 changes: 39 additions & 82 deletions .github/workflows/update-projects.yml
Original file line number Diff line number Diff line change
@@ -1,83 +1,40 @@
# name: Process Project Submission

# on:
# issues:
# types: [closed]

# jobs:
# extract-and-update:
# runs-on: ubuntu-latest
# steps:
# - name: Checkout Repository
# uses: actions/checkout@v4

# - name: Extract Issue Data
# id: extract_data
# run: |
# ISSUE_BODY=$(echo "${{ github.event.issue.body }}" | tr -d '\r')

# # Function to extract values correctly
# extract_field() {
# echo "$ISSUE_BODY" | awk -v field="### $1" 'tolower($0) ~ tolower(field) {getline; print $0}' | sed 's/^[ \t]*//;s/[ \t]*$//'
# }

# # Extract fields from the issue body
# PROJECT_NAME=$(extract_field "Project Name")
# PROJECT_DESCRIPTION=$(extract_field "Project Description")
# PROJECT_URL=$(extract_field "Project URL")
# DISCORD_USERNAME=$(extract_field "Discord Username or Social Profile Link")
# GITHUB_REPO=$(extract_field "GitHub Repository URL")
# ADDITIONAL_INFO=$(extract_field "Additional Information")
# CONTACT_INFO=$(extract_field "Contact Information")

# # Debug: print extracted fields
# echo "Extracted PROJECT_NAME: $PROJECT_NAME"
# echo "Extracted PROJECT_DESCRIPTION: $PROJECT_DESCRIPTION"
# echo "Extracted PROJECT_URL: $PROJECT_URL"
# echo "Extracted DISCORD_USERNAME: $DISCORD_USERNAME"
# echo "Extracted GITHUB_REPO: $GITHUB_REPO"
# echo "Extracted ADDITIONAL_INFO: $ADDITIONAL_INFO"
# echo "Extracted CONTACT_INFO: $CONTACT_INFO"

# # Replace empty fields with JSON "null"
# [[ -z "$PROJECT_NAME" ]] && PROJECT_NAME="null" || PROJECT_NAME="\"$PROJECT_NAME\""
# [[ -z "$PROJECT_DESCRIPTION" ]] && PROJECT_DESCRIPTION="null" || PROJECT_DESCRIPTION="\"$PROJECT_DESCRIPTION\""
# [[ -z "$PROJECT_URL" ]] && PROJECT_URL="null" || PROJECT_URL="\"$PROJECT_URL\""
# [[ -z "$DISCORD_USERNAME" ]] && DISCORD_USERNAME="null" || DISCORD_USERNAME="\"$DISCORD_USERNAME\""
# [[ -z "$GITHUB_REPO" || "$GITHUB_REPO" == "No response" ]] && GITHUB_REPO="null" || GITHUB_REPO="\"$GITHUB_REPO\""
# [[ -z "$ADDITIONAL_INFO" ]] && ADDITIONAL_INFO="null" || ADDITIONAL_INFO="\"$ADDITIONAL_INFO\""
# [[ -z "$CONTACT_INFO" ]] && CONTACT_INFO="null" || CONTACT_INFO="\"$CONTACT_INFO\""

# # Create a valid JSON entry
# NEW_ENTRY="{\"project_name\": $PROJECT_NAME, \"project_description\": $PROJECT_DESCRIPTION, \"project_url\": $PROJECT_URL, \"discord_username\": $DISCORD_USERNAME, \"github_repo\": $GITHUB_REPO, \"additional_info\": $ADDITIONAL_INFO, \"contact\": $CONTACT_INFO}"

# echo "Extracted Project Entry: $NEW_ENTRY"

# # Store JSON entry in an environment variable
# echo "NEW_ENTRY=$(echo "$NEW_ENTRY" | jq -c .)" >> $GITHUB_ENV


# - name: Update projects.json
# run: |
# if [ ! -f projects.json ]; then
# echo "[]" > projects.json
# fi

# # Append the new entry to the JSON file safely
# jq '. += [env.NEW_ENTRY | fromjson]' projects.json > tmp.json && mv tmp.json projects.json

# - name: Commit and Push Changes
# run: |
# git config --global user.name "github-actions"
# git config --global user.email "actions@github.com"

# if git diff --quiet projects.json; then
# echo "No changes to commit."
# exit 0
# fi
name: Process Issue
on:
issues:
types: [closed]

jobs:
process-issue:
runs-on: ubuntu-latest
steps:
- name: Checkout repository
uses: actions/checkout@v3

- name: Append issue body to projects.json
run: |
BODY=$(echo "${{ github.event.issue.body }}" | jq -sR .)
JSON_OBJECT="{\"content\": $BODY}"
# git add projects.json
# git commit -m "Add new project entry from issue #${{ github.event.issue.number }}"
# git push https://x-access-token:${{ secrets.PAT_TOKEN }}@github.com/${{ github.repository }}.git
# env:
# PAT_TOKEN: ${{ secrets.PAT_TOKEN }}
if [[ -f projects.json ]]; then
# Read the existing JSON array and append the new object
OLD_CONTENT=$(cat projects.json)
if [[ $OLD_CONTENT == "" ]]; then
echo "[$JSON_OBJECT]" > projects.json
else
OLD_CONTENT_NO_BRACKETS=$(echo "$OLD_CONTENT" | jq -r .[])
echo "[$OLD_CONTENT_NO_BRACKETS,$JSON_OBJECT]" > projects.json
fi
else
# Create the file with the initial JSON array
echo "[$JSON_OBJECT]" > projects.json
fi
- name: Commit and push changes
run: |
git config --global user.name 'GitHub Actions Bot'
git config --global user.email 'actions@github.com'
git add projects.json
git commit -m "Update projects.json with issue body"
git checkout -b projects
git push origin projects --force

0 comments on commit ee5dbb1

Please sign in to comment.