หลังจากอัปเกรด Drupal 9 ฉันไม่สามารถใช้การซิงโครไนซ์การกำหนดค่าเพื่อปรับใช้การกำหนดค่ากับสภาพแวดล้อม Acquia Cloud ได้อีกต่อไป:
นำเข้าการเปลี่ยนแปลงการกำหนดค่าที่ระบุไว้หรือไม่ (ใช่/ไม่ใช่) [ใช่]:
> > [ข้อผิดพลาด] Drupal\Core\Config\ConfigImporterException: มีข้อผิดพลาดในการตรวจสอบการซิงโครไนซ์การกำหนดค่า
> การนำเข้านี้ว่างเปล่า และหากนำไปใช้จะเป็นการลบการกำหนดค่าทั้งหมดของคุณ ดังนั้นจึงถูกปฏิเสธใน Drupal\Core\Config\ConfigImporter->validate() (บรรทัดที่ 750 ของ /mnt/www/html/d9readiness/docroot/core/lib/Drupal/Core/Config/ConfigImporter.php)
>
> ใน ConfigImportCommands.php บรรทัดที่ 360:
>
> การนำเข้าล้มเหลวเนื่องจากสาเหตุต่อไปนี้:
> การนำเข้านี้ว่างเปล่า และหากนำไปใช้จะเป็นการลบการกำหนดค่าทั้งหมดของคุณ
> จึงถูกปฏิเสธ
>
>
การตั้งค่าคอนฟิกูเรชันเป็นแบบเดียวกับที่ใช้ก่อนการอัปเกรด:
$ grep -Rn '../config/default' .
./docroot/sites/default/settings.php:258:// $config_directories['vcs'] = '../config/default';
./docroot/sites/default/settings.php:259:// $config_directories['sync'] = '../config/default';
./docroot/sites/default/settings.php:262:$settings['config_sync_directory'] = '../config/default';
./docroot/sites/default/settings.php:263:$settings['config_vcs_directory'] = '../config/default';
ความสงสัยของฉันคือ Acquia กำลังแทนที่การตั้งค่าของฉันที่ใดที่หนึ่งนอกรูทเอกสารของฉัน แต่ฉันหาไม่พบ
สภาพแวดล้อมในท้องถิ่นคือ แลนโด้ กับของใหม่ อะควา
สูตรดังนั้นอาจมีการกำหนดค่าดั้งเดิมที่มาพร้อมกับ กรดไหลย้อน
หรือบางสิ่งบางอย่าง.
ฉันหวังว่าจะติดตั้ง BLT 12 ทันทีที่ฉันจัดการกับข้อผิดพลาดแปลก ๆ สองสามข้อสุดท้ายในเครื่องของฉัน บางทีนั่นอาจช่วยฉันแก้ไขปัญหาการซิงค์การกำหนดค่าได้เนื่องจากมาพร้อมกับการแทนที่การกำหนดค่าของตัวเอง
ซึ่งอาจเกี่ยวข้องกับข้อผิดพลาดต่อไปนี้ที่รายงานโดย สถานะการอัพเกรด โมดูล ก่อน อัพเกรด Drupal 9:
https://www.drupal.org/project/upgrade_status/issues/3229552#comment-14209685
อัปเดต:
ผ่าน Drupal Slack
แม็คดรูอิด 6 ชั่วโมงที่แล้ว
ความสงสัยของฉันคือ Acquia กำลังแทนที่การตั้งค่าของฉันที่ไหนสักแห่ง
...อาจจะไม่ได้ตอบคำถามของคุณโดยตรง แต่คุณควรตรวจสอบการตั้งค่าใดๆ เช่น
$ drush ev 'print_r(\Drupal\Core\Site\Settings::get("config_sync_directory"));'
ฉันลองสิ่งนี้แล้วและเป็นการยืนยันว่า Acquia ใช้การกำหนดค่าอื่นซึ่งไม่ได้อยู่ในของฉัน การตั้งค่า.php
.
นี่คือผลลัพธ์จากการเรียกใช้คำสั่งนั้นในเครื่องของฉันและบน Acquia Cloud:
$ lando drush ev 'print_r(\Drupal\Core\Site\Settings::get("config_sync_directory"));'
../config/default%
$ lando drush @dev ev 'print_r(\Drupal\Core\Site\Settings::get("config_sync_directory"));'
ป้อนข้อความรหัสผ่านสำหรับคีย์ '/var/www/.ssh/id_rsa':
/mnt/www/html/d9readiness/docroot/sites/default/files/config_315f86d0f57aa166d80058769033a13b1b4823d0/syncการเชื่อมต่อไปยัง d9readiness.ssh.devcloud.acquia-sites.com ปิด
$ lando drush @test ev 'print_r(\Drupal\Core\Site\Settings::get("config_sync_directory"));'
ป้อนข้อความรหัสผ่านสำหรับคีย์ '/var/www/.ssh/id_rsa':
/mnt/www/html/d9readiness/docroot/sites/default/files/config_72c878fc6029f4e12c65fa9d1ce2afd4c3a94575/syncการเชื่อมต่อไปยัง d9readiness.ssh.devcloud.acquia-sites.com ปิด
นี่เป็นการพิสูจน์ว่า Acquia กำลังลบล้างการตั้งค่าการกำหนดค่าของฉัน
เพื่อตรวจสอบสิ่งนี้ ฉัน grepped สำหรับไดเร็กทอรีการกำหนดค่า Dev ในโครงการในเครื่องของฉันและไม่มีการส่งคืนผลลัพธ์:
$ grep -Rn 'sites/default/files/config_315f86d0f57aa166d80058769033a13b1b4823d0/sync' .
$
ในกรณีที่ส่วนเส้นทางไดเร็กทอรีของไฟล์สาธารณะถูกจัดเตรียมโดย stream wrapper การขยายตัวแปร หรือการต่อสตริง ฉันลองอีกครั้งโดยใช้ตัวระบุการกำหนดค่าเท่านั้น:
$ grep -Rn '315f86d0f57aa166d80058769033a13b1b4823d0' .
$
ไม่มีผลลัพธ์อีกครั้ง การกำหนดค่านี้มาจากสถานที่แปลก ๆ แน่นอน
อาจเป็นสิ่งนี้ จำเป็นต้อง
ใกล้จบ การตั้งค่า.php
?
// บน Acquia Cloud รวมถึงไฟล์กำหนดค่า Drupal ให้ใช้ไฟล์ที่ถูกต้อง
// ฐานข้อมูลในแต่ละสภาพแวดล้อมของไซต์ (Dev, Stage หรือ Prod) เพื่อใช้สิ่งนี้
// settings.php สำหรับการพัฒนาบนเวิร์กสเตชันโลคัลของคุณ ตั้งค่า $db_url
// (Drupal 5 หรือ 6) หรือ $databases (Drupal 7 หรือ 8) ตามที่อธิบายไว้ในความคิดเห็นด้านบน
ถ้า (file_exists ('/var/www/site-php')) {
ต้องการ ('/var/www/site-php/d9readiness/d9readiness-settings.inc');
}
หมายเหตุ: การกำหนดค่านี้มีอายุอย่างน้อยสองปี เรียกโครงการนี้ไม่ถูกจริงๆ d9ความพร้อม
(นึกว่าเรียกว่า ชื่อโครงการลูกค้า
).