déployer le travail bloqué lors de l'utilisation de CircleCI pour déployer le dossier dist sur scp

2020-08-01 continuous-integration circleci circleci-workflows

Mes premiers pas avec ci / cd et essayer de configurer CircleCI pour mon projet animalier.

J'ai un serveur VPS sur digitalocean et je veux qu'après build faze, le contenu d'un dossier dist soit téléchargé sur le serveur via scp . Mon config.yml est le suivant:

version: 2.1

executors:
  my-executor:
    docker:
      - image: circleci/node:12.9.1-browsers
    working_directory: ~/repo

jobs:
  build:
    executor: my-executor

    steps:
      - checkout

      - restore_cache:
          keys:
            - v1-dependencies-{{ checksum "package.json" }}
            # fallback to using the latest cache if no exact match is found
            - v1-dependencies-
      - run: yarn install

      - save_cache:
          paths:
            - node_modules
            - ~/.npm
            - ~/.cache
          key: v1-dependencies-{{ checksum "package.json" }}

      - run: yarn build

  deploy:
    executor: my-executor

    steps:
      - run:
          name: Deploy Over SSH
          command: |
            scp -r dist/* [email protected]$SERVER_IP:/var/www/example.com/html

workflows:
  version: 2

  build-deploy:
    jobs:
      - build
      - deploy:
          requires:
            - build

build travail parfaitement, mais deploy travail bloqué et je ne vois que ce message:

#!/bin/bash -eo pipefail
scp -r dist/* [email protected]$SERVER_IP:/var/www/example.com/html
The authenticity of host '************ (************)' can't be established.
ECDSA key fingerprint is SHA256:Yu/i9AcPRAJtyT43QrQMdI3tSB3*************.

J'ai ajouté une clé ssh privée à circleci et une clé publique à authorized_keys

Où je me trompe? Je vous remercie.

Answers

Ok, je devais ajouter manuellement mon hôte aux hôtes connus comme suit pour que cela fonctionne:

- run:
    name: Add to known hosts
    command: ssh-keyscan -H $SERVER_IP >> ~/.ssh/known_hosts

Sinon, il me demandait si je devais l'ajouter manuellement et j'y étais coincé.

Related