Skip to content

Commit c6cc35d

Browse files
committed
Fix bug with default before_script and after_script
1 parent e9a7fc2 commit c6cc35d

File tree

8 files changed

+45
-5
lines changed

8 files changed

+45
-5
lines changed

package-lock.json

+2-2
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

package.json

+1-1
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,7 @@
22
"name": "gitlab-ci-local",
33
"main": "src/index.js",
44
"bin": "src/index.js",
5-
"version": "4.9.5",
5+
"version": "4.9.6",
66
"scripts": {
77
"prepublishOnly": "npm run check-all && chmod +x src/index.js",
88
"pkg-linux": "pkg src/index.js --public -t linux-x64 -o bin/linux/gitlab-ci-local && chmod +x bin/linux/gitlab-ci-local && gzip -c bin/linux/gitlab-ci-local > bin/linux.gz",

src/job-expanders.ts

+2-2
Original file line numberDiff line numberDiff line change
@@ -59,7 +59,7 @@ export function beforeScripts(gitlabData: any) {
5959
forEachRealJob(gitlabData, (_, jobData) => {
6060
const expandedBeforeScripts = [].concat(jobData.before_script || (gitlabData.default || {}).before_script || gitlabData.before_script || []);
6161
if (expandedBeforeScripts.length > 0) {
62-
jobData.beforeScripts = expandedBeforeScripts;
62+
jobData.before_script = expandedBeforeScripts;
6363
}
6464
});
6565
}
@@ -68,7 +68,7 @@ export function afterScripts(gitlabData: any) {
6868
forEachRealJob(gitlabData, (_, jobData) => {
6969
const expandedAfterScripts = [].concat(jobData.after_script || (gitlabData.default || {}).after_script || gitlabData.after_script || []);
7070
if (expandedAfterScripts.length > 0) {
71-
jobData.afterScripts = expandedAfterScripts;
71+
jobData.after_script = expandedAfterScripts;
7272
}
7373
});
7474
}

src/tests/cases.test.ts

+20
Original file line numberDiff line numberDiff line change
@@ -123,6 +123,16 @@ test('before-script <test-job>', async () => {
123123
expect(mockProcessExit).toBeCalledTimes(0);
124124
});
125125

126+
test('before-script-default <test-job>', async () => {
127+
await defaultCmd.handler({
128+
cwd: 'src/tests/test-cases/before-script-default',
129+
job: 'test-job'
130+
});
131+
expect(mockProcessStdout).toHaveBeenCalledWith("Before test\n");
132+
expect(mockProcessStderr).toBeCalledTimes(0);
133+
expect(mockProcessExit).toBeCalledTimes(0);
134+
});
135+
126136
test('after-script <test-job>', async () => {
127137
await defaultCmd.handler({
128138
cwd: 'src/tests/test-cases/after-script',
@@ -133,6 +143,16 @@ test('after-script <test-job>', async () => {
133143
expect(mockProcessExit).toBeCalledTimes(0);
134144
});
135145

146+
test('after-script-default <test-job>', async () => {
147+
await defaultCmd.handler({
148+
cwd: 'src/tests/test-cases/after-script-default',
149+
job: 'test-job'
150+
});
151+
expect(mockProcessStdout).toHaveBeenCalledWith("Cleanup after test\n");
152+
expect(mockProcessStderr).toBeCalledTimes(0);
153+
expect(mockProcessExit).toBeCalledTimes(0);
154+
});
155+
136156
test('artifacts <test-root-file>', async () => {
137157
await defaultCmd.handler({
138158
cwd: 'src/tests/test-cases/artifacts',
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,2 @@
1+
[remote "origin"]
2+
url = [email protected]/gcl/test-case.git
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,8 @@
1+
---
2+
default:
3+
after_script:
4+
- echo "Cleanup after test"
5+
6+
test-job:
7+
script:
8+
- echo "Test something"
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,2 @@
1+
[remote "origin"]
2+
url = [email protected]/gcl/test-case.git
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,8 @@
1+
---
2+
default:
3+
before_script:
4+
- echo "Before test"
5+
6+
test-job:
7+
script:
8+
- echo "Test something"

0 commit comments

Comments
 (0)