diff options
author | Michael Muré <batolettre@gmail.com> | 2022-08-18 16:03:48 +0200 |
---|---|---|
committer | GitHub <noreply@github.com> | 2022-08-18 16:03:48 +0200 |
commit | 6664a251f1893e6ddc183aa6061d6f0fd4f40a57 (patch) | |
tree | e42bcfc39ccf9284f645dde7ae5990c6d4995ade /entity/dag/entity_actions.go | |
parent | ec24de3f0d19ff1a56d0b12d389ec1535be43ea2 (diff) | |
parent | 45f5f852b71a63c142bca8b05efe53eebf142594 (diff) | |
download | git-bug-6664a251f1893e6ddc183aa6061d6f0fd4f40a57.tar.gz |
Merge pull request #844 from MichaelMure/resolvers
WIP resolvers
Diffstat (limited to 'entity/dag/entity_actions.go')
-rw-r--r-- | entity/dag/entity_actions.go | 14 |
1 files changed, 7 insertions, 7 deletions
diff --git a/entity/dag/entity_actions.go b/entity/dag/entity_actions.go index 5b6e884d..673799ec 100644 --- a/entity/dag/entity_actions.go +++ b/entity/dag/entity_actions.go @@ -32,13 +32,13 @@ func Push(def Definition, repo repository.Repo, remote string) (string, error) { // Pull will do a Fetch + MergeAll // Contrary to MergeAll, this function will return an error if a merge fail. -func Pull(def Definition, repo repository.ClockedRepo, resolver identity.Resolver, remote string, author identity.Interface) error { +func Pull(def Definition, repo repository.ClockedRepo, resolvers entity.Resolvers, remote string, author identity.Interface) error { _, err := Fetch(def, repo, remote) if err != nil { return err } - for merge := range MergeAll(def, repo, resolver, remote, author) { + for merge := range MergeAll(def, repo, resolvers, remote, author) { if merge.Err != nil { return merge.Err } @@ -68,7 +68,7 @@ func Pull(def Definition, repo repository.ClockedRepo, resolver identity.Resolve // // Note: an author is necessary for the case where a merge commit is created, as this commit will // have an author and may be signed if a signing key is available. -func MergeAll(def Definition, repo repository.ClockedRepo, resolver identity.Resolver, remote string, author identity.Interface) <-chan entity.MergeResult { +func MergeAll(def Definition, repo repository.ClockedRepo, resolvers entity.Resolvers, remote string, author identity.Interface) <-chan entity.MergeResult { out := make(chan entity.MergeResult) go func() { @@ -82,7 +82,7 @@ func MergeAll(def Definition, repo repository.ClockedRepo, resolver identity.Res } for _, remoteRef := range remoteRefs { - out <- merge(def, repo, resolver, remoteRef, author) + out <- merge(def, repo, resolvers, remoteRef, author) } }() @@ -91,14 +91,14 @@ func MergeAll(def Definition, repo repository.ClockedRepo, resolver identity.Res // merge perform a merge to make sure a local Entity is up-to-date. // See MergeAll for more details. -func merge(def Definition, repo repository.ClockedRepo, resolver identity.Resolver, remoteRef string, author identity.Interface) entity.MergeResult { +func merge(def Definition, repo repository.ClockedRepo, resolvers entity.Resolvers, remoteRef string, author identity.Interface) entity.MergeResult { id := entity.RefToId(remoteRef) if err := id.Validate(); err != nil { return entity.NewMergeInvalidStatus(id, errors.Wrap(err, "invalid ref").Error()) } - remoteEntity, err := read(def, repo, resolver, remoteRef) + remoteEntity, err := read(def, repo, resolvers, remoteRef) if err != nil { return entity.NewMergeInvalidStatus(id, errors.Wrapf(err, "remote %s is not readable", def.Typename).Error()) @@ -197,7 +197,7 @@ func merge(def Definition, repo repository.ClockedRepo, resolver identity.Resolv // an empty operationPack. // First step is to collect those clocks. - localEntity, err := read(def, repo, resolver, localRef) + localEntity, err := read(def, repo, resolvers, localRef) if err != nil { return entity.NewMergeError(err, id) } |