grafana/pkg/build/cmd/storestorybook.go
Dimitris Sotirakis f73cdc5e80
Metadata: Move and rename genversions.go and genversions_test.go (#60315)
* Move and rename genversions.go and tests

* Fix lint - bring back cli.Exit

* Move package.json and fix tests

* Add necessary env vars for promote event
2022-12-15 03:51:11 -05:00

50 lines
1.1 KiB
Go

package main
import (
"log"
"path/filepath"
"github.com/grafana/grafana/pkg/build/config"
"github.com/grafana/grafana/pkg/build/gcloud/storage"
"github.com/urfave/cli/v2"
)
// StoreStorybook implements the sub-command "store-storybook".
func StoreStorybook(c *cli.Context) error {
deployment := c.String("deployment")
metadata, err := config.GenerateMetadata(c)
if err != nil {
return err
}
buildConfig, err := config.GetBuildConfig(metadata.ReleaseMode.Mode)
if err != nil {
return err
}
storybookBucket := buildConfig.Buckets.Storybook
srcPath := buildConfig.Buckets.StorybookSrcDir
srcPath = filepath.Join(srcPath, deployment)
gcs, err := storage.New()
if err != nil {
return err
}
bucket := gcs.Bucket(storybookBucket)
if err := gcs.DeleteDir(c.Context, bucket, srcPath); err != nil {
return err
}
log.Printf("Successfully cleaned source: %s/%s\n", storybookBucket, srcPath)
if err := gcs.CopyLocalDir(c.Context, "packages/grafana-ui/dist/storybook", bucket, srcPath, true); err != nil {
return err
}
log.Printf("Successfully stored storybook to: %s/%s!\n", storybookBucket, srcPath)
return nil
}