NOTE: The official repository is available in a later version. If you want to share your work or get support for your company please contact us directly.
Hosting and deploying open source projects is easy. However you will notice that there are some validations we run. Without these validations you are not allowed to deploy.
If your are using the org.phpmaven:php-parent-pom as your favorite parent pom you need not configure the repository deployment. If you are using your own parent-pom you must add the fowllowing to your pom.xml.:
org.apache.maven.wagon
wagon-webdav-jackrabbit
2.0
org.apache.maven.wagon
wagon-ftp
2.0
upload-releases-php-maven-org
Official PHP-Maven Releases
http://repos.php-maven.org/releases
upload-snapshots-php-maven-org
Official PHP-Maven Snapshots
http://repos.php-maven.org/snapshots
If you host the website at xworlds you may add the following to deploy the site:
upload-org-mydomain
Mydomain
ftp://ftp.mydomain.org/www.mydomain.org/somepath
After setting up your pom you need maven to tell your username and password. This is usually NEVER made in the pom. But use your settings.xml within the users porifle path: ~/.m2/settings.xml
upload-releases-php-maven-org
YOUR-USERNAME
YOUR_PASSWORD
660
770
upload-snapshots-php-maven-org
YOUR-USERNAME
YOUR_PASSWORD
660
770
upload-org-mydomain
YOUR-USERNAME
YOUR_PASSWORD
660
770
After setting up everything you might test deployment of your first module. NOTE: You should always use a snapshot version (f.e. 0.0.1-SNAPSHOT) for testing the deployment. This is becuase it is allowed to redeploy snapshots but you must not ever delete a released version. You should ensure that there is a valid open source license in your pom.xml. Not using a valid open source license may result in rejected modules.
Use the goal "deploy" to deploy the phar of your module and use the goal "site:deploy" to deploy the generated website.
mvn deploy
mvn site:deploy
As soon as you deployed a new revision you can view the xworlds website again. The module and version is now visible from there. As you see every version and every module contains a status. For know there is a "initializing" status. The module may become one of the following status:
That's it. Your modules are now part of the PHP-Maven repository and they can be downloaded by everyone by simply adding them as a dependency.
If you are owning a PEAR channel or a module on a PEAR channel you may create a PEAR-Channel-Domain too. Notice that you must own the channel.
After adding the PEAR channel or the PEAR module you can configure the interval to check for updates. A minimum of 2 hours is possible. However you can manually scan for upgrade once per hour. This can be used if you commited a hotfix and if you want to appear it at the PHP-Maven repository directly.
You see a link that contains a small report of the PEAR scans and the import of the new versions.
We provide additional support for services. For example you can host web pages or svn/git repositories. Each of these can be created on the website. You need not host everything at xworlds. You can use xworlds to only provide the modules in the repository. We do not describe every feature at this point since most of them should be familiar to you. If you have any questions please ask the community for help.