Skip to content

Latest commit

 

History

History
166 lines (117 loc) · 10.1 KB

File metadata and controls

166 lines (117 loc) · 10.1 KB

Icon GitHub Action: Build a Jekyll site

Build a Jekyll site

Marketplace Release License Stars PRs Welcome GitHub Verified Creator

Overview

Builds a Jekyll site from source files with automatic asset management and link rewriting.

Main steps performed by this action:

  1. Site Preparation: Creates the site directory (configurable via site-path) and generates _config.yml with the specified theme
  2. Index Page Creation: Converts README.md to index.md with Jekyll front matter if index doesn't exist
  3. Additional Pages Processing: Processes pages (Markdown or HTML) matching the pages input pattern, creating Jekyll pages with proper structure
  4. Asset Management: Copies images and media files referenced by pages plus any files matched by assets input into assets/, rewriting references in Markdown and HTML
  5. Link Rewriting: Updates internal page links to maintain correct navigation after Jekyll structure transformation
  6. Jekyll Build: Executes official Jekyll build process to generate the final static site

Usage

- uses: hoverkraft-tech/ci-github-publish/actions/deploy/jekyll@84d583ba7b357f9476707f54cf5419d630ae0145 # 0.26.2
  with:
    # The Jekyll theme to use for the site.
    # Default: `jekyll-theme-cayman`
    theme: jekyll-theme-cayman

    # The Jekyll pages path to build.
    # Supports glob patterns and multiple paths (one per line).
    # Accepts Markdown (`.md`, `.markdown`) and HTML (`.html`, `.htm`) files.
    #
    # ```yml
    # pages: |
    # docs/**/*.md
    # .github/workflows/*.md
    # actions/*/README.md
    # ```
    pages: ""

    # Additional files to copy into the generated `assets/` directory.
    # Supports glob patterns and multiple paths (one per line).
    #
    # ```yml
    # assets: |
    # css/**
    # images/**
    # media/**/*.png
    # ```
    assets: ""

    # The working directory where the prepared Jekyll site is written. Relative to the workspace.
    # Defaults to `_site`.
    #
    # Default: `_site`
    site-path: _site

    # The destination directory for the built site assets. Relative to the workspace. Defaults to `build` when not set.
    #
    # Default: `build`
    build-path: build

Inputs

Input Description Required Default
theme The Jekyll theme to use for the site. false jekyll-theme-cayman
pages The Jekyll pages path to build. false -
Supports glob patterns and multiple paths (one per line).
Accepts Markdown (.md, .markdown) and HTML (.html, .htm) files.
pages: |
 docs/**/*.md
 .github/workflows/*.md
 actions/*/README.md
assets Additional files to copy into the generated assets/ directory. false -
Supports glob patterns and multiple paths (one per line).
assets: |
 css/**
 images/**
 media/**/*.png
site-path The working directory where the prepared Jekyll site is written. Relative to the workspace. false _site
Defaults to _site.
build-path The destination directory for the built site assets. Relative to the workspace. Defaults to build when not set. false build

Outputs

Output Description
build-path The path to the built site assets.

Contributing

Contributions are welcome! Please see the contributing guidelines for more details.

License

This project is licensed under the MIT License.

SPDX-License-Identifier: MIT

Copyright © 2026 hoverkraft

For more details, see the license.


This documentation was automatically generated by CI Dokumentor.