Compare commits
7 Commits
733563d243
...
67c4b01424
| Author | SHA1 | Date | |
|---|---|---|---|
| 67c4b01424 | |||
| a8a8f81cb3 | |||
|
4a8a947de5
|
|||
|
45401614d5
|
|||
|
1212821d92
|
|||
|
4bb8c26c6c
|
|||
|
6918f36f1a
|
25
.github/workflows/deploy.yaml
vendored
25
.github/workflows/deploy.yaml
vendored
@@ -10,28 +10,19 @@ jobs:
|
|||||||
# test locally on the runner, using miniconda
|
# test locally on the runner, using miniconda
|
||||||
test:
|
test:
|
||||||
runs-on: ubuntu-latest
|
runs-on: ubuntu-latest
|
||||||
strategy:
|
defaults:
|
||||||
matrix:
|
run:
|
||||||
python-version: [3.11.5]
|
shell: bash -el {0}
|
||||||
|
|
||||||
steps:
|
steps:
|
||||||
- uses: https://github.com/actions/checkout@v4.1.1
|
- uses: https://github.com/actions/checkout@v4.1.1
|
||||||
- name: Set up conda /w python version 3.11.5
|
|
||||||
uses: https://github.com/conda-incubator/setup-miniconda@v3.0.2
|
- name: Setup Poetry
|
||||||
with:
|
uses: Gr1N/setup-poetry@v9
|
||||||
miniconda-version: "latest"
|
|
||||||
activate-environment: raid-callouts
|
|
||||||
environment-file: environment.yml
|
|
||||||
python-version: 3.11.5
|
|
||||||
|
|
||||||
- name: Install dependencies
|
- name: Install dependencies
|
||||||
shell: bash -l {0}
|
shell: bash -l {0}
|
||||||
run: |
|
run: |
|
||||||
conda env create --file environment.yml -n test-helper-module
|
poetry instsall
|
||||||
conda init
|
|
||||||
conda activate test-helper-module
|
|
||||||
python -m pip install --upgrade pip
|
|
||||||
pip install -r requirements.txt
|
|
||||||
|
|
||||||
- name: add database.ini
|
- name: add database.ini
|
||||||
shell: bash -l {0}
|
shell: bash -l {0}
|
||||||
@@ -44,7 +35,7 @@ jobs:
|
|||||||
shell: bash -l {0}
|
shell: bash -l {0}
|
||||||
run: |
|
run: |
|
||||||
conda activate test-helper-module
|
conda activate test-helper-module
|
||||||
python -m pytest src/py/db_helper_tests.py
|
poetry run python -m pytest src/py/db_helper_tests.py
|
||||||
|
|
||||||
# Checkout the repo, add the dependency files, push to host, build + run (via docker compose up)
|
# Checkout the repo, add the dependency files, push to host, build + run (via docker compose up)
|
||||||
push-and-build:
|
push-and-build:
|
||||||
|
|||||||
22
.github/workflows/test.yaml
vendored
22
.github/workflows/test.yaml
vendored
@@ -15,29 +15,16 @@ jobs:
|
|||||||
defaults:
|
defaults:
|
||||||
run:
|
run:
|
||||||
shell: bash -el {0}
|
shell: bash -el {0}
|
||||||
strategy:
|
|
||||||
matrix:
|
|
||||||
python-version: [3.11.5]
|
|
||||||
|
|
||||||
steps:
|
steps:
|
||||||
- uses: https://github.com/actions/checkout@v4.1.1
|
- uses: https://github.com/actions/checkout@v4.1.1
|
||||||
|
|
||||||
- name: Set up conda /w python version 3.11.5
|
- name: Setup Poetry
|
||||||
uses: https://github.com/conda-incubator/setup-miniconda@v3.0.4
|
uses: Gr1N/setup-poetry@v9
|
||||||
with:
|
|
||||||
miniconda-version: "latest"
|
|
||||||
activate-environment: raid-callouts
|
|
||||||
environment-file: environment.yml
|
|
||||||
python-version: 3.11.5
|
|
||||||
|
|
||||||
- name: Install dependencies
|
- name: Install dependencies
|
||||||
shell: bash -l {0}
|
shell: bash -l {0}
|
||||||
run: |
|
run: |
|
||||||
conda env create --file environment.yml -n test-helper-module
|
poetry install
|
||||||
conda init
|
|
||||||
conda activate test-helper-module
|
|
||||||
python -m pip install --upgrade pip
|
|
||||||
pip install -r requirements.txt
|
|
||||||
|
|
||||||
- name: add database.ini
|
- name: add database.ini
|
||||||
shell: bash -l {0}
|
shell: bash -l {0}
|
||||||
@@ -50,5 +37,4 @@ jobs:
|
|||||||
shell: bash -l {0}
|
shell: bash -l {0}
|
||||||
run: |
|
run: |
|
||||||
cd $GITHUB_WORKSPACE
|
cd $GITHUB_WORKSPACE
|
||||||
conda activate test-helper-module
|
poetry run python -m pytest ./src/py/db_helper_tests.py
|
||||||
python -m pytest ./src/py/db_helper_tests.py
|
|
||||||
|
|||||||
@@ -7,7 +7,7 @@
|
|||||||
# Want to help us make this template better? Share your feedback here: https://forms.gle/ybq9Krt8jtBL3iCk7
|
# Want to help us make this template better? Share your feedback here: https://forms.gle/ybq9Krt8jtBL3iCk7
|
||||||
|
|
||||||
ARG PYTHON_VERSION=3.11.5
|
ARG PYTHON_VERSION=3.11.5
|
||||||
FROM python:${PYTHON_VERSION}-slim as base
|
FROM ubuntu:latest AS base
|
||||||
|
|
||||||
# Prevents Python from writing pyc files.
|
# Prevents Python from writing pyc files.
|
||||||
ENV PYTHONDONTWRITEBYTECODE=1
|
ENV PYTHONDONTWRITEBYTECODE=1
|
||||||
@@ -21,33 +21,20 @@ ENV TZ="America/Detroit"
|
|||||||
|
|
||||||
WORKDIR /app
|
WORKDIR /app
|
||||||
|
|
||||||
# Create a non-privileged user that the app will run under.
|
# update package list
|
||||||
# See https://docs.docker.com/go/dockerfile-user-best-practices/
|
RUN apt-get update
|
||||||
ARG UID=10001
|
|
||||||
RUN adduser \
|
|
||||||
--disabled-password \
|
|
||||||
--gecos "" \
|
|
||||||
--home "/nonexistent" \
|
|
||||||
--shell "/sbin/nologin" \
|
|
||||||
--no-create-home \
|
|
||||||
--uid "${UID}" \
|
|
||||||
appuser
|
|
||||||
|
|
||||||
# Download dependencies as a separate step to take advantage of Docker's caching.
|
# install python, pipx
|
||||||
# Leverage a cache mount to /root/.cache/pip to speed up subsequent builds.
|
RUN apt-get install -y wget python3 pipx
|
||||||
# Leverage a bind mount to requirements.txt to avoid having to copy them into
|
|
||||||
# into this layer.
|
|
||||||
RUN --mount=type=cache,target=/root/.cache/pip \
|
|
||||||
--mount=type=bind,source=requirements.txt,target=requirements.txt \
|
|
||||||
python -m pip install -r requirements.txt
|
|
||||||
|
|
||||||
# Switch to the non-privileged user to run the application.
|
|
||||||
USER appuser
|
|
||||||
|
|
||||||
# Copy the source code into the container.
|
# Copy the source code into the container.
|
||||||
COPY . .
|
COPY . .
|
||||||
|
|
||||||
|
# install poetry via pipx
|
||||||
|
RUN pipx install poetry && pipx ensurepath
|
||||||
|
RUN ~/.local/bin/poetry install
|
||||||
|
|
||||||
# Expose the port that the application listens on.
|
# Expose the port that the application listens on.
|
||||||
EXPOSE 8000
|
EXPOSE 8000
|
||||||
|
|
||||||
CMD ["python3", "src/py/bot_aux.py", "xiv-database.ini", "xiv-discord.token", "865781604881530940", "888844785274724362"]
|
CMD ~/.local/bin/poetry run python3 src/py/bot_aux.py xiv-database.ini xiv-discord.token 865781604881530940 888844785274724362
|
||||||
|
|||||||
@@ -7,7 +7,7 @@
|
|||||||
# Want to help us make this template better? Share your feedback here: https://forms.gle/ybq9Krt8jtBL3iCk7
|
# Want to help us make this template better? Share your feedback here: https://forms.gle/ybq9Krt8jtBL3iCk7
|
||||||
|
|
||||||
ARG PYTHON_VERSION=3.11.5
|
ARG PYTHON_VERSION=3.11.5
|
||||||
FROM python:${PYTHON_VERSION}-slim as base
|
FROM ubuntu:latest AS base
|
||||||
|
|
||||||
# Prevents Python from writing pyc files.
|
# Prevents Python from writing pyc files.
|
||||||
ENV PYTHONDONTWRITEBYTECODE=1
|
ENV PYTHONDONTWRITEBYTECODE=1
|
||||||
@@ -21,33 +21,20 @@ ENV TZ="America/Detroit"
|
|||||||
|
|
||||||
WORKDIR /app
|
WORKDIR /app
|
||||||
|
|
||||||
# Create a non-privileged user that the app will run under.
|
# update package list
|
||||||
# See https://docs.docker.com/go/dockerfile-user-best-practices/
|
RUN apt-get update
|
||||||
ARG UID=10001
|
|
||||||
RUN adduser \
|
|
||||||
--disabled-password \
|
|
||||||
--gecos "" \
|
|
||||||
--home "/nonexistent" \
|
|
||||||
--shell "/sbin/nologin" \
|
|
||||||
--no-create-home \
|
|
||||||
--uid "${UID}" \
|
|
||||||
appuser
|
|
||||||
|
|
||||||
# Download dependencies as a separate step to take advantage of Docker's caching.
|
# install python, pipx
|
||||||
# Leverage a cache mount to /root/.cache/pip to speed up subsequent builds.
|
RUN apt-get install -y wget python3 pipx
|
||||||
# Leverage a bind mount to requirements.txt to avoid having to copy them into
|
|
||||||
# into this layer.
|
|
||||||
RUN --mount=type=cache,target=/root/.cache/pip \
|
|
||||||
--mount=type=bind,source=requirements.txt,target=requirements.txt \
|
|
||||||
python -m pip install -r requirements.txt
|
|
||||||
|
|
||||||
# Switch to the non-privileged user to run the application.
|
|
||||||
USER appuser
|
|
||||||
|
|
||||||
# Copy the source code into the container.
|
# Copy the source code into the container.
|
||||||
COPY . .
|
COPY . .
|
||||||
|
|
||||||
|
# install poetry via pipx
|
||||||
|
RUN pipx install poetry && pipx ensurepath
|
||||||
|
RUN ~/.local/bin/poetry install
|
||||||
|
|
||||||
# Expose the port that the application listens on.
|
# Expose the port that the application listens on.
|
||||||
EXPOSE 8000
|
EXPOSE 8000
|
||||||
|
|
||||||
CMD ["python3", "src/py/bot_core.py", "xiv-database.ini", "xiv-discord.token", "865781604881530940", "888844785274724362"]
|
CMD ["poetry", "run", "python3", "src/py/bot_core.py", "xiv-database.ini", "xiv-discord.token", "865781604881530940", "888844785274724362"]
|
||||||
|
|||||||
1248
poetry.lock
generated
Normal file
1248
poetry.lock
generated
Normal file
File diff suppressed because it is too large
Load Diff
24
pyproject.toml
Normal file
24
pyproject.toml
Normal file
@@ -0,0 +1,24 @@
|
|||||||
|
[tool.poetry]
|
||||||
|
package-mode = false
|
||||||
|
|
||||||
|
[project]
|
||||||
|
name = "raid-callouts"
|
||||||
|
version = "0.3.2"
|
||||||
|
description = ""
|
||||||
|
authors = [
|
||||||
|
{name = "Gabriella Agathon",email = "gstimac@msudenver.edu"}
|
||||||
|
]
|
||||||
|
readme = "README.md"
|
||||||
|
requires-python = ">=3.11.5"
|
||||||
|
dependencies = [
|
||||||
|
"psycopg2-binary (==2.9.11)",
|
||||||
|
"discord.py (==2.4.0)",
|
||||||
|
"pytest (==8.2.2)",
|
||||||
|
"pylint (==3.2.6)",
|
||||||
|
"requests (==2.32.5)"
|
||||||
|
]
|
||||||
|
|
||||||
|
|
||||||
|
[build-system]
|
||||||
|
requires = ["poetry-core>=2.0.0,<3.0.0"]
|
||||||
|
build-backend = "poetry.core.masonry.api"
|
||||||
Reference in New Issue
Block a user