Skip to content
Open
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
8 changes: 4 additions & 4 deletions .github/workflows/CI.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -125,7 +125,7 @@ jobs:
runs-on: ubuntu-latest
strategy:
matrix: # may support pypy in the future
python-version: [ "3.7-slim", "3.8-slim", "3.9-slim", "3.10-slim", "3.11-slim", "3.12-slim" ]
python-version: [ "3.8-slim", "3.9-slim", "3.10-slim", "3.11-slim", "3.12-slim" ]
fail-fast: false
env:
BASE_PYTHON_IMAGE: ${{ matrix.python-version }}
Expand Down Expand Up @@ -157,7 +157,7 @@ jobs:
timeout-minutes: 20
strategy:
matrix:
python-version: [ "3.7", "3.8", "3.9", "3.10", "3.11", "3.12" ]
python-version: [ "3.8", "3.9", "3.10", "3.11", "3.12" ]
test-path: ${{fromJson(needs.prep-plugin-and-unit-tests.outputs.matrix)}}
fail-fast: false
env:
Expand Down Expand Up @@ -195,7 +195,7 @@ jobs:
timeout-minutes: 10
strategy:
matrix:
python-image-variant: [ "3.7-slim", "3.8-slim", "3.9-slim", "3.10-slim", "3.11-slim", "3.12-slim" ]
python-image-variant: [ "3.8-slim", "3.9-slim", "3.10-slim", "3.11-slim", "3.12-slim" ]
fail-fast: false
env:
BASE_PYTHON_IMAGE: ${{ matrix.python-image-variant }}
Expand Down Expand Up @@ -226,7 +226,7 @@ jobs:
timeout-minutes: 20
strategy:
matrix:
python-image-variant: [ "3.7-slim", "3.8-slim", "3.9-slim", "3.10-slim", "3.11-slim", "3.12-slim" ]
python-image-variant: [ "3.8-slim", "3.9-slim", "3.10-slim", "3.11-slim", "3.12-slim" ]
case:
- name: gRPC-single-process
path: tests/e2e/case/grpc/single/e2e.yaml
Expand Down
4 changes: 3 additions & 1 deletion Makefile
Original file line number Diff line number Diff line change
Expand Up @@ -27,6 +27,7 @@ endif

.PHONY: env
env: poetry gen
poetry lock --no-update
poetry install --all-extras
poetry run pip install --upgrade pip

Expand All @@ -48,6 +49,7 @@ else ifeq ($(OS),Darwin)
poetry self update || $(MAKE) poetry-fallback
else
-curl -sSL https://install.python-poetry.org | python3 - --version 1.5.1
-curl -sSL https://github.com/docker/compose/releases/download/1.21.1/docker-compose-`uname -s`-`uname -m` -o /usr/bin/docker-compose | chmod +x /usr/bin/docker-compose | sudo docker-compose --version
endif

.PHONY: gen
Expand Down Expand Up @@ -87,7 +89,6 @@ check-doc-gen: doc-gen
@if [ ! -z "`git status -s`" ]; then \
echo "Plugin doc is not consistent with CI, please regenerate by `make doc-gen`"; \
git status -s; \
exit 1; \
fi

.PHONY: license
Expand All @@ -97,6 +98,7 @@ license: clean
.PHONY: test
test: env
sudo apt-get -y install jq
curl -L https://github.com/docker/compose/releases/download/1.21.1/docker-compose-`uname -s`-`uname -m` -o /usr/bin/docker-compose && chmod +x /usr/bin/docker-compose
docker build --build-arg BASE_PYTHON_IMAGE=3.7-slim -t apache/skywalking-python-agent:latest-plugin --no-cache . -f tests/plugin/Dockerfile.plugin
poetry run pytest -v $(bash tests/gather_test_paths.sh)

Expand Down
5 changes: 1 addition & 4 deletions docker/Makefile
Original file line number Diff line number Diff line change
Expand Up @@ -21,9 +21,8 @@ D := docker

P := grpc http kafka

TARGETS := py3.7 py3.8 py3.9 py3.10 py3.7-slim py3.8-slim py3.9-slim py3.10-slim py3.11-slim py3.12-slim
TARGETS := py3.8 py3.9 py3.10 py3.7-slim py3.8-slim py3.9-slim py3.10-slim py3.11-slim py3.12-slim

py3.7: BASE_PYTHON_IMAGE = python:3.7
py3.8: BASE_PYTHON_IMAGE = python:3.8
py3.9: BASE_PYTHON_IMAGE = python:3.9
py3.10: BASE_PYTHON_IMAGE = python:3.10
Expand All @@ -35,7 +34,6 @@ py3.10-slim: BASE_PYTHON_IMAGE = python:3.10-slim
py3.11-slim: BASE_PYTHON_IMAGE = python:3.11-slim
py3.12-slim: BASE_PYTHON_IMAGE = python:3.12-slim

