Remove dependence on project, use cue.mod path.
Ensure that we have done an init in this folder. Also, force a clean checkout of the tag we've chosen to upgrade to. Signed-off-by: Joel Longtine <joel@dagger.io>
This commit is contained in:
parent
39e206e7d2
commit
b33d6b2243
@ -6,6 +6,8 @@ import (
|
||||
"go.dagger.io/dagger/cmd/dagger/cmd/common"
|
||||
"go.dagger.io/dagger/cmd/dagger/logger"
|
||||
"go.dagger.io/dagger/mod"
|
||||
"go.dagger.io/dagger/pkg"
|
||||
"go.dagger.io/dagger/state"
|
||||
"go.dagger.io/dagger/telemetry"
|
||||
)
|
||||
|
||||
@ -25,7 +27,15 @@ var getCmd = &cobra.Command{
|
||||
lg := logger.New()
|
||||
ctx := lg.WithContext(cmd.Context())
|
||||
|
||||
var err error
|
||||
|
||||
project := common.CurrentProject(ctx)
|
||||
cueModPath := pkg.GetCueModParent()
|
||||
// err = pkg.CueModInit(ctx, cueModPath)
|
||||
_, err = state.Init(ctx, cueModPath)
|
||||
if err != nil && err != state.ErrAlreadyInit {
|
||||
lg.Fatal().Err(err).Msg("failed to initialize cue.mod")
|
||||
}
|
||||
doneCh := common.TrackProjectCommand(ctx, cmd, project, nil, &telemetry.Property{
|
||||
Name: "packages",
|
||||
Value: args,
|
||||
@ -34,16 +44,16 @@ var getCmd = &cobra.Command{
|
||||
var update = viper.GetBool("update")
|
||||
|
||||
var processedRequires []*mod.Require
|
||||
var err error
|
||||
|
||||
if update && len(args) == 0 {
|
||||
lg.Info().Msg("updating all installed packages...")
|
||||
processedRequires, err = mod.UpdateInstalled(ctx, project.Path)
|
||||
processedRequires, err = mod.UpdateInstalled(ctx, cueModPath)
|
||||
} else if update && len(args) > 0 {
|
||||
lg.Info().Msg("updating specified packages...")
|
||||
processedRequires, err = mod.UpdateAll(ctx, project.Path, args)
|
||||
processedRequires, err = mod.UpdateAll(ctx, cueModPath, args)
|
||||
} else if !update && len(args) > 0 {
|
||||
lg.Info().Msg("installing specified packages...")
|
||||
processedRequires, err = mod.InstallAll(ctx, project.Path, args)
|
||||
processedRequires, err = mod.InstallAll(ctx, cueModPath, args)
|
||||
} else {
|
||||
lg.Fatal().Msg("unrecognized update/install operation")
|
||||
}
|
||||
|
@ -84,7 +84,8 @@ func (r *repo) checkout(ctx context.Context, version string) error {
|
||||
}
|
||||
|
||||
err = w.Checkout(&git.CheckoutOptions{
|
||||
Hash: *h,
|
||||
Hash: *h,
|
||||
Force: true,
|
||||
})
|
||||
if err != nil {
|
||||
return err
|
||||
|
@ -39,7 +39,7 @@ var (
|
||||
|
||||
func Vendor(ctx context.Context, p string) error {
|
||||
if p == "" {
|
||||
p = getCueModParent()
|
||||
p = GetCueModParent()
|
||||
}
|
||||
|
||||
cuePkgDir := path.Join(p, "cue.mod", "pkg")
|
||||
@ -141,8 +141,8 @@ func extractModules(dest string) error {
|
||||
})
|
||||
}
|
||||
|
||||
// getCueModParent traverses the directory tree up through ancestors looking for a cue.mod folder
|
||||
func getCueModParent() string {
|
||||
// GetCueModParent traverses the directory tree up through ancestors looking for a cue.mod folder
|
||||
func GetCueModParent() string {
|
||||
cwd, _ := os.Getwd()
|
||||
parentDir := cwd
|
||||
|
||||
|
Reference in New Issue
Block a user