summaryrefslogtreecommitdiff
path: root/yarns
diff options
context:
space:
mode:
authorLars Wirzenius <liw@liw.fi>2018-07-23 15:54:14 +0300
committerLars Wirzenius <liw@liw.fi>2018-07-23 15:54:14 +0300
commit12e22b32e6023e06769761788738cd6dc5a9cea3 (patch)
treee6271afa501a88aaa184d1eb7198881a6881877b /yarns
parentcd94b9bb79ef7793ee0e828d04774607621eca3e (diff)
downloadick2-12e22b32e6023e06769761788738cd6dc5a9cea3.tar.gz
Change: allow projects, pipelines, etc, have a foo/bar/baz syntax
Diffstat (limited to 'yarns')
-rw-r--r--yarns/100-projects.yarn30
-rw-r--r--yarns/150-pipelines.yarn24
-rw-r--r--yarns/900-local.yarn2
3 files changed, 29 insertions, 27 deletions
diff --git a/yarns/100-projects.yarn b/yarns/100-projects.yarn
index 2fddded..b75dea4 100644
--- a/yarns/100-projects.yarn
+++ b/yarns/100-projects.yarn
@@ -75,23 +75,23 @@ building them. We start by starting an instance of the controller.
... }
WHEN user makes request POST /projects with a valid token and body
... {
- ... "project": "website",
+ ... "project": "foo/website",
... "pipelines": ["build"]
... }
THEN result has status code 201
AND body matches
... {
- ... "project": "website",
+ ... "project": "foo/website",
... "pipelines": ["build"],
... "next_build_id": null
... }
- AND controller state directory contains project website
+ AND controller state directory contains project foo/website
Creating a new project with the same name is forbidden.
WHEN user makes request POST /projects with a valid token and body
... {
- ... "project": "website",
+ ... "project": "foo/website",
... "pipelines": []
... }
THEN result has status code 409
@@ -102,7 +102,7 @@ Creating a new project with the same name is forbidden.
... {
... "projects": [
... {
- ... "project": "website",
+ ... "project": "foo/website",
... "pipelines": ["build"],
... "next_build_id": null
... }
@@ -111,45 +111,45 @@ Creating a new project with the same name is forbidden.
WHEN user stops ick controller
GIVEN a running ick controller
- WHEN user makes request GET /projects/website
+ WHEN user makes request GET /projects/foo/website
THEN result has status code 200
AND body matches
... {
- ... "project": "website",
+ ... "project": "foo/website",
... "pipelines": ["build"],
... "next_build_id": null
... }
- WHEN user makes request PUT /projects/website with a valid token
+ WHEN user makes request PUT /projects/foo/website with a valid token
... and body
... {
- ... "project": "website",
+ ... "project": "foo/website",
... "parameters": {"foo": "bar"},
... "pipelines": ["build"]
... }
THEN result has status code 200
AND body matches
... {
- ... "project": "website",
+ ... "project": "foo/website",
... "parameters": {"foo": "bar"},
... "pipelines": ["build"],
... "next_build_id": null
... }
- AND controller state directory contains project website
+ AND controller state directory contains project foo/website
- WHEN user makes request GET /projects/website
+ WHEN user makes request GET /projects/foo/website
THEN result has status code 200
AND body matches
... {
- ... "project": "website",
+ ... "project": "foo/website",
... "parameters": {"foo": "bar"},
... "pipelines": ["build"],
... "next_build_id": null
... }
- WHEN user makes request DELETE /projects/website
+ WHEN user makes request DELETE /projects/foo/website
THEN result has status code 200
- WHEN user makes request GET /projects/website
+ WHEN user makes request GET /projects/foo/website
THEN result has status code 404
WHEN user makes request PUT /projects/nosuchproject with a valid token and body
diff --git a/yarns/150-pipelines.yarn b/yarns/150-pipelines.yarn
index e2416a8..d828935 100644
--- a/yarns/150-pipelines.yarn
+++ b/yarns/150-pipelines.yarn
@@ -77,7 +77,7 @@ running them. We start by starting an instance of the controller.
WHEN user makes request POST /pipelines with a valid token and body
... {
- ... "pipeline": "build_website",
+ ... "pipeline": "foo/build_website",
... "actions": [
... { "where": "host", "shell": "git clone git://repo src" },
... { "where": "host", "shell": "mkdir html" },
@@ -87,7 +87,7 @@ running them. We start by starting an instance of the controller.
THEN result has status code 201
AND body matches
... {
- ... "pipeline": "build_website",
+ ... "pipeline": "foo/build_website",
... "actions": [
... { "where": "host", "shell": "git clone git://repo src" },
... { "where": "host", "shell": "mkdir html" },
@@ -99,7 +99,7 @@ Creating a new pipeline with the same name is forbidden.
WHEN user makes request POST /pipelines with a valid token and body
... {
- ... "pipeline": "build_website"
+ ... "pipeline": "foo/build_website"
... }
THEN result has status code 409
@@ -109,7 +109,7 @@ Creating a new pipeline with the same name is forbidden.
... {
... "pipelines": [
... {
- ... "pipeline": "build_website",
+ ... "pipeline": "foo/build_website",
... "actions": [
... { "where": "host", "shell": "git clone git://repo src" },
... { "where": "host", "shell": "mkdir html" },
@@ -121,11 +121,11 @@ Creating a new pipeline with the same name is forbidden.
WHEN user stops ick controller
GIVEN a running ick controller
- WHEN user makes request GET /pipelines/build_website
+ WHEN user makes request GET /pipelines/foo/build_website
THEN result has status code 200
AND body matches
... {
- ... "pipeline": "build_website",
+ ... "pipeline": "foo/build_website",
... "actions": [
... { "where": "host", "shell": "git clone git://repo src" },
... { "where": "host", "shell": "mkdir html" },
@@ -136,7 +136,7 @@ Creating a new pipeline with the same name is forbidden.
WHEN user makes request PUT /pipelines/build_websitte with a valid token
... and body
... {
- ... "pipeline": "build_website",
+ ... "pipeline": "foo/build_website",
... "actions": [
... { "where": "host", "shell": "build-it" }
... ]
@@ -144,25 +144,25 @@ Creating a new pipeline with the same name is forbidden.
THEN result has status code 200
AND body matches
... {
- ... "pipeline": "build_website",
+ ... "pipeline": "foo/build_website",
... "actions": [
... { "where": "host", "shell": "build-it" }
... ]
... }
- WHEN user makes request GET /pipelines/build_website
+ WHEN user makes request GET /pipelines/foo/build_website
THEN result has status code 200
AND body matches
... {
- ... "pipeline": "build_website",
+ ... "pipeline": "foo/build_website",
... "actions": [
... { "where": "host", "shell": "build-it" }
... ]
... }
- WHEN user makes request DELETE /pipelines/build_website
+ WHEN user makes request DELETE /pipelines/foo/build_website
THEN result has status code 200
- WHEN user makes request GET /pipelines/build_website
+ WHEN user makes request GET /pipelines/foo/build_website
THEN result has status code 404
WHEN user makes request PUT /pipelines/doesnotexist with a valid token and body
diff --git a/yarns/900-local.yarn b/yarns/900-local.yarn
index 1318eb9..6c83ce6 100644
--- a/yarns/900-local.yarn
+++ b/yarns/900-local.yarn
@@ -112,6 +112,8 @@ along with this program. If not, see <http://www.gnu.org/licenses/>.
name = get_next_match()
basename = encode_basename(name)
filename = os.path.join(vars['statedir'], 'projects', basename)
+ print 'name', name
+ print 'basename', basename
print 'filename', filename
assertTrue(os.path.exists(filename))