- README.md: project overview, quick start, deploy instructions - EDITOR_SETUP.md: editor config (neovim, VS Code), full feature matrix - Bicep: internal module registry, versions, params, allowed values - YAML AzDO: pipeline template completions with parameter injection - YAML GHA: reusable workflow completions with input injection - Health check fields explained, smoke test usage
48 lines
1.3 KiB
Markdown
48 lines
1.3 KiB
Markdown
# iLSP — Internal LSP Proxy
|
|
|
|
Self-hosted Language Server Protocol proxy for LRU's internal tooling.
|
|
Runs at **https://ilsp.i80.dk** (Nomad/Docker, `autobox.i80.dk`).
|
|
|
|
Provides smart autocomplete on top of standard LSPs:
|
|
|
|
| Language | Endpoint | Extra completions |
|
|
|----------|----------|------------------|
|
|
| Bicep | `wss://ilsp.i80.dk/bicep` | Internal ACR modules, versions, params |
|
|
| YAML | `wss://ilsp.i80.dk/yaml` | AzDO pipeline templates, GHA reusable workflows |
|
|
| Python | `wss://ilsp.i80.dk/python` | Jedi (standard) |
|
|
|
|
→ See **[EDITOR_SETUP.md](EDITOR_SETUP.md)** for editor configuration and a full feature overview.
|
|
|
|
## Quick start
|
|
|
|
```bash
|
|
# Check service health
|
|
curl https://ilsp.i80.dk/health
|
|
|
|
# Run smoke tests
|
|
python3 scripts/smoke_test_completions.py
|
|
|
|
# Local dev
|
|
make run # build + start + health check
|
|
make run-quick # start without rebuilding
|
|
make logs # tail container logs
|
|
make health # curl health endpoint
|
|
```
|
|
|
|
## Updating catalogs
|
|
|
|
```bash
|
|
python3 scripts/sync_pipeline_templates.py # scan AzDO + GHA template repos
|
|
bash scripts/push_catalogs.sh # scp to server + /reload
|
|
```
|
|
|
|
## Deploy
|
|
|
|
Push to `main` → Gitea Actions builds image → Nomad deploys automatically.
|
|
|
|
```bash
|
|
# Manual deploy (if CI is down)
|
|
git push
|
|
ssh autobox.i80.dk 'nomad job run /opt/nomad/jobs/ilsp.nomad'
|
|
```
|