Skip to content

naming fix

naming fix #2206

Workflow file for this run

name: Build
on:
push:
branches:
- master
- develop
tags:
- v*
pull_request:
branches: [ master, develop ]
env:
# Customize the CMake build type here (Release, Debug, RelWithDebInfo, etc.)
GIT_SUBMODULE_STRATEGY: recursive
permissions:
contents: write
jobs:
doxygen:
if: github.event_name != 'pull_request'
name: "Create and upload Doxygen"
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v2
with:
submodules: true
- name: Generate docs
uses: mattnotmitt/doxygen-action@v1.9.2
with:
doxyfile-path: ./doxygen/Doxyfile
working-directory: ./
- name: Debug
run: tree -aI .
- name: Deploy
uses: peaceiris/actions-gh-pages@v3
with:
publish_dir: ./doxygen/out/html
destination_dir: ${{ github.ref_name }}
external_repository: aui-framework/aui-framework.github.io
publish_branch: main
deploy_key: ${{ secrets.ACTIONS_DEPLOY_KEY }}
build-android:
name: "Android"
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v2
with:
submodules: true
- uses: actions/setup-java@v1
with: { java-version: '11' }
- name: Install Linux dependencies
run: sudo apt-get update && sudo apt-get install pkg-config libglew-dev zlib1g-dev libssl-dev libcrypt-dev libcurl4-openssl-dev libgtk-3-dev libfontconfig-dev ninja-build libpulse-dev
- name: Configure CMake
run: cmake -GNinja -B ${{github.workspace}}/build -DAUI_BUILD_FOR=android -DAUI_BUILD_EXAMPLES=TRUE
- name: Build
run: cmake --build ${{github.workspace}}/build -t apps
- name: Upload
uses: actions/upload-artifact@v3
with:
path: ${{github.workspace}}/build/app_project/app/build/outputs/apk/release/app-release-unsigned.apk
name: aui.example.views-release-unsigned.apk
build-ios-debug:
name: "iOS Debug"
runs-on: macos-latest
steps:
- uses: actions/checkout@v2
with:
submodules: true
- name: Install macos dependencies
run: brew install ninja
- name: Configure CMake
run: cmake -GNinja -B ${{github.workspace}}/build -DAUI_BUILD_FOR=ios -DAUI_BUILD_EXAMPLES=TRUE -DAUI_IOS_CODE_SIGNING_REQUIRED=FALSE
- name: Build app
run: cmake --build ${{github.workspace}}/build -t apps
- name: Build rest
working-directory: ${{github.workspace}}/build/app_project
run: cmake --build . -- CODE_SIGNING_REQUIRED=NO CODE_SIGN_IDENTITY=""
- name: Pack framework
working-directory: ${{github.workspace}}/build/app_project
run: cpack -G TGZ -C Debug .
- name: Upload framework
uses: actions/upload-artifact@v3
with:
path: ${{github.workspace}}/build/app_project/*.tar.gz
name: ios static Debug.tar.gz
- name: Pack app
working-directory: ${{github.workspace}}/build/app_project/bin/Debug
run: tar -cvf app.tar.gz aui.example.views.app
- name: Upload app
uses: actions/upload-artifact@v3
with:
path: ${{github.workspace}}/build/app_project/bin/Debug/*.tar.gz
name: aui.example.views-debug-unsigned.app.tar.gz
build-desktop:
name: ${{ matrix.os }} ${{ matrix.shared_or_static }} ${{ matrix.debug_or_release }} ${{ matrix.additional_cmake_flags }}
runs-on: ${{ matrix.os }}
strategy:
fail-fast: false
matrix:
os: [windows-latest, ubuntu-latest]
debug_or_release: [Debug, Release]
shared_or_static: [shared, static]
is32bit: [false]
include:
- os: windows-latest
generator: "Visual Studio 17 2022"
additional_cmake_flags: '-A Win32'
debug_or_release: Debug
shared_or_static: shared
is32bit: true
- os: windows-latest
generator: "Visual Studio 17 2022"
additional_cmake_flags: '-A x64'
- os: ubuntu-latest
generator: "Ninja"
additional_cmake_flags: ''
- os: macos-latest
generator: "Ninja"
debug_or_release: Release
shared_or_static: static
additional_cmake_flags: ''
- os: ubuntu-latest
generator: "Ninja"
additional_cmake_flags: ''
debug_or_release: RelWithDebInfo
shared_or_static: static
steps:
- uses: actions/checkout@v2
with:
submodules: true
- name: Install Linux dependencies
if: matrix.os == 'ubuntu-latest'
run: sudo apt-get update && sudo apt-get install pkg-config libglew-dev zlib1g-dev libssl-dev libcrypt-dev libcurl4-openssl-dev libgtk-3-dev libfontconfig-dev ninja-build libpulse-dev
- name: Install macos dependencies
if: matrix.os == 'macos-latest'
run: brew install ninja
- name: Configure CMake
# Configure CMake in a 'build' subdirectory. `CMAKE_BUILD_TYPE` is only required if you are using a single-configuration generator such as make.
# See https://cmake.org/cmake/help/latest/variable/CMAKE_BUILD_TYPE.html?highlight=cmake_build_type
run: cmake -G "${{ matrix.generator }}" -B ${{github.workspace}}/build -DCMAKE_BUILD_TYPE=${{matrix.debug_or_release}} -DBUILD_SHARED_LIBS=${{ matrix.shared_or_static == 'shared' && 'ON' || 'OFF' }} ${{matrix.additional_cmake_flags}} -DAUI_IGNORE_OPENSSL=TRUE -DAUI_INSTALL_RUNTIME_DEPENDENCIES=TRUE
- name: Build project
# Build your program with the given configuration
run: cmake --build ${{github.workspace}}/build --config ${{matrix.debug_or_release}}
- name: Build AUI tests
# Build your program with the given configuration
run: cmake --build ${{github.workspace}}/build --config ${{matrix.debug_or_release}} --target Tests
- name: Run AUI tests
if: matrix.os == 'windows-latest'
working-directory: ${{github.workspace}}/build/bin/${{ matrix.debug_or_release }}
run: ${{github.workspace}}/build/bin/${{ matrix.debug_or_release }}/Tests.exe
- name: Run AUI tests
if: matrix.os == 'ubuntu-latest'
working-directory: ${{github.workspace}}/build/bin
run: ${{github.workspace}}/build/bin/Tests
- name: Run CMake tests
working-directory: ${{github.workspace}}/build
run: ctest . -C ${{matrix.debug_or_release}} -VV
- name: Pack
working-directory: ${{github.workspace}}/build
run: cpack . -C ${{ matrix.debug_or_release }}
- name: Upload
uses: actions/upload-artifact@v3
with:
path: ${{github.workspace}}/build/*.tar.gz
name: ${{ matrix.os }} ${{ matrix.shared_or_static }} ${{ matrix.debug_or_release }} ${{ matrix.additional_cmake_flags }}
release:
if: contains(github.ref, 'tags/v')
runs-on: ubuntu-latest
permissions: write-all
name: "Create release page"
steps:
- name: Create Release
id: create_release
uses: actions/create-release@v1.1.4
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
with:
tag_name: ${{ github.ref }}
release_name: ${{ github.ref }}
draft: false
prerelease: true
outputs:
upload_url: ${{ steps.create_release.outputs.upload_url }}
publish:
if: contains(github.ref, 'tags/v')
name: Publish ${{ matrix.os }} ${{ matrix.shared_or_static }} ${{ matrix.debug_or_release }}
runs-on: ubuntu-latest
needs: [build-desktop, release]
strategy:
fail-fast: false
matrix:
os: [windows-latest, ubuntu-latest]
debug_or_release: [Debug, Release]
shared_or_static: [shared, static]
include:
- os: windows-latest
generator: "Visual Studio 17 2022"
additional_cmake_flags: '-A Win32'
debug_or_release: Debug
shared_or_static: shared
is32bit: true
- os: windows-latest
generator: "Visual Studio 17 2022"
additional_cmake_flags: '-A x64'
- os: ubuntu-latest
generator: "Ninja"
additional_cmake_flags: ''
steps:
- name: Download artifact
uses: actions/download-artifact@v1
with:
path: ./
name: ${{ matrix.os }} ${{ matrix.shared_or_static }} ${{ matrix.debug_or_release }} ${{ matrix.additional_cmake_flags }}
- id: getfilename
run: echo "::set-output name=file::$(ls *.tar.gz)"
- name: Upload to Release
id: upload_to_release
uses: actions/upload-release-asset@v1.0.1
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
with:
upload_url: ${{ needs.release.outputs.upload_url }}
asset_path: ${{ steps.getfilename.outputs.file }}
asset_name: ${{ steps.getfilename.outputs.file }}
asset_content_type: application/x-gtar
deployment-tests:
name: Deployment test ${{ matrix.os }} ${{ matrix.shared_or_static }} ${{ matrix.debug_or_release }} ${{ matrix.additional_cmake_flags }}
if: contains(github.ref, 'tags/v')
runs-on: ${{ matrix.os }}
needs: [publish]
strategy:
fail-fast: false
matrix:
os: [windows-latest, ubuntu-latest]
debug_or_release: [Debug, Release]
shared_or_static: [shared, static]
is32bit: [false]
include:
- os: windows-latest
generator: "Visual Studio 17 2022"
additional_cmake_flags: '-A Win32'
debug_or_release: Debug
shared_or_static: shared
is32bit: true
- os: windows-latest
generator: "Visual Studio 17 2022"
additional_cmake_flags: '-A x64'
- os: ubuntu-latest
generator: "Ninja"
additional_cmake_flags: ''
- os: ubuntu-latest
generator: "Ninja"
additional_cmake_flags: ''
debug_or_release: RelWithDebInfo
shared_or_static: static
steps:
- uses: actions/checkout@v2
with:
submodules: true
- name: Install Linux dependencies
if: matrix.os == 'ubuntu-latest'
run: sudo apt-get update && sudo apt-get install pkg-config libglew-dev zlib1g-dev libssl-dev libcrypt-dev libcurl4-openssl-dev libgtk-3-dev libfontconfig-dev ninja-build libpulse-dev
- name: Install macos dependencies
if: matrix.os == 'macos-latest'
run: brew install ninja
- name: Configure CMake
# Configure CMake in a 'build' subdirectory. `CMAKE_BUILD_TYPE` is only required if you are using a single-configuration generator such as make.
# See https://cmake.org/cmake/help/latest/variable/CMAKE_BUILD_TYPE.html?highlight=cmake_build_type
run: cmake -G "${{ matrix.generator }}" -B ${{github.workspace}}/build -DCMAKE_BUILD_TYPE=${{matrix.debug_or_release}} -DBUILD_SHARED_LIBS=${{ matrix.shared_or_static == 'shared' && 'ON' || 'OFF' }} ${{matrix.additional_cmake_flags}} -DAUI_IGNORE_OPENSSL=TRUE -DAUI_TEST_DEPLOY_VERSION="${{ github.ref_name }}"
- name: Run tests
# Build your program with the given configuration
working-directory: ${{github.workspace}}/build
run: ctest . -C ${{matrix.debug_or_release}} -VV