To create a custom VST
- Install GO for your platform and configure your preferred IDE
-
Ensure Prelude CLI is installed and updated
-
pip3 install prelude-cli
-
pip3 install prelude-cli --upgrade
-
Download an existing Prelude created VST via CLI to use as reference, in this example we will use "Colour-Blind Trojan" VST as an example.
-
List existing tests and their IDs: prelude detect tests
- Download Prelude created test "Colour-Blind Trojan"
prelude detect download ca9b22be-93d5-4902-95f4-4bc43a817b73
-
Find downloaded folder "ca9b22be-93d5-4902-95f4-4bc43a817b73". Inside will be:
Source Code ca9b22be-93d5-4902-95f4-4bc43a817b73.go
Readme file that populates test details in console: README.md
Attachments referenced in test: colour-blind.py -
Create your own test via CLI
prelude build create-test "test_name" --unit health
-
Unit can be "health" or "response", the two major VST categories
- This will generate a new test directory with the template source code inside.
- You can use the previously downloaded Prelude generated test "Colour-Blind Trojan" as a template
or download any other Prelude test as reference. -
update code, add new attachments to the same directory if applicable and update README.md file
to describe your test -
Once you are happy with your test you will need to upload it to your account
-
Upload just the source code:
prelude build upload <uuid> .go
-
Upload the entire test directory including README.md, attachments (test samples) and .go source
code:prelude build upload <UUID>
-
At this point the test will be visible in the UI or CLI and is available to be scheduled
You can provide a comment in the test code to direct the Platform to only compile a test for a specific Platform (Mac, Windows, Linux). If no comment exists then a binary is compiled for all three.
//go:build windows // +build windows //go:build linux // +build linux //go:build darwin // +build darwin
The two comments should go at the top of the .go file before uploading to the Detect Platform.
Example: