Move to gunicorn
#735
Merged
Move to gunicorn
#735
manage-repositories-app / build-container
succeeded
Apr 26, 2025 in 0s
Build container
Details
Resolved 9 packages in 703ms
Prepared 9 packages in 613ms
Installed 9 packages in 5ms
Bytecode compiled 216 files in 79ms
+ cfgv==3.4.0
+ distlib==0.3.9
+ filelock==3.18.0
+ identify==2.6.10
+ nodeenv==1.9.1
+ platformdirs==4.3.7
+ pre-commit==4.2.0
+ pyyaml==6.0.2
+ virtualenv==20.30.0
Installed 1 executable: pre-commit
Resolved 45 packages in 1.32s
Prepared 41 packages in 757ms
Installed 45 packages in 22ms
Bytecode compiled 1162 files in 127ms
+ anyio==4.9.0
+ build==1.2.2.post1
+ cachecontrol==0.14.2
+ certifi==2025.4.26
+ cffi==1.17.1
+ charset-normalizer==3.4.1
+ cleo==2.1.0
+ crashtest==0.4.1
+ cryptography==44.0.2
+ distlib==0.3.9
+ dulwich==0.22.8
+ fastjsonschema==2.21.1
+ filelock==3.18.0
+ findpython==0.6.3
+ h11==0.16.0
+ httpcore==1.0.9
+ httpx==0.28.1
+ idna==3.10
+ installer==0.7.0
+ jaraco-classes==3.4.0
+ jaraco-context==6.0.1
+ jaraco-functools==4.1.0
+ jeepney==0.9.0
+ keyring==25.6.0
+ more-itertools==10.7.0
+ msgpack==1.1.0
+ packaging==25.0
+ pbs-installer==2025.4.9
+ pkginfo==1.12.1.2
+ platformdirs==4.3.7
+ poetry==2.1.2
+ poetry-core==2.1.2
+ pycparser==2.22
+ pyproject-hooks==1.2.0
+ rapidfuzz==3.13.0
+ requests==2.32.3
+ requests-toolbelt==1.0.0
+ secretstorage==3.3.3
+ shellingham==1.5.4
+ sniffio==1.3.1
+ tomlkit==0.13.2
+ trove-classifiers==2025.4.11.15
+ urllib3==2.4.0
+ virtualenv==20.30.0
+ zstandard==0.23.0
Installed 1 executable: poetry
+ curl https://mirror.openshift.com/pub/openshift-v4/clients/rosa/latest/rosa-linux.tar.gz --output /home/podman/.local/bin/rosa-linux.tar.gz
% Total % Received % Xferd Average Speed Time Time Time Current
Dload Upload Total Spent Left Speed
0 0 0 0 0 0 0 0 --:--:-- --:--:-- --:--:-- 0
0 34.2M 0 171k 0 0 198k 0 0:02:56 --:--:-- 0:02:56 198k
75 34.2M 75 25.7M 0 0 13.6M 0 0:00:02 0:00:01 0:00:01 13.6M
100 34.2M 100 34.2M 0 0 16.2M 0 0:00:02 0:00:02 --:--:-- 16.2M
+ tar xvf /home/podman/.local/bin/rosa-linux.tar.gz
+ mv rosa /home/podman/.local/bin/rosa
+ chmod +x /home/podman/.local/bin/rosa
+ rm -rf /home/podman/.local/bin/rosa-linux.tar.gz
+ curl -L https://github.com/regclient/regclient/releases/latest/download/regctl-linux-amd64
% Total % Received % Xferd Average Speed Time Time Time Current
Dload Upload Total Spent Left Speed
0 0 0 0 0 0 0 0 --:--:-- --:--:-- --:--:-- 0
0 0 0 0 0 0 0 0 --:--:-- --:--:-- --:--:-- 0
0 0 0 0 0 0 0 0 --:--:-- --:--:-- --:--:-- 0
0 11.0M 0 0 0 0 0 0 --:--:-- --:--:-- --:--:-- 0
100 11.0M 100 11.0M 0 0 9384k 0 0:00:01 0:00:01 --:--:-- 20.6M
+ chmod +x /home/podman/.local/bin/regctl
Using CPython 3.13.1 interpreter at: /usr/bin/python3.13
Creating virtual environment at: .venv
Resolved 80 packages in 1.20s
Prepared 75 packages in 1.16s
Installed 75 packages in 39ms
Bytecode compiled 2513 files in 252ms
+ annotated-types==0.7.0
+ anyio==4.9.0
+ asttokens==3.0.0
+ bcrypt==4.3.0
+ build==1.2.2.post1
+ certifi==2025.1.31
+ cffi==1.17.1
+ charset-normalizer==3.4.1
+ click==8.1.8
+ colorama==0.4.6
+ colorlog==6.9.0
+ columnar==1.4.1
+ coverage==7.8.0
+ cryptography==44.0.2
+ decorator==5.2.1
+ deprecated==1.2.18
+ executing==2.2.0
+ fastapi==0.115.12
+ github-webhook-server==2.0.11 (from file:///home/podman/github-webhook-server)
+ gunicorn==23.0.0
+ h11==0.14.0
+ idna==3.10
+ iniconfig==2.1.0
+ ipdb==0.13.13
+ ipython==9.1.0
+ ipython-pygments-lexers==1.1.1
+ jedi==0.19.2
+ markdown-it-py==3.0.0
+ matplotlib-inline==0.1.7
+ mdurl==0.1.2
+ netaddr==1.3.0
+ packaging==25.0
+ paramiko==3.5.1
+ parso==0.8.4
+ pbr==6.1.1
+ pexpect==4.9.0
+ pluggy==1.5.0
+ prompt-toolkit==3.0.51
+ ptyprocess==0.7.0
+ pure-eval==0.2.3
+ pycparser==2.22
+ pydantic==2.11.3
+ pydantic-core==2.33.1
+ pygithub==2.6.1
+ pygments==2.19.1
+ pyhelper-utils==1.0.13
+ pyjwt==2.10.1
+ pynacl==1.5.0
+ pyproject-hooks==1.2.0
+ pytest==8.3.5
+ pytest-cov==6.1.1
+ pytest-mock==3.14.0
+ python-rrmngmnt==0.1.32
+ python-simple-logger==2.0.9
+ pyyaml==6.0.2
+ requests==2.32.3
+ rich==13.9.4
+ ruff==0.11.6
+ setuptools==79.0.0
+ shortuuid==1.0.13
+ six==1.17.0
+ sniffio==1.3.1
+ stack-data==0.6.3
+ starlette==0.46.2
+ string-color==1.2.3
+ timeout-sampler==1.0.15
+ toolz==1.0.0
+ traitlets==5.14.3
+ typing-extensions==4.13.2
+ typing-inspection==0.4.0
+ urllib3==2.4.0
+ uvicorn==0.34.2
+ uvicorn-worker==0.3.0
+ wcwidth==0.2.13
+ wrapt==1.17.2
STEP 1/26: FROM quay.io/podman/stable:v5
STEP 2/26: EXPOSE 5000
--> Using cache a0b4e4da299a8f0316eca53ffd80e9684ed200abcc29459458fe02015ab7a3a1
--> a0b4e4da299a
STEP 3/26: ENV USERNAME="podman"
--> Using cache 4852760c2574a2d33b6a8824604bc79f26a2f8f7430dff08e02d12e673211a07
--> 4852760c2574
STEP 4/26: ENV HOME_DIR="/home/$USERNAME"
--> Using cache d1c92891522340a886dd0d3f70872b2b789cd3a3bce1031b063780febe266e7c
--> d1c928915223
STEP 5/26: ENV BIN_DIR="$HOME_DIR/.local/bin"
--> Using cache 8ca9937c6f990d56b4741d3efda201102cf3cf816996a5c7709b7c695a6462b2
--> 8ca9937c6f99
STEP 6/26: ENV PATH="$PATH:$BIN_DIR"
--> Using cache 46ce3b449310cdfa24569e0852dfdf0cb73f17ecf13d5c3e5e7ba6f7b1bb902c
--> 46ce3b449310
STEP 7/26: ENV DATA_DIR="$HOME_DIR/data"
--> Using cache b88bec591488500b1d3602990bf17642dc357acb5162cbae22f7ed738f1842dd
--> b88bec591488
STEP 8/26: ENV APP_DIR="$HOME_DIR/github-webhook-server"
--> Using cache 35cd7e80bf1af4d6018d1acfa7c35a5ff13a8757cabdf65eeaf3cd4ca4aae709
--> 35cd7e80bf1a
STEP 9/26: RUN dnf -y install dnf-plugins-core && dnf -y update && dnf -y install git hub unzip gcc python3-devel python3.10-devel python3.11-devel python3.12-devel python3.13-devel clang cargo libcurl-devel libxml2-devel && dnf clean all && rm -rf /var/cache /var/log/dnf* /var/log/yum.*
--> Using cache 51c9be329935a1457d54f7eed3bdc3db720b28790ff03b5a3aa7aa2667230023
--> 51c9be329935
STEP 10/26: RUN mkdir -p $BIN_DIR && mkdir -p $APP_DIR && mkdir -p $DATA_DIR && mkdir -p $DATA_DIR/logs
--> Using cache 5f783087a07a64ca51af74cc6fbd1fc957c50c5a9fc431fd2f63d9eb6d8ed732
--> 5f783087a07a
STEP 11/26: COPY gunicorn.conf.py pyproject.toml uv.lock README.md $APP_DIR/
--> a7d5d5c5cfe2
STEP 12/26: COPY webhook_server $APP_DIR/webhook_server/
--> f3665a77eac3
STEP 13/26: RUN usermod --add-subuids 100000-165535 --add-subgids 100000-165535 $USERNAME && chown -R $USERNAME:$USERNAME $HOME_DIR
--> 0cc9fc185c1d
STEP 14/26: USER $USERNAME
--> 3f1f8d680ce4
STEP 15/26: WORKDIR $HOME_DIR
--> 7146c9f450d6
STEP 16/26: ENV UV_PYTHON=python3.13
--> bb476f00fe7c
STEP 17/26: ENV UV_COMPILE_BYTECODE=1
--> 4859fc56e4c4
STEP 18/26: ENV UV_NO_SYNC=1
--> e27eaa108881
STEP 19/26: ENV UV_CACHE_DIR=${APP_DIR}/.cache
--> 08de32053f49
STEP 20/26: COPY --from=ghcr.io/astral-sh/uv:latest /uv /uvx ${BIN_DIR}/
--> f34a83297d95
STEP 21/26: RUN uv tool install pre-commit && uv tool install poetry
--> 4a909acc067d
STEP 22/26: RUN set -x && curl https://mirror.openshift.com/pub/openshift-v4/clients/rosa/latest/rosa-linux.tar.gz --output $BIN_DIR/rosa-linux.tar.gz && tar xvf $BIN_DIR/rosa-linux.tar.gz && mv rosa $BIN_DIR/rosa && chmod +x $BIN_DIR/rosa && rm -rf $BIN_DIR/rosa-linux.tar.gz && curl -L https://github.com/regclient/regclient/releases/latest/download/regctl-linux-amd64 >$BIN_DIR/regctl && chmod +x $BIN_DIR/regctl
rosa
--> e04b9a5c006f
STEP 23/26: WORKDIR $APP_DIR
--> 7b6d35a4da7a
STEP 24/26: RUN uv sync
--> c26c80561ccd
STEP 25/26: HEALTHCHECK CMD curl --fail http://127.0.0.1:5000/webhook_server/healthcheck || exit 1
--> 42048913c202
STEP 26/26: ENTRYPOINT ["uv", "run", "gunicorn", "webhook_server.app:FASTAPI_APP", "-c", "./gunicorn.conf.py"]
COMMIT ghcr.io/myk-org/github-webhook-server:pr-735
--> 30e027e7b677
Successfully tagged ghcr.io/myk-org/github-webhook-server:pr-735
30e027e7b677ce0ebddec4d63847138fa45d4ce3317a903ee7ae2c9cbabfa88c
Loading