godot/.github/actions/godot-api-dump/action.yml

name: Dump Godot API
description: Dump Godot API for GDExtension

inputs:
  bin:
    description: The path to the Godot executable
    required: true

runs:
  using: composite
  steps:
    # Dump GDExtension interface and API
    - name: Dump GDExtension interface and API for godot-cpp build
      shell: sh
      run: |
        ${{ inputs.bin }} --headless --dump-gdextension-interface --dump-extension-api
        mkdir godot-api
        cp -f gdextension_interface.h godot-api/
        cp -f extension_api.json godot-api/

    - name: Upload API dump
      uses: ./.github/actions/upload-artifact
      with:
        name: godot-api-dump
        path: ./godot-api/*