CircleCI версии 2.1 - «Не удается найти определение команды с именем« restore-cache »» - PullRequest
1 голос
/ 06 марта 2019

В настоящее время я пытаюсь использовать функцию commands, доступную в CircleCI версии 2.1, чтобы я мог повторно использовать некоторые общие команды.Я тестирую с помощью команды CLI:

circleci config process ./.circleci/config.latest.yaml > ./.circleci/config.yml

Но я получаю следующую ошибку:

Error: Error calling workflow: 'main'
Error calling job: 'build'
Error calling command: 'build_source'
Cannot find a definition for command named restore-cache

Кажется, что restore-cache прекрасно работает в обычной версии 2файл конфигурации, но когда я пытаюсь обработать файл 2.1, используя process, он поднимает шум.

Ниже приведена отредактированная версия моего config.yaml файла, которая, надеюсь, будет полезна.Пожалуйста, дайте мне знать, если есть какая-либо дополнительная информация, которая будет полезна.

version: 2.1

defaults: &defaults
  /**
   *  Unimportant stuff
   */

aliases:
  - &restore-root-cache
    keys:
      - v1-deps-{{ .Branch }}-{{ checksum "package.json" }}
      - v1-deps-{{ .Branch }}
      - v1-deps

commands:
  build_source:
    description: 'Installs dependencies, then builds src, builds documentation, and runs tests'
    steps:
      - restore-cache: *restore-root-cache
      - other-commands...

jobs:
  build:
    <<: *defaults
    steps:
      - checkout
      - build_source

workflows:
  version: 2.1
  main:
    jobs:
      - build:
          filters:
            branches:
              ignore: develop

Ответы [ 2 ]

1 голос
/ 06 марта 2019

Команда: restore_cache (с подчеркиванием), а не restore-cache (с тире) https://circleci.com/docs/2.0/configuration-reference/#restore_cache

Должна работать в командах.

0 голосов
/ 06 марта 2019

восстановление кеша - это особый шаг, который должен выполняться под заданием.Не другая команда.

...