我有多个工作使用单个外部资源(服务器)。第一个作业将应用程序部署到环境中,第二个作业在此环境中执行测试,第三个作业在此环境中执行集成测试。
我知道有资源组选项。但它只锁定工作。如果两个管道同时运行,我需要从第一个管道执行job1, job2,job3并且只有当第一个管道释放资源时 - 第二个管道才能启动jobs1-3。有没有办法实现这一目标?管道中还有其他工作 - 它们应该同时工作。
我正在尝试配置gitlab ci以将app部署到谷歌计算引擎.我已成功将图像推送到gitlab存储库但在应用kubernetes部署配置后,我在kubectl describe pods中看到以下错误:
Failed to pull image "registry.gitlab.com/proj/subproj/api:v1": rpc error: code = 2
desc = Error response from daemon: {"message":"Get https://registry.gitlab.com/v2/proj/subproj/api/manifests/v1: unauthorized: HTTP Basic: Access denied"}
Run Code Online (Sandbox Code Playgroud)
这是我的部署gitlab-ci工作:
docker:
stage: docker_images
image: docker:latest
services:
- docker:dind
script:
- docker login -u "$CI_REGISTRY_USER" -p "$CI_REGISTRY_PASSWORD" $CI_REGISTRY
- docker build -t registry.gitlab.com/proj/subproj/api:v1 -f Dockerfile .
- docker push registry.gitlab.com/proj/subproj/api:v1
only:
- master
dependencies:
- build_java
k8s-deploy:
image: google/cloud-sdk
stage: deploy
script:
- echo "$GOOGLE_KEY" > key.json # Google Cloud service account key …Run Code Online (Sandbox Code Playgroud) 在后端,我有REST控制器和POST方法:
@RequestMapping(value = "/save", method = RequestMethod.POST)
public Integer save(@RequestParam String name) {
//do save
return 0;
}
Run Code Online (Sandbox Code Playgroud)
如何使用WebClient和请求参数创建请求?
WebClient.create(url).post()
.uri("/save")
//?
.exchange()
.block()
.bodyToMono(Integer.class)
.block();
Run Code Online (Sandbox Code Playgroud) 我的问题是关于颤动的小部件测试,什么是测试现有小部件包裹新的脚手架(...)的正确方法?我找到了,MediaQuery.of但它接受BuildContext而不是Widget.
详细信息:我编写了简单的登录表单小部件并尝试为其实现小部件测试.执行测试后我得到了异常:
Expected: 'Sorry, only customer can login from mobile device. [Mock]'
Actual: FlutterError:<No MediaQuery widget found.
Scaffold widgets require a MediaQuery widget ancestor.
The specific widget that could not find a MediaQuery ancestor was:
Scaffold-[LabeledGlobalKey<ScaffoldState>#8ffee]
The ownership chain for the affected widget is:
Scaffold-[LabeledGlobalKey<ScaffoldState>#8ffee] ? LoginForm ? [root]
Typically, the MediaQuery widget is introduced by the MaterialApp or WidgetsApp widget at
the top of your application widget tree.>
Which: FlutterError:<No MediaQuery widget found. …Run Code Online (Sandbox Code Playgroud)