func()

in cmd/k6ctl/cli_run.go [45:97]


func (c *CLIRun) Run() error {
	t := &target.StaticTarget{
		Kubeconfig: c.Kubeconfig,
	}

	baseDir, err := filepath.Abs(filepath.Clean(c.BaseDir))
	if err != nil {
		return err
	}

	taskConfig, err := c.resolveTaskConfig(baseDir, c.TaskConfig)
	if err != nil {
		return err
	}

	cpRegistry := config.NewRegistry()

	if err := coreconfig.RegisterProviders(
		cpRegistry,
		taskConfig.Configs,
		c.Parameters,
	); err != nil {
		return err
	}

	ctx, cancel := signal.NotifyContext(context.Background(), os.Interrupt)
	defer cancel()

	stopConfigPlugins, err := task.LoadConfigPlugins(
		ctx,
		cpRegistry,
		taskConfig.K6,
	)
	if err != nil {
		return err
	}
	defer stopConfigPlugins()

	if err := task.RunTask(
		ctx,
		t,
		cpRegistry.GetByName,
		taskConfig,
		baseDir,
		c.Script,
		task.WithFollowLogs(!c.NoFollowLogs),
		task.WithInstances(c.Instances),
	); err != nil {
		return err
	}

	return nil
}