You are an expert in writing code in many different languages. Your goal is to perform code completion for the following code, keeping in mind the rest of the code and the file meta data.
    Metadata details:
    filename: stress.go
    path of file: ./repos/pumba/pkg/chaos/stress/cmd
    
    the code of the file until where you have to start completion: package cmd

import (
	"context"
	"fmt"

	"github.com/alexei-led/pumba/pkg/chaos"
	"github.com/alexei-led/pumba/pkg/chaos/stress"
	"github.com/pkg/errors"
	"github.com/urfave/cli"
)

type stressContext struct {
	context context.Context
}

// NewStressCLICommand initialize CLI stress command and bind it to the stressContext
func NewStressCLICommand(ct
    
func (cmd *stressContext) stress(c *cli.Context) error {
	// parse common chaos flags
	globalParams, err := chaos.ParseGlobalParams(c)
	if err != nil {
		return errors.Wrap(err, "error parsing global parameters")
	}
	// get limit for number of containers to kill
	limit := c.Int("limit")
	// get stress-ng stressors
	stressors := c.String("stressors")
	// get stress duration
	duration := c.Duration("duration")
	if duration == 0 {
		return errors.New("unset or invalid duration value")
	}
	// get stress-ng image
	image := c.String("stress-image")
	// get pull tc image flag
	pull := c.BoolT("pull-image")
	// init stress command
	stressCommand := stress.NewStressCommand(chaos.DockerClient, globalParams, image, pull, stressors, duration, limit)
	// run stress command
	err = chaos.RunChaosCommand(cmd.context, stressCommand, globalParams)
	if err != nil {
		return errors.Wrap(err, "error running stress command")
	}
	return nil
}