Skip to content

Commit

Permalink
refactor: change how the verifier command processes orders
Browse files Browse the repository at this point in the history
It's been moved to the same way that the linter acts. It will just act
as a bash script, so it's easier to do whatever is needed.
  • Loading branch information
alexppg committed Jul 4, 2021
1 parent f6e8d80 commit 48b529c
Show file tree
Hide file tree
Showing 15 changed files with 16 additions and 24 deletions.
4 changes: 2 additions & 2 deletions cmd/chart.go
Original file line number Diff line number Diff line change
Expand Up @@ -20,6 +20,7 @@ func chart(cmd *cobra.Command, args []string) {
var driver string
var chartName string = args[0]
var lint string = "set -e\nhelm lint"
var verifier string = "set -e\nhelm test " + chartName
var debug bool
var err error
var configuration config.ParticleConfiguration
Expand Down Expand Up @@ -49,8 +50,7 @@ func chart(cmd *cobra.Command, args []string) {
configuration.Driver.Name = driver
configuration.Provisioner.Name = helm
configuration.Lint = lint
configuration.Verifier.Name = helm
configuration.Verifier.Command = []string{"helm", "test", chartName}
configuration.Verifier = verifier
configuration.Dependency.Name = helm

logger.WithFields(log.Fields{
Expand Down
2 changes: 1 addition & 1 deletion cmd/cleanup.go
Original file line number Diff line number Diff line change
Expand Up @@ -30,7 +30,7 @@ func cleanup(cmd *cobra.Command, args []string) {
logger.WithFields(log.Fields{
"driver": configuration.Driver.Name,
"provisioner": configuration.Provisioner.Name,
"verifier": configuration.Verifier.Name,
"verifier": strings.Replace(configuration.Verifier, "\n", " && ", -1),
"lint": strings.Replace(configuration.Lint, "\n", " && ", -1),
}).Debug("Configuration to use")

Expand Down
2 changes: 1 addition & 1 deletion cmd/converge.go
Original file line number Diff line number Diff line change
Expand Up @@ -30,7 +30,7 @@ func converge(cmd *cobra.Command, args []string) {
logger.WithFields(log.Fields{
"driver": configuration.Driver.Name,
"provisioner": configuration.Provisioner.Name,
"verifier": configuration.Verifier.Name,
"verifier": strings.Replace(configuration.Verifier, "\n", " && ", -1),
"lint": strings.Replace(configuration.Lint, "\n", " && ", -1),
}).Debug("Configuration to use")

Expand Down
2 changes: 1 addition & 1 deletion cmd/create.go
Original file line number Diff line number Diff line change
Expand Up @@ -30,7 +30,7 @@ func create(cmd *cobra.Command, args []string) {
logger.WithFields(log.Fields{
"driver": configuration.Driver.Name,
"provisioner": configuration.Provisioner.Name,
"verifier": configuration.Verifier.Name,
"verifier": strings.Replace(configuration.Verifier, "\n", " && ", -1),
"lint": strings.Replace(configuration.Lint, "\n", " && ", -1),
}).Debug("Configuration to use")

Expand Down
2 changes: 1 addition & 1 deletion cmd/dependency.go
Original file line number Diff line number Diff line change
Expand Up @@ -29,7 +29,7 @@ func dependency(cmd *cobra.Command, args []string) {
logger.WithFields(log.Fields{
"driver": configuration.Driver.Name,
"provisioner": configuration.Provisioner.Name,
"verifier": configuration.Verifier.Name,
"verifier": strings.Replace(configuration.Verifier, "\n", " && ", -1),
"lint": strings.Replace(configuration.Lint, "\n", " && ", -1),
}).Debug("Configuration to use")

Expand Down
2 changes: 1 addition & 1 deletion cmd/destroy.go
Original file line number Diff line number Diff line change
Expand Up @@ -30,7 +30,7 @@ func destroy(cmd *cobra.Command, args []string) {
logger.WithFields(log.Fields{
"driver": configuration.Driver.Name,
"provisioner": configuration.Provisioner.Name,
"verifier": configuration.Verifier.Name,
"verifier": strings.Replace(configuration.Verifier, "\n", " && ", -1),
"lint": strings.Replace(configuration.Lint, "\n", " && ", -1),
}).Debug("Configuration to use")

Expand Down
2 changes: 1 addition & 1 deletion cmd/lint.go
Original file line number Diff line number Diff line change
Expand Up @@ -30,7 +30,7 @@ func lint(cmd *cobra.Command, args []string) {
logger.WithFields(log.Fields{
"driver": configuration.Driver.Name,
"provisioner": configuration.Provisioner.Name,
"verifier": configuration.Verifier.Name,
"verifier": strings.Replace(configuration.Verifier, "\n", " && ", -1),
"lint": strings.Replace(configuration.Lint, "\n", " && ", -1),
}).Debug("Configuration to use")

Expand Down
2 changes: 1 addition & 1 deletion cmd/prepare.go
Original file line number Diff line number Diff line change
Expand Up @@ -29,7 +29,7 @@ func prepare(cmd *cobra.Command, args []string) {
logger.WithFields(log.Fields{
"driver": configuration.Driver.Name,
"provisioner": configuration.Provisioner.Name,
"verifier": configuration.Verifier.Name,
"verifier": strings.Replace(configuration.Verifier, "\n", " && ", -1),
"lint": strings.Replace(configuration.Lint, "\n", " && ", -1),
}).Debug("Configuration to use")

Expand Down
2 changes: 1 addition & 1 deletion cmd/syntax.go
Original file line number Diff line number Diff line change
Expand Up @@ -30,7 +30,7 @@ func syntax(cmd *cobra.Command, args []string) {
logger.WithFields(log.Fields{
"driver": configuration.Driver.Name,
"provisioner": configuration.Provisioner.Name,
"verifier": configuration.Verifier.Name,
"verifier": strings.Replace(configuration.Verifier, "\n", " && ", -1),
"lint": strings.Replace(configuration.Lint, "\n", " && ", -1),
}).Debug("Configuration to use")

Expand Down
2 changes: 1 addition & 1 deletion cmd/test.go
Original file line number Diff line number Diff line change
Expand Up @@ -28,7 +28,7 @@ func test(cmd *cobra.Command, args []string) {
logger.WithFields(log.Fields{
"driver": configuration.Driver.Name,
"provisioner": configuration.Provisioner.Name,
"verifier": configuration.Verifier.Name,
"verifier": strings.Replace(configuration.Verifier, "\n", " && ", -1),
"lint": strings.Replace(configuration.Lint, "\n", " && ", -1),
}).Debug("Configuration to use")

Expand Down
2 changes: 1 addition & 1 deletion cmd/verify.go
Original file line number Diff line number Diff line change
Expand Up @@ -30,7 +30,7 @@ func verify(cmd *cobra.Command, args []string) {
logger.WithFields(log.Fields{
"driver": configuration.Driver.Name,
"provisioner": configuration.Provisioner.Name,
"verifier": configuration.Verifier.Name,
"verifier": strings.Replace(configuration.Verifier, "\n", " && ", -1),
"lint": strings.Replace(configuration.Lint, "\n", " && ", -1),
}).Debug("Configuration to use")

Expand Down
3 changes: 1 addition & 2 deletions internal/cli/verify.go
Original file line number Diff line number Diff line change
Expand Up @@ -9,10 +9,9 @@ import (

func Verify(scenario string, configuration config.ParticleConfiguration, logger *log.Entry) error {
var err error
var cli cmd.CLI
var vrf verifier.Verifier
var cli cmd.CLI = cmd.CLI{Binary: "bash"}

cli = cmd.CLI{Binary: configuration.Verifier.Command[0]}
vrf = &verifier.Command{Logger: logger}

err = vrf.Verify(configuration, &cli)
Expand Down
7 changes: 1 addition & 6 deletions internal/config/config.go
Original file line number Diff line number Diff line change
Expand Up @@ -11,7 +11,7 @@ type ParticleConfiguration struct {
Driver Driver `yaml:"driver" validate:"required"`
Provisioner Provisioner `yaml:"provisioner" validate:"required"`
Lint string `yaml:"lint" validate:"required"`
Verifier Verifier `yaml:"verifier" validate:"required,eq=helm"`
Verifier string `yaml:"verifier" validate:"required"`
Dependency Dependency `yaml:"dependency" validate:"required,eq=helm"`
Prepare []Prepare `yaml:"prepare,omitempty"`
}
Expand All @@ -26,11 +26,6 @@ type Provisioner struct {
Values map[string]interface{} `yaml:"values,omitempty"`
}

type Verifier struct {
Name string `yaml:"name" validate:"required"`
Command []string `yaml:"command" validate:"required"`
}

type Dependency struct {
Name string `yaml:"name" validate:"eq=helm"`
Charts []Dependencies `yaml:"charts,omitempty"`
Expand Down
3 changes: 1 addition & 2 deletions internal/verifier/command.go
Original file line number Diff line number Diff line change
Expand Up @@ -14,8 +14,7 @@ func (c *Command) Verify(configuration config.ParticleConfiguration, cmd cmd.Cmd
var logger *log.Entry = c.Logger
var err error

// args := []string{"helm", "test", "test-" + name}
args := configuration.Verifier.Command
args := []string{"bash", "-c", configuration.Verifier}

err = cmd.Initialize(logger, args)
if err != nil {
Expand Down
3 changes: 1 addition & 2 deletions internal/verifier/command_test.go
Original file line number Diff line number Diff line change
Expand Up @@ -49,8 +49,7 @@ func TestVerifyCommand(t *testing.T) {
}
var configuration config.ParticleConfiguration

configuration.Verifier.Name = "helm"
configuration.Verifier.Command = []string{"helm", "test", "test-helm"}
configuration.Verifier = "set -e && helm test example"

err = vrf.Verify(configuration, &cli)
t.Log(fmt.Sprintf("error: %s", err))
Expand Down

0 comments on commit 48b529c

Please sign in to comment.