Fixed issue with new and run flag

Updated tests to run final test in non gopath, with new name
This commit is contained in:
notzippy@gmail.com
2020-05-19 02:17:49 -07:00
parent 904cfa2995
commit 5070fb8be0
5 changed files with 18 additions and 8 deletions

View File

@@ -55,15 +55,17 @@ script:
- revel package --gomod-flags "edit -replace=github.com/revel/revel=github.com/revel/revel@$REVEL_BRANCH" -a my/testapp2 -v - revel package --gomod-flags "edit -replace=github.com/revel/revel=github.com/revel/revel@$REVEL_BRANCH" -a my/testapp2 -v
- revel package --gomod-flags "edit -replace=github.com/revel/revel=github.com/revel/revel@$REVEL_BRANCH" -a my/testapp2 -v -m prod - revel package --gomod-flags "edit -replace=github.com/revel/revel=github.com/revel/revel@$REVEL_BRANCH" -a my/testapp2 -v -m prod
- export INITIALWD=$PWD
# Check build works with no-vendor flag # Check build works with no-vendor flag
- cd $GOPATH - cd $GOPATH
- export GO111MODULE=auto - export GO111MODULE=auto
- revel new -a my/testapp2 --no-vendor -v - revel new -a my/testapp2 --no-vendor -v
- revel test -a my/testapp2 -v - revel test -a my/testapp2 -v
# Check non verbose build # Check non verbose build, outside of GO path
- revel new --gomod-flags "edit -replace=github.com/revel/revel=github.com/revel/revel@$REVEL_BRANCH" -a my/testapp2 --package revelframework.com - cd $INITIALWD
- revel test --gomod-flags "edit -replace=github.com/revel/revel=github.com/revel/revel@$REVEL_BRANCH" -a my/testapp2 - revel new --gomod-flags "edit -replace=github.com/revel/revel=github.com/revel/revel@$REVEL_BRANCH" -a my/testapp3 --package revelframework.com
- revel test --gomod-flags "edit -replace=github.com/revel/revel=github.com/revel/revel@$REVEL_BRANCH" -a my/testapp3
matrix: matrix:
allow_failures: allow_failures:

View File

@@ -235,8 +235,8 @@ func (c *CommandConfig) InitPackageResolver() {
c.PackageResolver = func(pkgName string) error { c.PackageResolver = func(pkgName string) error {
utils.Logger.Info("Request for package ", "package", pkgName, "use vendor", c.Vendored) utils.Logger.Info("Request for package ", "package", pkgName, "use vendor", c.Vendored)
var getCmd *exec.Cmd var getCmd *exec.Cmd
print("Downloading related packages ...")
if c.Vendored { if c.Vendored {
println("Downloading related packages")
getCmd = exec.Command(c.GoCmd, "mod", "tidy") getCmd = exec.Command(c.GoCmd, "mod", "tidy")
} else { } else {
utils.Logger.Info("No vendor folder detected, not using dependency manager to import package", "package", pkgName) utils.Logger.Info("No vendor folder detected, not using dependency manager to import package", "package", pkgName)
@@ -246,10 +246,10 @@ func (c *CommandConfig) InitPackageResolver() {
utils.CmdInit(getCmd, !c.Vendored, c.AppPath) utils.CmdInit(getCmd, !c.Vendored, c.AppPath)
utils.Logger.Info("Go get command ", "exec", getCmd.Path, "dir", getCmd.Dir, "args", getCmd.Args, "env", getCmd.Env, "package", pkgName) utils.Logger.Info("Go get command ", "exec", getCmd.Path, "dir", getCmd.Dir, "args", getCmd.Args, "env", getCmd.Env, "package", pkgName)
output, err := getCmd.CombinedOutput() output, err := getCmd.CombinedOutput()
println("Downloading related packages completed")
if err != nil { if err != nil {
utils.Logger.Error("Failed to import package", "error", err, "gopath", build.Default.GOPATH, "GO-ROOT", build.Default.GOROOT, "output", string(output)) utils.Logger.Error("Failed to import package", "error", err, "gopath", build.Default.GOPATH, "GO-ROOT", build.Default.GOROOT, "output", string(output))
} }
println(" completed.")
return nil return nil
} }

View File

@@ -72,7 +72,7 @@ func newApp(c *model.CommandConfig) (err error) {
// Check for an existing folder so we don't clobber it // Check for an existing folder so we don't clobber it
_, err = build.Import(c.ImportPath, "", build.FindOnly) _, err = build.Import(c.ImportPath, "", build.FindOnly)
if err == nil || !utils.Empty(c.AppPath) { if err == nil || !utils.Empty(c.AppPath) {
return utils.NewBuildError("Abort: Import path already exists.", "path", c.ImportPath) return utils.NewBuildError("Abort: Import path already exists.", "path", c.ImportPath, "apppath", c.AppPath)
} }
// checking and setting skeleton // checking and setting skeleton
@@ -112,6 +112,10 @@ func newApp(c *model.CommandConfig) (err error) {
fmt.Fprintln(os.Stdout, "Your application has been created in:\n ", c.AppPath) fmt.Fprintln(os.Stdout, "Your application has been created in:\n ", c.AppPath)
// Check to see if it should be run right off // Check to see if it should be run right off
if c.New.Run { if c.New.Run {
// Need to prep the run command
c.Run.ImportPath = c.ImportPath
updateRunConfig(c,nil)
c.UpdateImportPath()
runApp(c) runApp(c)
} else { } else {
fmt.Fprintln(os.Stdout, "\nYou can run it with:\n revel run -a ", c.ImportPath) fmt.Fprintln(os.Stdout, "\nYou can run it with:\n revel run -a ", c.ImportPath)

View File

@@ -34,8 +34,8 @@ func TestVersion(t *testing.T) {
a.Nil(main.Commands[model.VERSION].RunWith(c), "Failed to run version-test") a.Nil(main.Commands[model.VERSION].RunWith(c), "Failed to run version-test")
}) })
if !t.Failed() { if !t.Failed() {
if err := os.RemoveAll(gopath); err != nil { if err := os.RemoveAll(gopath); err != nil && err!=os.ErrNotExist {
a.Fail("Failed to remove test path") a.Fail("Failed to remove test path",err.Error())
} }
} }
} }

View File

@@ -309,9 +309,13 @@ func Exists(filename string) bool {
// empty returns true if the given directory is empty. // empty returns true if the given directory is empty.
// the directory must exist. // the directory must exist.
func Empty(dirname string) bool { func Empty(dirname string) bool {
if !DirExists(dirname) {
return true
}
dir, err := os.Open(dirname) dir, err := os.Open(dirname)
if err != nil { if err != nil {
Logger.Infof("error opening directory: %s", err) Logger.Infof("error opening directory: %s", err)
return false
} }
defer func() { defer func() {
_ = dir.Close() _ = dir.Close()