• Overview
    Key features
    • Observability
    • Auto-scaling
    • Multi-framework
    • Security
    Frameworks
    • Django
    • Next.js
    • Drupal
    • WordPress
    • Symfony
    • Magento
    • See all frameworks
    Languages
    • PHP
    • Python
    • Node.js
    • Ruby
    • Java
    • Go
  • Industries
    • Consumer Goods
    • Media/Entertainment
    • Higher Education
    • Government
    • Ecommerce
  • Pricing
  • Overview
    Featured articles
    • Switching to Platform.sh can help IT/DevOps organizations drive 219% ROI
    • Organizations, the ultimate way to manage your users and projects
  • Support
  • Docs
  • Login
  • Request a demo
  • Free Trial
Blog

How the Platform.sh PaaS removes developer overhead

drupalphp
31 July, 2014
Nick Hardiman
Nick Hardiman

Platform UI

Platform.sh is a new Platform as a Service (PaaS) from Commerce Guys, a software company with offices in London, Paris, and Michigan. Platform.sh’s purpose is to bring continuous delivery to the open source CMS Drupal.

Commerce Guys launched Drupal Commerce in 2011; Drupal Commerce is a mass of modules to enable e-commerce in Drupal. Now Commerce Guys have built a PaaS to help developers working with Drupal Commerce. If you look hard, you can see a few Platform.sh site actions, like OAuth login and SSH key install, flick past the Commerce Guys site site.

Like all PaaS vendors, the Platform.sh team takes care of capacity, resilience, security, and all the rest of that operational malarkey for the developer. Platform.sh is new, and it’s not even out of the beta test phase yet. Commerce Guys recently received buckets of cash to roll out its new Platform.sh service, but is it ready for prime time? And if so, who will feel more at home here than with other PaaS offerings?

Launch, branch, clone, merge

The first developmental stop on Platform.sh is to use the web UI to launch a new project. The launch initializes a new technical environment for a team to work in. Since Platform.sh users are agile teams, they get ready for a sprint like this:

  1. Launch a new project.
  2. Create a master Drupal site for end users.
  3. Invite team members to sign in.
  4. Create branches for the team to work on.

Team members have different roles. A member may be a scrum master with the power to merge branches, a developer who makes code changes, or an external company with read-access only.

Platform.sh’s environment branches are like source code branches. The live site is copied into a hierarchy the same way a source code control system branches code.

  1. The master environment is branched to create a QA environment.
  2. QA is branched to create sprints.
  3. A sprint is branched into stories.

The team ends up with a hierarchy of site copies for developers to work on. Code, databases, search engine indexes, and other software can be shifted around in this hierarchy: branches are synchronized, projects are checked out, and environments are backed up.

Test sites

Completed Drupal installation

Each branch has its own public URL so changes can be viewed and tested. The master site has a URL along the lines of http://master-was5o4df4vg6o.eu.platform.sh/ and a story site http://story1-was5o4df4vg6o.eu.platform.sh/. This allows each developer to check their work as they progress.

The Platform.sh CLI

Platform.sh expects developers to use a Command Line Interface (CLI) for detailed work. A CLI tool called platform provides a domain-specific set of commands to speed up the developer’s work.

$ platform
Welcome to Commerce Platform!

Platform.sh expects the developer to have these specialist files and PHP helper applications already installed:

  • Drush (Drupal shell), another CLI popular with Drupal developers;
  • SSH keys, the de facto standard for authenticating to cloud machines; and
  • Composer, a packager that makes PHP dependency installs easier. The platform-cli application is PHP code wrapped in a Composer package.

The platform CLI provide lots of little shortcuts to speed up work. If a developer types in this command, he can check out code to a local project folder:

platform get was5o4df4vg6o

If a developer types this command within a project folder, he is logged in to the corresponding remote environment:

platform drush ssh

It’s easier than typing this:

ssh -o PasswordAuthentication=no -t was5o4df4vg6o-story1@ssh.eu.platform.sh bash

As all lovers of auto-complete know, less is more when it comes to typing.

Platform.sh is for agile Drupal teams

Developers have been checking out code, building with make-files, and merging changes since the dawn of the Model M keyboard, but that does not mean all developers would be at home with Platform.sh. This PaaS is aimed at the modern breed of developer, used to cloud services, git pulls, and week-long sprints.

Platform.sh is not all things to all developers – it is aimed at professional Drupal developers, who work in teams and are comfortable with agile methods of development. Those are the people who will save time using this PaaS.

Get the latest Platform.sh news and resources
Subscribe

Related Content

DrupalCamp Florida 2024: sharing takeaways from the experts

DrupalCamp Florida 2024: sharing takeaways from the experts

Company
AboutSecurity and complianceTrust CenterCareersPressContact us
Thank you for subscribing!
  •  
Field required
Leader Winter 2023
System StatusPrivacyTerms of ServiceImpressumWCAG ComplianceAcceptable Use PolicyManage your cookie preferencesReport a security issue
© 2024 Platform.sh. All rights reserved.
Supported by Horizon 2020's SME Instrument - European Commission 🇪🇺