Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Cleanup #118

Draft
wants to merge 15 commits into
base: main
Choose a base branch
from
Draft
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
27 changes: 0 additions & 27 deletions .travis.yml

This file was deleted.

96 changes: 12 additions & 84 deletions Dockerfile
Original file line number Diff line number Diff line change
@@ -1,91 +1,19 @@
FROM python:3.12.3 as build
MAINTAINER RAMS Project "[email protected]"
LABEL version.sideboard ="1.0"
FROM python:3.12.3-slim as build
WORKDIR /app

# This is actually the least bad way to compose two Dockerfile tech stacks right now.
# The following is copied and pasted from the Node Dockerfile at
# https://github.com/nodejs/docker-node/blob/main/12/buster/Dockerfile
# Update this comment and change the entire copypasta section to upgrade Node version

#########################################
# START NODEJS DOCKERFILE COPYPASTA #
# https://github.com/nodejs/docker-node #
#########################################
RUN groupadd --gid 1000 node \
&& useradd --uid 1000 --gid node --shell /bin/bash --create-home node

ENV NODE_VERSION 12.22.3

RUN ARCH= && dpkgArch="$(dpkg --print-architecture)" \
&& case "${dpkgArch##*-}" in \
amd64) ARCH='x64';; \
ppc64el) ARCH='ppc64le';; \
s390x) ARCH='s390x';; \
arm64) ARCH='arm64';; \
armhf) ARCH='armv7l';; \
i386) ARCH='x86';; \
*) echo "unsupported architecture"; exit 1 ;; \
esac \
# gpg keys listed at https://github.com/nodejs/node#release-keys
&& set -ex \
&& for key in \
4ED778F539E3634C779C87C6D7062848A1AB005C \
94AE36675C464D64BAFA68DD7434390BDBE9B9C5 \
74F12602B6F1C4E913FAA37AD3A89613643B6201 \
71DCFD284A79C3B38668286BC97EC7A07EDE3FC1 \
8FCCA13FEF1D0C2E91008E09770F7A9A5AE15600 \
C4F0DFFF4E8C1A8236409D08E73BC641CC11F4C8 \
C82FA3AE1CBEDC6BE46B9360C43CEC45C17AB93C \
DD8F2338BAE7501E3DD5AC78C273792F7D83545D \
A48C2BEE680E841632CD4E44F07496B3EB3C1762 \
108F52B48DB57BB0CC439B2997B01419BD92F80A \
B9E2F5981AA6E0CD28160D9FF13993A75599653C \
; do \
gpg --batch --keyserver hkps://keys.openpgp.org --recv-keys "$key" || \
gpg --batch --keyserver keyserver.ubuntu.com --recv-keys "$key" ; \
done \
&& curl -fsSLO --compressed "https://nodejs.org/dist/v$NODE_VERSION/node-v$NODE_VERSION-linux-$ARCH.tar.xz" \
&& curl -fsSLO --compressed "https://nodejs.org/dist/v$NODE_VERSION/SHASUMS256.txt.asc" \
&& gpg --batch --decrypt --output SHASUMS256.txt SHASUMS256.txt.asc \
&& grep " node-v$NODE_VERSION-linux-$ARCH.tar.xz\$" SHASUMS256.txt | sha256sum -c - \
&& tar -xJf "node-v$NODE_VERSION-linux-$ARCH.tar.xz" -C /usr/local --strip-components=1 --no-same-owner \
&& rm "node-v$NODE_VERSION-linux-$ARCH.tar.xz" SHASUMS256.txt.asc SHASUMS256.txt \
# smoke tests
&& node --version \
&& npm --version

RUN curl -SLO "https://nodejs.org/dist/v$NODE_VERSION/node-v$NODE_VERSION-linux-x64.tar.xz" \
&& curl -SLO "https://nodejs.org/dist/v$NODE_VERSION/SHASUMS256.txt.asc" \
&& gpg --batch --decrypt --output SHASUMS256.txt SHASUMS256.txt.asc \
&& grep " node-v$NODE_VERSION-linux-x64.tar.xz\$" SHASUMS256.txt | sha256sum -c - \
&& tar -xJf "node-v$NODE_VERSION-linux-x64.tar.xz" -C /usr/local --strip-components=1 \
&& rm "node-v$NODE_VERSION-linux-x64.tar.xz" SHASUMS256.txt.asc SHASUMS256.txt \
&& ln -s /usr/local/bin/node /usr/local/bin/nodejs
###################################
# END NODEJS DOCKERFILE COPYPASTA #
###################################

# required for python-prctl
RUN apt-get update && apt-get install -y libcap-dev && rm -rf /var/lib/apt/lists/*

RUN pip3 install virtualenv \
&& virtualenv --always-copy /app/env \
&& /app/env/bin/pip3 install paver
ENV PYTHONPATH=/app:/app/plugins/*/

ADD requirements.txt requirements.txt
ADD test_requirements.txt test_requirements.txt
ADD setup.py setup.py
ADD sideboard/_version.py sideboard/_version.py
ADD pavement.py pavement.py

RUN /app/env/bin/paver install_deps
ADD . /app/
RUN --mount=type=cache,target=/root/.cache \
pip install -r requirements.txt

FROM build as test
RUN /app/env/bin/pip install mock pytest
CMD /app/env/bin/python3 -m pytest
ADD test_requirements.txt test_requirements.txt
RUN --mount=type=cache,target=/root/.cache \
pip install -r test_requirements.txt
CMD python -m pytest
ADD . /app/

FROM build as release
CMD /app/env/bin/python3 /app/sideboard/run_server.py
EXPOSE 8282
CMD python /app/sideboard/run_server.py
EXPOSE 80
ADD . /app/
2 changes: 0 additions & 2 deletions MANIFEST.in

This file was deleted.

Empty file removed data/__init__.py
Empty file.
Empty file removed data/paver/__init__.py
Empty file.
89 changes: 0 additions & 89 deletions data/paver/skeleton/__init__.py

This file was deleted.

5 changes: 0 additions & 5 deletions data/paver/skeleton/templates/.gitignore.template

This file was deleted.

2 changes: 0 additions & 2 deletions data/paver/skeleton/templates/MANIFEST.in.template

This file was deleted.

61 changes: 0 additions & 61 deletions data/paver/skeleton/templates/__init__.py.template

This file was deleted.

3 changes: 0 additions & 3 deletions data/paver/skeleton/templates/_version.py.template

This file was deleted.

13 changes: 0 additions & 13 deletions data/paver/skeleton/templates/cli.py.template

This file was deleted.

2 changes: 0 additions & 2 deletions data/paver/skeleton/templates/configspec.ini.template

This file was deleted.

21 changes: 0 additions & 21 deletions data/paver/skeleton/templates/conftest.py.template

This file was deleted.

1 change: 0 additions & 1 deletion data/paver/skeleton/templates/development-defaults.ini

This file was deleted.

44 changes: 0 additions & 44 deletions data/paver/skeleton/templates/fabfile.py.template

This file was deleted.

Loading
Loading