aboutsummaryrefslogtreecommitdiff
path: root/.github/workflows
diff options
context:
space:
mode:
authorStephano Cetola <scetola@linuxfoundation.org>2021-12-29 12:12:23 -0800
committerGitHub <noreply@github.com>2021-12-29 12:12:23 -0800
commitb54f1b7d64988e5393819506592a30f84496e5be (patch)
tree6af0bd75d2e81d2bacadae755a77132af8862d23 /.github/workflows
parentbc883ce9a6d304e75f1d5cf9e116a8e62829f8a7 (diff)
downloadriscv-isa-manual-b54f1b7d64988e5393819506592a30f84496e5be.zip
riscv-isa-manual-b54f1b7d64988e5393819506592a30f84496e5be.tar.gz
riscv-isa-manual-b54f1b7d64988e5393819506592a30f84496e5be.tar.bz2
Update GitHub action to build Asciidoc branch (#805)
Currently there is a branch which contains the unprivileged specification code in asciidoc format. This action should only be run on that branch. Once the conversion of the privileged specification is complete as well, this action can be updated to build the complete set of specs. Signed-off-by: Stephano Cetola <scetola@linuxfoundation.org>
Diffstat (limited to '.github/workflows')
-rw-r--r--.github/workflows/build-pdf.yml54
1 files changed, 52 insertions, 2 deletions
diff --git a/.github/workflows/build-pdf.yml b/.github/workflows/build-pdf.yml
index ccf55cd..36f0b3f 100644
--- a/.github/workflows/build-pdf.yml
+++ b/.github/workflows/build-pdf.yml
@@ -1,9 +1,59 @@
+# This workflow installs dependencies for PDF generation, generates the PDF,
+# and uploads the PDF as an artifact.
+
name: Build Document PDF
on:
+ push:
+ branches: [ convert2adoc ]
+ pull_request:
+ branches: [ convert2adoc ]
workflow_dispatch:
jobs:
- DummyJob:
+ build:
+ runs-on: ubuntu-latest
+
+ env:
+ APT_PACKAGES_FILE: ${{ github.workspace }}/dependencies/apt_packages.txt
+ BUNDLE_GEMFILE: ${{ github.workspace }}/dependencies/Gemfile
+ BUNDLE_BIN: ${{ github.workspace }}/bin
+ NPM_PACKAGE_FOLDER: ${{ github.workspace }}/dependencies
+ PDF_RESULT: unpriv-isa-asciidoc.pdf
+ if: contains(github.ref, "convert2adoc")
steps:
- - name: DummyStep
+ - uses: actions/checkout@v2
+ - name: Install Ubuntu packages
+ run: |
+ sudo apt-get update
+ grep -vE '^#' ${APT_PACKAGES_FILE} | xargs sudo apt-get install --yes --no-install-recommends
+ # Ruby for asciidoctor
+ - name: Setup Ruby and Gemfile content
+ uses: ruby/setup-ruby@v1
+ with:
+ ruby-version: "2.6"
+ bundler-cache: true
+ # Node.js for wavedrom
+ - uses: actions/cache@v2
+ with:
+ path: ~/.npm
+ key: ${{ runner.os }}-node-${{ hashFiles('**/package-lock.json') }}
+ restore-keys: |
+ ${{ runner.os }}-node-
+ - name: Setup Node.js
+ uses: actions/setup-node@v2
+ with:
+ node-version: '14'
+ - name: Install Node.js dependencies
+ run: npm install ${NPM_PACKAGE_FOLDER}
+ - name: Generate PDF
+ working-directory: ./build
+ run: |
+ PATH=${PATH}:${BUNDLE_BIN}:$(npm bin) \
+ make
+ - name: Archive PDF result
+ uses: actions/upload-artifact@v2
+ with:
+ name: ${{ env.PDF_RESULT }}
+ path: ./build/${{ env.PDF_RESULT }}
+ retention-days: 7