forked from lthn/blockchain
Introduces a reusable GitHub Action for building documentation and updates all platform build workflows to install documentation dependencies and run 'make docs'. This ensures documentation is built and available as part of the CI process across Linux, macOS, and Windows. Also updates the docs workflow to adjust pip dependencies.
56 lines
1.6 KiB
YAML
56 lines
1.6 KiB
YAML
name: Linux
|
|
permissions:
|
|
contents: write
|
|
on:
|
|
workflow_call:
|
|
inputs:
|
|
chain-network:
|
|
description: "The network to use, can either be testnet, stagenet or mainnet"
|
|
default: testnet
|
|
required: false
|
|
type: string
|
|
|
|
jobs:
|
|
build:
|
|
name: gcc-linux-x86_64
|
|
runs-on: ubuntu-22.04
|
|
steps:
|
|
- name: Checkout Project
|
|
uses: actions/checkout@v4.2.2
|
|
with:
|
|
fetch-depth: 0
|
|
submodules: recursive
|
|
|
|
- name: install dependencies
|
|
run: sudo apt-get install -y autotools-dev git build-essential
|
|
|
|
- name: Cache SDK Folder
|
|
uses: actions/cache@v4
|
|
with:
|
|
path: ${{ github.workspace }}/build/sdk
|
|
key: ${{ runner.os }}-${{ runner.arch }}-sdk
|
|
|
|
- uses: actions/setup-python@v5
|
|
with:
|
|
python-version: 3.x
|
|
- run: pip install mkdocs-material mkdocs-git-revision-date-localized-plugin mkdocs-git-committers-plugin-2 mkdocs-git-authors-plugin "mkdocs-material[imaging]"
|
|
|
|
- name: Install Conan
|
|
uses: conan-io/setup-conan@v1
|
|
with:
|
|
home: ${{ github.workspace }}/build/sdk
|
|
cache_packages: false
|
|
|
|
- name: Compile Docs
|
|
run: make docs
|
|
|
|
- name: Compile Release
|
|
run: make release CPU_CORES=4 TESTNET=${{ inputs.chain-network == 'testnet' && '1' || '0' }}
|
|
|
|
- name: CLI Artifacts
|
|
uses: ./.github/actions/upload-artifacts
|
|
with:
|
|
chain-network: ${{ inputs.chain-network }}
|
|
assets: lethean-*
|
|
asset-type: 'cli'
|
|
asset-directory: ${{ github.workspace }}/build/release/packages
|