diff options
| author | Ashkan Kiani <ashkan.k.kiani@gmail.com> | 2019-11-26 06:28:55 -0800 |
|---|---|---|
| committer | GitHub <noreply@github.com> | 2019-11-26 06:28:55 -0800 |
| commit | a105d7f1e202d1b5808312a7858fd4b74365fb26 (patch) | |
| tree | 9a02d0923c184e68b6d3d6378c13a2faeb5b8619 /scripts/docgen.lua | |
| parent | [docgen] Update README.md (diff) | |
| download | nvim-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.lua | 36 |
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 |
