jwright
9919e20850
gitignore: broaden secret patterns (env/keys/certs/credentials/kubeconfig)
2026-06-17 22:52:30 +10:00
jwright
08fb56935d
contact: low-latency phrasing for the get-in-touch lead (LinkedIn + email)
build-and-deploy / build (push) Failing after 11m1s
2026-06-17 22:47:09 +10:00
jwright
939962aeeb
footer: add CC BY-NC-SA 4.0 content license + low-latency contact line
...
build-and-deploy / build (push) Failing after 14m26s
- License link (rel=license) renders site-wide for blog/content reuse terms
- Contact line links LinkedIn + email from socials data
2026-06-17 22:14:08 +10:00
jwright
1c956d6ec4
Hero: fix title descender clipping (g); CI: rename PR token var so Gitea's auto GITEA_TOKEN doesn't 401 the branch step
build-and-deploy / build (push) Failing after 11m19s
2026-06-17 20:54:57 +10:00
jwright
18ed7458c3
CI: per-user digest file path (avoid /tmp collision between manual + runner)
2026-06-17 20:51:08 +10:00
jwright
1dc9c82cb3
Links: trailing-slash internal URLs (no dir-redirect → kills the :8080/cached-301 issue)
build-and-deploy / build (push) Failing after 13m10s
2026-06-17 20:48:06 +10:00
jwright
a729484c7a
Hero/OG: Platform & Infrastructure Engineer, RHEL-led tagline with ▸; fix :8080 links (relative nginx redirects)
build-and-deploy / build (push) Failing after 15m26s
2026-06-17 20:35:51 +10:00
jwright
3fd0a9a729
CI: retry buildah build/push (resilient to transient registry 502s)
2026-06-17 20:27:59 +10:00
jwright
f132303d6d
CI: use upload-artifact@v3 (Gitea), best-effort so it never blocks deploy
2026-06-17 20:23:40 +10:00
jwright
fbad7a18db
CI: digest-bump pushes a branch for manual PR (no broad token needed)
2026-06-17 20:11:13 +10:00
jwright
74cbf3af26
Add HSTS header at the origin (host-scoped, no includeSubDomains)
build-and-deploy / build (push) Failing after 13m53s
2026-06-17 19:38:05 +10:00
jwright
83edaf5975
M5: publish seam + CI/CD pipeline
...
build-and-deploy / build (push) Failing after 15m10s
scripts/new-post.mjs writes schema-valid posts from flags or a JSON event
(the IaC publish seam). Gitea Actions workflow: ci check, audit-ci gate,
build, dist scan, CycloneDX SBOM, buildah build+push, and a least-privilege
digest-bump PR to home-ops (never auto-merged). Renovate + audit allowlist.
2026-06-17 17:20:54 +10:00
jwright
c1db5cec86
M4: security pass — strict CSP, header split, build-time scan
...
All JS moved to external /site.js → script-src 'self' with no inline JS,
hashes or eval. Full header set via nginx (CSP, nosniff, frame-deny,
referrer, permissions, COOP/CORP); HSTS stays at the CF edge. Shared
headers include avoids the location add_header reset footgun. Build-time
secret/inline-script/third-party scan gate. SECURITY.md documents posture.
2026-06-17 17:12:57 +10:00
jwright
cb76a87c36
M3: theme-aware SVG architecture diagrams + hero motion
...
Hand-authored inline-SVG Diagram component (no runtime JS, CSP-clean,
themeable) rendering edge-AI, IaC-fleet and homelab architectures on the
case studies. Staggered CSS hero entrance, motion-aware.
2026-06-17 17:02:22 +10:00
jwright
22f482d89a
M2: content collections — case studies, blog, RSS, tags, sitemap
...
Projects + blog as schema-validated content collections; structured case
studies (problem/design/outcome), blog with tag pages, reading time, RSS
feed (drafts excluded), sitemap, and Shiki dual-theme code highlighting.
2026-06-17 16:56:46 +10:00
jwright
720d579386
Switch public contact email to live.com.au (matches CV)
2026-06-17 16:45:28 +10:00
jwright
ae207eb79d
Populate site with real CV data; restyle OG subtitle
...
Real career history (Woolworths, Virtus Health, Linde, ELGAS, Darktime),
cloud-heavy skills matrix, education, LinkedIn, Sydney location, and
projects mapped to actual work. OG subtitle now smaller italic serif.
2026-06-17 16:44:03 +10:00
jwright
2d4b6ea097
Initial portfolio site: Astro + Tailwind MVP
...
Outcome-led hero, about, grouped skills, experience summary, featured
projects + /projects index, static contact, SEO/OG, dark/light theme.
Dockerfile + nginx config + build script for homelab deploy.
2026-06-17 16:22:53 +10:00