Configuring the howl.ci runner
The howl.ci runner is configured through a .howl.ci.properties
file in the root of your repository. This
is just a .properties
file, so pretty much every editor supports it. A pretty basic configuration file might look like this:
computer.0.startup=.build.lua computer.0.saveDir=.
It is possible to include environment variables within your .howl.ci.properties
. This is done
with the ${NAME}
syntax. This is substituted with the environment variable's value, or an empty
string if not found. You can specify a default value by placing a pipe (|
) after the symbol.
For instance you could specify which a prefered ComputerCraft version, falling back to a default if not set:
computercraft.url=http://addons-origin.cursecdn.com/files/${CC_SPEC | 2291/384/ComputerCraft1.79.jar} computercraft.file=${HOME}/.cc-jars/ComputerCraft-${CC_VERSION | 1.79}.jar
Configuring ComputerCraft versions
The howl.ci runner works across multiple ComputerCraft versions and so needs to be pointed to the correct one. Firstly
it'll look for the file specified by computercraft.file
. If it is not there then it will download
computercraft.url
and save it. If you want to use ComputerCraft 1.75 instead you should change it
to point to a different URL.
Version | computercraft.url |
computercraft.file |
---|---|---|
ComputerCraft 1.79 | https://addons-origin.cursecdn.com/files/2291/384/ComputerCraft1.79.jar | ComputerCraft1.79.jar |
ComputerCraft 1.75 | https://addons-origin.cursecdn.com/files/2269/339/ComputerCraft1.75.jar | ComputerCraft1.75.jar |
ComputerCraft 1.80pr0 | https://addons-origin.cursecdn.com/files/2311/39/ComputerCraft1.80pr0.jar | ComputerCraft1.80pr0.jar |
Configuring ComputerCraft
ComputerCraft has several config options to change its behaviour and so howl.ci allows setting them.
computercraft.defaultSettings |
A comma seperated list of default system settings to set on new computers. For example,
shell.autocomplete=false,lua.autocomplete=false,edit.autocomplete=false will disable
all autocompletion
|
computercraft.disable51 |
Disable Lua 5.1 functions that will be removed in a future version of ComputerCraft. Useful for ensuring forward compatibility of your programs now. |
computercraft.http |
Enable the http API.
|
computercraft.whitelist |
A semicolon limited list of wildcards for domains that can be accessed through the http
API on Computers. Set this to * to access to the entire internet. For example,
*.pastebin.com;*.github.com;*.computercraft.info will restrict access to just those 3 domains.
|
Configuring computers
howl.ci allows configuring each computer individually by id. Each option is specified by
computer.{id}.{option}
. Please note there is currently no way to create multiple computers
though that is planned for later versions of howl.ci.
label |
The computer's label. This can also be set using os.setComputerLabel .
|
saveDir |
The directory to save files in relative to the root directory. By default this is
computer/{id} .
|
startup |
The file to launch relative to the save directory. Note: this will create a
file called startup in the save directory, overwriting anything that was there
before.
|
color |
Whether this terminal supports colour. By default this is true, though you may wish to test your program in black and white mode. |
width , height |
Set the dimensions of this Computer's terminal. This is 51x19 by default, though you could use this to test running on a pocket computer. |
spaceLimit |
The maximum storage capacity of this computer in bytes. By default this is 2^63-1 so you're never really going to run out :). |
Configuring CCTweaks
CCTweaks is packaged with the howl.ci runner and enabled by default. You can disable it by setting
cctweaks.enabled
to false. All other config options are documented on the
CCTweaks-Lua wiki.