====== Migrate extensions from contifex.com to typolight.org ======
~~NOTOC~~
This is a brief "how to" for authors who currently have extensions hosted on the test environment on contifex.com. It explains ho to move the extensions over to the productive environment most easy.
The process is made up by these steps:
* [[golive#Deciding what to migrate]]
* [[golive#Preparing extension on contifex.com]]
* [[golive#Download package from contifex.com]]
* [[golive#Create bare extension on typolight.org]]
* [[golive#Upload package on typolight.org]]
* [[golive#Publish the release and languages]]
* [[golive#Check if everything is working]]
===== Deciding what to migrate =====
You might either migrate every release of an extension, or only the latest. Make sure that all required extensions are migrated first, because if a required extension is not yet in the new repository, your package upload would be refused.
This includes that the lowest and highest release of the extension you have declared to be depending on must be available in the new repository. If that is not the case you have two options, as explained in the next chapter.
===== Preparing extension on contifex.com =====
Before you download the package from contifex.com, some housekeeping may be necessary:
* Check that all dependencies listed are available on the new repository. If you for example have a depenency on extension //foobar from 1.0.0 stable to 1.2.3 stable// but on the new repository there is only release 1.2.3 stable, change the dependency versions to match.
* If the extension you depend on is from another author who has not yet migrated it, you can either remove the dependency and re-add it again later when that author catches up, or simply wait until that extension is available in the new repository.
===== Download package from contifex.com =====
Nothing special here, after preparing as described before just download the package to your local machine.
===== Create bare extension on typolight.org =====
>Go to //Manage extensions//:
{{ :repository:golive:mig000.png }}
\\
\\
> Click to add the extension (you won't see the other buttons unless you are a repository manager, please ignore them in the screenshot):
{{ :repository:golive:mig001.png }}
\\
\\
> Enter the extension name and other settings exactly as on contifex.com,\\ then click to add the extension:
{{ :repository:golive:mig002.png }}
\\
\\
===== Upload package on typolight.org =====
> The extension is now created. Since we have all information in the package, there is no need to create anything else (release, languages etc). Everything will be created automatically when uploading the package:
{{ :repository:golive:mig003.png }}
\\
\\
> Next select the package and click //upload package//.\\ In case something goes wrong, for example a broken package or a unresolved dependency, it would be displayed:
{{ :repository:golive:mig004.png }}
\\
\\
===== Publish the release and languages =====
> After successful upload, the site will redirect to the release list of the extension.\\ \\ You will see that the release is initially unpublished, and same are all languages. This gives you the chance to check everything and make modifications before the release gets available for the public.\\ \\ Publish the release once you are prepared to go:
{{ repository:golive:mig005.png }}
\\
\\
> Same procedure for the languages:
{{ :repository:golive:mig006.png }}
\\
\\
===== Check if everything is working =====
Final step is to check if everything is working as expected:
{{ repository:golive:mig007.png }}
\\
\\
To check the SOAP facilities install the [[repository:client|Repository Client]] on a test installation, and check out if the catalog and manager work properly with your extensions.
Instead of:\\ %%http://contifex.com/services/repository.wsdl%%\\ \\ you need to use:\\ %%http://www.typolight.org/services/repository.wsdl%%
In case you already had installed the repo client before and were using it with contifex.com, you need to empty the tables tl_repository_installs and tl_repository_instfiles. Then you can change the WSDL and re-install the extensions from typolight.org.\\ This procedure is necessary because build numbers start counting new on typolight.org