Elsewhere

Drupal Bits at Web-Dev: Codit and Codit: Local Introduction Video

Planet Drupal - mer, 08/10/2014 - 08:04

This is a short screencast showing the basic concept of Codit and Codit: Local and where to place them in a Drupal site.

Catégories: Elsewhere

Don't Panic: A blog about Drupal: DrupalCon Amsterdam: "There and back again"

Planet Drupal - mer, 08/10/2014 - 01:01

DrupalCon Amsterdam has come to an end (well, it ended last week, buy hey, I need to catch up on some work as well). It was the biggest DrupalCon in Europe ever, 2,300 attendees! Pretty impressive. I've written a couple of blog entries, trying to capture my stay in Amsterdam and my feelings for a DrupalCon which I attended for more than three days (which has been the case with DrupalCon London and DrupalCon Munich).

Not only did Drupal 8 get a BETA during these days, but a lot of sprinting was happening (as always) and it was pure joy walking through the Berlage in the center of town and at the venue, seeing all that work being put into Drupal.

Tuesday and Wednesday was filled with interesting sessions, and both Tuesday evening with nice boat rides and pub crawl and Wednesday evening with open museums (the light installations at the EYE was spectacular!) was very nice indeed. Thursday, the day for separation for many of us, was also filled with good sessions and the closing talk with Holly and Stephanie both invited us to DrupalCon Barcelona next year, as well as presenting cool statistics about the Con.  

The good...

All of the sessions I attended was good, and, as always, I'm impressed by the time and energy people devote to making Drupal happen and spreading the knowledge and some love. Dries Buytaert's keynote ('the Driesnote') was inspiring, but I didn't agree with everything he said. He talked about the "free-riders", the ones who doesn't help out with Drupal, the ones who only take advantage of the system witouth giving something back. Such a thing is a bad thing, according to Dries. But I think that we also need those free-riders, becuase those free-riders are the ones using the system, making the statistics for Drupal go up worldwide, spreading the word of Drupal. If we don't have free-riders, are the only ones who should use Drupal the ones who code it and support it? If so, Drupal won't get far...

Amsterdam RAI, the venue, was a good venue. Apart from some sessions being very popular (which is a pain in the a** forseeing) so I couldn't get into them, the rooms and hallways were good for sessions and sprinting. The technique was good as well, sound and vision in the sessions was flawless. Big thumbs up for that. The recorded sessions was also professionally made, at least the ones I've had time to watch. Finding them on YouTube the same day or, to some extent, the next is also impressive. Big thumbs up to the techinal team who worked on that during the Con.

The evening activites was also impressive. Ingenuity, local connection and very nice people raised the bar a lot. I kind of fell in love with the architecture of Amsterdam with it's old crooked buildings, canals and the narrow streets, and the boatride on Tuesday evening was magical!

...the bad...

But there's always something that brings a frown to the face. This time I frowned upon three things. The wi-fi. The coffee. The food.

The wi-fi. It's shouldn't be that hard to calculate that if 2,300 persons gather in a closed area and at least half of them have both laptops and phones, there will be much traffic. I don't want to drag Drupal Association of the local community in the dirt here, they hired a company to manage the network and wi-fi, but it's irritating trying to get online for various reasons, and the network dies several times a day.

The coffee. Apparantely the coffee last year in Prague was bad. The worst thing about coffee this year, was that it wasn't free. It cost me 2.5 Euro. When I pay this much for a ticket to a DrupalCon I kind of expect coffee or some other drink to be free. If it's too hard to calculate, try giving out beverage tickets, two or three per day. Some will get lost, some won't be used, but at least I won't have to pay 2.5 Euro for a small cup of coffee that's not even that good.

