jex docs push thing command done
This commit is contained in:
+86
-59
@@ -11,7 +11,7 @@
|
|||||||
-module(jex).
|
-module(jex).
|
||||||
-vsn("0.1.0").
|
-vsn("0.1.0").
|
||||||
-export([start/1]).
|
-export([start/1]).
|
||||||
-compile(export_all).
|
-compile([export_all, nowarn_export_all]).
|
||||||
|
|
||||||
-include("$zx_include/zx_logger.hrl").
|
-include("$zx_include/zx_logger.hrl").
|
||||||
|
|
||||||
@@ -29,65 +29,77 @@ help() ->
|
|||||||
io:format("~ts~n", [help_screen()]).
|
io:format("~ts~n", [help_screen()]).
|
||||||
|
|
||||||
|
|
||||||
|
% TODONE: make tsdocs
|
||||||
|
% TODONE: jex pull
|
||||||
|
% TODO: delete before mindist
|
||||||
|
% TODO: delete before push
|
||||||
|
% TODO: delete before pushdocs
|
||||||
|
% TODO: jex viewdocs [port]
|
||||||
|
% TODO: make fulldist tarballs
|
||||||
|
|
||||||
% TODO: be smart about creating jex_include
|
% TODO: be smart about creating jex_include
|
||||||
% TODO: make mindist tarballs
|
% TODO: make mindist tarballs
|
||||||
% TODO: make fulldist tarballs
|
|
||||||
% TODO: make tsdocs
|
|
||||||
% TODO: jex pull
|
|
||||||
% TODO: hints about where to find packages
|
|
||||||
% TODO: tarball shas
|
% TODO: tarball shas
|
||||||
% TODO: tarball signatures
|
% TODO: tarball signatures
|
||||||
% TODO: tarball signatures
|
% TODO: jex install
|
||||||
|
|
||||||
help_screen() ->
|
help_screen() ->
|
||||||
["Jex: simple JavaScript packaging system\n"
|
["Jex: simple JavaScript packaging system\n"
|
||||||
"\n"
|
"\n"
|
||||||
"COMMANDS:\n"
|
"COMMANDS:\n"
|
||||||
" man show the manual\n"
|
" man show the manual\n"
|
||||||
" dwim- init, pull, build\n"
|
" dwim- init, pull, build\n"
|
||||||
" dwim+ init, pull, build, mindist, push\n"
|
" dwim+ init, pull, build, mindist, push\n"
|
||||||
" cfgbarf barf out the jex.eterms file (mostly to make sure it parses correctly)\n"
|
" dwim++ init, pull, build, mindist, push, mkdocs, pushdocs\n"
|
||||||
" echo home echo $HOME\n"
|
" cfgbarf barf out the jex.eterms file (mostly to make sure it parses correctly)\n"
|
||||||
" echo jexdir echo $HOME/.jex\n"
|
" echo home echo $HOME\n"
|
||||||
" echo devdir echo $HOME/.jex/dev\n"
|
" echo jexdir echo $HOME/.jex\n"
|
||||||
" echo pkgname name of current package\n"
|
" echo devdir echo $HOME/.jex/dev\n"
|
||||||
" echo pkgdir echo $HOME/.jex/dev/realm-name-X.Y.Z\n"
|
" echo docsdir echo $HOME/.jex/docs\n"
|
||||||
" echo deps list dependencies of current package\n"
|
" echo pkgname name of current package\n"
|
||||||
" echo pathof PKG list the path to PKG or \n"
|
" echo pkg_devdir echo $HOME/.jex/dev/realm-name-X.Y.Z\n"
|
||||||
" init mkdir -p $HOME/.jex/dev\n"
|
" echo pkg_docsdir echo $HOME/.jex/docs/realm-name-X.Y.Z\n"
|
||||||
" build tsc && cp -r ./src/jex_include ./dist/\n"
|
" echo deps list dependencies of current package\n"
|
||||||
" -w, --weak continue building even if tsc fails\n"
|
" echo pathof PKG list the path to PKG or \n"
|
||||||
" -f, --force use cp -rf instead of cp -r\n"
|
" init mkdir -p $HOME/.jex/dev\n"
|
||||||
" mindist mkdir jex_mindist && cp -r src jex_mindist && cp -r dist jex_mindist && rm -r jex_mindist/src/jex_include\n"
|
" build tsc && cp -r ./src/jex_include ./dist/\n"
|
||||||
" -f, --force use cp -rf instead of cp -r\n"
|
" -w, --weak continue building even if tsc fails\n"
|
||||||
" push rsync -a jex_mindist/ PKGDIR\n"
|
" -f, --force use cp -rf instead of cp -r\n"
|
||||||
" ls ls $HOME/.jex/dev\n"
|
" mindist mkdir jex_mindist && cp -r src jex_mindist && cp -r dist jex_mindist && rm -r jex_mindist/src/jex_include\n"
|
||||||
" tree tree $HOME/.jex/\n"
|
" -f, --force use cp -rf instead of cp -r\n"
|
||||||
" rmpkg PKG rm -r $HOME/.jex/dev/PKG\n"
|
" push rsync -a jex_mindist/ PKG_DEVDIR\n"
|
||||||
" pull pull each dependency into src/jx_include\n"
|
" mkdocs (maybe run dwim- first) npx typedoc\n"
|
||||||
" mkdocs (maybe run dwim- first) npx typedoc\n"
|
" pushdocs rsync -a docs/ PKG_DOCSDIR\n"
|
||||||
|
" ls ls $HOME/.jex/dev\n"
|
||||||
|
" tree tree $HOME/.jex/\n"
|
||||||
|
" rmpkg PKG rm -r $HOME/.jex/dev/PKG\n"
|
||||||
|
" pull pull each dependency into src/jx_include\n"
|
||||||
].
|
].
|
||||||
|
|
||||||
|
|
||||||
dispatch(["man"]) -> man();
|
dispatch(["man"]) -> man();
|
||||||
dispatch(["dwim-"]) -> dwim(minus);
|
dispatch(["dwim-"]) -> dwim(minus);
|
||||||
dispatch(["dwim+"]) -> dwim(plus);
|
dispatch(["dwim+"]) -> dwim(plus);
|
||||||
dispatch(["cfgbarf"]) -> cfgbarf();
|
dispatch(["dwim++"]) -> dwim(plus_plus);
|
||||||
dispatch(["echo", "home"]) -> echo(home);
|
dispatch(["cfgbarf"]) -> cfgbarf();
|
||||||
dispatch(["echo", "jexdir"]) -> echo(jexdir);
|
dispatch(["echo", "home"]) -> echo(home);
|
||||||
dispatch(["echo", "devdir"]) -> echo(devdir);
|
dispatch(["echo", "jexdir"]) -> echo(jexdir);
|
||||||
dispatch(["echo", "pkgname"]) -> echo(pkgname);
|
dispatch(["echo", "devdir"]) -> echo(devdir);
|
||||||
dispatch(["echo", "pkgdir"]) -> echo(pkgdir);
|
dispatch(["echo", "docsdir"]) -> echo(docsdir);
|
||||||
dispatch(["echo", "deps"]) -> echo(deps);
|
dispatch(["echo", "pkgname"]) -> echo(pkgname);
|
||||||
dispatch(["init"]) -> init();
|
dispatch(["echo", "pkg_devdir"]) -> echo(pkg_devdir);
|
||||||
dispatch(["build" | Opts]) -> build(Opts);
|
dispatch(["echo", "pkg_docsdir"]) -> echo(pkg_docsdir);
|
||||||
dispatch(["mindist" | Opts]) -> mindist(Opts);
|
dispatch(["echo", "deps"]) -> echo(deps);
|
||||||
dispatch(["push"]) -> push();
|
dispatch(["init"]) -> init();
|
||||||
dispatch(["ls"]) -> ls();
|
dispatch(["build" | Opts]) -> build(Opts);
|
||||||
dispatch(["tree"]) -> tree();
|
dispatch(["mindist" | Opts]) -> mindist(Opts);
|
||||||
dispatch(["rmpkg", Pkg]) -> rmpkg(Pkg);
|
dispatch(["push"]) -> push();
|
||||||
|
dispatch(["mkdocs"]) -> mkdocs();
|
||||||
|
dispatch(["pushdocs"]) -> pushdocs();
|
||||||
|
dispatch(["ls"]) -> ls();
|
||||||
|
dispatch(["tree"]) -> tree();
|
||||||
|
dispatch(["rmpkg", Pkg]) -> rmpkg(Pkg);
|
||||||
dispatch(["pull"]) -> pull();
|
dispatch(["pull"]) -> pull();
|
||||||
dispatch(["mkdocs"]) -> mkdocs();
|
|
||||||
dispatch(_) -> help().
|
dispatch(_) -> help().
|
||||||
|
|
||||||
|
|
||||||
@@ -115,7 +127,11 @@ dwim(minus) ->
|
|||||||
dwim(plus) ->
|
dwim(plus) ->
|
||||||
dwim(minus),
|
dwim(minus),
|
||||||
mindist([]),
|
mindist([]),
|
||||||
push().
|
push();
|
||||||
|
dwim(plus_plus) ->
|
||||||
|
dwim(plus),
|
||||||
|
mkdocs(),
|
||||||
|
pushdocs().
|
||||||
|
|
||||||
|
|
||||||
%%-----------------------------------------------------------------------------
|
%%-----------------------------------------------------------------------------
|
||||||
@@ -139,10 +155,14 @@ echo(jexdir) ->
|
|||||||
tell(info, "~ts", [jexdir()]);
|
tell(info, "~ts", [jexdir()]);
|
||||||
echo(devdir) ->
|
echo(devdir) ->
|
||||||
tell(info, "~ts", [devdir()]);
|
tell(info, "~ts", [devdir()]);
|
||||||
|
echo(docsdir) ->
|
||||||
|
tell(info, "~ts", [docsdir()]);
|
||||||
echo(pkgname) ->
|
echo(pkgname) ->
|
||||||
tell(info, "~ts", [pkgname()]);
|
tell(info, "~ts", [pkgname()]);
|
||||||
echo(pkgdir) ->
|
echo(pkg_devdir) ->
|
||||||
tell(info, "~ts", [pkgdir()]);
|
tell(info, "~ts", [pkg_devdir()]);
|
||||||
|
echo(pkg_docsdir) ->
|
||||||
|
tell(info, "~ts", [pkg_docsdir()]);
|
||||||
echo(deps) ->
|
echo(deps) ->
|
||||||
PrintDep =
|
PrintDep =
|
||||||
fun(Dep) ->
|
fun(Dep) ->
|
||||||
@@ -166,6 +186,8 @@ jexdir() ->
|
|||||||
devdir() ->
|
devdir() ->
|
||||||
filename:join(jexdir(), "dev").
|
filename:join(jexdir(), "dev").
|
||||||
|
|
||||||
|
docsdir() ->
|
||||||
|
filename:join(jexdir(), "docs").
|
||||||
|
|
||||||
pkgname() ->
|
pkgname() ->
|
||||||
{ok, Cfg} = cfg(),
|
{ok, Cfg} = cfg(),
|
||||||
@@ -174,9 +196,11 @@ pkgname() ->
|
|||||||
Vsn = proplists:get_value(version, Cfg),
|
Vsn = proplists:get_value(version, Cfg),
|
||||||
io_lib:format("~tp-~tp-~ts", [Realm, Name, Vsn]).
|
io_lib:format("~tp-~tp-~ts", [Realm, Name, Vsn]).
|
||||||
|
|
||||||
pkgdir() ->
|
pkg_devdir() ->
|
||||||
filename:join(devdir(), pkgname()).
|
filename:join(devdir(), pkgname()).
|
||||||
|
|
||||||
|
pkg_docsdir() ->
|
||||||
|
filename:join([docsdir(), pkgname()]).
|
||||||
|
|
||||||
deps() ->
|
deps() ->
|
||||||
{ok, Cfg} = cfg(),
|
{ok, Cfg} = cfg(),
|
||||||
@@ -208,9 +232,8 @@ file_exists(Filename) ->
|
|||||||
%%-----------------------------------------------------------------------------
|
%%-----------------------------------------------------------------------------
|
||||||
|
|
||||||
init() ->
|
init() ->
|
||||||
DevDir = devdir(),
|
_ = cmd(["mkdir -p ", devdir()]),
|
||||||
Cmd = io_lib:format("mkdir -p ~ts", [DevDir]),
|
_ = cmd(["mkdir -p ", docsdir()]),
|
||||||
_ = cmd(Cmd),
|
|
||||||
ok.
|
ok.
|
||||||
|
|
||||||
|
|
||||||
@@ -257,10 +280,6 @@ mindist(Opts) ->
|
|||||||
_ = cmd("mkdir -p jex_mindist"),
|
_ = cmd("mkdir -p jex_mindist"),
|
||||||
_ = mindist_cp(Force),
|
_ = mindist_cp(Force),
|
||||||
_ = cmd("rm -r jex_mindist/src/jex_include"),
|
_ = cmd("rm -r jex_mindist/src/jex_include"),
|
||||||
PkgName = pkgname(),
|
|
||||||
_ = cmd(["mv jex_mindist ", PkgName]),
|
|
||||||
_ = cmd(["tar czvf ", PkgName, ".tar.gz ", PkgName]),
|
|
||||||
_ = cmd(["rm -r ", PkgName]),
|
|
||||||
ok.
|
ok.
|
||||||
|
|
||||||
mindist_cp(dont_force) ->
|
mindist_cp(dont_force) ->
|
||||||
@@ -279,7 +298,7 @@ mindist_cp(force) ->
|
|||||||
%%-----------------------------------------------------------------------------
|
%%-----------------------------------------------------------------------------
|
||||||
|
|
||||||
push() ->
|
push() ->
|
||||||
_ = cmd(io_lib:format("rsync -avv jex_mindist/ ~ts", [pkgdir()])),
|
_ = cmd(io_lib:format("rsync -avv jex_mindist/ ~ts", [pkg_devdir()])),
|
||||||
ok.
|
ok.
|
||||||
|
|
||||||
|
|
||||||
@@ -338,6 +357,14 @@ mkdocs() ->
|
|||||||
_ = cmd("npx typedoc --entryPointStrategy expand --sort source-order src"),
|
_ = cmd("npx typedoc --entryPointStrategy expand --sort source-order src"),
|
||||||
ok.
|
ok.
|
||||||
|
|
||||||
|
%%-----------------------------------------------------------------------------
|
||||||
|
%% jex pushdocs
|
||||||
|
%%-----------------------------------------------------------------------------
|
||||||
|
|
||||||
|
pushdocs() ->
|
||||||
|
_ = cmd(["rsync -avv docs/ ", pkg_docsdir()]),
|
||||||
|
ok.
|
||||||
|
|
||||||
%%-----------------------------------------------------------------------------
|
%%-----------------------------------------------------------------------------
|
||||||
%% INTERNALS
|
%% INTERNALS
|
||||||
%%-----------------------------------------------------------------------------
|
%%-----------------------------------------------------------------------------
|
||||||
|
|||||||
Reference in New Issue
Block a user