func (t *ZuulAnalyser) BaseDirectoryDetect(dir string) (namedServices map[string]transformertypes.ServicePlan, unnamedServices []transformertypes.TransformerPlan, err error) {
	namedServices = map[string]transformertypes.ServicePlan{}
	yamlpaths, err := common.GetFilesByExt(dir, []string{".yaml", ".yml"})
	if err != nil {
		logrus.Errorf("Unable to fetch yaml files at path %s Error: %q", dir, err)
		return nil, nil, err
	}
	for _, path := range yamlpaths {
		z := Zuul{}
		if err := common.ReadYaml(path, &z); err != nil || z.ZuulSpec.RouteSpec == nil {
			continue
		}
		for servicename, routepath := range z.ZuulSpec.RouteSpec {
			routepath = routepath[:len(routepath)-2]
			ct := transformertypes.TransformerPlan{
				Mode:          transformertypes.ModeContainer,
				ArtifactTypes: []transformertypes.ArtifactType{irtypes.IRArtifactType},
				Configs: map[transformertypes.ConfigType]interface{}{
					ZuulServiceConfigType: ZuulConfig{
						ServiceRelativePath: routepath,
					}},
				Paths: map[transformertypes.PathType][]string{
					ZuulSpringBootFile: {
						path,
					},
				},
			}
			namedServices[servicename] = append(namedServices[servicename], ct)
		}
	}
	return namedServices, nil, nil
}
BaseDirectoryDetect runs detect in base directory
package java
import (
	"github.com/konveyor/move2kube/common"
	"github.com/konveyor/move2kube/environment"
	irtypes "github.com/konveyor/move2kube/types/ir"
	transformertypes "github.com/konveyor/move2kube/types/transformer"
	"github.com/konveyor/move2kube/types/transformer/artifacts"
	"github.com/sirupsen/logrus"
)
const (
	ZuulServiceConfigType transformertypes.ConfigType = "ZuulService"
)
const (
	ZuulSpringBootFile transformertypes.PathType = "SpringBootFile"
)
type ZuulAnalyser struct {
	Config transformertypes.Transformer
	Env    *environment.Environment
}
type ZuulConfig struct {
	ServiceRelativePath string `yaml:"serviceRelativePath,omitempty"`
}
type ZuulSpec struct {
	RouteSpec map[string]string `yaml:"routes"`
}
type Zuul struct {
	ZuulSpec ZuulSpec `yaml:"zuul"`
}
func (t *ZuulAnalyser) Init(tc transformertypes.Transformer, env *environment.Environment) (err error) {
	t.Config = tc
	t.Env = env
	return nil
}
func (t *ZuulAnalyser) GetConfig() (transformertypes.Transformer, *environment.Environment) {
	return t.Config, t.Env
}