Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Compile all scripts automatically on every push #4

Open
wants to merge 24 commits into
base: master
Choose a base branch
from

Conversation

th3w1zard1
Copy link

@th3w1zard1 th3w1zard1 commented Feb 6, 2024

I have setup a branch of PyKotor specifically for this repo. By merging this PR you will merge the workflow files .github/workflows/test_compile_k1_scripts.yml and .github/workflows/test_compile_tsl_scripts.yml. These workflows will do the following:

  • Setup Python
  • Clone the special branch from PyKotor
  • Run the pytest that will test all four versions of nwnnsscomp (edit: tslpatcher is the only nwnnsscomp that doesn't require a kotor installation) as well as the PyKotor compiler with all the scripts on this repo.

This will provide detailed information about which scripts can compile and which ones do not. I am aware some of the NCS in the game are broken, if a list can be provided I could add that hardcoded list of script names to the list of scripts to skip. Currently only nwscript.nss is on the ignorable list.

Note:

  • These tests take quite a long time to run.
  • To my knowledge, Github Actions do not have bandwidth or resource restrictions. The overhead shouldn't affect your process at all.
  • Github actions have a default timeout of 6 hours, the tests will only take about half an hour each.
  • These tests require nwnnsscomp.exe to be setup in the folder structures I have provided, as well as nwscript.nss residing in the same folder.

If you use GitHub Desktop or other gui for github, most will notify you when workflows fail. If not, see the below image for how the logging will work:
image

@th3w1zard1 th3w1zard1 marked this pull request as ready for review February 6, 2024 06:37
@th3w1zard1
Copy link
Author

When clicking on Github's actions, the following will be visible for each workflow:
image

The artifacts is the summary/report information for that test.
image

fallback_level_info_nwnnsscomp.txt usually has the most relevant information. The html report is worth checking out:
image

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

1 participant