Skip to content

Update Dependencies #105

Update Dependencies

Update Dependencies #105

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, "23.10", cpu]
steps:
- name: Cleanup workspace
if: ${{ always() }}
uses: gamestrap/[email protected]
- 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/composite/update-git-dependency
with:
dependency-path: "Dependencies/Box2D"
update-method: "latest-commit"
branch: "main"
pr-title: "Box2D"
pr-branch-name: "box2d-update"
pr-token: ${{steps.generate-token.outputs.token}}
- name: Update EnTT
if: ${{ always() }}
uses: ./.github/composite/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/composite/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/composite/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/composite/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/composite/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/composite/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/composite/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/composite/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/composite/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/composite/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/composite/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/composite/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/composite/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/composite/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 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 <[email protected]>"
committer: "TRAP CI/CD <[email protected]>"