[
https://issues.apache.org/jira/browse/QPIDIT-75?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16263073#comment-16263073
]
Jiri Daněk commented on QPIDIT-75:
----------------------------------
My current Fedora Dockerfile is
{noformat}
#
# Licensed to the Apache Software Foundation (ASF) under one
# or more contributor license agreements. See the NOTICE file
# distributed with this work for additional information
# regarding copyright ownership. The ASF licenses this file
# to you under the Apache License, Version 2.0 (the
# "License"); you may not use this file except in compliance
# with the License. You may obtain a copy of the License at
#
# http://www.apache.org/licenses/LICENSE-2.0
#
# Unless required by applicable law or agreed to in writing,
# software distributed under the License is distributed on an
# "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
# KIND, either express or implied. See the License for the
# specific language governing permissions and limitations
# under the License.
#
# Downloads, compiles, and installs qpid-interop-test and all
# its dependencies. Brokers are not installed. Based on Fedora.
# Build with `docker build -t qpid-interop-test -f Dockerfile .`
# Run with `docker run -it qpid-interop-test bash`
# Assuming the `bridge` networking on Docker (which is the default),
# you can use `ip route a`to figure out your host's IP from inside
# the container and use it to run tests against a broker on your host machine.
FROM library/fedora:27
MAINTAINER Jiri Danek <[email protected]>
RUN dnf install -y \
cyrus-sasl-devel \
cmake \
gcc \
gcc-c++ \
git \
go \
jsoncpp-devel \
libuuid-devel \
maven \
mono-devel \
nodejs \
openssl-devel \
perl-XML-XPath \
python \
python-devel \
swig \
unzip && dnf clean all
#a. Get and build Qpid Proton
#----------------------------
WORKDIR /
RUN git clone https://git-wip-us.apache.org/repos/asf/qpid-proton.git
WORKDIR /qpid-proton
#Build and install C++ components:
RUN mkdir build
WORKDIR /qpid-proton/build
RUN cmake .. -DCMAKE_INSTALL_PREFIX=/usr
RUN make
RUN make install
# Build and install Java components:
WORKDIR /
RUN git clone https://git-wip-us.apache.org/repos/asf/qpid-proton-j.git
WORKDIR /qpid-proton-j
RUN mvn -DskipTests install
#b. Get and install Qpid Python
#------------------------------
WORKDIR /
RUN git clone https://git-wip-us.apache.org/repos/asf/qpid-python.git
WORKDIR /qpid-python
RUN python setup.py install
#c. Get and build Qpid JMS
#-------------------------
WORKDIR /
RUN git clone https://git-wip-us.apache.org/repos/asf/qpid-jms.git
WORKDIR /qpid-jms
RUN mvn -DskipTests install
#d. Get and install Rhea
#-----------------------
WORKDIR /
RUN git clone https://github.com/grs/rhea.git
WORKDIR rhea
RUN npm install debug
RUN npm link
#2. Build qpid-interop-test
#=======================================
#RUN git clone https://git-wip-us.apache.org/repos/asf/qpid-interop-test.git
COPY . /qpid-interop-test
WORKDIR /qpid-interop-test
RUN mkdir build
WORKDIR /qpid-interop-test/build
RUN cmake .. -DCMAKE_INSTALL_PREFIX=../install -DRHEA_DIR=/rhea
-DQPID_PROTON_DIR=/qpid-proton
RUN make
RUN make install
WORKDIR /qpid-interop-test
# do this before `source build/config.sh `
#[root@88af6272b518 build]# export PYTHONPATH=/usr/lib64/proton/bindings/python
{noformat}
Seems to work for the amqp_types_test, except the test run often freezes for
me... haven't really investigated it.
> Install QPIDIT correctly in a Docker image
> ------------------------------------------
>
> Key: QPIDIT-75
> URL: https://issues.apache.org/jira/browse/QPIDIT-75
> Project: Apache QPID Interoperability Test Suite
> Issue Type: Test
> Components: Installation
> Reporter: Jiri Daněk
> Assignee: Jiri Daněk
> Priority: Minor
> Attachments: Dockerfile
>
>
> I checked out QPID-IT and wanted to run it for myself. I decided to use
> Fedora 25 in docker, because I wanted to have a reproducible setup.
> I created a Dockerfile which installs prerequisites and QPID-IT. When I run
> tests, it always freezes after few tests.
> Is there anything wrong about the install?
> Steps to use the Dockerfile
> 1) place the Dockerfile in the top directory of qpid-interop-test
> 2) {{% docker build -t interop .}}
> 3) {{% docker run --rm -it interop bash -c "/artemis200i0/bin/artemis-service
> start; sleep 10; export PYTHONPATH=/usr/lib64/proton/bindings/python/; export
> QIT_INSTALL_PREFIX=/usr; src/python/qpid_interop_test/amqp_types_test.py
> --exclude-shim RheaJs"}}
> {noformat}
> Starting artemis-service
> artemis-service is now running (14)
> WARNING: AMQP DotNetLite shims not installed
> Test Broker: apache-activemq-artemis v.2.0.0-SNAPSHOT on <platform not found>
> test_binary_ProtonCpp->ProtonCpp (__main__.BinaryTestCase) ... ok
> test_binary_ProtonCpp->ProtonPython (__main__.BinaryTestCase) ... ok
> test_binary_ProtonPython->ProtonCpp (__main__.BinaryTestCase) ... ok
> test_binary_ProtonPython->ProtonPython (__main__.BinaryTestCase) ... ok
> test_boolean_ProtonCpp->ProtonCpp (__main__.BooleanTestCase) ...
> {noformat}
> And it stays stuck for quite long time. The output is the same every time I
> run this. I did not wait for long enough to see if it gets unstuck, I admit.
> If I run this with the 1.5.3 broker, meaning in step 3) I do {{% docker run
> --rm -it interop bash -c "/artemis153i0/bin/artemis-service start; sleep 10;
> export PYTHONPATH=/usr/lib64/proton/bindings/python/; export
> QIT_INSTALL_PREFIX=/usr; src/python/qpid_interop_test/amqp_types_test.py
> --exclude-shim RheaJs"}} then the tests seem to succeed, so maybe it is just
> incompatible with Artemis 2.0.0...
--
This message was sent by Atlassian JIRA
(v6.4.14#64029)
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]