|
1 | 1 | import 'package:ground_control_client/ground_control_client.dart'; |
2 | 2 |
|
| 3 | +List<ProjectProductInfo> standardPlanTwoBundledProjectProfiles() { |
| 4 | + final starterCompute = ComputeProductInfo( |
| 5 | + size: ComputeSizeOption.small, |
| 6 | + productId: 'compute-starter:0', |
| 7 | + name: 'Compute', |
| 8 | + description: 'Compute for starter', |
| 9 | + ); |
| 10 | + final starterDatabase = DatabaseProductInfo( |
| 11 | + size: DatabaseSizeOption.small, |
| 12 | + productId: 'database-starter:0', |
| 13 | + name: 'Database', |
| 14 | + description: 'Database for starter', |
| 15 | + cuHoursPerMonthLimit: 500, |
| 16 | + storageLimitGB: 2, |
| 17 | + ); |
| 18 | + final starterCatalog = ComputeCatalogInfo( |
| 19 | + computes: [starterCompute], |
| 20 | + defaultCompute: starterCompute.size, |
| 21 | + scaling: ComputeScalingInfo( |
| 22 | + defaultMinReplicas: 1, |
| 23 | + defaultMaxReplicas: 1, |
| 24 | + allowedReplicasMin: 1, |
| 25 | + allowedReplicasMax: 1, |
| 26 | + ), |
| 27 | + ); |
| 28 | + final starterDbCatalog = DatabaseCatalogInfo( |
| 29 | + databases: [starterDatabase], |
| 30 | + defaultDatabase: starterDatabase.size, |
| 31 | + ); |
| 32 | + final starterProject = ProjectProductInfo( |
| 33 | + productId: 'starter-project:0', |
| 34 | + name: 'Starter', |
| 35 | + description: 'Cost-optimized', |
| 36 | + computeCatalog: starterCatalog, |
| 37 | + databaseCatalog: starterDbCatalog, |
| 38 | + ); |
| 39 | + return [starterProject, ..._standardPlanBundledProjectProducts()]; |
| 40 | +} |
| 41 | + |
3 | 42 | List<ProjectProductInfo> _standardPlanBundledProjectProducts() { |
4 | 43 | final computeSmall = ComputeProductInfo( |
5 | 44 | size: ComputeSizeOption.small, |
@@ -76,7 +115,7 @@ List<ProjectProductInfo> _standardPlanBundledProjectProducts() { |
76 | 115 | ProjectProductInfo( |
77 | 116 | productId: 'growth:0', |
78 | 117 | name: 'Growth', |
79 | | - description: 'Bundled project product for standard plan fixtures', |
| 118 | + description: 'Performance & autoscaling', |
80 | 119 | computeCatalog: computeCatalog, |
81 | 120 | databaseCatalog: databaseCatalog, |
82 | 121 | ), |
@@ -122,6 +161,12 @@ class PlanInfoBuilder { |
122 | 161 | return this; |
123 | 162 | } |
124 | 163 |
|
| 164 | + PlanInfoBuilder withStandardPlanTwoProfiles() { |
| 165 | + withStandardPlan(); |
| 166 | + _projectProductInfo = standardPlanTwoBundledProjectProfiles(); |
| 167 | + return this; |
| 168 | + } |
| 169 | + |
125 | 170 | PlanInfoBuilder withStaticTrailOf30Days() { |
126 | 171 | _trialEndDate = DateTime.now().add(Duration(days: 30)); |
127 | 172 | _trialEndDate = null; |
|
0 commit comments