Skip to main content

gns3util exercise create

Create an exercise (project) for every group in a class with ACLs

Synopsis

Create an exercise (project) for every group in a class with ACLs to lock down access. This command will:
  • Use an existing template project from the server (recommended) or create empty projects for each group
  • Create resource pools for each project
  • Create ACLs to restrict access to each group’s project
  • Assign the “User” role to each group for their respective projects
gns3util exercise create [flags]

Examples


  # Create exercise for a class
  gns3util -s https://controller:3080 exercise create --class "CS101" --exercise "Lab1"

  # Create exercise with custom project name format
  gns3util -s https://controller:3080 exercise create --class "CS101" --exercise "Lab1" --format "{{class}}-{{exercise}}-{{group}}"

  # Create exercise using interactive template selection (recommended)
  gns3util -s https://controller:3080 exercise create --class "CS101" --exercise "Lab1" --select-template

  # Create exercise using a specific template project by name/ID
  gns3util -s https://controller:3080 exercise create --class "CS101" --exercise "Lab1" --template "MyTemplateProject"

  # Create exercise using a template file (fallback)
  gns3util -s https://controller:3080 exercise create --class "CS101" --exercise "Lab1" --template "/path/to/template.gns3project"
		

Options

      --class string              Class name to create exercise for
      --cluster string            Cluster name (note: create is server-scoped; use -s)
      --confirm                   Confirm before creating projects (default true)
      --delete-template-project   Delete the template when using a project as a template
      --exercise string           Exercise name
      --format string             Project name format (supports {{class}}, {{exercise}}, {{group}}, {{uuid}}) (default "{{class}}-{{exercise}}-{{group}}-{{uuid}}")
  -h, --help                      help for create
      --select-template           Interactively select a template project from existing projects on the server (recommended)
      --template string           Existing project name/ID or path to template file (.gns3project) to use as base for all exercise projects

Options inherited from parent commands

  -i, --insecure          Ignore unsigned SSL-Certificates. Can be set via GNS3_INSECURE
  -k, --key-file string   Path to authentication keyfile. Can be set via GNS3_KEY_FILE or config.toml
  -o, --output string     Output format: [json, json-colorless, collapsed, yaml, toml, table, table-ascii]. Can be set via GNS3_OUTPUT (default "table")
  -s, --server string     GNS3v3 Server URL. Can be set via GNS3_SERVER or config.toml

SEE ALSO

Auto generated by spf13/cobra on 24-Mar-2026