Use python para obter a versão mais recente do vscode-server
Ao usar o vscode para se conectar ao servidor remotamente, o vscode irá baixar e instalar o vscode-server no lado do servidor, mas às vezes nosso servidor remoto não consegue se conectar diretamente ao endereço de download ou a velocidade de download é muito impressionante. O que devemos fazer?
https://update.code.visualstudio.com/commit:$(commit_id)/server-linux-x64/stable"
Este é o endereço de download do vscode-server. $(commit_id) corresponde ao número de envio da versão local do vscode, que pode ser encontrado em Help-About.
É muito problemático baixá-lo manualmente sempre que o VS é atualizado, então escrevi um script para concluir o processo de download.
Análise de ideias
- Primeiro, você precisa obter o commit_id do vscode. O armazém do vscode está no github, então considere obter a versão mais recente do commit_id por meio da API fornecida pelo github.
- Primeiro, obtenha a página de lançamento mais recente da API do github e, em seguida, obtenha o commit_id da página de lançamento correspondente.
Código
- Obtenha a página de lançamento:
url = "https://api.github.com/repos/microsoft/vscode/releases/latest"
release_url = requests.get(url).json()["html_url"]
- Obtenha commit_id:
Como você só precisa obter uma URL, não há necessidade de usar bibliotecas como bs4 e lxml para analisar a página da Web. Você pode simplesmente pesquisá-la diretamente com expressões regulares.
commit_id = (re.search("/microsoft/vscode/commit/(.+?)\"",
requests.get(release_url).text).group(1))
fim
Finalmente, seja Linux ou Windows, você pode adicionar o script à tarefa agendada e executá-lo regularmente. Se você executá-lo regularmente, poderá primeiro detectar se o número da versão mudou.
with open("vscode_commit_id.txt","r+") as cid:
if cid.read()==commit_id:
print("exit")
exit()
else:
cid.seek(0)
cid.truncate()
cid.write(commit_id)