{ "uuid": [ { "value": "12b405e6-2827-4279-b85a-7f06475a69a4" } ], "langcode": [ { "value": "en" } ], "type": [ { "target_id": "daily_email", "target_type": "node_type", "target_uuid": "8bde1f2f-eef9-4f2d-ae9c-96921f8193d7" } ], "revision_timestamp": [ { "value": "2025-05-11T09:00:44+00:00" } ], "revision_uid": [ { "target_type": "user", "target_uuid": "b8966985-d4b2-42a7-a319-2e94ccfbb849" } ], "revision_log": [], "status": [ { "value": true } ], "uid": [ { "target_type": "user", "target_uuid": "b8966985-d4b2-42a7-a319-2e94ccfbb849" } ], "title": [ { "value": "Introducing feature flags to \"build-configs\"\n" } ], "created": [ { "value": "2023-04-17T00:00:00+00:00" } ], "changed": [ { "value": "2025-05-11T09:00:44+00:00" } ], "promote": [ { "value": false } ], "sticky": [ { "value": false } ], "default_langcode": [ { "value": true } ], "revision_translation_affected": [ { "value": true } ], "path": [ { "alias": "\/daily\/2023\/04\/17\/introducing-feature-flags-to-build-configs", "langcode": "en" } ], "body": [ { "value": "\n
Yesterday, I wanted to make a breaking change to my build-configs project<\/a> - changing the default database credentials that are used by Docker Compose.<\/p>\n\n As I have several projects based on generated files by the tool, changing the values could cause issues in those projects in the future and this is something that I wanted to avoid.<\/p>\n\n To avoid this issue and needing to update all of my projects at once, I added a feature flag to the If a project, like my Drupal<\/a> and LocalGov Drupal<\/a> Docker examples, are opted in, its files will get the new credentials. If not, it will continue to use the original ones.<\/p>\n\n In this commit<\/a>, you'll see where I enabled the feature flag and committed the resulting change.<\/p>\n\n I can continue to work on existing projects without them breaking, and migrate projects one at a time by using the feature flag instead of needing to do them all once.<\/p>\n\n Once all active projects have been migrated or completed, the feature flag can be removed and I can refactor and simplify the code - removing the feature flag and the legacy values.<\/p>\n\n ",
"format": "full_html",
"processed": "\n Yesterday, I wanted to make a breaking change to my build-configs project<\/a> - changing the default database credentials that are used by Docker Compose.<\/p>\n\n As I have several projects based on generated files by the tool, changing the values could cause issues in those projects in the future and this is something that I wanted to avoid.<\/p>\n\n To avoid this issue and needing to update all of my projects at once, I added a feature flag to the If a project, like my Drupal<\/a> and LocalGov Drupal<\/a> Docker examples, are opted in, its files will get the new credentials. If not, it will continue to use the original ones.<\/p>\n\nWhat did I do?<\/h2>\n\n
build.yaml<\/code> file so I can opt-in to this feature on a per-project basis.<\/p>\n\n
What does this achieve?<\/h2>\n\n
What did I do?<\/h2>\n\n
build.yaml<\/code> file so I can opt-in to this feature on a per-project basis.<\/p>\n\n