Files
illustrated-algorithm/.gitea/workflows/fix-mysql-auth.yaml
T
2026-08-23 15:29:21 +00:00

38 lines
1.5 KiB
YAML

name: Fix MySQL Auth Plugin
on:
workflow_dispatch:
jobs:
fix-mysql:
runs-on: aliyun
steps:
- name: Install docker-cli
run: |
sed -i 's/dl-cdn.alpinelinux.org/mirrors.aliyun.com/g' /etc/apk/repositories
apk add --no-cache docker-cli mysql-client
- name: Find and fix MySQL user
run: |
# Find the MySQL container
MYSQL_CONTAINER=$(docker ps --filter "ancestor=mysql" --format "{{.Names}}" | head -1)
if [ -z "$MYSQL_CONTAINER" ]; then
MYSQL_CONTAINER=$(docker ps --filter "name=mysql" --format "{{.Names}}" | head -1)
fi
echo "MySQL container: $MYSQL_CONTAINER"
if [ -n "$MYSQL_CONTAINER" ]; then
# Execute the ALTER USER command
docker exec "$MYSQL_CONTAINER" mysql -uroot -p"${MYSQL_ROOT_PASSWORD:-}" -e "
ALTER USER 'qwenpaw'@'%' IDENTIFIED WITH caching_sha2_password BY 'cRs3XtJkCp4hhP3y';
FLUSH PRIVILEGES;
SELECT user, host, plugin FROM mysql.user WHERE user='qwenpaw';
" 2>/dev/null || \
docker exec "$MYSQL_CONTAINER" mysql -uroot -e "
ALTER USER 'qwenpaw'@'%' IDENTIFIED WITH caching_sha2_password BY 'cRs3XtJkCp4hhP3y';
FLUSH PRIVILEGES;
SELECT user, host, plugin FROM mysql.user WHERE user='qwenpaw';
" 2>/dev/null || \
echo "ERROR: Could not connect to MySQL as root"
else
echo "ERROR: No MySQL container found"
fi