Jeff Geerling's Blog: Drupal startup time and opcache - faster scaling for PHP in containerized environments

drupal.org aggregator - Sat, 11/03/2018 - 01:07

Lately I've been spending a lot of time working with Drupal in Kubernetes and other containerized environments; one problem that's bothered me lately is the fact that when autoscaling Drupal, it always takes at least a few seconds to get a new Drupal instance running. Not installing Drupal, configuring the database, building caches; none of that. I'm just talking about having a Drupal site that's already operational, and scaling by adding an additional Drupal instance or container.

One of the principles of the 12 Factor App is:

IX. Disposability

Maximize robustness with fast startup and graceful shutdown.

Disposability is important because it enables things like easy, fast code deployments, easy, fast autoscaling, and high availability. It also forces you to make your code stateless and efficient, so it starts up fast even with a cold cache. Read more about the disposability factor on the 12factor site.

Categories: Drupal


drupal.org - Modules - Fri, 11/02/2018 - 22:54

This module provides an ability to manage Google Drive files through Drupal site.

- Ability to configure Drive files
- Manage Drive file permissions

Categories: Drupal

Drupal blog: How we are improving Drupal's configuration management system

drupal.org aggregator - Fri, 11/02/2018 - 17:18

This blog has been re-posted and edited with permission from Dries Buytaert's blog. Please leave your comments on the original post.

Configuration management is an important feature of any modern content management system. Those following modern development best-practices use a development workflow that involves some sort of development and staging environment that is separate from the production environment.

Given such a development workflow, you need to push configuration changes from development to production (similar to how you need to push code or content between environments). Drupal's configuration management system helps you do that in a powerful yet elegant way.

Since I announced the original Configuration Management Initiative over seven years ago, we've developed and shipped a strong configuration management API in Drupal 8. Drupal 8's configuration management system is a huge step forward from where we were in Drupal 7, and a much more robust solution than what is offered by many of our competitors.

All configuration in a Drupal 8 site — from one-off settings such as site name to content types and field definitions — can be seamlessly moved between environments, allowing for quick and easy deployment between development, staging and production environments.

However, now that we have a couple of years of building Drupal 8 sites behind us, various limitations have surfaced. While these limitations usually have solutions via contributed modules, it has become clear that we would benefit from extending Drupal core's built-in configuration management APIs. This way, we can establish best practices and standard approaches that work for all.

The four different focus areas for Drupal 8. The configuration management initiative is part of the 'Improve Drupal for developers' track.

I first talked about this need in my DrupalCon Nashville keynote, where I announced the Configuration Management 2.0 initiative. The goal of this initiative is to extend Drupal's built-in configuration management so we can support more common workflows out-of-the-box without the need of contributed modules.

What is an example workflow that is not currently supported out-of-the-box? Support for different configurations by environment. This is a valuable use case because some settings are undesirable to have enabled in all environments. For example, you most likely don't want to enable debugging tools in production.

The contributed module Config Filter extends Drupal core's built-in configuration management capabilities by providing an API to support different workflows which filter out or transform certain configuration changes as they are being pushed to production. Config Split, another contributed module, builds on top of Config Filter to allow for differences in configuration between various environments.

The Config Split module's use case is just one example of how we can improve Drupal's out-of-the-box configuration management capabilities. The community created a longer list of pain points and advanced use cases for the configuration management system.

While the initiative team is working on executing on these long-term improvements, they are also focused on delivering incremental improvements with each new version of Drupal 8, and have distilled the most high-priority items into a configuration management roadmap.

  • In Drupal 8.6, we added support for creating new sites from existing configuration. This enables developers to launch a development site that matches a production site's configuration with just a few clicks.
  • For Drupal 8.7, we're planning on shipping an experimental module for dealing with environment specific configuration, moving the capabilities of Config Filter and the basic capabilities of Config Split to Drupal core through the addition of a Configuration Transformer API.
  • For Drupal 8.8, the focus is on supporting configuration updates across different sites. We want to allow both sites and distributions to package configuration (similar to the well-known Features module) so they can easily be deployed across other sites.
