From a0585b386c5e3cd53c714436be6dd6615b036459 Mon Sep 17 00:00:00 2001 From: NovemLinguae Date: Wed, 19 Jul 2023 02:30:41 -0700 Subject: [PATCH] add documentation for deploying / sync.pl related #1771 --- DEVELOPER.md | 29 +++++++++++++++++++++++++++++ 1 file changed, 29 insertions(+) diff --git a/DEVELOPER.md b/DEVELOPER.md index bd4591711..9844750c7 100644 --- a/DEVELOPER.md +++ b/DEVELOPER.md @@ -134,6 +134,35 @@ The `--base` flag operates as a *prefix*; note the presence of the trailing `/`. [intadmin]: https://en.wikipedia.org/wiki/Wikipedia:Interface_administrators [special_botpass]: https://en.wikipedia.org/wiki/Special:BotPasswords +#### Work instruction + +If you are an interface admin on English Wikipedia and you want to deploy Twinkle's master branch, and you aren't interested in sync.pl's fancy options, here's a simple work instruction. Don't forget to change the username and password. + +``` +Microsoft Windows: +- download and install strawberry perl. https://strawberryperl.com/ +- open powershell +- `cd` to your twinkle/scripts directory +- `cpanm install MediaWiki::API File::Slurper Config::General` +- `cpanm install Git::Repository --force` +- create a bot password at [[Special:BotPasswords]] with the following permissions: edit existing pages; edit the mediawiki namespace and sitewide/user json; edit sitewide and user css/js; create, edit and move pages +- create a file called .twinklerc in the root directory. populate it with the following data + +username = yourUsernameHere (as provided by Special:BotPasswords, should have @ in it) +password = yourPasswordHere +mode = deploy +lang = en +family = wikipedia +url = +base = MediaWiki:Gadget- + +- (local files are used for the deploy I think, so get everything up to date in the next 3 steps) +- `git checkout master` +- go to GitHub and sync your Twinkle fork +- `git pull` +- `perl sync.pl --mode=deploy --all` +``` + ### Dependencies All the dependencies that Twinkle uses are JavaScript **dev** dependencies. They are not used at all on-wiki and are just used during development. Here's what they are and what they do. This may help with evaluating dependabot patches (dependabot is a GitHub bot that helps keep libraries up to date by submitting pull requests).