- 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
@devversiopns of components, and add
- 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_hostnameansible 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-urloption in YamlTasks.
vars.ci.ymlfile for simple variable settings for CI environments.
Update DevShop Components list. (#611) * Update DevShop Components list. * Fix bad paths in README.
DevShop 1.6.0-alpha1: First DevShop Components Release
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:splitthat 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: https://github.com/opendevshop/devshop/runs/522033744?check_suite_focus=true#step:14:1
- YamlTasks: Provides a composer command called
yaml-tasksthat 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.
6 Commits to DevShop: 1.5.0-rc6...1.x
11 Commits to Devmaster: firstname.lastname@example.org...7.x-1.x
3 Commits to opendevshop/aegir-user role: email@example.com...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 drupal.org 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.
- 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 drupal.org distro whitelist. See https://www.drupal.org/project/drupalorg_whitelist/issues/3024898
- In the
devshop verify:systemcommand, move the setting of the
server_hostnamevariable so it gets set everytime.
- In the development environment (
robo upcommand) automatically set the git URLs to the SSH version, and add the git.drupal.org remote to devmaster.
281 Commits to DevShop: 1.4.0...1.5.0-rc1
233 Commits to Devmaster: firstname.lastname@example.org...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.
- Creates a simple inventory file at
- Ansible galaxy roles are installed to
- Ansible vars are saved to
- Changed the ansible output to "unixy", it's now MUCH more clear what is happening behind the ansible curtain.
--install-pathoption to allow customizing the CLI destination (Defaults to
/usr/share/devshop). This was needed for full install.sh/ansible upgrade testing.
--ansible-default-host-listoption to define where to save the ansible inventory file. Defaults to
--force-ansible-role-installoption adds the
--forceoption to the
ansible-galaxy installcommand, causing the script to overwrite existing roles. Defaults to False.
--licenseoption, used for immediate setup of DevShop Support network! See https://devshop.support for more information.
set -eso it will actually fail if any line in the script fails.
- Creates a simple inventory file at
Major DevShop CLI improvements.
devshop devmaster:upgradeto specifically update the devmaster drupal site. This is a replacement for
drush hostmaster-migratethat should not be run manually. It is triggered during the updated
- Allow upgrading by running the playbook with the new version as the
devshop_versionvariable. 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-updatecommand: add
--ignore-working-copy-changesto make development easier and added
composer installcall after git checkout.
- Change the devmaster folder variant to "date('Y-m-d-Hi');" to match what the provision debian package does.
devshop upgradecommand to run the entire upgrade process: self-update the CLI, then invoke a new process (so it uses the new code) for
devshop verify:systemcommand. Added
--connectionoption to allow customizing the ansible
--connectionoption, automatically write
ansible.cfgfile, 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:systemcommand 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
vagrantfolder. It should be ready for
- 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.
- 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 LetsEncrypt.org! 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: http://docs.aegirproject.org/en/3.x/release-notes/3.17/
- Centralize all composer libraries in the
composer_managermodule to allow modules to define their own dependencies using composer.
- Hook into hostmaster verify to trigger a
composer installcommand 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/somethingfor 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
- 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.
remi_php_repo_namevariable so RedHat users can decide their PHP version and removed hard coded php55 stuff in RedHat roles.
- Fixed Ubuntu 16 installation, the
whenstatements 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.
devmaster_upgrade_commandto defaults/main.yml so they can be overridden.
devmaster_site_urias ansible facts, and use them to determine if we need to install or upgrade.
hosting-queuedservice 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-*-permissionsscripts. 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.
1.4.0 (September 27, 2018)
70 Commits to DevShop: 1.3.4...1.x
85 Commits to Devmaster: email@example.com...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 https://github.com/opendevshop/devshop-composer-template for more information.
- 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".
- Replace missing "Last Commit" timestamp.
- Fixed bug preventing HTTP Authentication passwords from being saved.
- Enable LetsEncrypt.org 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.
provision_process(), bringing another core feature of devshop to Provision/Aegir.
- Make environment variables available in
- Change GitHub commit status name to
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 hosting_tasks_extra.drush.inc 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.
- 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
- Added drush to composer and use devshop-local drush for building local devmaster.
- Fixing the
- Change robofile to use xdebug by default, unless option
- Created a
robo up --mode=manualoption to allow for instantiating a container without running install.sh.
- Fixed the special makefile for travis forks.
- Added CAS, HybridAuth, and Intercom modules to build-devmaster.make to get around drupal.org distribution publishing rules.
- Fixed documentation block in istall.sh 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: https://github.com/opendevshop/devshop/blob/1.x/scripts/devshop-dump-sync.sh
- Added test coverage for HTTP Basic Authentication settings.
- Fixed multiple issues with Ansible playbooks.
- Thanks to @kyletaylored for a documentation fix for install.sh. 6b8a32d
- Thanks to @jacintocapote for returning to maintainers.