How to get involved

There are many opportunities to contribute to this initiative and we'd love your help.

If you would like to get involved, check out the Configuration Management 2.0 project and various Drupal core issues tagged as "CMI 2.0 candidate".

Special thanks to Fabian Bircher (Nuvole), Jeff Beeman (Acquia), Angela Byron (Acquia), ASH (Acquia), and Alex Pott (Thunder) for contributions to this blog post.

Categories: Drupal

Bay Area Drupal Camp: Thanks for Coming to BADCamp!

drupal.org aggregator - Fri, 11/02/2018 - 17:05
Thanks for Coming to BADCamp! Drupal Planet rob.thorne Fri, 11/02/2018 - 21:05 Take our Survey!

From all of us on the BADCamp organizing team, a huge thank you to the many volunteers, speakers, trainers, masseuses, waffle-makers, and our 1300+ registered attendees for making BADCamp a must-attend event, year in and year out!

You are the ones who build and grow the community, we just provide the rooms.

Watch (and re-watch) Sessions

Thanks to the heroic efforts of our volunteers (shout out to @kevinjthull), we have posted recordings for most of our sessions.

Watch all the sessions on our Youtube channel.

Take Our Survey!

Help us make next year's BADCamp even better. Take two minutes to submit your   thoughts on our survey.

  Start The Survey

Did You Lose Something?

If you left something behind by mistake, we may have it!  Don't give up.       Read our post with a list of the things left behind.


A BIG thanks Platform.sh, Pantheon & DDEV and all our sponsors. Without them this magical event wouldn’t be possible./p>

    See You Next Year!

Until then, the best way to keep in touch with us is to follow @badcamp on twitter, where our intemperate social media team likes to leak event details way way in advance.

Categories: Drupal

Jeff Geerling's Blog: Using BLT with Config Split outside Acquia Cloud or Pantheon Hosting

drupal.org aggregator - Fri, 11/02/2018 - 16:04

I am currently building a Drupal 8 application which is running outside Acquia Cloud, and I noticed there are a few 'magic' settings I'm used to working on Acquia Cloud which don't work if you aren't inside an Acquia or Pantheon environment; most notably, the automatic Configuration Split settings choice (for environments like local, dev, and prod) don't work if you're in a custom hosting environment.

You have to basically reset the settings BLT provides, and tell Drupal which config split should be active based on your own logic. In my case, I have a site which only has a local, ci, and prod environment. To override the settings defined in BLT's included config.settings.php file, I created a config.settings.php file in my site in the path docroot/sites/settings/config.settings.php, and I put in the following contents:

Categories: Drupal

Major frustrations with indexing PDF content using Drupal 8 Search API

Drupal - Open Source Content Platform - Fri, 11/02/2018 - 15:58

Hi /r/Drupal folks,

I have been having problems indexing PDF files on a Drupal 8 site I am working on using the Search API module.

My site has thousands of PDF files that were uploaded as both attachments in basic pages and as file nodes in Drupal 8.

Problem is, my clients want a full-text search on content that is in PDFs and apparently Java tools like SOLR are the only viable way to make it happen. The documentation online is pretty confusing about exactly what I need to make it all work specifically on Drupal 8.

I am running a basic RHEL server without Java on it thus far, Apache & MySQL & PHP 7.1 . I tried the PDFTOTEXT option in the Search API Attachments module, and it just didn't do anything beyond indexing the (nonPDF) metadata in Drupal nodes. When I try to select the TIKA option there it tells me my paths are wrong and that TIKA can't be run.

I have also tried using the TIKA library, but it looks like I need to also run Apache SOLR to get TIKA to work? I am really not a Java developer, so please go easy on me.