The food. A small bowl of pasta or paella. A sandwich and some dessert. I was hungry three hours later. I had the opportunity to visit DrupalCon Munich in 2012 and the food there was out of this world. Every DrupalCon after that will always have worse food. But this one is a killer. No imagination. Lots of garbage (in a time where we try to limit our carbon footprints). No drink. (At least I couldn't find any. Or maybe I was supposed to go and buy me a drink for 2-3 Euros.) Didn't get that. Didn't do that either.

There. Now that's out of my system. I won't remember that when I', 60. But I'll remember the rest of DrupalCon Amsterdam. The sessions. The laughs. The excursions.

...and the ugly...

Well... I found an ugly statue somewhere in town, but otherwise that headline was only in it for the Clint Eastwood reference.

Special thanks to...

It takes a lot of work making a DrupalCon happen, and the Drupal Association pulled it off with a gold star I think. Sure, there were flaws, but then perhaps those won't happen next time, or there were good reasons to why there were flaws. But the Drupal Association do this for a living, so I will only give them a normal-sized 'thank you'. The big 'thank you' goes to the local community who gave the DrupalCon a Dutch feeling. I also want to say thank you to those people who were mentoring before, during and after DrupalCon. Instead of working with the code like you perhaps wanted to, you devoted your time and energy to encourage us lesser beings who want to learn more about Drupal. Also, a big hug to Annertech, who made the Quiz Night happen. It's not an easy task trying to get Morton and Bert the crowd quiet so you can present questions and answers. The man with the microphone also liked the name of our team - Fools drush in - which was nice!

You all know who you are - THANK YOU!

Catégories: Elsewhere

Chapter Three: 5 Hurdles to Adopting Drupal 8

Planet Drupal - mer, 08/10/2014 - 00:36

Drupal 8 presents major improvements to the existing Drupal ecosystem. It offers much, including a revamped Entity API that adds tremendous flexibility to content modeling, a core-level translation system for multilingual sites, responsive theming, in-place editing and the configuration management system. But with all of its improvements, Drupal 8 presents some hurdles for agencies like Chapter Three to identify and overcome.



Catégories: Elsewhere

Tyler Frankenstein: Drupal User Entity Reference Field with Custom Autocomplete that uses an Address Field

Planet Drupal - mar, 07/10/2014 - 23:24

User reference fields (aka entity reference fields) are great. As you may have guessed, we can use these fields to reference users on other entities (e.g. nodes).

Say we had a user reference field on the Article content type... by default, when selecting a user to reference, we could configure the field widget to be an autocomplete. This allows us to begin typing the user's login name as a way to reference them. This works well in most cases.

What if we had an address field on our user entities, and collected the user's first and last names? It may be more usable for site administrators to be able to search across the user's actual name instead of their user name for logging in.

We can use hook_menu(), hook_form_alter(), and a custom callback function to provide a custom autocomplete widget that searches across our address field's values instead...

Catégories: Elsewhere

Mediacurrent: Installing the Pardot Drupal Module

Planet Drupal - mar, 07/10/2014 - 22:40

Mediacurrent has made a commitment to work with the Drupal community to help maintain and improve modules for the leading Marketing Automation services. In this tutorial, we will show you how to set up the newly upgraded Pardot (a Salesforce Company) module.

Catégories: Elsewhere

Modules Unraveled: 121 The Harmony Forum Project with Alli Price - Modules Unraveled Podcast

Planet Drupal - mar, 07/10/2014 - 20:34
Published: Tue, 10/07/14Download this episodeHarmony Forum
  • What is Harmony Core?
  • What prompted you to develop it over using the core forum module?
  • Did you take a look at the Advanced Forum module?
    • What didn’t you like about it?
  • So what are some of the features?
    • Kill switch
    • Entities
    • Revisions for Post entity, integration with Diff module
    • Views provides all listings including on a thread page
    • Flag action for "Like" of posts
    • At.js
  • Does this integrate with other community related module? ie: Organic Groups
  • What are some of the sub-modules, or add-on modules that enhance Harmony Core?
    • Harmony Access
    • Harmony Forum Access
    • Harmony Search
    • Harmony Moderation
    • Harmony Migrate
Use Cases
  • Who’s using Harmony now?
  • You mentioned some upcoming events what are those?
  • How can people get involved?
  • Where should people go to find out more?
Questions from Twitter
  • Scott Wilkinson
    What kind of moderation tools will Harmony have? Like pruning posts or users? Forum Moderators?
Episode Links: Alli on drupal.orgAlli on TwitterForum development group on g.d.oGet on the email listFeatures listDemo of the frontendTags: ForumsCommunity Modulesplanet-drupal
Catégories: Elsewhere

Freelock : Importing foreign key references with Migrate

Planet Drupal - mar, 07/10/2014 - 19:04

One of our clients wanted to regularly update a list of dealers along with the parts carried at that dealer, and show them on a map. As I dug into the challenge, I was a bit surprised to find very little information on the web about how to hook up a migration that would essentially import a join table. So I had to create it myself!

MigrateDrupalDrupal PlanetERPRetailManufacturingDealersentityreferenceTechnical
Catégories: Elsewhere

Thorsten Glaser: mksh R50d released

Planet Debian - mar, 07/10/2014 - 17:54

The last MirBSD Korn Shell update broke update-initramfs because I accidentally introduced a regression in field splitting while fixing other bugs – sorry!

mksh R50d was just released to fix that, and a small NULL pointer dereference found by Goodbox on IRC. Thanks to my employer tarent for a bit of time to work on it.

Catégories: Elsewhere

Deeson: DrupalCon Amsterdam: the Deeson digest

Planet Drupal - mar, 07/10/2014 - 17:52

Last week was all about DrupalCon Amsterdam.

Deeson’s MD, Tim Deeson, sat on a panel Q&A, I rallied the community with giveaways and things to play with and our Solutions Architect John Ennew joined in hackathons. We also organised Birds of a Feather (BoF) sessions.

For those who want to know more, here is our complete guide to Europe’s biggest Drupal conference event which celebrates the community and experiences working with Drupal’s open source software.

1. The keynotes

The two main keynotes at the conference were delivered by Drupal founder, Dries Buytaert, and science fiction author, activist, journalist, blogger and co-editor of Boing Boing, Cory Doctorow. They were very different in style and approach, but both were fascinating and highly informative.

Dries Buytaert

Dries’ keynote focused on the maturity of Drupal as a platform and community. He touched on the inevitable growing pains and the tough choices we all face as Drupal expands its reach and influence.

He drew on proven growth principles, such as the Tragedy of the Commons, to illustrate Drupal’s ‘journey’. He highlighted how Drupal's reach can grow with community support, from local leadership initiatives to rewarding Drupal contributors.

Watch Dries' keynote

Cory Doctorow

Cory discussed the significance of free and open source software, highlighting the challenges and issues which impact us all.

As a tech evangelist, he shared his expert insight into the importance of software transparency in an age where tech and devices infringe on our everyday lives. It was pretty sobering.

2. Drupal 8: the beta release

Dries announced the beta release of Drupal 8. The Drupal community will now be working together to find and fix bugs before the full release of Drupal 8. 

3. The sessions

Tim took part in a business-focused panel session entitled: 'Life in the fast lane - achieving sustainable growth'.

The hour-long session went through issues and challenges faced by Drupal agencies, shops and freelancers trying to achieve growth. Read the key takeaways here or check out the video:

4. Mentoring

John signed up as a sprint mentor for the first time and taught new contributors to Drupal Core how they can set up contributing tools. 

Mentoring the Drupal community builds confidence and empowers developers to become regular contributors to Drupal Core.

5. Swag demand

The event may focus on code but t-shirts feature heavily. 

Our designer, Rachael Case, created a stunning Deeson DrupalCon tee which flew off our stand. They were so popular, people even nabbed the display tees off the wall!

6.Frame of Fame

As you might understand by now, community is at the core of Drupal. 

We wanted to celebrate the community who worked on Drupal 8 with our Frame of Fame. Check out the faces behind the code, contributes and commits…

We took the Frame of Fame into the digital world with The Drupal8r...

7. The Drupal8r

Our developer, Chris, created an amazing data visualisation tool, The Drupal8r shows who in the Drupal community developed Drupal 8 during the last 5000 commits. Give it a whirl yourself!

 

8. The Dries interview

It’s not everyday you get to interview the founder of Drupal, Dries Buytaert. But we did.

We’ll be sharing our conversation with Dries soon, so sign up to our newsletter at the bottom of this page to find out about the successes and failures in Drupal 8 delivery. 

We’ll also be publishing our #AskDries video where Dries answers questions from DrupalCon attendees. Watch this space!

9. The BoFs

John and I ran BoFs at DrupalCon Amsterdam. John focused on experiences of integrating Customer Relationship Management (CRM) systems with Drupal while I explored the need for personas in the site build process.

You can read the full write up of John’s session here. My session summary is here in a shareable Google Doc which highlights the basic persona questions, plus links to a few resources for persona newbies.

10. Nos vamos a Barcelona para DrupalCon 2015!

DrupalCon Europe 2015 is in Barcelona. So we're going to brush up on our Spanish. ¡Vamos!

Catégories: Elsewhere

Digett: Product Review: New Relic APM for Drupal Performance Tuning

Planet Drupal - mar, 07/10/2014 - 17:36

New Relic APM (Application Monitoring) is an amazing tool to help you tune the performance of your Drupal website.

read more

Catégories: Elsewhere

Deeson: Six talks, two Deeson Drupal devs and Symfony Live London

Planet Drupal - mar, 07/10/2014 - 17:00

Dan and I went to Symfony Live London last Friday to find out what was happening in the world of Symfony.

Here's a summary of the six talks we attended:

1. The Dependency Trap

Jakub Zalas gave an interesting talk about the difficulties of relying too heavily on third-party services and classes.

He went through the process of thinking about writing code while avoiding being overly reliant on a third-party. The main benefit is when you need to change your code or third-party service at a later date, it should be easy enough to do without having to re-write half of your application.

2. How Kris Builds Symfony Apps

Although I haven't been working with Symfony that long, the name 'Kris Wallsmith' keeps coming up when looking around at various bundles. He talked about his approach to building apps.

He went through the different layers involved in building an app, such as controller, models, services, event handlers, etc. He dismissed the myth of 'thin controllers, fat models', by looking at what the controllers, models and services actually do at each level.

In his view they are all just 'mapping layers' between the different data abstraction layers apps have. When you look at it like this, you end up with 'thin controllers, thin models' and 'thin services with thin events'.

3. The Naked Bundle

Matthias Noback introduced the self-titled, 'Noback's Principle: Code shouldn't rely on something that it doesn't truly need'.

He suggested we should limit our dependency on the framework as much as possible. 

We should try to limit to the point where pretty much everything that you would normally put inside a Symfony Bundle (which is a concept very much tied to the framework) can be moved in some way into framework agnostic, re-usable components.

The talk was enlightening, but it made me wonder whether I am ready to break away from Symfony so soon!

4. One Commit, One Release. Continuously Delivering a Symfony Project

Javier Lopez went through the continuous integration process they used on a project. The talk explained that a release to production doesn't have to be a such a daunting task.

Interestingly, they had managed to reduce the time it took to deploy a release from 30 minutes to 30 seconds. They released most days, rather than once a week or each fortnight. Also the product owner could trigger a release rather than relying on a developer to do it.

At Deeson we are using continuous integration for our web build projects more and more.

5. Converting a Website to a New Religion: Symfony

Michael Cullum has been involved in the rebuild of phpBB using Symfony and went through their approach to rebuilding such a large scale app.

When looking at rebuilding a site, you can be tempted to copy and paste a lot of code.

Michael highlighted the problems with repasting code. In fact when we have the opportunity to rewrite code, we should be tackling it head on.  

We all write code which we look at six months or a year later and think, "what was I thinking when I wrote that?" He told us to understand what we are trying to achieve and write efficient code now.

What was interesting is that they had looked at a section of phpBB at a time. They started with the home page and got that working, then moved onto the next page. 

This is different from the norm of building the functionality and then getting theming working across the entire site as a second step.  

6. Decorating Applications with Stack

Beau Simensen was introducing 'Stack' - a convention for composing HttpKernelInterface middlewares into your application.  

He went through its history, which applications can currently use it (Symfony, Silex, Laravel 4, and Drupal 8) and a brief overview of how it can be used.

Although an interesting concept, it didn't seem immediately relevant to our experience.

A worthwhile event

As we're using Symfony more and more, it was interesting to be part of the event and to attend such a range of interesting talks.

Catégories: Elsewhere

Open Source Training: 6 Modules to Avoid Before Drupal 8 Arrives

Planet Drupal - mar, 07/10/2014 - 16:44

Over the last few months, Dave Reid, one of the most active Drupal developers, has been giving a presentation called "Future-proof your Drupal 7 site".

Dave talks about decisions can you make now on your current or new Drupal 7 sites to make transitioning to Drupal 8 easier.

He comes up with a list of modules that have been backported to Drupal 8. Using those modules means you won't have to re-train your staff for Drupal 8.

Dave also has some recommendation for modules to avoid, because they've been replaced by alternative solutions in Drupal 8. Here are 6 modules that might be worth avoiding if want an easier update to Drupal 8 in years to come ...

Catégories: Elsewhere

Forum One: Where’s the Message in Panels Node Edit Forms?

Planet Drupal - mar, 07/10/2014 - 16:02

Why are my messages (errors, status, etc.) not showing up on my panel override of a node add/edit page?

I wrestled with this problem for longer than I should have, all because I couldn’t find this simple Drupal post.

Essentially, I was adding the “Messages” block to the panel content of my node/edit page that I was overriding. Thus, no matter what I did, that message area would never render.

My finding is that drupal_get_message is a unique function. Once you call it, all messages are cleared from it, so calling it again essentially will be too late to see any messages that might have been there. page.tpl.php calls this function, and Panels never gets a chance to try to get the messages that might be waiting to be displayed.

As a result, adding the following as a module or theme pre-process hook will keep the page from calling messages (replacing “MyThemeOrModule” with the appropriate name, of course):

function MyThemeOrModule_preprocess_page(&$variables) { // This disables message-printing on a content type edit page so panels can print it if (isset($variables['page']['content']['system_main']['content']['form_id']['#id'])) { if ($variables['page']['content']['system_main']['content']['form_id']['#id'] == 'edit-MyContentTypeName-node-form') { $variables['show_messages'] = FALSE; } } }

Be sure to replace “MyContentTypeName” with the machine name of your content type. If you have doubts, look at the value in $variables['page']['content']['system_main']['content']['form_id']['#id'] while looking at the content type’s edit page. We add this IF statement to make sure we disable page-level messages on this edit form and not on the entire site.

$variables['show_messages'] = FALSE; is what actually disables the messages from being displayed at the page level so Panels has a chance to display them instead.

Messages. Displayed.

 

Catégories: Elsewhere

Joachim Breitner: New website layout

Planet Debian - mar, 07/10/2014 - 16:00

After 10 years I finally got around to re-decorating my website. One reason was ICFP, where just too many people told me that I don’t look like on my old website any more (which is very true). Another reason was that I was visting my brother, who is very good at web design (check out his portfolio), who could help me a bit.

I wanted something practical and maybe a bit staid, so I drew inspiration from typical Latex typography, and also from Edward Z. Yang’s blog: A serif font (Utopia) for the main body, justified and hyphenated text. Large section headers in a knobbly bold sans-serif font (Latin Modern Sans, which reasonably resembles Computer Modern). To intensify that impression, I put the main text on a white box that lies – like a paper – on the background. As a special gimmic the per-page navigation (or, in the case of the blog, the list of categories) is marked up like a figure in a paper.

Of course this would be very dire without a suitable background. I really like the procedural art by Jared Tarbell, espcially substrate and interAggregate. Both have been turned into screensavers shipped with xscreensaver, so I hacked the substrate code to generate a seamless tile and took a screenshot of the result. I could not make up my mind yet how dense it has to be to look good, so I for every page I randomly pick one of six variants randomly for now.

I simplified the navigation a bit. The old News section has been removed recently already. The Links section is gone – I guess link lists on homepages are so 90s. The section Contact and About me are merged and awaiting some cleanup. The link to the satire news Heisse News is demoted to a mention on the Contents section.

This hopefully helps to make the site navigatable on mobile devices (the old homepage was unusable). CSS media queries adjust the layout slightly on narrow screens, and separately for print devices.

Being the nostaltic I am, I still keep the old design, as well as the two designs before that, around and commented their history.

Catégories: Elsewhere

Deeson: The value of planning poker for better estimation

Planet Drupal - mar, 07/10/2014 - 15:00

At Deeson, we’re always experimenting with how we can use Scrum in an agency environment.

The mechanism we’re seeing the most success with is planning poker.

Accurate estimations

As a solutions architect, I might have estimated tasks on behalf of the development team. But using this traditional method, we found our estimates were often higher or lower than actual time taken for the task. While these would often balance out, better decisions could have been made if estimates were more accurate.

I’ve found planning poker to be a rather neat idea and worth getting to know. The core concept brings the project team together to estimate on tasks. This team can include developers, project managers, user experience, designers and sometimes even the client.

The concept

Each team member uses a deck of cards representing numbers similar to Fibonacci’s sequence (½, 1, 2, 3, 5, 8, 13 ,etc). Once the numbers reach more than 13, the decks we use break into bigger increases. This is because laying a high numbered card is a sign that the task needs to be broken down anyway.

Agreement is the key

After a quick overview, each member simultaneously lays their estimate down on the table for each task. Team members with the highest and lowest estimations then state their cases and everyone estimates again until everyone agrees. 

(*whispers* Don’t tell the Scrum police, but we plan our tasks in hours and not days. This is because our clients buy hours, so we think in hours. But we always measure the accuracy of our estimates.) 

Bringing teams together

I find that when you start thinking about how long something is going to take you, it’s difficult to do without considering how it might be built, at least at a high level. 

This is where you can think about efficiency by reusing code or patterns. Planning poker brings everyone together which means you’re calling upon the much broader experience of your team to make the decision. This leads to better estimation. 

Deeson tips

The Deeson developers love the planning poker process because the team then owns a realistic estimate and have conversations that wouldn’t surface with the traditional process. 

Our top tip for making it work for you is, be flexible, but embrace the theory. 

I've found you can be too strict in using the card deck, although most purists would say to do this. 

For example, when trying to reach a consensus on an estimate, it’s best to stick to laying a single card to minimise the options available. So if you really think it’s four hours, lay a three and a one. This is important to us at Deeson because we plan in hours and we need to be as realistic as possible. 

The important thing is that you can justify why you did it, share with the team, listen to feedback and agree on the final estimate. 

Things to avoid

If you adopt strict estimation without embracing the theory, you go through the motions without the right amount of discussion or logical agreement. This, ultimately, provides a bad estimate. 

Planning poker is collaborative, accurate and fun. Give it a go….

Catégories: Elsewhere

Joachim Breitner: ghc-heap-view for GHC 7.8

Planet Debian - mar, 07/10/2014 - 14:15

Since the last release of ghc-heap-view, which was compatible with GHC-7.6, I got 8 requests for a GHC-7.8 compatible version. I started working on it in January, but got stuck and then kept putting it off.

Today, I got the ninths request, and I did not want to wait for the tenth, so I finally finished the work and you can use the new ghc-heap-view-0.5.2 with GHC-7.8.

I used this chance to migrate its source repository from Darcs to git (mirrored on GitHub), so maybe this means that when 7.10 comes out, the requests to update it come with working patches :-). I also added a small test script so that travis can check it:

I did not test it very thoroughly yet. In particular, I did not test whether ghc-vis works as expected.

I still think that the low-level interface that ghc-heap-view creates using custom Cmm code should move into GHC itself, so that it does not break that easily, but I still did not get around to propose a patch for that.

Catégories: Elsewhere

Andrea Veri: The GNOME Infrastructure is now powered by FreeIPA!

Planet Debian - mar, 07/10/2014 - 11:21

As preannounced here the GNOME Infrastructure switched to a new Account Management System which is reachable at https://account.gnome.org. All the details will follow.

Introduction

It’s been a while since someone actually touched the underlaying authentication infrastructure that powers the GNOME machines. The very first setup was originally configured by Jonathan Blandford (jrb) who configured an OpenLDAP istance with several customized schemas. (pServer fields in the old CVS days, pubAuthorizedKeys and GNOME modules related fields in recent times)

While OpenLDAP-server was living on the GNOME machine called clipboard (aka ldap.gnome.org) the clients were configured to synchronize users, groups, passwords through the nslcd daemon. After several years Jeff Schroeder joined the Sysadmin Team and during one cold evening (date is Tue, February 1st 2011) spent some time configuring SSSD to replace the nslcd daemon which was missing one of the most important SSSD features: caching. What surely convinced Jeff to adopt SSSD (a very new but promising sofware at that time as the first release happened right before 2010’s Christmas) and as the commit log also states (“New sssd module for ldap information caching”) was SSSD’s caching feature.

It was enough for a certain user to log in once and the ‘/var/lib/sss/db’ directory was populated with its login information preventing the LDAP daemon in charge of picking up login details (from the LDAP server) to query the LDAP server itself every single time a request was made against it. This feature has definitely helped in many occasions especially when the LDAP server was down for a particular reason and sysadmins needed to access a specific machine or service: without SSSD this wasn’t ever going to work and sysadmins were probably going to be locked out from the machines they were used to manage. (except if you still had ‘/etc/passwd’, ‘/etc/group’ and ‘/etc/shadow’ entries as fallback)

Things were working just fine except for a few downsides that appeared later on:

  1. the web interface (view) on our LDAP user database was managed by Mango, an outdated tool which many wanted to rewrite in Django that slowly became a huge dinosaur nobody ever wanted to look into again
  2. the Foundation membership information were managed through a MySQL database, so two databases, two sets of users unrelated to each other
  3. users were not able to modify their own account information on their own but even a single e-mail change required them to mail the GNOME Accounts Team which was then going to authenticate their request and finally update the account.

Today’s infrastructure changes are here to finally say the issues outlined at (1, 2, 3) are now fixed.

What has changed?

The GNOME Infrastructure is now powered by Red Hat’s FreeIPA which bundles several FOSS softwares into one big “bundle” all surrounded by an easy and intuitive web UI that will help users update their account information on their own without the need of the Accounts Team or any other administrative entity. Users will also find two custom fields on their “Overview” page, these being “Foundation Member since” and “Last Renewed on date”. As you may have understood already we finally managed to migrate the Foundation membership database into LDAP itself to store the information we want once and for all. As a side note it might be possible that some users that were Foundation members in the past won’t find any detail stored on the Foundation fields outlined above. That is actually expected as we were able to migrate all the current and old Foundation members that had an LDAP account registered at the time of the migration. If that’s your case and you still would like the information to be stored on the new setup please get in contact with the Membership Committee at stating so.

Where can I get my first login credentials?

Let’s make a little distinction between users that previously had access to Mango (usually maintainers) and users that didn’t. If you were used to access Mango before you should be able to login on the new Account Management System by entering your GNOME username and the password you were used to use for loggin in into Mango. (after loggin in the very first time you will be prompted to update your password, please choose a strong password as this account will be unique across all the GNOME Infrastructure)

If you never had access to Mango, you lost your password or the first time you read the word Mango on this post you thought “why is he talking about a fruit now?” you should be able to reset it by using the following command:

ssh -l yourgnomeuserid account.gnome.org

The command will start an SSH connection between you and account.gnome.org, once authenticated (with the SSH key you previously had registered on our Infrastructure) you will trigger a command that will directly send your brand new password on the e-mail registered for your account. From my tests seems GMail sees the e-mail as a phishing attempt probably because the body contains the word “password” twice. That said if the e-mail won’t appear on your INBOX, please double-check your Spam folder.

Now that Mango is gone how can I request a new account?

With Mango we used to have a form that automatically e-mailed the maintainer of the selected GNOME module which was then going to approve / reject the request. From there and in the case of a positive vote from the maintainer the Accounts Team was going to create the account itself.

With the recent introduction of a commit robot directly on l10n.gnome.org the number of account requests reduced its numbers. In addition to that users will now be able to perform pretty much all the needed maintenance on their accounts themselves. That said and while we will probably work on building a form in the future we feel that requesting accounts can definitely be achieved directly by mailing the Accounts Team itself which will mail the maintainer of the respective module and create the account. As just said the number of account creations has become very low and the queue is currently clear. The documentation has been updated to reflect these changes at:

https://wiki.gnome.org/AccountsTeam
https://wiki.gnome.org/AccountsTeam/NewAccounts

The migration of all the user data and ACLs has been massive and I’ve been spending a lot of time reviewing the existing HBAC rules trying to spot possible errors or misconfigurations. If you happen to not being able to access a certain service as you were used to in the past, please get in contact with the Sysadmin Team. All the possible ways to contact us are available at https://wiki.gnome.org/Sysadmin/Contact.

What is missing still?

Now that the Foundation membership information has been moved to LDAP I’ll be looking at porting some of the existing membership scripts to it. What I managed to port already are welcome e-mails for new or existing members. (renewals)

Next step will be generating a membership page from LDAP (to populate http://www.gnome.org/foundation/membership) and all the your-membership-is-going-to-lapse e-mails that were being sent till today.

Other news – /home/users mount on master.gnome.org

You will notice that loggin in into master.gnome.org will result in your home directory being empty, don’t worry, you did not lose any of your files but master.gnome.org is now currently hosting your home directories itself. As you may have been aware of adding files to the public_html directory on master resulted in them appearing on your people.gnome.org/~userid space. That was unfortunately expected as both master and webapps2 (the machine serving people.gnome.org’s webspaces) were mounting the same GlusterFS share.

We wanted to prevent that behaviour to happen as we wanted to know who has access to what resource and where. From today master’s home directories will be there just as a temporary spot for your tarballs, just scp and use ftpadmin against them, that should be all you need from master. If you are interested in receiving or keeping using your people.gnome.org’s webspace please mail stating so.

Other news – a shiny and new error 500 page has been deployed

Thanks to Magdalen Berns (magpie) a new error 500 web page has been deployed on all the Apache istances we host. The page contains an iframe of status.gnome.org and will appear every single time the web server behind the service you are trying to reach will be unreachable for maintenance or other purposes. While I hope you won’t see the page that often you can still enjoy it at https://static.gnome.org/error-500/500.html. Make sure to whitelist status.gnome.org on your browser as it currently loads it without https. (as the service is currently hosted on OpenShift which provides us with a *.rhcloud.com wildcard certificate, which differs from the CN the browser would expect it to be)

Catégories: Elsewhere

Kristian Polso: DrupalCon Amsterdam: The aftermath & sessions by track

Planet Drupal - mar, 07/10/2014 - 10:42
So DrupalCon Amsterdam is finally over. The whole week was really action-packed, from start to finish.
Catégories: Elsewhere

Mike Stiv - Drupal developer and consultant: Do you have a backup strategy? 3 tools to save your day

Planet Drupal - mar, 07/10/2014 - 08:40

For drupal we have a number of different methods to backup the database. Having a backup strategy is one of the easiest things to do but is often overlooked. Perform regular backups to keep your sanity when disaster hits. Implement a backup strategy for daily weekly and monthly backups and look cool to the client.

I am going to discuss about 3 different tools to backup your database. Read on so you have no excuse.

Tags: drushbackup and migratebackupmysqlDrupal Planetautomysqlbackup
Catégories: Elsewhere

PreviousNext: The future of functional testing in Drupal 8 - Drupalcon Amsterdam

Planet Drupal - mar, 07/10/2014 - 04:49

Cameron Zemek (@grom358) and myself got the priviledge of speaking at DrupalCon Amsterdam as a part of the Core Conversation track. This was off the back of the work that we had been doing in core to swap out some of simpletest module with libraries. We were also joined by Konstantin Kudryashov (@everzet) creator/maintainer of the Behat, Mink and PHPSpec projects.

Catégories: Elsewhere

Pages

Subscribe to jfhovinne agrégateur - Elsewhere