Important announcement regarding the AVM

by Jeff Potts on February 1, 2012

If you’ve been working with Alfresco for a while you know that there are actually two repository implementations in the product. The original repository implementation is usually called “the repository” or sometimes “the DM repository”. The other repository implementation is called “AVM” which stands for Alternative Versioning Model. It was created to support a Web Content Management solution that included features such as web author sandboxes, a virtualization server, XForms, XSLT transformations, and a repository-to-file system deployment service.

Unfortunately, the “two repositories” issue caused confusion and frustration amongst customers, implementers, and engineers. When deciding how to use Alfresco you were forced to make a choice between using one repository or the other and the functionality between the two differed. The conflicting repositories were also a pain to maintain from an engineering perspective. When the original creators of the AVM left Alfresco a couple of years ago, so too went the passion for maintaining that part of the product. Combined with shifting market dynamics in the WCM space, the AVM repository subsequently languished, and never achieved its full potential.

Alfresco has since added web content features and functionality to the platform that do not require the AVM repository. The transfer and replication service can now be used to move repository content to the file system. The form service makes it easy to configure forms for non-technical users. And the Content Management Interoperability Services (CMIS) API makes it easy to perform CRUD functions against content in the repository using any front-end portal, presentation framework, or programming language that makes sense for a given solution. Drupal is a common choice for this, and is something we use for several sites at Alfresco. Liferay is another popular choice. And for web applications based on Spring, Alfresco provides a sample web application called Web Quick Start that can be used as-is or modified for an end-to-end Web Content Management solution.

The time and attention the AVM demands of the support team and engineering team has become too much–simply put, the cost to maintain and support AVM outweigh the revenue it generates. Therefore, we are announcing that we are no longer selling support subscriptions for AVM to new customers. If you are using AVM today and you are a paying customer, you will be supported on Alfresco Enterprise 4 and earlier versions until the version you are on reaches its end-of-life. We will not be supporting AVM at all in Alfresco 5.

How this Change Affects the Community

We realize there are people in the community using AVM. Obviously, you are free to continue doing so. But you should not expect any AVM-related fixes or updates to be added to the Community code line by the Engineering team going forward. And, when Community versions of Alfresco 5 begin shipping, you should not expect the AVM repository implementation to be included in the core.

A large percentage of our Enterprise customers use Community before purchasing a support subscription. We do not want new Community users to be confused by the availability of the AVM download. It might mistakenly give the impression that Alfresco will provide commercial support for the AVM if they use it in Community and then upgrade to Enterprise. Therefore, effective immediately, we are disabling the AVM download from the Community download page.

Technical members of the community will be quick to point out that the AVM software is tightly coupled with the rest of the platform. When you download the AVM from the Community download page you are actually only downloading an XML configuration file that “enables” the AVM functionality already present in the core. Over time, we will be removing the AVM-related code from the core, so by Alfresco 5, it is highly likely that the platform will not contain any AVM-related code.

There may be developers in the community who are interested in maintaining the AVM code as an ongoing project. This would involve separating out the AVM-related code from the rest of the platform and then packaging it as an add-on. This would be a big task, but if there are developers passionate enough to own this project and move it forward, we would be happy to work with you to make that happen. Please contact me directly if you want to take this on.

