contao-community-alliance / composer-plugin

Composer plugin that provide contao integration and installer.
GNU Lesser General Public License v3.0
7 stars 10 forks source link

Nutzung für das Distributions-Repository #15

Closed leofeyer closed 10 years ago

leofeyer commented 10 years ago

Ich habe gestern ja noch lange mit @discordier darüber gesprochen, wie man Composer innerhalb des zukünftig zu verwendenden Distributions-Repositorys (contao/contao) anstatt Git-Submodules einsetzen könnte. Dabei kam es zu ein paar kleineren Problemen, die ich weiter unten beschreibe. Zunächst das Setup:

/var/www/contao/contao
    - system/config/constants.php
    - system/modules/
    - composer.json

/var/www/contao/module-news
    - composer.json

Die composer.json aus dem Root (contao/contao):

{
    "name": "contao/core",
    "type": "project",
    "description": "Contao Open Source CMS",
    "license": "LGPL-3.0+",
    "require": {
        "php": ">=5.3.2",
        "contao/idna": "dev-master",
        "contao/php-diff": "dev-master",
        "contao/tcpdf": "dev-master",
        "simplepie/simplepie": "1.3.*",
        "swiftmailer/swiftmailer": "4.3.*",
        "michelf/php-markdown": "1.4.*",
        "leafo/scssphp": "0.0.*",
        "leafo/lessphp": "0.4.*",
        "contao/module-news": "dev-master"
    },
    "repositories": [
        {
            "type": "git",
            "url": "../module-news"
        }
    ]
}

Die composer.json des News-Moduls (contao/module-news):

{
    "name": "contao/module-news",
    "type": "contao-module",
    "description": "Contao news module",
    "license": "LGPL-3.0+",
    "require": {
        "contao-community-alliance/composer-plugin": "~2.0.0"
    },
    "extra": {
        "contao": {
            "sources": {
                "": "system/modules/news"
            }
        }
    }
}

Problem 1

Beim Update (composer update --prefer-source) ist das Plugin davon ausgegangen, dass ich mich im Unterverzeichnis /composer befinde.

https://github.com/contao-community-alliance/composer-plugin/blob/master/src/ContaoCommunityAlliance/Composer/Plugin/Plugin.php#L457

Ich bin aber zu diesem Zeitpunkt im Root-Verzeichnis.

Problem 2

Das Plugin versucht ständig, mir den Contao-Core zu injecten.

https://github.com/contao-community-alliance/composer-plugin/blob/master/src/ContaoCommunityAlliance/Composer/Plugin/Plugin.php#L99-L116

Das liegt vermutlich am Typ "project", der aber für die Contao-Standard-Edition korrekt ist.

discordier commented 10 years ago

Second part in https://github.com/contao-community-alliance/composer-plugin/commit/3a3ec4562acd9b45b4e51f80926690bb2193c025

To be determined what else is needed.

leofeyer commented 10 years ago

Danke. Wegen mir kann das Ticket geschlossen werden, denn ich hatte für das andere Problem ein eigenes Ticket aufgemacht: #16