[8.x] Better CI handling π€ π€ π€
DrevOps has moved to its own GitHub organisation https://github.com/drevops! π π π
This allows to maintain all repositories related to DrevOps in one place.
Docker
- π₯ Updated container images to
1.2.0. - π₯ Updated PHP to
7.3. - π₯ Added Dockerfile for
mariadbservice with ability to provide custom configuration. - Less output when installing FE tools.
- Added
docker pullprogress output suppression.
CI
- π₯π₯π₯ Removed additional CI scripts. CI now uses ahoy scripts directly!
- π₯π₯ Refactored CI config to use YAML anchors as variables. Also, defined section that should change per-project.
- π₯ Move code linting is a separate job in CI.
- π₯ Added default timezone for CI runner container.
- Updated CI builder image to use new namespace.
- Added more timeout for commands without output in CI.
- Fixed network warning in CI.
- Updated default database directory location in CI.
- Added artifacts storage in CI
- Added test results storage in CI
Scripts
- Workflow
- π₯π₯ Updated
install-sitescript to support installing from database or fresh install if database dump file is not available. - π₯π₯ Fixed env variables with values being overridden by values in
.env. Any variable that has a value in the current environment would be overwritten by the value in the.envfile. - Fixed
ahoy cleancommand not removing files with readonly permissions. - Moved Composer validation to project build stage (but only if composer is installed).
- Refactored all scripts to correctly work with database dump directory and filename.
- Improved the logic of DB sanitization - now only runs if file exists.
- π₯π₯ Updated
- Tools
- Updated lint for PHPCS to not be verbose while scanning.
- Added logs for running unit tests.
- Removed global
unittest directory. Tests should live with modules.
- Doctor
- Removed Composer presence check from Doctor. Composer is not required on host.
- Fixed Doctor check for status code of the homepage to allow 200 and 403, returned depending on the installation type.
- Updated Doctor to check the status of all containers.
- Added
DOCTOR_CHECK_MINIMALshorthand variable to run minimal Doctor checks in CI env.
- Installation
- Fixed
install.shnot correctly discovering project settings when installed into a custom directory + tests. - Fixed
install.shnot failing on errors. - Fixed
install.shto never modify DrevOps scripts when installing.
- Fixed
- Testing
- Fixed some integration tests not running.
- π₯ Added printing of debug output in DrevOps scripts using
DREVOPS_DEBUGvariable. - Fixed code formatting in multiple scripts.
- Removed
DOCKER_HOSTtemporary override in.envfile. - Removed default deployer user name from the deployment script. This should be set through env variables.
Back-end
- Core and Modules
- Updated Drupal core version to 8.8.
- Removed obsolete code to load hook implementations from included sub-directories.
- Added Shield popup default title.
- Removed custom patches. Some of the patches were breaking existing sites.
- Settings
- Improved readability of
settings.phpfile. - Updated default values in
settings.local.phpfile. - Added skipping of permissions hardening locally and in CI.
- Improved readability of
- Testing
- Renamed test helper class to a trait in
your_site_coremodule.
- Renamed test helper class to a trait in
Front-end
- Renamed
style.scsstostyles.scss. - Fixed FE browser list for
autoprefixpackage. - Removed Barrio base theme and
twbs/bootstraplibrary from theme.
Integrations
- Updated Acquia credentials in
.envfile to not rely on variables. - Added NewRelic notifications for Acquia production.
- Fixed Acquia DB download script not correctly identifying it's location.
- Refactored Acquia hooks scripts to allow configuration through environment variables and comply with coding standards.
Other
- Removed obsolete
Brewfile. - Removed obsolete
.nvmrcfile.