Obtenir gitlab-ci jeton avec gitlab API
Il n'est pas clair à partir de l'API comment obtenir le jeton qui peut être utilisé pour cloner http dépôts.
À partir de la documentation ici:
http://doc.gitlab.com/ee/ci/api/README.html
Il devrait être possible d'OBTENIR cette url:
http://gitlab.com/ci/api/v1/projects?private_token=QVy1PB7sTxfy4pqfZM1U&url=http://demo.gitlab.com/
Je ne suis pas sûr de l'endroit où le url
paramètre est pris, mais même avec mon jeton, il reçoit une page d'erreur 404.
J'ai essayé avec le ci
sous-domaine, mais il suffit de rediriger le moi gitlab.com.
Cela dit, je vais expliquer un peu plus pourquoi j'en ai besoin. J'ai un serveur qui peut avoir de multiples projets. Chacun des projets contiendra une liste de référentiels privés/publics chaque projet doit être cloné/tiré et quelle que soit régulièrement. Contrairement à github, gitlab n'est pas un oauth2 jeton qui est au niveau du site et au lieu de fournir un CI-jeton pour chaque projet. Je pourrait faire en sorte que l'utilisateur d'entrer le jeton pour chaque projet, mais que c'est beaucoup plus compliqué que d'entrer dans le privé jeton.
Sur l'autre main, j'ai pu générer des clés SSH pour chacun des utilisateurs et ajouter la clé publique à leur compte et de cette façon, il serait possible de récupérer/clone avec ssh au lieu de http. Mais c'est un peu plus de travail sur ma fin, que juste aller chercher un jeton et le clonage avec un basic auth url
git clone https://gitlab-ci-token:[email protected]/project.git
OriginalL'auteur Loïc Faure-Lacroix | 2016-01-18
Vous devez vous connecter pour publier un commentaire.
L'url pour récupérer le jeton se trouve dans le chemin suivant /profil/compte.
Ou vous pouvez simplement naviguer à Paramètres de Profil -> Compte
Aussi assurez-vous d'utiliser la bonne version de l'api. Au moment de cette intervention est actuellement sur v3 /api/v3/projets?private_token={my_private_token}
C'est exactement ce que je parle. J'ai vu la question, résolu sur mon Gitlab-CI et ensuite répondu. Mais encore, c'est comment vous obtenez l'IC privé jeton.
Non, l'API que vous avez lié api/v3/projets est un gitlab api non de l'IC de l'API. L'IC de l'API dans le cadre du
/ci/api/:version
préfixe. Apparemment, l'API qui était présent dans la documentation au moment où j'ai écrit cette question a disparu et a déménagé à la main "gitlab" de l'api. J'en avais besoin pour webhooks. Je pense que ça a changé quand gitlab-ci et gitlab assez bien fusionnent et deviennent un seul produit.Correct, mais pour répondre à votre question. Le jeton se trouve sous Paramètres de Profil -> Compte
Regarde comme il a déménagé à Jetons d'Accès dans les Paramètres de l'Utilisateur? gitlab.com/profile/personal_access_tokens Là, vous pouvez créer un jeton d'accès et d'accorder l'accès à l'API par exemple.
OriginalL'auteur lac_dev
Je dirais pour vérifier le type de jeton que vous voulez.
Privé jeton?
Accédez à Paramètres de Profil -> compte.
Un jeton peut être généré si vous voulez déclencher une nouvelle CI/CD pipeline et cela peut être fait en accédant aux Paramètres du Projet-> CI/CD pipelines -> Créer un jeton
Aussi, Il est important que vous avez le droit de privilèges pour Git.
OriginalL'auteur Padma Channal