segment-boneyard / nightmare

A high-level browser automation library.
https://open.segment.com
19.54k stars 1.08k forks source link

Cannot create dockerfile for Appium Robot framework #1618

Open bhadmus opened 3 years ago

bhadmus commented 3 years ago

I am trying to create a docker file for a simple mobile test script I tried my hands on. below is the Dockerfile I created. The build has not been successful, I need help in getting it right

    MAINTAINER  Ademola Bhadmus, bhadmusademola.1@gmail.com
    ENV env=/root/env
    ENV PATH="$env/bin:$PATH"
    WORKDIR  /root
    # Copy relevant files to work directory
    COPY Resources .
    COPY Results .
    COPY Tests .
    # Install Python, Robot, and Appium
    COPY requirements.txt .
    RUN pip3 install --no-cache-dir --upgrade pip
    RUN python3 -m venv $env
    RUN pip3 install --no-cache-dir -r requirements.txt
    FROM node:latest
    RUN mkdir -p /usr/app
    WORKDIR /usr/app
    COPY . .
    RUN npm install -g appium
    # Execute file
    CMD ["appium"]
    CMD ["robot", "-d", "results", "index.robot"]

ERROR:

npm ERR! code ENOENT
    npm ERR! syscall chmod
    npm ERR! path /usr/local/lib/node_modules/appium/node_modules/.bin/authorize-ios
    npm ERR! errno -2
    npm ERR! enoent ENOENT: no such file or directory, chmod '/usr/local/lib/node_modules/appium/node_modules/.bin/authorize-ios'
    npm ERR! enoent This is related to npm not being able to find a file.
    npm ERR! enoent 
    npm ERR! A complete log of this run can be found in:
    npm ERR!     /root/.npm/_logs/2021-01-01T06_52_36_641Z-debug.log
    What am I doing wrong?

Please what am I doing wrong?