drupal issueshttps://gitlab.lakedrops.com/ansible/roles/drupal/-/issues2022-03-18T13:18:01Zhttps://gitlab.lakedrops.com/ansible/roles/drupal/-/issues/24Optimize MySQL Performance2022-03-18T13:18:01ZJürgen Haasjuergen.haas@lakedrops.comOptimize MySQL PerformanceAccording to this [drupal.org issue](https://www.drupal.org/project/drupal/issues/2733675), MySQL performance can greatly be optimized when we add
```
$databases['default']['default']['init_commands']['tx_level'] = "SET TRANSACTION ISOL...According to this [drupal.org issue](https://www.drupal.org/project/drupal/issues/2733675), MySQL performance can greatly be optimized when we add
```
$databases['default']['default']['init_commands']['tx_level'] = "SET TRANSACTION ISOLATION LEVEL READ COMMITTED;";
```
to the settings.php file. We should add that to the default deployment with Ansible and also to the Docker4Drupal Composer plugin.Jürgen Haasjuergen.haas@lakedrops.comJürgen Haasjuergen.haas@lakedrops.comhttps://gitlab.lakedrops.com/ansible/roles/drupal/-/issues/23Check drush deploy for pipeline2021-02-10T08:09:50ZJürgen Haasjuergen.haas@lakedrops.comCheck drush deploy for pipelineSee https://github.com/drush-ops/drush/pull/4359 for more details.See https://github.com/drush-ops/drush/pull/4359 for more details.Daniel SpeicherDaniel Speicherhttps://gitlab.lakedrops.com/ansible/roles/drupal/-/issues/22Update script can sometimes misinterpret up to date status2020-10-16T15:59:10ZEric ZillmannUpdate script can sometimes misinterpret up to date statusThe update script checks for the current branch.
The output can be different when there are multiple branches.
To address this the commit 7d5bfaea has been made.
Unfortunately this introduces a new problem:
The line `if [[ $OUTPUT == ...The update script checks for the current branch.
The output can be different when there are multiple branches.
To address this the commit 7d5bfaea has been made.
Unfortunately this introduces a new problem:
The line `if [[ $OUTPUT == *"$branch "*"pushes to $branch "*"(up to date)"* ]]; then` does not stop on newlines.
This means that if your branch is `branch1` and the output of `git remote show origin` is something like this
```
[...]
Local refs configured for 'git push':
branch1 pushes to branch1 (local out of date)
master pushes to master (up to date)
```
the update script will still report `branch1` as up to date.Eric ZillmannEric Zillmannhttps://gitlab.lakedrops.com/ansible/roles/drupal/-/issues/21Prepare Drush 92018-02-10T11:38:50ZJürgen Haasjuergen.haas@lakedrops.comPrepare Drush 9So far we can use Drush 9 beta4 but before we can go to beta8 or later we need to
- replace global launcher from Compoer to the one in /usr/local/bin, see https://github.com/drush-ops/drush-launcher
- redefine aliases, also in conrtabsSo far we can use Drush 9 beta4 but before we can go to beta8 or later we need to
- replace global launcher from Compoer to the one in /usr/local/bin, see https://github.com/drush-ops/drush-launcher
- redefine aliases, also in conrtabsJürgen Haasjuergen.haas@lakedrops.comJürgen Haasjuergen.haas@lakedrops.comhttps://gitlab.lakedrops.com/ansible/roles/drupal/-/issues/20Enable brotli compression2022-03-21T23:00:09ZJürgen Haasjuergen.haas@lakedrops.comEnable brotli compressionIn drupal, apache, varnish and haproxy if necessaryIn drupal, apache, varnish and haproxy if necessaryhttps://gitlab.lakedrops.com/ansible/roles/drupal/-/issues/19Review htaccess for security2017-11-22T06:09:17ZJürgen Haasjuergen.haas@lakedrops.comReview htaccess for securityWe currently have this in the public file directory:
```
Options None
Options +FollowSymLinks
```
The security review is complaining about this and thinks that PHP code could be executed in this directory. It want's to change this into...We currently have this in the public file directory:
```
Options None
Options +FollowSymLinks
```
The security review is complaining about this and thinks that PHP code could be executed in this directory. It want's to change this into:
```
Options -Indexes -ExecCGI -Includes -MultiViews
```
I'm not sure if this is a Drupal thing or a security review module thing. Actually, I like the original syntax more.Jürgen Haasjuergen.haas@lakedrops.comJürgen Haasjuergen.haas@lakedrops.comhttps://gitlab.lakedrops.com/ansible/roles/drupal/-/issues/18Dev Modules compatibility for Drush 92017-10-27T16:28:36ZJürgen Haasjuergen.haas@lakedrops.comDev Modules compatibility for Drush 9Writing global commands has changed, see http://docs.drush.org/en/master/commands/
Also, the Ansible deployment needs to be adjusted such that drupal_post_deploy_tasks call the correct commands and parameters.Writing global commands has changed, see http://docs.drush.org/en/master/commands/
Also, the Ansible deployment needs to be adjusted such that drupal_post_deploy_tasks call the correct commands and parameters.Jürgen Haasjuergen.haas@lakedrops.comJürgen Haasjuergen.haas@lakedrops.comhttps://gitlab.lakedrops.com/ansible/roles/drupal/-/issues/17Debug Module Live Stream2022-03-21T23:00:09ZJürgen Haasjuergen.haas@lakedrops.comDebug Module Live StreamHow about writing a module which provides easy dashboard for live debugging. It should be easy to turn on/off and provide live insight into several sources:
- Drupal Watchdog
- Syslog
- PHP error log
- Web server access log
- and maybe ...How about writing a module which provides easy dashboard for live debugging. It should be easy to turn on/off and provide live insight into several sources:
- Drupal Watchdog
- Syslog
- PHP error log
- Web server access log
- and maybe more
The log files could be streamed dynamically with something like https://www.npmjs.com/package/tail-streamhttps://gitlab.lakedrops.com/ansible/roles/drupal/-/issues/16Module for Config Export2017-10-10T10:14:41ZJürgen Haasjuergen.haas@lakedrops.comModule for Config ExportWritten for a customer project, needs to be publishedWritten for a customer project, needs to be publishedJürgen Haasjuergen.haas@lakedrops.comJürgen Haasjuergen.haas@lakedrops.comhttps://gitlab.lakedrops.com/ansible/roles/drupal/-/issues/15Script drupal-config leaves wrong permissions2022-03-21T23:00:09ZJürgen Haasjuergen.haas@lakedrops.comScript drupal-config leaves wrong permissionsOne of the scripts
- drupal-config
- jailkit-user
- drush-aliases
- fluentd-client
levaes other than the new jail with wrong permissions in the Drupal directories.One of the scripts
- drupal-config
- jailkit-user
- drush-aliases
- fluentd-client
levaes other than the new jail with wrong permissions in the Drupal directories.https://gitlab.lakedrops.com/ansible/roles/drupal/-/issues/14Apache config with options2017-09-08T13:59:44ZJürgen Haasjuergen.haas@lakedrops.comApache config with optionsWhen running the apache config and the domain has changed, we probably require new LetsEncrypt certs and we should be able to do that in one go.
Also, the Apache config should be possible to be limited to just one site.When running the apache config and the domain has changed, we probably require new LetsEncrypt certs and we should be able to do that in one go.
Also, the Apache config should be possible to be limited to just one site.Jürgen Haasjuergen.haas@lakedrops.comJürgen Haasjuergen.haas@lakedrops.comhttps://gitlab.lakedrops.com/ansible/roles/drupal/-/issues/13LCache2022-03-07T13:33:01ZJürgen Haasjuergen.haas@lakedrops.comLCache@axelroth recommended LCache as a replacement or addition to Redis and memcached.
- https://www.drupal.org/project/lcache
- https://lcache.github.io/lcache/
- https://events.drupal.org/dublin2016/sessions/faster-and-more-scalable-memcac...@axelroth recommended LCache as a replacement or addition to Redis and memcached.
- https://www.drupal.org/project/lcache
- https://lcache.github.io/lcache/
- https://events.drupal.org/dublin2016/sessions/faster-and-more-scalable-memcacheredis-tiered-caching-lcachehttps://gitlab.lakedrops.com/ansible/roles/drupal/-/issues/12Rename vhost files2017-04-12T19:03:29ZJürgen Haasjuergen.haas@lakedrops.comRename vhost filesCurrently we name them after domain but we should name them after site id such that changing domain gets easier. Same for similar roles.Currently we name them after domain but we should name them after site id such that changing domain gets easier. Same for similar roles.Jürgen Haasjuergen.haas@lakedrops.comJürgen Haasjuergen.haas@lakedrops.comhttps://gitlab.lakedrops.com/ansible/roles/drupal/-/issues/11Ansible is still inoperative. Please advise on questions re deployment2017-04-12T19:03:29ZAllan MartinezAnsible is still inoperative. Please advise on questions re deploymentMessage from Josh re Drupal deployment:
Ansible is still inoperative. Andrew was not able to to get it working based on the instructions you gave Monday.
Andrew is on vacation, so can you please review the following and see if you...Message from Josh re Drupal deployment:
Ansible is still inoperative. Andrew was not able to to get it working based on the instructions you gave Monday.
Andrew is on vacation, so can you please review the following and see if you can assist Nick get it working. He himself is on vacation starting Sunday, so your help today possible or latest tomorrow morning would be greatly appreciated.
Can you please answer the questions.
If you can answer the request on email it would be helpful. Nick will be going on vacation on Sunday, so there is urgency to get this done immediately.
Fron Nick Ivinsky:
I've been given two machines.
54.210.117.78 - that was supposed to have ansible installed. It had it a week ago but not now.
54.88.113.237 - supposedly clean ubuntu machine to install ansible
I followed procedure given here https://gitlab.paragon-es.de/ansible-playbooks/general to install ansible. Procedure was mostly OK with few problems that I had to solve myself or google to find solutions:
1. I had to execute most of the commands with sudo
2. had to install prerequisites such as git and python
3. When running "playbooks/setup_local.py" it threw an error:
fatal: [localhost]: FAILED! => {"failed": true, "msg": "The conditional check 'ansible_pkg_mgr == 'apt'' failed.
The error was: error while evaluating conditional (ansible_pkg_mgr == 'apt'): 'ansible_pkg_mgr' is undefined\n\n
The error appears to have been in '/opt/ansible/playbooks/setup_local.yml': line 29, column 9, but may\nbe
elsewhere in the file depending on the exact syntax problem.\n\nThe offending line appears to be:\n\n
- block:\n - block:\n ^ here\n"}
Had to set "gather_facts: true" in playbooks/setup_local.py to resolve that error
4. Guide included step "ansible-playbook.py hosts" to add hosts to hosts file but it didn't work.
I've added crcdev1 and 2 manually but not sure if it's needed at all. reference machine had only one host added.
5. Guide suggests runing 3 sripts "setup_local.py, update.sh, config.sh" - it's not clear whether i need to run all three on initial setup or not.
6. Guide includes reference to boto instructions but they were not there. "If you want to use the dynamic AWS EC2 inventory, you should install boto (details see above)"
After installing ansible it got more confusing:
There are various configuration steps that include remote user configuration, .ssh/config, etc/ansible.cfg, etc.
I had to look at existing machine to figure out what to write in these config files.
It's important to understand which config files ansible is using when it's executed.
I believe I reached the point where I can execute inithost.py and apb. (I mean all required components installed and commands are available)
BUT:
-For apb I need to setup keys so ansible can connect to crcdev machines.
-For inithost (adding new AWS machines) there are more settings. Here is a sample command:
***>inithost.py crcdev3 --ip=1.2.3.4 --root=ubuntu --key=/home/jurgenhaas/.ssh/Jurgen.pem --cloud=ec2 --groups=webserver,dbserver,webserver-drupal,dbserver-mysql,nodejsserver,s3client
We don't really need to create new dev machines now and we can skip that. However It's not clear where to get new IPs and where to get a key to run this command.
Working ansible machine would be helpful as it would let me see proper output from running playbooks and compare it to output on my test machine.https://gitlab.lakedrops.com/ansible/roles/drupal/-/issues/10Run Drupal Updates after deploy2017-04-12T19:03:29ZJürgen Haasjuergen.haas@lakedrops.comRun Drupal Updates after deploy| Task | Ticket | D6 | D7 | D8 | Dev | Live | Drush available | Note |
| ---- | ---- | ---- | ---- | ---- | ---- | ---- | ---- | ---- |
| pull data | | x | x | x | x | x* | | this will be left out for now |
| pre-processing | #7 | | |...| Task | Ticket | D6 | D7 | D8 | Dev | Live | Drush available | Note |
| ---- | ---- | ---- | ---- | ---- | ---- | ---- | ---- | ---- |
| pull data | | x | x | x | x | x* | | this will be left out for now |
| pre-processing | #7 | | | | x | x | | moved into composer.json, see https://gitlab.paragon-es.de/ansible-roles/drupal/issues/7#note_1956 |
| enable/disable dev-tools | #5 | x | x | x | x/- | -/x | x | |
| features-revert-all | | | x | | x | x | x | |
| sync settings | | | | x | x | x | x | |
| updatedb | #6 | x | x | x | x | x | x | |
| registry rebuild | | x | x | | x | x | x | |
| clear cache | | x | x | x | x | x | x | |
| update entites | | | | x | x | x | x | |
*) only initiallyJürgen Haasjuergen.haas@lakedrops.comJürgen Haasjuergen.haas@lakedrops.comhttps://gitlab.lakedrops.com/ansible/roles/drupal/-/issues/9Create config directories2017-04-12T19:03:29ZJürgen Haasjuergen.haas@lakedrops.comCreate config directoriesThe settings.php defines 3 directories for config stages and we should create them all.The settings.php defines 3 directories for config stages and we should create them all.Jürgen Haasjuergen.haas@lakedrops.comJürgen Haasjuergen.haas@lakedrops.comhttps://gitlab.lakedrops.com/ansible/roles/drupal/-/issues/8D8 Core Update2017-04-12T19:03:29ZJürgen Haasjuergen.haas@lakedrops.comD8 Core Update- Download tar
- Replace root files, core and vendor directory
- Update composer:
- drush dl composer_manager
- drush en -y composer_manager
- composer drupal-rebuild
- composer drupal-update
- Run DB update and rebuild cache- Download tar
- Replace root files, core and vendor directory
- Update composer:
- drush dl composer_manager
- drush en -y composer_manager
- composer drupal-rebuild
- composer drupal-update
- Run DB update and rebuild cacheJürgen Haasjuergen.haas@lakedrops.comJürgen Haasjuergen.haas@lakedrops.comhttps://gitlab.lakedrops.com/ansible/roles/drupal/-/issues/7Install and execute tools2017-04-12T19:03:29ZJürgen Haasjuergen.haas@lakedrops.comInstall and execute tools- npm install
- bower install
- gulp css
etc. Either configure those in the inventory or apply some magic to determine automatically what's required.- npm install
- bower install
- gulp css
etc. Either configure those in the inventory or apply some magic to determine automatically what's required.https://gitlab.lakedrops.com/ansible/roles/drupal/-/issues/6DB update2017-04-12T19:03:29ZJürgen Haasjuergen.haas@lakedrops.comDB updateAt the end of the deployment to liveAt the end of the deployment to livehttps://gitlab.lakedrops.com/ansible/roles/drupal/-/issues/5Module browser refresh2017-04-12T19:03:29ZJürgen Haasjuergen.haas@lakedrops.comModule browser refreshDisable on live, enable on dev.Disable on live, enable on dev.