welcome everybody thank you for coming this is great trick on Barcelona great
times alright this session is on dev shop it's an open source product that we
built free and open source gives you hassle free hosting and testing so
hassle-free right that's kind of a bold statement but easy is good we think so
what makes it easy what makes it hassle-free right we've tried to make it easy to install got a single standalone
install script right get that script you run it you've got a deaf shop we've made
it really easy to upgrade so we have a single command that you run that does all the steps you need to upgrade this
server to the latest version it's really easy to extend because it's built in Drupal and rush itself so if you build
Drupal sites you're familiar without deb shops put together most importantly
we've made it really easy use if you get push your you can use def shop press the
button we like to say there's a lot of buttons we like to press we've made lots of buttons and made them try to make
them pretty and easy to use in order to be productive right this is all about
streamlining the development process and being more efficient at built-in web sites so yeah you know we all want to be
productive it's a lot of work sometimes in order to be productive you really you
want a place to work you want to clean nice place to work so def shop is and
now I guess to a workshop right if you're if you build things you have a workshop of some kind it's got tools
it's got space everything you need to do your job to build things so def shop is
like a developer's workshop right has servers tools all your environments
everything you need to do your job of building websites to be a good to be
productive you want a clean organized workshop right you know as clean as
possible I don't know what your workshops look like or your development shop looks like but maybe it's something
like this the servers people work with sometimes end up looking like this really we
wanted to look like this right nice and clean something to be proud of so def
shop is user focus in this case the users are the developers pm's everybody
right who's deaf shop for we really feel like it's for everyone like it's a website you go to you log in you can see
everything that's going on you're in your workshop everyone it helps helps everyone sis admins developers project
managers QA people CTO the CEO clients
content managers designers they all are involved in this process Deb shop is like a common place for them all to go
and see what's going on as a sysadmin right I want to automate myself out of a
job you know so that's kind of the old joke about six admins but it's really true developers just want to build
websites now project managers were just want to make sure they do their job QA
managers want to make sure they do their job correctly CTOs obviously want to ensure all the projects go well clients
want to make sure they're only project goes well content managers simply want to create content designers want to
design so these are all the things they like to do things they don't like to do
sis admins they really don't like to get calls at two in the morning right the service gone down developers really
don't care for solving server crashes or figuring out what I the site's not working project managers really don't
like having to satisfied customers QA managers really don't like to yell at their team but you know maybe they do
they can do that a lot CTOs you know they really don't want to watch everything fail when if your workshops
dirty failure can be pretty common CTOs really don't like that clients really
don't want their websites over to go down content managers really don't want to lose their content and designers just
don't want to be sad when they see what their their work actually on the website right so def shop helps all of them
right what does it give you a time right so it's an automation system
so we're going to save time by being more efficient by being more productive how do we do it with a sweet interface
you know so this is what the project home page that looks like it's a dashboard right shows you every single
project you're working on gives you the Drupal version shows you the installation profile shows you the get
URL so you can easily copy it get to work it shows you links for every little environment you've gotten running there
in this case all three are green with a check that's good you can use any git repo with depp shop anywhere you can
clone from aqua you can come from pantheon as long as it has access with ssh you can use it this is what a debt
of the project looks like project dashboard alright there's a link for settings link for logs a link directly
to the github repo a little drop-down tells you what branches and tags you got tells you install profiler is when the
last time a commit was detected you can have as many or as few environments as you want each one of these blocks
represents a website copy of your website this widget is the production
with site right so has a name you can name it whatever you want you want to call it live you want to call it
production call it whatever you want the branch there says it's on the live
branch it can change to a tag if you deploy it with a tag Drupal version you
can lock it so you will destroy your data and you can mark it as the live site which is a little lightning bolt
there so you know this is my life site I'm not going to touch it shows you all the URLs you have attached here what
this particular environment this one's got three has a button to log in you
press that button you wait a second you get a link and you're logged in as an as the admin and you're good to go so if
you have access to the dev shop front end you always can get into the website you don't have to remember the password
three days ago is the last time I commit happened on this site the files link
goes to a finals browser right in the web browser the backups shows you all
the backups you have and then we have the deploy buttons right we can deploy
code we can play data we get to deploys its a stack which is the servers that it's right on so when you would deploy
code you can chew use a branch or a tag to the polite ale you can change any environment from one
branch to the other change it to another tag do it however you want you can
deploy data by copying data from other environments this includes database and
files there's even a little trick you can copy from any drug sale eous if you hook up remote environments and then
there's the stack which is the set of servers that are running your environment you can fit as many
environments on one server as you want but you can also attach other servers right how different have production be
on a different server create whole array of clusters whatever you want so branch
environments are updated continuously every time you push code pulls to that environment make sure it's always up to
date a tag environment this tag never changes right so it just sits there you have to manually change it to another
tag it's very similar to Aqua cloud if you use that task logs right so every
environment has a little tasks display it changes dynamically depending on what's running and you click that little
button there and it drops down the latest tasks you can click the logs to go to the full list and see when things
happened and what we click the little sliders button that's four settings
gives you another drop-down you can go to the environment settings there's a button to download modules into the
project you can click that clone environment button to copy the environment to make a duplicate fork and
environment means copy it and create a new branch and push the branch so you're ready to go with a new branch disabled
environment allows you to turn it off and back on again before you delete it if you delete it be disabled it then you
can delete it there's a setting in there to let you just turn it off don't destroy it but it's always safe to have
that second step right so with a button you can push the verify that makes all the sure all the files are set up right
all the permissions are set up right everything is working correctly make sure patchi's working correctly flush
all caches rebuild registry run grande ronde be updates you can do all these things manually if you want to you
really don't have to that because every time you push it will run those tests for you backup restore
and run tests in the dashboard you get this nice little get URL displays and
developers can just go there and copy and paste to go develop locally again get it drop down with branches and tags
available the web hook URL is set up automatically now with github so you don't really have to worry about that but the drudge button is really handy
you push that you get a pretty pop-up window shows you all the dress a this is very easy to click and download get
access note the note here if you need to access you actually need to upload your SSH key and we've got that too so thanks
to Drupal we've got SSH key module just like the one that's running on drupal.org you upload your SSH key it
puts it on the server for you and you're ready to go you can connect to that environment and your developers can use
this to so Deb trap deploy right this is this is the original driver of this
project deploying is can be a pain unless you have the tools to automate it before Pantheon and aqua cloud it was
like risky to deploy things like you change the code and remember a wait I
need to go clear caches I need to run updates no we're going to standardize that running deploy hooks every time the
same did you clear the cache is not a question but it always has the same
answer didn't have to okay every time you push code clears the caches this is
very useful for productivity because femurs for example can just push a template they don't have to go to the
site and clear the cache afterwards they don't have to do anything it will run those hooks every single time you push
your code run database updates as well revert features is an optional deploy hook and you can trigger a test run as
well after every single get push have a little feature in there that detects if
you use aqua cloud and use their cloud hooks and write your own scripts for your own deploy hooks we find them
notice that you have them and we'll run them for you as well on the dev shop server so compatible with Acquia cloud
sites so def job tasks these are the
things that run right tasks are like drush commands they run on it but they
run on the back end but they're triggered from the front end so this allows you as it just through your web browser to go and click
clear cache go and click rebuild registry all of these things the tasks are logged then it knows when they
failed it knows when they pass successfully it knows when they had errors and it shows you very clearly
with these icons and the timestamp form fields in the front end become drush
options in the back so you can create your own commands very easily if you needed it this is the download modules
task so you simply type in the modules you want you hit save and accuse up a
command to run drush d lv you see tools same thing similar things for deploy
these checkboxes get past two options drush provision deploy update cash cash
okay so very easy to basically build these kind of pre-approved steps that
you can run from the front end on the back so each task run gets its own page
they're actually nodes in the front end Drupal site so you get a sweet page like this that tells you success or error
tells you what happened tells you how long it took tells you the date that it ran on how long ago that was and it
tells it gives you the link directly to the site that it actually ran that task on running tasks is better than running
commands manually right you're in there with the terminal you're a genius you're amazing you can hack on the terminal
super fast and easy it's great right you know how to do that but seriously running tasks is better it saves a log
of what you did right it controls access to who's allowed to run those tasks so it's done safely you can't make a typo
you know it's it's built in history is maintained all the logs are saved you
can go back see what happened when you can't do that when you're just running commands manually on the command line right so tasks are great so there's a
lot of different tools built in the shop in addition to what we already saw like I said there's a brown right built into
the website front end is a browser you so you can click and see what files are actually on your server this was helpful
early on when deployment might not have worked I could go in and see is that file actually they did it actually show up on the server
click view easy cron is automatically set up you don't have to deal with that
has a crown queue that runs on every single site that's hosted on Deb shop don't have to set that up ever again
backups or automatic you can have that configurable to run backups on its time on a queue you know any timeframe you
want you can lock an environment so it won't destroy the database and it logs all the errors to the front end so you
can make some visible on the front end so you can easily go in and see what happened what's going on what's wrong
all that stuff so speaking of logs not only did we show error logs went ahead
and show to commit log in there too it's just really handy right now to go into the server figure out what the latest
commit was what changes happened none of that he's click logs commit log error log watchdog easy all in one place
download modules button already touched on but I'm just so excited about it you
don't need to clone your code to add modules to your project whoa right you just type in the name of the module
theme you want to download you can even type in a commit message right there it'll Q come in the back end to download
them add them to get commit them push them in one press of a button same thing
with committing features write any dress command can turn into a task drush features update all git commit add all
that stuff so many clicks fill out the form press the button run the task makes
it really easy to manage features all the time update all git commit git push
one press of a button so like I said before def shop servers right you can
connect as many servers to a central deb shops over as you want so it was able to deploy sites to remote servers
independently each project each environment can live on its own server if you want it to live somewhere else
very simple to set up ok we made a command that does it all again it will
set up all the packages it will walk you through the process of connecting over ssh it will make sure that it actually
can connect it will make sure that actually has the right IP walks you through every step of the way provisions the entire thing using
ansible playbooks gets a patchy running it's my school running does the entire process and you're good to go really
easy to configure once you have it set up so on each project you can configure the default environment settings and
this means that whenever you create new environments for that project they'll go on to that server so you can say I want
this project on this server i want this other customer to be on that server very simple to separate your site's out on to
as many servers as you want right in the UI we have the stack button this was you
saw this earlier shows you the IP address shows you what servers the system is what the site is running on very simple very easy to configure
change it you can move it you can migrate sites between environments no problem all through the front edge most
importantly right this is where it gets from the testing part testing can be kind of hard to be a lot of maintenance
a lot of work to get a testing system set up this system just does it so
giving them on the home page and let's just see welcome right this is kind of an assumption we all would have had
about our websites we want to see something on the home page this is an actual behat test if you have not used
the hat yet go do it it'll change your life you write these tests in plain English like that will run a machine
will read that test and show you if it works okay so it outputs the exact text
of the test when you run it this is the output of a running tests if it's green it worked if it's red it failed right so
given I'm on the home page then I should see view GIS hub data for this particular project that text is gone so
either something wrong with the site or maybe the test is wrong but we know because this screenshot is from the deb
shop interface so right in the web browser you can click and see their test results very quickly allowing you to fix
whatever you have broken and allowing everyone else that is working on the website to see also see what's broken
you know so a PM can click there and say hey developer I noticed your test is broken because that line of text is no
longer there maybe you should go update that test because and test that darn passing because the
copy is wrong very easy to fix so this helps to avoid exponential complexity
you know Drupal have you ever built a access control based site like organic groups private content social network
key type stuff it gets very very very hard to test all of those different use
users like who is able to see what this person one created it so this person
should hide it a human being really cannot process that type of work manually write your brain starts to hurt
when you start to pretend to be four different people in one test so as an example right this test would work right
if you had a let's say you only lad block your blogs to be visible to logged
in users running this test will run through these steps for every one of
these roles right so if p hat swaps out the role with the item in the table so
for for each one of these it runs given i'm logged in with the anonymous role and I'm viewing a blog post then I
should not see my blog post and I should not see edit and then it runs it again
as a lot of end-user the logged in user authenticated should review be able to view it but should not be able to edit
go through the same thing for moderator role go do the same thing for administrator role this is incredibly
helpful and will make you way more productive because you can't tell when you're breaking things because you have
to go through this mental exercise of pretending to be four different people so you can add annex it really easy to
write not just tests but whole sets of tests that run as in different iterations over your project feature of
dev shop is that you can specify if you want all the tests are just some of them
to run on every git push so with each environment you can check the boxes and say this is a special environment my
developers working on something complex I only want this one test to run every time you push right give us faster
feedback loop developers work faster they get the feedback faster things move a little smoother and gently just run
them all now it's up to you one of the great things about the Hat test as well is because they're in in
English everyone can contribute to them all right you don't even need to clone
the code github com it gives you an edit button right hand the website this is
what it looks like you can type it in English and when you scroll down you can even fill out check this little radio
button here this is create a new branch and start a pull request super super easy you just press that green button
name your branch PMS contest's right I've trained PMS to write the Hat test
and submit pull requests pretty cool so
back to the standard right we all know you should have a dev site and a test site in the left side we've all probably
learned that by now right well in reality there are some problems right
with that workflow it can be a challenge it works pretty well if you're like a solo developer right but as you grow as
you as you have a team having straightforward development like that can really be confusing right because
everyone's pushing code multiple efforts can be colliding you can people over write each other's work people are
pushing incomplete work you know and then you have to figure out well how do i deploy this right if this developer
has some incomplete code in there you're constantly going to rebuild these environments to write if you push new
code you're like how often you hear like hey is anyone on anyone mind if I
destroy dev and sync resync it up with a database of production what about tests you know it's kind of a pain we ask that
question and you sit around waiting for people to answer and you don't know if you're going to ruin someone's day right by destroying those environments so it
generates confusion and with the larger your team is the more likely you're going to have that situation so there is
a better way right and some some people a lot of people are already doing this this isn't necessarily new but pull
requests all right branches using get to separate all the work you know her task
or / developer however you want to do it you can now there's many blog posts
about this like well about created a system that has some tools to do this there's lots of blog posts like I said
about how to do this but def shop has a built-in as a product you get pwned request environments alright pull
request driven development you open a pull request you get a new environment it gives you a link you click the link
you see you see your site you see your code running on the production database clones it multiple task can be developed
in parallel very easy to configure right in the project settings you check a box to create environments for pull requests
you check the box to delete them when they're merged very important I've seen
QA servers that forgot to delete those PR environments and you end up with like hundreds of websites sitting there
filling up the server filling up all this file space not good you got to have that cleanup process in place the
deployment method for pull request is configurable you can either run the run an install profile or you can just clone
live so it's nice if you're depending on what you're working on if you're building a distribution it's going to be really handy to run the install profile
from scratch if you're putting a regular website you usually want to clone live and this is what it ends up looking like
celery interface changes slightly when you're using pull request environments get a nice picture of your developers
there's a friend jacinto there your deploy failed though I don't know what's wrong with your code so each pull
request has on its own branch as you can see build manager 30 or 15 and hence data preview each one gets its own link
with the name of the branch in the URL so it's very easy to click it and see and remember what this particular
environment is for and again every time you push code and runs the deploy make
sure the cache is clear make sure that your deploy its run and then it will actually run the test as well so every
single push from every single developer will run those tests separately so that you can get your job done quickly and
easily this can grow and then you end up something like this you get a lot of
websites so it's important to review code regularly and merge things when
they're done but this shows that you can really really take off you can have as many environment as you want really it's
almost too easy to create them because you get end up with things like this so you want to try to tone it down and
merge your pull request and get someone to review those things but with Deb shop if you're running
tests and you have good tests you just grab your bugs well anybody can review those and anybody can click that merge
button and say good work you're done so this is what it looks like when it's
running so it looks like when it fails that's what it looks like when it passes good job developer and tests are passing
congratulations so beyond that github integration github azizan crabs these
incredible api's that let you put information into github right so when you submit a pull request we can
actually notify that pull request put a little notification there that says Deb shopbot deployed this code to this URL
that deployed text is a link directly to that URL so without even going into the
desktop interface developers see there's my code there's my environment I can click it see if it worked pm's to all
their bosses everyone that's in charge can see what's going on easily click total transparency a lot of fun okay and
here you can see github has AIDS commit status API where we can flag a commit as
passing or failing on multiple levels right so there's two built-in commit
statuses for Deb shop there's the deployment itself where it's running through as if it were to point alive by clearing caches and doing all the deploy
hooks I'm in the second one this for tests is the tip the test pass or not so both of those things are very important
because the test doesn't include the deployment part so once it passes it
looks like this very friendly green color makes you very confident that you can merge that pull request if you test
three up to date so right good tests and
by the way those details links over there those go directly to the test
results so developers not only going to link to their environment they get a link straight to the test results they
can see what happened what went wrong very quickly and easily again dashboard
right shows your whole operation it wants every project and environment this updates dynamically now
so when it's running a test it will spin the little gear will spin if it passes it'll turn green if it fails it'll turn
red all right lots of little environments that's a little more migrants pretty cool so how's it all put
together a little bit of technical background warning it's on agar if you
know a girl you might be groaning a little bit right now but that's too bad because it's kind of awesome there's a
lot of good things about it it does a lot of things really well it takes care of a lot of the work that you have to do
to have a good hosting system sets up apache for you files database settings
everything is handled automatically the right way every time right here's a task
logs it shows change permissions of the settings file to the right permissions change changes everything the way it
should be the ownership of the files handled I need to know to think about it tracks every module everything every
version that you have installed on your site very easy to give you insight into your site each environment it does this
for you know very neat very cool to see from a high level everything that's
going on your website and it's just secure by default you know follows best practices so future of deb shop already
working on it right docker so cool get into it later we have a buff on Thursday
come we'll talk about what we're doing it's powerful stuff dr. is amazing we
built the tool to make running Drupal sites and any any site really it works wordpress and anything that runs in a
container we built a command-line tool which will be the new back end deb shop and maybe other tools we call tara and
that we also have a buff about and haven't blogged about it yet or any of that stuff is still pretty early but
very exciting stuff going on over there we've got some great contributors like hey zeus motive hasta tu t'appelle
drupal console eclipse GC Chris Vander water is contributing to it because he's an eager user and wants to help build
the future he built the plug-in system for Drupal 8 we might be able to use the same plug-in system for Drupal 8 in this
Tara command tool so anyway another presentation come to the buff with me a lot of fun def
shop use case right we're using it a lot of places right now in production it
works so one of our biggest partners is called new Civic it's a company from New York they builds a distribution for
Drupal called d can it is a open data portal so it's very it's neat it's like
a content management system for data sets so they are spinning these up all over the place for a lot of customers
like the country in Sierra Leone they have an open data portal now which is
very helpful but now right transparency and how their government works is key to
improving these countries Ebola data org is a website they created to simply
share information because their data portals built for that both of these are hosted using deb shop on IVM softlayer
because the project is a partnership with IBM and the World Bank North Dakota
we have a data portal up for them running on dev shop in their data center so they have a very secure data center I
have to do all sorts of things to log in there with the VPN and random pins and
everything but it's a linux server def shop can run on it i have to manually deploy because it's behind a VPN so good
hub can't tell it to deploy it's still no problem login click a couple buttons deployed no problem and then help daddy
gov is another great site they built and launched for the health and human services for the united states federal
government and that's a is actually hosted on aqueon they host a lot of other sites on Acquia has a lot of sites
on pantheon but def shot makes a great standard platform for testing and for
building your websites regardless of where those sites are hosted all right so some of those screenshots before of
the dashboard are all of their websites in one place running basically as a continuous integration server so it's
really easy and fun bill lon dep shop to test on def shop but to host it anywhere
alright so it's one of the fun parts about being open source oh boy so movie
time alright this is a movie right I recorded
it so it's not a live demo okay I'm confident now alright so this is my
website i created a dog blog this is our
deaf shop server I've got a link here for my live site I've got a beautiful
dog who needs a website this is the test i wrote to test this website i'm going
to commit some code here because i added this test i'm going to push this code to
that branch the dev test branch and once it pushes a little slow on the internet
and the way it goes we push the code so there's the github repo i look for my
branch and i'm going to submit a pull request because it was just in a branch i didn't push the live or any of that stuff right so there's my branch i could
see my to a coop commits ahead i'm going to give it a nice name so everybody knows what it's for just adding some
tests not going to do any heavy duty development today just going to make sure that the site works so when I click
create pull request it should notify me right away right that we have queued a
deployment we have queued a test run the developers know it's coming your site's
going somewhere your codes going somewhere it's going to be online ready
for you to click and review so we're going to patiently wait for the site to clown this is a real time video no
editing so we're going to hold our breath for a few minutes and watch this
go there's a link directly to the pr so i'm just checking out the pr now look yeah def shopbot requested a deployment
there's the URL it's going to be at ok i guess when it's done i'll be able to click that so still going to just be a
little patient it's copying the entire site copying the database copying the files it's going to be exact copy of
that production live site there and looks like the cologne finished it's got
to do a couple extra steps to import the info into the deaf server but look the play went well all
right green check box so the catch is cleared okay I assume the updates
cleared okay because it passed if the updates or caches didn't clear correctly that would be a big red X and almost
there almost there patience
so the links go back to the test results if I reload here I believe this is when
it works yeah there it is so my PR 2 has a link I can click it meritus cloner my
website custom URL specific to my branch no problem easy to click send that around send them to your manager center
your boss saying hey look I got the new features just go to this lake we use it even for clients would be like feature in progress need feedback from a client
give them a PR link i'll link to that URL check it out what do you think there's the test running it cutting
loads in real time this test happened so fast though because it's a short one but this page will load the test as it's
running in real time and you can watch it run the tests it's a lot of fun when you have a longer test I should have
written the longer test at for this video anyway you can see oops it failed great red X what happened click the link
for details go directly to this beautiful full-color test results page you can see the text oh I got the text
wrong right so I wrote a test that was bad instead of me should be the life and
times of flora Bell that's my dog's name so I'm going to commit that change very
simple fix the test commit it I'm going to push it right before i push it i'm
going to make sure the github page is open because i want to see it happen in real time so i click the dashboard i
click the github icon it goes to the goes directly to the page and when I
push I should see some more activity on that page so I'm gonna push and then quickly go back to github and boom there
it is alright github is a nice real-time web page as well shows you requested a
new deployment so it puts its really cool it puts the notification right into the timeline so you see you commit
commit deploy commit commit deploy and then the test run so there it is we see
the deploy running let a little animation there a little slider in the gear spins it's hard to see the gear
spin if you're in the back but there we go turn green the ploy worked cash is cleared properly update database or an
no problems now we're going to see if the test run finishes but again patient
but we're not still not going to click anything manually or trigger anything manually it all strings it together for
us automatically and go back to the dev shop dashboard just to see what's going
on ah now the tested running should finish boom green show all checks deploy
success test success click the details link see how it passed everything is
green we are good to go nice work developer this PR is ready for merge so
like I said it's just github notice we never left the browser right after we push that code click the button to merge
because the project's configured to delete PR environments when you merge that code is now queued for deletion
alright so the deletion takes a few minutes as well because it's getting rid of everything cleaning up after itself database files apache config everything
and if I reload here you'll see no more site Oh gone so now that that PR
environment is deleting I think we're ready for a new release you notice the live environment is on version 2 and we
have not created our tag yet so I'm going to go create our next release by
checking out the master branch pulling the latest changes because there are new changes because we merged it on github
we didn't use the even use the terminal to merge I'm going to tag a new release
push the tag b3 back to github go back
to the dev shop and in a minute I will it will know that there's a new tag
right now it says to now it says three all right so there's the tag it's
available for deployment I click deploy code on the live environment it tells me what I'm going to do I can decide at the
last minute to change the deploy off so I want to so we want to clear caches and run the updates but you don't have to
and now we're done and now we're going to sit and wait and watch this go of I in real time and not click anything and
hope it works so the deploy is running I'm pretty
we're almost one hundred percent sure that it's going to work right because we've just tested the deployment same
code same database in that PR environment right consistent deployment off-screen and then it goes away verify
so immediately after the deployment works it runs a verify script just to make sure all the files are in place and
immediately after that that passed as well as we expected run tests changes
dynamically right in front of your eyes now it's running the tests on production in that past as well so that's it right
we're going to click the link see the site is up and running and we're good to come clean deployment full circle pull
request environment tests and an awesome website with an awesome dog somehow
writing their own blog I don't know how it happened but she loves that grass just hanging on the grass that's it
that's the video so thanks for watching
thanks a lot so anyway you can try def shop very easily it's got a bigger the
repo itself has a vagrant file in it so just clone the code run biggrin up and you'll get a def shop server we use that
for development as well you can read the docs up on how to enable development mode so you can work on it if you want
we really want you to come to contribute to it open source product it's Drupal right it's the Drupal of DevOps come
help us out if it doesn't do what you want come help us out tell us what's wrong with it join the chat room tweet
your anger about it we want to know what's wrong with it so we can make it awesome for everybody like I said come
contribute it's on github there's multiple projects associated with it because it's obviously a very big system
it uses ansible playbooks for provisioning the servers and the rest is just PHP so it's really relatively
accessible and we're making it better all the time the next versions are going to be incredible come connects I'm on
open dev shop on Twitter get def shop calm think JEP net and we built a little
support portable as well so every dev shop installation has this big purple Help button so if you ever have any
problems just push the button type in your question and we'll get back to you as soon as possible thank you leave your
message at the beep def shopped out support that's a real URL lots all these
new URLs a lot of fun yep coming up on tomorrow we scheduled to buffs it was a
dev shop workshop come bring your computer if you want me to help you spin it up you want me to help you you know
learn more about it come talk whatever you want to do just come to the buff me a lot of fun and then after that one in
the same room so we actually have a nice to our block there is going to be our tera planning and strategy session where
all the contributors are going to come together and start working on it do some more things talk about the future teach
other people that want to learn about it come to come learned doctor will all be all try to be very helpful and
collaborate and I guess that's it right questions I guess yeah there's a there's
a mic in the back so if you can move mind lining up so we can record it and everyone can hear you thanks
just a quick question this looks amazing by the way in a lot of integration with with github who does it also work with
get lab we use that yeah it would just be another module to create so we want to support every popular get system get
bucket yeah exactly so I mean it's really all have relatively similar functionality so there's a deaf shop
github module in in core and we would love contributors to help out to create
like other other modules that will work with different get providers I just don't personally work with bitbucket so
hasn't been a priority but again please help thanks thank you aha we'se agar and
make files a lot for doing our moods so I just wondering it look like you easing full git repos yes so where we'd make
files that is all has been a feature request for a long time and is simply
complicated and we want to figure out how to do it right yep but it's just it you know it is really complicated so we
want to like the repo then where does the repo go come to the buff i would
love to iraq make that happen and it really is something we want to make happen but we want to do it the right way and we also want development to be
quick right so the rebuild if it's a make file every time you push is going to be slower which you know people have
will have okay with time with that but yeah we love any help we can get to make
that happen yeah to question of first one how does it work with multi-site at
aqua with dark we emojis yeah so if you have multi-site a setup attack where
with their depth cloud or not they've cloud but their enterprise cloud right
right like the site factory is that no it's just like they're so in in a choir
in their enterprise solutions you have your own stage and websites and
production sites and you can have multi sites on them so they handle it that you have several databases and you separate
them by different domain names yeah so it doesn't it doesn't use multi site but
you could create an environment for each one of those sites if you were to want to use it you know for testing things okay and
how does it scale when you start having a database that's one gigabyte and data
it's four gigabytes yep so you can add additional servers so you can move the
database servers around built it doesn't have we don't have like built-in automated scaling yet but because it's
linux you can basically set up anything you want you can set up master slave databases you know manually we're going
to do more and more to incorporate automatic scaling tools and make that as
easy as possible but for right now it's basically just you know manually set up the eager has a cluster for the web
servers but the database thing you would still need to basically just follow best practices and set that up on your own
again it's on the trying to make everything automate it is on the road map so down the road we'll have more of
that Thanks hi I have several questions
John off the question century already also we're getting the macphails but my
question is this def shop is actually extending a good host master of you placing osmose stuff and also I look at
you have a deaf shop proficient is it extension of the provisions or at
replacing the provision yes and then I also look at that you are using a greater 6.1 right and then to now oh yes
okay so you already upgraded and then seems like the Deaf shop to will seems like you'll use high gear 3 because it's
ready release and basically it does my question is like extending or replacing
right so it there's a installation profile called death master which
replaces the host master install profile but it uses all of the hosting modules okay if that makes sense right if I'm
like a similar vision provision is still used okay as well so I guess my question is we have a lot of custom like you're
at us that we credit so you probably saw will book right yep they should all work
fine the environment they're not environment knows they're just site notes right so it's an invite we have a
record in the database for each environment but it's still just a site not-it's nagar site now so any task that
eager can use dental can use as well so basically how we extend that shop is is
this similar to when we actually i extend i get yes exactly thanks thank
you well well it's amazing works but you
show how its work with jit github actually and its work pretty well but
what about big bucket a big bucket yes actually someone had a question earlier
and it has a basically a dumb webhook receiver so if you can you can hook it
up to anything that has a post receive hook so it will work with bitbucket now but it won't do any of the smarter
things like deploying just 21 environment or the pull request integration but because it's a very
common feature request and we hope to have more contributors to just plug it in you can copy the deb shop github
module and just follow the pattern and recreate and we would love to have more people contribute and try to make that
happen I'm just unfamiliar with bitbucket personally so I haven't done it what we did that get that would be great yeah I know a lot of pee a lot of
people do that gentleman earlier asked about it so like I said we listen to our users so you're setting the priority of
the backlog right now right so please come to the buff we'd love to get as much help as we can there's just a lot
of moving parts and a lot of work but to make this project work so that just
hasn't come around yet but yeah like I said please help hi it looks very
promising and I probably joined the ball four or something the question I have is
about the only restriction I see in using it it uses intensively subdomains
to which i don't think i have access can we work with subdirectory instead
subdirectory instead arm I don't probably not right because it's a git repo the files are just direct are
cloned I mean I'm really i don't know i mean
the subdirectory thing that has to be a folder right there is no kind of magic DNS thing we can you can do for that
right like it that's a good question but I don't yeah
right so anyway yeah he said that you know ager itself supports that subdirectory system so it should work
now that I'm thinking about it right as it should work it should be possible it
would just it will take probably take a little bit of tweaking you know it clones the beach project closings in
each environment into a folder its own folder on the back end so it just it would be it's worth exploring what I'm
just curious why it why don't you have access to like the DNS subdomains type of thing being part of a bigger
organization we don't choose everything right so okay right its internal yeah so
I that's that's good to know that that situation exists for some people so we should definitely look into how to make
that work and just to have an idea what would be the migration effort if you have already a continuous delivery with
Jenkins and the like well it's basically it would just be like moving any other
side so you put get put your get site in there and you can manually type databases in it's all it's all drush and
aliases on the back end so you would just have a do a little bit of a manual import you know from the command line
yep just like moving any other site from one server to another so thank you thank
you all right any other questions yeah
you mm-hmm
right right right right so yeah just to
repeat the question was if you can let clients sign up and kind of create request their own sites and I mean the
answer is is kind of yes because it's it's it is a ger and it's and it's Drupal and it's all permissions based
but we haven't implemented like per user access control on the projects and sites
so if you can access the project you can see all the sights but that's been a very other very common feature request
is to you know be able to control who can see which particular site and we
would love to implement that so let's talk about it okay I don't know the
final slide so that's it thanks for coming
English (auto-generated)
Devshop is a fully open source product for hosting and testing Drupal sites.
It can be used on its own or as a multi environment add on to Acquia Cloud or Pantheon.
In this session we'll show you how to get your Drupal sites up and running quickly and easily, and how to start testing your work with Behat in minutes.
It integrates directly with GitHub pull requests, giving you a fresh environment for each one. Get instant feedback on your deployments and test results right in the GitHub interface.
DevShop makes web development easier for everyone, removing the need for complex setup or maintenance.
See http://getdevshop.com and http://github.com/opendevshop/devshop for more information.
Slides: https://docs.google.com/presentation/d/19_ZBKwJ9TM30JCkw3sALjttthzD4wG9vZREllFP71iE/edit?usp=sharing