The portal is triggered by a push to the “vdf-portal” branch in a shared GitHub repository. Therefore you must share a GitHub repository and configure it with a WebHook into the test portal infrastructure on AWS.
Secret: *** (We will share the secret with you in private)
Events - Choose just the push event
Set up the build target in the git repository
The build target is configured by the vdf_portal_config.json file in the repository root path. We recommend pulling from the official repository (https://github.com/supranational/vdf-fpga) to populate this file and update the Makefile targets for the test portal. If for some reason this is not practical please contact firstname.lastname@example.org to discuss what changes are needed and how to best proceed.
Three targets are supported. It is recommended you step through these in order as they take increasing amounts of time to finish.
"liveness" - <5min - test the tool flow and infrastructure
"hw_emu" - ~10 min - run hardware emulation
"synthesis" - 2-5 hours - run hardware emulation, synthesis, and bitstream generation
For all targets you should expect two emails, one when the job starts and one when it finishes. The second email will include instructions for retrieving the encrypted results.
Send your first job, create the ‘vdf-portal’ branch
Edit vdf_portal_config.json, set target to to "liveness".
Commit the vdf_portal_config.json file:
git commit vdf_portal_config.json
Create the 'vdf-portal' branch:
git checkout -b vdf-portal
Push the branch
git push origin vdf-portal
It is ok if you are told there are 0 deltas. The important message to look for is:
* [new branch] vdf-portal -> vdf-portal
At this point you can change back to the master branch (or any other branch) and continue editing:
git checkout master
You should get two email messages, one when the job starts and one when it finishes.
For the "liveness" target look for info.txt in the results with information about the build.
Send subsequent jobs
This assumes work is done on the "master" branch but any branch will work. Just substitute your branch name for "master".
On "master", make desired changes
Change the target in vdf_portal_config.json to desired target (see above)
Commit the changes using git commit
Push the changes from the master branch to the vdf-portal branch. Note "-f" may be required if you push to this branch from multiple source branches. git push origin master:vdf-portal -f
Note that each team can have only one outstanding job at a time. Any pushes that occur while a job is running will be ignored.