Add publish workflow
87
.github/workflows/publish.yml
vendored
Normal file
@@ -0,0 +1,87 @@
|
||||
name: Publish Hugo Site
|
||||
|
||||
on:
|
||||
push:
|
||||
branches:
|
||||
- main
|
||||
paths-ignore:
|
||||
- templates/**
|
||||
|
||||
workflow_run:
|
||||
workflows: ["Update Projects Page"]
|
||||
types:
|
||||
- completed
|
||||
|
||||
jobs:
|
||||
update_hugo_npm_dependencies:
|
||||
name: Update Hugo npm Dependencies
|
||||
runs-on: ubuntu-latest
|
||||
permissions:
|
||||
contents: write
|
||||
outputs:
|
||||
commit_hash: ${{ steps.commit_changes.outputs.commit_hash }}
|
||||
steps:
|
||||
- name: Checkout Repository
|
||||
uses: actions/checkout@v4
|
||||
|
||||
- name: Install Node
|
||||
uses: actions/setup-node@v4
|
||||
with:
|
||||
node-version: "18"
|
||||
|
||||
- name: Install Hugo
|
||||
uses: peaceiris/actions-hugo@v2
|
||||
with:
|
||||
hugo-version: "0.111.3"
|
||||
extended: true
|
||||
|
||||
- name: Write composite package.json
|
||||
run: hugo mod npm pack
|
||||
|
||||
- name: Install npm Packages
|
||||
run: npm install
|
||||
|
||||
- name: Display Changes
|
||||
run: git status
|
||||
|
||||
- name: Commit Changes
|
||||
id: commit_changes
|
||||
uses: stefanzweifel/git-auto-commit-action@v5
|
||||
with:
|
||||
commit_message: Update Hugo npm Dependencies
|
||||
|
||||
publish:
|
||||
name: Publish Hugo Site
|
||||
needs: update_hugo_npm_dependencies
|
||||
runs-on: ubuntu-latest
|
||||
permissions:
|
||||
contents: write
|
||||
steps:
|
||||
- name: Checkout Repository
|
||||
uses: actions/checkout@v4
|
||||
with:
|
||||
fetch-depth: 0
|
||||
ref: ${{ needs.update_hugo_npm_dependencies.outputs.commit_hash }}
|
||||
|
||||
- name: Install Node
|
||||
uses: actions/setup-node@v4
|
||||
with:
|
||||
node-version: "18"
|
||||
|
||||
- name: Install Hugo
|
||||
uses: peaceiris/actions-hugo@v2
|
||||
with:
|
||||
hugo-version: "0.111.3"
|
||||
extended: true
|
||||
|
||||
- name: Install npm Packages
|
||||
run: npm ci
|
||||
|
||||
- name: Build Hugo
|
||||
run: hugo --minify
|
||||
|
||||
- name: Deploy to GitHub Pages
|
||||
uses: peaceiris/actions-gh-pages@v3
|
||||
with:
|
||||
github_token: ${{ secrets.GITHUB_TOKEN }}
|
||||
publish_dir: ./public
|
3
.gitmodules
vendored
Normal file
@@ -0,0 +1,3 @@
|
||||
[submodule "themes/hugo-video"]
|
||||
path = themes/hugo-video
|
||||
url = https://github.com/martignoni/hugo-video.git
|
32
config.yaml
@@ -1,7 +1,9 @@
|
||||
baseurl: "https://davegallant.ca"
|
||||
languageCode: en-us
|
||||
baseURL: /
|
||||
googleAnalytics: G-V8WJDERTX9
|
||||
copyright: Dave Gallant
|
||||
enableGitInfo: true
|
||||
enableRobotsTXT: true
|
||||
noJSConfigInAssets: true
|
||||
|
||||
params:
|
||||
author: Dave Gallant
|
||||
@@ -20,6 +22,27 @@ params:
|
||||
username: davegallant
|
||||
repository: davegallant.github.io
|
||||
|
||||
prism:
|
||||
languages:
|
||||
- markup
|
||||
- css
|
||||
- clike
|
||||
- javascript
|
||||
- bash
|
||||
- csharp
|
||||
- hcl
|
||||
- ignore
|
||||
- json
|
||||
- markdown
|
||||
- powershell
|
||||
- toml
|
||||
- yaml
|
||||
plugins:
|
||||
- normalize-whitespace
|
||||
- toolbar
|
||||
- copy-to-clipboard
|
||||
- command-line
|
||||
|
||||
menu:
|
||||
main:
|
||||
- name: RSS
|
||||
@@ -29,6 +52,11 @@ menu:
|
||||
permalinks:
|
||||
post: "/blog/:year/:month/:day/:slug/"
|
||||
|
||||
markup:
|
||||
goldmark:
|
||||
renderer:
|
||||
unsafe: true
|
||||
|
||||
module:
|
||||
imports:
|
||||
- path: github.com/davegallant/hugo-theme-gruvbox
|
||||
|
10
content/about.md
Normal file
@@ -0,0 +1,10 @@
|
||||
---
|
||||
title: About
|
||||
weight: -210
|
||||
disable_comments: true
|
||||
hide_date: true
|
||||
---
|
||||
|
||||
I'm a software tinkerer with a passion for infrastructure, tooling, security, and coffee.
|
||||
|
||||
Feel free to reach out at [me@davegallant.ca](mailto:me@davegallant.ca).
|
@@ -11,7 +11,7 @@ There are a number of reasons why you might want to replace docker, especially o
|
||||
|
||||
<!--more-->
|
||||
|
||||
{{< tweet 1388586550682861568 >}}
|
||||
{{< tweet user="moyix" id="1388586550682861568" >}}
|
||||
|
||||
Docker has been one of the larger influencers in the container world, helping to standardize the [OCI Image Format Specification](https://github.com/opencontainers/image-spec/blob/main/spec.md). For many developers, containers have become synonymous with terms like `docker` and `Dockerfile` (a file containing build instructions for a container image). Docker has certainly made it very convenient to build and run containers, but it is not the only solution for doing so.
|
||||
|
||||
|
2
go.mod
@@ -1,6 +1,6 @@
|
||||
module davegallant.github.io
|
||||
|
||||
go 1.21.5
|
||||
go 1.23
|
||||
|
||||
require (
|
||||
github.com/davegallant/hugo-theme-gruvbox v0.0.0-20240102030224-3e3d39381e83 // indirect
|
||||
|
808
package-lock.json
generated
39
package.json
@@ -33,36 +33,43 @@
|
||||
}
|
||||
},
|
||||
"dependencies": {
|
||||
"@tabler/icons": "^2.44.0",
|
||||
"@tabler/icons": "^2.39.0",
|
||||
"flexsearch": "^0.7.31",
|
||||
"normalize.css": "^8.0.1",
|
||||
"prism-themes": "^1.9.0",
|
||||
"prismjs": "^1.29.0",
|
||||
"simple-icons": "^10.4.0",
|
||||
"simple-icons": "^9.19.0",
|
||||
"typeface-fira-code": "^1.1.13",
|
||||
"typeface-roboto-slab": "^1.1.13"
|
||||
},
|
||||
"devDependencies": {
|
||||
"@fullhuman/postcss-purgecss": "^5.0.0",
|
||||
"cssnano": "^6.0.2",
|
||||
"eslint": "^8.56.0",
|
||||
"eslint-config-prettier": "^9.1.0",
|
||||
"eslint-plugin-prettier": "^5.1.1",
|
||||
"cssnano": "^6.0.1",
|
||||
"eslint": "^8.52.0",
|
||||
"eslint-config-prettier": "^9.0.0",
|
||||
"eslint-plugin-prettier": "^5.0.1",
|
||||
"husky": "^8.0.3",
|
||||
"lint-staged": "^15.2.0",
|
||||
"markdownlint-cli": "^0.38.0",
|
||||
"postcss": "^8.4.32",
|
||||
"postcss-cli": "^11.0.0",
|
||||
"lint-staged": "^15.0.2",
|
||||
"markdownlint-cli": "^0.37.0",
|
||||
"postcss": "^8.4.31",
|
||||
"postcss-cli": "^10.1.0",
|
||||
"postcss-custom-media": "^10.0.2",
|
||||
"postcss-import": "^15.1.0",
|
||||
"postcss-nesting": "^12.0.2",
|
||||
"postcss-preset-env": "^9.3.0",
|
||||
"postcss-nesting": "^12.0.1",
|
||||
"postcss-preset-env": "^9.2.0",
|
||||
"postcss-url": "^10.1.3",
|
||||
"prettier": "^3.1.1",
|
||||
"prettier": "^3.0.3",
|
||||
"prettier-plugin-go-template": "^0.0.15",
|
||||
"stylelint": "^16.0.2",
|
||||
"stylelint-prettier": "^5.0.0"
|
||||
"stylelint": "^15.11.0",
|
||||
"stylelint-prettier": "^4.0.2"
|
||||
},
|
||||
"name": "davegallant.github.io",
|
||||
"version": "0.1.0"
|
||||
"version": "0.1.0",
|
||||
"scripts": {
|
||||
"lint": "npm run lint:css && npm run lint:js && npm run lint:md",
|
||||
"lint:css": "stylelint --fix **/*.css",
|
||||
"lint:js": "eslint --fix --ext js .",
|
||||
"lint:md": "markdownlint --fix **/*.md",
|
||||
"prepare": "husky install"
|
||||
}
|
||||
}
|
||||
|
@@ -1 +0,0 @@
|
||||
davegallant.ca
|
Before Width: | Height: | Size: 3.8 KiB |
Before Width: | Height: | Size: 9.6 KiB |
Before Width: | Height: | Size: 3.6 KiB |
Before Width: | Height: | Size: 69 KiB |
Before Width: | Height: | Size: 13 KiB |
Before Width: | Height: | Size: 3.3 KiB |
Before Width: | Height: | Size: 27 KiB |
Before Width: | Height: | Size: 6.6 KiB |
Before Width: | Height: | Size: 42 KiB |
Before Width: | Height: | Size: 10 KiB |
Before Width: | Height: | Size: 157 KiB |
Before Width: | Height: | Size: 19 KiB |
Before Width: | Height: | Size: 5.2 KiB |
Before Width: | Height: | Size: 41 KiB |
Before Width: | Height: | Size: 12 KiB |
Before Width: | Height: | Size: 66 KiB |
Before Width: | Height: | Size: 20 KiB |
Before Width: | Height: | Size: 117 KiB |
Before Width: | Height: | Size: 27 KiB |
Before Width: | Height: | Size: 7.5 KiB |
Before Width: | Height: | Size: 54 KiB |
Before Width: | Height: | Size: 16 KiB |
Before Width: | Height: | Size: 79 KiB |
Before Width: | Height: | Size: 27 KiB |
Before Width: | Height: | Size: 30 KiB |
Before Width: | Height: | Size: 7.8 KiB |
Before Width: | Height: | Size: 1.7 KiB |
Before Width: | Height: | Size: 16 KiB |
Before Width: | Height: | Size: 4.1 KiB |
Before Width: | Height: | Size: 25 KiB |
Before Width: | Height: | Size: 7.4 KiB |
Before Width: | Height: | Size: 52 KiB |
Before Width: | Height: | Size: 30 KiB |
Before Width: | Height: | Size: 4.4 KiB |
Before Width: | Height: | Size: 47 KiB |
Before Width: | Height: | Size: 7.3 KiB |
Before Width: | Height: | Size: 33 KiB |
Before Width: | Height: | Size: 7.4 KiB |
Before Width: | Height: | Size: 2.4 KiB |
Before Width: | Height: | Size: 14 KiB |
Before Width: | Height: | Size: 5.1 KiB |
Before Width: | Height: | Size: 22 KiB |
Before Width: | Height: | Size: 7.9 KiB |
Before Width: | Height: | Size: 42 KiB |
Before Width: | Height: | Size: 8.6 KiB |
Before Width: | Height: | Size: 2.8 KiB |
Before Width: | Height: | Size: 17 KiB |
Before Width: | Height: | Size: 5.8 KiB |
Before Width: | Height: | Size: 27 KiB |
Before Width: | Height: | Size: 9.4 KiB |
Before Width: | Height: | Size: 36 KiB |
Before Width: | Height: | Size: 36 KiB |
Before Width: | Height: | Size: 7.7 KiB |
Before Width: | Height: | Size: 2.7 KiB |
Before Width: | Height: | Size: 15 KiB |
Before Width: | Height: | Size: 5.2 KiB |
Before Width: | Height: | Size: 24 KiB |
Before Width: | Height: | Size: 8.4 KiB |
Before Width: | Height: | Size: 7.7 KiB |
Before Width: | Height: | Size: 2.7 KiB |
Before Width: | Height: | Size: 15 KiB |
Before Width: | Height: | Size: 5.3 KiB |
Before Width: | Height: | Size: 24 KiB |
Before Width: | Height: | Size: 8.6 KiB |
Before Width: | Height: | Size: 90 KiB |
Before Width: | Height: | Size: 21 KiB |
Before Width: | Height: | Size: 5.8 KiB |
Before Width: | Height: | Size: 45 KiB |
Before Width: | Height: | Size: 14 KiB |
Before Width: | Height: | Size: 68 KiB |
Before Width: | Height: | Size: 24 KiB |
Before Width: | Height: | Size: 935 KiB |
Before Width: | Height: | Size: 66 KiB |
Before Width: | Height: | Size: 9.1 KiB |
Before Width: | Height: | Size: 149 KiB |
Before Width: | Height: | Size: 20 KiB |
Before Width: | Height: | Size: 248 KiB |
Before Width: | Height: | Size: 32 KiB |
Before Width: | Height: | Size: 86 KiB |
Before Width: | Height: | Size: 12 KiB |
Before Width: | Height: | Size: 2.9 KiB |