Skip to content

Commit

Permalink
Merge pull request google#6 from rmb938/tags
Browse files Browse the repository at this point in the history
add the ability to add and remove tags to lvs
  • Loading branch information
farcaller authored Jan 8, 2019
2 parents d088efe + 4de4115 commit 5786ea6
Show file tree
Hide file tree
Showing 4 changed files with 472 additions and 139 deletions.
54 changes: 54 additions & 0 deletions commands/commands.go
Original file line number Diff line number Diff line change
Expand Up @@ -194,3 +194,57 @@ func RemoveVG(ctx context.Context, name string) (string, error) {
out, err := cmd.CombinedOutput()
return string(out), err
}

func AddTagLV(ctx context.Context, vg string, name string, tags []string) (string, error) {
sp, _ := opentracing.StartSpanFromContext(ctx, "lvm.addtaglv")
sp.SetTag("component", "lvm")
sp.SetTag("span.kind", "client")
defer sp.Finish()

lvs, err := ListLV(ctx, fmt.Sprintf("%s/%s", vg, name))
if err != nil {
return "", fmt.Errorf("failed to list LVs: %v", err)
}
if len(lvs) != 1 {
return "", fmt.Errorf("expected 1 LV, got %d", len(lvs))
}

args := make([]string, 0)

for _, tag := range tags {
args = append(args, "--addtag", tag)
}

args = append(args, fmt.Sprintf("%s/%s", vg, name))

cmd := exec.Command("lvchange", args...)
out, err := cmd.CombinedOutput()
return string(out), err
}

func RemoveTagLV(ctx context.Context, vg string, name string, tags []string) (string, error) {
sp, _ := opentracing.StartSpanFromContext(ctx, "lvm.removetaglv")
sp.SetTag("component", "lvm")
sp.SetTag("span.kind", "client")
defer sp.Finish()

lvs, err := ListLV(ctx, fmt.Sprintf("%s/%s", vg, name))
if err != nil {
return "", fmt.Errorf("failed to list LVs: %v", err)
}
if len(lvs) != 1 {
return "", fmt.Errorf("expected 1 LV, got %d", len(lvs))
}

args := make([]string, 0)

for _, tag := range tags {
args = append(args, "--deltag", tag)
}

args = append(args, fmt.Sprintf("%s/%s", vg, name))

cmd := exec.Command("lvchange", args...)
out, err := cmd.CombinedOutput()
return string(out), err
}
Loading

0 comments on commit 5786ea6

Please sign in to comment.