Gitlab-CI no puede hacer que la compilation cargue un package desde un repository de VCS

Estoy usando gitlab-ci para un repository alojado en gitlab.com y no puedo hacer una compilation cargando un package desde un repository de VCS.

Yo uso por defecto gitlab-ci-multi-runner 1.1.3.

Mi .gitlab-ci.yml:

image: php:5.6 services: - mysql:latest variables: MYSQL_DATABASE: test MYSQL_ROOT_PASSWORD: test before_script: - mkdir ~/.ssh - ssh-keyscan -t rsa gitlab.com >> ~/.ssh/known_hosts - bash gitlab-ci.sh > /dev/null - curl -sS https://getcomposer.org/installer | php - php composer.phar install - cp database/database.sqlite.example database/database.sqlite - cp .env.test .env - php artisan key:generate - php artisan migrate:refresh --seed test: script: - vendor/bin/phpunit 

Mi compositor.json:

 { "name": "foo", "description": "Foo", "keywords": ["framework", "laravel"], "license": "MIT", "type": "project", "repositories": [ { "type": "vcs", "url": "git@gitlab.com:maneko/maravel-pages.git" } ], "require": { "php": ">=5.5.9", "laravel/framework": "5.2.*", "barryvdh/laravel-debugbar": "^2.1", "squizlabs/php_codesniffer": "*", "proengsoft/laravel-jsvalidation": "1.3.1", "yajra/laravel-datatables-oracle": "~6.0", "dimsav/laravel-translatable": "^5.5", "laravelcollective/html": "5.2.*", "maravel/pages": "dev-master" }, "require-dev": { "fzaninotto/faker": "~1.4", "mockery/mockery": "0.9.*", "phpunit/phpunit": "~4.0", "symfony/css-selector": "2.8.*|3.0.*", "symfony/dom-crawler": "2.8.*|3.0.*" }, "autoload": { "classmap": [ "database" ], "psr-4": { "App\\": "app/" }, "files": [ "app/helpers.php" ] }, "autoload-dev": { "classmap": [ "tests/TestCase.php" ] }, "scripts": { "post-root-package-install": [ "php -r \"copy('.env.example', '.env');\"" ], "post-create-project-cmd": [ "php artisan key:generate" ], "post-install-cmd": [ "php artisan clear-compiled", "php artisan optimize" ], "pre-update-cmd": [ "php artisan clear-compiled" ], "post-update-cmd": [ "php artisan optimize", "php artisan vendor:publish --provider=\"Proengsoft\\JsValidation\\JsValidationServiceProvider\" --tag=public --force" ] }, "config": { "prefernetworking-install": "dist" } } 

Recibo este error relacionado con los derechos de acceso y no sé qué hacer. Leí para agregar esto en el file .gitlab-ci.yml pero no funcionó:

 ssh-keyscan -t rsa gitlab.com >> ~/.ssh/known_hosts` 

enter image description here

¿Alguna ayuda por favor?

¡¡¡Gracias!!!

el script gitlab-ci se ejecuta como un usuario diferente. Si ha creado una key localmente y desea usarla dentro de su gitlab-ci, debe hacer que la key esté disponible para gitlab-ci.

Una forma es copyr el file - cp ~/.ssh/gitlab.com ~/.ssh/id_rsa

Esto debería copyr tu key local en el cornetworkingor gitlab. Tenga en count que el HostKeyChecking por SSH podría ser un problema a veces:

Solución

echo -e "Host *\n\tStrictHostKeyChecking no\n\n" > ~/.ssh/config lo evitará.