Skip to content

Initial pre commit setup #60

Initial pre commit setup

Initial pre commit setup #60

Workflow file for this run

---
# This workflow installs dependencies for PDF generation, generates the PDF,
# and uploads the PDF as an artifact.
name: Build Document PDF
on:
push:
branches:
- main
pull_request:
branches:
- main
workflow_dispatch:
inputs:
create_release:
description: Create a new Docs Dev Guide release if set to true
required: false
default: 'false'
target_branch:
description: Target Branch
required: true
default: main
release_notes:
description: Release Notes
required: false
jobs:
build:
runs-on: ubuntu-latest
steps:
- name: Checkout repository
uses: actions/checkout@v3
# Set the short SHA for use in artifact names
- name: Set short SHA
run: echo "SHORT_SHA=$(echo ${GITHUB_SHA::7})" >> $GITHUB_ENV
# Get the current date
- name: Get current date
run: echo "CURRENT_DATE=$(date +'%Y-%m-%d')" >> $GITHUB_ENV
# Pull the latest RISC-V Docs container image
# https://github.com/riscv/riscv-docs-base-container-image
# https://hub.docker.com/r/riscvintl/riscv-docs-base-container-image
- name: Pull Container
id: pull_container_image
run: |
docker pull riscvintl/riscv-docs-base-container-image:latest
# Build PDF files using the container
- name: Build Files
id: build_files
if: steps.pull_container_image.outcome == 'success'
run: |
docker run --rm -v ${{ github.workspace }}:/build riscvintl/riscv-docs-base-container-image:latest \
/bin/sh -c make
# Upload the priv-isa-asciidoc PDF file
- name: Upload docs-dev-guide.pdf
if: steps.build_files.outcome == 'success'
uses: actions/upload-artifact@v3
with:
name: docs-dev-guide-${{ env.SHORT_SHA }}.pdf
path: ${{ github.workspace }}/docs-dev-guide.pdf
retention-days: 7
- name: Create Release
if: steps.build_files.outcome == 'success' && github.event_name == 'workflow_dispatch' && github.event.inputs.create_release == 'true'
uses: softprops/action-gh-release@v1
with:
draft: false
tag_name: docs-dev-guide-${{ env.SHORT_SHA }}-${{ env.CURRENT_DATE }}
name: ${{ env.CURRENT_DATE }}
body: |
This release was created by: ${{ github.event.sender.login }}
Release Notes: ${{ github.event.inputs.release_notes }}
files: |
${{ github.workspace }}/docs-dev-guide.pdf
env:
GITHUB_TOKEN: ${{ secrets.GHTOKEN }}