+/*
+ * Copyright (C) 2017 "IoT.bzh"
+ * Author Sebastien Douheret <sebastien@iot.bzh>
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ *
+ */
+
package main
import (
"fmt"
"strings"
- "github.com/iotbzh/xds-agent/lib/apiv1"
+ "github.com/iotbzh/xds-agent/lib/xaapiv1"
"github.com/urfave/cli"
)
Action: projectsGet,
Flags: []cli.Flag{
cli.StringFlag{
- Name: "id",
- Usage: "project id",
+ Name: "id",
+ Usage: "project id",
+ EnvVar: "XDS_PROJECT_ID",
},
},
},
Action: projectsRemove,
Flags: []cli.Flag{
cli.StringFlag{
- Name: "id",
- Usage: "project id",
+ Name: "id",
+ Usage: "project id",
+ EnvVar: "XDS_PROJECT_ID",
},
},
},
Action: projectsSync,
Flags: []cli.Flag{
cli.StringFlag{
- Name: "id",
- Usage: "project id",
+ Name: "id",
+ Usage: "project id",
+ EnvVar: "XDS_PROJECT_ID",
},
},
},
func projectsList(ctx *cli.Context) error {
// Get projects list
- prjs := []apiv1.ProjectConfig{}
+ prjs := []xaapiv1.ProjectConfig{}
if err := ProjectsListGet(&prjs); err != nil {
return cli.NewExitError(err.Error(), 1)
}
if id == "" {
return cli.NewExitError("id parameter or option must be set", 1)
}
- prjs := make([]apiv1.ProjectConfig, 1)
+ prjs := make([]xaapiv1.ProjectConfig, 1)
if err := HTTPCli.Get("/projects/"+id, &prjs[0]); err != nil {
return cli.NewExitError(err, 1)
}
return nil
}
-func _displayProjects(prjs []apiv1.ProjectConfig, verbose bool) {
+func _displayProjects(prjs []xaapiv1.ProjectConfig, verbose bool) {
// Display result
first := true
writer := NewTableWriter()
fmt.Fprintln(writer, "Label:\t", folder.Label)
fmt.Fprintln(writer, "Path type:\t", folder.Type)
fmt.Fprintln(writer, "Local Path:\t", folder.ClientPath)
- if folder.Type != apiv1.TypeCloudSync {
+ if folder.Type != xaapiv1.TypeCloudSync {
fmt.Fprintln(writer, "Server Path:\t", folder.ServerPath)
}
fmt.Fprintln(writer, "Status:\t", folder.Status)
func projectsAdd(ctx *cli.Context) error {
// Decode project type
- var ptype apiv1.ProjectType
+ var ptype xaapiv1.ProjectType
switch strings.ToLower(ctx.String("type")) {
case "pathmap", "pm":
- ptype = apiv1.TypePathMap
+ ptype = xaapiv1.TypePathMap
case "cloudsync", "cs":
- ptype = apiv1.TypeCloudSync
+ ptype = xaapiv1.TypeCloudSync
default:
return cli.NewExitError("Unknown project type", 1)
}
- prj := apiv1.ProjectConfig{
+ prj := xaapiv1.ProjectConfig{
ServerID: XdsServerIDGet(),
Label: ctx.String("label"),
Type: ptype,
}
Log.Infof("POST /project %v", prj)
- newPrj := apiv1.ProjectConfig{}
+ newPrj := xaapiv1.ProjectConfig{}
err := HTTPCli.Post("/projects", prj, &newPrj)
if err != nil {
return cli.NewExitError(err, 1)
}
func projectsRemove(ctx *cli.Context) error {
- var res apiv1.ProjectConfig
+ var res xaapiv1.ProjectConfig
id := GetID(ctx)
if id == "" {
return cli.NewExitError("id parameter or option must be set", 1)