grim/convey

a6d09ab6e582
Parents 5d008963f8e1
Children fa6ae0862e8e
Valid tasks when loading configs. Fixes #166
--- a/config/config.go Mon Feb 12 20:20:35 2018 -0600
+++ b/config/config.go Mon Feb 12 21:37:37 2018 -0600
@@ -18,6 +18,8 @@
package config
import (
+ "fmt"
+
"bitbucket.org/rw_grim/convey/plans"
"bitbucket.org/rw_grim/convey/tasks"
)
@@ -30,3 +32,13 @@
SSHIdentities []string
Environment []string
}
+
+func (c *Config) Valid() error {
+ for name, task := range c.Tasks {
+ if err := task.Valid(); err != nil {
+ return fmt.Errorf("error: task %s : %s", name, err.Error())
+ }
+ }
+
+ return nil
+}
--- a/loaders/bitbucket/data/branch-image.yml Mon Feb 12 20:20:35 2018 -0600
+++ b/loaders/bitbucket/data/branch-image.yml Mon Feb 12 21:37:37 2018 -0600
@@ -1,3 +1,6 @@
+---
+# This is a simple bitbucket-pipelines.yml that uses the branch format to
+# setup the build
pipelines:
branches:
develop:
--- a/loaders/bitbucket/loader_test.go Mon Feb 12 20:20:35 2018 -0600
+++ b/loaders/bitbucket/loader_test.go Mon Feb 12 21:37:37 2018 -0600
@@ -320,6 +320,18 @@
Expect(cfg).To(Equal(expected))
}
+func (b *bitbucketSuite) TestLoaderBranchNoImage(t sweet.T) {
+ l := Loader{}
+
+ data := t.Sweet().LoadFile("data/branch-no-image.yml")
+ cfg, err := l.Load("", "", data, []string{}, true)
+
+ Expect(err).To(BeNil())
+
+ err = cfg.Valid()
+ Expect(err).To(Not(BeNil()))
+}
+
func (b *bitbucketSuite) TestLoaderBranchImage(t sweet.T) {
l := Loader{}