Can someone here please ELI5 on how I can get Drupal to index PDF files that reside in a directory on my server? If Search API can just crawl items linked in content pages that would be perfect as well, we just really want to get the solution to give us searches based on content that is in PDF content instead of shoddily converting all the documents to HTML.

submitted by /u/HubertGeorgeRexshun
[link] [comments]

Smart Content Demandbase

drupal.org - Modules - Fri, 11/02/2018 - 15:06

Connector module to implement Smart Content with Demandbase.

Categories: Drupal

404 error on one computer network only for one page

Drupal - Open Source Content Platform - Fri, 11/02/2018 - 14:22

Hello all! I am working on a website for a school, and I created a new page. The link on the page works fine for me, it works fine on other computers and other browsers, even on my phone. The customer claims that she is getting a 404 error on that page only. I had her try incognito more, try other browsers and even try other computers and she is getting a 404 on this one page on all those computer. What would be triggering this? I am using drupal 7.

submitted by /u/iamdisgusto
[link] [comments]

Is Drupal slowly dying?

Drupal - Open Source Content Platform - Fri, 11/02/2018 - 13:43

Hey guys/(gals)! ...I really don't mean to offend anyone with my question, it's simply more of an observation and I would like to hear the thoughts of the Drupal community...

I've been hired by a company as a freelance (I'm a senior PHP dev) to help their developer finish some large scale website projects that uses Drupal as their CMS/backend.

While I personally really love Drupal, I can't help but notice after a few months that the whole community around Drupal is just slowly fading away...It feels to me there was too large of a gap(time & technology wise) between Drupal 7 and 8.

I really feel a lack of support, lack of proper documentation, too small community, missing modules (most of the good ones never got ported to Drupal 8 due to backwards compatibility issues).

I always see the same 10 people answering all the questions on forums so I'm really starting to question if Drupal is a reliable CMS to use in the future since help, docs and improvements are close non-existent at the moment.

Let me know what you guys think! I hope someone can present a different opinion.


submitted by /u/samnolland
[link] [comments]

OPTASY: The Drupal 8 Layout Builder Module: How It Revolutionizes Content Layout Creation in Drupal

drupal.org aggregator - Fri, 11/02/2018 - 13:34
The Drupal 8 Layout Builder Module: How It Revolutionizes Content Layout Creation in Drupal radu.simileanu Fri, 11/02/2018 - 17:34

What's your favorite tool for creating content layouts in Drupal? Paragraphs, Display Suite, Panelizer or maybe Panels? Or CKEditor styles & templates? How about the much talked about and yet still experimental Drupal 8 Layout Builder module?

Have you "played” with it yet?

As Drupal site builders, we all agree that a good page layout builder should be:

Categories: Drupal

Webform Goal Meter

drupal.org - Modules - Fri, 11/02/2018 - 11:59

Adds a goal meter to the top of a webform depicitng how many submissions have been made towards a predetermined goal.

Categories: Drupal

Best way to completely disable the Drupal 8 standard user login page?

Drupal - Open Source Content Platform - Fri, 11/02/2018 - 11:02

We've recently switched to logging in via SSO using SAML auth on Drupal 8. It works great, and the login URL ends up being /saml/login. But I'd like to completely disable the /user/login page altogether.

Right now I'm doing an httpd redirect from /user/login -> /saml/login and it seems to be doing the trick. But I'm curious: is there a more elegant solution than that, or a way to disable that login form altogether? Also, are there any other URLs you know of that I should be redirecting?

submitted by /u/nanoo_nanoo
[link] [comments]


drupal.org - Modules - Fri, 11/02/2018 - 10:25

Bitly Enterprise is a link management platform that will help you optimize every customer touchpoint - all with the power of the link. This module provides the ability for Drupal websites to generate Bitly URLs and vice-versa.

Categories: Drupal

Weekly useful Drupal things to know thread

Drupal - Open Source Content Platform - Fri, 11/02/2018 - 10:07

