diff options
author | Stephano Cetola <scetola@linuxfoundation.org> | 2021-12-29 12:12:23 -0800 |
---|---|---|
committer | GitHub <noreply@github.com> | 2021-12-29 12:12:23 -0800 |
commit | b54f1b7d64988e5393819506592a30f84496e5be (patch) | |
tree | 6af0bd75d2e81d2bacadae755a77132af8862d23 | |
parent | bc883ce9a6d304e75f1d5cf9e116a8e62829f8a7 (diff) | |
download | riscv-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>
-rw-r--r-- | .github/workflows/build-pdf.yml | 54 |
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 |