« Gitlab: utiliser le depot composer » : différence entre les versions

De Adadov.net wiki
Aucun résumé des modifications
Aucun résumé des modifications
Ligne 23 : Ligne 23 :


Une fois votre clé en main, il suffit de faire une simple requête curl
Une fois votre clé en main, il suffit de faire une simple requête curl
{{LxTerm|text=curl --header "PRIVATE-TOKEN: <api_key>" --data branch=<branch> "https://git.exemple.com/api/v4/projects/<project_id>/packages/composer"}}
{{LxTerm|text=curl --header "PRIVATE-TOKEN: <api_key>" --data branch=<branch> "https://git.exemple.com/api/v4/projects/<project_id>/packages/composer"|user=user}}


=== Configuration de composer ===
=== Configuration de composer ===
Ligne 30 : Ligne 30 :


J'utilise le driver Gitlab de composer directement, il permet de configurer directement avec l'URL de votre projet à la place d'une URL API des fois un peu obscure ...
J'utilise le driver Gitlab de composer directement, il permet de configurer directement avec l'URL de votre projet à la place d'une URL API des fois un peu obscure ...
{{LxTerm|text=composer config -g repositories.<repo_name> gitlab <repo_url>}}
{{LxTerm|text=composer config -g repositories.<repo_name> gitlab <repo_url>|user=user}}
Ajoutez aussi votre domaine gitlab dans votre configuration:
Ajoutez aussi votre domaine gitlab dans votre configuration:
{{LxTerm|text=composer config -g gitlab-domains "<gitlab_domains>"}}
{{LxTerm|text=composer config -g gitlab-domains "<gitlab_domains>"|user=user}}
{{Warning|text=Si votre dépôt a une visibilité limitée, Il faudra ajouter votre personal token dans la configuration de composer:}}
{{Warning|text=Si votre dépôt a une visibilité limitée, Il faudra ajouter votre personal token dans la configuration de composer:}}
{{LxTerm|text=composer config -g gitlab-token.<gitlab_domain> <token>}}
{{LxTerm|text=composer config -g gitlab-token.<gitlab_domain> <token>|user=user}}

Version du 9 avril 2022 à 17:26

Introduction

Gitlab intègre des fonctionnalités de dépôt aussi bien pour les packages que les images docker.

Ce qui permet de facilement déployer pour soit même les packages qu'on développe.

Prérequis dans le dépôt

Gitlab nécessite des références pour créer les packages. Il se base sur les étiquettes (tag).

Donc si vous souhaitez créer un package il faudra une étiquette sur le commit qui sera utilisé.

Création du package

Création manuelle

Vous pouvez demander, via l'API uniquement, la création manuelle des package.

Il faudra donc un token API pour utiliser cette fonction avec un minimum les droits suivants:

  • api
  • read_api
  • read_repository
  • read_registry
  • write_registry

Une fois votre clé en main, il suffit de faire une simple requête curl

[user@linux] $ curl --header "PRIVATE-TOKEN: <api_key>" --data branch=<branch> "https://git.exemple.com/api/v4/projects/<project_id>/packages/composer"dblclick to copy

Configuration de composer

Du côté de composer il faudra aussi ajouter votre dépôt, personnellement j'ai choisi de configurer globalement.

J'utilise le driver Gitlab de composer directement, il permet de configurer directement avec l'URL de votre projet à la place d'une URL API des fois un peu obscure ...

[user@linux] $ composer config -g repositories.<repo_name> gitlab <repo_url>dblclick to copy

Ajoutez aussi votre domaine gitlab dans votre configuration:

[user@linux] $ composer config -g gitlab-domains "<gitlab_domains>"dblclick to copy
[user@linux] $ composer config -g gitlab-token.<gitlab_domain> <token>dblclick to copy