forked from ap-choji/patrol_subnet
-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathvalidator.dockerfile
More file actions
45 lines (32 loc) · 1.19 KB
/
validator.dockerfile
File metadata and controls
45 lines (32 loc) · 1.19 KB
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
FROM python:3.12-slim AS base
LABEL vendor="Tensora"
LABEL maintainer="richard@tensora.com"
LABEL maintainer="jack@tensora.com"
LABEL bittensor.subnet="81"
WORKDIR /build
RUN apt-get update
RUN pip install --upgrade pip
COPY pyproject.toml .
ENV PSEUDO_VERSION="0.0.0"
RUN SETUPTOOLS_SCM_PRETEND_VERSION=${PSEUDO_VERSION} pip install -e .
FROM base AS build
WORKDIR /build
COPY src/patrol/validation ./src/patrol/validation
COPY src/patrol/chain_data ./src/patrol/chain_data
COPY src/patrol/constants.py ./src/patrol/constants.py
COPY src/patrol/protocol.py ./src/patrol/protocol.py
COPY src/patrol/__init__.py ./src/patrol/__init__.py
COPY tests/validation ./tests/validation
COPY src/patrol/logging.ini ./src/patrol/logging.ini
ARG SETUPTOOLS_SCM_PRETEND_VERSION="0.0.0"
RUN SETUPTOOLS_SCM_PRETEND_VERSION=${SETUPTOOLS_SCM_PRETEND_VERSION} pip install -e '.[test]'
ARG TEST_POSTGRESQL_URL
RUN export TEST_POSTGRESQL_URL=$TEST_POSTGRESQL_URL && pytest ./tests
FROM base AS final
WORKDIR /patrol
COPY --from=build /build/src/ .
COPY src/logging.ini .
ENV PYTHONUNBUFFERED=1
CMD ["python", "-m", "patrol.validation.validator"]
ENV DB_DIR=/var/patrol/sqlite
ENV DB_URL="sqlite+aiosqlite:///${DB_DIR}/patrol.db"