Manifest

The manifest file is a required part of any BrazenCloud Action. It tells the BrazenAgent how to execute the Action in an OS specific way.

Copy

Every manifest should contain the COPY in order to copy the Action from the Action directory to the compiled Action:

COPY . .

RUN_WIN

The RUN_WIN command tells the BrazenAgent how to run the Action on a Windows OS. Since this is Windows specific, paths should reflect that.

In this example, the Action is directing the BrazenAgent to run the run.bat file located in the action\windows directory. This is what a typical Windows Action will do.

COPY . .
RUN_WIN windows\run.bat

However, you can reference anything on the local system. So if you wanted to call Windows PowerShell or an installed version of PowerShell 7, you can do so by calling the executables directly. Either by their fully qualified path or, assuming the executables exist in a folder present in the PATH environment variable, by their name:

Windows PowerShell:

COPY . .
RUN_WIN "powershell.exe -ExecutionPolicy Bypass -File .\Windows\script.ps1"

PowerShell:

COPY . .
RUN_WIN "pwsh.exe -ExecutionPolicy Bypass -File .\Windows\script.ps1"

You'll notice that we can even qualify the call with any parameter supported by the executable.

IMPORTANT: Be sure to use double quotes " and not single quotes to surround the command.

RUN_LIN

The RUN_LIN command tells the BrazenAgent how to run the Action on a Linux OS. Since this is Linux specific, paths should reflect that.

In this example, the Action is directing the BrazenAgent to run the run.sh file located in the action\linux directory. This is what a typical Linux Action will do.

COPY . .
RUN_LIN linux/run.sh

If you are shipping an executable file in your Linux Action, you will want to reference a shell script so you can chmod +x the executable before running it.

Like on Windows, you can reference anything on the local system. So if you wanted to call the installed Python version, you can do so by running their respective commands, assuming they exist in a folder present in the PATH environment variable.

COPY . .
RUN_LIN "python3 linux/script.py"

IMPORTANT: Be sure to use double quotes " and not single quotes to surround the command.

Last updated