2016-11-17 19 views
2

Wenn ich versuche, ssh Läufer in deploy Konsole Ich habe diesen Fehler zu erstellen:Gitlab CI, ssh Läufer

Running with gitlab-ci-multi-runner 1.7.1 (f896af7) 
Using SSH executor... 
ERROR: Preparation failed: open ~/.ssh/id_rsa.pub: no such file or directory 
Will be retried in 3s ... 
Using SSH executor... 
ERROR: Preparation failed: open ~/.ssh/id_rsa.pub: no such file or directory 
Will be retried in 3s ... 
Using SSH executor... 
ERROR: Preparation failed: open ~/.ssh/id_rsa.pub: no such file or directory 
Will be retried in 3s ... 
ERROR: Build failed (system failure): open ~/.ssh/id_rsa.pub: no such file or directory 

Auf meinem Server ich SSH-Schlüssel erstellt, und dieser Schlüssel ist im Verzeichnis ~/.ssh/id_rsa .pub. Meine .gitlab-ci.yml Datei:

stages: 
- deploy 
before_script: 
    - whoami 
mate-finder: 
    stage: deploy 
    script: 
    - sudo apt-get update -qy 
    - sudo apt-get install -y nodejs 
    - sudo npm install 
    - sudo ng build 
    - sudo ng serve 

Wie kann ich meine Anwendung auf dem Server bereitstellen? Wie muss ich meinen Runner auf dem Server konfigurieren, wenn ich meine angular2-Anwendung darauf bereitstellen möchte?

+0

Ich sah, dass du dort ein "Whoami" gemacht hast. Mein erster Gedanke ist, dass die Home-Verzeichnisse nicht anstehen. – louahola

+0

@louahola wenn ich id_rsa.pub in ein anderes Verzeichnis verschiebe, wurde das Problem nicht gelöst. – srzeppa

+0

https://gitlab.com/gitlab-org/gitlab-ci-multi-runner/issues/202; Ich würde das eine Chance geben – louahola

Antwort

0

Sie müssen überprüfen, wo config.toml platziert ist. Sie können es mit einer Suche tun.

find/-name 'config.toml'

Wenn das Ergebnis sein würde

/etc/gitlab-runner/config.toml

Sie Läufer als root läuft. Und Sie müssen den vollständigen Pfad wie /root/.ssh/id_rsa angeben.

Wenn nein - Sie es unter anderen Benutzer ausführen und Sie müssen Verzeichnis wie /home/user/.ssh/id_rsa angeben. registrieren shell Testamentsvollstrecker und laufen pwd oder whoami


Ich glaube, es gitlab-runner wenn nicht root wäre -

Um welche Benutzer Sie sind zu erfahren.