我想在我的项目中安装一些作曲家依赖项。我们将这些依赖项托管在本地Gitlab存储库中。根据作曲家文档,我有两种选择来验证适用于Gitlab的作曲家:
创建Gitlab令牌非常容易,并且可以与HTTP存储库一起使用,但是问题是该项目配置为使用ssh而不是Http请求,并且出于某些内部原因,我的同事不想更改它。
所以我有oauth密钥,但是我不知道如何在gitlab中创建OAuth令牌。我尝试在用户->设置->访问令牌中创建,但我认为这不是OAuth令牌。
然后,我还尝试创建用户->设置->应用程序,并创建应用程序令牌,以在composer中使用它,但它也不起作用。
我发现的唯一方法是在没有任何配置的情况下执行composer,填充我的用户/密码,然后检查由Composer创建的auth.json中的令牌,但这是一种非常难看的方法。
有人可以在这里说些什么吗?
答案 0 :(得分:1)
根据https://github.com/composer/composer/blame/0fe200d6d950b0774688713be3153bb410eb70b8/src/Composer/Util/GitLab.php#L166,应为
https://<yourgitlab.domain>/oauth/token
。但是您需要发送包含以下数据的POST请求:https://docs.gitlab.com/ee/api/oauth2.html#resource-owner-password-credentials-flow