从私有gitlab加载composer包

时间:2017-09-12 13:16:43

标签: json git composer-php typo3

在我的作曲家设置中,我从2个repos加载包。一个作曲家回购和私人gitlab回购。当我尝试在我的本地Windows机器上安装作曲家时,我收到以下错误消息:

  

GitLab:找不到您要找的项目。致命:   无法从远程存储库读取。请确保你有   正确的访问权限和存储库存在。 ......要求的   在那里的任何版本都找不到包sv-test / testextension   可能是包名中的拼写错误。

通过lokal ssh-key和密码完成身份验证,我的设置没有t seem to be the problem. What错误?

该项目的composer.json如下所示:

{
    "repositories": [
        {
            "type": "composer",
            "url": "https://composer.typo3.org/"
        },
        {
            "type": "git",
            "url": "git@gitlab.xydevbox.de:sv-test/Testproject.git"
        }
    ],
    "name": "svdev/master-dev-box",
    "description": "",
    "type": "project",
    "license": "MIT",
    "homepage": "https://www.xydevbox.de/",
    "authors": [
        {
            "name": "Sacha Vorbeck",
            "email": "sacha.vorbeck@xydevbox.de",
            "homepage": "https://www.xydevbox.de/",
            "role": "Developer"
        }
    ],
    "require": {
        "sv-testbox/testextension": "*",
        "helhum/typo3-console": "^4.5",
        "typo3/cms": "^8.7"
    },
    "config": {
        "sort-packages": true,
        "process-timeout": 2000,
        "preferred-install": {
            "typo3/cms": "source",
            "*": "dist"
        }
    },
    "extra": {
        "typo3/cms": {
            "cms-package-dir": "{$vendor-dir}/typo3/cms",
            "web-dir": "web"
        }
    }
}

要从gitlab私有仓库中包含的包中的composer.json如下所示:

{
  "name": "sv-testbox/testextension",
  "type": "typo3-cms-extension",
  "description": "",
  "homepage": "https://www.xydevbox.de/",
  "license": ["GPL-2.0+"],
  "keywords": ["TYPO3 CMS"],
  "version": "master",
  "dist": {
    "url": "git@gitlab.xydevbox.de:sv-test/Testproject.git",
    "type": "git"
  }
}

2 个答案:

答案 0 :(得分:1)

如果您查看发行说明

,也许最新的作曲家版本1.5.2适合您
  
      
  • 修正了GitLabDriver在某些情况下无休止地循环
  •   
  • 固定   GitLabDriver支持未经身份验证的请求
  •   
  • 修正了GitLab zip   如果未经身份验证,下载不会触发凭据提示
  •   
  • 固定   它现在适用于COMPOSER_ROOT_VERSION的路径存储库支持   所有路径回购在同一个git存储库中
  •   
  • 固定路径存储库   处理副本以避免复制VCS文件和其他文件
  •   
  • 固定   子目录调用也忽略list和create-project命令   使用--working-dir
  • 调用Composer   
  • 修正无效警告   在非稳定包裹上调用删除时出现
  •   

https://github.com/composer/composer/releases

答案 1 :(得分:0)

谢谢Georg和NextThursday。在TYPO3松弛的帮助下,我终于让它运行了。替换部分丢失了。我还了解到不应该手动编辑composer.json文件 - 总是使用命令行选项来修改它。这个例子:https://github.com/TYPO3-Console/TYPO3-Console/blob/master/composer.json也很有帮助。

project composer.json:

{
    "repositories": [
        {
            "type": "composer",
            "url": "https://composer.typo3.org/"
        },
        {
            "type": "vcs",
            "url": "https://github.com/svorbeck/masterconfig"
        }
    ],
    "name": "svorbeck/demo",
    "description": "",
    "type": "project",
    "license": "MIT",
    "homepage": "https://xydevbox.de/",
    "authors": [
        {
            "name": "Sacha Vorbeck",
            "email": "sacha.vorbeck@xydevbox.de",
            "role": "Developer"
        }
    ],
    "require": {
        "svorbeck/masterconfig": "dev-master",
        "typo3/cms": "^8.7"
    },
    "config": {
        "sort-packages": true,
        "process-timeout": 2000,
        "preferred-install": {
            "typo3/cms": "source",
            "svorbeck/masterconfig": "source",
            "*": "dist"
        }
    },
    "extra": {
        "typo3/cms": {
            "cms-package-dir": "{$vendor-dir}/typo3/cms",
            "web-dir": "web"
        },
        "helhum/typo3-console": {
            "install-extension-dummy": "0"
        }
    }
}

ext composer.json:

{
    "name": "svorbeck/masterconfig",
    "type": "typo3-cms-extension",
    "description": "svorbeck master configuration",
    "require": {
        "typo3/cms-core": "^8.7"
    },
    "replace": {
        "masterconfig": "self.version",
        "svorbeck/masterconfig": "self.version"
    }
}