func()

in PetAdoptions/payforadoption-go/payforadoption/repository.go [167:202]


func (r *repo) TriggerSeeding(ctx context.Context) error {

	seedRawData, err := r.fetchSeedData()

	if err != nil {
		level.Error(r.logger).Log("err", err)
		return err
	}

	var pets []Pet

	if err := json.Unmarshal([]byte(seedRawData), &pets); err != nil {
		level.Error(r.logger).Log("err", err)
		return err
	}

	db := dynamo.New(session.New(), &aws.Config{Region: aws.String(r.cfg.AWSRegion)})
	table := db.Table(r.cfg.DynamoDBTable)

	bw := table.Batch().Write()
	for _, i := range pets {
		bw = bw.Put(i)
	}

	res, err := bw.Run()

	r.logger.Log("res", res, "err", err)

	sqlErr := r.CreateSQLTable(ctx)
	if sqlErr != nil {
		return sqlErr
	}

	return nil

}