Skip to content

Deploy wxRuby Pages #66

Deploy wxRuby Pages

Deploy wxRuby Pages #66

Workflow file for this run

# Simple workflow for deploying static content to GitHub Pages
name: Deploy wxRuby Pages
on:
push:
tags:
- v*
# Allows you to run this workflow manually from the Actions tab
workflow_dispatch:
# Sets permissions of the GITHUB_TOKEN to allow deployment to GitHub Pages
permissions:
contents: read
pages: write
id-token: write
# Allow only one concurrent deployment, skipping runs queued between the run in-progress and latest queued.
# However, do NOT cancel in-progress runs as we want to allow these production deployments to complete.
concurrency:
group: "pages"
cancel-in-progress: false
jobs:
# Single deploy job since we're just deploying
deploy:
environment:
name: github-pages
url: ${{ steps.deployment.outputs.page_url }}
env:
wxGTK_VERSION: 3
WX_EXTRA_PACKAGES: doxygen patchelf
WXWIDGETS_ROOT: ${{ github.workspace }}/ext/wxWidgets
wxUSE_XVFB: 1
runs-on: ubuntu-latest
steps:
- name: Checkout
uses: actions/checkout@v4
- name: Install Ruby
uses: ruby/setup-ruby@v1
with:
ruby-version: '3.2'
- name: Setup Ruby gems
run: |
bundle config set --local with documentation
bundle install
- name: checkout wxWidgets
uses: actions/checkout@v4
with:
repository: wxWidgets/wxWidgets
path: ${{ env.WXWIDGETS_ROOT }}
submodules: 'recursive'
- name: Set up build environment
run: |
# Install locales used by our tests to run all the tests instead of
# skipping them.
sudo locale-gen de_DE.utf8 de_CH.utf8 en_US.utf8 fr_FR.utf8 sv_SE.utf8
$WXWIDGETS_ROOT/build/tools/before_install.sh
- name: Display build environment
run: |
echo $PATH
ruby -v
doxygen -v
gcc -v
g++ -v
- name: Remove wxWidgets
run: rm -rf $WXWIDGETS_ROOT
- name: Configure wxRuby3
run: |
bundle exec rake configure[--with-wxwin]
- name: Build wxRuby3
run: |
bundle exec rake build
- name: Generate wxRuby3 docs
run: |
BUILD_CMD="bundle exec rake doc WXRUBY_FULLDOCS=1"
/bin/bash -o pipefail -c "xvfb-run -a -s '-screen 0 1600x1200x24' $BUILD_CMD 2>&1 | tee -a gembuild.out" || rc=$?
if [ -n "$rc" ]; then
if fgrep -q '(core dumped)' gembuild.out; then
echo '*** Test crashed, trying to get more information ***'
gdb --quiet --core=core -ex 'where' -ex 'thread apply all bt' -ex 'q' --args $BUILD_CMD
fi
exit $rc
fi
- name: Build wxRuby3 HTML docs
run: |
bundle exec yardoc
- name: Setup Pages
uses: actions/configure-pages@v3
- name: Upload artifact
uses: actions/upload-pages-artifact@v2
with:
# Upload Yard output only
path: 'rdoc'
- name: Deploy to GitHub Pages
id: deployment
uses: actions/deploy-pages@v2