File tree 9 files changed +126
-69
lines changed
9 files changed +126
-69
lines changed Original file line number Diff line number Diff line change @@ -2,13 +2,12 @@ sudo: required
2
2
language : python
3
3
services :
4
4
- docker
5
- before_install :
6
- - docker build -f test.dockerfile -t gym-test .
5
+ env :
6
+ - UBUNTU_VER=14.04
7
+ - UBUNTU_VER=16.04
8
+ - UBUNTU_VER=18.04
9
+
7
10
install : " " # so travis doesn't do pip install requirements.txt
8
11
script :
12
+ - docker build -f test.dockerfile.${UBUNTU_VER} -t gym-test .
9
13
- docker run -e MUJOCO_KEY=$MUJOCO_KEY gym-test tox
10
-
11
- notifications :
12
- slack :
13
- secure : h/Mxm8K+avH/2W0818zCHmLloRPMFN4NJL01+VShvAkH80/acfjeq/+mMdWXXPL/oOB6kSHDk+GDhwR6+s03ZcPMn5INTFvFYqUc6UWmT+NXtOPxGTN0xda6MdYUkWQUKaMyjFrweZQOMOASFBIzPOq4XeVbM5aB8s4EJhnfAcYZhp/idwKbToVihN4KZgxlvZIFc8iEp1o9uSl5qrsaeYYYXRkb6mauacAwOo4/Chu+cOnoLUOnvhBFE3rV3doDNrbnoalO8XiExtgx5CIAYWrlMni7r2Q+LlzgwdyTH19ZtybPxJTZIIWSBQ2UtcoYdIEDcc36GcUwz1VUGg32mLJJnY2xw80CWR4ixFPpLwwP5Y99WTn8v094B4nmFTWOwNWXp3EkqtTN9XcJoRBqXB5ArucIPqrx57dOCljSKx22gL6WaF2p3stSAxIGFektGyGnisaELrFZG1C63aHoUPicj3gUlijmAoUmYaDRf6P1wnpXqBpKDAWWhAMSatvx1ekmEJgR7OQklQnnfjx9kENDUygNUWS4IQwN2qYieuzHFL3of7/30mTM43+Vt/vWN8GI7j01BXu6FNGGloHxjH1pt3bLP/+uj5BJsT2HWF+Z8XR4VE6cyVuKsQAFgCXwOkoDHALbcwsspONDIt/9ixkesgh1oFt4CzU3UuU5wYs=
14
- on_success : change
Load Diff This file was deleted.
Original file line number Diff line number Diff line change @@ -74,25 +74,37 @@ Installing everything
74
74
75
75
To install the full set of environments, you'll need to have some system
76
76
packages installed. We'll build out the list here over time; please let us know
77
- what you end up installing on your platform.
77
+ what you end up installing on your platform. Also, take a look at the docker files (test.dockerfile.xx.xx) to
78
+ see the composition of our CI-tested images.
78
79
79
80
On OSX:
80
81
81
82
.. code :: shell
82
83
83
84
brew install cmake boost boost-python sdl2 swig wget
84
85
85
- On Ubuntu 14.04:
86
+ On Ubuntu 14.04 (non-mujoco only) :
86
87
87
88
.. code :: shell
88
89
89
- apt-get install -y python-numpy python-dev cmake zlib1g-dev libjpeg-dev xvfb libav-tools xorg-dev python-opengl libboost-all-dev libsdl2-dev swig
90
+ apt-get install libjpeg-dev cmake swig python-pyglet python3-opengl libboost-all-dev \
91
+ libsdl2-2.0.0 libsdl2-dev libglu1-mesa libglu1-mesa-dev libgles2-mesa-dev \
92
+ freeglut3 xfvb libav-tools
93
+
94
+
95
+ On Ubuntu 16.04:
96
+
97
+ .. code :: shell
98
+ apt-get install -y python-pyglet python3-opengl zlib1g-dev libjpeg-dev patchelf \
99
+ cmake swig libboost-all-dev libsdl2-dev libosmesa6-dev xvfb ffmpeg
90
100
91
101
On Ubuntu 18.04:
92
102
93
103
.. code :: shell
94
104
95
- apt-get install -y python-numpy python-dev cmake zlib1g-dev libjpeg-dev xvfb ffmpeg xorg-dev python-opengl libboost-all-dev libsdl2-dev swig
105
+ apt install -y python3-dev zlib1g-dev libjpeg-dev cmake swig python-pyglet python3-opengl libboost-all-dev libsdl2-dev \
106
+ libosmesa6-dev patchelf ffmpeg xvf
107
+
96
108
97
109
MuJoCo has a proprietary dependency we can't set up for you. Follow
98
110
the
Original file line number Diff line number Diff line change 1
1
#! /bin/bash
2
2
# This script is the entrypoint for our Docker image.
3
3
4
- set -ex
4
+ set -x
5
5
6
6
if [[ ! -z " $MUJOCO_KEY " ]]; then
7
7
echo $MUJOCO_KEY | base64 --decode > /root/.mujoco/mjkey.txt
8
8
fi
9
9
10
+ set -ex
11
+
10
12
# Set up display; otherwise rendering will fail
11
13
Xvfb -screen 0 1024x768x24 &
12
14
export DISPLAY=:0
Original file line number Diff line number Diff line change @@ -133,10 +133,9 @@ def _get_viewer(self, mode):
133
133
if self .viewer is None :
134
134
if mode == 'human' :
135
135
self .viewer = mujoco_py .MjViewer (self .sim )
136
-
137
136
elif mode == 'rgb_array' or mode == 'depth_array' :
138
137
self .viewer = mujoco_py .MjRenderContextOffscreen (self .sim , - 1 )
139
-
138
+
140
139
self .viewer_setup ()
141
140
self ._viewers [mode ] = self .viewer
142
141
return self .viewer
Original file line number Diff line number Diff line change
1
+ # A Dockerfile that sets up a full Gym install with test dependencies
2
+ FROM ubuntu:14.04
3
+ # Note that latest version of mujoco-py, 1.5, does not play nicely with ubuntu 14.04 -
4
+ # requires patchelf system package not available on 14.04
5
+
6
+ # Install keyboard-configuration separately to avoid travis hanging waiting for keyboard selection
7
+ RUN \
8
+ apt-get -y update && \
9
+ apt-get install -y keyboard-configuration && \
10
+
11
+ apt-get install -y \
12
+ python-setuptools \
13
+ python-pip \
14
+ python3-dev \
15
+ libjpeg-dev \
16
+ cmake \
17
+ swig \
18
+ python-pyglet \
19
+ python3-opengl \
20
+ libboost-all-dev \
21
+ libsdl2-2.0.0 \
22
+ libsdl2-dev \
23
+ libglu1-mesa \
24
+ libglu1-mesa-dev \
25
+ libgles2-mesa-dev \
26
+ xvfb \
27
+ libav-tools \
28
+ freeglut3 \
29
+ wget \
30
+ unzip && \
31
+
32
+ apt-get clean && \
33
+ rm -rf /var/lib/apt/lists/* && \
34
+ pip install tox
35
+
36
+
37
+ ENV LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/root/.mujoco/mjpro150/bin
38
+
39
+ # install dependencies
40
+ COPY . /usr/local/gym/
41
+ RUN cd /usr/local/gym && \
42
+ tox --notest
43
+
44
+ WORKDIR /usr/local/gym/
45
+ ENTRYPOINT ["/usr/local/gym/bin/docker_entrypoint"]
46
+ CMD ["tox"]
Original file line number Diff line number Diff line change @@ -15,27 +15,21 @@ RUN \
15
15
apt-get install -y \
16
16
python-setuptools \
17
17
python-pip \
18
- libpq-dev \
18
+ python3-dev \
19
+ python-pyglet \
20
+ python3-opengl \
19
21
zlib1g-dev \
20
22
libjpeg-dev \
21
- curl \
22
23
cmake \
23
24
swig \
24
- python-opengl \
25
- python-numpy \
26
- python-pyglet \
27
- python3-opengl \
28
25
libboost-all-dev \
29
26
libsdl2-dev \
30
27
libosmesa6-dev \
31
28
patchelf \
32
- wget \
33
- unzip \
34
- git \
35
- vim \
36
29
xvfb \
37
30
ffmpeg \
38
- python3-dev && \
31
+ wget \
32
+ unzip && \
39
33
40
34
apt-get clean && \
41
35
rm -rf /var/lib/apt/lists/* && \
Original file line number Diff line number Diff line change
1
+ # A Dockerfile that sets up a full Gym install with test dependencies
2
+ FROM ubuntu:18.04
3
+
4
+ # Install keyboard-configuration separately to avoid travis hanging waiting for keyboard selection
5
+ RUN \
6
+ apt -y update && \
7
+ apt install -y keyboard-configuration && \
8
+
9
+ apt install -y \
10
+ python-setuptools \
11
+ python-pip \
12
+ python3-dev \
13
+ python-pyglet \
14
+ python3-opengl \
15
+ zlib1g-dev \
16
+ libjpeg-dev \
17
+ cmake \
18
+ swig \
19
+ libboost-all-dev \
20
+ libsdl2-dev \
21
+ libosmesa6-dev \
22
+ patchelf \
23
+ ffmpeg \
24
+ xvfb \
25
+ wget \
26
+ unzip && \
27
+
28
+ apt clean && \
29
+ rm -rf /var/lib/apt/lists/* && \
30
+ pip install tox && \
31
+
32
+ # Download mujoco
33
+ mkdir /root/.mujoco && \
34
+ cd /root/.mujoco && \
35
+ wget https://www.roboti.us/download/mjpro150_linux.zip && \
36
+ unzip mjpro150_linux.zip
37
+
38
+ ENV LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/root/.mujoco/mjpro150/bin
39
+
40
+ # install dependencies
41
+ COPY . /usr/local/gym/
42
+ RUN cd /usr/local/gym && \
43
+ tox --notest
44
+
45
+ WORKDIR /usr/local/gym/
46
+ ENTRYPOINT ["/usr/local/gym/bin/docker_entrypoint"]
47
+ CMD ["tox"]
Original file line number Diff line number Diff line change 4
4
# and then run "tox" from this directory.
5
5
6
6
[tox]
7
- envlist = py35
7
+ envlist = py3
8
8
9
- [testenv:py35 ]
9
+ [testenv:py3 ]
10
10
whitelist_externals =make
11
11
passenv =DISPLAY TRAVIS*
12
12
deps =
You can’t perform that action at this time.
0 commit comments