I hope this has shed some light on the thinking behind our decision to no longer support AVM for new customers and has given you a rough timeframe for when the AVM will be sunset completely. If you have any questions or thoughts on this, please feel free to add your comments below.

  • http://alfrescoadmin.blogspot.com/ Raúl Macian

    Hi There,

    bad news for people using WCM. Can be checked anywhere which versions would be supported and until when ? We have a customer using 3.3EE and I wonder if it would be a good idea to migrate to 4.0 before EOL of the product.

    • http://twitter.com/jeffpotts01 Jeff Potts

      Raúl,

      I would base your upgrade recommendation on the features and improvements in Alfresco 4 as well as other factors such as the amount of customizations you’ll need to test and so forth. The upgrade decision is really independent of the AVM announcement. Either way, as the announcement states, current customers will continue to be supported on AVM until the end-of-life for the version they are on is reached.

      You can read more about the support lifecycle for specific releases here:
      http://www.alfresco.com/services/subscription/technical-support/lifecycle/

      Jeff

  • hehe

    Wooohooo !

  • Mittal Patoliya

    Oh, It is really shocking.We always have some issues with the Alfresco WCM stability but the set of features it provide was amazing.When you talk about replacing the AVM with web content features, are you able to cover up all the functionality which was previously available.Also it’s structure seems very complex and highly unstable.

    • http://twitter.com/jeffpotts01 Jeff Potts

      Mittal,

      Sandboxes are the only thing I can think of not covered by a DM-based WCM solution like Web Quick Start. We do not have sandboxes on the roadmap that I know of.

      Jeff

      • Mittal Patoliya

        Well if sandboxes are not there then I think it will create problem if we want separate authoring environment and content delivery environment right?How do we will be able to manage that?

        • http://twitter.com/jeffpotts01 Jeff Potts

          Mittal,

          The transfer service can be used to replicate content nodes from one Alfresco folder to another, and that folder can live on different Alfresco repository instances. If you choose to use Web Quick Start, the out-of-the-box setup is to have an “Editorial” site and a “Live” site. Content is authored, reviewed, and approved in the Editorial site, then published to the Live site. This gives you the ability to manage content separately from where it is being served up to the live site, including having separate front-ends to effectively preview content. Although the out-of-the-box setup has just these two, you can add as many additional environments as you want (Test, QA, etc.).

          That explains how you can keep your content separated into different authoring, test, and production environments and move it amongst those environments. But in each environment, everyone collaborating on the content does so in the same space. Coordination is handled by using standard check-out/check-in constructs. So there is no per-user sandbox like there was in AVM.

          Jeff

          • Basanagowda patil

            Hi Jeff,
            Usually if you take WCM projects we will have the requirements for deploying and reverting the snapshots to live server.

            How can we handle the condition of reverting back the deployment?

            Thanks,
            Patil

            • http://twitter.com/jeffpotts01 Jeff Potts

              Basanagowda,

              Because Web Quick Start currently lacks the concept of a “work package” and does not take snapshots or “editions” of the site as it exists at a given point in time, there is no good way to perform a site-wide rollback of a deployment that I know of. Obviously, you can revert individual assets by leveraging Alfresco’s native versioning and rollback capabilities.

              Jeff

      • Tatiana

        Hi Jeff,
        Does WQS cover the ability of reverting changes for an entire folder and all its content?
        Does it give the ability of doing deployment roll-back?
        We really need those and I couldn’t find any documentation. It would be great if you can suggest me where to find some doc/wiki about that.
        thank you

        • http://blogs.alfresco.com/wp/pmonks/ Peter Monks

          G’day Tatiana,

          Out of the box Web Quick Start doesn’t provide a way of transitively reverting changes for an entire folder. This also explains why this feature isn’t documented. ;-)

          Each file in a folder is versioned independently however, and it would be possible to use version dates or possibly version labels as a basis for implementing a “bulk rollback” mechanism of the kind you’re describing.

          Cheers,
          Peter

          • Tatiana

            Hi Peter, thank you for your quick answer.
            To me it seems DM doesn’t cover many functionalities we had before in AVM..
            I found out an Alfresco Partner implemented an add-on for publishing which contains the roll-back and publishing history so it seems it is a functionalies needed in general when a content editor publish or deploy content.
            Is there any plan to implement a “folder bulk rollback” it in the future in Alfresco? or a deployment roll-back? or a view to get the history of all deployments?
            Do you know where I can find some docs about “version dates” and “version labels”?
            Thank you

  • Maruti Prasad

    Hi Jeff,

    Do you have any new plans/roadmap for the WCM. DM can be used as WCM, but no web forms support.WQS has web form support in it??

    Thanks

    • http://twitter.com/jeffpotts01 Jeff Potts

      Maruti,

      Share has a nice form service which is an effective replacement for web forms. And the nice thing is that the types you define are automatically accessible via CMIS, so you’ve got a standard API to query and retrieve content from the front-end.

      Jeff

  • Tom tom

    Hi,

    It seems to me that the configuration (site and personal dashboard, etc.) of the Share client is stored in an avm store: avm://sitestore. Am I misunderstood or will this be moved to a new store? And if so I hope that the version upgrade process for existing users will be handled carefully.

    • http://twitter.com/jeffpotts01 Jeff Potts

      Tom tom,

      That is no longer the case in Alfresco 4. Those Surf site data objects are persisted elsewhere. In 4, you’ll still see the avm://sitestore, but it is empty.

      Jeff

  • Fabio Gandini

    Hi Jeff,

    are there some news about content migration tool from AVM repository to DM repository?
    Is it on the roadmap?

    Fabio

    • http://www.sydneyclimbing.com/ Peter Monks

      G’day Fabio,

      For starters, I want to reinforce what Jeff said above, specifically:

      If you are using AVM today and you are a paying customer, you will be supported on Alfresco Enterprise 4 and earlier versions until the version you are on reaches its end-of-life.

      In other words, if you’re an existing Alfresco Enterprise customer who’s using the AVM, there’s no immediate need to migrate off it – Alfresco is continuing to support the technology.

      Regardless, now is as good a time as any to start thinking about a future migration, and as of today we don’t have any specialised tools available that assist with that. While we’re aware of the value of such tools, it’s unlikely they would be entirely automatic in operation (there’s no single “correct” way to map between the AVM’s XML-centric approach, and the DM repository’s node-centric approach – it will likely vary somewhat based on each customer’s implementation & requirements).

      That said, there are some simple ways to automatically migrate the raw XML from the AVM into DM – using the DM deployment target [1], for example. This may serve as a good first step in a larger process that migrates content from the AVM into a DM-native solution (such as Web Quick Start).

      It’s also worth looking at how some of Alfresco’s systems integration partners have approached WCM requirements. RivetLogic (to pick one example) provide a WCM/WEM solution on top of Alfresco called “Crafter” [2] that works natively against either the AVM repository or the DM repository, and some of the work they’ve done in decoupling that solution from the underlying repository implementation may also be applicable to the migration case.

      Cheers,
      Peter

      [1] http://wiki.alfresco.com/wiki/DM_Deployment_Target
      [2] http://wiki.rivetlogic.com/display/Crafter/Home

  • Kevin

    In the 4.0 documentation both the Getting Started and Using Alfresco sections contain AVM subsections. There should be a deprecation warning added to these sections. I only realized AVM was deprecated when I stumbled across a warning in a wiki. It is unfortunate this AVM has been removed; Quick Start looks more like a Quick band-aid than a true WCM solution. Why does 4.0 require a separate Quick-Start install?

  • Steven O’Kennedy

    Hi Jeff,

    Is there any plans to provide folder-level versioning support as part of the DM repository? I don’t seem to see this functionality available in 4.0

    Thanks

    Steven

    • http://www.alfresco.com/ Peter Monks

      G’day Steven,

      There are no plans right now to support folder-level versioning, and I’m not sure it would do what you’re expecting even if it were available (versioning of metadata modifications made to a folder).

      What’s the use case you’re envisaging that folder versioning would satisfy?

      Cheers,
      Peter

  • Basanagowda patil

    Hi Jeff,
    I would like to deploy the contents from Alfresco wqs to Flat file system, similar to (FSR)what we had in old AVM implementation. Is this possible with Alfresco 4.0? If not is this on the road map?

    Thanks,
    Patil

  • ttati

    In the WCM you can specify the output path for the content you create using web forms based on the field values. For instance
    folder1/${xml['xmltag1/xmltag2/xmltag3']}/homepage/content/myfile.content.xml

    Is there a similar functionlity in WQS?

    • http://twitter.com/jeffpotts01 Jeff Potts

      ttati,

      In AVM-based WCM, content is persisted as XML and transformed into 0 or more renditions using XSLT or FreeMarker. The path for both the XML and output renditions is configurable. In WQS, it doesn’t work this way. When you edit a form you aren’t creating an XML file, you are setting properties on an object. If you are creating a new object, you first navigate to where you want that object placed and then you create it in that folder. Depending on the content’s mimetype, thumbnails will get created, but there aren’t renditions out-of-the-box in the same way as there are in AVM. So the output path isn’t really applicable.

      If you do want to create content and have it move to a different folder based on certain criteria, you could certainly do that through a rule on the folder.

      Jeff

  • ttati

    Hi Jeff,
    you said: Content is authored, reviewed, and approved in the Editorial site, then published to the Live site.
    Can the Live site be on a different Alfresco server?
    if yes, is there any document to set p the deployment?
    thank you

    • http://www.alfresco.com/ Peter Monks

      G’dat tatti,

      The live site can be on a different Alfresco server (or servers) and/or on a set of vanilla filesystems (as of Alfresco 4.0). Deployment is handled by the replication service [1] for repository to repository deployments, and the Filesystem Transfer Receiver [2] for repository to filesystem deployments.

      Cheers,
      Peter

      [1] http://wiki.alfresco.com/wiki/Replication_Service
      [2] http://wiki.alfresco.com/wiki/FTR

  • Pingback: Options for AVM Customers: Canopy from Appnovation

Previous post:

Next post: