- Changed portfolio categories to contain more projects.
Some checks are pending
Node.js CI / build_image (push) Blocked by required conditions
Some checks are pending
Node.js CI / build_image (push) Blocked by required conditions
- Changed gitea workflow to only build to docker
This commit is contained in:
parent
aa75895db4
commit
a8ad93210a
@ -1,37 +1,33 @@
|
||||
name: Node.js CI
|
||||
on: [push]
|
||||
jobs:
|
||||
build_app:
|
||||
# build_app:
|
||||
|
||||
runs-on: ubuntu-latest
|
||||
# runs-on: ubuntu-latest
|
||||
|
||||
steps:
|
||||
- uses: actions/checkout@v4
|
||||
- name: Use Node.js
|
||||
uses: actions/setup-node@v4
|
||||
with:
|
||||
node-version: '20.x'
|
||||
- run: npm ci
|
||||
- run: npm run build --production --if-present
|
||||
# steps:
|
||||
# - uses: actions/checkout@v4
|
||||
# - name: Use Node.js
|
||||
# uses: actions/setup-node@v4
|
||||
# with:
|
||||
# node-version: '20.x'
|
||||
# - run: npm ci
|
||||
# - run: npm run build --production --if-present
|
||||
build_image:
|
||||
needs: build_app
|
||||
runs-on: ubuntu-latest
|
||||
steps:
|
||||
-
|
||||
name: Set up QEMU
|
||||
- name: Set up QEMU
|
||||
uses: docker/setup-qemu-action@v3
|
||||
-
|
||||
name: Set up Docker Buildx
|
||||
- name: Set up Docker Buildx
|
||||
uses: docker/setup-buildx-action@v3
|
||||
-
|
||||
name: Login to gitea registry
|
||||
- name: Login to gitea registry
|
||||
uses: docker/login-action@v3
|
||||
with:
|
||||
registry: gitea.rannes.dev
|
||||
username: 'christian'
|
||||
password: '42e55f16fe0008a71fb5acc6ab674c9776b2df6f'
|
||||
-
|
||||
name: Build and push
|
||||
username: ${{ secrets.REGISTRY_USERNAME }}
|
||||
password: ${{ secrets.REGISTRY_TOKEN }}
|
||||
- name: Build and push
|
||||
uses: docker/build-push-action@v5
|
||||
with:
|
||||
push: true
|
||||
|
@ -1,29 +1,28 @@
|
||||
<script>
|
||||
import { blur, fade } from "svelte/transition";
|
||||
import "../app.css";
|
||||
import { blur, fade } from 'svelte/transition';
|
||||
import '../app.css';
|
||||
import ThemeSwitch from '$lib/ThemeSwitch.svelte';
|
||||
import '../app.css';
|
||||
import CloudflareAnalytics from "../lib/CloudflareAnalytics.svelte";
|
||||
|
||||
import CloudflareAnalytics from '../lib/CloudflareAnalytics.svelte';
|
||||
|
||||
// Navigation links are generated based on this object
|
||||
const nav = [
|
||||
{
|
||||
name: "index",
|
||||
subPages: [],
|
||||
name: 'index',
|
||||
subPages: []
|
||||
},
|
||||
{
|
||||
name: "whoami",
|
||||
subPages: ["about", "resume"],
|
||||
name: 'whoami',
|
||||
subPages: ['about', 'resume']
|
||||
},
|
||||
{
|
||||
name: "portfolio",
|
||||
subPages: ["learnings", "portfolio_project", "next.js_weather", "homelab"],
|
||||
name: 'portfolio',
|
||||
subPages: ['learnings', 'svelte', 'next.js', 'homelab']
|
||||
},
|
||||
{
|
||||
name: "contact",
|
||||
subPages: ["get_in_touch", "socials"],
|
||||
},
|
||||
name: 'contact',
|
||||
subPages: ['get_in_touch', 'socials']
|
||||
}
|
||||
];
|
||||
|
||||
let selected = nav[0]; // keep track of the selected 'page' object.
|
||||
@ -35,29 +34,44 @@
|
||||
intSelected = event.srcElement.id;
|
||||
}
|
||||
</script>
|
||||
|
||||
<CloudflareAnalytics />
|
||||
<nav class="nav-container h-32 w-full mt-12">
|
||||
<ul class="text-center">
|
||||
{#each nav as main,i}
|
||||
{#each nav as main, i}
|
||||
{#if i != 0}
|
||||
{#if !nav[i].subPages[0]}
|
||||
<li class="nav-item font-jose inline-block"><a href={main.name} class={selected==nav[i] ? "nav-link text-2xl p-3" : "nav link text-2xl p-3"} on:click={changeComponent} id={i} >{main.name}</a></li>
|
||||
<li class="nav-item font-jose inline-block">
|
||||
<a
|
||||
href={main.name}
|
||||
class={selected == nav[i] ? 'nav-link text-2xl p-3' : 'nav link text-2xl p-3'}
|
||||
on:click={changeComponent}
|
||||
id={i}>{main.name}</a
|
||||
>
|
||||
</li>
|
||||
{:else}
|
||||
<li class="nav-item font-jose inline-block"><button class={selected==nav[i] ? "nav-link text-2xl p-3" : "nav link text-2xl p-3"} on:click={changeComponent} id={i} >{main.name}</button></li>
|
||||
<li class="nav-item font-jose inline-block">
|
||||
<button
|
||||
class={selected == nav[i] ? 'nav-link text-2xl p-3' : 'nav link text-2xl p-3'}
|
||||
on:click={changeComponent}
|
||||
id={i}>{main.name}</button
|
||||
>
|
||||
</li>
|
||||
{/if}
|
||||
{/if}
|
||||
{/each}
|
||||
</ul>
|
||||
<hr class="nav-divider max-w-xl h-0.5 border-0 mx-auto bg-black rounded dark:bg-stone-100"/>
|
||||
<hr class="nav-divider max-w-xl h-0.5 border-0 mx-auto bg-black rounded dark:bg-stone-100" />
|
||||
{#key selected}
|
||||
<ul in:blur={{ delay: 250 }} out:blur={{ duration: 250 }} class="text-center h-4 my-1">
|
||||
{#each selected.subPages as subPage}
|
||||
<li class="sub-nav-item inline-block font-jose"><a class="sub-nav-link text-xl p-2"href={(subPage)}>{subPage.replace(/_/g, ' ')}</a></li>
|
||||
<li class="sub-nav-item inline-block font-jose">
|
||||
<a class="sub-nav-link text-xl p-2" href={subPage}>{subPage.replace(/_/g, ' ')}</a>
|
||||
</li>
|
||||
{/each}
|
||||
|
||||
</ul>
|
||||
{/key}
|
||||
<li><ThemeSwitch class=""/></li>
|
||||
<ThemeSwitch />
|
||||
</nav>
|
||||
<div class="container text-center w-3/4 mx-auto">
|
||||
<slot />
|
||||
|
Loading…
Reference in New Issue
Block a user