#command #toml #config-file #butler #io #execute #push

bin+lib butlerswarm

Helper for automating uploads to itch.io via butler

3 unstable releases

0.9.1 Aug 27, 2022
0.9.0 Jul 14, 2022
0.8.0 Jul 5, 2022

#371 in Template engine

MIT/Apache

43KB
958 lines

butlerswarm

Wrapper program to help manage multiple builds with itch.io's butler tool.

Usage

butlerswarm generate - Write out a template config file.

butlerswarm push - Execute the butler commands as defined in the toml to upload.

butlerswarm print - Print out the command text (for testing the toml).

butlerswarm dry-run - Execute butler commands with the --dry-run flag, showing what files will be pushed.

The progam reads from a .butlerswarm-cfg.toml file, formatted like:

itch_account_name = "my-cool-name"
itch_game = "my-cool-game"
base_dir = "build"

[channels.windows]

[channels.linux]

The username, project name, channels and directories are used to assemble and execute butler commands.

The example shown will run the commands upon executing butlerswarm push:

butler push build/windows my-cool-name/my-cool-game:windows
butler push build/linux my-cool-name/my-cool-game:linux

For more detail, see TOML_SPEC.md

Requirements

butler (or butler.exe for windows) must be present in your PATH (or at the location otherwise specified), and authenticated to the desired itch account, either via running butler login or the BUTLER_API_KEY environment.

So far, this program has only been tested on Linux, but should in theory run on Windows, OSX.

License

Licensed under the Apache License, Version 2.0 (the "License"), or the MIT license;

See LICENSE or LICENSE-MIT.

Dependencies

~2–2.8MB
~52K SLoC