Skip to content

Commit 2e4ba72

Browse files
committed
initial Go files
1 parent ed4a91b commit 2e4ba72

File tree

4 files changed

+69
-2
lines changed

4 files changed

+69
-2
lines changed

cmd/plugin/main.go

Lines changed: 35 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,40 @@
11
package main
22

3-
import "fmt"
3+
import (
4+
"fmt"
5+
"os"
6+
7+
"github.com/mongodb-labs/atlas-cli-plugin-terraform/internal/cli/hello"
8+
"github.com/spf13/cobra"
9+
)
410

511
func main() {
6-
fmt.Println("WIP - Placeholder for CLI plugin entrypoint")
12+
terraformCmd := &cobra.Command{
13+
Use: "terraform",
14+
Short: "Root command of the Atlas CLI plugin for MongoDB Atlas Provider",
15+
}
16+
17+
terraformCmd.AddCommand(
18+
hello.Builder(),
19+
)
20+
21+
completionOption := &cobra.CompletionOptions{
22+
DisableDefaultCmd: true,
23+
DisableNoDescFlag: true,
24+
DisableDescriptions: true,
25+
HiddenDefaultCmd: true,
26+
}
27+
rootCmd := &cobra.Command{
28+
Aliases: []string{"tf"},
29+
DisableFlagParsing: true,
30+
DisableAutoGenTag: true,
31+
DisableSuggestions: true,
32+
CompletionOptions: *completionOption,
33+
}
34+
rootCmd.AddCommand(terraformCmd)
35+
36+
if err := rootCmd.Execute(); err != nil {
37+
fmt.Println(err)
38+
os.Exit(1)
39+
}
740
}

go.mod

Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,10 @@
11
module github.com/mongodb-labs/atlas-cli-plugin-terraform
22

33
go 1.23.4
4+
5+
require github.com/spf13/cobra v1.8.1
6+
7+
require (
8+
github.com/inconshreveable/mousetrap v1.1.0 // indirect
9+
github.com/spf13/pflag v1.0.5 // indirect
10+
)

go.sum

Lines changed: 10 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,10 @@
1+
github.com/cpuguy83/go-md2man/v2 v2.0.4/go.mod h1:tgQtvFlXSQOSOSIRvRPT7W67SCa46tRHOmNcaadrF8o=
2+
github.com/inconshreveable/mousetrap v1.1.0 h1:wN+x4NVGpMsO7ErUn/mUI3vEoE6Jt13X2s0bqwp9tc8=
3+
github.com/inconshreveable/mousetrap v1.1.0/go.mod h1:vpF70FUmC8bwa3OWnCshd2FqLfsEA9PFc4w1p2J65bw=
4+
github.com/russross/blackfriday/v2 v2.1.0/go.mod h1:+Rmxgy9KzJVeS9/2gXHxylqXiyQDYRxCVz55jmeOWTM=
5+
github.com/spf13/cobra v1.8.1 h1:e5/vxKd/rZsfSJMUX1agtjeTDf+qv1/JdBF8gg5k9ZM=
6+
github.com/spf13/cobra v1.8.1/go.mod h1:wHxEcudfqmLYa8iTfL+OuZPbBZkmvliBWKIezN3kD9Y=
7+
github.com/spf13/pflag v1.0.5 h1:iy+VFUOCP1a+8yFto/drg2CJ5u0yRoB7fZw3DKv/JXA=
8+
github.com/spf13/pflag v1.0.5/go.mod h1:McXfInJRrz4CZXVZOBLb0bTZqETkiAhM9Iw0y3An2Bg=
9+
gopkg.in/check.v1 v0.0.0-20161208181325-20d25e280405/go.mod h1:Co6ibVJAznAaIkqp8huTwlJQCZ016jof/cbN4VW5Yz0=
10+
gopkg.in/yaml.v3 v3.0.1/go.mod h1:K4uyk7z7BCEPqu6E+C64Yfv1cQ7kz7rIZviUmN+EgEM=

internal/cli/hello/hello.go

Lines changed: 17 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,17 @@
1+
package hello
2+
3+
import (
4+
"fmt"
5+
6+
"github.com/spf13/cobra"
7+
)
8+
9+
func Builder() *cobra.Command {
10+
return &cobra.Command{
11+
Use: "hello",
12+
Short: "The Hello World command",
13+
Run: func(_ *cobra.Command, _ []string) {
14+
fmt.Println("Hello World, Terraform! This command will be eventually deleted.")
15+
},
16+
}
17+
}

0 commit comments

Comments
 (0)