Skip to content

Commit

Permalink
Create documentation on GHA
Browse files Browse the repository at this point in the history
  • Loading branch information
Flamefire committed Jul 15, 2020
1 parent 62494bc commit 3d44f9b
Show file tree
Hide file tree
Showing 6 changed files with 111 additions and 48 deletions.
63 changes: 63 additions & 0 deletions .github/workflows/release.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,63 @@
# Copyright 2020 Alexander Grund
# Distributed under the Boost Software License, Version 1.0.
# (See accompanying file LICENSE_1_0.txt or copy at http://boost.org/LICENSE_1_0.txt)

name: Release

on:
push:
branches: [master]
tags: ['v*']

jobs:
release:
name: Create Release
runs-on: ubuntu-latest
env:
BOOST_VERSION: 1.71.0
BOOST_ROOT: ${{github.workspace}}/dependencies/boost
steps:
- uses: actions/checkout@v2
- uses: actions/checkout@v2
with:
repository: boostorg/boost
ref: boost-${{env.BOOST_VERSION}}
path: ${{env.BOOST_ROOT}}
fetch-depth: 1
- name: Prepare boost
working-directory: ${{env.BOOST_ROOT}}
run: |
git submodule update --init --jobs 3 tools/boostdep tools/quickbook tools/boostbook
python tools/boostdep/depinst/depinst.py --exclude test --git_args '--jobs 3' ../tools/quickbook
./bootstrap.sh || (cat bootstrap.log && false)
- name: Install dependencies
run: sudo apt-get install xsltproc docbook-xsl docbook-xml
- name: Create documentation
run: scripts/build_doc.sh -j3
- name: Package documentation
run: tar -czvf turtle_doc.tar.gz html
working-directory: doc
# This runs only when actual tags are created
- name: Create Release
if: startsWith(github.ref, 'refs/tags/')
id: create_release
uses: actions/create-release@v1
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
with:
tag_name: ${{ github.ref }}
release_name: Release ${{ github.ref }}
body: |
C++ mock object library for Boost
draft: true
prerelease: false
- name: Upload docs
if: startsWith(github.ref, 'refs/tags/')
uses: actions/[email protected]
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
with:
upload_url: ${{ steps.create_release.outputs.upload_url }}
asset_path: doc/turtle_doc.tar.gz
asset_name: turtle_doc.tar.gz
asset_content_type: application/tar.gz
28 changes: 0 additions & 28 deletions Jamfile.v2

This file was deleted.

10 changes: 6 additions & 4 deletions Jamroot.jam
Original file line number Diff line number Diff line change
Expand Up @@ -6,9 +6,11 @@

import modules ;

local boost = [ modules.peek : BOOST ] ;
if BOOST_ROOT
{
local boost = [ modules.peek : BOOST_ROOT ] ;

project mock : requirements <include>$(boost) <include>. ;
project mock : requirements <include>$(boost) ;

# This seems to prevent some Boost.Build errors that otherwise occur :-(
use-project /boost : $(boost) ;
#use-project /boost : $(boost) ;
}
17 changes: 2 additions & 15 deletions build/build.sh
Original file line number Diff line number Diff line change
Expand Up @@ -5,13 +5,6 @@
# Distributed under the Boost Software License, Version 1.0.
# (See accompanying file LICENSE_1_0.txt or http://www.boost.org/LICENSE_1_0.txt)

copy()
{
for dir; do true; done
mkdir -p "$dir"
cp "$@"
}

set -eux

export BOOST="$BOOST_ROOT"
Expand All @@ -21,13 +14,7 @@ cd "$BOOST"
./b2 "$PROJECT_DIR/test" -q "$@"

cd "$PROJECT_DIR"
export BOOSTBOOK_DIR="$PROJECT_DIR/bin/turtle/boostbook"
copy -r "$BOOST"/tools/boostbook/xsl "$BOOSTBOOK_DIR"
copy -r "$BOOST"/tools/boostbook/dtd "$BOOSTBOOK_DIR"
copy -r build/boostbook/* "$BOOSTBOOK_DIR"
copy "$BOOST"/doc/src/boostbook.css doc/html
copy "$BOOST"/doc/src/images/*.png doc/html/images
copy "$BOOST"/doc/src/images/callouts/*.png doc/html/images/callouts
scripts/build_doc.sh "$@"

cd "$BOOST"
./b2 "$PROJECT_DIR/doc" -q "$@"
./b2 "$PROJECT_DIR/doc//mock_examples" -q "$@"
10 changes: 9 additions & 1 deletion doc/Jamfile.jam
Original file line number Diff line number Diff line change
Expand Up @@ -46,7 +46,15 @@ project example

rule compile-examples
{
for name in [ glob example/*.cpp ] { compile $(name) ; }
local examples ;
for name in [ glob example/*.cpp ]
{
local compile-target = [ compile $(name) ] ;
explicit $(compile-target) ;
examples += $(compile-target) ;
}
return $(examples) ;
}

alias mock_examples : [ compile-examples ] ;
explicit mock_examples ;
31 changes: 31 additions & 0 deletions scripts/build_doc.sh
Original file line number Diff line number Diff line change
@@ -0,0 +1,31 @@
#!/bin/bash

# Copyright (C) 2015 Mathieu Champlon
#
# Distributed under the Boost Software License, Version 1.0.
# (See accompanying file LICENSE_1_0.txt or http://www.boost.org/LICENSE_1_0.txt)

# Execute from repo root folder or set PROJECT_DIR
# Requires BOOST_ROOT to be set

set -eu

copy()
{
for dir; do true; done
mkdir -p "$dir"
cp "$@"
}

PROJECT_DIR="${PROJECT_DIR:-$(pwd)}"

export BOOSTBOOK_DIR="${PROJECT_DIR}/bin/turtle/boostbook"
copy -r "$BOOST_ROOT"/tools/boostbook/xsl "$BOOSTBOOK_DIR"
copy -r "$BOOST_ROOT"/tools/boostbook/dtd "$BOOSTBOOK_DIR"
copy -r build/boostbook/* "$BOOSTBOOK_DIR"
copy "$BOOST_ROOT"/doc/src/boostbook.css doc/html
copy "$BOOST_ROOT"/doc/src/images/*.png doc/html/images
copy "$BOOST_ROOT"/doc/src/images/callouts/*.png doc/html/images/callouts

cd "$BOOST_ROOT"
./b2 "$PROJECT_DIR/doc" -q "$@"

0 comments on commit 3d44f9b

Please sign in to comment.