Skip to content

Repository files navigation

github-action

Custom actions used by the Diligent Engine CI.

checkout

Checks out the specified module and its required dependent modules.

Example:

steps:
- name: Checkoutuses: DiligentGraphics/github-action/checkout@masterwith:
module: Tools # Optional; by default, current module is checked outsubmodules: true # Optional; by default, 'recursive' is used

setup-build-env

Sets up the build environment and downloads the required prerequisites:

  • Ninja
  • Vulkan SDK
  • Java
  • Emscripten SDK
  • Required linux libraries

Example:

steps:
- name: Set up build environmentuses: DiligentGraphics/github-action/setup-build-env@v1with:
platform: Win32 # UWP, Linux, MacOS, tvOS, iOS, Android, Webcmake-generator: Ninja # Optionalninja-vs-arch: x64# When Ninja is used for VS buildvulkan-sdk-version: 1.3.290.0 # Optional, see defaults belowjava-version: 17# Optional, see defaults belowemsdk-version: 4.0.0 # Optional, see defaults below

Default component versions are specified in the table below:

Componentv1
Vulkan SDK1.3.290.0
Java17
Emscripten SDK4.0.0

Linux libraires:

  • v1
    • build-essential
    • libx11-dev
    • libgl1-mesa-dev
    • libxrandr-dev
    • libxinerama-dev
    • libxcursor-dev
    • libxi-dev

configure-cmake

Configures CMake; creates a helper CMakeLists.txt file, if necessary.

Example:

steps:
- name: Configure CMakeif: success()uses: DiligentGraphics/github-action/configure-cmake@v1with:
generator: Visual Studio 17 2022vs-arch: x64# Required for VS generatorbuild-type: Debug # Requiredcmake-args: -DDILIGENT_DEVELOPMENT=ON # Optional extra CMake argumentsosx-deployment-target: 11# Required for iOS/tvOSosx-architectures: arm64 # Required for iOS/tvOScc: clang-12 # Optional for Linuxcxx: clang++-12 # Optional for Linuxwindows-sdk-version: 10.0.22621.0 # Optional for Visual Studio generator

Default versions are specified in the table below:

Parameterv1
osx-deployment-target11

The action sets the following environment variables:

  • DILIGENT_BUILD_TYPE - Build type (${{inputs.build-type}})
  • DILIGENT_BUILD_DIR - Build directory (${{runner.workspace}}/build)
  • DILIGENT_INSTALL_DIR - Install directory (${{runner.workspace}}/build/install)

build

Runs the build for the current configuration.

Example:

steps:
- name: Buildif: success()uses: DiligentGraphics/github-action/build@masterwith:
target: install # Optional target

run-core-tests

Runs Diligent Core tests for the current configuration.

Example:

steps:
- name: DiligentCoreTestif: success()uses: DiligentGraphics/github-action/run-core-tests@master

run-core-gpu-tests

Runs Diligent Core GPU tests for the current configuration.

Example:

- name: DiligentCoreAPITest D3D12 DXCif: success()uses: DiligentGraphics/github-action/run-core-gpu-tests@masterwith:
mode: d3d12_swuse-dxc: truenon-separable-progs: false

run-tools-tests

Runs Diligent Tools tests for the current configuration.

Example:

steps:
- name: DiligentToolsTestif: success()uses: DiligentGraphics/github-action/run-tools-tests@master

run-tools-gpu-tests

Runs Diligent Tools GPU tests for the current configuration.

Example:

- name: DiligentToolsGPUTest D3D11if: success()uses: DiligentGraphics/github-action/run-tools-gpu-tests@masterwith:
mode: d3d11_sw

run-sample-tests

Runs sample and tutorial tests for the current configuration.

Example:

- name: Sample Tests D3D11uses: DiligentGraphics/github-action/run-sample-tests@v1with:
mode: d3d12_swgolden-image-mode: compare_updatenon-separable-progs: false

clean-disk-ubuntu

Removes unneeded packages and tools to free disk space.

Example:

- name: Clean Diskuses: DiligentGraphics/github-action/clean-disk-ubuntu@masterpreserve-android-ndk: 27.0.12077973

install-doxygen

Installs Doxygen.

Example:

- name: Install Doxygenuses: DiligentGraphics/github-action/install-doxygen@master

About

Custom actions used by the Diligent Engine CI

Resources

Stars

3 stars

Watchers

0 watching

Forks

Releases

Packages

Used by

Contributors

Languages