blob: 2f8a4618b15889c90f062ab9d19ca426b8771594 [file] [log] [blame]
Mohammed Naser8613c862023-04-24 17:26:51 -04001VERSION 0.7
2FROM python:3.10
3
4poetry:
5 RUN pip3 install poetry
6
7deps:
8 FROM +poetry
9 COPY pyproject.toml poetry.lock ./
10 RUN poetry export -f requirements.txt --without-hashes > requirements.txt
11 RUN pip wheel -r requirements.txt --wheel-dir=/wheels
12 SAVE ARTIFACT requirements.txt
13 SAVE ARTIFACT /wheels
14
15build:
16 FROM +deps
17 RUN python3 -m venv /venv
18 ENV PATH=/venv/bin:$PATH
19 RUN pip install -r requirements.txt
20 SAVE ARTIFACT /venv
21
22docker:
23 COPY +build/venv /venv
24 ENV PATH=/venv/bin:$PATH
25
26pin-images:
27 FROM +docker
28 COPY roles/defaults/defaults/main.yml /defaults.yml
29 COPY build/pin-images.py /usr/local/bin/pin-images
30 RUN /usr/local/bin/pin-images /defaults.yml /pinned.yml
31 SAVE ARTIFACT /pinned.yml AS LOCAL roles/defaults/defaults/main.yml