mirror of
https://github.com/vishapoberon/vipak.git
synced 2026-04-05 20:42:26 +00:00
pull, tree
This commit is contained in:
parent
b30deb5bd9
commit
bea2422ac1
2 changed files with 19 additions and 9 deletions
13
Vipack.Mod
13
Vipack.Mod
|
|
@ -4,7 +4,7 @@ IMPORT vpkFileManager,vpkJsonParser,vpkGit, vpkConf, vpkLogger, vpkPackageFileP
|
||||||
PROCEDURE main();
|
PROCEDURE main();
|
||||||
|
|
||||||
CONST confFileName = "vipackConf.json";
|
CONST confFileName = "vipackConf.json";
|
||||||
CONST syncDirName = "tree/";
|
CONST syncDirName = "vipackTree/";
|
||||||
CONST quote = '"';
|
CONST quote = '"';
|
||||||
CONST startBracket = "{";
|
CONST startBracket = "{";
|
||||||
CONST endBracket = "}";
|
CONST endBracket = "}";
|
||||||
|
|
@ -76,13 +76,17 @@ END;
|
||||||
|
|
||||||
|
|
||||||
IF command = "sync" THEN
|
IF command = "sync" THEN
|
||||||
Strings.Append(syncDirName, vpkDirPath);
|
treePath := vpkDirPath;
|
||||||
|
Strings.Append(syncDirName, treePath);
|
||||||
|
Out.String("*****************************************"); Out.Ln;
|
||||||
|
Out.String("TreePath = "); Out.String(vpkDirPath);
|
||||||
|
|
||||||
(* Check tree directory if doesn't exist create*)
|
(* Check tree directory if doesn't exist create*)
|
||||||
IF vpkConf.makeDir(treePath) THEN
|
IF vpkConf.makeDir(treePath) THEN
|
||||||
Out.String("Creating "); Out.String(treePath); Out.String("for syncing");Out.Ln;
|
Out.String("Creating "); Out.String(treePath); Out.String("for syncing");Out.Ln;
|
||||||
ELSE Out.String("Some error occured or directory already exist");
|
ELSE Out.String("Some error occured or directory already exist");
|
||||||
END;
|
END;
|
||||||
(*Sync*)
|
(* Syncing *)
|
||||||
success := vpkFileManager.Read(confPath,jsonData);
|
success := vpkFileManager.Read(confPath,jsonData);
|
||||||
jsonRecord := vpkJsonParser.Create(jsonData);
|
jsonRecord := vpkJsonParser.Create(jsonData);
|
||||||
success := vpkJsonParser.GetTerminal(jsonRecord,"path", jsonString);
|
success := vpkJsonParser.GetTerminal(jsonRecord,"path", jsonString);
|
||||||
|
|
@ -92,9 +96,10 @@ IF command = "sync" THEN
|
||||||
string := gitUrl;
|
string := gitUrl;
|
||||||
Strings.Delete(string,19,Strings.Length(string)-17);
|
Strings.Delete(string,19,Strings.Length(string)-17);
|
||||||
Out.String(string);Out.Ln;
|
Out.String(string);Out.Ln;
|
||||||
|
(* Checking the URL of vipackConf.json path key *)
|
||||||
IF Strings.Match(string,"https://github.com/") OR Strings.Match(string,"git://github.com/") THEN
|
IF Strings.Match(string,"https://github.com/") OR Strings.Match(string,"git://github.com/") THEN
|
||||||
Out.String("YES"); Out.Ln;
|
Out.String("YES"); Out.Ln;
|
||||||
vpkGit.clone(gitUrl);
|
vpkGit.pull(gitUrl,treePath);
|
||||||
END;
|
END;
|
||||||
END;
|
END;
|
||||||
|
|
||||||
|
|
|
||||||
13
vpkGit.Mod
13
vpkGit.Mod
|
|
@ -1,16 +1,21 @@
|
||||||
MODULE vpkGit;
|
MODULE vpkGit;
|
||||||
IMPORT Out,Strings, Platform;
|
IMPORT Out,Strings, Platform;
|
||||||
|
|
||||||
PROCEDURE clone*(URL : ARRAY OF CHAR);
|
PROCEDURE pull*(URL : ARRAY OF CHAR; dst : ARRAY OF CHAR);
|
||||||
VAR i : INTEGER;
|
VAR i : INTEGER;
|
||||||
cmd : ARRAY 120 OF CHAR;
|
cmd : ARRAY 120 OF CHAR;
|
||||||
BEGIN
|
BEGIN
|
||||||
i:=Platform.System("git init .");
|
cmd:= "git init ";
|
||||||
cmd := "git clone ";
|
Strings.Append(dst, cmd);
|
||||||
|
i:=Platform.System(cmd);
|
||||||
|
cmd := "";
|
||||||
|
cmd := "git -C ";
|
||||||
|
Strings.Append(dst,cmd);
|
||||||
|
Strings.Append(" pull ",cmd);
|
||||||
Strings.Append(URL, cmd);
|
Strings.Append(URL, cmd);
|
||||||
i := Platform.System(cmd);
|
i := Platform.System(cmd);
|
||||||
Out.Int(i,0);
|
Out.Int(i,0);
|
||||||
END clone;
|
END pull;
|
||||||
|
|
||||||
|
|
||||||
BEGIN
|
BEGIN
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue