Compare commits
2 commits
2862f7844c
...
be1aad94ae
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
be1aad94ae | ||
|
|
0bc944de5f |
4 changed files with 48 additions and 3 deletions
13
CHANGELOG.md
13
CHANGELOG.md
|
|
@ -1,4 +1,4 @@
|
|||
# v0.7.30-beta — Installeren met één regel
|
||||
# v0.7.30 — Installeren met één regel
|
||||
|
||||
```bash
|
||||
curl -fsSL https://git.ramonbesselink.nl/bes-r/server-up/raw/branch/main/install.sh | sh
|
||||
|
|
@ -34,6 +34,17 @@ de wachtlus gaf anderhalve minuut lang geen enkel teken van leven (nu puntjes),
|
|||
en `docker compose --project-directory` zoekt zonder `-f` het compose-bestand
|
||||
alsnog in de huidige map — wat bij `curl | sh` je thuismap is.
|
||||
|
||||
Een derde kwam pas op de bouwserver boven: ontbrak `curl`, dan stopte ook een
|
||||
proefdraai meteen. Juist dan wil je zien wat er gaat gebeuren, dus dat is nu een
|
||||
waarschuwing in plaats van een harde fout — net als bij een ontbrekende Docker.
|
||||
|
||||
Dit is de eerste stabiele release sinds v0.4.60. Alles uit de v0.5-, v0.6- en
|
||||
v0.7-beta's zit erin: inloggen met rollen, backups, netwerken met een eigen
|
||||
IP-adres, 96 apps met categorieën, apps onderling koppelen, instellingen
|
||||
achteraf wijzigen, en zelf bijwerken. Draaide je nog v0.4.60, lees dan eerst
|
||||
`docs/beveiliging.md`: daar stond de interface nog open zonder login, en na het
|
||||
bijwerken moet je meteen een beheerdersaccount aanmaken.
|
||||
|
||||
---
|
||||
|
||||
# v0.7.20-beta — Instellingen wijzigen, koppelen achteraf, en een defect uit v0.7.00
|
||||
|
|
|
|||
2
VERSION
2
VERSION
|
|
@ -1 +1 @@
|
|||
0.7.30-beta
|
||||
0.7.30
|
||||
|
|
|
|||
|
|
@ -140,7 +140,7 @@ controleer_systeem() {
|
|||
bepaal_rechten
|
||||
[ "$(uname -s)" = "Linux" ] || waarschuw "Dit script is voor Linux; op $(uname -s) is het onbeproefd."
|
||||
for hulp in curl tar; do
|
||||
heeft "$hulp" || fout "'$hulp' ontbreekt. Installeer het en probeer opnieuw."
|
||||
heeft "$hulp" || fout_tenzij_droog "'$hulp' ontbreekt. Installeer het en probeer opnieuw."
|
||||
done
|
||||
goed "$(uname -s) $(uname -m)"
|
||||
}
|
||||
|
|
|
|||
|
|
@ -91,6 +91,40 @@ def test_dry_run_toont_de_hele_gang_van_zaken(tmp_path):
|
|||
assert kop in r.stdout, f"stap ontbreekt: {kop}"
|
||||
|
||||
|
||||
def _pad_zonder(tmp_path, *weglaten):
|
||||
"""Een PATH met alles erin behalve de genoemde commando's."""
|
||||
nep = tmp_path / "bin"
|
||||
nep.mkdir()
|
||||
import os
|
||||
for map_ in os.environ.get("PATH", "").split(os.pathsep):
|
||||
p = Path(map_)
|
||||
if not p.is_dir():
|
||||
continue
|
||||
for f in p.iterdir():
|
||||
if f.name in weglaten or (nep / f.name).exists():
|
||||
continue
|
||||
try:
|
||||
(nep / f.name).symlink_to(f)
|
||||
except OSError:
|
||||
pass
|
||||
return str(nep)
|
||||
|
||||
|
||||
def test_proefdraai_werkt_zonder_curl_en_tar(tmp_path):
|
||||
"""De CI-runner draait in python:3.12-slim, waar curl ontbreekt. Een
|
||||
proefdraai hoort dan nog steeds de hele voorvertoning te tonen: dat is juist
|
||||
het moment waarop je wil zien wat er zou gebeuren."""
|
||||
r = subprocess.run(["sh", str(SCRIPT), "--dry-run", "--dir",
|
||||
str(tmp_path / "su"), "--yes"],
|
||||
capture_output=True, text=True, timeout=60,
|
||||
env={"PATH": _pad_zonder(tmp_path, "curl", "tar"),
|
||||
"HOME": str(tmp_path)})
|
||||
assert r.returncode == 0, r.stderr
|
||||
assert "[droog]" in r.stdout
|
||||
assert "Bouwen en starten" in r.stdout
|
||||
assert not (tmp_path / "su").exists()
|
||||
|
||||
|
||||
def test_verwijst_naar_het_juiste_git_domein():
|
||||
tekst = SCRIPT.read_text(encoding="utf-8")
|
||||
assert 'GIT_HOST="git.ramonbesselink.nl"' in tekst
|
||||
|
|
|
|||
Loading…
Reference in a new issue