5 Commits
Author SHA1 Message Date
blandClaude Opus 5.5 9ae0e178db Test: Hvem består Klingenberg Bygg av? som egen side, med menneskene, erfaringene og verdiene; Hvordan presenterer du deg?
Deploy test instance / deploy (push) Successful in 3s
lint-and-reload / lint (push) Successful in 2s
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01GT37Z1Xtfd9pUuQtMTg6Yt
2026-09-30 21:52:29 +02:00
blandClaude Opus 5.5 414715d64f Test: bioen kan skrives i markdown
Deploy test instance / deploy (push) Successful in 3s
lint-and-reload / lint (push) Successful in 2s
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01GT37Z1Xtfd9pUuQtMTg6Yt
2026-09-30 21:39:01 +02:00
blandClaude Opus 5.5 8ae162f143 Test: et kort som er tatt ned, forsvinner fra kontorets liste etter ti minutter
lint-and-reload / lint (push) Successful in 2s
Deploy test instance / deploy (push) Successful in 3s
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01GT37Z1Xtfd9pUuQtMTg6Yt
2026-09-30 20:50:46 +02:00
blandClaude Opus 5.5 6de2febec1 Test: hver ansatt retter sitt eget kort; testen følger nyeste portal ved hver push
lint-and-reload / lint (push) Successful in 2s
Deploy test instance / deploy (push) Successful in 4s
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01GT37Z1Xtfd9pUuQtMTg6Yt
2026-09-30 20:39:27 +02:00
blandClaude Opus 5.5 93c6b6e6c5 Test: portal.test.klingenbergbygg.no, nyeste portal og en egen NATS; søknad på pause
Deploy test instance / deploy (push) Failing after 1s
lint-and-reload / lint (push) Failing after 1s
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01GT37Z1Xtfd9pUuQtMTg6Yt
2026-09-30 20:11:30 +02:00
4 changed files with 26 additions and 47 deletions

No files matched your search

