Skip to content

Commit 2e104f4

Browse files
authored
[chore][CI] Remove or justify remaining qemu usages (#6081)
* Remove or justify remaining qemu usages * oracledb not supported on ARM * update chmod of docker-entrypoint.sh * Remove chmod from image since not present on latest * Rely on COPY instead of mkdir since later not present on image * Oracle image used in tests is not available on ARM * mcr.microsoft.com/mssql-tools doesn't have arm64 image * webcenter/activemq doesn't have arm64 image * make fmt * webcenter/activemq doesn't have arm64 image * Undo test skipping * Restore qemy for integration-test-docker on arm64 * Undo one left test skipping * Correct the platform for integration tests * Revert "Correct the platform for integration tests" This reverts commit 87f96d3. * Correct the platform for integration tests * Keep integration-test-docker as originally * Identify images that don't support arm64
1 parent 9a6afbc commit 2e104f4

File tree

9 files changed

+14
-15
lines changed

9 files changed

+14
-15
lines changed

.github/workflows/auto-instrumentation.yml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -168,7 +168,7 @@ jobs:
168168
python3 -u -m pytest -s --verbose -k "$distro and ${{ matrix.ARCH }} and ($testcase)" \
169169
packaging/tests/instrumentation/instrumentation_test.py
170170
171-
# qemu, networking, running systemd in containers, etc., can be flaky
171+
# networking, running systemd in containers, etc., can be flaky
172172
- name: Re-run failed tests
173173
if: ${{ steps.pytest.outcome == 'failure' }}
174174
run: |

.github/workflows/installer-script-test.yml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -98,7 +98,7 @@ jobs:
9898
python3 -u -m pytest -s --verbose -k "$tests" \
9999
packaging/tests/installer_test.py
100100
101-
# qemu, networking, running systemd in containers, etc., can be flaky
101+
# networking, running systemd in containers, etc., can be flaky
102102
- name: Re-run failed tests
103103
if: ${{ steps.pytest.outcome == 'failure' }}
104104
run: |

.github/workflows/integration-test.yml

Lines changed: 7 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -102,6 +102,7 @@ jobs:
102102
pattern: otelcol-*
103103
merge-multiple: true
104104
path: ./bin
105+
# Building multiarch container images requires qemu
105106
- uses: docker/setup-qemu-action@v3
106107
with:
107108
platforms: arm64,ppc64le
@@ -208,6 +209,10 @@ jobs:
208209
with:
209210
name: docker-otelcol-${{ matrix.ARCH }}
210211
path: ./docker-otelcol/${{ matrix.ARCH }}
212+
# Not all images used in the docker-compose have arm64 support, for those it is necessary to use qemu
213+
# Here is the list of "services" (see above) that don't support arm64:
214+
# On profile integration: oracle
215+
# On profile smartagent: activemq, and httpd
211216
- uses: docker/setup-qemu-action@v3
212217
if: ${{ matrix.ARCH != 'amd64' }}
213218
with:
@@ -342,7 +347,7 @@ jobs:
342347
for mongodb_version in "4.0" "4.4" "5.0"; do
343348
includes="${includes},{\"SERVICE\": \"${service}\", \"ARCH\": \"${arch}\", \"MONGODB_VERSION\": \"${mongodb_version}\"}"
344349
done
345-
elif [[ "$service" != "jmx/cassandra" || "arm64" != "$arch" ]]; then
350+
elif [[ ("$service" != "jmx/cassandra" && "$service" != "oracledb") || "arm64" != "$arch" ]]; then
346351
includes="${includes},{\"SERVICE\": \"${service}\", \"ARCH\": \"${arch}\"}"
347352
fi
348353
done
@@ -353,7 +358,7 @@ jobs:
353358
354359
integration-test-discovery:
355360
name: integration-test-discovery
356-
runs-on: ubuntu-24.04
361+
runs-on: ubuntu-24.04${{ matrix.ARCH == 'arm64' && '-arm' || '' }}
357362
needs: [ "docker-otelcol", "otelcol", "integration-test-discovery-matrix" ]
358363
strategy:
359364
matrix: ${{ fromJSON(needs.integration-test-discovery-matrix.outputs.matrix) }}
@@ -377,11 +382,6 @@ jobs:
377382
with:
378383
name: docker-otelcol-${{ matrix.ARCH }}
379384
path: ./docker-otelcol/${{ matrix.ARCH }}
380-
- uses: docker/setup-qemu-action@v3
381-
if: ${{ matrix.ARCH != 'amd64' }}
382-
with:
383-
platforms: ${{ matrix.ARCH }}
384-
image: tonistiigi/binfmt:qemu-v7.0.0
385385
- run: docker load -i ./docker-otelcol/${{ matrix.ARCH }}/image.tar
386386
- run: ln -sf otelcol_linux_${{ matrix.ARCH }} ./bin/otelcol
387387
- run: chmod a+x ./bin/*

.github/workflows/linux-package-test.yml

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -219,7 +219,7 @@ jobs:
219219
-k "$distro and ${{ matrix.ARCH }}" \
220220
packaging/tests/package_test.py
221221
222-
# qemu, networking, running systemd in containers, etc., can be flaky
222+
# networking, running systemd in containers, etc., can be flaky
223223
- name: Re-run failed tests
224224
if: ${{ steps.pytest.outcome == 'failure' }}
225225
run: |
@@ -260,6 +260,7 @@ jobs:
260260
go-version: ${{ env.GO_VERSION }}
261261
cache-dependency-path: '**/go.sum'
262262

263+
# Building multiarch container images requires qemu
263264
- name: Set up QEMU
264265
uses: docker/setup-qemu-action@v3
265266
with:
@@ -327,6 +328,7 @@ jobs:
327328
}
328329
}
329330
331+
# There are no GH runners for ppc64le, so use qemu
330332
- name: Set up QEMU
331333
if: ${{ matrix.ARCH == 'ppc64le' }}
332334
uses: docker/setup-qemu-action@v3

