You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@pulsar.apache.org by mm...@apache.org on 2019/01/09 15:03:59 UTC
[pulsar] branch master updated: Install python3.7 packages (#3325)
This is an automated email from the ASF dual-hosted git repository.
mmerli pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/pulsar.git
The following commit(s) were added to refs/heads/master by this push:
new 1013c75 Install python3.7 packages (#3325)
1013c75 is described below
commit 1013c750dbfd3773342c71a779796219536b022d
Author: Ali Ahmed <al...@gmail.com>
AuthorDate: Wed Jan 9 07:03:54 2019 -0800
Install python3.7 packages (#3325)
Defautlt is still existing python2.7 installation
Update scripts to install both pulsar-client
packages for 2.7 and 3.7
---
docker/pulsar-standalone/Dockerfile | 2 +-
docker/pulsar/Dockerfile | 10 +++++++---
docker/pulsar/pom.xml | 18 +++++++++++++++++-
...ll-pulsar-client.sh => install-pulsar-client-27.sh} | 2 +-
...ll-pulsar-client.sh => install-pulsar-client-37.sh} | 4 ++--
.../apache/pulsar/functions/runtime/RuntimeUtils.java | 8 ++++----
6 files changed, 32 insertions(+), 12 deletions(-)
diff --git a/docker/pulsar-standalone/Dockerfile b/docker/pulsar-standalone/Dockerfile
index 869b4c0..a558b47 100644
--- a/docker/pulsar-standalone/Dockerfile
+++ b/docker/pulsar-standalone/Dockerfile
@@ -20,7 +20,7 @@
FROM apachepulsar/pulsar-all:latest
RUN apt-get update
-RUN apt-get -y install postgresql sudo nginx supervisor
+RUN apt-get -y install postgresql-9.6 sudo nginx supervisor
# Python dependencies
RUN pip install uwsgi 'Django<2.0' psycopg2 pytz requests
diff --git a/docker/pulsar/Dockerfile b/docker/pulsar/Dockerfile
index 3a3bc30..edbe622 100644
--- a/docker/pulsar/Dockerfile
+++ b/docker/pulsar/Dockerfile
@@ -19,8 +19,10 @@
FROM openjdk:8-jdk
+RUN echo "deb http://ftp.de.debian.org/debian testing main" >> /etc/apt/sources.list
+
# Install some utilities
-RUN apt-get update && apt-get install -y netcat dnsutils python-kazoo python-yaml python-pip
+RUN apt-get update && apt-get install -y netcat dnsutils python-kazoo python-yaml python-pip python3.7 python3-pip
ARG PULSAR_TARBALL
@@ -32,10 +34,12 @@ COPY scripts/gen-yml-from-env.py /pulsar/bin
COPY scripts/generate-zookeeper-config.sh /pulsar/bin
COPY scripts/pulsar-zookeeper-ruok.sh /pulsar/bin
COPY scripts/watch-znode.py /pulsar/bin
-COPY scripts/install-pulsar-client.sh /pulsar/bin
+COPY scripts/install-pulsar-client-27.sh /pulsar/bin
+COPY scripts/install-pulsar-client-37.sh /pulsar/bin
ADD target/python-client/ /pulsar/pulsar-client
-RUN /pulsar/bin/install-pulsar-client.sh
+RUN /pulsar/bin/install-pulsar-client-27.sh
+RUN /pulsar/bin/install-pulsar-client-37.sh
RUN echo networkaddress.cache.ttl=1 >> $JAVA_HOME/jre/lib/security/java.security
WORKDIR /pulsar
diff --git a/docker/pulsar/pom.xml b/docker/pulsar/pom.xml
index 7bbce6a..70251f6 100644
--- a/docker/pulsar/pom.xml
+++ b/docker/pulsar/pom.xml
@@ -54,7 +54,7 @@
<version>${exec-maven-plugin.version}</version>
<executions>
<execution>
- <id>build-pulsar-clients</id>
+ <id>build-pulsar-clients-python-27</id>
<phase>compile</phase>
<goals>
<goal>exec</goal>
@@ -69,6 +69,22 @@
</arguments>
</configuration>
</execution>
+ <execution>
+ <id>build-pulsar-clients-python-37</id>
+ <phase>compile</phase>
+ <goals>
+ <goal>exec</goal>
+ </goals>
+ <configuration>
+ <skip>${skipBuildPythonClient}</skip>
+ <workingDirectory>${project.basedir}/target</workingDirectory>
+ <executable>${project.basedir}/../../pulsar-client-cpp/docker/build-wheels.sh</executable>
+ <arguments>
+ <!-- build python 3.7 -->
+ <argument>3.7 cp37-cp37m</argument>
+ </arguments>
+ </configuration>
+ </execution>
</executions>
</plugin>
<plugin>
diff --git a/docker/pulsar/scripts/install-pulsar-client.sh b/docker/pulsar/scripts/install-pulsar-client-27.sh
similarity index 94%
copy from docker/pulsar/scripts/install-pulsar-client.sh
copy to docker/pulsar/scripts/install-pulsar-client-27.sh
index 2e048c1..8c5b362 100755
--- a/docker/pulsar/scripts/install-pulsar-client.sh
+++ b/docker/pulsar/scripts/install-pulsar-client-27.sh
@@ -20,5 +20,5 @@
set -x
-WHEEL_FILE=`ls /pulsar/pulsar-client`
+WHEEL_FILE=$(ls /pulsar/pulsar-client | grep cp27)
pip install /pulsar/pulsar-client/${WHEEL_FILE}
diff --git a/docker/pulsar/scripts/install-pulsar-client.sh b/docker/pulsar/scripts/install-pulsar-client-37.sh
similarity index 89%
rename from docker/pulsar/scripts/install-pulsar-client.sh
rename to docker/pulsar/scripts/install-pulsar-client-37.sh
index 2e048c1..3e22803 100755
--- a/docker/pulsar/scripts/install-pulsar-client.sh
+++ b/docker/pulsar/scripts/install-pulsar-client-37.sh
@@ -20,5 +20,5 @@
set -x
-WHEEL_FILE=`ls /pulsar/pulsar-client`
-pip install /pulsar/pulsar-client/${WHEEL_FILE}
+WHEEL_FILE=$(ls /pulsar/pulsar-client | grep cp37)
+pip3 install /pulsar/pulsar-client/${WHEEL_FILE}
diff --git a/pulsar-functions/runtime/src/main/java/org/apache/pulsar/functions/runtime/RuntimeUtils.java b/pulsar-functions/runtime/src/main/java/org/apache/pulsar/functions/runtime/RuntimeUtils.java
index 5e09e66..3db9f5d 100644
--- a/pulsar-functions/runtime/src/main/java/org/apache/pulsar/functions/runtime/RuntimeUtils.java
+++ b/pulsar-functions/runtime/src/main/java/org/apache/pulsar/functions/runtime/RuntimeUtils.java
@@ -62,12 +62,12 @@ class RuntimeUtils {
String logConfigFile,
String secretsProviderClassName,
String secretsProviderConfig,
- Boolean installUserCodeDepdendencies,
+ Boolean installUserCodeDependencies,
String pythonDependencyRepository,
String pythonExtraDependencyRepository,
int metricsPort) throws Exception {
- List<String> args = new LinkedList<>();
- if (instanceConfig.getFunctionDetails().getRuntime() == Function.FunctionDetails.Runtime.JAVA) {
+ final List<String> args = new LinkedList<>();
+ if (instanceConfig.getFunctionDetails().getRuntime() == Function.FunctionDetails.Runtime.JAVA) {
args.add("java");
args.add("-cp");
@@ -115,7 +115,7 @@ class RuntimeUtils {
args.add("--logging_config_file");
args.add(logConfigFile);
// `installUserCodeDependencies` is only valid for python runtime
- if (installUserCodeDepdendencies != null && installUserCodeDepdendencies) {
+ if (installUserCodeDependencies != null && installUserCodeDependencies) {
args.add("--install_usercode_dependencies");
args.add("True");
}