2016-06-01 6 views
0

저는 Vagrant와 함께 로컬로 테스트 키친을 사용하여 서버 스펙 테스트를 실행했으며 큰 문제는 없었습니다. 저는 이제 테스트 - 주방으로 CI 프로세스를 설정하고 kitchen-google Gem을 사용하여 서버를 프로비저닝하고 내 서버 스펙 테스트 스위트를 실행합니다.Test-Kitchen은 원격 서버에 파일을 동기화합니다.

내 GCE 프로젝트에 서버를 올바르게 만드는 테스트 키친을 가지고 있지만 필요한 파일 중 일부가 원격 서버에 동기화되지 않아 테스트가 실패합니다. 이상적으로 여러 폴더를 원격 시스템의 홈 디렉토리에 동기화하고 싶습니다. 의 라인을 따라 뭔가 :

"./scripts", "/home/test/" 
"./scripts2, "/home/test/" 

내 .kitchen.gce.yml 파일은 다음과 같습니다, 나는 내 원격 컴퓨터에 동기화 받으려는 파일을 지시 할 수있는 방법?

--- 
driver: 
    name: gce 
    project: test-project 
    email: [email protected] 
    machine_type: f1-micro 
    service_account_name: [email protected] 
    tags: 
    - test-kitchen 
    service_account_scopes: 
    - https://www.googleapis.com/auth/compute # Full control access to Google Compute Engine methods. 
    zone: us-central1-a 

provisioner: 
    name: chef_zero 
    require_chef_omnibus: <%= ENV['CHEF_VERSION'] || '12.10.24' %> 

transport: 
    name: sftp 
    username: test 
    ssh_key: 
    - ~/.ssh/test-key 

platforms: 
    - name: centos-6 
    driver: 
     image_name: centos-6-v20160526 
    - name: ubuntu-1404 
    driver: 
     image_name: ubuntu-1404-trusty-v20160516 

verifier: 
    busser: 
    sudo: true 

suites: 
    - name: default 

답변

0

대답은 data_path 공급자 설정을 설정하는 것이 었습니다. 필자는 이전에이 파일을 조사했지만 테스트 키친 문서에서는 아무 것도이 파일들이 동기화되는 위치를 언급하지 않으므로 잘못된 설정이 있다고 가정했습니다. /tmp/kitchen/data 현재 디렉토리에

provisioner: 
    data_path: "." # Syncs files in path to /tmp/kitchen/data 
    name: chef_zero 
    require_chef_omnibus: <%= ENV['CHEF_VERSION'] || '12.10.24' %> 

위의 동기화 모든 파일 :

kitchen.yml 파일은 지금처럼 보인다.