Hey! I know this is an old post but I just started trying the same thing, use butler to update an HTML game. I'm still lost, what exactly is a "channel"?
As Amos showed above:
butler push folder user/game:channel
A channel is just a name for you to use to distinguish between different files offered on a game. So for example, I always upload a ZIP file for Windows, for Mac OS, and for Linux. So I use channels named "windows", "macos", and "linux" to keep track of which one is which.
Gotcha, but I'm still confused. Where do these channel names come from? The docs say "Tagging a channel as 'HTML5 / Playable in browser' needs to be done from the itch.io Edit game page, once the first build is published", but in the edit game page there's nothing like "channels".
Is there any "butler for dummies" tutorial out there? I really have a lot of questions and I can't find any well-explained resource. :(
You make up whatever names you want when using butler. Once you have pushed the first build with butler, they will show up on the edit page for a game.
Ask away, and I will answer what I can. I can also look into getting Amos / Leafo to look into changing the wording of the docs to be a little easier to understand if I can think of a better way to word it.
Awesome, thanks a lot. I gave it a try and finally got it to work. It's way faster than uploading a zip from the edit page, so that's a good thing.
I figured out the answer to some of my questions, which I write here below for what is worth for any beginner:
- First of all, what to upload: the traditional publishing process for HTML games on itch involves:
- Zipping the entire directory containing the game
- Go to the edit game page.
- Delete the old zip you had published (if any).
- Upload the new zip.
- Go grab a coffee, walk the dog and watch The Godfather trilogy while you wait.
- Check the "This file will be played in the browser" field and test your game.
- However (and this is what the docs don't mention), with butler you don't upload the zip but the directory; no need to create a zip, delete old versions, waiting for hours or reconfiguring the new version. BTW I created I batch file beneath my game directory with the push command, so when I want to upload a new version I just double click it and wait (much much less than before).
- The mystery of "channel names": It would be great if the docs mentioned what this is. They just say "The name of a channel has meaning..." ok but what are they? It would be worth to mention they're like arbitrary tags set from butler, and a small example of how they look. For instance, in my case, doing something like "butler push gamefiles edu/beginning:html5" where "gamefiles" is the directory that contains the index.html file and "html5" is my "channel name", once butler is done you'll find something like this in the edit game page.
The image is necessary in the docs because this is something you never see before using butler, so it's hard to understand.
- Once butler is done, a message appears in the console indicating "Build is now processing, should be up in a bit (see 'butler status')" but I couldn't find anything in the docs about the status option. I just figured out I had to use almost the same syntax as "push" to see the status of my upload (butler status user/game:channel).
- The only strange thing I found was when I actually tried to run the game after uploading it with butler. I went to my game page and pressed the "Run Game" button. Unlike other situations, when a loading bar appears with the message "loading game for the first time", it just printed a dark grey screen with black text (almost unnoticeable): "AccessDeinedAccess denied. Anonymous caller does not have storage.objects.get access to itchio/html/[a_number_here]/index.html". I have no idea why this happened, but it got fixed after I uploaded my old zip again, set it as executable, saved the game, then changed the executable again to the one pushed with butler and saved the game again. WEIRD.
Even in my usage of butler, I've actually never seen an image like that while editing a game. o.O Perhaps because I haven't done web uploads with it? To be honest I find your confusion with the channel names mystifying because it was obvious to me, but if one person has difficulty with it, there's likely to be more, so I agree the docs should be modified.
As for the error you encountered, you really should point that out to the Itch.io team because that's probably something they need to look into. Glad it's fixed for you now though. ^^