3 changed files with 6293 additions and 1 deletions
+86
View File
@@ -0,0 +1,86 @@
name: Minor Patch Diff Workflow
on:
workflow_dispatch:
jobs:
check-and-diff:
runs-on: ubuntu-latest
permissions:
contents: write
pull-requests: write
steps:
- name: Checkout
uses: actions/checkout@v6
- name: Set up Python
uses: actions/setup-python@v6
with:
python-version: '3.12'
cache: 'pip'
- name: Fetch Patch Info and Update Versions
id: versions
run: python automation/ffxiv_info.py >> $GITHUB_OUTPUT
- name: Download Latest ffxiv_dx11.exe
if: steps.versions.outputs.is_new == 'true'
run: python automation/download_exe.py --output latest/
- name: Download Previous ffxiv_dx11.exe
if: steps.versions.outputs.is_new == 'true'
run: python automation/download_exe.py --version "${{ steps.versions.outputs.thaliak_version_prev }}" --output previous/
- name: Install Analysis Tools
if: steps.versions.outputs.is_new == 'true'
run: |
curl -L -o radare2.deb https://github.com/radareorg/radare2/releases/download/6.1.0/radare2_6.1.0_amd64.deb
sudo dpkg -i radare2.deb || sudo apt-get install -f -y
rm radare2.deb
- name: Install Python Dependencies
if: steps.versions.outputs.is_new == 'true'
run: |
pip install -r requirements-vtable.txt
- name: Run Diff
if: steps.versions.outputs.is_new == 'true'
run: |
LATEST_EXE=$(find latest -name "ffxiv_dx11.exe" | head -n 1)
PREVIOUS_EXE=$(find previous -name "ffxiv_dx11.exe" | head -n 1)
cp "$LATEST_EXE" "ffxiv_dx11.${{ steps.versions.outputs.retail_new }}.exe"
cp "$PREVIOUS_EXE" "ffxiv_dx11.${{ steps.versions.outputs.retail_prev }}.exe"
# Run the diffing process and capture JSON output
python vtable_diff.py "ffxiv_dx11.${{ steps.versions.outputs.retail_prev }}.exe" "ffxiv_dx11.${{ steps.versions.outputs.retail_new }}.exe" > "diffs/${{ steps.versions.outputs.retail_new }}.diff.json"
- name: Upload Results
if: steps.versions.outputs.is_new == 'true'
uses: actions/upload-artifact@v3
with:
name: diff
path: |
diffs/${{ steps.versions.outputs.retail_new }}.diff.json
- name: Commit and push update branch
if: steps.versions.outputs.is_new == 'true'
id: commit
run: |
BRANCH="auto-update-${{ steps.versions.outputs.retail_new }}"
echo "branch=$BRANCH" >> "$GITHUB_OUTPUT"
git config user.name "gitea-actions"
git config user.email "actions@gitea.lozy.pink"
git checkout -b "$BRANCH"
git add -A
git commit -m "Update for ${{ steps.versions.outputs.retail_new }} (${{ steps.versions.outputs.thaliak_version_new }})"
git push origin "$BRANCH" --force
- name: Open Pull Request (Gitea API)
if: steps.versions.outputs.is_new == 'true'
run: |
curl -sf -X POST \
-H "Authorization: token ${{ secrets.GITHUB_TOKEN }}" \
-H "Content-Type: application/json" \
-d '{"title":"Update for ${{ steps.versions.outputs.retail_new }} (${{ steps.versions.outputs.thaliak_version_new }})","head":"${{ steps.commit.outputs.branch }}","base":"main","body":"Automated opcode diff update for retail version ${{ steps.versions.outputs.retail_new }} (${{ steps.versions.outputs.thaliak_version_new }})."}' \
"https://gitea.lozy.pink/api/v1/repos/lozy360/opcodediff/pulls"
+4
View File
@@ -170,5 +170,9 @@
{
"retail_version": "7.55h2",
"version_string": "2026.08.11.0000.0000"
},
{
"retail_version": "7.56",
"version_string": "2026.09.01.0000.0000"
}
]
+6202
View File
File diff suppressed because it is too large Load Diff