Hi Joe,
In my opinion, this is one of the big unsolved questions when working with
magnolia.
The packager was an attempt to solve this, but as you point out it is no longer
provided for magnolia 5. Also, when we were using it we found it to be
unreliable, and if you can't be sure that it is transferring everything
*correctly*, then that's worse than not having it at all.
Here are some basic options:
1) use the backup module or the XML-Export feature to export to XML. The XML
can be imported on another instance
--> this is impractical in many real-world scenarios because:
- you have way too many different subtrees that need to be transferred
(content, resources, themes, site-definitions, template-definitions, templates,
dms content, data content, etc....) making individual XML transfer impractical
- the XML files cannot be properly compared using compare tools or in
your SCM
2) copy the repositories - the JCR repository can be copied (filesystem and
database together) and put on another instance. Generally, that works without
problems although you have to watch out that your configuration files are right
(contain the right paths to the repository filesystem, etc...)
- this works well to move all the data from one instance to another.
- merging data between 2 developers is not possible in this way
- usually there are all kinds of settings that need to be changed
(subscriber settings, users) when moving a repo from one instance to another,
meaning there is manual work to do after the repository transfer
3) use the module mechanism - export all your content and integrate it in a
module. your module version handler can make sure the content is always updated
to the correct state when the module installs. your module and all the content
get checked into SCM, meaning you can merge with other developers.
- creating the module and keeping it up-to-date is quite a bit of effort
- working in this way is much slower for template and theme development
than just working within magnolia
- merging the content (XML files) isn't easily possible
4) for templates and resources you can use webdav to access the content
directly. you could access it via webdav and then check it into SCM to merge
with other developers.
- works well for the template and resource contents
- partial solution: doesn't include the metadata (eg resource model
configuration, etc...)
- only works for templates and resources, not defintions, website
content, configuration, etc...
5) There is also a template-sync module somewhere on forge which attempts to
address this problem for specifically for freemarker templates.
I think most people find some kind of solution that is similar to, or a
combination of the solutions above.
I think many teams pick one of 2 directions:
1) prefer flexibility and speed: use inline-templating, work within magnolia,
and use the XML export and webdav in combination with your favourite DIFF-Tool
as best you can to manually sync things up between developers and staging
instances
2) prefer precision: create a module, and define a development process by which
you put your content, templates, configuration, etc... into your module (on
filesystem). Developers and staging instances are then synced up via SCM.
If you find the "perfect" solution, I am sure everyone here will be pleased to
hear about it!
Regards from Vienna,
Richard
-----Ursprüngliche Nachricht-----
Von: [email protected] [mailto:[email protected]]
Im Auftrag von Joe Szurszewski (via Magnolia Forums)
Gesendet: Freitag, 25. Oktober 2013 00:11
An: Magnolia User List
Betreff: [magnolia-user] How to migrate an entire site
So if I spend some time developing a site in my local copy of Magnolia, what is
the best way to migrate the entire site, pages, templates, configuration, etc.
to another developer so he can work on other pieces of the site?
It looked like the Packager tool did this, but it looks like Packager stopped
being available after 4.5? It's mentioned in 4.5 documentation, but not in
version 5 documentation. Also, it looked like Packager was an EE feature, and
I need something that will work in CE.
If Packager isn't available, is it as simple as using my author instance to
Activate to my colleague's author instance instead of to my public instance?
If so, I know CE only allows one subscriber per author instance, so would I
just change the configuration of my one subscriber temporarily, activate to my
colleague's author instance, then change the subscriber configuration back to
my public instance?
Or would it make more sense to always have my author instance activate to my
public instance, then have have my public instance activate to my colleague's
author instance? Is it even possible to have a public instance activate to an
author instance?
Thanks for any insight into how to make this work!
--
Context is everything:
http://forum.magnolia-cms.com/forum/thread.html?threadId=20ca2cd8-a609-4dd9-a913-1441e3bfdcbb
----------------------------------------------------------------
For list details, see http://www.magnolia-cms.com/community/mailing-lists.html
Alternatively, use our forums: http://forum.magnolia-cms.com/
To unsubscribe, E-mail to: <[email protected]>
----------------------------------------------------------------
----------------------------------------------------------------
For list details, see http://www.magnolia-cms.com/community/mailing-lists.html
Alternatively, use our forums: http://forum.magnolia-cms.com/
To unsubscribe, E-mail to: <[email protected]>
----------------------------------------------------------------