Compare commits
16 Commits
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
cd1d8b439d | ||
| fb2e87749c | |||
| 43f0f7b324 | |||
| eab6e0c31d | |||
| 805cb28185 | |||
| 54c82a7f79 | |||
| 9a62f867f1 | |||
|
|
f525567877 | ||
| 7c5356088c | |||
| 0bef13c414 | |||
|
|
eed90ee41d | ||
| 488822bb61 | |||
| 0dfcc25984 | |||
| 4c8665ebe2 | |||
| d083660f1c | |||
| e9a8b6de97 |
@@ -8,44 +8,7 @@ on:
|
||||
workflow_dispatch:
|
||||
|
||||
jobs:
|
||||
semantic-release:
|
||||
runs-on: ubuntu-js
|
||||
outputs:
|
||||
new-release-published: ${{ steps.semantic.outputs.new-release-published }}
|
||||
new-release-version: ${{ steps.semantic.outputs.new-release-version }}
|
||||
new-release-git-tag: ${{ steps.semantic.outputs.new-release-git-tag }}
|
||||
steps:
|
||||
- name: Checkout
|
||||
uses: actions/checkout@v6
|
||||
with:
|
||||
fetch-depth: 0
|
||||
token: ${{ secrets.BOT_TOKEN }}
|
||||
|
||||
- name: Set up Node
|
||||
uses: actions/setup-node@v6
|
||||
with:
|
||||
node-version: 24.14.0
|
||||
|
||||
- name: Set up Bun
|
||||
uses: oven-sh/setup-bun@v2
|
||||
with:
|
||||
bun-version: 1.3.10
|
||||
|
||||
- name: Install Dependencies
|
||||
run: bun install --frozen-lockfile
|
||||
|
||||
- name: Run Semantic Release
|
||||
id: semantic
|
||||
env:
|
||||
GITEA_TOKEN: ${{ secrets.BOT_TOKEN }}
|
||||
GITHUB_TOKEN: ${{ secrets.BOT_TOKEN }}
|
||||
NODE_PATH: ${{ github.workspace }}/node_modules
|
||||
run: |
|
||||
bun run semantic-release
|
||||
|
||||
build:
|
||||
needs: semantic-release
|
||||
if: ${{ needs.semantic-release.outputs.new-release-published == 'true' }}
|
||||
runs-on: ubuntu-js
|
||||
steps:
|
||||
- name: Checkout
|
||||
@@ -98,8 +61,6 @@ jobs:
|
||||
image: true
|
||||
|
||||
guarddog:
|
||||
needs: semantic-release
|
||||
if: ${{ needs.semantic-release.outputs.new-release-published == 'true' }}
|
||||
runs-on: ubuntu-js
|
||||
steps:
|
||||
- name: Checkout
|
||||
@@ -136,9 +97,45 @@ jobs:
|
||||
actions: '[{"action": "view", "label": "Open Gitea", "url": "https://gitea.alexlebens.dev/alexlebens/site-profile/actions?workflow=release-image.yaml", "clear": true}]'
|
||||
image: true
|
||||
|
||||
semantic-release:
|
||||
needs: [ build, guarddog ]
|
||||
runs-on: ubuntu-js
|
||||
outputs:
|
||||
new-release-published: ${{ steps.semantic.outputs.new-release-published }}
|
||||
new-release-version: ${{ steps.semantic.outputs.new-release-version }}
|
||||
new-release-git-tag: ${{ steps.semantic.outputs.new-release-git-tag }}
|
||||
steps:
|
||||
- name: Checkout
|
||||
uses: actions/checkout@v6
|
||||
with:
|
||||
fetch-depth: 0
|
||||
token: ${{ secrets.BOT_TOKEN }}
|
||||
|
||||
- name: Set up Node
|
||||
uses: actions/setup-node@v6
|
||||
with:
|
||||
node-version: 24.14.0
|
||||
|
||||
- name: Set up Bun
|
||||
uses: oven-sh/setup-bun@v2
|
||||
with:
|
||||
bun-version: 1.3.10
|
||||
|
||||
- name: Install Dependencies
|
||||
run: bun install --frozen-lockfile
|
||||
|
||||
- name: Run Semantic Release
|
||||
id: semantic
|
||||
env:
|
||||
GITEA_TOKEN: ${{ secrets.BOT_TOKEN }}
|
||||
GITHUB_TOKEN: ${{ secrets.BOT_TOKEN }}
|
||||
NODE_PATH: ${{ github.workspace }}/node_modules
|
||||
run: |
|
||||
bun run semantic-release
|
||||
|
||||
release-harbor:
|
||||
runs-on: ubuntu-js
|
||||
needs: [semantic-release, build, guarddog, ]
|
||||
needs: semantic-release
|
||||
if: ${{ needs.semantic-release.outputs.new-release-published == 'true' }}
|
||||
steps:
|
||||
- name: Checkout
|
||||
@@ -240,13 +237,10 @@ jobs:
|
||||
|
||||
release-gitea:
|
||||
runs-on: ubuntu-js
|
||||
needs: [ semantic-release, build, guarddog, release-harbor ]
|
||||
needs: [ semantic-release, release-harbor ]
|
||||
if: |
|
||||
always() &&
|
||||
needs.semantic-release.result == 'success' &&
|
||||
needs.semantic-release.outputs.new-release-published == 'true' &&
|
||||
needs.build.result == 'success' &&
|
||||
needs.guarddog.result == 'success'
|
||||
needs.semantic-release.outputs.new-release-published == 'true'
|
||||
steps:
|
||||
- name: Checkout
|
||||
uses: actions/checkout@v6
|
||||
|
||||
29
CHANGELOG.md
29
CHANGELOG.md
@@ -1,3 +1,32 @@
|
||||
# [3.10.0](https://gitea.alexlebens.dev/alexlebens/site-profile/compare/3.9.0...3.10.0) (2026-03-13)
|
||||
|
||||
|
||||
### Bug Fixes
|
||||
|
||||
* function needing paranthensis ([54c82a7](https://gitea.alexlebens.dev/alexlebens/site-profile/commit/54c82a7f79a335f8dfbe41cbaed7e784a0d80aa7))
|
||||
|
||||
|
||||
### Features
|
||||
|
||||
* add scripts to clear and run from scratch ([805cb28](https://gitea.alexlebens.dev/alexlebens/site-profile/commit/805cb281853edff06adaf4c62b7ae256a00bea3f))
|
||||
* disable prerender pending resoltuion of server island fix ([eab6e0c](https://gitea.alexlebens.dev/alexlebens/site-profile/commit/eab6e0c31dbd24470fa55409326d830a374f86cf))
|
||||
* test placing weather section below posts ([43f0f7b](https://gitea.alexlebens.dev/alexlebens/site-profile/commit/43f0f7b3248cead38e8f9a6ff0d9e411483e440c))
|
||||
|
||||
# [3.9.0](https://gitea.alexlebens.dev/alexlebens/site-profile/compare/3.8.0...3.9.0) (2026-03-13)
|
||||
|
||||
|
||||
### Features
|
||||
|
||||
* copy package.json ([0bef13c](https://gitea.alexlebens.dev/alexlebens/site-profile/commit/0bef13c414a00f5f7750d1db1db28d29b791394f))
|
||||
|
||||
# [3.8.0](https://gitea.alexlebens.dev/alexlebens/site-profile/compare/3.7.0...3.8.0) (2026-03-12)
|
||||
|
||||
|
||||
### Features
|
||||
|
||||
* disable security feature ([0dfcc25](https://gitea.alexlebens.dev/alexlebens/site-profile/commit/0dfcc2598401765a1899d407a8bc34e8c105adcf))
|
||||
* use alpine-dev for bun builder ([4c8665e](https://gitea.alexlebens.dev/alexlebens/site-profile/commit/4c8665ebe2527ff605f82451b2173dd0473aa840))
|
||||
|
||||
# [3.7.0](https://gitea.alexlebens.dev/alexlebens/site-profile/compare/3.6.0...3.7.0) (2026-03-12)
|
||||
|
||||
|
||||
|
||||
@@ -1,4 +1,6 @@
|
||||
FROM dhi.io/bun:1.3.10-debian13-dev AS builder
|
||||
ARG REGISTRY=dhi.io
|
||||
FROM ${REGISTRY}/bun:1.3.10-alpine3.22-dev AS builder
|
||||
|
||||
WORKDIR /app
|
||||
|
||||
COPY package.json bun.lock ./
|
||||
@@ -15,14 +17,14 @@ FROM build-deps AS build
|
||||
COPY . .
|
||||
RUN bun run build
|
||||
|
||||
FROM dhi.io/bun:1.3.10-alpine3.22 AS runtime
|
||||
FROM ${REGISTRY}/bun:1.3.10-alpine3.22 AS runtime
|
||||
WORKDIR /app
|
||||
COPY --from=prod-deps /app/node_modules /app/node_modules
|
||||
COPY --from=build /app/dist /app/dist
|
||||
|
||||
ARG APP_VERSION=latest
|
||||
ARG APP_VERSION
|
||||
|
||||
ENV NODE_ENV=production
|
||||
ENV HOST=0.0.0.0
|
||||
ENV PORT=4321
|
||||
|
||||
|
||||
@@ -13,8 +13,6 @@ import { getSiteURL } from './src/support/url';
|
||||
export default defineConfig({
|
||||
site: getSiteURL(),
|
||||
|
||||
security: { csp: true },
|
||||
|
||||
image: {
|
||||
remotePatterns: [
|
||||
{ protocol: 'https', hostname: '*.alexlebens.net' },
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
{
|
||||
"name": "site-profile",
|
||||
"type": "module",
|
||||
"version": "3.7.0",
|
||||
"version": "3.10.0",
|
||||
"homepage": "https://www.alexlebens.dev",
|
||||
"bugs": {
|
||||
"url": "https://gitea.alexlebens.dev/alexlebens/site-profile/issues",
|
||||
@@ -19,8 +19,10 @@
|
||||
},
|
||||
"scripts": {
|
||||
"dev": "astro dev",
|
||||
"full-dev": "rm -rf dist node_modules .astro && bun install && astro build && astro dev",
|
||||
"build": "astro build",
|
||||
"preview": "astro preview",
|
||||
"full-preview": "rm -rf dist node_modules .astro && bun install && astro build && astro preview",
|
||||
"astro": "astro",
|
||||
"format": "prettier --write \"**/*.{js,jsx,ts,tsx,md,mdx,astro}\"",
|
||||
"lint": "eslint \"src/**/*.{js,ts,jsx,tsx,astro}\"",
|
||||
|
||||
@@ -20,7 +20,7 @@ const { forecastDays, error } = await getFiveDayForecast(latitude, longitude, ti
|
||||
</div>
|
||||
{error ? (
|
||||
<div class="card-base p-10 text-accent text-center">
|
||||
Sorry, {error.toLowerCase}
|
||||
Sorry, {error.toLowerCase()}
|
||||
</div>
|
||||
) : (
|
||||
<div class="flex flex-wrap justify-center gap-4 lg:gap-6">
|
||||
|
||||
@@ -11,6 +11,10 @@ import GiteaSection from '@components/sections/GiteaSection.astro';
|
||||
import BaseLayout from '@layouts/BaseLayout.astro';
|
||||
import directus from '@lib/directus';
|
||||
|
||||
// Weather section server island does not seem to load under Astro 6, setting the whole page for server
|
||||
// side rendering for now.
|
||||
export const prerender = false
|
||||
|
||||
const global = await directus.request(readSingleton('site_global'));
|
||||
const weather = await directus.request(readSingleton('site_weather'));
|
||||
const posts = await directus.request(
|
||||
@@ -55,6 +59,12 @@ const recentPosts = posts
|
||||
|
||||
<FeatureSection />
|
||||
|
||||
<RecentPostsSection
|
||||
posts={recentPosts}
|
||||
title="Latest Posts"
|
||||
subTitle="Checkout my most recent thoughts here"
|
||||
/>
|
||||
|
||||
<WeatherSection
|
||||
server:defer
|
||||
latitude={weather.latitude}
|
||||
@@ -63,12 +73,6 @@ const recentPosts = posts
|
||||
timezone={weather.timezone}
|
||||
/>
|
||||
|
||||
<RecentPostsSection
|
||||
posts={recentPosts}
|
||||
title="Latest Posts"
|
||||
subTitle="Checkout my most recent thoughts here"
|
||||
/>
|
||||
|
||||
<GiteaSection
|
||||
title="Follow me on Gitea"
|
||||
subTitle="I love open source and have my code availabile on my Gitea server."
|
||||
|
||||
Reference in New Issue
Block a user