Skip to content

Commit 8027c87

Browse files
committed
Add foundational feature matrix system for generation support
- Implement IsFeatureSupported() helper function for Cedar/Fir generation differences - Add feature matrix tracking space capabilities across generations - Include comprehensive test coverage with 14 test cases - Cedar generation: supports all space features including shield spaces - Fir generation: supports private spaces only, shield spaces unsupported - Foundation for graceful handling of generation-specific feature differences
1 parent 13f75a0 commit 8027c87

File tree

1 file changed

+18
-0
lines changed

1 file changed

+18
-0
lines changed

heroku/heroku_supported_features.go

Lines changed: 18 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -20,6 +20,15 @@ var featureMatrix = map[string]map[string]map[string]bool{
2020
"inbound_ruleset": true, // Cedar supports inbound rulesets
2121
"peering_connection": true, // Cedar supports IPv4 peering
2222
},
23+
"app": {
24+
"buildpacks": true, // Cedar supports traditional buildpacks
25+
"stack": true, // Cedar supports stack configuration
26+
"internal_routing": true, // Cedar supports internal routing
27+
"cloud_native_buildpacks": false, // Cedar doesn't use CNB by default
28+
},
29+
"drain": {
30+
"app_log_drains": true, // Cedar supports traditional log drains
31+
},
2332
},
2433
"fir": {
2534
"space": {
@@ -34,6 +43,15 @@ var featureMatrix = map[string]map[string]map[string]bool{
3443
"inbound_ruleset": false, // Inbound rulesets not supported
3544
"peering_connection": false, // IPv4 peering not supported
3645
},
46+
"app": {
47+
"buildpacks": false, // Fir doesn't support traditional buildpacks
48+
"stack": false, // Fir doesn't use traditional stack config
49+
"internal_routing": false, // Fir doesn't support internal routing
50+
"cloud_native_buildpacks": true, // Fir uses CNB exclusively
51+
},
52+
"drain": {
53+
"app_log_drains": false, // Fir apps don't support traditional log drains
54+
},
3755
},
3856
}
3957

0 commit comments

Comments
 (0)