Skip to content

Commit

Permalink
ci: Use GHA workflow for publishing pages site
Browse files Browse the repository at this point in the history
  • Loading branch information
jimmidyson committed Jan 25, 2024
1 parent 99a386e commit cc65643
Show file tree
Hide file tree
Showing 6 changed files with 86 additions and 68 deletions.
19 changes: 4 additions & 15 deletions .github/workflows/checks.yml
Original file line number Diff line number Diff line change
Expand Up @@ -19,12 +19,13 @@ on:
permissions:
contents: read

defaults:
run:
shell: bash

jobs:
unit-test:
runs-on: ubuntu-22.04
defaults:
run:
shell: bash
steps:
- name: Check out code
uses: actions/checkout@v4
Expand Down Expand Up @@ -55,9 +56,6 @@ jobs:

e2e-test:
runs-on: ubuntu-22.04
defaults:
run:
shell: bash
steps:
- name: Check out code
uses: actions/checkout@v4
Expand Down Expand Up @@ -103,9 +101,6 @@ jobs:

lint-go:
runs-on: ubuntu-22.04
defaults:
run:
shell: bash
steps:
- name: Check out code
uses: actions/checkout@v4
Expand Down Expand Up @@ -153,9 +148,6 @@ jobs:

pre-commit:
runs-on: ubuntu-22.04
defaults:
run:
shell: bash
steps:
- name: Check out code
uses: actions/checkout@v4
Expand Down Expand Up @@ -190,9 +182,6 @@ jobs:

lint-test-helm:
runs-on: ubuntu-22.04
defaults:
run:
shell: bash
steps:
- name: Checkout
uses: actions/checkout@v4
Expand Down
7 changes: 4 additions & 3 deletions .github/workflows/codeql-analysis.yml
Original file line number Diff line number Diff line change
Expand Up @@ -7,13 +7,14 @@ on:
schedule:
- cron: '32 21 * * 2'

defaults:
run:
shell: bash

jobs:
analyze:
name: Analyze
runs-on: ubuntu-22.04
defaults:
run:
shell: bash
permissions:
actions: read
contents: read
Expand Down
10 changes: 4 additions & 6 deletions .github/workflows/dependabot-automation.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -12,13 +12,14 @@ permissions:
pull-requests: write
contents: write

defaults:
run:
shell: bash

jobs:
auto-approve:
if: ${{ github.event.pull_request.user.login == 'dependabot[bot]' }}
runs-on: ubuntu-22.04
defaults:
run:
shell: bash
steps:
- name: Dependabot metadata
id: dependabot-metadata
Expand All @@ -39,9 +40,6 @@ jobs:
enable-automerge:
if: ${{ github.event.pull_request.user.login == 'dependabot[bot]'}}
runs-on: ubuntu-22.04
defaults:
run:
shell: bash
steps:
- name: Dependabot metadata
id: dependabot-metadata
Expand Down
7 changes: 4 additions & 3 deletions .github/workflows/devbox-update.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -12,13 +12,14 @@ permissions:
contents: write
pull-requests: write

defaults:
run:
shell: bash

jobs:
devbox-update:
if: github.ref_type == 'branch'
runs-on: ubuntu-22.04
defaults:
run:
shell: bash
env:
DESTINATION_BRANCH: scheduled-devbox-update-${{ github.ref_name }}
steps:
Expand Down
104 changes: 66 additions & 38 deletions .github/workflows/github-pages.yml
Original file line number Diff line number Diff line change
@@ -1,54 +1,82 @@
# Copyright 2023 D2iQ, Inc. All rights reserved.
# SPDX-License-Identifier: Apache-2.0

name: GitHub Pages
# Sample workflow for building and deploying a Hugo site to GitHub Pages
name: Deploy Hugo site to Pages

on:
# Runs on pushes targeting the default branch
push:
branches:
- main
pull_request:
# Allows you to run this workflow manually from the Actions tab
workflow_dispatch:

# Sets permissions of the GITHUB_TOKEN to allow deployment to GitHub Pages
permissions:
contents: read
pages: write
id-token: write

# Allow only one concurrent deployment, skipping runs queued between the run in-progress and latest queued.
# However, do NOT cancel in-progress runs as we want to allow these production deployments to complete.
concurrency:
group: "pages"
cancel-in-progress: false

# Default to bash
defaults:
run:
shell: bash
working-directory: ./docs

jobs:
deploy:
# Build job
build:
runs-on: ubuntu-22.04
defaults:
run:
shell: bash
permissions:
contents: write
concurrency:
group: ${{ github.workflow }}-${{ github.ref }}
cancel-in-progress: true
env:
HUGO_VERSION: 0.120.4
steps:
- uses: actions/checkout@v4
with:
fetch-depth: 0

- name: Setup Hugo
uses: peaceiris/actions-hugo@v2
with:
hugo-version: '0.117.0'
extended: true

- name: Setup Node
uses: actions/setup-node@v4
- name: Install Hugo CLI
run: |
wget -O "${{ runner.temp }}/hugo.deb https://github.com/gohugoio/hugo/releases/download/v${HUGO_VERSION}/hugo_extended_${HUGO_VERSION}_linux-amd64.deb" \
&& sudo dpkg -i ${{ runner.temp }}/hugo.deb
- name: Install Dart Sass
run: sudo snap install dart-sass
- name: Checkout
uses: actions/checkout@v4
with:
node-version: '18'
cache: 'npm'
cache-dependency-path: '**/package-lock.json'

- name: Install necessary packages
run: npm ci
working-directory: ./docs/

- name: Build
run: hugo --minify
working-directory: ./docs/

- name: Deploy
uses: peaceiris/actions-gh-pages@v3
submodules: recursive
- name: Setup Pages
id: pages
uses: actions/configure-pages@v4
- name: Install Node.js dependencies
run: if [[ -f package-lock.json || -f npm-shrinkwrap.json ]]; then npm ci; fi
- name: Build with Hugo
env:
# For maximum backward compatibility with Hugo modules
HUGO_ENVIRONMENT: production
HUGO_ENV: production
run: |
hugo \
--minify \
--baseURL "${{ steps.pages.outputs.base_url }}/"
- name: Upload artifact
if: github.ref == 'refs/heads/main'
uses: actions/upload-pages-artifact@v3
with:
github_token: ${{ secrets.GITHUB_TOKEN }}
publish_dir: ./docs/public
path: ./docs/public

# Deployment job
deploy:
environment:
name: github-pages
url: ${{ steps.deployment.outputs.page_url }}
runs-on: ubuntu-22.04
needs: build
if: github.ref == 'refs/heads/main'
steps:
- name: Deploy to GitHub Pages
id: deployment
uses: actions/deploy-pages@v4
7 changes: 4 additions & 3 deletions .github/workflows/release-tag.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -13,12 +13,13 @@ permissions:
contents: write
packages: write

defaults:
run:
shell: bash

jobs:
release-tag:
runs-on: ubuntu-22.04
defaults:
run:
shell: bash
steps:
- uses: actions/checkout@v4
with:
Expand Down

0 comments on commit cc65643

Please sign in to comment.