Mein Ziel ist es, eine composer.json
Datei an unser Projekt-Repository zu übergeben, die angibt, welche Designs oder Plugins für dieses Projekt verwendet werden sollen und wann ein Entwickler herunterzieht Das Repo alles, was sie tun müssen, ist die Installation von Composer. Wir wollen die Plugins aus dem Projektrepo heraushalten, um das Aufblähen des Projektrepo zu stoppen und es langsam zu ziehen und zu schieben.Erstellung eines privaten Repositories für WordPress-Themes und Plugins von satis composer
Für Standard-Wordpress-Plugins wie "Jetpack by WordPress.com" ist dies in Ordnung, da wir https://wpackagist.org/ verwenden werden. Für Premium-Plugins und speziell angefertigte Plug-ins, die nicht im Open Source-Verfahren installiert werden können, möchten wir sie jedoch in einem Private Composer Repository hosten.
Da wir mehrere Versionen dieser Plugins haben, möchte ich alle Versionen wie 1.1, 1.2, 1.3 zeigen, damit der Entwickler in der composer.json angeben kann, welche Version benötigt wird, z. wenn eine zukünftige Version etwas kaputt macht und wir auf die vorherige Version zurücksetzen müssen.
Ich habe die Grundlagen der Einrichtung eines privaten Satis-Repository gelesen, die ich getan habe, aber ich kann es nicht durch die Git-Tags der Versionen durchlaufen und auch angeben, dass es ein Wordpress-Plugin und installieren Sie es in der richtigen Lage.
Dies war mein erster Versuch, in dem es alle git Versionen markiert wird:
{
"name": "Private Repository",
"homepage": "http://packages.privaterepo.com",
"repositories": [
{
"type": "vcs",
"url": "[email protected]:companyname/project.git"
}
],
"require-all": true
}
Und dieses ist eine, wo ich die Version angeben müssen, sondern bekommen es in der richtigen Wordpress-Plugin Standort zu installieren:
{
"name": "Private Repository",
"homepage": "http://packages.privaterepo.com",
"repositories": [
{
"type": "package",
"package": {
"name": "company/project",
"description": "WordPress Plugin",
"version": "1.0",
"source": {
"type": "git",
"url": "[email protected]:company/project.git",
"reference": "origin/master"
},
"type": "wordpress-plugin",
"require": {
"php": ">=5.3.2",
"composer/installers": "*"
}
}
}
],
"require-all": true,
"require-dependencies": true,
"extra": {
"installer-paths": {
"wp-content/plugins/{$name}/": ["type:wordpress-plugin"]
}
}
}
Kann jemand beraten, wie ich diese beiden Szenarien zusammen arbeiten?
Ich mache etwas sehr ähnlich zu dir und der einzige Unterschied, den ich sehen kann, ist, dass ich nicht Require-All benötige ich sie alle eins nach dem anderen benötige (also "require": {dann eine Liste). Dies funktioniert gut für mich und die privaten Plugins installieren mit den wpackagist Einsen usw. –
Welche Version des Codes beziehen Sie sich auf die erste oder zweite? –
Sorry Phil, der zweite. Und für die Referenz Unter Quelle) Ich habe das Tag verwendet. –