Skip to content

Latest commit

 

History

History
57 lines (44 loc) · 3.08 KB

File metadata and controls

57 lines (44 loc) · 3.08 KB

Deploy Astro to Zip File

This action for Astro builds your static Astro project and uploads the output directory as a zipped build artifact.

For more information on configuring Astro builds, please see the Astro Documentation.

Usage

Inputs

  • path - Optional: the root location of your Astro project inside the repository. Defaults to ..
  • node-version - Optional: the specific version of Node that should be used to build your site. Defaults to 24.
  • package-manager - Optional: the Node package manager that should be used to install dependencies and build your site. Automatically detected based on your lockfile. Accepted values: npm, yarn, pnpm, bun, and deno. A version tag is also accepted, for example npm@11.6.2, pnpm@10, bun@latest, or deno@v2.x. If not provided, version will default to latest.
  • build-cmd - Optional: the command to run to build your site. Defaults to deno task build for sites using Deno and to <package-manager> run build for all other package managers.
  • cache - Optional: enable Astro build cache to speed up subsequent builds. Caches optimized images and other build assets. Defaults to true.
  • cache-dir - Optional: path to the Astro cache directory (relative to path). Defaults to node_modules/.astro. Only used when cache is true.
  • out-dir - Optional: path to the output directory created by the build (relative to path). Defaults to dist.
  • artifact-name - Optional: the name of the zip file/artifact to produce. Defaults to astro-build.

Example workflow:

Build and Archive

Create a file at .github/workflows/build-and-archive.yml with the following content:

name: Build and Archive Astro Site

on:
  # Trigger the workflow every time you push to the `main` branch
  # Using a different branch name? Replace `main` with your branch’s name
  push:
    branches: [main]
  # Allows you to run this workflow manually from the Actions tab on GitHub.
  workflow_dispatch:

permissions:
  contents: read

jobs:
  build:
    runs-on: ubuntu-latest
    steps:
      - name: Checkout your repository using git
        uses: actions/checkout@v7

      - name: Install, build, and zip your site output
        uses: keithnet/astroaction@v6
        # with:
          # path: . # The root location of your Astro project inside the repository. (optional)
          # node-version: 24 # The specific version of Node that should be used to build your site. Defaults to 24. (optional)
          # package-manager: pnpm@latest # Package manager to use. Automatically detected by default. (optional)
          # build-cmd: pnpm run build # Custom build command. (optional)
          # cache: true # Enable Astro build caching. Defaults to true. (optional)
          # cache-dir: node_modules/.astro # Path to Astro cache directory. (optional)
          # out-dir: dist # The output directory created by the build command. Defaults to dist. (optional)
          # artifact-name: astro-build # The name of the downloaded zip artifact. Defaults to astro-build. (optional)