Skip to content

Commit 31335a7

Browse files
Import embedded-git-config.json first when performing an Import All
1 parent af1b42d commit 31335a7

File tree

1 file changed

+29
-1
lines changed

1 file changed

+29
-1
lines changed

cls/SourceControl/Git/Utils.cls

Lines changed: 29 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1567,14 +1567,42 @@ ClassMethod ImportRoutines(force As %Boolean = 0, pullEventClass As %String) As
15671567

15681568
#dim ec as %Status = ..ListItemsInFiles(.itemList, .err)
15691569
quit:'ec ec
1570-
1570+
1571+
// If there is a config file it must be imported before everything else.
1572+
set internalName = ""
1573+
for {
1574+
set internalName = $order(itemList(internalName))
1575+
quit:internalName=""
1576+
1577+
// If a config file is found then import it
1578+
if internalName = ##class(SourceControl.Git.Settings.Document).#INTERNALNAME {
1579+
set sc = ##class(SourceControl.Git.Utils).ImportItem(internalName, force)
1580+
1581+
if $$$ISERR(sc) {
1582+
set ec = $$$ADDSC(ec, sc)
1583+
} else {
1584+
kill err, itemList
1585+
set err = 0
1586+
1587+
// Get the item list again as it may be different after just importing the config file
1588+
set ec = $$$ADDSC(ec, ..ListItemsInFiles(.itemList, .err))
1589+
}
1590+
quit
1591+
}
1592+
}
1593+
quit:'ec ec
1594+
15711595
kill files
15721596

15731597
set settings = ##class(SourceControl.Git.Settings).%New()
15741598
#dim internalName as %String = ""
15751599
for {
15761600
set internalName = $order(itemList(internalName))
15771601
quit:internalName=""
1602+
1603+
// Don't import the config file a second time
1604+
continue:internalName=##class(SourceControl.Git.Settings.Document).#INTERNALNAME
1605+
15781606
set context = ##class(SourceControl.Git.PackageManagerContext).ForInternalName(internalName)
15791607
continue:context.Package'=refPackage
15801608
set doImport = ..IsRoutineOutdated(internalName) || force

0 commit comments

Comments
 (0)