昨天的范例终究是一个 Job
每一个 Job
是最小的单位
但是如果我们写多个 Job
的时候 会一次全部执行
就像我们在写前端的时候
所有的非同步都会同时动作
这样的状况有点失控
我们需要一些步骤来设计一下部署的工作流
基本的工作流可以分为可以同时处理的事情 和顺序性的事情
所以要针对同时进行的 Job
做群组跟排序
这时候就需要使用到 Stages
Stage - 阶段
每一个 Job 都可以设定他是在哪一个 阶段进行的工作
这样就可以做到把每一个 Job
群组归类
再针对阶段进行顺序排序
先将基本的打包流程分为三个阶段
这样就可以设计出适合每一个专案的部署流程
中间也可以插入测试 或是在最後加入通知
stages:
- Prepare
- Build
- Deploy
- Notification
Prepare:Env:
stage: Prepare
script:
- echo "AAA=BBB" > .env
Prepare:submodule:
stage: Prepare
script:
- echo 'clone sub repo or submodule'
Prepare:Packages:
stage: Prepare
script:
- echo 'yarn install'
Build:DevResult:
stage: Build
script:
- echo 'yarn build'
Deploy:CopyToServer:
stage: Deploy
script:
- echo 'scp to server'
Notification:SendSuccessMessage:
stage: Notification
rules:
- when: on_success
script:
- echo 'node SendSuccessMessage.js'
Notification:SendErrorMessage:
stage: Notification
rules:
- when: on_failure
script:
- echo 'node SendErrorMessage.js'
了解这些之後就可以初步来规划我们的部署
<<: 第 07 天 不断尝试直到成功( leetcode 106 )
今天要来练习的是cin的更多应用 综合之前所学的方法以及加上不同cin的写法 再稍微介绍今天练习的程...
今天的东东是个超多层的阵列,足以让脑袋死机,请做好心理准备再服用 前置作业 又回到 apiRequ...
-示例 XACML 实现 XACML主要用於授权而不是身份验证。可以实施 PKI 以支持相互身份验...
这几天差不多基本的都说完了。 所以今天我来给大家带一点一些很重要,但前面没讲到的细节。 错误处理 -...
上一篇我们编写了 Serializers, Views,以及修改了urls.py,完成了基本的菜单查...