debian-mirror-gitlab/doc/api/deploy_key_multiple_projects.md

30 lines
961 B
Markdown
Raw Normal View History

2014-09-02 18:07:02 +05:30
# Adding deploy keys to multiple projects
2016-04-02 18:10:28 +05:30
If you want to easily add the same deploy key to multiple projects in the same
group, this can be achieved quite easily with the API.
2014-09-02 18:07:02 +05:30
2016-04-02 18:10:28 +05:30
First, find the ID of the projects you're interested in, by either listing all
projects:
2014-09-02 18:07:02 +05:30
```
2016-04-02 18:10:28 +05:30
curl -H 'PRIVATE-TOKEN: 9koXpg98eAheJpvBs5tK' https://gitlab.example.com/api/v3/projects
2014-09-02 18:07:02 +05:30
```
2016-04-02 18:10:28 +05:30
Or finding the ID of a group and then listing all projects in that group:
2014-09-02 18:07:02 +05:30
```
2016-04-02 18:10:28 +05:30
curl -H 'PRIVATE-TOKEN: 9koXpg98eAheJpvBs5tK' https://gitlab.example.com/api/v3/groups
2014-09-02 18:07:02 +05:30
# For group 1234:
2016-04-02 18:10:28 +05:30
curl -H 'PRIVATE-TOKEN: 9koXpg98eAheJpvBs5tK' https://gitlab.example.com/api/v3/groups/1234
2014-09-02 18:07:02 +05:30
```
With those IDs, add the same deploy key to all:
2016-04-02 18:10:28 +05:30
2014-09-02 18:07:02 +05:30
```
for project_id in 321 456 987; do
2016-04-02 18:10:28 +05:30
curl -X POST -H "PRIVATE-TOKEN: 9koXpg98eAheJpvBs5tK" -H "Content-Type: application/json" \
--data '{"title": "my key", "key": "ssh-rsa AAAA..."}' https://gitlab.example.com/api/v3/projects/${project_id}/keys
2014-09-02 18:07:02 +05:30
done
```