如何使用 Bash 在 GitLab 服务器中创建存储库?
How to create repository in GitLab server using Bash?
为了在自托管的 GitLab 服务器中创建一个名为 some-example-repository
的空存储库,我编写了以下 bash 方法:
create_repository() {
repo_name=""
# load personal_access_token (from hardcoded data)
personal_access_token=$(echo "$GITLAB_PERSONAL_ACCESS_TOKEN" | tr -d '\r')
# Create the repository in the GitLab server
{ # try
output=$(curl -H "Content-Type:application/json" http://127.0.0.1/api/v4/projects?private_token="$personal_access_token" -d "{ \"name\": \"$repo_name\" }")
echo "output=$output"
true
} || { # catch
true
}
}
但是,它运行不可靠,有时会指示达到限制。因此,我想问:如何使用 Bash 和个人访问令牌在自托管 GitLab 服务器中可靠地创建一个空的 GitLab 存储库?
我会检查 API limits 看看你是否击中了那个。最有可能的是,如果您在 for
循环中执行此操作,您可能需要加入一些 sleep 60
来减慢速度。
我以前创建过一百个回购协议,但我偏执并在创建之间使用 sleep 300
。
为了在自托管的 GitLab 服务器中创建一个名为 some-example-repository
的空存储库,我编写了以下 bash 方法:
create_repository() {
repo_name=""
# load personal_access_token (from hardcoded data)
personal_access_token=$(echo "$GITLAB_PERSONAL_ACCESS_TOKEN" | tr -d '\r')
# Create the repository in the GitLab server
{ # try
output=$(curl -H "Content-Type:application/json" http://127.0.0.1/api/v4/projects?private_token="$personal_access_token" -d "{ \"name\": \"$repo_name\" }")
echo "output=$output"
true
} || { # catch
true
}
}
但是,它运行不可靠,有时会指示达到限制。因此,我想问:如何使用 Bash 和个人访问令牌在自托管 GitLab 服务器中可靠地创建一个空的 GitLab 存储库?
我会检查 API limits 看看你是否击中了那个。最有可能的是,如果您在 for
循环中执行此操作,您可能需要加入一些 sleep 60
来减慢速度。
我以前创建过一百个回购协议,但我偏执并在创建之间使用 sleep 300
。