-
-
Notifications
You must be signed in to change notification settings - Fork 58
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
MFA file approach does not work #56
Comments
Am I misunderstanding the readme when it comes to the ssfn file? i.e. is SteamCMD supposed to create it or is it created by the actual Steam App? Either way, today I re-installed both of these things and there still is not a ssfn file on my PC, including hidden files. |
|
I tried it on Windows again this morning. SteamCMD updated itself and finally generated the ssfn file. I put all the data in github secrets and the workflow executed successfully... the first time. I tried again 15 minutes later after a push and it's saying my auth code is invalid. I tried SteamCMD on Linux again, it updated as well, but it is still not generating the ssfn file. Frustrated with the MFA file method, I tried the TOTP. I got my secret and put the data in github secrets. Just like the MFA method, the worflow worked the first time, but not 15 minutes later. It's now asking for my mobile code. The whole point of this is to not have to enter these codes anymore, right? So I'm not sure what I'm doing wrong when both methods stop working after 15 minutes, presumably after the first authentication time period expires. I don't know if I should close this issue and open separate ones for Linux SSFN, MFA not working more than once, and TOTP not working more than once. |
I am experiencing the same issue. I am using the MFA-Files method and a dedicated runner for GitHub Actions.
I also get an email with a Steam Guard code during the second run. Logging in on my local machine generates a new config.vdf. |
Hi, I had the same problem. What I tried today is to execute all the login steps inside the It seems that the If that happens, perhaps the solution to this will be to spin-off a more stable, properly tagged and versioned image. |
Hi, I also have the same problem. I'm using a modified version of the deploy script in Gitlab CI. I tried creating a docker image with the I really hope somebody finds a solution to this, it would be quite sad if I got a complete CI pipeline working only to fail at the deploy step. |
I think I've found a solution to this problem. Gitlab CI has the option of using a Shell runner, it executes commands as a regular Linux user. I now have a steam-deploy runner that I've manually set up with MFA. It would be interesting what information it uses to generate the MFA files, but it seems quite strict now. Not sure how this applies to Gihub though. |
also getting this. any updates? |
I'm pretty sure this Action is dead in the water. If you are logging in from a new IP, the Steam API doesn't seem to care if you provide your ssfn or config files... Steam will either send you an email (MFA method) or ask for your Mobile Code (TOTP method) despite already doing these steps before. I got my own pipeline to work doing the following:
I've been using this method since 20 March and I have never had a failure / never received a Steam Guard email. The instance is now considered a trusted source, just like me logging in with Steam on my own personal machine to play games. |
Having a dedicated IP for the MFA verification is a good idea, thanks for sharing this tip! |
thanks for sharing! good to know. I guess using self-hosted also works fine, if it's always the same machine that uploads. however, a 'good enough' alternative would be to use a "builder account" with no 2fa on it. just a follow-up, I also tried using the TOTP approach, got a similar failure, different message:
|
IIRC any Steam account affiliated with a Steamworks organization is required to use MFA. I just tried to disable MFA for my builder account and was greeted with this error message: I just tried the following:
Unfortunately, steamcmd still asks for the Steam Guard code:
|
thanks for sharing. it's frustrating |
I didn't try it with Docker, I just straight up installed SteamCMD and dependencies on the instance. IDK if that matters, not sure how Docker would interfere, idk enough about Docker to say. Make sure your IP address isn't changing; otherwise idk what else to suggest. |
Hey y'all just reposting in case it got lost in the conversation. This action works perfectly for me, and has been since my last comment. The only thing I did was generate the required files inside the |
Yeah; I'm also experience this. Unlike one previous poster it has only worked ones and now it fails even when I regenerate the config/tokens. So might be some form of new backend logic.. luckily its only like 99.9% of the industry that uses some form of CI so it's not like valve broke it for a lot of people /s. |
You should ask if that includes IP, that's the only way I got it to work: same system w/ same IP. Maybe reference this thread while you're at it. |
I did link to this issue in the initial inquiry, I also mentioned that it’s running in a GitHub action (eg non-permanent ips) |
ok, so based on that, their documentation is up to date.
tried it, doesn't work. I'm using the steamcmd official docker image with the twist that I'm also replacing the config.vdf file. |
This seems like it works for me. I forked the action and have it only supply the username and the config.vdf file when logging in. I ran the action about a dozen times and SteamGuard has not locked me out yet. Thank you @filiphsps, as well as Jon & Jason from Steam Support! |
They mention that you need to preserve |
https://github.com/game-ci/steam-deploy#configvdf-ssfnfilename-and-ssfnfilecontents |
Thank you, but I don't see anything in that link which explains how modifications are persisted between runs. I checked through the source for steam-deploy and did not see any mechanism that might allow for this yet. I am assuming this has not yet been implemented. I bring this up because the response from Valve seems to indicate that |
it doesn't seem ideal. I wonder how would this play out when it needs to be machine-agnostic. if config.vdf is changed on a machine, does it invalidate all other config.vdf files on other machines (as they'd start from the same 'seed' config.vdf)? |
There seems to be some speculation in the last few comments. The original post does in fact not say whether There's also a big difference between it being changed once, or (potentially) on every run. In order to make design decisions we need more information and either
|
I think the text of the documentation is fairly clear:
Emphasis is theirs. However, I do agree that getting a direct comment from Valve on this would be helpful, if we can get such a comment. |
Providing a PR #57 that applies the known workarounds in this issue. I've been testing on my fork for a few days and it appears stable. Hope others can help validate. |
Just used your fork to set up completely new pipeline and it works fine. Thanks! |
Merged and promoted to Remaining actions:
|
PRs to close this issue: |
Both approved and merged |
* Update steam_deploy.sh Bypass ssfnFileName handling * Update steam_deploy.sh * remove defunct inputs; clean up deploy script; update docs for vdf option * adding missing vdf readme updates (cherry picked from commit 26412a2)
Related conversation after this was merged. Some (or all?) people are experiencing having to regenerate the 2FA. Discussion is on our discord: https://discord.com/channels/710946343828455455/1131954718269255861 (first join our discord before clicking the link, or Discord will cache permissions denied) |
For people already using this pipeline, it will probably continue to work since I don't see any new issues. However, for people new to this pipeline like me, I don't think the MFA file method works anymore. I think Valve has changed some things regarding SteamCMD and the Steam app itself. Here is my experience:
I am using PopOS which is based off Ubuntu 22.04. I run through the readme steps:
I figure this must be something with Linux, so I hop on to my Windows machine. My Windows machine has pretty much nothing on it, not even Steam. I repeat the steps:
In summary, it seems the MFA file approach for this pipeline is deprecated in its current state for new users. Valve has clearly changed something with SteamCMD, given that the config.vdf file is in a new location and a new SSFN file isn't being created at all.
The text was updated successfully, but these errors were encountered: