Compare commits
6 Commits
basementhu
...
master
Author | SHA1 | Date |
---|---|---|
|
bf0374ec70 | |
|
914ce34521 | |
|
313bc6805e | |
|
59ef8ff5ad | |
|
f04323c694 | |
|
84aee99b4e |
|
@ -26,9 +26,17 @@ pipeline {
|
|||
sh '. ci/build.sh'
|
||||
}
|
||||
}
|
||||
post {
|
||||
success {
|
||||
archiveArtifacts 'dustin.web.tar.xz'
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
stage('Publish') {
|
||||
when {
|
||||
branch 'master'
|
||||
}
|
||||
steps {
|
||||
container('rsync') {
|
||||
sshagent(['jenkins-web']) {
|
||||
|
|
|
@ -1,7 +1,10 @@
|
|||
python3 -m pip install --user ruamel.yaml
|
||||
python3 /dev/fd/3 < songquotes.yml > public/songquotes.json 3<<EOF
|
||||
from ruamel.yaml import safe_load as load
|
||||
from ruamel.yaml import YAML
|
||||
from json import dump
|
||||
import sys
|
||||
dump(load(sys.stdin), sys.stdout)
|
||||
yaml = YAML()
|
||||
dump(yaml.load(sys.stdin), sys.stdout)
|
||||
EOF
|
||||
|
||||
tar -cJf dustin.web.tar.xz -C public .
|
||||
|
|
|
@ -5,16 +5,19 @@ spec:
|
|||
- name: zola
|
||||
image: git.pyrocufflink.net/containerimages/zola
|
||||
- name: python
|
||||
image: docker.io/python:3.10
|
||||
image: docker.io/python:3
|
||||
command:
|
||||
- python
|
||||
args:
|
||||
- -c
|
||||
- import signal; signal.pause()
|
||||
- |-
|
||||
import signal
|
||||
signal.signal(signal.SIGTERM, lambda x, y: None)
|
||||
signal.pause()
|
||||
- name: rsync
|
||||
image: git.pyrocufflink.net/containerimages/rsync
|
||||
command:
|
||||
- python3
|
||||
args:
|
||||
- -c
|
||||
- import signal; signal.pause()
|
||||
volumeMounts:
|
||||
- mountPath: /etc/ssh/ssh_known_hosts
|
||||
name: volume-0
|
||||
subPath: ssh_known_hosts
|
||||
readOnly: true
|
||||
|
|
|
@ -1,28 +0,0 @@
|
|||
+++
|
||||
title = "Basement HUD"
|
||||
page_template = "project-page.html"
|
||||
description = "Wall-mounted dual-monitor heads-up display powered by a network-booted Raspberry Pi CM 4"
|
||||
|
||||
[extra]
|
||||
image = "projects/basementhud/hud-photo01.jpg"
|
||||
+++
|
||||
|
||||
|
||||
{{ resize_image(
|
||||
path="projects/basementhud/hud-photo01.jpg",
|
||||
width=400,
|
||||
height=0,
|
||||
op="fit_width",
|
||||
alt="A photo of two monitors mounted on the wall",
|
||||
title="The HUD on the Wall!"
|
||||
link="hud-photo01.jpg"
|
||||
style="float: right; padding-left: 1em"
|
||||
) }} There are several things I want to keep an eye on throughout the day. I
|
||||
have a couple of Grafana dashboards that I like to have open all the time, but
|
||||
that just seems like a waste of screen real estate!
|
||||
|
||||
Since they basically give away 1080p monitors at Microcenter, I decided it would
|
||||
be fun and interesting to hang a couple of them on the wall. That way, I can
|
||||
see my dashboards all the time, without taking away one of my desktop monitors.
|
||||
|
||||
<div style="clear: both"></div>
|
|
@ -1,3 +0,0 @@
|
|||
+++
|
||||
title = "Hardware"
|
||||
+++
|
Binary file not shown.
Before Width: | Height: | Size: 4.6 MiB |
Binary file not shown.
Before Width: | Height: | Size: 33 KiB After Width: | Height: | Size: 112 KiB |
|
@ -353,7 +353,6 @@ article.post .post-date {
|
|||
width: 100%;
|
||||
background-color: $panel-color-dark;
|
||||
margin: 0.75em;
|
||||
padding: 0 0.75em;
|
||||
box-shadow: 0 1px 3px rgba(0, 0, 0, 0.12), 0 1px 2px rgba(0, 0, 0, 0.24);
|
||||
transition: all 0.3s cubic-bezier(0.25, 0.8, 0.25, 1);
|
||||
}
|
||||
|
@ -376,14 +375,24 @@ article.post .post-date {
|
|||
|
||||
.project-card a {
|
||||
text-decoration: none;
|
||||
display: flex;
|
||||
flex-direction: column;
|
||||
}
|
||||
|
||||
.project-card h2 {
|
||||
text-align: center;
|
||||
margin: 0.75em;
|
||||
font-size: 1.1em;
|
||||
}
|
||||
|
||||
.project-card img {
|
||||
max-width: 100%;
|
||||
width: 100%;
|
||||
aspect-ratio: 640 / 480;
|
||||
object-fit: cover;
|
||||
}
|
||||
|
||||
.project-card p {
|
||||
margin: 0.75em;
|
||||
}
|
||||
|
||||
/* CV */
|
||||
|
|
|
@ -1,37 +1,41 @@
|
|||
{% extends "base.html" %}
|
||||
{% macro project_card(path, permalink, title, description, image_path) %}
|
||||
<div class="project-card">
|
||||
<a href="{{ permalink }}">
|
||||
{% if image_path is defined %}
|
||||
{% set image = resize_image(path=image_path, width=640, height=480, op="fit") %}
|
||||
<img src="{{ image.url }}" />
|
||||
{% else %}
|
||||
<img src="//picsum.photos/seed/{{ path | slugify }}/320/240" />
|
||||
{% endif %}
|
||||
<h2>{{ title }}</h2>
|
||||
<p>{{ description }}</p>
|
||||
</a>
|
||||
</div>
|
||||
{% endmacro %}
|
||||
{% block content %}
|
||||
<article class="post panel">
|
||||
<h1 class="post-title">{{ section.title }}</h1>
|
||||
{{ section.content | safe }}
|
||||
<div class="project-cards">
|
||||
{% for path in section.subsections %}
|
||||
<div class="project-card">
|
||||
{% set sect = get_section(path=path) %}
|
||||
<a href="{{ sect.permalink }}">
|
||||
<h2>{{ sect.title }}</h2>
|
||||
{% if sect.extra.image is defined %}
|
||||
{% set image = resize_image(path=sect.extra.image, width=640, height=480, op="fit") %}
|
||||
<img src="{{ image.url }}" />
|
||||
{% else %}
|
||||
<img src="//picsum.photos/seed/{{ path | slugify }}/320/240" />
|
||||
{% endif %}
|
||||
<p>{{ sect.description }}</p>
|
||||
</a>
|
||||
</div>
|
||||
{{ self::project_card(
|
||||
path=path,
|
||||
permalink=sect.permalink,
|
||||
title=sect.title,
|
||||
description=sect.description,
|
||||
image_path=sect.extra.image,
|
||||
) }}
|
||||
{% endfor %}
|
||||
{% for page in section.pages %}
|
||||
<div class="project-card">
|
||||
<a href="{{ page.permalink }}">
|
||||
<h2>{{ page.title }}</h2>
|
||||
{% if page.extra.image is defined %}
|
||||
{% set image = resize_image(path=page.extra.image, width=640, height=480, op="fit") %}
|
||||
<img src="{{ image.url }}" />
|
||||
{% else %}
|
||||
<img src="//picsum.photos/seed/{{ page.path | slugify }}/320/240" />
|
||||
{% endif %}
|
||||
<p>{{ page.description }}</p>
|
||||
</a>
|
||||
</div>
|
||||
{{ self::project_card(
|
||||
path=page.path,
|
||||
permalink=page.permalink,
|
||||
title=page.title,
|
||||
description=page.description,
|
||||
image_path=page.extra.image,
|
||||
) }}
|
||||
{% endfor %}
|
||||
</div>
|
||||
</article>
|
||||
|
|
Loading…
Reference in New Issue