@@ -166,35 +166,45 @@ jobs:
166166 env :
167167 MAINTAINERS : ${{ env.maintainers }}
168168 TEAM_MEMBERS : ${{ env.team_members }}
169+ - name : Install jq
170+ run : sudo apt-get install -y jq
169171
170- - name : Validate GitHub usernames
172+ - name : Validate GitHub usernames with full names
171173 shell : bash
172174 run : |
173- # Function to validate a GitHub username
174- validate_username () {
175+ # Function to validate a GitHub username and get full name
176+ validate_username_with_name () {
175177 local username=$1
176178 response=$(curl -s -H "Authorization: token $GITHUB_TOKEN" "https://api.github.com/users/$username")
177- if echo "$response" | grep -q '"login":'; then
178- echo "✅ Valid GitHub user: $username"
179- else
179+
180+ if ! echo "$response" | grep -q '"login":'; then
180181 echo "::error::❌ Invalid or non-existent GitHub user: $username"
181182 echo "Response: $response"
182183 exit 1
183184 fi
185+
186+ login=$(echo "$response" | jq -r '.login')
187+ name=$(echo "$response" | jq -r '.name // empty')
188+
189+ if [ -z "$name" ]; then
190+ echo "::warning::⚠️ GitHub user $login exists but has no full name set"
191+ else
192+ echo "✅ Valid GitHub user: $login (Name: $name)"
193+ fi
184194 }
185195
186196 echo "Validating maintainers..."
187197 IFS=',' read -ra MAINTAINER_ARRAY <<< "$MAINTAINERS"
188198 for user in "${MAINTAINER_ARRAY[@]}"; do
189199 trimmed=$(echo "$user" | xargs)
190- [ "$trimmed" != "none" ] && validate_username "$trimmed"
200+ [ "$trimmed" != "none" ] && validate_username_with_name "$trimmed"
191201 done
192202
193203 echo "Validating team members..."
194204 IFS=',' read -ra MEMBER_ARRAY <<< "$TEAM_MEMBERS"
195205 for user in "${MEMBER_ARRAY[@]}"; do
196206 trimmed=$(echo "$user" | xargs)
197- [ "$trimmed" != "none" ] && validate_username "$trimmed"
207+ [ "$trimmed" != "none" ] && validate_username_with_name "$trimmed"
198208 done
199209 env :
200210 GITHUB_TOKEN : ${{ secrets.GITHUB_TOKEN }}
0 commit comments