将 "last_activity_on" 等 Gitlab 用户详细信息获取到 excel sheet 中的脚本

Script to get the Gitlab User details like "last_activity_on" into an excel sheet

我们在 GitLab 中有大约 10k 用户。我们需要准备一个 excel sheet,其中包含用户详细信息,例如上次 activity、上次登录、创建、活动或非活动等

这些是我们需要在 excel sheet.

中捕获的详细信息

为了实现这一点,我们将使用 Gitlab API https://docs.gitlab.com/ee/api/users.html#for-admins

GET /users

为了获得您描述的信息,您需要使用以下脚本和 admin access token

#!/bin/bash

echo "Username,Email,State,Created At,Last sign in at, last activity on" > user_activity.csv
curl -s --header "PRIVATE-TOKEN: <admin_access_token>" https://gitlab.example.com/api/v4/users | jq '.[]' | jq "select ((.web_url | contains(\"bot\") | not))" | jq '"\(.username) \(.email) \(.state) \(.created_at) \(.last_sign_in_at) \(.last_activity_on)"' | sed 's/^"\(.*\)"$//' | sed 's/ \{1,\}/,/g' >> user_activity.csv
ssconvert user_activity.csv user_activity.xls

输出为user_activity.xls