Automated Test Portal
This page contains instructions for using the VDF FPGA Automated Test Portal.
Register as a contestant
Complete and e-mail in the official FPGA+Competition+Entry+Form as well as the information required for the test portal as described in Offered+Resources.
Set up github.com
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.
Go to repository
Add “simonatsn” as a collaborator
Settings
Collaborators
Add Collaborator
Set up a Webhook
Settings
Webhooks
URL: https://bu5ub497ki.execute-api.us-east-1.amazonaws.com/prod/github
Content type - json
Secret: *** (We will share the secret with you in private)
Enable SSL
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 hello@supranational.net to discuss what changes are needed and how to best proceed.
Build Targets
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.