+13 -23
View File
@@ -1,35 +1,25 @@
name: Deploy instance name: Deploy test instance
# This content repo owns its portal instance: which portal version runs # Branch `test` is portal.test.klingenbergbygg.no: the newest portal
# on kasse. uhhm/portal only publishes versioned release artifacts; # release (cut from uhhm/portal main), with a NATS of its own on kasse,
# PORTAL_RELEASE below pins the one this site runs, so every rollout is # so nothing tried here reaches production or mails a customer. The
# a commit - auditable, and revertable by reverting it. # production site is branch `main`, pinned in its own deploy.yml.
#
# Content-only changes never come through here: lint-and-reload
# hot-swaps those into the running instance over NATS.
#
# Runs on the host runner, because a deploy has to touch this host's
# filesystem and its units. It is allowed exactly one root action:
# /usr/local/bin/deploy-portal-instance, which checks the instance
# against a fixed list and the tag against a release-tag shape before
# it touches anything, and health-checks the site afterwards without a
# forwarded header - a check that sends the header Caddy would send
# cannot tell you the site is broken for everything that is not Caddy.
# Every push: a test site that follows the newest release has no pin
# to change, so a push is the moment to pick the newest up.
on: on:
workflow_dispatch: workflow_dispatch:
push: push:
branches: [main] branches: [test]
paths:
- .gitea/workflows/deploy.yml
env: env:
PORTAL_RELEASE: v0.6.3 INSTANCE: klingenberg-test
INSTANCE: klingenberg-portal
jobs: jobs:
deploy: deploy:
runs-on: fish runs-on: fish
steps: steps:
- name: Ship the pinned release and restart - name: Ship the newest release and restart
run: sudo /usr/local/bin/deploy-portal-instance "$INSTANCE" "$PORTAL_RELEASE" run: |
tag=$(curl -sf https://project.uhhm.no/api/v1/repos/uhhm/portal/releases/latest | jq -r .tag_name)
sudo /usr/local/bin/deploy-portal-instance "$INSTANCE" "$tag"
+8 -8
View File
@@ -1,21 +1,21 @@
name: lint-and-reload name: lint-and-reload
on: on:
push: push:
branches: [main] branches: [test]
jobs: jobs:
lint: lint:
runs-on: fish runs-on: fish
steps: steps:
- name: checkout - name: checkout
run: | run: |
rm -rf checkout && git clone --depth 1 https://prosjekt.klingenbergbygg.no/klingenbergbygg/questions.git checkout rm -rf checkout && git clone --depth 1 --branch test https://prosjekt.klingenbergbygg.no/klingenbergbygg/questions.git checkout
# The lint is portal itself (`portal lint`), at the version this # The lint is portal itself, at the newest release: the one the
# site runs (PORTAL_RELEASE in deploy.yml). # test instance runs.
- name: lint - name: lint
env:
PORTAL_RELEASE: v0.6.3
run: | run: |
curl -sfL "https://project.uhhm.no/uhhm/portal/releases/download/$PORTAL_RELEASE/portal-x86_64-linux" -o portal && chmod +x portal tag=$(curl -sf https://project.uhhm.no/api/v1/repos/uhhm/portal/releases/latest | jq -r .tag_name)
curl -sfL "https://project.uhhm.no/uhhm/portal/releases/download/$tag/portal-x86_64-linux" -o portal && chmod +x portal
./portal lint --path checkout/questions ./portal lint --path checkout/questions
# The test instance's own NATS, never production's.
- name: reload - name: reload
run: nats --server nats://127.0.0.1:4222 pub portal.content.reload "" run: nats --server nats://127.0.0.1:4232 pub portal.content.reload ""
+3 -10
View File
@@ -106,22 +106,15 @@ h1, h2, h3 {
opacity: 1; opacity: 1;
} }
/* Who is here sits on the wordmark's line, at the page's right edge. */ /* Who is here sits on the bar's line, at the page's right edge. */
.session { .session {
top: 1.75rem;
right: max(1.5rem, calc((100vw - var(--measure)) / 2 + 1.5rem));
font-family: var(--heading); font-family: var(--heading);
font-weight: 500; font-weight: 500;
font-size: 0.85rem; font-size: 0.85rem;
} }
.hero-top {
justify-content: space-between;
}
.hero-top .session {
position: static;
transform: none;
}
.slideshow { .slideshow {
--swiper-navigation-size: 1.6rem; --swiper-navigation-size: 1.6rem;
background: var(--line); background: var(--line);
+2 -6
View File
@@ -35,12 +35,10 @@ alternatives:
label: Navn label: Navn
type: text type: text
placeholder: Navn placeholder: Navn
value: '{user.name}'
- name: email - name: email
label: E-post label: E-post
type: email type: email
placeholder: bruker@eksempel.no placeholder: bruker@eksempel.no
value: '{user.email}'
- name: telefon - name: telefon
label: Telefon label: Telefon
type: tel type: tel
@@ -93,12 +91,10 @@ alternatives:
label: Navn label: Navn
type: text type: text
placeholder: Navn placeholder: Navn
value: '{user.name}'
- name: email - name: email
label: E-post label: E-post
type: email type: email
placeholder: bruker@eksempel.no placeholder: bruker@eksempel.no
value: '{user.email}'
- name: telefon - name: telefon
label: Telefon label: Telefon
type: tel type: tel
@@ -221,7 +217,7 @@ slideshow:
- image: images/bildeserie/20.webp - image: images/bildeserie/20.webp
width: 1867 width: 1867
height: 1400 height: 1400
caption: Her heises Moelvens modulskole i Vestby på plass. Den blir stående i minst 10 år. caption: Her heises Moelvens modulskole i Vestby på plass. Den blir stående i 10 år.
- image: images/bildeserie/21.webp - image: images/bildeserie/21.webp
width: 1867 width: 1867
height: 1400 height: 1400
@@ -241,4 +237,4 @@ slideshow:
- image: images/bildeserie/25.webp - image: images/bildeserie/25.webp
width: 1487 width: 1487
height: 1400 height: 1400
caption: pH-test av borprøver i betong fra forskjellige dybder caption: pH-test av borprøver i mur fra forskjellige dybder