mirror of https://github.com/n64decomp/007.git
131 lines
4.3 KiB
YAML
131 lines
4.3 KiB
YAML
name: NTSC-Status
|
|
|
|
on:
|
|
push:
|
|
branches: master # Only trigger on master
|
|
paths-ignore: # Don't trigger on files that are updated by the CI or other non-breaking files
|
|
- 'tools/**'
|
|
- '*.md'
|
|
- '.github/**'
|
|
- '.gitignore'
|
|
- 'CppProperties.json'
|
|
|
|
pull_request:
|
|
branches: master # Only trigger on master
|
|
|
|
# Allows you to run this workflow manually from the Actions tab
|
|
workflow_dispatch:
|
|
|
|
jobs:
|
|
changedfiles:
|
|
runs-on: ubuntu-latest
|
|
# Map a step output to a job output
|
|
outputs:
|
|
all: ${{ steps.changes.outputs.all}}
|
|
steps:
|
|
# Make sure we have some code to diff.
|
|
- name: Checkout repository
|
|
uses: actions/checkout@v2
|
|
- name: Get changed files
|
|
id: changes
|
|
# Set outputs using the command.
|
|
run: |
|
|
echo "::set-output name=all::$(git diff --name-only --diff-filter=ACMRT ${{ github.event.pull_request.base.sha }} ${{ github.sha }} | xargs)"
|
|
|
|
buildus:
|
|
runs-on: ubuntu-22.04
|
|
steps:
|
|
- name: Checkout repository
|
|
uses: actions/checkout@v2
|
|
# - name: Bypass Cloudflare for GitHub Action
|
|
# uses: xiaotianxt/bypass-cloudflare-for-github-action@v1.1.1
|
|
# with:
|
|
# cf_zone_id: ${{ secrets.CF_ZONE_ID }}
|
|
# cf_api_token: ${{ secrets.CF_API_TOKEN }}
|
|
# - uses: actions/checkout@v2
|
|
# with:
|
|
# fetch-depth: 2
|
|
- name: Install Depedencies
|
|
run: |
|
|
sudo apt update
|
|
sudo apt install binutils-mips-linux-gnu make
|
|
wget https://github.com/n64decomp/qemu-irix/releases/download/v2.11-deb/qemu-irix-2.11.0-2169-g32ab296eef_amd64.deb
|
|
sudo dpkg -i qemu-irix-2.11.0-2169-g32ab296eef_amd64.deb
|
|
|
|
- name: Get precompiled recomp to save time
|
|
env:
|
|
IDO_RECOMP: ${{ secrets.FILE_RECOMP }}
|
|
run: |
|
|
wget -O recomp.zip $IDO_RECOMP
|
|
unzip -u recomp.zip -d tools/ido5.3_recomp
|
|
|
|
- name: Get US File
|
|
env:
|
|
FILE_US: ${{ secrets.SECRET_FILE_US }}
|
|
run: wget -O baserom.u.z64 $FILE_US
|
|
|
|
# cach is only usefull if downloading things takes longer than copying things - in this case, extraction is quicker
|
|
#- name: Cache Assets
|
|
# id: cache-assets
|
|
# uses: actions/cache@v3
|
|
# with:
|
|
# path: assets
|
|
# key: ${{ hashFiles('extract_baserom.u.sh') }}
|
|
|
|
- name: Extract US Assets
|
|
#if: steps.cache-assets.outputs.cache-hit != 'true'
|
|
run: ./scripts/extract_baserom.u.sh
|
|
|
|
- name: Make US
|
|
run: make all -j IDO_RECOMP=YES VERSION=US VERBOSE=1
|
|
|
|
- name: Make report
|
|
run: make -C tools/report
|
|
|
|
# for refrence, these diff commands wont work in GHA, so, "Last modified file" will never work
|
|
# GHA makes new copies of all files (so modified date is all the same) and wont lok at logs (commands below)
|
|
#- name: difftest1
|
|
# run: git diff --name-only origin/master ${GITHUB_HEAD_REF}
|
|
|
|
#- name: difftest2
|
|
# run: git diff --name-only ${{ github.event.before }} ${{ github.sha }}
|
|
|
|
#- name: difftest3
|
|
# run: git diff --name-only -1
|
|
|
|
#- name: difftest4
|
|
# run: git diff --name-only @"{10 minutes ago}"
|
|
|
|
- name: Stats
|
|
run: python3 tools/ge-stats.py --version us --report
|
|
# expected args
|
|
# 1481 15854 12774 232276 564 1312 652 20330 15471 269772 49 336 tools/report/index.html "src/game/bondview.c"
|
|
|
|
# Replace this with Git push to repo
|
|
# but somehow avoid loop
|
|
|
|
#- uses: actions/download-artifact@v2
|
|
# with:
|
|
# name: my-artifact
|
|
# path: tools/report/index.html
|
|
#- name: Upload output files
|
|
|
|
# uses: AXDOOMER/copy_file_to_another_repo_action@e54ae5087212906dac7ef96dee19e31190913257
|
|
|
|
#env:
|
|
# API_TOKEN_GITHUB: ${{ secrets.API_TOKEN_GITHUB }}
|
|
# API_TOKEN_USER: ${{ secrets.API_TOKEN_USER }}
|
|
# API_TOKEN_EMAIL: ${{ secrets.API_TOKEN_EMAIL }}
|
|
|
|
# with:
|
|
# destination_repo: 'kholdfuzion/goldeneyestatus'
|
|
# user_email: $API_TOKEN_EMAIL
|
|
# user_name: $API_TOKEN_USER
|
|
# source_file: |
|
|
# tools/report/cursor.cur
|
|
# tools/report/index.html
|
|
# tools/report/sfx.ogg
|
|
# tools/report/background.jpg
|
|
|
|
#need way of telling report that JAP passed/failed
|