func getDataFromBucket()

in cli/scorecard/violations.go [49:80]


func getDataFromBucket(bucketName string) ([]*validator.Asset, error) {
	ctx := context.Background()
	client, err := storage.NewClient(ctx)
	if err != nil {
		return nil, err
	}

	bucket := client.Bucket(bucketName)
	var pbAssets []*validator.Asset
	for _, objectName := range destinationObjectNames {
		reader, err := bucket.Object(objectName).NewReader(ctx)
		if err != nil {
			fmt.Println("WARNING: Unable to read inventory file :", objectName, err)
			continue
		}
		defer func() {
			if err := reader.Close(); err != nil {
				panic(err)
			}
		}()
		assets, err := getDataFromReader(reader)
		if err != nil {
			return nil, err
		}

		pbAssets = append(pbAssets, assets...)
	}
	if len(pbAssets) == 0 {
		return nil, fmt.Errorf("no inventory found")
	}
	return pbAssets, nil
}