我正在尝试使用Sauce Labs的酱汁连接代理在Google Cloud Build上设置Nightwatch.js端到端测试。
我以前已经在TravisCI上使用sauce-connect插件看到了这一点,并认为这可能很容易复制,但是经过一天的尝试,我还是一无所获。
我尝试过的事情:
?- in(2,[3,A,1|Xs],Zs).
false.
npm run e2e
作为构建步骤撰写:
npm run e2e
cloudbuild:
version: '3'
services:
sauce_connect:
container_name: sauce_connect
image: gcr.io/$PROJECT_ID/sauce-connect
restart: always
expose:
- 4445
ports:
- 4445
command: '-u user -k sauce_access_code -i cloud_testing'
server:
container_name: server
image: gcr.io/$PROJECT_ID/web
restart: always
expose:
- 8080
ports:
- 8080
我还没有尝试过的东西
steps:
- name: gcr.io/cloud-builders/gcloud
id: encrypt
waitFor: ['-']
args:
- kms
- decrypt
- --ciphertext-file=${_ENV}.env.enc
- --plaintext-file=.env
- --location=global
- --keyring=xyz
- --key=build
- name: 'gcr.io/$PROJECT_ID/docker-compose'
args: ['-f', 'e2e-compose.yaml', 'up']
env:
- 'PROJECT_ID=$PROJECT_ID'
- name: 'gcr.io/$PROJECT_ID/web'
args: ['npm', 'run', 'e2e']
timeout: 3200s
运行所有三个步骤,并将它们附加到docker run
码头工人网络我不确定如何将所有三个容器都连接到网络,这是否可以解决我的问题。
有什么想法或建议吗?在TravisCI上设置起来很容易,但是我想在Cloud Build上运行它,而不是对e2e测试进行单独的PR检查。