Skip to content

Releases: opendevshop/devshop

DevShop 1.7.0-alpha4

12 Nov 21:04
Choose a tag to compare
  • Fix issues with DevShop Control Composer Project installing old versions.
  • Create commands in github action and a script dedicated to composer magic to get the sub-repo of devshop_control testable.
  • Fix issue with GitHub Actions not working on main branch, only PRs.
  • Clean up a few Robofile steps.
  • New logo/wordmark. SVG file.
  • Fixed main devshop project to require @dev versiopns of components, and add composer uninstall and reinstall commands.
  • Incorporated Aegir Ansible and Aegir Cloud into the main DevShop megarepo, and fixed composer issues preventing Aegir Cloud DigitalOcean from working.
  • Task node page cleanup, rename of "follow logs" to "scroll logs".
  • Automatically detect hostname and set server_hostname ansible variable from it, allowing more automated devshop installations.
  • Allow UID of the application user to be changed after the user is first created.
  • Composer 2 Support.
  • Fix bug when using --status-url option in YamlTasks.
  • Add file for simple variable settings for CI environments.

DevShop 1.7.0-alpha3

12 Nov 20:49
Choose a tag to compare
Update DevShop Components list. (#611)

* Update DevShop Components list.

* Fix bad paths in README.

DevShop 1.7.0-alpha2

07 Oct 02:42
Choose a tag to compare

First alpha for Composer-based DevShop Web UI, now called DevShop Control!

DevShop 1.6.0-alpha3

24 Mar 20:50
Choose a tag to compare
DevShop 1.6.0-alpha3 Pre-release

Fixes issue with PowerProcess::mustRun() method.

DevShop 1.6.0-alpha1: First DevShop Components Release

20 Mar 18:18
Choose a tag to compare

This is the first alpha release of DevShop that includes "DevShop Components": reusable tools that work independently.

The first two DevShop Components released are composer plugins:

  • GitSplit: Provides a composer command called git:split that automatically pushes commits from the main repo to the repositories defined in composer.json. Uses the splitsh-lite script that is used by symfony/symfony and drupal/drupal monorepos. This plugin is used on this repo to push to all of the devshop component repos, such as Ansible roles and Composer packages.
    See the "Git Management" action to see the plugin in use:
  • YamlTasks: Provides a composer command called yaml-tasks that runs a list of commands defined in a yaml file. Integrates with GitHub Status API to communicate results to developers and integrate with other CI systems.

DevShop 1.5.0-rc7

15 Mar 20:56
Choose a tag to compare

6 Commits to DevShop: 1.5.0-rc6...1.x

11 Commits to Devmaster: opendevshop/devmaster@7.x-1.50-rc6...7.x-1.x

3 Commits to opendevshop/aegir-user role: opendevshop/ansible-role-aegir-user@1.5.0-rc6...master

  • When creating a new project, if the user has to change "path to drupal", and platforms already exist, update the platforms to use the new path.
  • Automatically set "known_hosts" for GitHub, Bitbucket, Gitlab, and so we don't have to manually authorize.
  • Bumping Drupal core to 7.64.
  • Update ctools, views, and bootstrap modules.
  • Fixed a bug in the DevShop Support form.
  • Set line-height in terminal output so we don't get gaps.
  • Add a Aegir user GID variable to playbooks.

DevShop 1.5.0-rc6

11 Jan 00:48
Choose a tag to compare
DevShop 1.5.0-rc6

DevShop 1.5.0-rc2

10 Jan 20:15
Choose a tag to compare
  • Make sure to fetch with --tags during self-update so we actually get the latest releases.
  • Moved modernizr-navbar library to build-devmaster.make since it is not in the distro whitelist. See
  • In the devshop verify:system command, move the setting of the server_hostname variable so it gets set everytime.
  • In the development environment (robo up command) automatically set the git URLs to the SSH version, and add the remote to devmaster.

DevShop 1.5.0-rc1

09 Jan 17:56
Choose a tag to compare
  • 281 Commits to DevShop: 1.4.0...1.5.0-rc1

  • 233 Commits to Devmaster: opendevshop/devmaster@7.x-1.40...7.x-1.50-rc1

  • DevShop.Support Release Candidate!

    • This release marks the launch of the DevShop.Support Network. It includes an open source module, DevShop Support Network Client, that enables monitoring & single-sign-on.
  • Major improvements:

    • Creates a simple inventory file at /etc/ansible/hosts.
    • Ansible galaxy roles are installed to /etc/ansible/roles.
    • Ansible vars are saved to /etc/ansible/host_vars and /etc/ansible/group_vars/devmaster
    • Changed the ansible output to "unixy", it's now MUCH more clear what is happening behind the ansible curtain.
    • New --install-path option to allow customizing the CLI destination (Defaults to /usr/share/devshop). This was needed for full upgrade testing.
    • New --ansible-default-host-list option to define where to save the ansible inventory file. Defaults to /etc/ansible/hosts.
    • New --force-ansible-role-install option adds the --force option to the ansible-galaxy install command, causing the script to overwrite existing roles. Defaults to False.
    • New --license option, used for immediate setup of DevShop Support network! See for more information.
    • Added set -e so it will actually fail if any line in the script fails.
  • Major DevShop CLI improvements.

    • Added devshop devmaster:upgrade to specifically update the devmaster drupal site. This is a replacement for drush hostmaster-migrate that should not be run manually. It is triggered during the updated devshop upgrade command.
    • Allow upgrading by running the playbook with the new version as the devshop_version variable. The playbook now detects an existing devmaster installation and runs the devmaster upgrade command automatically.
    • Add the new ansible-playbook upgrade method Travis.yml for testing.
    • Improve the devshop self-update command: add --ignore-working-copy-changes to make development easier and added composer install call after git checkout.
    • Change the devmaster folder variant to "date('Y-m-d-Hi');" to match what the provision debian package does.
    • Change devshop upgrade command to run the entire upgrade process: self-update the CLI, then invoke a new process (so it uses the new code) for devshop verify:system.
    • Improved devshop verify:system command. Added --connection option to allow customizing the ansible --connection option, automatically write ansible.cfg file, automatically create inventory and vars files, and automatically create the mysql root password if there isn't one.
    • Improved the Application class, it now properly detects the version from the Git Reference, and displays the exact SHA.
    • Removed the silly "over 30 days old" warning.
    • Improved Command class, including ansible, IO, and FS properties.
    • Reduced GitHub API calls when running automated tests.
    • Added our fork of the asm/php-ansible packagist library so we can use the devshop verify:system command again.
  • Docker & Local Tools improvements:

    • Added our own Dockerfile for the devshop/server container: a single container with all services. See Dockerfiles/Dockerfile. This is awesome because it installs every version of PHP in a single container. This will soon become the default, and you will be able to choose the version of PHP you want from the Site Node form.
    • Improved the Robofile to be more visible about what it is doing. There is a lot of yelling now.
    • Got the vagrant environment working again! See vagrant folder. It should be ready for vagrant up.
    • Added missing packages to the build-devmaster-dev.make.yml and build-devmaster-travis-forks.make.yml file (only used in development).
    • In the docker-compose.yml file (for development), map $HOME/.ssh to /var/aegir/.ssh so the container inherits the users SSH folder.
  • Devmaster Improvements:

    • Updating Drupal core to 7.61. Updated features, libraries, intercomio, and bootstrap theme.
    • Added statsd.module and created Hosting StatsD module for sending statistics to a Graphite server.
    • Updated and released a new version of IntercomIO module.
    • Default devmaster to enable HTTPS and! If DevShop is installed on a server with public DNS, it will have a valid HTTPS certificate out of the box! The devmaster.profile file automatically detects a public devshop and enables LetsEncrypt on the hostmaster site for you.
    • Update Hosting modules to 3.17.0. See full release notes here:
    • Centralize all composer libraries in the devmaster/composer.json file.
    • Add composer_manager module to allow modules to define their own dependencies using composer.
    • Hook into hostmaster verify to trigger a composer install command to ensure the libraries are properly installed.
    • Switch from Admin Menu to NavBar!
    • Fixed mobile breakpoint issues in the primary links! DevShop now works great on mobile screens.
    • Enable DevShop Permissions module by default so authenticated users can do most things. Patched hosting module to allow users to create sites even if they don't have an associated.
    • Disabled importing of "existing sites" when a platform is verified because this can be problematic. Some teams use sites/something for code but not site credentials.
    • Enable devshop_support_network_client module by default.
    • Fixed Devshop Acquia Hooks logging: needed to be updated to the latest p_log style instead of devshop_log.
    • Removed composer.json and committed vendor code from all modules.
    • Allow changing a project's default Git URL.
    • Fix missing error logs on project create wizard.
    • Fix errors on create project wizard and create environment form when logged in as a normal authenticated user: hosting_get_servers() uses node access checks unless extra parameter is set.
    • Show extra project drush aliases on the "clone source" field in the add environment form.
    • Add a _GET Parameter to allow links to decide whether or not to redirect to the task node when a task confirm form is fired.
    • On task pages, fix the task info header block to the top of the page when scrolled down.
    • Fix "Follow Logs" button, turn back into a button.
    • Added a "Run Again" button to tasks to allow easy triggering of the same task from task node pages.
    • Improve task logs pages in general: automatically enable "Follow Logs", improve button alignment.
    • Load site and platform context names into environment objects.
    • Added support for GitLab webhook payloads, so GitLab hosted environments only pull the environments for the branches that were pushed.
    • New Feature: Add remote drush aliases to Composer.json!
    • New Feature: Git Reset! Reset working copy changes from the web browser.
    • Remove old unused code from devshop_testing_menu_alter
    • Totally new user login/password/register pages!
    • Display a more clear error message when platform verification fails: "Codebase verification failed."
    • Add cancel button to task node page.
  • Ansible Role improvements:

    • Added real .travis.yml testing to all roles.
    • opendevshop/ansible-role-aegir-apache@1.1.0...master
    • Added remi_php_repo_name variable so RedHat users can decide their PHP version and removed hard coded php55 stuff in RedHat roles.
    • Fixed Ubuntu 16 installation, the when statements were incorrect. Added separate file for Ubuntu 14 variables.
    • Added a test for sudo apache reload access to the roles so it will fail early if sudo was misconfigured.
    • Moved devmaster_install_command and devmaster_upgrade_command to defaults/main.yml so they can be overridden.
    • Added devshop_support_license_key ansible variable.
    • Load devmaster_site_root and devmaster_site_uri as ansible facts, and use them to determine if we need to install or upgrade.
    • Stop hosting-queued service and kill all processes owned by aegir user before trying to change aegir user.
    • Fixed the Aegir sudo password prompt during install! Added fix-drupal-*-ownership and fix-drupal-*-permissions scripts. Somehow they are running even if module is not enabled.
    • Fix sudo configuration in aegir-nginx role.
    • Added behat tests for checking license key, HTTPS/LetsEncrypt servers, and the new homepage.
    • Use drupal_valid_path when checking for git commit visibility. It's more consistent that looking for permissions.

DevShop 1.4.0

27 Sep 19:34
Choose a tag to compare

1.4.0 (September 27, 2018)

  • 70 Commits to DevShop: 1.3.4...1.x

  • 85 Commits to Devmaster: opendevshop/devmaster@7.x-1.34...7.x-1.x

  • Added the Contributor Covenant Code of Conduct:

    In the interest of fostering an open and welcoming environment, we as
    contributors and maintainers pledge to making participation in our project and
    our community a harassment-free experience for everyone, regardless of age, body
    size, disability, ethnicity, sex characteristics, gender identity and expression,
    level of experience, education, socio-economic status, nationality, personal
    appearance, race, religion, or sexual identity and orientation.

  • Created a new DevShop Composer Template to make it as easy as possible to get a project running in devshop! See for more information.

UI Updates

  • Implemented "Create a Branch" button and made sure "Create a tag" is enabled by default. Add a display of the current git reference to the Git Checkout and Git Tag form. Cleanup ordering, form element titles and descriptions, and allow a ?create=1 URL parameter to the Checkout task to change the UI to specifically target "Creation".
    Create Branches and Tags
  • Replace missing "Last Commit" timestamp.
    Last commit timestamp
  • Fixed bug preventing HTTP Authentication passwords from being saved.
  • Enable support by default to provide free renewable HTTPS certficates.
  • Enable DevShop Remote Aliases by default.
  • Moved "Git Commit" interface out of devshop and into Hosting Git module.
  • Moved "Aegir Features" module out of devshop and into Hosting Tasks Extra.
  • Moved devshop_process() to provision_process(), bringing another core feature of devshop to Provision/Aegir.
  • Make environment variables available in .hooks.yml files.
  • Change GitHub commit status name to devshop/PROJECT/tests and devshop/PROJECT/deploy. When the same project has the same Git URL, and you are PR driven development with automated testing, all projects were using the commit status name "devshop/tests". Now, the test results from every project is visible because they each get their own commit status.
  • Fix writing project aliases when project is verified.
  • Fixed the Download Modules task to work with composer-based projects! Now runs composer require drupal/* and commits in one shot!
  • Cleaned up the new project page, giving examples of a SSH git URL, mentioning the option to use a full drupal stack or composer, linking to the DevShop Composer Template.
  • Allow editing of platform if the platform has not been verified.
  • Fixed bug in ajax task loading that would load tasks for disabled sites.
  • Fixed awkward display of Project and Environment links on Platform nodes.
  • Moved the "Refresh Branches" button to the top of the Git Branches/Tags list dropdown.
  • Upgrading Hosting Tasks Extras "Features Update & Revert" tasks with:
    • Ability to specify which features to update or revert.
    • Add "Force" option to "revert" task.
    • Migrate all to provision_process().
    • Creating a file because that is the only place drush_hook_pre_hosting_task() works.
    • Improving the form page: adding a form alter for easy page title renaming for other tasks.

System Updates

  • Hosting modules and Provision upgraded to 3.16. Full release notes
  • Added "aegir-uid" as a command line option (a3cea24) and set the default to 12345.
  • Use PHP7 as the default for local devshop development.
  • Added upgrade tests back.
  • Install all Ansible roles during robo prepare:sourcecode command.
  • Added drush to composer and use devshop-local drush for building local devmaster.
  • Fixing the robo prepare:containers command.
  • Change robofile to use xdebug by default, unless option --disable-xdebug is used.
  • Created a robo up --mode=manual option to allow for instantiating a container without running
  • Fixed the special makefile for travis forks.
  • Added CAS, HybridAuth, and Intercom modules to build-devmaster.make to get around distribution publishing rules.
  • Fixed documentation block in to show the right URL to wget.
  • Bumped geerlingguy.composer to 1.7.1, and geerlingguy.mysql to 2.9.1.
  • Added an alpha version of a script to clone a production site and push the data into a devshop server:
  • Added test coverage for HTTP Basic Authentication settings.
  • Fixed multiple issues with Ansible playbooks.

New Contributors