Как использовать digitallyseamless/nodejs-bower-grunt-runtime: компас-поддержка в Wercker?

Я использую wercker для автоматизации развертывания приложения nodejs.

я думал digitallyseamless/nodejs-bower-grunt-runtime коробка с поддержкой компаса сделает работу.

Но когда хрюканье пытается использовать компас, происходит ошибка.

экстракт моего werker.yml

box: digitallyseamless/nodejs-bower-grunt-runtime:compass-support
build:
  steps:
    - wercker/npm-install
    - greatbeyond/bower-install@0.5.8
    - wercker/grunt:
      stack: true
      fail-on-warnings: true
      tasks: clean ngconstant:production build

экстракт из grunt журнал относительно compass

 Running "compass:dist" (compass) task
   Warning: Command failed: /bin/sh -c compass --version
   /bin/sh: 1: compass: not found
   Use --force to continue.
   Error: Command failed: /bin/sh -c compass --version
   /bin/sh: 1: compass: not found

Кажется, я пропускаю шаг.

Как сделать compass работать в коробке?

1 ответ

Я попытался загрузить докер-контейнер (digitallyseamless/nodejs-bower-grunt-runtime:compass-support), при проверке содержимого контейнера я не смог найти compass на этом контейнере.

Оказывается Dockerfile для этого контейнера использует ONBUILD директива при установке компаса: https://docs.docker.com/engine/reference/builder/

Так будет только устанавливать compass при создании нового контейнера Docker из этого базового образа (хотя он также ожидает, что все приложение уже будет присутствовать).

Вы можете создать PR, чтобы удалить ONBUILD директива от apt-get ... команды, таким образом делая compass часть этого контейнера.

Другие вопросы по тегам