| [11:01:26] | * theMusician has quit (Quit: theMusician) |
| [11:08:50] | * freiheit has quit (Quit: Leaving.) |
| [11:26:59] | * cweagans is now known as cweagans_afk |
| [12:20:46] | * jerryitt has joined #aegir |
| [13:02:51] | * cweagans_afk is now known as cweagans |
| [13:15:50] | * mstenta has quit (Quit: Leaving.) |
| [13:30:51] | * cweagans is now known as cweagans_afk |
| [13:57:54] | * Egyptian[Home] has quit (Ping timeout: 272 seconds) |
| [14:36:33] | * msound has joined #aegir |
| [14:55:14] | * jerryitt has quit (Quit: Connection closed for inactivity) |
| [15:10:31] | * msound has quit (Quit: This computer has gone to sleep) |
| [15:17:40] | * gusaus has quit (Quit: gusaus) |
| [15:25:33] | * gusaus has joined #aegir |
| [16:03:28] | * msound has joined #aegir |
| [16:10:03] | * msound has quit (Quit: This computer has gone to sleep) |
| [18:11:21] | * e-anima has joined #aegir |
| [18:13:47] | * thunderWilly has joined #aegir |
| [18:15:31] | * e-anima has quit (Ping timeout: 252 seconds) |
| [19:00:41] | * sdrycroft has joined #aegir |
| [19:16:33] | * rominronin has quit (Ping timeout: 246 seconds) |
| [19:32:07] | * boshtian has joined #aegir |
| [19:32:28] | * boshtian has quit (Client Quit) |
| [19:32:34] | * rominronin has joined #aegir |
| [19:50:01] | * ivanjaros has joined #aegir |
| [20:13:34] | * gandhiano has joined #aegir |
| [20:31:11] | * gusaus has quit (Quit: gusaus) |
| [20:34:23] | * dsnopek has quit (Ping timeout: 264 seconds) |
| [20:34:26] | * Lowell has quit (Read error: Connection reset by peer) |
| [20:35:35] | * drupol has quit (Ping timeout: 264 seconds) |
| [20:41:58] | * ivanjaros has quit (Quit: https://drupal.org/user/135190) |
| [20:44:04] | * rominronin_ has joined #aegir |
| [20:44:19] | * rominronin has quit (Ping timeout: 240 seconds) |
| [20:44:19] | * rominronin_ is now known as rominronin |
| [20:56:53] | * Lowell has joined #aegir |
| [20:56:54] | * dsnopek has joined #aegir |
| [20:57:08] | * dsnopek has quit (Remote host closed the connection) |
| [20:57:08] | * Lowell has quit (Remote host closed the connection) |
| [21:18:22] | * dsnopek has joined #aegir |
| [21:21:32] | * Lowell has joined #aegir |
| [21:49:06] | * gandhiano has quit (Ping timeout: 244 seconds) |
| [21:56:22] | * drupol has joined #aegir |
| [22:03:08] | * ivanjaros has joined #aegir |
| [22:11:29] | * mstenta has joined #aegir |
| [22:13:48] | * noecc has joined #aegir |
| [22:22:10] | * thunderWilly has quit (Ping timeout: 244 seconds) |
| [22:22:22] | * e-anima has joined #aegir |
| [22:34:03] | * noecc has quit (Ping timeout: 244 seconds) |
| [22:37:54] | * noecc has joined #aegir |
| [22:58:49] | * msound has joined #aegir |
| [23:41:05] | * gandhiano has joined #aegir |
| [23:50:15] | * gandhiano has quit (Ping timeout: 246 seconds) |
| [23:57:29] | * zombiebeard has joined #aegir |
| [00:13:45] | * msound has quit (Quit: This computer has gone to sleep) |
| [00:18:12] | * gandhiano has joined #aegir |
| [00:25:09] | * mstenta has quit (Ping timeout: 256 seconds) |
| [00:26:24] | * mstenta has joined #aegir |
| [00:28:48] | * msound has joined #aegir |
| [00:32:19] | * Peuc2 has joined #aegir |
| [00:33:24] | * ivanjaros has quit (Ping timeout: 244 seconds) |
| [00:34:03] | * zz_drakythe is now known as drakythe |
| [00:34:48] | * ivanjaros has joined #aegir |
| [00:49:19] | * formatC_vt has quit (Ping timeout: 240 seconds) |
| [00:49:44] | * formatC_vt has joined #aegir |
| [01:05:40] | * ivanjaros has quit (Read error: Connection reset by peer) |
| [01:06:06] | * ivanjaros has joined #aegir |
| [01:30:06] | * ivanjaros has quit (Quit: https://drupal.org/user/135190) |
| [01:39:50] | * ivanjaros has joined #aegir |
| [01:40:17] | * Tim_ has joined #aegir |
| [01:41:02] | <Tim_> | Hey there people, I am using Aegir for a week now and I'm absolutely loving it. The performance improvements are huge for me (Redis is probably the biggest factor in that) but I have some questions about workflow and platforms |
| [01:42:21] | * hestenet has joined #aegir |
| [01:42:23] | <Tim_> | I now use a basic Drupal 7.39 platform with two websites, both now using make files yet, which is something I want to do today. Right now I just scp the contents of each site folder |
| [01:43:31] | <Tim_> | But I was wondering; Isn't it a better idea to put commonly used modules like Views, inside the platform in stead of the make files for each site? |
| [01:45:19] | <Tim_> | Things like the Entity API module, Features module, Libraries module are used across all my websites so wouldn't it be better to only have one of those instances installed per platform, instead of one per site? |
| [01:49:34] | * vantage|work has joined #aegir |
| [01:56:53] | <ergonlogic> | Tim_: makefiles are used to build platforms, not sites |
| [01:57:17] | <Tim_> | Ah that explains a lot |
| [01:57:50] | <Tim_> | So is deploying the contents of each sites folder trough git recommended? |
| [01:58:06] | <ergonlogic> | that's how I do it, yes |
| [01:58:34] | <ergonlogic> | you're deploying between stagin and prod servers? |
| [01:59:29] | <Tim_> | Right now I'm simply deploying from a local testing environment to live, but this is only for test websiters |
| [01:59:41] | <Tim_> | I'm not using Aegir for production yet |
| [01:59:46] | <ergonlogic> | then yes, git is probably the best choice |
| [01:59:50] | <Tim_> | Actually I'm using the full boa stack |
| [02:00:11] | <Tim_> | Thanks a bunch for your help! |
| [02:00:18] | <ergonlogic> | np |
| [02:02:08] | <Tim_> | Still I have one more question, do you generally put all your contributed modules (combined for all sites) in the make file for the platform or do you only put commonly used contributed modules there and keep the rest on a per site base? |
| [02:04:04] | <ergonlogic> | that depends on your use-case |
| [02:04:17] | * theMusician has joined #aegir |
| [02:05:12] | <ergonlogic> | there's not a particularly good or safe way to update site-level modules |
| [02:05:43] | <ergonlogic> | that is, you need to handle backups and rollbacks yourself |
| [02:05:55] | <Tim_> | Okay so generally it is recommended to put everything in the platform's make file? |
| [02:06:03] | <ergonlogic> | yes |
| [02:06:08] | <ergonlogic> | but... |
| [02:06:48] | <ergonlogic> | having too many modules that are only used for one site each means extra platform updates will be required |
| [02:07:01] | <Tim_> | Hmm thats right |
| [02:07:38] | <ergonlogic> | the main point of platform management is to be able to keep all sites up-to-date and secure |
| [02:08:05] | <ergonlogic> | but if you have 300 modules, you'll be updating the platform pretty frequently |
| [02:08:16] | <ergonlogic> | and thus migrating all your sites at that pace |
| [02:08:33] | <ergonlogic> | you might want to split up your sites across several platforms |
| [02:08:52] | <ergonlogic> | based on commonalities in their modules usage |
| [02:08:56] | <Tim_> | Thats some good advice, thanks |
| [02:09:05] | <ergonlogic> | makefiles can include other makefiles |
| [02:09:14] | <ergonlogic> | so you can maitain a hierarchy |
| [02:09:23] | <ergonlogic> | with the really common stuff in one makefile |
| [02:09:41] | <ergonlogic> | that then gets included into more use-case-specific makefiles |
| [02:11:10] | <ergonlogic> | so, for example, say you have some e-commerce sites and some sites without |
| [02:11:27] | <ergonlogic> | you keep a makefile for Views, Panels, etc. |
| [02:11:39] | <ergonlogic> | and a separate one for the Commerce modules |
| [02:12:14] | <ergonlogic> | then you can keep a stub makefile (one that *just* includes other makefiles) for a commerce platform |
| [02:12:30] | <ergonlogic> | and a separate stub for your non-commerce sites |
| [02:13:37] | <ergonlogic> | that way, when a commerce module has a security release, you only need to build a new commerce platform, and migrate just those sites |
| [02:14:46] | <Tim_> | Okay but then maybe I should just create multiple platforms from the start, shouldn't I? |
| [02:15:00] | <Tim_> | With each a dedicated git file in stead of one which includes others |
| [02:15:08] | <ergonlogic> | also, in case you aren't already familiar with it, I recommend using Drush Make's --lock option to generate compiled makefiles |
| [02:15:12] | <Tim_> | Oh nevermind I understand |
| [02:15:31] | <Tim_> | You include the main file into those others |
| [02:15:42] | <ergonlogic> | it really depends how many sites you need to maintain |
| [02:16:00] | <ergonlogic> | but, yes, includes are the key to rational platform management |
| [02:16:16] | <Tim_> | At first only 4-10 so maybe it's not worth splitting up right now but thinking about it could save a lot of time in the future |
| [02:16:33] | <ergonlogic> | right |
| [02:17:01] | <ergonlogic> | if each site is really unique, then shared makefiles/platforms make less sense |
| [02:17:12] | <Tim_> | I was not familiar with make files but the documentation is really great and I rather know what I'm doing before using wizard-style tools |
| [02:17:13] | <ergonlogic> | the more the sites have in common, the better |
| [02:17:39] | <ergonlogic> | what "wizard-style tools"? |
| [02:17:51] | <Tim_> | Well it's not really a wizard style tool |
| [02:18:17] | <Tim_> | But I prefer to first create make files by hand so I fully understand what goes on when using something like drush make |
| [02:18:41] | <Tim_> | After a while I'll probably use drush make to save time |
| [02:19:55] | <ergonlogic> | oh, you mean the '--lock' functionality? |
| [02:20:01] | <Tim_> | For comparison, I'd rather learn javascript before jQuery |
| [02:20:30] | <ergonlogic> | I'm not sure I understand |
| [02:20:43] | <ergonlogic> | makefiles are simply the imput to Drush Make |
| [02:20:49] | <ergonlogic> | input* |
| [02:21:08] | <Tim_> | Oh then I didn't understand you, I'm sorry haha |
| [02:21:15] | <ergonlogic> | Aegir just calls Drush Make to build platforms |
| [02:21:19] | <ergonlogic> | ok |
| [02:21:21] | <Tim_> | I though people used drush make to generate make files |
| [02:21:29] | <ergonlogic> | well, that too, yes |
| [02:21:42] | <ergonlogic> | but think of it this way: |
| [02:21:46] | <Tim_> | Well thats something I'd rather do myself than having it done automatically haha |
| [02:22:15] | <ergonlogic> | the makefiles you use to build platforms should have all versions specified for all components |
| [02:22:41] | <ergonlogic> | otherwise, you aren't guaranteed to get the same platform on local dev and prod, for example |
| [02:22:58] | <Tim_> | Because there might be an update in between those deployments? |
| [02:23:07] | <ergonlogic> | also, it's good to keep makefiles under git, so you have an audit trail of the platform code |
| [02:23:10] | <ergonlogic> | yes |
| [02:23:30] | <ergonlogic> | so, you can think of the makefiles you maintain as manifests of the modules you want |
| [02:23:47] | <ergonlogic> | but you shouldn't have to care particularly about the specific version |
| [02:23:57] | <ergonlogic> | that's where '--lock' comes in handy |
| [02:24:05] | <Tim_> | Thats also very interesting, I actually saw people saying that you should NOT include versions so you could reuse the same file for updates since it will automatically fetch the latest version for you |
| [02:24:17] | <ergonlogic> | right |
| [02:24:21] | <ergonlogic> | you need both |
| [02:24:26] | <Tim_> | Aha |
| [02:24:43] | <ergonlogic> | but the one that specifies the versions can be generated automatically |
| [02:24:51] | <ergonlogic> | from the one that doesn't specify the versions |
| [02:24:57] | <Tim_> | So first you use a manifest make file before any update and generate one with specified versions to use for actual deployments, right? |
| [02:25:23] | <ergonlogic> | actually, I'd suggest always building from the compiled ones |
| [02:25:42] | <ergonlogic> | they're super easy to maintain |
| [02:26:08] | <ergonlogic> | it's just 'drush make --lock=whatever.locl,, |
| [02:26:14] | <ergonlogic> | sorry |
| [02:26:21] | <ergonlogic> | 'drush make --lock=whatever.lock' |
| [02:26:47] | <Tim_> | Okay so what does this lock function do? Is that the one generating a makefile with or without versions? |
| [02:26:52] | <ergonlogic> | that'll build a platform and output the compiled makefile to re-build that exact platform at the same time |
| [02:27:05] | <Tim_> | Aha |
| [02:27:19] | <ergonlogic> | lock generates the makefile with versions specified |
| [02:28:40] | <Tim_> | Okay so that'll build a testing environment for instance |
| [02:29:00] | <Tim_> | And it'll also provide a make file which I can use to build acceptance and production environments? |
| [02:29:06] | <ergonlogic> | right |
| [02:29:23] | <ergonlogic> | check out http://cgit.drupalcode.org/kplatforms/tree/ |
| [02:30:09] | <ergonlogic> | it's a set of makefiles and lockfiles that is used to maintain a dozen or so platforms with several hundred sites |
| [02:30:24] | <ergonlogic> | it's somewhat over-engineered, imo |
| [02:30:41] | <ergonlogic> | but that's the project for which I added --lock to drush make |
| [02:31:16] | <Tim_> | Yeah the ./Makefile seems pretty complicated, but I can understand what it does when looking in the stubs and lockfiles folders |
| [02:31:18] | <ergonlogic> | the docs are a bit outdated |
| [02:31:47] | <ergonlogic> | but do a reasonable job of explaining how ti all works, and how to maintain makefiles/platforms easily |
| [02:32:35] | <ergonlogic> | yeah, that's a different kind of Makefile |
| [02:32:44] | <ergonlogic> | not a Drush make file |
| [02:33:09] | <Tim_> | I'm honestly blown away by this |
| [02:33:20] | <Tim_> | This will improve my workflow so much |
| [02:34:36] | <Tim_> | Just to get this right, generating lock files from a stub/manifest is not something that is built into the aegir system, is it? |
| [02:35:17] | <Tim_> | At least not on the o1.aegir.* user interface |
| [02:38:21] | <Tim_> | not that I don't like using a cli, it's more that I want to use "the aegir way" as much as possible to make sure it's understanding what I'm doing |
| [02:38:54] | <Tim_> | And not cause any permission issues |
| [02:39:32] | * theMusician has quit (Quit: theMusician) |
| [02:42:06] | * theMusician has joined #aegir |
| [02:47:29] | <ergonlogic> | that's right, Aegir doesn't generate lockfiles, or anything like that |
| [02:47:56] | <ergonlogic> | but you should provide a lockfile when building platforms via the Aegir UI |
| [02:49:02] | <ergonlogic> | personally, I like to use the raw git output of a lockfile, when building platforms |
| [02:49:59] | <Tim_> | Okay so you don't necessarily generate those on the aegir server |
| [02:50:10] | <ergonlogic> | so, for example, in the 'makefile' field, you can enter a remote URL, such as http://cgit.drupalcode.org/kplatforms/plain/lockfiles/Drupal7.lock |
| [02:50:17] | <ergonlogic> | nope |
| [02:50:25] | <ergonlogic> | makefiles should be kept in git |
| [02:50:26] | <Tim_> | You just push them to the git repo and have aegir checkout the latest version of the make file |
| [02:50:36] | <Tim_> | Cool thats even cleaner then |
| [02:50:36] | <ergonlogic> | essentially |
| [02:50:52] | <ergonlogic> | no need to checkout anything |
| [02:50:54] | <Tim_> | Wow even patches are included |
| [02:51:00] | <ergonlogic> | right |
| [02:51:20] | <ergonlogic> | that way, when you've built the platform, it'll provide you a link to that makefile |
| [02:51:38] | <ergonlogic> | making it really easy to build an identical platform on another server |
| [02:52:41] | <Tim_> | Even when it is not using aegir, say on my local machine |
| [02:52:52] | * vantage|work has quit (Remote host closed the connection) |
| [02:53:11] | <Tim_> | because I can just use drush make to generate the same platform |
| [02:53:13] | * sdrycroft has quit (Quit: Leaving.) |
| [02:53:16] | <ergonlogic> | right |
| [02:53:23] | <Tim_> | This is just awesome |
| [02:53:43] | <ergonlogic> | that's the idea :) |
| [02:54:05] | <Tim_> | I had some questions about how to work with an aegir platform while developing locally but I guess this is the answer to everything |
| [02:54:32] | <Tim_> | I can't thank you enough, your help I greatly appreciated |
| [02:54:56] | <ergonlogic> | you may want to check out valkyrie for local dev |
| [02:55:11] | <Tim_> | I'm actually going to save this chat and create a workflow diagram or something from it if you don't mind :) |
| [02:55:25] | <ergonlogic> | Tim_: please contribute it to the docs |
| [02:55:32] | <Tim_> | Will do for sure |
| [02:55:55] | <ergonlogic> | https://github.com/aegir-project/documentation |
| [02:55:59] | <ergonlogic> | thanks! |
| [02:56:07] | <Tim_> | Maybe I'll even create a video about it, many more developers need to know about this! |
| [02:57:37] | * freiheit has joined #aegir |
| [02:57:39] | <Tim_> | I will also check out valkyrie |
| [02:58:01] | <Tim_> | Looks very interesting as well |
| [02:59:27] | <Tim_> | So who are you exactly? I'd like to give credit to you when sharing this with the developers I know |
| [03:12:35] | * hestenet has quit (Remote host closed the connection) |
| [03:23:31] | * hestenet has joined #aegir |
| [03:27:42] | * rominronin has quit (Quit: rominronin) |
| [03:33:03] | * ivanjaros has quit (Quit: https://drupal.org/user/135190) |
| [03:38:55] | * hestenet has quit (Remote host closed the connection) |
| [04:04:40] | <ergonlogic> | https://www.drupal.org/u/ergonlogic |
| [04:18:15] | * ivanjaros has joined #aegir |
| [04:27:58] | * hestenet has joined #aegir |
| [04:35:25] | <ergonlogic> | also https://www.linkedin.com/in/christophergervais |
| [04:39:29] | * msound has quit (Quit: This computer has gone to sleep) |
| [04:49:32] | * gusaus has joined #aegir |
| [05:16:16] | * Peuc2 has quit (Ping timeout: 268 seconds) |
| [05:38:14] | * hestenet has quit (Read error: Connection reset by peer) |
| [05:38:36] | * hestenet has joined #aegir |
| [05:48:36] | * hestenet has quit (Read error: Connection reset by peer) |
| [05:48:59] | * hestenet has joined #aegir |
| [06:02:06] | * noecc has left #aegir ("pax") |
| [06:40:13] | * drastik-jw has joined #aegir |
| [07:07:04] | * sierkje has joined #aegir |
| [07:34:29] | * gandhiano has quit (Ping timeout: 250 seconds) |
| [07:34:36] | * mstenta has quit (Ping timeout: 264 seconds) |
| [08:35:02] | * Egyptian[Home] has joined #aegir |
| [08:36:34] | * gandhiano has joined #aegir |
| [09:04:16] | * rokk has joined #aegir |
| [09:04:25] | * rokk has quit (Client Quit) |
| [09:04:50] | * drakythe is now known as zz_drakythe |
| [09:06:40] | * gandhiano has quit (Ping timeout: 250 seconds) |
| [09:08:19] | * e-anima has quit (Ping timeout: 240 seconds) |
| [09:08:32] | * e-anima has joined #aegir |
| [09:11:33] | * e-anima has quit (Read error: Connection reset by peer) |
| [09:21:07] | * zombiebeard has quit (Quit: zombiebeard) |
| [09:54:50] | * Tim_ has quit (Quit: Page closed) |
| [09:58:49] | * hestenet has quit (Remote host closed the connection) |
| [10:07:42] | * sierkje has quit (Read error: Connection reset by peer) |
| [10:47:12] | * theMusician has quit (Quit: theMusician) |
| [10:53:12] | * gusaus has quit (Quit: gusaus) |
| [10:54:08] | * gusaus has joined #aegir |