dolphin-emu / sadm Goto Github PK
View Code? Open in Web Editor NEWScripts and configurations for the Dolphin Emulator infrastructure
License: MIT License
Scripts and configurations for the Dolphin Emulator infrastructure
License: MIT License
Currently dolphin uses the 32bit toolchain to make 64bit binaries. The main advantages of using the 64bit toolchain is just that it can use more memory. Someone should experiment on the buildbot and see if it helps build times.
You can tell msbuild to use 64bit toolchain with /p:PreferredToolArchitecture=x64
.
Is this builder really helpful?
AFAIK The only differences from normal build are that AUTOUPDATE is not defined and STEAM is defined.
STEAM macro is never used in the source code (appears to only be used in some cmake stuff). Probably this should be reworked and not exposed as a macro, anyway.
cc @OatmealDome
storesymbols.bat calls
"C:\Program Files (x86)\Windows Kits\8.0\Debuggers\x64\symstore.exe"
Should be 8.1 version instead of 8.0 (it shouldn't matter, but still better form...).
Currently the change submission path via the Buildbot webhook API is not properly authenticated, and this could be an abusable flaw. Once Buildbot is moved to altair and modernized, add a new webhook parser plugin which supports some kind of HMAC signature, or at the very least something like HTTP basic auth.
(I think we might actually be able to do HTTP basic auth already as a stopgap, but haven't tried.)
Replace with some new code in central to send release changes via the webhook API (instead of the PB API which changes
currently uses). Main complexity is that we need to have a local repo clone to run git describe
and to find what branch commits are on (replicating the basic features of the git-what-branch
Perl script we're currently using).
git-what-branch
basic reimplementationcan we schedule the next windows build to occur after other build is done (e.g. while test may be occurring)?
debug test run takes a long time and it's annoying.
Should be fairly easy using the Nix role I wrote for the FifoCI radeon worker I run on my home infra: https://github.com/delroth/infra.delroth.net/blob/master/roles/fifoci-worker.nix
Feb 13 00:00:00 altair systemd[1]: Starting Android Play Store updater (beta -> production)...
Feb 13 00:00:07 altair android-updater[2768075]: Traceback (most recent call last):
Feb 13 00:00:07 altair android-updater[2768075]: File "/nix/store/phb42swrq1fd2phpz3bfl9jzkqfj932z-android-updater/bin/.android-updater-wrapped", line 93, in <module>
Feb 13 00:00:07 altair android-updater[2768075]: _upload_new_playstore_apk(play, args.package_name, args.playstore_track,
Feb 13 00:00:07 altair android-updater[2768075]: File "/nix/store/phb42swrq1fd2phpz3bfl9jzkqfj932z-android-updater/bin/.android-updater-wrapped", line 51, in _upload_new_playstore_apk
Feb 13 00:00:07 altair android-updater[2768075]: mimetype=_APK_MIME)).execute()
Feb 13 00:00:07 altair android-updater[2768075]: File "/nix/store/9bkjan3wm2jk1sqx3r6dq60895ddcg31-python3.10-google-api-python-client-2.61.0/lib/python3.10/site-packages/googleapiclient/_helpers.py", line 130, in positional_wrapper
Feb 13 00:00:07 altair android-updater[2768075]: return wrapped(*args, **kwargs)
Feb 13 00:00:07 altair android-updater[2768075]: File "/nix/store/9bkjan3wm2jk1sqx3r6dq60895ddcg31-python3.10-google-api-python-client-2.61.0/lib/python3.10/site-packages/googleapiclient/http.py", line 938, in execute
Feb 13 00:00:07 altair android-updater[2768075]: raise HttpError(resp, content, uri=self.uri)
Feb 13 00:00:07 altair android-updater[2768075]: googleapiclient.errors.HttpError: <HttpError 403 when requesting https://androidpublisher.googleapis.com/upload/androidpublisher/v3/applications/org.dolphinemu.dolphinemu/edits/10547343839644832876/apks?alt=json&uploadType=media returned "APK specifies a version code that has already been used.". Details: "APK specifies a version code that has already been used.">
Feb 13 00:00:07 altair systemd[1]: android-updater-release.service: Main process exited, code=exited, status=1/FAILURE
Feb 13 00:00:07 altair systemd[1]: android-updater-release.service: Failed with result 'exit-code'.
Feb 13 00:00:07 altair systemd[1]: Failed to start Android Play Store updater (beta -> production).
Currently FifoCI can only submit results by running a manage.py command on the server side, and only as the user running the backend service. The buildbot master happens to run on the same machine and uses sudo -u fifoci
to run that script, but this has several issues:
Ideally this is replaced with an API call and a client that can be called by the Buildbot (either as a Python library, or a separate binary -- separate binary might be easier for now).
This is very minor, but recently with the removal of DolphinWx.app from the generated .dmg file, the .app file for Dolphin is no longer capitalized.
To be consistent with how the Windows executable is generated it should probably be capitalized.
Causing some PRs to become green before all builders have finished their job when other build jobs happen concurrently (for example, release/wip builds).
It seems that the "cleaning cg" and "purging pdb" build steps no longer do anything, and should be removed...?
Not sure if our situation defaults to enabling multithreading, would be great if buildbot runner could test :)
Might require using lzma2, which is better anyways.
9:12 PM <•Helios747> hey delroth, can you fix the expired cert on dolp.in links?
...
9:13 PM <•delroth> Helios747: yeah... I should do that
9:13 PM <•delroth> need to figure out what's the recommended option nowadays for fetching LE certs
9:13 PM <•Helios747> I just cronjob it myself
9:14 PM <•Helios747> ubuntu has "certbot" which I throw into a weekly cronjob
...
9:14 PM <•delroth> yeah but certbot is annoying with how it changes your nginx configs
9:15 PM <•Helios747> Doesn't it have a "standalone" switch?
9:15 PM <•Helios747> which just spins up a python webserver
9:15 PM <•delroth> maybe
9:15 PM <•delroth> anyway, we've got a wildcard cert for *.dolphin-emu.org anyway, so it's really only dolp.in
9:15 PM <•delroth> I'll just do a DNS verification or something
You don't want to use standalone, you want to use the webroot
option plus certonly
. Webroot (for http-01) just drops the files in a folder you specify, I use /tmp/letsencrypt
then tell the web server to serve anything matching /.well-known/acme-challenge/
out of /tmp/letsencrypt/.well-known/acme-challenge
.
certonly
doesn't attempt to install the certificate; instead, provide an "install hook" that tells nginx to reload
the certs.
Getting this warning when running colmena apply
.
add /p:RunUnitTests=true
I'm trying to automate beta releases for the flathub build.
Currently it downloads a specified commit from the dolphin git repo that's updated manually whenever there's a new blog post.
The tool to automate this process, flatpak-external-data-checker, requires either a branch or tag to update the commit.
I've tried pulling the commit hash from https://dolphin-emu.org/update/latest/beta
and downloading the source from https://github.com/dolphin-emu/dolphin/archive/{commit}.zip
but as the repo uses submodules this fails to build.
Would it be possible to get any one of these:
5.0-16793
beta
It seems like Buildbot is building Windows x64 (and possibly more) releases twice and racing to replace the released artifact. If a user or automated system downloads the first build artifact and compares it to a user who downloaded it a few minutes later, the two files differ.
An example of the duplicate builds:
Original: https://dolphin.ci/#/builders/6/builds/2486
Duplicate: https://dolphin.ci/#/builders/6/builds/2488
The only difference I can see between the builds (besides timestamp) is that the second build only marks @delroth as "Responsible", while the first build has 4 users marked.
This causes issues with package managers like Scoop, which download build artifacts and validate their hash. The automated commit Calinou/scoop-games@15cf5b5 claims the artifact from the duplicated build 18271 has SHA256 e0cc4e6e4da497736b2e0ca6088700ab037848866083d851b984b012151da185
, when the file hosted on the website as "build 18271" has hash 738d372ff81527a7c37a58aa62d9abc2efc68cfb7b8a689e5081829857d08210
.
The Scoop code that computes the hash is located here: https://github.com/ScoopInstaller/Scoop/blob/f93028001fbe5c78cc41f59e3814d2ac8e595724/lib/autoupdate.ps1#L277-L278, and the "Computed hash:" message is printed in this log (use the log search instead of Ctrl+F): https://github.com/Calinou/scoop-games/actions/runs/3954168346/jobs/6771222872
A declarative, efficient, and flexible JavaScript library for building user interfaces.
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google ❤️ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.