aboutsummaryrefslogtreecommitdiffstats
path: root/scripts/docgen.lua
diff options
context:
space:
mode:
authorAshkan Kiani <ashkan.k.kiani@gmail.com>2019-11-26 06:28:55 -0800
committerGitHub <noreply@github.com>2019-11-26 06:28:55 -0800
commita105d7f1e202d1b5808312a7858fd4b74365fb26 (patch)
tree9a02d0923c184e68b6d3d6378c13a2faeb5b8619 /scripts/docgen.lua
parent[docgen] Update README.md (diff)
downloadnvim-lspconfig-a105d7f1e202d1b5808312a7858fd4b74365fb26.tar
nvim-lspconfig-a105d7f1e202d1b5808312a7858fd4b74365fb26.tar.gz
nvim-lspconfig-a105d7f1e202d1b5808312a7858fd4b74365fb26.tar.bz2
nvim-lspconfig-a105d7f1e202d1b5808312a7858fd4b74365fb26.tar.lz
nvim-lspconfig-a105d7f1e202d1b5808312a7858fd4b74365fb26.tar.xz
nvim-lspconfig-a105d7f1e202d1b5808312a7858fd4b74365fb26.tar.zst
nvim-lspconfig-a105d7f1e202d1b5808312a7858fd4b74365fb26.zip
Add retry logic to docgen. (#54)
Diffstat (limited to 'scripts/docgen.lua')
-rw-r--r--scripts/docgen.lua36
1 files changed, 20 insertions, 16 deletions
diff --git a/scripts/docgen.lua b/scripts/docgen.lua
index cf474075..6e2261d1 100644
--- a/scripts/docgen.lua
+++ b/scripts/docgen.lua
@@ -133,23 +133,27 @@ local function make_lsp_sections()
docs.vspackage = util.format_vspackage_url(docs.vscode)
end
if docs.vspackage then
- local script = [[
- curl -L -o {{vspackage_name}} {{vspackage_url}}
- gzip -d {{vspackage_name}}
- unzip -j {{vspackage_zip}} extension/package.json
- mv package.json {{package_json_name}}
- ]]
- os.execute(template(script, {
- package_json_name = package_json_name;
- vspackage_name = util.path.join(tempdir, template_name..'.vspackage.zip.gz');
- vspackage_zip = util.path.join(tempdir, template_name..'.vspackage.zip');
- vspackage_url = docs.vspackage;
- }))
- if not util.path.is_file(package_json_name) then
- print(string.format("Failed to download vspackage for %q at %q", template_name, docs.vspackage))
- return
+ for i = 1, 5 do
+ local script = [[
+ curl -L -o {{vspackage_name}} {{vspackage_url}}
+ gzip -d {{vspackage_name}}
+ unzip -j {{vspackage_zip}} extension/package.json
+ mv package.json {{package_json_name}}
+ ]]
+ os.execute(template(script, {
+ package_json_name = package_json_name;
+ vspackage_name = util.path.join(tempdir, template_name..'.vspackage.zip.gz');
+ vspackage_zip = util.path.join(tempdir, template_name..'.vspackage.zip');
+ vspackage_url = docs.vspackage;
+ }))
+ if util.path.is_file(package_json_name) then
+ docs.package_json = true
+ break
+ else
+ print(string.format("Failed to download vspackage for %q at %q", template_name, docs.vspackage))
+ vim.api.nvim_command("sleep "..math.random(0, i))
+ end
end
- docs.package_json = true
end
if docs.package_json then
if not util.path.is_file(package_json_name) then