func (s *GenerateBuildPathIfMissing) Run(ctx *types.Context) error { if ctx.BuildPath != "" { return nil } md5sum := utils.MD5Sum([]byte(ctx.SketchLocation)) buildPath := filepath.Join(os.TempDir(), "arduino-sketch-"+strings.ToUpper(md5sum)) _, err := os.Stat(buildPath) if err != nil && !os.IsNotExist(err) { return i18n.WrapError(err) } if ctx.DebugLevel > 5 { logger := ctx.GetLogger() logger.Fprintln(os.Stdout, constants.LOG_LEVEL_WARN, constants.MSG_SETTING_BUILD_PATH, buildPath) } ctx.BuildPath = buildPath return nil }
func SetupBuildPath(t *testing.T, ctx *types.Context) string { buildPath, err := ioutil.TempDir(constants.EMPTY_STRING, "test") NoError(t, err) ctx.BuildPath = buildPath return buildPath }