mirror of
https://github.com/dolthub/dolt.git
synced 2026-04-22 02:50:04 -05:00
removing file sys dependency from repo_state
This commit is contained in:
@@ -307,7 +307,7 @@ func cloneRemote(ctx context.Context, srcDB *doltdb.DoltDB, remoteName, branch s
|
||||
dEnv.RepoState.Head = ref.MarshalableRef{Ref: ref.NewBranchRef(branch)}
|
||||
dEnv.RepoState.Staged = h.String()
|
||||
dEnv.RepoState.Working = h.String()
|
||||
err = dEnv.RepoState.Save()
|
||||
err = dEnv.RepoState.Save(dEnv.FS)
|
||||
|
||||
if err != nil {
|
||||
return errhand.BuildDError("error: failed to write repo state").AddCause(err).Build()
|
||||
|
||||
@@ -128,7 +128,7 @@ func abortMerge(ctx context.Context, doltEnv *env.DoltEnv) errhand.VerboseError
|
||||
err := actions.CheckoutAllTables(ctx, doltEnv)
|
||||
|
||||
if err == nil {
|
||||
err = doltEnv.RepoState.ClearMerge()
|
||||
err = doltEnv.RepoState.ClearMerge(doltEnv.FS)
|
||||
|
||||
if err == nil {
|
||||
return nil
|
||||
@@ -203,7 +203,7 @@ func executeFFMerge(ctx context.Context, dEnv *env.DoltEnv, cm2 *doltdb.Commit)
|
||||
|
||||
dEnv.RepoState.Working = h.String()
|
||||
dEnv.RepoState.Staged = h.String()
|
||||
err = dEnv.RepoState.Save()
|
||||
err = dEnv.RepoState.Save(dEnv.FS)
|
||||
|
||||
if err != nil {
|
||||
return errhand.BuildDError("unable to execute repo state update.").
|
||||
@@ -239,7 +239,7 @@ func executeMerge(ctx context.Context, dEnv *env.DoltEnv, cm1, cm2 *doltdb.Commi
|
||||
return errhand.BuildDError("error: failed to hash commit").AddCause(err).Build()
|
||||
}
|
||||
|
||||
err = dEnv.RepoState.StartMerge(dref, h2.String())
|
||||
err = dEnv.RepoState.StartMerge(dref, h2.String(), dEnv.FS)
|
||||
|
||||
if err != nil {
|
||||
return errhand.BuildDError("Unable to update the repo state").AddCause(err).Build()
|
||||
|
||||
@@ -192,7 +192,7 @@ func Push(ctx context.Context, commandStr string, args []string, dEnv *env.DoltE
|
||||
Remote: remoteName,
|
||||
}
|
||||
|
||||
err := dEnv.RepoState.Save()
|
||||
err := dEnv.RepoState.Save(dEnv.FS)
|
||||
|
||||
if err != nil {
|
||||
verr = errhand.BuildDError("error: failed to save repo state").AddCause(err).Build()
|
||||
|
||||
@@ -148,7 +148,7 @@ func removeRemote(ctx context.Context, dEnv *env.DoltEnv, apr *argparser.ArgPars
|
||||
}
|
||||
|
||||
delete(dEnv.RepoState.Remotes, old)
|
||||
err = dEnv.RepoState.Save()
|
||||
err = dEnv.RepoState.Save(dEnv.FS)
|
||||
|
||||
if err != nil {
|
||||
return errhand.BuildDError("error: unable to save changes.").AddCause(err).Build()
|
||||
@@ -249,7 +249,7 @@ func addRemote(dEnv *env.DoltEnv, apr *argparser.ArgParseResults) errhand.Verbos
|
||||
|
||||
r := env.NewRemote(remoteName, remoteUrl, params)
|
||||
dEnv.RepoState.AddRemote(r)
|
||||
err = dEnv.RepoState.Save()
|
||||
err = dEnv.RepoState.Save(dEnv.FS)
|
||||
|
||||
if err != nil {
|
||||
return errhand.BuildDError("error: Unable to save changes.").AddCause(err).Build()
|
||||
|
||||
+2
-2
@@ -42,7 +42,7 @@ func MoveBranch(ctx context.Context, dEnv *env.DoltEnv, oldBranch, newBranch str
|
||||
|
||||
if ref.Equals(dEnv.RepoState.Head.Ref, oldRef) {
|
||||
dEnv.RepoState.Head = ref.MarshalableRef{Ref: newRef}
|
||||
err = dEnv.RepoState.Save()
|
||||
err = dEnv.RepoState.Save(dEnv.FS)
|
||||
|
||||
if err != nil {
|
||||
return err
|
||||
@@ -243,7 +243,7 @@ func CheckoutBranch(ctx context.Context, dEnv *env.DoltEnv, brName string) error
|
||||
dEnv.RepoState.Working = wrkHash.String()
|
||||
dEnv.RepoState.Staged = stgHash.String()
|
||||
|
||||
err = dEnv.RepoState.Save()
|
||||
err = dEnv.RepoState.Save(dEnv.FS)
|
||||
|
||||
return err
|
||||
}
|
||||
|
||||
+1
-1
@@ -103,7 +103,7 @@ func CommitStaged(ctx context.Context, dEnv *env.DoltEnv, msg string, date time.
|
||||
_, err = dEnv.DoltDB.CommitWithParents(ctx, h, dEnv.RepoState.Head.Ref, mergeCmSpec, meta)
|
||||
|
||||
if err == nil {
|
||||
dEnv.RepoState.ClearMerge()
|
||||
dEnv.RepoState.ClearMerge(dEnv.FS)
|
||||
}
|
||||
|
||||
return err
|
||||
|
||||
+1
-1
@@ -121,7 +121,7 @@ func stageTables(ctx context.Context, dEnv *env.DoltEnv, tbls []string, staged *
|
||||
dEnv.RepoState.Staged = sh.String()
|
||||
dEnv.RepoState.Working = wh.String()
|
||||
|
||||
if err = dEnv.RepoState.Save(); err != nil {
|
||||
if err = dEnv.RepoState.Save(dEnv.FS); err != nil {
|
||||
return env.ErrStateUpdate
|
||||
}
|
||||
|
||||
|
||||
+2
-2
@@ -299,7 +299,7 @@ func (dEnv *DoltEnv) UpdateWorkingRoot(ctx context.Context, newRoot *doltdb.Root
|
||||
}
|
||||
|
||||
dEnv.RepoState.Working = h.String()
|
||||
err = dEnv.RepoState.Save()
|
||||
err = dEnv.RepoState.Save(dEnv.FS)
|
||||
|
||||
if err != nil {
|
||||
return ErrStateUpdate
|
||||
@@ -334,7 +334,7 @@ func (dEnv *DoltEnv) UpdateStagedRoot(ctx context.Context, newRoot *doltdb.RootV
|
||||
}
|
||||
|
||||
dEnv.RepoState.Staged = h.String()
|
||||
err = dEnv.RepoState.Save()
|
||||
err = dEnv.RepoState.Save(dEnv.FS)
|
||||
|
||||
if err != nil {
|
||||
return hash.Hash{}, ErrStateUpdate
|
||||
|
||||
+1
-1
@@ -51,7 +51,7 @@ func createTestEnv(isInitialized bool, hasLocalConfig bool) *DoltEnv {
|
||||
|
||||
hashStr := hash.Hash{}.String()
|
||||
masterRef := ref.NewBranchRef("master")
|
||||
repoState := &RepoState{ref.MarshalableRef{Ref: masterRef}, hashStr, hashStr, nil, nil, nil, nil}
|
||||
repoState := &RepoState{ref.MarshalableRef{Ref: masterRef}, hashStr, hashStr, nil, nil, nil}
|
||||
repoStateData, err := json.Marshal(repoState)
|
||||
|
||||
if err != nil {
|
||||
|
||||
+12
-16
@@ -41,8 +41,6 @@ type RepoState struct {
|
||||
Merge *MergeState `json:"merge"`
|
||||
Remotes map[string]Remote `json:"remotes"`
|
||||
Branches map[string]BranchConfig `json:"branches"`
|
||||
|
||||
fs filesys.ReadWriteFS
|
||||
}
|
||||
|
||||
func LoadRepoState(fs filesys.ReadWriteFS) (*RepoState, error) {
|
||||
@@ -60,17 +58,15 @@ func LoadRepoState(fs filesys.ReadWriteFS) (*RepoState, error) {
|
||||
return nil, err
|
||||
}
|
||||
|
||||
repoState.fs = fs
|
||||
|
||||
return &repoState, nil
|
||||
}
|
||||
|
||||
func CloneRepoState(fs filesys.ReadWriteFS, r Remote) (*RepoState, error) {
|
||||
h := hash.Hash{}
|
||||
hashStr := h.String()
|
||||
rs := &RepoState{ref.MarshalableRef{Ref: ref.NewBranchRef("master")}, hashStr, hashStr, nil, map[string]Remote{r.Name: r}, nil, fs}
|
||||
rs := &RepoState{ref.MarshalableRef{Ref: ref.NewBranchRef("master")}, hashStr, hashStr, nil, map[string]Remote{r.Name: r}, nil}
|
||||
|
||||
err := rs.Save()
|
||||
err := rs.Save(fs)
|
||||
|
||||
if err != nil {
|
||||
return nil, err
|
||||
@@ -87,9 +83,9 @@ func CreateRepoState(fs filesys.ReadWriteFS, br string, rootHash hash.Hash) (*Re
|
||||
return nil, err
|
||||
}
|
||||
|
||||
rs := &RepoState{ref.MarshalableRef{Ref: headRef}, hashStr, hashStr, nil, nil, nil, fs}
|
||||
rs := &RepoState{ref.MarshalableRef{Ref: headRef}, hashStr, hashStr, nil, nil, nil}
|
||||
|
||||
err = rs.Save()
|
||||
err = rs.Save(fs)
|
||||
|
||||
if err != nil {
|
||||
return nil, err
|
||||
@@ -98,7 +94,7 @@ func CreateRepoState(fs filesys.ReadWriteFS, br string, rootHash hash.Hash) (*Re
|
||||
return rs, nil
|
||||
}
|
||||
|
||||
func (rs *RepoState) Save() error {
|
||||
func (rs *RepoState) Save(fs filesys.ReadWriteFS) error {
|
||||
data, err := json.MarshalIndent(rs, "", " ")
|
||||
|
||||
if err != nil {
|
||||
@@ -107,7 +103,7 @@ func (rs *RepoState) Save() error {
|
||||
|
||||
path := getRepoStateFile()
|
||||
|
||||
return rs.fs.WriteFile(path, data)
|
||||
return fs.WriteFile(path, data)
|
||||
}
|
||||
|
||||
func (rs *RepoState) CWBHeadSpec() *doltdb.CommitSpec {
|
||||
@@ -116,19 +112,19 @@ func (rs *RepoState) CWBHeadSpec() *doltdb.CommitSpec {
|
||||
return spec
|
||||
}
|
||||
|
||||
func (rs *RepoState) StartMerge(dref ref.DoltRef, commit string) error {
|
||||
func (rs *RepoState) StartMerge(dref ref.DoltRef, commit string, fs filesys.Filesys) error {
|
||||
rs.Merge = &MergeState{ref.MarshalableRef{Ref: dref}, commit, rs.Working}
|
||||
return rs.Save()
|
||||
return rs.Save(fs)
|
||||
}
|
||||
|
||||
func (rs *RepoState) AbortMerge() error {
|
||||
func (rs *RepoState) AbortMerge(fs filesys.Filesys) error {
|
||||
rs.Working = rs.Merge.PreMergeWorking
|
||||
return rs.ClearMerge()
|
||||
return rs.ClearMerge(fs)
|
||||
}
|
||||
|
||||
func (rs *RepoState) ClearMerge() error {
|
||||
func (rs *RepoState) ClearMerge(fs filesys.Filesys) error {
|
||||
rs.Merge = nil
|
||||
return rs.Save()
|
||||
return rs.Save(fs)
|
||||
}
|
||||
|
||||
func (rs *RepoState) AddRemote(r Remote) {
|
||||
|
||||
Reference in New Issue
Block a user