What's a useful tip or technique or tool (or anything) that you picked up and think others should know about?

(Check out the weekly post schedule in the sidebar)

submitted by /u/AutoModerator
[link] [comments]

Migrate GatherContent

drupal.org - Modules - Fri, 11/02/2018 - 09:44

The Migrate GatherContent module allows you to import content from
GatherContent (https://gathercontent.com/) to your Drupal website.

This module is based on Drupal Core's Migrate functionality and the UI is built
with those concepts in mind. So if you already have a good understanding
of how Drupal Migrate works then the UI here should be familiar to you.


This module allows you to import content to almost any Content Entity including:

Categories: Drupal

Smart Comment

drupal.org - Modules - Fri, 11/02/2018 - 08:37

The smart comment module prevents users to post abusive comments. The interesting features

  1. Admin can configure the list of words that he/she don't want in comment.
  2. No moderaion required. If comment will have aggesive word then user will get notify.
  3. User will not be able to post aggresive/abusive comment
  4. Admin can configure, what message user will see if they submit abusive comment
Categories: Drupal

Agiledrop.com Blog: How to Create a Custom Block in Drupal 8

drupal.org aggregator - Fri, 11/02/2018 - 08:17

In this post, I take a look at the two main methods of creating custom blocks and go through each one of them separately.

Categories: Drupal

Drupal Atlanta Medium Publication: Sponsoring a DrupalCamp is Not About the Return on Investment (ROI).

drupal.org aggregator - Fri, 11/02/2018 - 08:09
You Can’t Put a Price Tag on Visibility, Creditability, and Collegiality“pink pig” by Fabian Blank on Unsplash

Organizing a DrupalCamp takes a lot of commitment from volunteers, so when someone gets motivated to help organize these events, the financial risks can be quite alarming and sometimes overwhelming. But forget all that mess, you are a Drupal enthusiast and have drummed up the courage to volunteer with the organization of your local DrupalCamp. During your first meeting, you find out that there are no free college or community spaces in the area and the estimated price tag is $25,000. Holy Batman that is a lot of money!

Naturally, you start thinking about how we are going to cover that price tag, so you immediately ask, “how many people usually attend?” Well unless you are one of the big 5, (BadCamp, NYCCamp, GovCon, MidCamp or FloridaCamp) we average between 100 and 200 people. Then you ask, “how much can we charge?” You are then told that we cannot charge more than $50 because camps are supposed to be affordable for the local community and that has been the culture of most DrupalCamps.

Are you interested in attending the first online DrupalCamp Organizers Meeting, on Friday, November 9th at 4:00pm (EST)? RSVP Here.

If Drupal is the Enterprise solution why are all of our camps priced and sponsored like we are still hobbyist in 2002?Why Don’t We Treat DrupalCamps Like It’s the Enterprise Solution?

Drupal is the Enterprise solution. Drupal has forgotten about the hobbyist and is only concerned about large-scale projects. Drupal developers and companies make more per hour than Wordpress developers. These are all things I have heard from people within the community. So if any of these statements are valid, why are all the camps priced like it is 2002 and we are all sitting around in a circle singing Kumbaya? In 2016 for DrupalCamp Atlanta, we couldn’t make the numbers work, so we decided to raise the price of the camp from $45 to $65 (early bird) and $85 (regular rate). This was a long drawn out and heated debate that took nearly all of our 2 hours allotted for our google hangout. At the end of the day, one of our board members who is also a Diamond sponsor said,

“when you compare how other technology conferences are priced and what they are offering for sessions, DrupalCamps are severely under-priced for the value they provide to the community.”Courtesy of Amaziee.io Labs

If a camp roughly costs $25,000 and you can only charge 150 people $50, how in the world are DrupalCamps produced? The simple answer, sponsors, sponsors, and more sponsors. Most camps solely rely on the sponsors to cover the costs. One camp, in particular, BADCamp has roughly 2,000 attendees and the registration is FREE. That’s right, the camp is completely free and did I forget to mention that it’s in San Francisco? Based on the BADCamp model and due to the fact the diamond sponsorship for DrupalCon Nashville was $50,000, getting 10 companies to sponsor your camp at $2,500 will be no sweat. Oh and don’t forget Drupal is the enterprise solution, right?

With all of your newfound confidence in obtaining sponsorships, you start contacting some of the larger Drupal shops in your area and after a week nothing. You reach out again maybe by phone this time and actually speak to someone but they are not committing because they want some more information as to why they should sponsor the camp such as, what other perks can you throw in for the sponsorship, are we guaranteed presentation slots, and do you provide the participant list. Of course, the worst response is the dreaded no, we cannot sponsor your conference because we have already met our sponsorship budget for the year.

At this point, you feel defeated and confused as to why organizations are not chomping at the bit to fork over $2,500 to be the sponsor. Yep, that’s right, twenty-five hundred, not $25,000 to be the highest level, sponsor. Mind you many Drupal shops charge anywhere between $150 — $250 an hour. So that means donating 10–17 hours of your organizations time to support a Drupal event in your local community. Yes, you understand that there are a lot of DrupalCamps contacting the same companies for sponsorship so you ask yourself, what has changed from years past?

Are you interested in attending the first online DrupalCamp Organizers Meeting, on Friday, November 9th at 4:00 pm (EST)? RSVP Here.

What Do Companies Expect to Gain From DrupalCamp Sponsorships?

At DrupalCon Nashville, I got an awesome opportunity to participate in a session around organizing DrupalCamps. It was really interesting to hear about how other organizers produce their camp and what were some of the biggest pain points.

Group Photo — DrupalCon 2018 Nashville by Susanne Coates

During this session, we were talking about a centralized sponsorship program for all DrupalCamps (that I personally disagree with and will save that discussion for another blog post) and an individual asked the question,

“why should my company sponsor DrupalCamp Atlanta? There is nothing there for me that makes it worth it. We don’t pick up clients, you to don’t distribute the participant list, so why should we sponsor the camp?”

Needless to say, they caught me completely off guard, so I paused then replied,

“DrupalCamp Atlanta has between 150–200 people, most of them from other Drupal shops, so what is it that you are expecting to get out of the sponsorship that would make it worth it to you? Why do you sponsor any DrupalCamps?”Have Drupal Companies Outgrown the Need to Sponsor DrupalCamps?

On the plane ride back to the ATL it got me thinking, why does an organization sponsor DrupalCamps? What is the return on their investment? I started reminiscing of the very first DrupalCamp that I attended in 2008 and all the rage at that time (and still is), was inbound marketing and how using a content strategy and or conference presentations can establish your company as thought leaders in the field, therefore, clients will find your information useful and approach you when its time to hire for services. Maybe this is why so many camps received a ton of presentation submissions and why it was easy to find sponsors, but that was over 10 years ago now and some of those same companies have now been established as leaders in the field. Could it be, that established companies no longer need the visibility of DrupalCamps?

What happens to DrupalCamps when companies no longer need the visibility or credibility from the Drupal community?

The Drupal community thrives when Drupal shops become bigger and take on those huge projects because it results in contributions back to the code, therefore, making our project more competitive. But an unintended consequence of these Drupal shops becoming larger is that there is a lot more pressure on them to raise funding thus they need to spend more resources on obtaining clients outside of the Drupal community. Acquia, the company built by the founder of Drupal, Dries Buytaert, have made it clear that they are pulling back on their local camp sponsorships and have even created their own conference called Acquia Engage that showcases their enterprise clients. Now from a business perspective, I totally understand why they would create this event as it provides a much higher return on their investment but it results in competing with other camps (ahem, this year’s DrupalCamp Atlanta), but more importantly the sponsorship dollars all of us depend on are now being redirected to other initiatives.

Are you interested in attending the first online DrupalCamp Organizers Meeting, on Friday, November 9th at 4:00 pm (EST)? RSVP Here.

Why Should Established Companies Sponsor a DrupalCamp?

The reality of the situation is that sponsoring these DrupalCamps are most likely not going to land your next big client that pays your company a $500,000 contract. So what are true reasons to sponsor a DrupalCamp:

  • Visibility
    When sponsoring these DrupalCamps most of us organizers do a pretty good job of tweeting thanks to the company and if the organization has presenters we usually promote the sessions as well. In addition, most camps print logos on the website, merchandise, and name after parties. Yes, its only a little bit but the internet is forever and the more you are mentioned the better off you are. But you are from a well established Drupal shop so you don’t need any more visibility.
  • Credibility
    Even the companies who are have been established need their staff to be credible. There will always be some amount of turnover and when that happens your clients still want to know if this person is talented. And if your company is new, being associated with Drupal in your local community does provide your company a sense of credibility.
  • Collegiality
    I saved the best for last. Collegiality is highly overlooked when looking at sponsoring camps. Most companies have a referral program for new hires and when the time comes for you to hire, people tend to refer their friends and their professional acquaintances. There is no better place to meet and interact with other Drupalist than a DrupalCamp. What about employee engagement? In a recent focus group I participated in with a Drupal shop, many of the staff wanted more opportunities for professional development. These local camps are affordable and can allow staff to attend multiple events in a year when you have small budgets.

I must end by saying, that there are so many great Drupal companies that I have had the pleasure to work with and if it were not for the Acquia’s of the world Drupal wouldn’t exist. I understand that CEO’s are responsible for their employees and their families so I don’t want to underestimate the pressures that come with making payroll and having a client pipeline. The purpose of this post was to explain how it feels as a volunteer who is doing something for the community and the frustrations that sometimes come with it.

If you are interested in sponsoring a DrupalCamp check out Drupical and sponsor a camp today! All of us organizers need your help!!

Are you interested in attending the first online DrupalCamp Organizers Meeting, on Friday, November 9th at 4:00 pm (EST)? RSVP Here.

If you are also interested in contributing to the Atlanta Drupal Users Group (ADUG) Medium Blog publication, please feel free to reach out to us at info@drupalatlanta.org

Sponsoring a DrupalCamp is Not About the Return on Investment (ROI). was originally published in Drupal Atlanta on Medium, where people are continuing the conversation by highlighting and responding to this story.

Categories: Drupal

Elfsight Twitter Feed

drupal.org - Modules - Fri, 11/02/2018 - 07:33

With Elfsight Twitter Feed, you can add on your site a customized feed of one of the most popular social media. Embed your own Twitter feed with header and action buttons, create a collection of Tweets by hashtag or display customer testimonials about your products from Twitter. Allow your users all Tweet actions right on the website: retweet, reply, like, share. Choose the best layout, add colors and find the right proportions of the module. Increase the number of followers and grow engagement on your site with lively and interactive feed.

Categories: Drupal

Wunderkraut Sweden Blog: Using open source Minio and the Flysystem S3 module to handle Drupal files

drupal.org aggregator - Fri, 11/02/2018 - 06:20
We are in the process of transforming the way we host our applications to a docker based workflow. One of the challenges we face is the file storage. At the heart of our business are open source technologies and tools, therefore  we have looked into in using Minio (more or less the same as Amazon S3 for file storage) instead of local filesystem (or Amazon S3). We are going to use the Drupal module Flysystem S3 - that works both with Amazon S3 and Minio (compatible with the Amazon S3). Flysystem is a filesystem abstraction library for PHP which allows you to easily swap out a local filesystem for a remote one - or from one remote to another. For a new site it is pretty straight forward, for a legacy site you need to migrate your files from one storage to another - that I am going to look… Read More
Categories: Drupal