Visual Studio Code Server na bramce AIS

Visual Studio Code Server

Opiszę, w jaki sposób można zainstalować code server i edytować konfigurację na bramce z aplikacji w przeglądarce.
Ja osobiście preferuję konsolowe edytory, dostępne na bramce nano, vim czy neovim, ale dla ludzi nieobeznanych z konsolą edycja z przeglądarki wydaje się prostsza.

Ostrzegam, że nie biorę odpowiedzialności za działanie tego edytora…
Nie do końca jestem przekonany czy poprawnie uruchamiam na starcie bramki program code-server. Uruchamiam go na starcie HA automatyzacją, ale może ktoś z zespołu AIS (@jolka) poprawi mój sposób i doda VS code jako oficjalną usługę na bramkach AIS?

No to zaczynamy.

1. Instaluje menedżer pakietów Yarn bo jest lepszy od NPM:

apt update
apt install yarn

2. Instaluję code-server:

za pomocą menedżer pakietów yarn instaluję code-server, to chwilę trwa na Dev1

yarn global add code-server@3.4.0

3. Konfiguruję code-server:

nano ~/.config/code-server/config.yaml

ja mam takie ustawienia

bind-addr: ip-bramki:8080
auth: none
cert: false

4. Pierwsze uruchomienie code-server:

wpisuję w konsoli

code-server

i sprawdzam działanie w kolejnej zakładce w przeglądarce

wchodzę w przeglądarce na http://ip-bramki:8080
teraz możemy otwierać i modyfikować pliki z konfiguracją na bramce :slight_smile:

5. Dodaję code-server jako panel:

w pliku ~/AIS/configuration.yaml daję coś takiego

panel_iframe:
  vscode:
    title: Code
    icon: mdi:microsoft-visual-studio-code
    url: "http://ip-bramki:8080"
    require_admin: true

teraz restart usługi ais

pm2 restart ais

po ponownym uruchomieniu jest już edytor w panelu

6. Uruchomienie VS Code Server na starcie systemu

jak do polecenia dodacie na końcu &
to & sprawia, że polecenie działa w tle

code-server & 

tak to sobie uruchamiałem jak potrzebowałem mieć dostęp do edycji plików z przeglądarki i to działało do czasu aż sesja się kończyła w ssh

image

zacząłem to robić w screen i było ok do czasu restartu bramki. Niedawno przeczytałem to:

i dało mi to do myślenia - czyli można usługą uruchomić polecenie w shell :slight_smile:

Dzisiaj dodałem taką automatyzacje:

alias: Start VS code podczas startu systemu
description: ''
trigger:
  - platform: homeassistant
    event: start
condition: []
action:
  - service: ais_shell_command.execute_command
    data:
      command: code-server &
mode: single

Teraz mam już aplikację VS Code Server działającą zawsze po uruchomieniu bramki :slight_smile:

:peace:

4 polubienia

Nie prościej było by to dodać do pm2 aby startowało razem z resztą jak opisane poniżej przykłady

Czy nawet HTTPS