Update Dependencies #186
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| name: Update Dependencies | |
| on: | |
| schedule: | |
| - cron: '0 16 * * 0' | |
| workflow_dispatch: | |
| jobs: | |
| update-dependencies: | |
| name: Update Dependencies | |
| if: github.repository == 'GamesTrap/TRAP' | |
| runs-on: [self-hosted, Linux, X64, ubuntu, cpu] | |
| steps: | |
| - name: Cleanup workspace | |
| if: ${{ always() }} | |
| uses: gamestrap/gha-workspace-cleanup@v1.2.5 | |
| - name: Checkout repository | |
| uses: actions/checkout@v4 | |
| with: | |
| submodules: 'true' | |
| ref: dev | |
| - uses: crazy-max/ghaction-import-gpg@v6 | |
| with: | |
| gpg_private_key: ${{ secrets.GPG_PRIVATE_KEY }} | |
| passphrase: ${{ secrets.GPG_PASSPHRASE }} | |
| git_user_signingkey: true | |
| git_commit_gpgsign: true | |
| git_committer_name: TRAP CI/CD | |
| - uses: actions/create-github-app-token@v1 | |
| id: generate-token | |
| with: | |
| app-id: ${{ secrets.APP_ID }} | |
| private-key: ${{ secrets.APP_PRIVATE_KEY }} | |
| - name: Update Box2D | |
| if: ${{ always() }} | |
| uses: ./.github.qkg1.topposite/update-git-dependency | |
| with: | |
| dependency-path: "Dependencies/Box2D" | |
| update-method: "latest-tag" | |
| tag-regex: '^v2(\.[0-9]+)*$' #v2.X.X SemVer | |
| pr-title: "Box2D" | |
| pr-branch-name: "box2d-update" | |
| pr-token: ${{steps.generate-token.outputs.token}} | |
| - name: Update EnTT | |
| if: ${{ always() }} | |
| uses: ./.github.qkg1.topposite/update-git-dependency | |
| with: | |
| dependency-path: "Dependencies/EnTT" | |
| update-method: "latest-tag" | |
| tag-regex: '^v[0-9]+(\.[0-9]+)*$' #vX.X.X SemVer | |
| pr-title: "EnTT" | |
| pr-branch-name: "entt-update" | |
| pr-token: ${{steps.generate-token.outputs.token}} | |
| - name: Update ImGuizmo | |
| if: ${{ always() }} | |
| uses: ./.github.qkg1.topposite/update-git-dependency | |
| with: | |
| dependency-path: "Dependencies/ImGuizmo" | |
| update-method: "latest-commit" | |
| branch: "master" | |
| pr-title: "ImGuizmo" | |
| pr-branch-name: "imguizmo-update" | |
| pr-token: ${{steps.generate-token.outputs.token}} | |
| - name: Update ModernDialogs | |
| if: ${{ always() }} | |
| uses: ./.github.qkg1.topposite/update-git-dependency | |
| with: | |
| dependency-path: "Dependencies/ModernDialogs" | |
| update-method: "latest-tag" | |
| tag-regex: '^v[0-9]+(\.[0-9]+)*$' #vX.X.X SemVer | |
| pr-title: "ModernDialogs" | |
| pr-branch-name: "moderndialogs-update" | |
| pr-token: ${{steps.generate-token.outputs.token}} | |
| - name: Update Tracy | |
| if: ${{ always() }} | |
| uses: ./.github.qkg1.topposite/update-git-dependency | |
| with: | |
| dependency-path: "Dependencies/Tracy" | |
| update-method: "latest-tag" | |
| tag-regex: '^v[0-9]+(\.[0-9]+)*$' #vX.X.X SemVer | |
| pr-title: "Tracy" | |
| pr-branch-name: "tracy-update" | |
| pr-token: ${{steps.generate-token.outputs.token}} | |
| - name: Update VulkanMemoryAllocator | |
| if: ${{ always() }} | |
| uses: ./.github.qkg1.topposite/update-git-dependency | |
| with: | |
| dependency-path: "Dependencies/VulkanMemoryAllocator" | |
| update-method: "latest-commit" | |
| branch: "master" | |
| pr-title: "VulkanMemoryAllocator" | |
| pr-branch-name: "vma-update" | |
| pr-token: ${{steps.generate-token.outputs.token}} | |
| - name: Update YAMLCpp | |
| if: ${{ always() }} | |
| uses: ./.github.qkg1.topposite/update-git-dependency | |
| with: | |
| dependency-path: "Dependencies/YAMLCpp" | |
| update-method: "latest-commit" | |
| branch: "master" | |
| pr-title: "YAMLCpp" | |
| pr-branch-name: "yamlcpp-update" | |
| pr-token: ${{steps.generate-token.outputs.token}} | |
| - name: Update {fmt} | |
| if: ${{ always() }} | |
| uses: ./.github.qkg1.topposite/update-git-dependency | |
| with: | |
| dependency-path: "Dependencies/fmt" | |
| update-method: "latest-tag" | |
| tag-regex: '^[0-9]+(\.[0-9]+)*$' #X.X.X SemVer | |
| pr-title: "{fmt}" | |
| pr-branch-name: "fmt-update" | |
| pr-token: ${{steps.generate-token.outputs.token}} | |
| - name: Update Catch2 | |
| if: ${{ always() }} | |
| uses: ./.github.qkg1.topposite/update-git-dependency | |
| with: | |
| dependency-path: "Dependencies/Catch2" | |
| update-method: "latest-tag" | |
| tag-regex: '^v[0-9]+(\.[0-9]+)*$' #vX.X.X SemVer | |
| pr-title: "Catch2" | |
| pr-branch-name: "catch2-update" | |
| pr-token: ${{steps.generate-token.outputs.token}} | |
| - name: Update Vulkan-Headers | |
| if: ${{ always() }} | |
| uses: ./.github.qkg1.topposite/update-git-dependency | |
| with: | |
| dependency-path: "Dependencies/Vulkan-Headers" | |
| update-method: "latest-tag" | |
| tag-regex: '^vulkan-sdk-[0-9]+(\.[0-9]+)*$' #vulkan-sdk-X.X.X SemVer | |
| pr-title: "Vulkan-Headers" | |
| pr-branch-name: "vulkan-headers-update" | |
| pr-token: ${{steps.generate-token.outputs.token}} | |
| - name: Update GCEM | |
| if: ${{ always() }} | |
| uses: ./.github.qkg1.topposite/update-git-dependency | |
| with: | |
| dependency-path: "Dependencies/GCEM" | |
| update-method: "latest-commit" | |
| branch: "master" | |
| pr-title: "GCEM" | |
| pr-branch-name: "gcem-update" | |
| pr-token: ${{steps.generate-token.outputs.token}} | |
| - name: Update Premake-VSCodeGen | |
| if: ${{ always() }} | |
| uses: ./.github.qkg1.topposite/update-git-dependency | |
| with: | |
| dependency-path: ".modules/vscode" | |
| update-method: "latest-commit" | |
| branch: "main" | |
| pr-title: "Premake-VSCodeGen" | |
| pr-branch-name: "premake-vscodegen-update" | |
| pr-token: ${{steps.generate-token.outputs.token}} | |
| - name: Update Premake-Ninja | |
| if: ${{ always() }} | |
| uses: ./.github.qkg1.topposite/update-git-dependency | |
| with: | |
| dependency-path: ".modules/ninja" | |
| update-method: "latest-commit" | |
| branch: "master" | |
| pr-title: "Premake-Ninja" | |
| pr-branch-name: "premake-ninja-update" | |
| pr-token: ${{steps.generate-token.outputs.token}} | |
| - name: Update GLSLang | |
| if: ${{ always() }} | |
| uses: ./.github.qkg1.topposite/update-git-dependency | |
| with: | |
| dependency-path: "Dependencies/GLSLang" | |
| update-method: "latest-tag" | |
| tag-regex: '^vulkan-sdk-[0-9]+(\.[0-9]+)*$' #vulkan-sdk-X.X.X SemVer | |
| pr-title: "GLSLang" | |
| pr-branch-name: "glslang-update" | |
| pr-token: ${{steps.generate-token.outputs.token}} | |
| - name: Update SPIRV-Cross | |
| if: ${{ always() }} | |
| uses: ./.github.qkg1.topposite/update-git-dependency | |
| with: | |
| dependency-path: "Dependencies/SPIRV-Cross" | |
| update-method: "latest-tag" | |
| tag-regex: '^vulkan-sdk-[0-9]+(\.[0-9]+)*$' #vulkan-sdk-X.X.X SemVer | |
| pr-title: "SPIRV-Cross" | |
| pr-branch-name: "spirvcross-update" | |
| pr-token: ${{steps.generate-token.outputs.token}} | |
| - name: Update zlib | |
| if: ${{ always() }} | |
| uses: ./.github.qkg1.topposite/update-git-dependency | |
| with: | |
| dependency-path: "Dependencies/zlib" | |
| update-method: "latest-tag" | |
| tag-regex: '^v[0-9]+(\.[0-9]+)*$' #vX.X.X SemVer | |
| pr-title: "zlib" | |
| pr-branch-name: "zlib-update" | |
| pr-token: ${{steps.generate-token.outputs.token}} | |
| - name: Update libpng | |
| if: ${{ always() }} | |
| uses: ./.github.qkg1.topposite/update-git-dependency | |
| with: | |
| dependency-path: "Dependencies/libpng" | |
| update-method: "latest-tag" | |
| tag-regex: '^v[0-9]+(\.[0-9]+)*$' #vX.X.X SemVer | |
| pr-title: "libpng" | |
| pr-branch-name: "libpng-update" | |
| pr-token: ${{steps.generate-token.outputs.token}} | |
| - name: Update QuiteOKImage | |
| if: ${{ always() }} | |
| uses: ./.github.qkg1.topposite/update-git-dependency | |
| with: | |
| branch: "master" | |
| dependency-path: "Dependencies/QuiteOKImage" | |
| update-method: "latest-commit" | |
| pr-title: "QuiteOKImage" | |
| pr-branch-name: "quiteokimage-update" | |
| pr-token: ${{steps.generate-token.outputs.token}} | |
| - name: Update ImGui | |
| if: ${{ always() }} | |
| id: imgui | |
| run: | | |
| cd Dependencies/ImGui/ | |
| git fetch origin docking | |
| git pull origin docking | |
| newest_commit=$(git log --grep="Merge branch 'master' into docking" --pretty=format:'%H' --max-count=1) | |
| git reset --hard $newest_commit | |
| echo "IMGUI_VERSION=${newest_commit}" >> "$GITHUB_OUTPUT" | |
| cd ../.. | |
| - name: Create Pull Request | |
| uses: peter-evans/create-pull-request@v6 | |
| with: | |
| base: dev | |
| add-paths: Dependencies/ImGui | |
| branch: imgui-update/${{steps.imgui.outputs.IMGUI_VERSION}} | |
| delete-branch: true | |
| commit-message: "Update ImGui to ${{steps.imgui.outputs.IMGUI_VERSION}}" | |
| title: "Update ImGui to ${{steps.imgui.outputs.IMGUI_VERSION}}" | |
| labels: "CI/CD, External, Update" | |
| assignees: "GamesTrap" | |
| milestone: 5 | |
| token: ${{steps.generate-token.outputs.token}} | |
| author: "TRAP CI/CD <no-reply@trappedgames.de>" | |
| committer: "TRAP CI/CD <no-reply@trappedgames.de>" |