.github/workflows/puppet-test.yml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -124,7 +124,7 @@ jobs:
124124
python3 -u -m pytest -s --verbose -k "$tests" \
125125
packaging/tests/deployments/puppet/puppet_test.py
126126
127-
# qemu, networking, running systemd in containers, etc., can be flaky
127+
# networking, running systemd in containers, etc., can be flaky
128128
- name: Re-run failed tests
129129
if: ${{ steps.pytest.outcome == 'failure' }}
130130
env:

.github/workflows/salt-test.yml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -103,7 +103,7 @@ jobs:
103103
python3 -u -m pytest -s --verbose -k "$distro and ${{ matrix.CONFIG }}" \
104104
packaging/tests/deployments/salt/salt_test.py
105105
106-
# qemu, networking, running systemd in containers, etc., can be flaky
106+
# networking, running systemd in containers, etc., can be flaky
107107
- name: Re-run failed tests
108108
if: ${{ steps.pytest.outcome == 'failure' }}
109109
run: |

docker/activemq/Dockerfile

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -7,7 +7,6 @@ ENV ACTIVEMQ_STATIC_TOPICS=testtopic
77
ENV ACTIVEMQ_STATIC_QUEUES=testqueue
88

99
COPY docker-entrypoint.sh /
10-
RUN chmod a+x /docker-entrypoint.sh
1110

1211
ENTRYPOINT ["/docker-entrypoint.sh"]
1312
CMD ["activemq"]

docker/activemq/docker-entrypoint.sh

100644100755
File mode changed.

docker/oracle/Dockerfile

Lines changed: 0 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -2,8 +2,6 @@ FROM gvenzl/oracle-xe:21-slim-faststart
22

33
ENV ORACLE_PASSWORD=mysecurepassword
44

5-
RUN mkdir -p /container-entrypoint-initdb.d
6-
75
COPY initOracleDB.sql /container-entrypoint-initdb.d/startup.sql
86

97
HEALTHCHECK CMD "$ORACLE_BASE/healthcheck.sh"

0 commit comments

Comments
 (0)