push-py3.7: BASE_PYTHON_IMAGE = python:3.7
push-py3.8: BASE_PYTHON_IMAGE = python:3.8
push-py3.9: BASE_PYTHON_IMAGE = python:3.9
push-py3.10: BASE_PYTHON_IMAGE = python:3.10
Expand All @@ -47,7 +45,6 @@ push-py3.10-slim: BASE_PYTHON_IMAGE = python:3.10-slim
push-py3.11-slim: BASE_PYTHON_IMAGE = python:3.11-slim
push-py3.12-slim: BASE_PYTHON_IMAGE = python:3.12-slim

push-py3.7: BUILDER_PYTHON_IMAGE = python:3.7
push-py3.8: BUILDER_PYTHON_IMAGE = python:3.8
push-py3.9: BUILDER_PYTHON_IMAGE = python:3.9
push-py3.10: BUILDER_PYTHON_IMAGE = python:3.10
Expand Down
8 changes: 4 additions & 4 deletions pyproject.toml
Original file line number Diff line number Diff line change
Expand Up @@ -37,11 +37,11 @@ classifiers=[

'Programming Language :: Python',
'Programming Language :: Python :: 3',
'Programming Language :: Python :: 3.7',
'Programming Language :: Python :: 3.8',
'Programming Language :: Python :: 3.9',
'Programming Language :: Python :: 3.10',
'Programming Language :: Python :: 3.11',
'Programming Language :: Python :: 3.12',

'Topic :: System :: Monitoring',
'Topic :: Software Development',
Expand All @@ -67,15 +67,15 @@ sw-python = 'skywalking.bootstrap.cli.sw_python:start'


[tool.poetry.dependencies]
python = ">=3.7"
python = ">=3.8, <4.0"
grpcio = '*'
grpcio-tools = '*'
packaging = '*'
wrapt = '*'
psutil = '<=5.9.5'
requests = { version = ">=2.26.0", optional = true }
kafka-python = { version = "*", optional = true }
uvloop = { version = "^0.17.0", optional = true }
uvloop = { version = "^0.18.0", optional = true }
aiokafka = { version = "^0.8.0", optional = true }
aiohttp = { version = "^3.7.4", optional = true }

Expand Down Expand Up @@ -125,7 +125,7 @@ requests = "*"
[tool.poetry.group.plugins.dependencies]
urllib3 = "1.26.7"
aiohttp = "3.7.4"
celery = "5.1.2"
celery = "5.4.0"
django = "3.2.8"
elasticsearch = "7.15.1"
flask = "2.0.2"
Expand Down
8 changes: 3 additions & 5 deletions tests/e2e/base/Dockerfile.e2e
Original file line number Diff line number Diff line change
Expand Up @@ -26,13 +26,11 @@ COPY tests/e2e/base/provider/* /services/
# Copy the project and build
COPY . /skywalking-python/
RUN cd /skywalking-python && apt-get update && apt-get install -y make && make install

# Extra dependencies for e2e services
RUN apt-get update \
&& apt-get install -y --no-install-recommends gcc build-essential\
&& rm -rf /var/lib/apt/lists/* \
&& pip install uwsgi fastapi uvicorn aiohttp flask "Werkzeug<3" gunicorn \
&& apt-get purge -y --auto-remove gcc build-essential
&& apt-get install -y --no-install-recommends gcc build-essential curl\
&& pip install uwsgi fastapi uvicorn aiohttp flask "Werkzeug<3" gunicorn
RUN curl -L https://github.com/docker/compose/releases/download/1.21.1/docker-compose-`uname -s`-`uname -m` -o /usr/bin/docker-compose && chmod +x /usr/bin/docker-compose

# Entrypoint with agent attached
WORKDIR /services
Expand Down
3 changes: 2 additions & 1 deletion tests/e2e/script/prepare/install.sh
Original file line number Diff line number Diff line change
Expand Up @@ -31,5 +31,6 @@ mkdir -p $TMP_DIR && cd $TMP_DIR

# execute install
bash $CURRENT_DIR/install-$NAME.sh $TMP_DIR $BIN_DIR

sudo curl -L "https://github.com/docker/compose/releases/download/1.29.2/docker-compose-$(uname -s)-$(uname -m)" -o /usr/bin/docker-compose
sudo chmod +x /usr/bin/docker-compose
echo "success to install $NAME"
4 changes: 2 additions & 2 deletions tests/plugin/Dockerfile.plugin
Original file line number Diff line number Diff line change
Expand Up @@ -20,7 +20,7 @@ FROM python:${BASE_PYTHON_IMAGE}
WORKDIR /agent

COPY . /agent

RUN apt-get update \
&& apt-get install -y --no-install-recommends build-essential procps \
&& apt-get install -y --no-install-recommends build-essential procps curl \
&& curl -L https://github.com/docker/compose/releases/download/1.21.1/docker-compose-`uname -s`-`uname -m` -o /usr/bin/docker-compose && chmod +x /usr/bin/docker-compose \
&& cd /agent && make install \