CTF config
Note
Config files can be either YAML (ctf.yml) or JSON (ctf.json).
A CTF config file must follow the shown syntax:
kind: ctf
name: fake-ctf
teams_file: null
challenges: []
deployments:
    internal_domain: fake.ctf
    environment: testing
    provider: gcp
    gcp:
        node_count: 1
        region: europe-west1
        machine_type: e1-standard-2
        project: change-this-123
        zone: europe-west1-b
    azure: null
kind
The type of the config, either ctf or challenge.
name
The name of the CTF.
teams_file
The path of the teams file for the CTF.
challenges
A list of the paths of the challenges to be deployed with the CTF:
challenges:
    - ./challenges/my-challenge
    - ./challenges/other-challenge
deployments
The main part of a CTF config.
internal_domain
The root domain name to deploy the challenges on.
environment
The CTF environment, one of:
testingproduction
provider
The provider to use, must be one of:
gcpazure(not implemented yet)local(not implemented yet)
Note
If you are using one provider, you must mark as null the others following attributes, of course CTFKit will do it automatically.
gcp (optionnal)
The configuration of GCP.
node_count
The number of nodes to deploy.
region
The region of the CTF, ex. europe-west1.
machine_type
The type of the machine, ex. e1-standard-2.
project
The GCP project's ID.
zone
The zone of the node(s), ex. europe-west1-b.
azure (optionnal) (not implemented yet)
The configuration of Azure.