fix
This commit is contained in:
@@ -16,19 +16,14 @@ on:
|
|||||||
|
|
||||||
jobs:
|
jobs:
|
||||||
solve:
|
solve:
|
||||||
# Для автоматического запуска по метке
|
# Запускать при ручном триггере ИЛИ при добавлении метки ai-solve
|
||||||
if: |
|
if: |
|
||||||
(gitea.event_name == 'workflow_dispatch') ||
|
(gitea.event_name == 'workflow_dispatch') ||
|
||||||
(gitea.event_name == 'issues' && contains(gitea.event.issue.labels.*.name, 'ai-solve'))
|
(gitea.event_name == 'issues' && contains(gitea.event.labels.*.name, 'ai-solve'))
|
||||||
|
|
||||||
runs-on: opencode
|
runs-on: opencode
|
||||||
|
|
||||||
steps:
|
steps:
|
||||||
- name: Checkout repository
|
|
||||||
uses: actions/checkout@v4
|
|
||||||
with:
|
|
||||||
token: ${{ secrets.GGITEA_TOKEN }}
|
|
||||||
|
|
||||||
- name: Debug environment
|
- name: Debug environment
|
||||||
run: |
|
run: |
|
||||||
echo "=== Debug Info ==="
|
echo "=== Debug Info ==="
|
||||||
@@ -41,36 +36,72 @@ jobs:
|
|||||||
echo "event.labels: ${{ toJSON(gitea.event.labels) }}"
|
echo "event.labels: ${{ toJSON(gitea.event.labels) }}"
|
||||||
echo "=== End Debug ==="
|
echo "=== End Debug ==="
|
||||||
|
|
||||||
|
- name: Setup issue data
|
||||||
|
id: setup
|
||||||
|
run: |
|
||||||
|
echo "Determining issue number based on event type..."
|
||||||
|
|
||||||
|
if [[ "${{ gitea.event_name }}" == "workflow_dispatch" ]]; then
|
||||||
|
# Ручной запуск - берем из inputs
|
||||||
|
ISSUE_NUMBER="${{ gitea.event.inputs.issue_number }}"
|
||||||
|
echo "Manual run - Issue number: $ISSUE_NUMBER"
|
||||||
|
elif [[ "${{ gitea.event_name }}" == "issues" ]]; then
|
||||||
|
# Автоматический запуск - берем из события issue
|
||||||
|
ISSUE_NUMBER="${{ gitea.event.issue.number }}"
|
||||||
|
echo "Auto run - Issue number: $ISSUE_NUMBER"
|
||||||
|
else
|
||||||
|
echo "Unknown event type: ${{ gitea.event_name }}"
|
||||||
|
exit 1
|
||||||
|
fi
|
||||||
|
|
||||||
|
echo "issue_number=$ISSUE_NUMBER" >> $GITHUB_OUTPUT
|
||||||
|
echo "event_type=${{ gitea.event_name }}" >> $GITHUB_OUTPUT
|
||||||
|
|
||||||
|
- name: Checkout repository
|
||||||
|
uses: actions/checkout@v4
|
||||||
|
with:
|
||||||
|
token: ${{ secrets.GGITEA_TOKEN }}
|
||||||
|
|
||||||
- name: Solve Issue
|
- name: Solve Issue
|
||||||
env:
|
env:
|
||||||
GGITEA_URL: ${{ secrets.GGITEA_URL }}
|
GGITEA_URL: ${{ secrets.GGITEA_URL }}
|
||||||
GGITEA_TOKEN: ${{ secrets.GGITEA_TOKEN }}
|
GGITEA_TOKEN: ${{ secrets.GGITEA_TOKEN }}
|
||||||
# Правильные пути для Gitea
|
|
||||||
REPO_OWNER: ${{ gitea.repository_owner }}
|
REPO_OWNER: ${{ gitea.repository_owner }}
|
||||||
REPO_NAME: ${{ gitea.repository }}
|
REPO_NAME: ${{ gitea.repository }}
|
||||||
# Номер issue в зависимости от типа триггера
|
ISSUE_NUMBER: ${{ steps.setup.outputs.issue_number }}
|
||||||
ISSUE_NUMBER: ${{ gitea.event.inputs.issue_number || gitea.event.issue.number }}
|
EVENT_TYPE: ${{ steps.setup.outputs.event_type }}
|
||||||
# Дополнительная информация
|
|
||||||
EVENT_TYPE: ${{ gitea.event_name }}
|
|
||||||
ISSUE_TITLE: ${{ gitea.event.issue.title || '' }}
|
|
||||||
ISSUE_BODY: ${{ gitea.event.issue.body || '' }}
|
|
||||||
run: |
|
run: |
|
||||||
echo "=== Starting AI Issue Solver ==="
|
echo "=== Starting AI Issue Solver ==="
|
||||||
echo "Event type: $EVENT_TYPE"
|
echo "Event type: $EVENT_TYPE"
|
||||||
echo "Repository: $REPO_OWNER/$REPO_NAME"
|
echo "Repository: $REPO_OWNER/$REPO_NAME"
|
||||||
echo "Issue number: $ISSUE_NUMBER"
|
echo "Issue number: $ISSUE_NUMBER"
|
||||||
echo "Issue title: $ISSUE_TITLE"
|
|
||||||
|
|
||||||
# Проверяем доступность solve-issue
|
# Проверяем наличие команды solve-issue
|
||||||
if ! command -v solve-issue &> /dev/null; then
|
if ! command -v solve-issue >/dev/null 2>&1; then
|
||||||
echo "ERROR: solve-issue command not found!"
|
echo "❌ ERROR: solve-issue command not found in PATH!"
|
||||||
echo "Available commands in PATH:"
|
echo "Current PATH: $PATH"
|
||||||
echo "$PATH" | tr ':' '\n'
|
echo "Trying to find solve-issue..."
|
||||||
command -v ls
|
find / -name "solve-issue" -type f 2>/dev/null | head -5
|
||||||
exit 1
|
exit 1
|
||||||
fi
|
fi
|
||||||
|
|
||||||
# Запускаем решатель
|
echo "✅ solve-issue found at: $(which solve-issue)"
|
||||||
solve-issue
|
echo "📋 Command info:"
|
||||||
|
solve-issue --help || echo "No help available"
|
||||||
|
|
||||||
|
echo "🚀 Executing solve-issue..."
|
||||||
|
# Запускаем с таймаутом на случай зависания
|
||||||
|
timeout 600 solve-issue
|
||||||
|
|
||||||
|
EXIT_CODE=$?
|
||||||
|
if [ $EXIT_CODE -eq 0 ]; then
|
||||||
|
echo "✅ solve-issue completed successfully"
|
||||||
|
elif [ $EXIT_CODE -eq 124 ]; then
|
||||||
|
echo "⏰ solve-issue timed out after 10 minutes"
|
||||||
|
exit 1
|
||||||
|
else
|
||||||
|
echo "❌ solve-issue failed with exit code: $EXIT_CODE"
|
||||||
|
exit $EXIT_CODE
|
||||||
|
fi
|
||||||
|
|
||||||
echo "=== AI Issue Solver finished ==="
|
echo "=== AI Issue Solver finished ==="
|
||||||
Reference in New Issue
Block a user