Matteo Scandolo | d2044a4 | 2017-08-07 16:08:28 -0700 | [diff] [blame] | 1 | # Copyright 2017-present Open Networking Foundation |
| 2 | # |
| 3 | # Licensed under the Apache License, Version 2.0 (the "License"); |
| 4 | # you may not use this file except in compliance with the License. |
| 5 | # You may obtain a copy of the License at |
| 6 | # |
| 7 | # http://www.apache.org/licenses/LICENSE-2.0 |
| 8 | # |
| 9 | # Unless required by applicable law or agreed to in writing, software |
| 10 | # distributed under the License is distributed on an "AS IS" BASIS, |
| 11 | # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. |
| 12 | # See the License for the specific language governing permissions and |
| 13 | # limitations under the License. |
| 14 | |
Zack Williams | 52986b2 | 2017-04-19 16:28:25 -0700 | [diff] [blame] | 15 | # xosproject/chameleon |
Scott Baker | 08d1040 | 2019-04-08 16:19:59 -0700 | [diff] [blame^] | 16 | FROM xosproject/xos-base:3.2.0 |
Scott Baker | 85d614f | 2017-02-01 14:30:40 -0800 | [diff] [blame] | 17 | |
Zack Williams | a7fec78 | 2017-04-27 20:18:19 -0700 | [diff] [blame] | 18 | # xos-base already has protoc and dependencies installed |
| 19 | |
| 20 | # Bundle app source |
| 21 | RUN mkdir /chameleon && touch /chameleon/__init__.py |
| 22 | ENV PYTHONPATH=/chameleon |
| 23 | COPY tmp.chameleon /chameleon/chameleon |
| 24 | |
| 25 | # Build the protos |
Zack Williams | be5ee1c | 2019-03-18 15:33:07 -0700 | [diff] [blame] | 26 | RUN pip install \ |
| 27 | Jinja2==2.10 \ |
| 28 | PyYAML==5.1 \ |
| 29 | docker==3.7.0 \ |
| 30 | fluent-logger==0.9.3 \ |
| 31 | grpcio-tools==1.12.0 \ |
| 32 | grpcio==1.12.0 \ |
| 33 | klein==17.10.0 \ |
| 34 | netifaces==0.10.9 \ |
| 35 | pyOpenSSL==19.0.0 \ |
| 36 | python-consul==1.1.0 \ |
| 37 | service_identity==18.1.0 \ |
| 38 | simplejson==3.16.0 \ |
Zack Williams | ffc9b21 | 2018-03-22 17:25:33 -0700 | [diff] [blame] | 39 | && chdir chameleon/chameleon/protos \ |
| 40 | && VOLTHA_BASE=anything make |
Scott Baker | 85d614f | 2017-02-01 14:30:40 -0800 | [diff] [blame] | 41 | |
Zack Williams | 52986b2 | 2017-04-19 16:28:25 -0700 | [diff] [blame] | 42 | # Label image |
| 43 | ARG org_label_schema_schema_version=1.0 |
| 44 | ARG org_label_schema_name=chameleon |
| 45 | ARG org_label_schema_version=unknown |
| 46 | ARG org_label_schema_vcs_url=unknown |
| 47 | ARG org_label_schema_vcs_ref=unknown |
| 48 | ARG org_label_schema_build_date=unknown |
| 49 | ARG org_opencord_vcs_commit_date=unknown |
| 50 | ARG org_opencord_component_chameleon_version=unknown |
| 51 | ARG org_opencord_component_chameleon_vcs_url=unknown |
| 52 | ARG org_opencord_component_chameleon_vcs_ref=unknown |
| 53 | |
| 54 | LABEL org.label-schema.schema-version=$org_label_schema_schema_version \ |
| 55 | org.label-schema.name=$org_label_schema_name \ |
| 56 | org.label-schema.version=$org_label_schema_version \ |
| 57 | org.label-schema.vcs-url=$org_label_schema_vcs_url \ |
| 58 | org.label-schema.vcs-ref=$org_label_schema_vcs_ref \ |
| 59 | org.label-schema.build-date=$org_label_schema_build_date \ |
| 60 | org.opencord.vcs-commit-date=$org_opencord_vcs_commit_date \ |
| 61 | org.opencord.component.chameleon.version=$org_opencord_component_chameleon_version \ |
| 62 | org.opencord.component.chameleon.vcs-url=$org_opencord_component_chameleon_vcs_url \ |
| 63 | org.opencord.component.chameleon.vcs-ref=$org_opencord_component_chameleon_vcs_ref |
| 64 | |
Scott Baker | 85d614f | 2017-02-01 14:30:40 -0800 | [diff] [blame] | 65 | # Exposing process and default entry point |
Zack Williams | 461202b | 2018-05-28 15:10:14 -0700 | [diff] [blame] | 66 | CMD ["python", "/chameleon/chameleon/main.py"] |