aboutsummaryrefslogtreecommitdiff
path: root/internal
AgeCommit message (Collapse)AuthorFilesLines
2024-11-13internal/lume: wrap this in a rwmutex oopsXe Iaso1-1/+4
Signed-off-by: Xe Iaso <me@xeiaso.net>
2024-11-09Move to Kubernetes (#853)Xe Iaso5-10/+183
* start to lift-and-shift to k8s Signed-off-by: Xe Iaso <me@xeiaso.net> * manifest/xesite: properly configure pod disruption budget, hostmount for xesite as a hack Signed-off-by: Xe Iaso <me@xeiaso.net> * properly slonk readiness Signed-off-by: Xe Iaso <me@xeiaso.net> * manifest: move to aeacus Signed-off-by: Xe Iaso <me@xeiaso.net> * internal: add OnionLocation middleware Signed-off-by: Xe Iaso <me@xeiaso.net> * internal/lume: jettison serving from the zipfile Signed-off-by: Xe Iaso <me@xeiaso.net> * yolo deploy to prod Signed-off-by: Xe Iaso <me@xeiaso.net> * okay use a machineproxy here Signed-off-by: Xe Iaso <me@xeiaso.net> * test CI/CD Signed-off-by: Xe Iaso <me@xeiaso.net> * try civo route Signed-off-by: Xe Iaso <me@xeiaso.net> * lol Signed-off-by: Xe Iaso <me@xeiaso.net> * plan c? Signed-off-by: Xe Iaso <me@xeiaso.net> * specify the region Signed-off-by: Xe Iaso <me@xeiaso.net> * lol Signed-off-by: Xe Iaso <me@xeiaso.net> * blog: hello again kubernetes! Signed-off-by: Xe Iaso <me@xeiaso.net> --------- Signed-off-by: Xe Iaso <me@xeiaso.net>
2024-06-21Earthfile: launch /app/xesite for branding cloutXe Iaso1-0/+7
Signed-off-by: Xe Iaso <me@xeiaso.net>
2024-06-21adopt homebrewXe Iaso1-4/+4
Signed-off-by: Xe Iaso <me@xeiaso.net>
2024-06-21internal/lume: add end to end build testXe Iaso1-0/+27
Signed-off-by: Xe Iaso <me@xeiaso.net>
2024-06-09How I overengineered my preview siteXe Iaso1-0/+2
Signed-off-by: Xe Iaso <me@xeiaso.net>
2024-06-08internal/lume: push to future-sightXe Iaso1-13/+85
Signed-off-by: Xe Iaso <me@xeiaso.net>
2024-05-27internal/fly/flighttracker: move this to Xe/xXe Iaso1-89/+0
Signed-off-by: Xe Iaso <me@xeiaso.net>
2024-05-24fix events APIXe Iaso1-1/+1
Signed-off-by: Xe Iaso <me@xeiaso.net>
2024-05-24internal/lume: allow rebuilds when git is happyXe Iaso2-2/+23
Signed-off-by: Xe Iaso <me@xeiaso.net>
2024-05-24internal/lume: make more robustXe Iaso1-0/+4
Signed-off-by: Xe Iaso <me@xeiaso.net>
2024-05-24lume: add events page fed by Events APIXe Iaso1-13/+27
Signed-off-by: Xe Iaso <me@xeiaso.net>
2024-05-24pb: add mi definitionsXe Iaso1-1/+1
Signed-off-by: Xe Iaso <me@xeiaso.net>
2024-05-24internal/fly: add flyght tracker API clientXe Iaso1-0/+89
Signed-off-by: Xe Iaso <me@xeiaso.net>
2024-05-24cmd/xesite: rip out legacy mi integrationXe Iaso2-75/+0
Signed-off-by: Xe Iaso <me@xeiaso.net>
2024-05-10bring back the IRC announcerXe Iaso1-9/+111
Signed-off-by: Xe Iaso <me@xeiaso.net>
2024-02-24wire up the protofeed callXe Iaso6-0/+475
Signed-off-by: Xe Iaso <me@xeiaso.net>
2024-02-24internal/lume: don't nuke the repoXe Iaso1-4/+0
Signed-off-by: Xe Iaso <me@xeiaso.net>
2024-02-21internal/adminpb: fix a typoXe Iaso1-2/+2
Signed-off-by: Xe Iaso <me@xeiaso.net>
2024-02-20redirect christine.website to xeiaso.netXe Iaso3-29/+84
Signed-off-by: Xe Iaso <me@xeiaso.net>
2024-02-18add an external APIXe Iaso1-0/+24
Signed-off-by: Xe Iaso <me@xeiaso.net>
2024-02-12cmd/xesite: fix default patreon token urlXe Iaso1-8/+6
Signed-off-by: Xe Iaso <me@xeiaso.net>
2024-02-12cmd/patreon-saasproxy: use twirp/protobuf instead of yolo jsonXe Iaso5-11/+1848
Signed-off-by: Xe Iaso <me@xeiaso.net>
2024-01-28lume: update to Lume 2Xe Iaso1-4/+4
Signed-off-by: Xe Iaso <me@xeiaso.net>
2024-01-28internal: add validation for referers and accept-encodingXe Iaso3-2/+204
Signed-off-by: Xe Iaso <me@xeiaso.net>
2024-01-28internal/lume: don't capture metrics for paths that don't openXe Iaso1-1/+6
This fixes an issue where an attacker could create infinite cardinality in my prometheus server by sending a bunch of bogus GET requests. Metrics are only tracked for paths that make sense. Signed-off-by: Xe Iaso <me@xeiaso.net>
2024-01-28feat: use time tag for date (#760)scarf1-4/+2
* feat: use `time` tag * refactor: use `DATE_US` filter
2023-11-21track referersXe Iaso1-0/+23
Signed-off-by: Xe Iaso <me@xeiaso.net>
2023-10-28internal/lume: maintain an existing checkout of xesiteXe Iaso1-7/+38
Okay so one of the main problems with this existing setup is that it ended up recloning the GitHub repo every time the app booted. This made startup slow by however long it takes for GitHub to serve the repo to the client. This change intelligently reuses the existing local clone of the git repo so that it doesn't have to reclone every time. There is a caveat for this though, it still makes you have an extra clone of the repo in development mode. I'm going to accept this for now. Signed-off-by: Xe Iaso <me@xeiaso.net>
2023-10-28internal: fix patreon token renewalXe Iaso1-1/+2
Signed-off-by: Xe Iaso <me@xeiaso.net>
2023-10-27cmd/xesite: automatic rebuilding in development modeXe Iaso1-2/+2
Whenever changes are made to the website and development mode, automatically rebuild it for you. This should save me a lot of time. Signed-off-by: Xe Iaso <me@xeiaso.net>
2023-10-27internal/lume: start work on dynamically replacing the zip filesystem for ↵Xe Iaso2-1/+73
XeDN serving Signed-off-by: Xe Iaso <me@xeiaso.net>
2023-10-25internal: add middleware to track the use of accept-encoding headersXe Iaso1-0/+23
Signed-off-by: Xe Iaso <me@xeiaso.net>
2023-10-24move more assets to XeDN, reduce site zip furtherXe Iaso1-7/+104
This also compresses all compressible artifacts with gzip, enabling a future XeDN patch to serve xeiaso.net directly. This uses gzip in particular as an opportunistic speedhack for serving gzip directly to clients that accept gzipped files. Signed-off-by: Xe Iaso <me@xeiaso.net>
2023-10-22internal/lume: annotate website commit in footerXe Iaso1-6/+28
Signed-off-by: Xe Iaso <me@xeiaso.net>
2023-10-22Move serving logic to a .zip file, move static assets to S3 (#734)Xe Iaso2-34/+97
* lume/src/static: remove these files because we don't need them Also rename manifest.json to site.webmanifest because apparently that's the best practice. Signed-off-by: Xe Iaso <me@xeiaso.net> * lume: fix deno lock Signed-off-by: Xe Iaso <me@xeiaso.net> * lume/src/_components: small fixes Signed-off-by: Xe Iaso <me@xeiaso.net> * lume: move this big file to S3 Signed-off-by: Xe Iaso <me@xeiaso.net> * lume: move these static files to XeDN Signed-off-by: Xe Iaso <me@xeiaso.net> * internal/lume: store and serve the website from a .zip file This will let the website continue to serve data while a rebuild is happening. This also lets me download the website corpus for local debugging should the worst happen. Signed-off-by: Xe Iaso <me@xeiaso.net> --------- Signed-off-by: Xe Iaso <me@xeiaso.net>
2023-10-14internal/lume: oops lol set the post date to like forever agoXe Iaso1-0/+1
Signed-off-by: Xe Iaso <me@xeiaso.net>
2023-10-14internal/lume: make pages for post seriesXe Iaso1-0/+61
I'm probably reading something wrong in the documentation for Lume, but I wasn't able to find an obvious way to generate pages for each of the post series programmatically. This is a bit of a hacky workaround that makes the Lume driver write individual JSX files for each series defined in the Dhall source. It should work for my needs though. Signed-off-by: Xe Iaso <me@xeiaso.net>
2023-10-02bring back argv[0]Xe Iaso1-1/+2
Signed-off-by: Xe Iaso <me@xeiaso.net>
2023-10-02cmd/xesite: add mi poking when builds are doneXe Iaso2-0/+78
Signed-off-by: Xe Iaso <me@xeiaso.net>
2023-09-30Xesite V4 (#723)Xe Iaso9-0/+954
* scripts/ditherify: fix quoting Signed-off-by: Xe Iaso <me@xeiaso.net> * clean up some old files Signed-off-by: Xe Iaso <me@xeiaso.net> * import site into lume Signed-off-by: Xe Iaso <me@xeiaso.net> * initial go code Signed-off-by: Xe Iaso <me@xeiaso.net> * move vods index to top level Signed-off-by: Xe Iaso <me@xeiaso.net> * remove the ads Signed-off-by: Xe Iaso <me@xeiaso.net> * internal/lume: metrics Signed-off-by: Xe Iaso <me@xeiaso.net> * delete old code Signed-off-by: Xe Iaso <me@xeiaso.net> * load config into memory Signed-off-by: Xe Iaso <me@xeiaso.net> * autogenerate data from dhall config Signed-off-by: Xe Iaso <me@xeiaso.net> * various cleanups, import clackset logic Signed-off-by: Xe Iaso <me@xeiaso.net> * Update signalboost.dhall (#722) Added myself, and also fixed someone’s typo * Add Connor Edwards to signal boost (#721) * add cache headers Signed-off-by: Xe Iaso <me@xeiaso.net> * move command to xesite folder Signed-off-by: Xe Iaso <me@xeiaso.net> * xesite: listen for GitHub webhook push events Signed-off-by: Xe Iaso <me@xeiaso.net> * xesite: 5 minute timeout for rebuilding the site Signed-off-by: Xe Iaso <me@xeiaso.net> * xesite: add rebuild metrics Signed-off-by: Xe Iaso <me@xeiaso.net> * xesite: update default variables Signed-off-by: Xe Iaso <me@xeiaso.net> * don't commit binaries oops lol Signed-off-by: Xe Iaso <me@xeiaso.net> * lume: make search have a light background Signed-off-by: Xe Iaso <me@xeiaso.net> * add a notfound page Signed-off-by: Xe Iaso <me@xeiaso.net> * fetch info from patreon API Signed-off-by: Xe Iaso <me@xeiaso.net> * create contact page Signed-off-by: Xe Iaso <me@xeiaso.net> * Toot embedding Signed-off-by: Xe Iaso <me@xeiaso.net> * attempt a docker image Signed-off-by: Xe Iaso <me@xeiaso.net> * lume: fix deno lock Signed-off-by: Xe Iaso <me@xeiaso.net> * add gokrazy post Signed-off-by: Xe Iaso <me@xeiaso.net> * cmd/xesite: go up before trying to connect to the saas proxy Signed-off-by: Xe Iaso <me@xeiaso.net> * blog: add Sine post/demo Signed-off-by: Xe Iaso <me@xeiaso.net> --------- Signed-off-by: Xe Iaso <me@xeiaso.net> Co-authored-by: bri <284789+b-@users.noreply.github.com> Co-authored-by: Connor Edwards <38229097+cedws@users.noreply.github.com>
2019-12-09Within package layout (#102)Christine Dodrill15-910/+0
* blog: go package layout * eat my own dogfood * internal: test date * blog/go-package-layout: streamline * oops
2019-11-01Art gallery (#91)Christine Dodrill2-0/+24
* implement art gallery * update dates * gallery: update tags * gofmt * templates/gallerypost: add hashtags
2019-10-23okay oopsChristine Dodrill1-1/+1
2019-10-23cmd/site: change date format (#89)Christine Dodrill1-0/+10
* cmd/site: change date format * internal: begone comma
2019-09-12Series and tags (#74)Christine Dodrill1-0/+24
* initial support for tags and series * tagging support * oops * Update main.go
2019-05-25Revert "go.mod: bump to christine.website/v1 (#43)"Christine Dodrill3-3/+3
This reverts commit 901a870769598144b16ae04f2372a9a7df5c9ea8.
2019-05-25go.mod: bump to christine.website/v1 (#43)Christine Dodrill3-3/+3
2019-05-21add talks support (#40)Christine Dodrill2-5/+47
* add talks support * gosimplify
2019-03-27shadow errorsChristine Dodrill1-3/+3