func fetchYCDFiles()

in cmd/indexer/main.go [103:140]


func fetchYCDFiles(ctx context.Context, client *storage.Client, bucketName, prefix string) resultset.ResultSet {
	bucket := client.Bucket(bucketName)
	objects, err := listObjects(ctx, bucket, prefix)
	if err != nil {
		logger.Fatalw("failed to list objects for decimal results",
			"error", err,
			"prefix", prefix,
		)
		os.Exit(1)
	}
	files := resultset.ResultSet{}
	for _, name := range objects {
		object := bucket.Object(name)
		reader, err := object.NewRangeReader(ctx, 0, maxHeaderLength)
		if err != nil {
			logger.Fatalw("creating an object reader failed",
				"error", err,
				"bucket", bucketName,
				"object", name,
			)
			os.Exit(1)
		}
		defer reader.Close()
		ycd, err := ycd.Parse(reader)
		if err != nil {
			logger.Errorw("failed to parse a ycd file",
				"error", err,
				"bucket", bucketName,
				"object", object,
			)
		}
		ycd.Name = name
		logYCDInfo(ycd)
		files = append(files, ycd)
	}
	sort.Sort(files)
	return files
}