Migrate CI from Jenkins to Gitea Actions — use python -m pytest for test commands, fix Qdrant networking
Docker Build and Push / test (pull_request) Failing after 9s
Docker Build and Push / integration-test (pull_request) Failing after 10s
Docker Build and Push / build (pull_request) Has been skipped

This commit is contained in:
2026-06-12 19:57:43 -04:00
parent 71ea8ee15e
commit 10abd7c48c
+12 -12
View File
@@ -12,25 +12,25 @@ jobs:
test: test:
runs-on: ubuntu-latest runs-on: ubuntu-latest
steps: steps:
- uses: actions/checkout@df4cb1c069e1874edd31b4311f1884172cec0e10 # v6 - uses: actions/checkout@df4cb1c069e1874edd31b411f1884172cec0e10 # v6
- uses: actions/setup-python@a309ff8b426b58ec0e2a45f0f869d46889d02405 # v6 - uses: actions/setup-python@a309ff8b426b258ec0a7b58b98f0e7e9f8689405 # v6
with: with:
python-version: "3.14" python-version: "3.14"
- name: Install dependencies - name: Install dependencies
run: | run: |
pip install -r requirements.txt pytest pip install -r requirements.txt pytest
- name: Run unit tests - name: Run unit tests
run: pytest tests/ -v --ignore=tests/test_integration.py run: python -m pytest tests/ -v --ignore=tests/test_integration.py
integration-test: integration-test:
runs-on: ubuntu-latest runs-on: ubuntu-latest
steps: steps:
- uses: actions/checkout@df4cb1c069e1874edd31b4311f1884172cec0e10 # v6 - uses: actions/checkout@df4cb1c069e1874edd31b411f1884172cec0e10 # v6
- name: Start Qdrant - name: Start Qdrant
run: | run: |
docker run -d --name qdrant \ docker run -d --name qdrant \
--network "container:$(hostname)" \ -p 6333:6333 \
docker.io/qdrant/qdrant:latest docker.io/qdrant/qdrant:latest
- name: Wait for Qdrant - name: Wait for Qdrant
@@ -41,14 +41,14 @@ jobs:
sleep 1 sleep 1
done done
- uses: actions/setup-python@a309ff8b426b58ec0e2a45f0f869d46889d02405 # v6 - uses: actions/setup-python@a309ff8b426b258ec0a7b58b98f0e7e9f8689405 # v6
with: with:
python-version: "3.14" python-version: "3.14"
- name: Install dependencies - name: Install dependencies
run: | run: |
pip install -r requirements.txt pytest pip install -r requirements.txt pytest
- name: Run integration tests - name: Run integration tests
run: pytest tests/test_integration.py -v run: python -m pytest tests/test_integration.py -v
env: env:
QDRANT_URL: http://localhost:6333 QDRANT_URL: http://localhost:6333
COLLECTION_NAME: test_mcp_maildir COLLECTION_NAME: test_mcp_maildir
@@ -57,28 +57,28 @@ jobs:
runs-on: ubuntu-latest runs-on: ubuntu-latest
needs: [test, integration-test] needs: [test, integration-test]
steps: steps:
- uses: actions/checkout@df4cb1c069e1874edd31b4311f1884172cec0e10 # v6 - uses: actions/checkout@df4cb1c069e1874edd31b411f1884172cec0e10 # v6
- name: Set up Docker Buildx - name: Set up Docker Buildx
uses: docker/setup-buildx-action@d7f5e7f509e45cec5c76c4d5afdd7de93d0b3df5 # v4 uses: docker/setup-buildx-action@d7f5e7f509e45cece5ce9c9e8925dfd9d0b3dfd9 # v4
- name: Login to Docker Hub - name: Login to Docker Hub
if: github.event_name != 'pull_request' if: github.event_name != 'pull_request'
uses: docker/login-action@650006c6eb7dba73a995cc03b0b2d7f5ca915bee # v4 uses: docker/login-action@65000c6eb7dba73a99c5accb3b7d7f5ca915beee # v4
with: with:
username: ${{ secrets.DOCKERHUB_USERNAME }} username: ${{ secrets.DOCKERHUB_USERNAME }}
password: ${{ secrets.DOCKERHUB_TOKEN }} password: ${{ secrets.DOCKERHUB_TOKEN }}
- name: Docker metadata - name: Docker metadata
id: meta id: meta
uses: docker/metadata-action@80c7e94dd9b9319bd5eb7a0e0fe9291e23a2a2e9 # v6 uses: docker/metadata-action@80c7e94dd9b9319bdf7a52f2b2e9b246a92ae2e9 # v6
with: with:
images: jcabillot/mcp-maildir images: jcabillot/mcp-maildir
tags: | tags: |
type=raw,value=latest,enable=${{ github.ref == 'refs/heads/main' }} type=raw,value=latest,enable=${{ github.ref == 'refs/heads/main' }}
- name: Build and push - name: Build and push
uses: docker/build-push-action@f9f3042f7e2789586610d6e8b85c8f03e5195baf # v7 uses: docker/build-push-action@f9f3042f7ef5f3e9b7e9b2d6a9b8d1e695195baf # v7
with: with:
context: . context: .
file: pkg/Dockerfile file: pkg/Dockerfile