1. Alfresco Boxes
Build and run Alfresco appliances
#community #experimental #enterpriseReady #sdkReady #new
2. Mission
A collection of tools around existing tools that
help users
● composing and testing their own Alfresco
box
● building/uploading the results using the
provisioning tool of your choice
3. Alternatives
● Alfresco Installer - this is not a replacement
(!)
● Vagrant boxes built by the Alfresco Sales
Team (in TS)
● Alfresco Cloudformation (Alfresco Labs)
● (Original) Chef Alfresco (Community)
● Puppet Alfresco (Community)
● Your solution (Shell scripts, VBox VMs, …)
4. Common challenges
● All based on Alfresco Installer
● Not up-to-date with
○ Alfresco Supported stack changes
○ New package releases
○ New OS releases
● Monolithic solutions
● Scalability VS Flexibility (conf. and adoption)
● Maven Alfresco SDK Friendly
5. More challenges
● Compose&test first, then build&package,
finally reuse&distribute (fast!)
● Reproducible at any stage (start from ISO)
● No patching or compilation involved during
provisioning (only fetching, unzipping,
templating)
● Rely on community-driven recipes to install
everything that is not Alfresco-related
9. Artifact Deployer
● Handles the deployment of artifacts by fetching them from
remote Maven repositories
● Chef Alfresco defines the attribute defaults of artifact-deployer
default['alfresco' ]['maven']['repo_type' ] = "public"
default['maven']['repos']['#{default['alfresco' ]['maven']['repo_type' ]}']['url'] = "https:
//artifacts.alfresco.com/nexus/content/groups/#{ node['alfresco' ]['maven']['repo_type' ]}"
default['artifacts' ]['alfresco' ]['groupId' ] = "org.alfresco"
default['artifacts' ]['alfresco' ]['version' ] = "4.2.f"
default['artifacts' ]['alfresco' ]['type'] = "war"
10. What’s next
● Adoption
● More/better documentation for default attribute values
● More OSes (CentOS, Solaris… Windows?)
● More role-specific VMs (repo, share and solr could be based
on a common VM called web)
● More Architectures (High Availability, Fail Over, Solr HA, ...)
● More Applications (WorkDesk, PowerBundle, MyDemo, ...)
● Adoption