¿dónde puedo encontrar el id del proyecto para la api de gitlab?


Uso gitlab en sus servidores. Me gustaría descargar mis últimos artefactos construidos (construir a través de gitlab-ci) a través de la API como esta

curl --header "PRIVATE-TOKEN: 9koXpg98eAheJpvBs5tK" "https://gitlab.com/api/v3/projects/1/builds/8/artifacts"

¿Dónde puedo encontrar este id de proyecto? ¿O esta forma de usar la API no está pensada para proyectos de gitlab alojados?

BW Hubert

Author: Hubert Ströbitzer, 2016-09-18

8 answers

Puede consultar sus proyectos propios:

curl -XGET --header "PRIVATE-TOKEN: XXXX" "https://gitlab.com/api/v3/projects/owned"

Usted recibirá JSON con cada proyecto poseído:

[
  {
    "id":48,
    "description":"",
    "default_branch":"master",
    "tag_list":[
...

También puede obtener el ID del proyecto de la configuración de disparadores en su proyecto que ya tiene un código de ejemplo con su ID.

Desde la página de Disparadores:

curl -X POST \
     -F token=TOKEN \
     -F ref=REF_NAME \
     https://<GitLab Installation>/api/v3/projects/<ProjectID>/trigger/builds
 16
Author: Fairy,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/ajaxhispano.com/template/agent.layouts/content.php on line 61
2017-02-20 16:12:53

En la página Editar proyecto hay un campo ID de proyecto en la esquina superior derecha.

(También puede ver el ID en la página canalizaciones CI/CD, en el código exameple de la sección Triggers.)

En versiones anteriores, se puede ver en la página Desencadenadores, en las URL del código de ejemplo.

 20
Author: Bernát,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/ajaxhispano.com/template/agent.layouts/content.php on line 61
2017-02-17 09:42:29

Acabo de encontrar una manera aún más fácil de obtener el id del proyecto: simplemente vea el contenido HTML de la página de gitlab que aloja su proyecto. Hay una entrada con un campo llamado project_id, por ejemplo:

<input type="hidden" name="project_id" id="project_id" value="335" />
 18
Author: codependent,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/ajaxhispano.com/template/agent.layouts/content.php on line 61
2017-08-04 07:05:19

Introduzca el proyecto.

En el menú de la izquierda, haga clic en Configuración - > General - > Expandir Configuración General

Tiene una etiqueta Project ID y está junto al nombre del proyecto.

Esto es en la versión GitLab 10.2

 14
Author: Martin Naughton,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/ajaxhispano.com/template/agent.layouts/content.php on line 61
2017-11-29 21:03:02

Como se mencionó aquí, todas las API del ámbito del proyecto esperan un ID o la ruta del proyecto (codificada con URL). Así que solo use https://gitlab.com/api/v4/projects/gitlab-org%2Fgitlab-ce directamente cuando se desea interactuar con un proyecto.

 4
Author: Martin Nowak,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/ajaxhispano.com/template/agent.layouts/content.php on line 61
2017-08-22 10:52:19

Solo para el registro, si alguien más tiene la necesidad de descargar artefactos de gitlab.com creado a través de gitlab-ci

  1. Crea un token privado dentro de tu navegador
  2. Obtenga el id del proyecto a través de curl -XGET --header "PRIVATE-TOKEN: YOUR_AD_HERE?" "https://gitlab.com/api/v3/projects/owned"
  3. Descargue el último artefacto de su rama maestra creado a través de un paso de gitlab-ci llamado release curl -XGET --header "PRIVATE-TOKEN: YOUR_AD_HERE?" -o myapp.jar "https://gitlab.com/api/v3/projects/4711/builds/artifacts/master/download?job=release"

Estoy muy impresionado con la belleza de gitlab.

 3
Author: Hubert Ströbitzer,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/ajaxhispano.com/template/agent.layouts/content.php on line 61
2016-09-21 19:09:59

Puede consultar proyectos con el atributo de búsqueda, por ejemplo:

Http://gitlab.com/api/v3/projects?private_token=xxx&search=myprojectname

 2
Author: MTZ4,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/ajaxhispano.com/template/agent.layouts/content.php on line 61
2017-09-12 13:06:26

Busque la pestaña Proyectos en el encabezado de la interfaz principal de Gitlab, Haga clic en el proyecto desired> Haga clic en el Proyecto deseado Now> Ahora en la interfaz del proyecto. > Haga clic con el botón derecho en la Interfaz de usuario UI> haga clic en inspeccionar/Ver fuente de página. > encuentre la etiqueta project_id en la fuente de página. Algo como esto

Y si desea que los problemas se publiquen en GitLab, use la url " https://gitlab.com/api/v4/projects/project_id/issues "

 0
Author: Jay,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/ajaxhispano.com/template/agent.layouts/content.php on line 61
2018-07-27 17:56:31