在我的gitlab-ci.yml文件中,我定义了 3 个阶段,第 2 和第 3 阶段各有 3 个作业,因此结构如下:
第 1 和第 2 阶段按我的意图工作,但是,对于第 3 阶段,我实际上想要的是这样的(当然,图像是模型),即“并行序列”的工作,如果你愿意的话:
也就是说,如果“build-b”完成,我希望“deploy-b”开始,而不是等待其他构建任务完成。
GitLab 管道可以做到这一点吗?(除了定义 2 个阶段的明显解决方案,第二个是“构建和部署”,我只是“合并”script当前构建-*和部署-*作业的步骤。)
考虑以下代码,我x使用解构创建了一个“副本”,并删除了其中一个属性:
const x = { a: 1, b: 2, c: 3};
const { a, ...x2} = x;
console.log(x);
console.log(x2);
Run Code Online (Sandbox Code Playgroud)
如果我这样做,@typescript-eslint/no-unused-vars会认为这是一个未使用的错误a。
如何更改代码来修复错误,而不明确要求 eslint 忽略有问题的行,最好仍然使用解构语法?即我真的不想使用delete,也不想显式枚举所有其他属性,例如const x2 = {b: x.b, c: x.c }.
是否有一种奇特的语法或奇怪的 eslint 规则可以鱼与熊掌兼得?
正如已经迁移到Gulp 4的人可能知道的gulp.series那样 - 如果系列中的任务没有正确地表示完成,则不会继续执行.
我的问题是它处理这种错误的方式 - 它只是控制台中的一条消息(你忘了发信号异步完成吗?) ; gulp仍然以错误代码0退出.这意味着如果你在一个更复杂的构建脚本中运行gulp,那么看起来好像一切都没问题,并且当他们显然没有成功完成gulp任务时.(相反,如果抛出错误gulpUtil.plugin error,则会导致非0错误代码.)
所以我的问题是:你如何从外部发现这样的错误?
还有其他我没想过的可能性吗?
error-code ×1
eslint ×1
gitlab ×1
gitlab-ci ×1
gulp ×1
gulp-4 ×1
javascript ×1
terminal ×1
typescript ×1