Add publish workflow

This commit is contained in:
Dave Gallant
2024-01-02 09:33:25 -05:00
parent 66cff08323
commit 789cae3baa
331 changed files with 745 additions and 2087 deletions

87
.github/workflows/publish.yml vendored Normal file
View 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
View File

@@ -0,0 +1,3 @@
[submodule "themes/hugo-video"]
path = themes/hugo-video
url = https://github.com/martignoni/hugo-video.git

View File

@@ -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
View 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).

View File

@@ -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
View File

@@ -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

810
package-lock.json generated

File diff suppressed because it is too large Load Diff

View File

@@ -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"
}
}

File diff suppressed because one or more lines are too long

View File

@@ -1 +0,0 @@
davegallant.ca

Binary file not shown.

Before

Width:  |  Height:  |  Size: 3.8 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 9.6 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 3.6 KiB

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

Binary file not shown.

Before

Width:  |  Height:  |  Size: 69 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 157 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 117 KiB

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

Binary file not shown.

Before

Width:  |  Height:  |  Size: 30 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 52 KiB

File diff suppressed because one or more lines are too long

Binary file not shown.

Before

Width:  |  Height:  |  Size: 33 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 42 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 36 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 36 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 90 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 935 KiB

File diff suppressed because one or more lines are too long

Binary file not shown.

Before

Width:  |  Height:  |  Size: 86 KiB

Some files were not shown because too many files have changed in this diff Show More