$bake—as☿rangelyfamiliarworkflowutility. ~underdevelopment~ $catBakefile$bakeinstallinstall:install/nodeinstall/python+Executinginstall/node:echo'Allready!'|yarninstallv1.17.3install/full:install/systeminstall|infoNolockfilefound.install/python:@skip:key=Pipfile.lock|[1/4]Resolvingpackages...pipenvinstall|[2/4]Fetchingpackages...install/node:@skip:key=yarn.lock|[3/4]Linkingdependencies...yarninstall|[4/4]Buildingfreshpackages...install/system:@confirm|successSavedlockfile.brewinstallpipenvyarn|Donein0.05s.+Executinginstall/python:python/format:|Installingdependenciesfrom…black.+Executinginstall:|Allready!utils/argv:+Done.set-u&&echo"$HELLO:$@"Rinseandrepeat…utils/deploy:@confirm:secureexit0~seebake'sownBakefile~ What'sintheoven?ABakefile,whichlooksandfeelslikethegoodpartsofaMakefile.Except,youcanwriterealbashcode! Anyandallsyntaxisaccepted— nomagicgoingonhere.;)UnlikeMakefile,youmayutilize [4×U+0020a.k.a.“spaces”]forindentation.Environmentvariablesareexplicitlypassedorwhitelisted(--allow),notinheritedfromtheparentshell.Taskscanberunsafelyandreliably.Restassuredthatscriptsareexecutedfromtheprojectrootdirectory.Therearemanyotherbenefitstothisdesign,thathaveyettobeexpressedinthisdocument.AutomateWorkflows—BootstrapDevelopmentEnvironments—CommitTheTasksIloveusingMakefileforone-offtasksinprojects.
Theproblemwithdoingthisisthatyoucan'tusefamiliarbash–ismswhendoingso,asGNUMakedoesn'tusethefamiliarBashsyntax,nordoesitallowforsimplead–hocuseofarbitraryscriptinglanguages(e.g.Python).
projectseekstobridgealloftheseworldsintoasingleentrypoint— idealforcross–languagerepositories
Bootstrapingbake— (forlocaldevelopmentworkflows)Various*nixDistributions(Python3.6+):Theprimaryinstallationmethodofbake,today,isviapip:
$pip3installbake-cliCollectingbake-cli…Successfullyinstalledbake-cli-0.2.0delegator.py-0.1.1pexpect-4.7.0ptyprocess-0.6.0Thiswillalwayswork,butitwillnotbethedefaultrecommendation.
MacOS(PreviouslyknownasOSX)Installationofbakewill(soon)beveryeasy,withHomebrew.Theformulaneedsasubtleadjustment— ifyouwanttohelp,here'stherepo!
声明:本文仅代表作者观点,不代表本站立场。如果侵犯到您的合法权益,请联系我们删除侵权资源!如果遇到资源链接失效,请您通过评论或工单的方式通知管理员。未经允许,不得转载,本站所有资源文章禁止商业使用运营!
下载安装【程序员客栈】APP
实时对接需求、及时收发消息、丰富的开放项目需求、随时随地查看项目状态
评论