Skip to content

Pre Release

Pre Release #6

Workflow file for this run

#
# Copyright (c) 2022-present, Trail of Bits, Inc.
# All rights reserved.
#
# This source code is licensed in accordance with the terms specified in
# the LICENSE file found in the root directory of this source tree.
#
name: "Pre Release"
on:
workflow_run:
workflows: ["LLVM test suite"]
types:
- completed
branches:
- "master"
permissions: write-all
jobs:
build:
strategy:
matrix:
llvm-version: [17]
image-version: [22.04]
name: "Pre Release"
runs-on: ubuntu-${{ matrix.image-version }}
if: ${{ github.event.workflow_run.conclusion == 'success' }}
timeout-minutes: 60
container:
image:
ghcr.io/trailofbits/vast-ubuntu-${{ matrix.image-version }}-llvm-${{ matrix.llvm-version }}-dev:latest
env:
CMAKE_PREFIX_PATH: "/usr/lib/llvm-${{ matrix.llvm-version }}/lib/cmake/mlir/;/usr/lib/llvm-${{ matrix.llvm-version }}/lib/cmake/clang/"
TOOLCHAIN: ${{ github.workspace }}/cmake/lld.toolchain.cmake
LLVM_EXTERNAL_LIT: "/usr/local/bin/lit"
steps:
- name: Clone the VAST repository
uses: actions/checkout@v4
with:
submodules: true
fetch-depth: 1
- name: Configure build
run: |
cmake --preset ninja-multi-default --toolchain ${TOOLCHAIN} \
-DCMAKE_VERBOSE_MAKEFILE=True \
-DCMAKE_PREFIX_PATH=${CMAKE_PREFIX_PATH} \
-DLLVM_EXTERNAL_LIT=${LLVM_EXTERNAL_LIT}
- name: Build release
run: |
cmake --build --preset ninja-rel -j $(nproc)
cpack -G TXZ --config ./builds/ninja-multi-default/CPackConfig.cmake
- name: Publish Pre-Release
uses: softprops/action-gh-release@v1
with:
tag_name: "latest"
prerelease: true
generate_release_notes: true
files: |
./LICENSE
./builds/ninja-multi-default/package/*
- name: Build VAST Doc
run: cmake --build --preset ninja-rel --target vast-doc
- name: Fetch LLVM test suite results
uses: actions/download-artifact@v4
with:
name: llvm-test-suite-results
path: llvm-test-suite-results
github-token: ${{ secrets.GITHUB_TOKEN }}
run-id: ${{ github.event.workflow_run.id }}
- name: Build Pages
run: |
sh ./www/setup.sh _site ./builds/ninja-multi-default/
- name: Deploy docs
uses: mhausenblas/mkdocs-deploy-gh-pages@master
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
CONFIG_FILE: _site/mkdocs.yml