dockerfile: запустить инструмент в нескольких репозиториях - PullRequest
0 голосов
/ 04 июля 2019

У меня есть инструмент cli, который я создаю с помощью Docker для набора тестов E2E.Основная идея заключается в том, что в контейнере Docker я создаю локальный код, а затем запускаю инструмент в нескольких общедоступных репозиториях.Основная цель этого состоит в том, чтобы упростить просмотр любых недостающих функций, которые, возможно, потребуется добавить моему инструменту CLI.

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

## Build a node application
from node:8.11.1
WORKDIR /app

## Copy all the files
COPY . ./sortier

## Build run and test
RUN  cd ./sortier \
  && npm install --unsafe-perm \
  && npm run test \
  && cd .. \
## Run react-redux-typescript-guide/playground test
  && pwd \
  && git clone https://github.com/piotrwitek/react-redux-typescript-guide  \
  && cd react-redux-typescript-guide/playground \
  && npm install --unsafe-perm \
  && echo "{ isHelpMode: true }" > .sortierrc \
  && cd ../../sortier \
  && npm run start -- "../react-redux-typescript-guide/playground/src/**/*.ts" \
  && npm run start -- "../react-redux-typescript-guide/playground/src/**/*.tsx" \
  && cd ../react-redux-typescript-guide/playground \
  && npm run build \
  && cd ../.. \
## Run prettier test
  && pwd \
  && git clone https://github.com/prettier/prettier \
  && cd prettier \
  && npm install --unsafe-perm \
  && echo "{ isHelpMode: true }" > .sortierrc \
  && cd .. \
  && npm run start -- "prettier/src/**/*.js" \
  && cd prettier \
  && npm run build \
  && npm run test \
  && cd ..

Я пытался понять, как использовать WORKDIRвместо этого менять каталоги, которые бы сильно его очищали, но возможность ссылаться на рабочие каталоги друг от друга, похоже, не сработало.

Любой совет, как мне очистить этот файл Docker?

1 Ответ

0 голосов
/ 04 июля 2019

И, конечно же, после того, как я отправил вопрос, я выясняю ответ (do'h)

## Build a node application
from node:8.11.1

## Sortier creation, build and test
WORKDIR /sortier
COPY . .
RUN npm install --unsafe-perm
RUN npm run test

## react-redux-typescript-guide/playground
WORKDIR /react-redux-typescript-guide
RUN git clone https://github.com/piotrwitek/react-redux-typescript-guide .
WORKDIR /react-redux-typescript-guide/playground
RUN npm install --unsafe-perm
RUN echo "{ isHelpMode: true }" > .sortierrc
WORKDIR /sortier
RUN npm run start -- "/react-redux-typescript-guide/playground/src/**/*.ts"
RUN npm run start -- "/react-redux-typescript-guide/playground/src/**/*.tsx"
WORKDIR /react-redux-typescript-guide/playground
RUN npm run build
RUN set CI=true&&npm run test

## prettier
WORKDIR /prettier
RUN git clone https://github.com/prettier/prettier
WORKDIR /prettier
RUN npm install --unsafe-perm
RUN echo "{ isHelpMode: true }" > .sortierrc
WORKDIR /sortier
RUN npm run start -- "/prettier/src/**/*.js"
WORKDIR /prettier
RUN npm run build
RUN npm run test
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...