Add renovate tests #35
@@ -44,6 +44,7 @@ cleanup() {
|
|||||||
echo "Cleaning up..."
|
echo "Cleaning up..."
|
||||||
|
|
||||||
# 1. Delete all Open PRs
|
# 1. Delete all Open PRs
|
||||||
|
echo "Deleting Open PRs..."
|
||||||
PRS=$(curl -s -H "Authorization: token $RENOVATE_TOKEN" "$GITEA_API_URL/repos/$REPO_OWNER/$REPO_NAME/pulls?state=open")
|
PRS=$(curl -s -H "Authorization: token $RENOVATE_TOKEN" "$GITEA_API_URL/repos/$REPO_OWNER/$REPO_NAME/pulls?state=open")
|
||||||
PR_INDEXES=$(echo "$PRS" | jq -r '.[].number')
|
PR_INDEXES=$(echo "$PRS" | jq -r '.[].number')
|
||||||
for INDEX in $PR_INDEXES; do
|
for INDEX in $PR_INDEXES; do
|
||||||
@@ -53,7 +54,41 @@ cleanup() {
|
|||||||
fi
|
fi
|
||||||
done
|
done
|
||||||
|
|
||||||
# 2. Delete renovate.json from main branch to reset state (if exists)
|
# 2. Delete "Configure Renovate" PR (Closed/Merged)
|
||||||
|
echo "Deleting 'Configure Renovate' PR..."
|
||||||
|
# Fetch closed PRs to find the onboarding one
|
||||||
|
CLOSED_PRS=$(curl -s -H "Authorization: token $RENOVATE_TOKEN" "$GITEA_API_URL/repos/$REPO_OWNER/$REPO_NAME/pulls?state=closed")
|
||||||
|
ONBOARDING_PR_INDEX=$(echo "$CLOSED_PRS" | jq -r '.[] | select(.title | contains("Configure Renovate")) | .number')
|
||||||
|
if [ -n "$ONBOARDING_PR_INDEX" ] && [ "$ONBOARDING_PR_INDEX" != "null" ]; then
|
||||||
|
echo "Deleting Onboarding PR #$ONBOARDING_PR_INDEX..."
|
||||||
|
curl -s -X DELETE -H "Authorization: token $RENOVATE_TOKEN" "$GITEA_API_URL/repos/$REPO_OWNER/$REPO_NAME/issues/$ONBOARDING_PR_INDEX"
|
||||||
|
fi
|
||||||
|
|
||||||
|
# 3. Delete "Dependency Dashboard" Issue
|
||||||
|
echo "Deleting 'Dependency Dashboard' Issue..."
|
||||||
|
ISSUES=$(curl -s -H "Authorization: token $RENOVATE_TOKEN" "$GITEA_API_URL/repos/$REPO_OWNER/$REPO_NAME/issues?state=open")
|
||||||
|
DASHBOARD_INDEX=$(echo "$ISSUES" | jq -r '.[] | select(.title | contains("Dependency Dashboard")) | .number')
|
||||||
|
if [ -n "$DASHBOARD_INDEX" ] && [ "$DASHBOARD_INDEX" != "null" ]; then
|
||||||
|
echo "Deleting Dashboard Issue #$DASHBOARD_INDEX..."
|
||||||
|
curl -s -X DELETE -H "Authorization: token $RENOVATE_TOKEN" "$GITEA_API_URL/repos/$REPO_OWNER/$REPO_NAME/issues/$DASHBOARD_INDEX"
|
||||||
|
fi
|
||||||
|
|
||||||
|
# 4. Delete Renovate Branches
|
||||||
|
echo "Deleting Renovate Branches..."
|
||||||
|
BRANCHES=$(curl -s -H "Authorization: token $RENOVATE_TOKEN" "$GITEA_API_URL/repos/$REPO_OWNER/$REPO_NAME/branches")
|
||||||
|
RENOVATE_BRANCHES=$(echo "$BRANCHES" | jq -r '.[].name | select(startswith("renovate/"))')
|
||||||
|
for BRANCH in $RENOVATE_BRANCHES; do
|
||||||
|
if [ -n "$BRANCH" ]; then
|
||||||
|
echo "Deleting branch $BRANCH..."
|
||||||
|
# URL encode branch name (slash needs to be %2F, but curl might handle it or we need to be careful)
|
||||||
|
# Gitea API: DELETE /repos/{owner}/{repo}/branches/{branch}
|
||||||
|
# Simple bash URL encoding for slash
|
||||||
|
ENCODED_BRANCH=${BRANCH//\//%2F}
|
||||||
|
curl -s -X DELETE -H "Authorization: token $RENOVATE_TOKEN" "$GITEA_API_URL/repos/$REPO_OWNER/$REPO_NAME/branches/$ENCODED_BRANCH"
|
||||||
|
fi
|
||||||
|
done
|
||||||
|
|
||||||
|
# 5. Delete renovate.json from main branch to reset state (if exists)
|
||||||
FILE_INFO=$(curl -s -H "Authorization: token $RENOVATE_TOKEN" "$GITEA_API_URL/repos/$REPO_OWNER/$REPO_NAME/contents/renovate.json?ref=main")
|
FILE_INFO=$(curl -s -H "Authorization: token $RENOVATE_TOKEN" "$GITEA_API_URL/repos/$REPO_OWNER/$REPO_NAME/contents/renovate.json?ref=main")
|
||||||
FILE_SHA=$(echo "$FILE_INFO" | jq -r '.sha')
|
FILE_SHA=$(echo "$FILE_INFO" | jq -r '.sha')
|
||||||
|
|
||||||
@@ -160,4 +195,16 @@ else
|
|||||||
exit 1
|
exit 1
|
||||||
fi
|
fi
|
||||||
|
|
||||||
|
# Verify Dependency Dashboard Issue
|
||||||
|
echo "Verifying Dependency Dashboard..."
|
||||||
|
ISSUES=$(curl -s -H "Authorization: token $RENOVATE_TOKEN" "$GITEA_API_URL/repos/$REPO_OWNER/$REPO_NAME/issues?state=open")
|
||||||
|
DASHBOARD_NUM=$(echo "$ISSUES" | jq -r '.[] | select(.title | contains("Dependency Dashboard")) | .number')
|
||||||
|
|
||||||
|
if [ -n "$DASHBOARD_NUM" ] && [ "$DASHBOARD_NUM" != "null" ]; then
|
||||||
|
echo "API Verification: Dependency Dashboard found (#$DASHBOARD_NUM)."
|
||||||
|
else
|
||||||
|
echo "API Verification Failed: Dependency Dashboard NOT found."
|
||||||
|
exit 1
|
||||||
|
fi
|
||||||
|
|
||||||
echo "API & Content Verification passed!"
|
echo "API & Content Verification passed!"
|
||||||
|
|||||||
Reference in New Issue
Block a user