initial commit
This commit is contained in:
105
02/02-k-git-server-deploy.11.sh
Executable file
105
02/02-k-git-server-deploy.11.sh
Executable file
@@ -0,0 +1,105 @@
|
||||
#!/bin/bash
|
||||
#===============================================================================
|
||||
# ШАГ 11: СОЗДАНИЕ АДМИНИСТРАТОРА GITEA
|
||||
#===============================================================================
|
||||
# Запуск: sudo bash 02-k-git-server-deploy.11.sh
|
||||
#===============================================================================
|
||||
|
||||
SCRIPT_DIR=$(cd "$(dirname "$0")" && pwd)
|
||||
source "$SCRIPT_DIR/02-k-git-server-deploy.00.sh"
|
||||
|
||||
init_log
|
||||
check_root
|
||||
|
||||
print_header "ШАГ 11: СОЗДАНИЕ АДМИНИСТРАТОРА GITEA"
|
||||
|
||||
#-------------------------------------------------------------------------------
|
||||
# 11.1 Проверка Gitea
|
||||
#-------------------------------------------------------------------------------
|
||||
print_subheader "Проверка Gitea"
|
||||
|
||||
if ! service_running gitea; then
|
||||
print_error "Gitea не запущена!"
|
||||
print_info "Сначала выполните шаг 06: bash 02-k-git-server-deploy.06.sh"
|
||||
exit 1
|
||||
fi
|
||||
|
||||
print_success "Gitea запущена"
|
||||
|
||||
#-------------------------------------------------------------------------------
|
||||
# 11.2 Генерация пароля
|
||||
#-------------------------------------------------------------------------------
|
||||
print_subheader "Генерация пароля"
|
||||
|
||||
GITEA_PASS=$(generate_password)
|
||||
print_success "Пароль сгенерирован"
|
||||
|
||||
#-------------------------------------------------------------------------------
|
||||
# 11.3 Проверка существования пользователя
|
||||
#-------------------------------------------------------------------------------
|
||||
print_subheader "Проверка пользователя"
|
||||
|
||||
if su -c "$GITEA_BIN admin user list --config $GITEA_CONFIG" git 2>/dev/null | grep -q "$GITEA_ADMIN"; then
|
||||
print_warning "Пользователь $GITEA_ADMIN уже существует"
|
||||
read -p "Задать новый пароль? [y/N]: " NEW_PASS
|
||||
if [[ "$NEW_PASS" =~ ^[Yy]$ ]]; then
|
||||
read -s -p "Введите новый пароль: " GITEA_PASS
|
||||
echo ""
|
||||
|
||||
su -c "$GITEA_BIN admin user change-password --username '$GITEA_ADMIN' --password '$GITEA_PASS' --config $GITEA_CONFIG" git
|
||||
print_success "Пароль изменён"
|
||||
else
|
||||
print_info "Пароль оставлен без изменений"
|
||||
fi
|
||||
|
||||
save_admin_credentials "$GITEA_ADMIN" "(не изменён)"
|
||||
print_success "Шаг 11 завершён"
|
||||
exit 0
|
||||
fi
|
||||
|
||||
#-------------------------------------------------------------------------------
|
||||
# 11.4 Создание пользователя-администратора
|
||||
#-------------------------------------------------------------------------------
|
||||
print_subheader "Создание администратора"
|
||||
|
||||
print_info "Создание пользователя: $GITEA_ADMIN"
|
||||
print_info "Email: $GITEA_ADMIN_EMAIL"
|
||||
|
||||
if su -c "$GITEA_BIN admin user create \
|
||||
--username '$GITEA_ADMIN' \
|
||||
--email '$GITEA_ADMIN_EMAIL' \
|
||||
--password '$GITEA_PASS' \
|
||||
--admin \
|
||||
--config '$GITEA_CONFIG'" git 2>&1; then
|
||||
|
||||
print_success "Администратор создан"
|
||||
else
|
||||
print_error "Не удалось создать администратора"
|
||||
print_info "Попробуйте создать через веб-интерфейс: https://$GIT_DOMAIN"
|
||||
exit 1
|
||||
fi
|
||||
|
||||
#-------------------------------------------------------------------------------
|
||||
# 11.5 Сохранение учётных данных
|
||||
#-------------------------------------------------------------------------------
|
||||
print_subheader "Сохранение учётных данных"
|
||||
|
||||
save_admin_credentials "$GITEA_ADMIN" "$GITEA_PASS"
|
||||
|
||||
#-------------------------------------------------------------------------------
|
||||
# 11.6 Вывод информации
|
||||
#-------------------------------------------------------------------------------
|
||||
echo ""
|
||||
echo -e "${YELLOW}============================================================${NC}"
|
||||
echo -e "${YELLOW} ДАННЫЕ АДМИНИСТРАТОРА GITEA${NC}"
|
||||
echo -e "${YELLOW}============================================================${NC}"
|
||||
echo ""
|
||||
echo " URL: https://$GIT_DOMAIN"
|
||||
echo " Логин: $GITEA_ADMIN"
|
||||
echo " Пароль: $GITEA_PASS"
|
||||
echo ""
|
||||
echo -e "${RED}ВАЖНО: Смените пароль после первого входа!${NC}"
|
||||
echo -e "${RED}Данные сохранены в /root/.gitea-admin-credentials${NC}"
|
||||
echo ""
|
||||
|
||||
print_success "Шаг 11 завершён: Администратор создан"
|
||||
Reference in New Issue
Block a user