-
-
Notifications
You must be signed in to change notification settings - Fork 6
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
- Loading branch information
1 parent
e0da30a
commit ee5dbb1
Showing
1 changed file
with
39 additions
and
82 deletions.
There are no files selected for viewing
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
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 |