| .. | ||
| Chocolatey | ||
| Doc | ||
| Extern | ||
| PluginStore | ||
| Sharpmake | ||
| Source | ||
| TestScripts | ||
| .gitignore | ||
| .gitlab-ci.yml | ||
| .p4ignore | ||
| CONTRIBUTING.md | ||
| GenerateSolutions.bat | ||
| README.md | ||
TeaBox
TeaBox is an awesome productivity tool designed to automate your repetitive day-to-day tasks through a comfortable inferface. You can use it "as is", by cherry-picking various example scripts from our PluginStore, but the best way to enjoy TeaBox is to build your own macros to fit your production needs.
Video presentation
French video: [Link to video](https://videocdn01.ubisoft.org/prod/player/index.aspx?c=6l33t&s=public&bgcolor=#fff" frameborder="0" allowfullscreen="true") (Video is from TeaBuddy, the previous version of TeaBox)
Features
Powerful Macro Scripting for your project
[Macro]
[Description("Executes generateprojects.bat.")]
public void Generate_Projects(IExecutionContext context)
{
var command = new BatchFileCommand("generateprojects.bat");
command.Execute(context);
}
[Macro]
[Description("Compiles the Anvil solution.")]
public void Build_Anvil(IExecutionContext context,
BuildOperation buildOperation = BuildOperation.Build,
DevEnvBuildVariant variant = DevEnvBuildVariant.Release)
{
string solution = Path.Combine(RootFolder.Value, @"projects\win32\anvil.sln");
string configuration = string.Format("{0}|Any CPU", variant);
var command = new DevenvCommand(solution)
{
Operation = buildOperation,
Configuration = configuration
};
command.Execute(context);
}
Create macros to automate tasks on your project, using a simple script workflow. All scripts are plain C# and can be created and updated without having to restart TeaBox. Script editing is done in Visual Studio to preserve the best IDE experience. TeaBox will automatically reload any modified scripts on-the-fly.
Macro Queuing and Playlists
Macros can be queued to achieve longer and more complex tasks. Groups of macros can be saved as playlists and shared among the team. Playlists can be scheduled to be run regularly or at later times.
For example, a playlist could:
- Sync latest code
- Run
generateprojects.bat - Build
guildlib.sln - Build
scimitar.tool.dll.win64.2012.sln - Build
scimitar.engine.win64.2012.sln - Build
anvil.sln - Sync latest data
- Binarize the data for PC, XBoxOne & PS4
while you enjoy a cup of tea (or during the night!).
Quick Run from anywhere
TeaBox provides a few global shortcuts to launch macros and playlists from anywhere, even when TeaBox is not focused:
WinKey+O(WinKey+Shift+Ostarting from Windows 8)WinKey+Shift+B
The Quick Run bar can:
- Queue macros and playlists
- Launch common executables on your project
- Open common web sites about your project (think jira, confluence or sharepoint!)
- Find users
- Be extended with your own shortcuts!
Branch management
If your project has to deal with multiple branches, TeaBox can help you! All macros/paths can easily be made branch-aware so that they act in the current branch. The current branch can be switched through the Quick Run bar or from a macro.
Usage & Installation
TeaBox is usually deployed as binaries + scripts on a project's perforce depot. This repository provides a barebone TeaBox installation and does not contain any project-specific scripts. However, a PluginStore folder is provided, with example scripts that you can re-use freely, by pasting them in your Binaries/Script folder.
Feel free to contact @jtdelorme or @fparadis2 if you want guidance on integrating TeaBox within your project/team.
If you come from the Perforce world and want a super quick idea on how Git works, check this interactive overview : https://try.github.io/levels/1/challenges/1 .
Latest unstable versions
If you want to quickly test TeaBox you can download latest compiled versions here: x64, Any CPU, win32
How to contribute
Check out CONTRIBUTING.md for more information on contributing to TeaBox.

