-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathDockerfile
150 lines (109 loc) · 5.7 KB
/
Dockerfile
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
FROM quay.io/pypa/manylinux_2_24_x86_64 as main
WORKDIR /src
ARG PYTHON=python3.10
ENV PYTHON=${PYTHON} URL="git+https://github.com/cmake-wheel"
RUN --mount=type=cache,target=/root/.cache ${PYTHON} -m pip install simple503
ENV CTEST_PARALLEL_LEVEL=6
FROM main as cmeel
ADD https://api.github.com/repos/cmake-wheel/cmeel/commits/main .
RUN --mount=type=cache,target=/root/.cache ${PYTHON} -m pip wheel --extra-index-url file:///wh -w /wh ${URL}/cmeel
FROM main as cmeel-example
COPY --from=cmeel /wh /wh
RUN ${PYTHON} -m simple503 -B file:///wh /wh
ADD https://api.github.com/repos/cmake-wheel/cmeel-example/commits/main .
RUN --mount=type=cache,target=/root/.cache ${PYTHON} -m pip wheel --extra-index-url file:///wh -w /wh ${URL}/cmeel-example
FROM main as eigen
COPY --from=cmeel /wh /wh
RUN ${PYTHON} -m simple503 -B file:///wh /wh
ADD https://api.github.com/repos/cmake-wheel/cmeel-eigen/commits/main .
RUN --mount=type=cache,target=/root/.cache ${PYTHON} -m pip wheel --extra-index-url file:///wh -w /wh ${URL}/cmeel-eigen
FROM main as boost
COPY --from=cmeel /wh /wh
RUN ${PYTHON} -m simple503 -B file:///wh /wh
ADD https://api.github.com/repos/cmake-wheel/cmeel-boost/commits/main .
RUN --mount=type=cache,target=/root/.cache ${PYTHON} -m pip wheel --extra-index-url file:///wh -w /wh ${URL}/cmeel-boost
FROM main as eigenpy
COPY --from=eigen /wh /wh
COPY --from=boost /wh /wh
RUN ${PYTHON} -m simple503 -B file:///wh /wh
ADD https://api.github.com/repos/cmake-wheel/eigenpy/commits/cmeel .
RUN --mount=type=cache,target=/root/.cache ${PYTHON} -m pip wheel --extra-index-url file:///wh -w /wh ${URL}/eigenpy
FROM main as assimp
COPY --from=cmeel /wh /wh
RUN ${PYTHON} -m simple503 -B file:///wh /wh
ADD https://api.github.com/repos/cmake-wheel/cmeel-assimp/commits/main .
RUN --mount=type=cache,target=/root/.cache ${PYTHON} -m pip wheel --extra-index-url file:///wh -w /wh ${URL}/cmeel-assimp
FROM main as octomap
COPY --from=cmeel /wh /wh
RUN ${PYTHON} -m simple503 -B file:///wh /wh
ADD https://api.github.com/repos/cmake-wheel/cmeel-octomap/commits/main .
RUN --mount=type=cache,target=/root/.cache ${PYTHON} -m pip wheel --extra-index-url file:///wh -w /wh ${URL}/cmeel-octomap
FROM main as coal
COPY --from=assimp /wh /wh
COPY --from=octomap /wh /wh
COPY --from=eigenpy /wh /wh
RUN ${PYTHON} -m simple503 -B file:///wh /wh
ADD https://api.github.com/repos/cmake-wheel/coal/commits/cmeel .
RUN --mount=type=cache,target=/root/.cache ${PYTHON} -m pip wheel --extra-index-url file:///wh -w /wh ${URL}/coal
FROM main as urdfdom-headers
COPY --from=cmeel /wh /wh
RUN ${PYTHON} -m simple503 -B file:///wh /wh
ADD https://api.github.com/repos/cmake-wheel/cmeel-urdfdom-headers/commits/main .
RUN --mount=type=cache,target=/root/.cache ${PYTHON} -m pip wheel --extra-index-url file:///wh -w /wh ${URL}/cmeel-urdfdom-headers
FROM main as console-bridge
COPY --from=cmeel /wh /wh
RUN ${PYTHON} -m simple503 -B file:///wh /wh
ADD https://api.github.com/repos/cmake-wheel/cmeel-console-bridge/commits/main .
RUN --mount=type=cache,target=/root/.cache ${PYTHON} -m pip wheel --extra-index-url file:///wh -w /wh ${URL}/cmeel-console-bridge
FROM main as tinyxml
COPY --from=cmeel /wh /wh
RUN ${PYTHON} -m simple503 -B file:///wh /wh
ADD https://api.github.com/repos/cmake-wheel/cmeel-tinyxml/commits/main .
RUN --mount=type=cache,target=/root/.cache ${PYTHON} -m pip wheel --extra-index-url file:///wh -w /wh ${URL}/cmeel-tinyxml
FROM main as urdfdom
COPY --from=urdfdom-headers /wh /wh
COPY --from=tinyxml /wh /wh
COPY --from=console-bridge /wh /wh
RUN ${PYTHON} -m simple503 -B file:///wh /wh
ADD https://api.github.com/repos/cmake-wheel/cmeel-urdfdom/commits/main .
RUN --mount=type=cache,target=/root/.cache ${PYTHON} -m pip wheel --extra-index-url file:///wh -w /wh ${URL}/cmeel-urdfdom
FROM main as pinocchio
COPY --from=coal /wh /wh
COPY --from=urdfdom /wh /wh
RUN ${PYTHON} -m simple503 -B file:///wh /wh
ADD https://api.github.com/repos/cmake-wheel/pinocchio/commits/cmeel .
RUN --mount=type=cache,target=/root/.cache ${PYTHON} -m pip wheel --extra-index-url file:///wh -w /wh ${URL}/pinocchio
FROM main as example-robot-data
COPY --from=pinocchio /wh /wh
RUN ${PYTHON} -m simple503 -B file:///wh /wh
ADD https://api.github.com/repos/cmake-wheel/example-robot-data/commits/cmeel .
RUN --mount=type=cache,target=/root/.cache ${PYTHON} -m pip wheel --extra-index-url file:///wh -w /wh ${URL}/example-robot-data
FROM main as eiquadprog
COPY --from=eigen /wh /wh
COPY --from=boost /wh /wh
RUN ${PYTHON} -m simple503 -B file:///wh /wh
ADD https://api.github.com/repos/cmake-wheel/eiquadprog/commits/cmeel .
RUN --mount=type=cache,target=/root/.cache ${PYTHON} -m pip wheel --extra-index-url file:///wh -w /wh ${URL}/eiquadprog
FROM main as tsid
COPY --from=eiquadprog /wh /wh
RUN ${PYTHON} -m simple503 -B file:///wh /wh
ADD https://api.github.com/repos/cmake-wheel/tsid/commits/cmeel .
RUN --mount=type=cache,target=/root/.cache ${PYTHON} -m pip wheel --extra-index-url file:///wh -w /wh ${URL}/tsid
FROM main as crocoddyl
COPY --from=example-robot-data /wh /wh
RUN ${PYTHON} -m simple503 -B file:///wh /wh
ADD https://api.github.com/repos/cmake-wheel/crocoddyl/commits/cmeel .
RUN --mount=type=cache,target=/root/.cache ${PYTHON} -m pip wheel --extra-index-url file:///wh -w /wh ${URL}/crocoddyl
FROM main as wh
COPY --from=cmeel-example /wh /wh
COPY --from=tsid /wh /wh
COPY --from=crocoddyl /wh /wh
RUN ${PYTHON} -m simple503 -B file:///wh /wh
RUN --mount=type=cache,target=/root/.cache ${PYTHON} -m pip install --extra-index-url file:///wh example-robot-data
FROM python:3.10
COPY --from=wh /wh /wh
ENV PYTHON=python
RUN --mount=type=cache,target=/root/.cache ${PYTHON} -m pip install --extra-index-url file:///wh example-robot-data
ADD meta/test.py .
RUN ${PYTHON} test.py
RUN assimp