-
Notifications
You must be signed in to change notification settings - Fork 22
Add github actions for automated building #431
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
base: dev
Are you sure you want to change the base?
Conversation
a0c9864
to
bdcae96
Compare
Super neat! Thank you! However, Windows users (which is most of them) will almost certainly have no idea what to do with the resulting archive. Should be a zip file. |
You're right, also I think it's double packed (as in directory in directory), I'll correct both of these problems soon |
The Windows build should be built on Linux too, but this doesn't seem to work because of the asset packing mode. The build system tries running Edit: nevermind, that causes an infinite loop obviously. Starting to think that the asset packing should be done using the waapack dotnet tool instead of MIR itself. The only downside to this is that it's impossible to run the custom asset preprocessors. It's a good thing that they're not required as of now. |
Yes, I've hit that wall at first when I tried to run both on Linux and finally gave up and set up a separate runner on windows. I tried packing windows build on Linux using Linux build but it didn't work sadly. I can try and come up with something else though |
c55209e
to
fbea6a5
Compare
fbea6a5
to
fcbfd7d
Compare
I've modified the workflow to produce zips (I had to add 7z on Windows since I knew no other way to create one π ) You can view the built artifacts here Let me know if there's anything else I should add or change or feel free to modify my PR as you see fit π (I'm not sure if the asset packing on Linux is meant to be done in this PR or sometime after changing the tools, so let me know as well if I should work on it) |
β¦nd, fix artifact names no idea if this is going to work!
No idea how to test this lmfao. EDIT: I could just merge & run, or even use |
Be my guest. You should have an option to authorize running these within this PR, this will create both the artifacts like here. They are workflow only and will get removed after the retention period. As I mentioned this also provides Release feature, which will add these automatically when you push tags, you can view it here, however if you don't like this feature feel free to remove it (it's the last step in workflow) Also, thanks for the corrections, I'm not really good at C# atm but I hope to get to the point where I'll be able to contribute at least a bit |
To reiterate - the artifacts that are built as part of the check (not the release ones) are temporary, I believe the default is 90 days |
One more thing - I'd suggest leaving the dev branch as a part of the workflow since this would serve as a basic test if the proposed changes do actually compile :D Later on it'd also be possible to add automated tests. This would likely be useful for external contributors (like myself) since they could have at least a minimal validation of their changes and this could help with code review since reviewers could simply view the checks statuses or pull the builds directly. If you don't want the artifacts then the upload can be gated similarly to how releases are configured. Ofc this is just a suggestion |
π Related Issues
Closes #425
β Summary
The goal of this PR is to introduce GitHub Actions for automated building of the game for Windows and Linux.
π Description
The workflow:
xz
(this should help reduce the file but may not be Windows-friendly)π¬ Talking points
Stuff up for discussion/changing:
.csproj
to conditionally change the way in which theMRI
is invoked, since the current setup does not work on Linux and the Linux one does not work on Windows, it could perhaps be handled differentlyβ Additional info