@@ -75,6 +75,41 @@ var allocateCmd = &cobra.Command{
7575 logger .Fatal ("cluster deployment failed" , zap .Error (err ))
7676 }
7777
78+ if len (def .Buckets ) > 0 {
79+ for bucketName , bucketDef := range def .Buckets {
80+ err := deployer .CreateBucket (ctx , cluster .GetID (), & deployment.CreateBucketOptions {
81+ Name : bucketName ,
82+ RamQuotaMB : bucketDef .Settings .RamQuotaMB ,
83+ FlushEnabled : bucketDef .Settings .FlushEnabled ,
84+ NumReplicas : bucketDef .Settings .NumReplicas ,
85+ })
86+ if err != nil {
87+ logger .Fatal ("failed to create bucket" , zap .String ("bucket" , bucketName ), zap .Error (err ))
88+ }
89+ logger .Info ("bucket created" , zap .String ("bucket" , bucketName ))
90+
91+ for scopeName , collections := range bucketDef .Scopes {
92+ if scopeName == "" {
93+ continue
94+ }
95+ if err := deployer .CreateScope (ctx , cluster .GetID (), bucketName , scopeName ); err != nil {
96+ logger .Fatal ("failed to create scope" , zap .String ("bucket" , bucketName ), zap .String ("scope" , scopeName ), zap .Error (err ))
97+ }
98+ logger .Info ("scope created" , zap .String ("bucket" , bucketName ), zap .String ("scope" , scopeName ))
99+
100+ for _ , collName := range collections {
101+ if collName == "" {
102+ continue
103+ }
104+ if err := deployer .CreateCollection (ctx , cluster .GetID (), bucketName , scopeName , collName ); err != nil {
105+ logger .Fatal ("failed to create collection" , zap .String ("bucket" , bucketName ), zap .String ("scope" , scopeName ), zap .String ("collection" , collName ), zap .Error (err ))
106+ }
107+ logger .Info ("collection created" , zap .String ("bucket" , bucketName ), zap .String ("scope" , scopeName ), zap .String ("collection" , collName ))
108+ }
109+ }
110+ }
111+ }
112+
78113 switch cluster := cluster .(type ) {
79114 case * clouddeploy.ClusterInfo :
80115 if cluster .CloudClusterID != "" {
0 commit comments