Compare commits
63 Commits
42acf137c5
...
main
| Author | SHA1 | Date | |
|---|---|---|---|
| 930210aa62 | |||
| eb27464423 | |||
| d477c7f225 | |||
| 0be7acac96 | |||
| 819db06ddc | |||
| edfbc8b646 | |||
| e9964c6e9b | |||
| db4a0663c4 | |||
| 5c4382e45f | |||
| 8579278a4a | |||
| 1856550e08 | |||
| ce20badb89 | |||
| 04f33c3cc9 | |||
| 4a52d76b80 | |||
| 0b589ed9a2 | |||
| bc1dac5225 | |||
| 39f1908de7 | |||
| e9f609eee2 | |||
| 9832a79272 | |||
| 2e25290cee | |||
| 2733e11775 | |||
| b637c5b212 | |||
| 66e1dcdef2 | |||
| c2312c7a5e | |||
| 1cfb8b270e | |||
| 3fcca4160b | |||
| 8df3de9e3a | |||
| ede460cf29 | |||
| 636554a7aa | |||
| 86398b31a6 | |||
| d2d27905d5 | |||
| 84ab3e6621 | |||
| 773052591b | |||
| 958166257f | |||
| e1a2123865 | |||
| 8328e40a39 | |||
| 74d3fe33ac | |||
| 727064b05c | |||
| 1326b6887c | |||
| 49e5856c42 | |||
| 275e932c42 | |||
| 2e729d663e | |||
| 049d08b049 | |||
| 0541910565 | |||
| a459d8dd2f | |||
| 49baaaed8a | |||
| 2b018e1183 | |||
| 6ff7a04a80 | |||
| 67915da020 | |||
| 732e81b246 | |||
| 913be2c09f | |||
| 8b1ecf87eb | |||
| 7c22e4a4e0 | |||
| 26d507cde2 | |||
| 45b7753210 | |||
| 1323fefe44 | |||
| ab49bea5f7 | |||
| d686ee2035 | |||
| 972a851ad0 | |||
| 691e14b642 | |||
| 12df98e3f7 | |||
| 4ab22d69c1 | |||
| 15dce62f7f |
44
.gitea/workflows/test.yaml
Normal file
44
.gitea/workflows/test.yaml
Normal file
@@ -0,0 +1,44 @@
|
||||
name: Test Renovate Config
|
||||
on:
|
||||
push:
|
||||
branches:
|
||||
- main
|
||||
pull_request:
|
||||
branches:
|
||||
- main
|
||||
|
||||
concurrency:
|
||||
group: renovate-test-lock
|
||||
cancel-in-progress: false
|
||||
|
||||
jobs:
|
||||
test-renovate:
|
||||
runs-on: ubuntu-latest
|
||||
container: ghcr.io/renovatebot/renovate:42.66.0@sha256:3a07878325ef89a3a82e7f8925b242310232fcdf1c0a3a6a079fee390b8962a2
|
||||
steps:
|
||||
- name: Checkout
|
||||
uses: actions/checkout@8e8c483db84b4bee98b60c0593521ed34d9990e8 # v6.0.1
|
||||
|
||||
- name: Run Renovate Test Script
|
||||
run: bash scripts/test-renovate.sh
|
||||
env:
|
||||
RENOVATE_CONFIG_FILE: "/workspace/kovagoadi.hu/Renovate/renovate-config.js"
|
||||
LOG_LEVEL: "debug"
|
||||
RENOVATE_TOKEN: ${{ secrets.RENOVATE_TEST_TOKEN }}
|
||||
GITHUB_COM_TOKEN: ${{ secrets.RENOVATE_GITHUB_TOKEN }}
|
||||
|
||||
e2e-renovate:
|
||||
runs-on: ubuntu-latest
|
||||
needs: test-renovate
|
||||
container: ghcr.io/renovatebot/renovate:42.66.0@sha256:3a07878325ef89a3a82e7f8925b242310232fcdf1c0a3a6a079fee390b8962a2
|
||||
steps:
|
||||
- name: Checkout
|
||||
uses: actions/checkout@8e8c483db84b4bee98b60c0593521ed34d9990e8 # v6.0.1
|
||||
|
||||
- name: Run Renovate E2E Script
|
||||
run: bash scripts/e2e-renovate.sh
|
||||
env:
|
||||
RENOVATE_CONFIG_FILE: "/workspace/kovagoadi.hu/Renovate/renovate-config.js"
|
||||
LOG_LEVEL: "debug"
|
||||
RENOVATE_TOKEN: ${{ secrets.RENOVATE_TEST_TOKEN }}
|
||||
GITHUB_COM_TOKEN: ${{ secrets.RENOVATE_GITHUB_TOKEN }}
|
||||
@@ -7,11 +7,11 @@ on:
|
||||
jobs:
|
||||
renovate:
|
||||
runs-on: ubuntu-latest
|
||||
container: ghcr.io/renovatebot/renovate:42.18.0@sha256:85cd9f97416c8e1efc89fbc5dec1a51965026986b3e2623036c0ea60f88f7535
|
||||
container: ghcr.io/renovatebot/renovate:42.66.0@sha256:3a07878325ef89a3a82e7f8925b242310232fcdf1c0a3a6a079fee390b8962a2
|
||||
steps:
|
||||
# Step 1: Check out the repository so your config file is available
|
||||
- name: Checkout
|
||||
uses: actions/checkout@93cb6efe18208431cddfb8368fd83d5badbf9bfd # v5.0.1
|
||||
uses: actions/checkout@8e8c483db84b4bee98b60c0593521ed34d9990e8 # v6.0.1
|
||||
|
||||
# Step 2: Run the official Renovate action
|
||||
- name: Self-hosted Renovate
|
||||
|
||||
@@ -3,5 +3,6 @@
|
||||
"extends": [
|
||||
"config:recommended"
|
||||
],
|
||||
"pinDigests": true
|
||||
"pinDigests": true,
|
||||
"automerge": true
|
||||
}
|
||||
|
||||
210
scripts/e2e-renovate.sh
Executable file
210
scripts/e2e-renovate.sh
Executable file
@@ -0,0 +1,210 @@
|
||||
#!/bin/bash
|
||||
set -e
|
||||
|
||||
echo "Validating Renovate configuration..."
|
||||
renovate-config-validator
|
||||
|
||||
echo "Running Renovate E2E (no dry-run)..."
|
||||
# Capture output but also stream it to stdout for debugging
|
||||
set +e
|
||||
renovate > renovate-e2e-output.log 2>&1
|
||||
RENOVATE_EXIT_CODE=$?
|
||||
set -e
|
||||
|
||||
cat renovate-e2e-output.log
|
||||
|
||||
if [ $RENOVATE_EXIT_CODE -ne 0 ]; then
|
||||
echo "Error: Renovate command failed with exit code $RENOVATE_EXIT_CODE"
|
||||
exit 1
|
||||
fi
|
||||
|
||||
# Assertions
|
||||
echo "Checking for successful run..."
|
||||
if ! grep -q "Repository finished" renovate-e2e-output.log; then
|
||||
echo "Error: Renovate run did not finish successfully."
|
||||
exit 1
|
||||
fi
|
||||
|
||||
echo "Checking for errors..."
|
||||
if grep -q "ERROR" renovate-e2e-output.log; then
|
||||
echo "Error: Renovate log contains errors."
|
||||
exit 1
|
||||
fi
|
||||
|
||||
echo "E2E Test passed!"
|
||||
rm renovate-e2e-output.log
|
||||
|
||||
# API Verification and Cleanup
|
||||
GITEA_API_URL="https://gitea.kovagoadi.hu/api/v1"
|
||||
REPO_OWNER="renovate-test"
|
||||
REPO_NAME="test"
|
||||
|
||||
# Function to clean up PRs and reset repo
|
||||
cleanup() {
|
||||
echo "Cleaning up..."
|
||||
|
||||
# 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")
|
||||
PR_INDEXES=$(echo "$PRS" | jq -r '.[].number')
|
||||
for INDEX in $PR_INDEXES; do
|
||||
if [ "$INDEX" != "null" ]; then
|
||||
echo "Deleting PR #$INDEX..."
|
||||
curl -s -X DELETE -H "Authorization: token $RENOVATE_TOKEN" "$GITEA_API_URL/repos/$REPO_OWNER/$REPO_NAME/issues/$INDEX"
|
||||
fi
|
||||
done
|
||||
|
||||
# 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_SHA=$(echo "$FILE_INFO" | jq -r '.sha')
|
||||
|
||||
if [ "$FILE_SHA" != "null" ] && [ -n "$FILE_SHA" ]; then
|
||||
echo "Deleting renovate.json to reset repository state..."
|
||||
curl -s -X DELETE -H "Authorization: token $RENOVATE_TOKEN" \
|
||||
-H "Content-Type: application/json" \
|
||||
-d "{\"message\": \"Cleanup: Delete renovate.json\", \"sha\": \"$FILE_SHA\", \"branch\": \"main\"}" \
|
||||
"$GITEA_API_URL/repos/$REPO_OWNER/$REPO_NAME/contents/renovate.json"
|
||||
fi
|
||||
}
|
||||
|
||||
# Register cleanup to run on exit
|
||||
trap cleanup EXIT
|
||||
|
||||
# --- Step 1: Initial Run (Onboarding) ---
|
||||
echo "Running Renovate E2E (Run 1: Onboarding)..."
|
||||
set +e
|
||||
renovate --pr-hourly-limit=0 > renovate-e2e-output.log 2>&1
|
||||
RENOVATE_EXIT_CODE=$?
|
||||
set -e
|
||||
cat renovate-e2e-output.log
|
||||
|
||||
if [ $RENOVATE_EXIT_CODE -ne 0 ]; then
|
||||
echo "Error: Renovate command failed."
|
||||
exit 1
|
||||
fi
|
||||
|
||||
# Check for Onboarding PR
|
||||
PRS=$(curl -s -H "Authorization: token $RENOVATE_TOKEN" "$GITEA_API_URL/repos/$REPO_OWNER/$REPO_NAME/pulls?state=open")
|
||||
ONBOARDING_PR_NUM=$(echo "$PRS" | jq -r '.[] | select(.title | contains("Configure Renovate")) | .number')
|
||||
|
||||
if [ -n "$ONBOARDING_PR_NUM" ] && [ "$ONBOARDING_PR_NUM" != "null" ]; then
|
||||
echo "Onboarding PR found (#$ONBOARDING_PR_NUM). Merging it to enable updates..."
|
||||
|
||||
# Merge Onboarding PR
|
||||
MERGE_RESP=$(curl -s -X POST -H "Authorization: token $RENOVATE_TOKEN" \
|
||||
-H "Content-Type: application/json" \
|
||||
-d "{\"Do\": \"merge\"}" \
|
||||
"$GITEA_API_URL/repos/$REPO_OWNER/$REPO_NAME/pulls/$ONBOARDING_PR_NUM/merge")
|
||||
|
||||
# Check if merge was successful (simple check)
|
||||
if echo "$MERGE_RESP" | grep -q "Pull request has been merged"; then
|
||||
echo "Onboarding PR merged successfully."
|
||||
else
|
||||
# Fallback: check status code or response
|
||||
echo "Merge response: $MERGE_RESP"
|
||||
fi
|
||||
|
||||
# --- Step 2: Second Run (Updates) ---
|
||||
echo "Running Renovate E2E (Run 2: Updates)..."
|
||||
set +e
|
||||
renovate --pr-hourly-limit=0 > renovate-e2e-output-2.log 2>&1
|
||||
RENOVATE_EXIT_CODE=$?
|
||||
set -e
|
||||
cat renovate-e2e-output-2.log
|
||||
|
||||
if [ $RENOVATE_EXIT_CODE -ne 0 ]; then
|
||||
echo "Error: Renovate command (Run 2) failed."
|
||||
exit 1
|
||||
fi
|
||||
|
||||
else
|
||||
echo "No Onboarding PR found. Assuming repo is already onboarded or config exists."
|
||||
fi
|
||||
|
||||
echo "Verifying Update PRs and Content..."
|
||||
# Fetch PRs again
|
||||
PRS=$(curl -s -H "Authorization: token $RENOVATE_TOKEN" "$GITEA_API_URL/repos/$REPO_OWNER/$REPO_NAME/pulls?state=open")
|
||||
|
||||
# Verify Nginx PR
|
||||
NGINX_PR_NUM=$(echo "$PRS" | jq -r '.[] | select(.title | contains("Update nginx Docker tag")) | .number')
|
||||
if [ -n "$NGINX_PR_NUM" ] && [ "$NGINX_PR_NUM" != "null" ]; then
|
||||
echo "API Verification: Nginx PR found (#$NGINX_PR_NUM)."
|
||||
|
||||
# Verify Content
|
||||
DIFF=$(curl -s -H "Authorization: token $RENOVATE_TOKEN" "$GITEA_API_URL/repos/$REPO_OWNER/$REPO_NAME/pulls/$NGINX_PR_NUM.diff")
|
||||
if echo "$DIFF" | grep -q "nginx:1.27.5"; then
|
||||
echo "Content Verification: Nginx version update found in diff."
|
||||
else
|
||||
echo "Content Verification Failed: Nginx version update NOT found in diff."
|
||||
exit 1
|
||||
fi
|
||||
else
|
||||
echo "API Verification Failed: Nginx PR not found."
|
||||
exit 1
|
||||
fi
|
||||
|
||||
# Verify Actions/Checkout PR
|
||||
ACTIONS_PR_NUM=$(echo "$PRS" | jq -r '.[] | select(.title | contains("Update actions/checkout action")) | .number')
|
||||
if [ -n "$ACTIONS_PR_NUM" ] && [ "$ACTIONS_PR_NUM" != "null" ]; then
|
||||
echo "API Verification: Actions/Checkout PR found (#$ACTIONS_PR_NUM)."
|
||||
|
||||
# Verify Content
|
||||
DIFF=$(curl -s -H "Authorization: token $RENOVATE_TOKEN" "$GITEA_API_URL/repos/$REPO_OWNER/$REPO_NAME/pulls/$ACTIONS_PR_NUM.diff")
|
||||
if echo "$DIFF" | grep -q "actions/checkout@v4"; then
|
||||
echo "Content Verification: Actions/Checkout version update found in diff."
|
||||
else
|
||||
echo "Content Verification Failed: Actions/Checkout version update NOT found in diff."
|
||||
exit 1
|
||||
fi
|
||||
else
|
||||
echo "API Verification Failed: Actions/Checkout PR not found."
|
||||
exit 1
|
||||
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!"
|
||||
131
scripts/test-renovate.sh
Executable file
131
scripts/test-renovate.sh
Executable file
@@ -0,0 +1,131 @@
|
||||
#!/bin/bash
|
||||
set -e
|
||||
|
||||
# Configuration
|
||||
GITEA_API_URL="https://gitea.kovagoadi.hu/api/v1"
|
||||
REPO_OWNER="renovate-test"
|
||||
REPO_NAME="test"
|
||||
RENOVATE_CONFIG_FILE=${RENOVATE_CONFIG_FILE:-"/workspace/kovagoadi.hu/Renovate/renovate-config.js"}
|
||||
|
||||
# Ensure RENOVATE_TOKEN is available
|
||||
if [ -z "$RENOVATE_TOKEN" ]; then
|
||||
echo "Error: RENOVATE_TOKEN is not set."
|
||||
exit 1
|
||||
fi
|
||||
|
||||
# Cleanup function
|
||||
cleanup() {
|
||||
echo "Cleaning up..."
|
||||
# Delete renovate.json from main branch if it exists (to reset state)
|
||||
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')
|
||||
|
||||
if [ "$FILE_SHA" != "null" ] && [ -n "$FILE_SHA" ]; then
|
||||
echo "Deleting renovate.json to reset repository state..."
|
||||
curl -s -X DELETE -H "Authorization: token $RENOVATE_TOKEN" \
|
||||
-H "Content-Type: application/json" \
|
||||
-d "{\"message\": \"Cleanup: Delete renovate.json\", \"sha\": \"$FILE_SHA\", \"branch\": \"main\"}" \
|
||||
"$GITEA_API_URL/repos/$REPO_OWNER/$REPO_NAME/contents/renovate.json"
|
||||
fi
|
||||
rm -f renovate-output-pre.log renovate-output-post.log
|
||||
}
|
||||
|
||||
# Register cleanup to run on exit
|
||||
trap cleanup EXIT
|
||||
|
||||
echo "Validating Renovate configuration..."
|
||||
renovate-config-validator
|
||||
|
||||
# --- Phase 1: Pre-Onboarding Dry-Run ---
|
||||
echo "Running Renovate dry-run (Phase 1: Pre-Onboarding)..."
|
||||
# Ensure repo is clean first
|
||||
cleanup
|
||||
|
||||
set +e
|
||||
renovate --dry-run=full > renovate-output-pre.log 2>&1
|
||||
RENOVATE_EXIT_CODE=$?
|
||||
set -e
|
||||
cat renovate-output-pre.log
|
||||
|
||||
if [ $RENOVATE_EXIT_CODE -ne 0 ]; then
|
||||
echo "Error: Renovate dry-run (Phase 1) failed."
|
||||
exit 1
|
||||
fi
|
||||
|
||||
echo "Checking for onboarding PR in Phase 1..."
|
||||
if ! grep -q "Would create onboarding PR" renovate-output-pre.log; then
|
||||
echo "Error: Expected 'Would create onboarding PR' not found in Phase 1 output."
|
||||
exit 1
|
||||
fi
|
||||
echo "Phase 1 Passed: Onboarding PR detected."
|
||||
|
||||
# --- Phase 2: Onboarding Simulation ---
|
||||
echo "Simulating Onboarding..."
|
||||
# Content of renovate.json (base64 encoded for API if needed, but Gitea API takes content string)
|
||||
# We'll use a simple config similar to the repo's renovate.json
|
||||
CONTENT=$(cat <<EOF
|
||||
{
|
||||
"\$schema": "https://docs.renovatebot.com/renovate-schema.json",
|
||||
"extends": [
|
||||
"config:recommended"
|
||||
],
|
||||
"pinDigests": true
|
||||
}
|
||||
EOF
|
||||
)
|
||||
# Base64 encode content
|
||||
CONTENT_B64=$(echo "$CONTENT" | base64 -w 0)
|
||||
|
||||
echo "Pushing renovate.json to $REPO_OWNER/$REPO_NAME..."
|
||||
CREATE_RESP=$(curl -s -X POST -H "Authorization: token $RENOVATE_TOKEN" \
|
||||
-H "Content-Type: application/json" \
|
||||
-d "{\"content\": \"$CONTENT_B64\", \"message\": \"Simulate Onboarding: Add renovate.json\", \"branch\": \"main\"}" \
|
||||
"$GITEA_API_URL/repos/$REPO_OWNER/$REPO_NAME/contents/renovate.json")
|
||||
|
||||
if echo "$CREATE_RESP" | grep -q "sha"; then
|
||||
echo "renovate.json pushed successfully."
|
||||
else
|
||||
echo "Error pushing renovate.json: $CREATE_RESP"
|
||||
exit 1
|
||||
fi
|
||||
|
||||
# --- Phase 3: Post-Onboarding Dry-Run ---
|
||||
echo "Running Renovate dry-run (Phase 3: Post-Onboarding)..."
|
||||
set +e
|
||||
renovate --dry-run=full > renovate-output-post.log 2>&1
|
||||
RENOVATE_EXIT_CODE=$?
|
||||
set -e
|
||||
cat renovate-output-post.log
|
||||
|
||||
if [ $RENOVATE_EXIT_CODE -ne 0 ]; then
|
||||
echo "Error: Renovate dry-run (Phase 3) failed."
|
||||
exit 1
|
||||
fi
|
||||
|
||||
# Specific assertions based on the test repo state (now onboarded)
|
||||
echo "Checking for expected nginx update..."
|
||||
if ! grep -q "renovate/nginx-" renovate-output-post.log; then
|
||||
echo "Error: Expected 'renovate/nginx-' branch not found in Phase 3 output."
|
||||
exit 1
|
||||
fi
|
||||
|
||||
echo "Checking for nginx PR title..."
|
||||
if ! grep -q "Update nginx Docker tag to" renovate-output-post.log; then
|
||||
echo "Error: Expected PR title 'Update nginx Docker tag to...' not found."
|
||||
exit 1
|
||||
fi
|
||||
|
||||
echo "Checking for expected actions/checkout update..."
|
||||
if ! grep -q "renovate/actions-checkout-" renovate-output-post.log; then
|
||||
echo "Error: Expected 'renovate/actions-checkout-' branch not found in Phase 3 output."
|
||||
exit 1
|
||||
fi
|
||||
|
||||
echo "Checking for actions/checkout PR title..."
|
||||
if ! grep -q "Update actions/checkout action to" renovate-output-post.log; then
|
||||
echo "Error: Expected PR title 'Update actions/checkout action to...' not found."
|
||||
exit 1
|
||||
fi
|
||||
|
||||
echo "Phase 3 Passed: Update PRs detected."
|
||||
echo "All Dry-Run Tests Passed!"
|
||||
Reference in New Issue
Block a user