Disclaimer• I am jonasbn -
like almost everywhere• Long time Perl and web developer• Open Source/CPAN contributor and previously freelance developer in logicLAB• Currently employed with DK Hostmaster• I have no afﬁliation with ActiveState
(My) Developer Needs• Easy access
to platform, runtimes and frameworks• The least possible gap between development, test and production• Minimal differences between deployed code and the code in the editor• reproducibility for transparency
What do we have?• Unit-tests•
Mocked objects and classes, stubs a.s.o• Local servers / emulators• Virtualization• Dedicated environments (dev/test/prod)• Code - lots of code...
initial deployment• target, where do
we want to deploy• login, it is all a matter of permissions• push, a “one-click” CLI deployment• stackato.yml - a conﬁguration ﬁle for assisting deployment• stackato -n ...
operating• start, start a service•
stop, stop a service• restart, restart a service• this is about it, for what I can provide for now, I have no experience with long time operation of a Stackato deployed service• Oh there is one more thing...
updating• update, when an application
has been pushed (deployed) this is the command you will use...• Or you can integrate with your IDE and possible other tools in the future, more on this later...
All the little things• binding
DNS, going beyond mDNS• binding services (databases et al.)• resource allocation, memory, instances etc.• logging (more on this later...)• now for some high-level architecture...
Stackato is not... or?• Open
Source? - it is closed and proprietary • @ActiveState is however dedicated to keeping the micro-cloud solution free • the command-line client stackato is open source and available on Github
Targets!• Multiple targets • development
/ test / production• Targets make sense in SCM context • trunk / branches / tags (releases)• You could just go for the micro-cloud, but you would loose some of the beneﬁts
App Store• Simply a matter
of conﬁguration • Your complete application portfolio one click away • Operations - go shopping!• https://github.com/ActiveState/stackato- app-store
My Current Road Map• Oracle
as a service (Perl driver DBD::Oracle and Oracle driver distribution issue) works!• Cryptographic components (export of PPMs, Perl packages) works!• Deployment of custom components works!• Full blown examples (Mojolicious over Mojolicious::Lite etc.) works!• Central logging (syslog) works!• Service integration (PostgreSQL) works?• mDNS and dynamic DNS (might be .local)
Beneﬁts• Easy and controlled access
to platform, runtimes and frameworks• The least possible gap between development, test and production and minimal differences between deployed code and the code in the editor depending on your cloud deployment• reproducibility for transparency since the amount of magic is kept at a minimum