Skip to content

Test Publish Action

Test Publish Action #2

Workflow file for this run

name: Test Publish Action
on:
push:
branches: [main]
workflow_dispatch:
permissions:
contents: write
jobs:
test-publish:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v6
- uses: ./setup
with:
version: release
# Generate website content from README files
- name: Generate Quarto site
run: |
# Create working directory structure
mkdir -p _site_source
# Copy Quarto config
cp .github/docs/_quarto.yml _site_source/
# Define repo URL for link fixing
REPO_URL="https://github.com/quarto-dev/quarto-actions"
# Function to fix links in a README
fix_readme_links() {
local file=$1
# First: Fix known action page links to point to site pages
sed -i \
-e 's|\](./setup)|\](setup.qmd)|g' \
-e 's|\](./render)|\](render.qmd)|g' \
-e 's|\](./publish)|\](publish.qmd)|g' \
"$file"
# Second: All remaining ./ links point to GitHub
sed -i "s|\](./|\](${REPO_URL}/tree/main/|g" "$file"
}
# Copy and fix main README
cp README.md _site_source/
fix_readme_links _site_source/README.md
# Copy and fix action READMEs
cp setup/README.md _site_source/setup-readme.md
fix_readme_links _site_source/setup-readme.md
cp render/README.md _site_source/render-readme.md
fix_readme_links _site_source/render-readme.md
cp publish/README.md _site_source/publish-readme.md
fix_readme_links _site_source/publish-readme.md
# Generate index.qmd
cat > _site_source/index.qmd <<'EOF'
---
title: "Quarto Actions"
---
This site demonstrates the quarto-actions and tests the publish action.
{{< include README.md >}}
EOF
# Generate action pages
cat > _site_source/setup.qmd <<'EOF'
---
title: "Setup Action"
---
{{< include setup-readme.md >}}
EOF
cat > _site_source/render.qmd <<'EOF'
---
title: "Render Action"
---
{{< include render-readme.md >}}
EOF
cat > _site_source/publish.qmd <<'EOF'
---
title: "Publish Action"
---
{{< include publish-readme.md >}}
EOF
# Test the publish action
- uses: ./publish
with:
target: gh-pages
path: _site_source
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}