Skip to content

Commit 7ee50ea

Browse files
authoredSep 30, 2024··
fix: stabilize functional tests (#3212)
1 parent 2cf5792 commit 7ee50ea

File tree

5 files changed

+7
-14
lines changed

5 files changed

+7
-14
lines changed
 

‎features/authorization.feature

+1
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,6 @@
11
@auth
22
@parallel
3+
@prod
34
Feature: Authorization
45

56
Another part of the developer's daily process is their constant interaction with GitHub. Their

‎features/events.feature

+1
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,6 @@
11
@events
22
@parallel
3+
@prod
34
Feature: Events
45

56
The most straight-forward change to a pipeline is by committing code. It has

‎features/trigger.feature

-5
Original file line numberDiff line numberDiff line change
@@ -37,7 +37,6 @@ Feature: Remote Trigger
3737
And the "fail_A" build failed
3838
Then the "fail_B_prod" job on branch "pipelineB" is not triggered
3939

40-
@beta
4140
Scenario: External builds are not triggered if required build is not successful.
4241
Given an existing pipeline on branch "pipelineA" with job "fail_A"
4342
And an existing pipeline on branch "pipelineB" with the workflow jobs:
@@ -58,7 +57,6 @@ Feature: Remote Trigger
5857
Then the "success_B_or_prod" job on branch "pipelineB" is started
5958
And the "success_B_or_prod" build's parentBuildId on branch "pipelineB" is that "success_A" build's buildId
6059

61-
@beta
6260
Scenario: External build is triggered after another build is successful.
6361
Given an existing pipeline on branch "pipelineA" with job "success_A"
6462
And an existing pipeline on branch "pipelineB" with the workflow jobs:
@@ -80,7 +78,6 @@ Feature: Remote Trigger
8078
Then the "or_multiple_B_prod" job on branch "pipelineB" is started
8179
And the "or_multiple_B_prod" build's parentBuildId on branch "pipelineB" is that "success_A" build's buildId
8280

83-
@beta
8481
Scenario: External build is triggered after one of the builds is successful.
8582
Given an existing pipeline on branch "pipelineA" with job "success_A"
8683
And an existing pipeline on branch "pipelineB" with the workflow jobs:
@@ -104,7 +101,6 @@ Feature: Remote Trigger
104101
And the "success_B_and_prod" build's parentBuildId on branch "pipelineB" is that "success_A" build's buildId
105102

106103
@ignore
107-
@beta
108104
Scenario: External build which requires single AND trigger is triggered after another build is successful.
109105
Given an existing pipeline on branch "pipelineA" with job "success_A"
110106
And an existing pipeline on branch "pipelineB" with the workflow jobs:
@@ -129,7 +125,6 @@ Feature: Remote Trigger
129125
And the "parallel_B2" build's parentBuildId on branch "pipelineB" is that "parallel_A" build's buildId
130126
And builds for "parallel_B1" and "parallel_B2" jobs are part of a single event
131127

132-
@beta
133128
Scenario: Remote Join
134129
Given an existing pipeline on branch "beta-remote_join1" with the workflow jobs:
135130
| job | requires |

‎package.json

+4-6
Original file line numberDiff line numberDiff line change
@@ -10,12 +10,10 @@
1010
"start": "./bin/server",
1111
"debug": "node --nolazy ./bin/server",
1212
"profile": "node --prof ./bin/server",
13-
"functional": "cucumber-js --format=progress --tags '(not @ignore) and (not @beta) and (not @x1) and (not @parallel)' --retry 2 --fail-fast --exit",
14-
"functional-parallel": "cucumber-js --format=progress --tags '(not @ignore) and (not @beta) and (not @x1) and @parallel' --retry 2 --fail-fast --exit --parallel 7",
15-
"functional-x1-parallel": "cucumber-js --format=progress --tags '(not @ignore) and (not @beta) and @x1 and @parallel' --retry 2 --fail-fast --exit --parallel 7",
13+
"functional": "cucumber-js --format=progress --tags '(not @ignore) and @prod' --retry 2 --fail-fast --exit",
1614
"functional-beta": "cucumber-js --format=progress --tags '(not @ignore) and (not @prod) and (not @x1) and (not @parallel)' --retry 2 --fail-fast --exit",
17-
"functional-beta-parallel": "cucumber-js --format=progress --tags '(not @ignore) and (not @prod) and (not @x1) and @parallel' --retry 2 --fail-fast --exit --parallel 7",
18-
"functional-beta-x1-parallel": "cucumber-js --format=progress --tags '(not @ignore) and (not @prod) and @x1 and @parallel' --retry 2 --fail-fast --exit --parallel 7",
15+
"functional-beta-parallel": "cucumber-js --format=progress --tags '(not @ignore) and (not @prod) and (not @x1) and @parallel' --retry 2 --fail-fast --exit --parallel 4",
16+
"functional-beta-x1-parallel": "cucumber-js --format=progress --tags '(not @ignore) and (not @prod) and @x1 and @parallel' --retry 2 --fail-fast --exit --parallel 4",
1917
"functional-dev": "cucumber-js --format=progress --tags '(not @ignore) and (not @prod)' --retry 2 --fail-fast --exit",
2018
"create-test-user": "node -e 'require(\"./features/scripts/create-test-user.js\")()'",
2119
"diagrams": "find ./design/diagrams -type f -name \\*.puml -print0 | xargs -0 -n 1 -I DIAGRAM puml generate DIAGRAM -o DIAGRAM.png",
@@ -164,4 +162,4 @@
164162
"sinon": "^15.0.0",
165163
"stream-to-promise": "^3.0.0"
166164
}
167-
}
165+
}

‎screwdriver.yaml

+1-3
Original file line numberDiff line numberDiff line change
@@ -95,9 +95,7 @@ jobs:
9595
- wait-docker: DOCKER_TAG=`meta get docker_tag` ./ci/docker-wait.sh
9696
- deploy-k8s: K8S_TAG=`meta get docker_tag` ./ci/k8s-deploy.sh
9797
- npm-install: npm install
98-
- test: GIT_TOKEN=${GIT_TOKEN_PROD} SD_API_TOKEN=${SD_API_TOKEN_PROD} npm run functional
99-
- test-parallel: GIT_TOKEN=${GIT_TOKEN_PROD} SD_API_TOKEN=${SD_API_TOKEN_PROD} npm run functional-parallel
100-
- test-x1-parallel: TEST_USERNAME=${TEST_USERNAME_X1} GIT_TOKEN=${GIT_TOKEN_X1} SD_API_TOKEN=${SD_API_TOKEN_PROD_X1} npm run functional-x1-parallel
98+
- test: TEST_USERNAME=${TEST_USERNAME_X1} GIT_TOKEN=${GIT_TOKEN_X1} SD_API_TOKEN=${SD_API_TOKEN_PROD_X1} npm run functional
10199
environment:
102100
K8S_CONTAINER: screwdriver-api
103101
K8S_IMAGE: screwdrivercd/screwdriver

0 commit comments

Comments
 (0)
Please sign in to comment.