Gabriele Columbro - Maurizio Pillitu - Get your Alfresco project from Zero to Hero with the Maven Alfresco SDK and Alfresco Boxes - Alfresco Summit San Francisco 2014
Alfresco has gone a long way in providing best-of-breed tools to power the full spectrum of an ECM project, from inception to delivery.
In this session, based on real business cases, we'll demostrate how, using tools like the Maven Alfresco SDK and Alfresco Boxes, you can deliver a fully working Alfresco customized project from scratch running in the Cloud, all of this using quality focused, reproducible, reliable, Enterprise ready processes.
Similar to Gabriele Columbro - Maurizio Pillitu - Get your Alfresco project from Zero to Hero with the Maven Alfresco SDK and Alfresco Boxes - Alfresco Summit San Francisco 2014
Similar to Gabriele Columbro - Maurizio Pillitu - Get your Alfresco project from Zero to Hero with the Maven Alfresco SDK and Alfresco Boxes - Alfresco Summit San Francisco 2014 (20)
Gabriele Columbro - Maurizio Pillitu - Get your Alfresco project from Zero to Hero with the Maven Alfresco SDK and Alfresco Boxes - Alfresco Summit San Francisco 2014
1. Get your Alfresco Project
From Zero to Hero
with Alfresco SDK 2.0 and Alfresco Boxes
Gabriele Columbro
WW Manager Expert Services
Maurizio Pillitu
Technical Consultant, EMEA
2. Where it all started…
Inspired to: https://developers.facebook.com/blog/post/417/
7. Mission statements
Deliver a true rapid development experience on
Alfresco, integrating but not depending on IDEs.
Enable unprecedented quality and longevity of
your Alfresco projects.
Automate key project lifecycle phases.
Provision reliably arbitrarily complex
architectures.
8. Alfresco basic project lifecycle
Inception Provisioning &
deployment
Release &
distribution
Development
10. Today’s menu
• Dev —> Alfresco SDK 2.0
• The ultimate Alfresco Developer experience
• Ops —> Alfresco Boxes
• The ultimate Alfresco Deployment experience
• Use case & demo
• “Real life” project from scratch
11. How do Dev & Ops talk?
• In this case, like in Italian :))))
• The role of the artifact repository
• Exchange of AMP / WAR artifacts between actors
• Publishing and distribution of artifacts for
downstream usage
• Searchable
• Example (s)
• https://artifacts.alfresco.com
• Your own corporate Maven repository
12. Alfresco SDK 2.0
The best Alfresco development
experience to date. By far. And 100%
Community.
14. Alfresco Maven Developers Bulletin
• Alfresco 5 is fully built with Maven
• Yes, it was about time to drop Ant.
• Maven Alfresco SDK 2.0.0 (beta-4) is out
• Compatible with Alfresco 5.x
• Available on Maven Central!
• “Old” Eclipse + Ant SDK deprecated
• Not shipped with Alfresco 5.x
• Superseded by the Maven Alfresco SDK
16. SDK 2.0 New Killer Features
RAD (Rapid Application Development)
Hot Java Reloading with SpringLoaded & Tomcat7
For AMP and All in One archetype
IDE Integration and independence
Works non intrusively OOTB with Eclipse & Idea
Share AMP archetype
With sample Aikau widget!
17. How hot is hot?
What’s reloaded?
Java code (main & unit tests)
Javascript & Freemarker templates (web scripts)
Web resources / JSP
What’s not reloaded?
Spring context files (YMMV with JRebel)
Properties files (use JMX instead)
18. More SDK 2.0 Features
Quality
Alfresco Share Selenium tests support
Remote JUnit test execution
Alfresco Technical Validation Tool (experimental)
Integrations
RM (Records Management) support
100% Community
SDK released to Maven Central!
SDK project migrated to Github
19. Use the SDK 2.0 in your project!
<parent>
<groupId>org.alfresco.maven</groupId>
<artifactId>alfresco-sdk-parent</artifactId>
<version>2.0.0-beta-4</version>
</parent>
2.0.0 will be released by London Summit (Oct 2014)
20. Alfresco SDK 2.0 at a glance
Use!
http://docs.alfresco.com/community/concepts/alfresco-sdk-intro.html
Develop!
https://artifacts.alfresco.com/nexus/content/groups/public/alfresco-sdk-aggregator/latest/index.html
Contribute!
Report issues: https://github.com/Alfresco/alfresco-sdk/issues
Fork us: https://github.com/Alfresco/alfresco-sdk/fork
22. Requirements
• Functional
• Integration with an external Recipe service (e.g.
BigOven.com)
• Recipe of the Day user Dashlet
• Non functional
• VM deployment strategy
• Continuous delivery
• High availability
24. Alfresco Boxes
Bring your Alfresco deployment strategy to the next level
building Alfresco Boxes in a configurable, consistent
way.
Whatever Boxes means.
25. Disclaimer
Not Alfresco Supported
https://github.com/maoo/alfresco-boxes
Not a full Alfresco Installer replacement
Experimental
Few customers early adopters
26. So Many Alfresco Boxes!
Type
ISO
AMI
Docker Image
...
Purpose
Bulk Upload
Share UI
Solr indexing
Allinone
...
Container
VirtualBox,VMWare
Docker run
Amazon EC2 Dashboard
Bare Metal
...
27. How to build a Box
Start from an official distro
http://releases.ubuntu.com/
12.04.4/ubuntu-12.04.4- server-amd64.
iso
Support local virtualisation
tools
VBox, VMWare, Parallels,...
Support cloud virtualisation
services
Amazon, DigitalOcean,
Google,...
Consistent provisioning
syntax
JSON declarative configuration
of all arch. components
Modular
Include/Exclude arch.
components
Extensible
Use custom artifacts and
configuration parameters
Production-ready
No additional configuration
steps, no restarts
Cluster-ready
Enterprise images can be
executed several times to
create a clustered installation
28. Provisioning with Chef Alfresco
Component Based
mysql, tomcat, transform,
repo, solr, share
Install custom AMPs
Sharepoint Protocol
extension installed by
default
Generate or patch alfresco-global,
share-config, log4j
properties
Download, unzip, filter
external ZIP file to create
$TOMCAT_HOME/shared/cla
sses
Fetch artifacts
from filesystem, URL or
Maven repositories
Fully configurable
alfresco-global, share-config,
log4j properties
Use custom WARs
for repo, solr or share
applications
39. What's next
Orchestration and Dashboarding
kubernetes, fig, weaze, …
More integration
Oracle, PostgreSQL, MSSQL, CentOS, JBoss, …
More images
share-only, solr-only, …
More features
Restore from a backup snapshot, DB clustering, …
40. Today’s take away
Dev
SDK 2.0 enables unprecedented development
experience and quality in development and release
of your Alfresco Projects
Ops
Alfresco Boxes provides a first comprehensive
attempt to cover the Alfresco deployment lifecycle in
the Cloud era.