40 lines
1.7 KiB
Python
40 lines
1.7 KiB
Python
import requests
|
||
import os
|
||
from dotenv import load_dotenv
|
||
|
||
# Загружаем переменные окружения
|
||
load_dotenv()
|
||
# Получаем токен с правами на запись
|
||
TOKEN = os.getenv('GITEA_TOKEN')
|
||
if not TOKEN:
|
||
print("❌ Ошибка: GITEA_TOKEN не найден в файле .env")
|
||
exit()
|
||
# Настраиваем заголовки
|
||
headers = {
|
||
"Authorization": f"token {TOKEN}",
|
||
"Content-Type": "application/json"
|
||
}
|
||
# Данные для создания issue
|
||
issue_data = {
|
||
"title": "Тестовая задача из лабораторной работы 3",
|
||
"body": "Эта задача была создана автоматически через API Gitea в рамках лабораторной работы по сетевым соединениям в Python.\n\n**Выполнено:**\n- TCP/UDP клиент-сервер\n- Анализ трафика в Wireshark\n- HTTP запросы\n- Работа с API"
|
||
}
|
||
print("🔍 Создаем issue через API Gitea...")
|
||
owner = "stud178869"
|
||
repo = "test"
|
||
# Отправляем запрос на создание issue
|
||
response = requests.post(
|
||
f"https://git.vyatsu.ru/api/v1/repos/{owner}/{repo}/issues",
|
||
headers=headers,
|
||
json=issue_data
|
||
)
|
||
print(f"📊 Статус код: {response.status_code}")
|
||
if response.status_code == 201:
|
||
issue_info = response.json()
|
||
print("✅ Issue успешно создана!")
|
||
print(f" Номер: #{issue_info.get('number')}")
|
||
print(f" Заголовок: {issue_info.get('title')}")
|
||
print(f" URL: {issue_info.get('html_url')}")
|
||
else:
|
||
print(f"❌ Ошибка при создании issue: {response.status_code}")
|
||
print(response.text) |