Revision 0dbaa9ca lib/rapi/rlib2.py

b/lib/rapi/rlib2.py
550 550
      return baserlib.BuildUriList(groupnames, "/2/groups/%s",
551 551
                                   uri_fields=("name", "uri"))
552 552

  
553
  def POST(self):
554
    """Create a node group.
555

  
556
    @return: a job id
557

  
558
    """
559
    baserlib.CheckType(self.request_body, dict, "Body contents")
560
    group_name = baserlib.CheckParameter(self.request_body, "name")
561
    op = opcodes.OpAddGroup(group_name=group_name, dry_run=self.dryRun())
562
    return baserlib.SubmitJob([op])
563

  
553 564

  
554 565
class R_2_groups_name(baserlib.R_Generic):
555 566
  """/2/groups/[group_name] resources.
......
568 579

  
569 580
    return baserlib.MapFields(G_FIELDS, result[0])
570 581

  
582
  def DELETE(self):
583
    """Delete a node group.
584

  
585
    """
586
    op = opcodes.OpRemoveGroup(group_name=self.items[0],
587
                               dry_run=bool(self.dryRun()))
588

  
589
    return baserlib.SubmitJob([op])
590

  
591

  
592
def _ParseRenameGroupRequest(name, data, dry_run):
593
  """Parses a request for renaming a node group.
594

  
595
  @type name: string
596
  @param name: name of the node group to rename
597
  @type data: dict
598
  @param data: the body received by the rename request
599
  @type dry_run: bool
600
  @param dry_run: whether to perform a dry run
601

  
602
  @rtype: L{opcodes.OpRenameGroup}
603
  @return: Node group rename opcode
604

  
605
  """
606
  old_name = name
607
  new_name = baserlib.CheckParameter(data, "new_name")
608

  
609
  return opcodes.OpRenameGroup(old_name=old_name, new_name=new_name,
610
                               dry_run=dry_run)
611

  
612

  
613
class R_2_groups_name_rename(baserlib.R_Generic):
614
  """/2/groups/[groupe_name]/rename resource.
615

  
616
  """
617
  def PUT(self):
618
    """Changes the name of a node group.
619

  
620
    @return: a job id
621

  
622
    """
623
    baserlib.CheckType(self.request_body, dict, "Body contents")
624
    op = _ParseRenameGroupRequest(self.items[0], self.request_body,
625
                                  self.dryRun())
626
    return baserlib.SubmitJob([op])
571 627

  
572 628

  
573 629
def _ParseInstanceCreateRequestVersion1(data, dry_run):

Also available in: Unified diff