@pxeger you have to make sure you manually clone the repository into mysite when you first set it up: cd /home/vyxal; rm -rf mysite; git clone [email protected]:Vyxal/Vyxal.git mysite
and now I think about it, actually, you need to create an SSH key on PythonAnywhere as well
1: run ssh-keygen on PythonAnywhere, and press enter for all the defaults (no password)
2. copy the contents of ~/.ssh/id_rsa.pub (not~/.ssh/id_rsa, because that's the private key)
3. add the public key as a Deploy Key on GitHub - just paste it into github.com/vyxal/vyxal/settings/keys/new (give it a good name, and don't allow write access)
after you've done that, you should be able to clone the repo
@pxeger the password is stored as a Repository Secret in GitHub Actions called FUNKY_PASSWORD
I should really change it so that it's a secret only accessible within workflows defined under the production Environment, though
@lyxal wait I just realised I don't have a plaintext version of the password right now, it's only on my desktop at home and I'm on holiday (did you notice my timezone changed?)
I don't think it'd too hard to change though, if you needed to
just change the hash in flask_app.py and update the GitHub secret value
@pxeger when it runs the script, it does it with a slight hack using os.fork() (which doesn't work on Windows, so you can't test it there), because the script needs to run in a separate process detached from the web app
otherwise when PythonAnywhere tries to restart flask, it gets a deadlock because it's waiting for funky_upgrade.sh to stop running, which is waiting for the PythonAnywhere restart API call to finish, which is waiting for the flask app to stop, ...