Skip to content
Merged
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
Binary file modified tools/piptool.par
Binary file not shown.
34 changes: 25 additions & 9 deletions tools/update_tools/Dockerfile
Original file line number Diff line number Diff line change
@@ -1,19 +1,35 @@
FROM gcr.io/gcp-runtimes/ubuntu_16_0_4:latest

# Install Bazel (https://docs.bazel.build/versions/master/install-ubuntu.html)
RUN apt-get update -y && apt-get install openjdk-8-jdk wget git unzip build-essential -y
RUN wget https://github.com/bazelbuild/bazel/releases/download/0.24.0/bazel-0.24.0-installer-linux-x86_64.sh -O /tmp/bazel-installer.sh
# Install Bazel (https://docs.bazel.build/versions/master/install-ubuntu.html#install-with-installer-ubuntu).
RUN apt-get update -y && apt-get install -y \
# The JDK requirement is from the instructions for the bazel apt package,
# which we're not using here, but let's be safe.
openjdk-8-jdk \
# These requirements are from the link above.
pkg-config zip g++ zlib1g-dev unzip python3 \
# And why should python3 have all the fun?
python \
# We also need git for git_repository to work. Maybe these other ones too.
git unzip build-essential \
# And wget for the below command.
wget

RUN wget https://github.com/bazelbuild/bazel/releases/download/0.28.0/bazel-0.28.0-installer-linux-x86_64.sh -O /tmp/bazel-installer.sh
RUN chmod +x /tmp/bazel-installer.sh && /tmp/bazel-installer.sh
RUN bazel help info >/dev/null 2>&1

# Install Python 2.7.12
RUN apt-get install python -y
# Sanity check the install.
RUN bazel help info >/dev/null 2>&1

# Build par files. We have a source and work directory to avoid
# stomping on other files as root.
# Build par files. We have a source and work directory to avoid stomping on
# other files as root.
CMD cp -r /opt/rules_python_source /opt/rules_python && \
cd /opt/rules_python && \
bazel clean && \
bazel build //rules_python:piptool.par //rules_python:whltool.par && \
bazel build //rules_python:piptool.par //rules_python:whltool.par \
# This works around a bug in git_repository to give us better debugging
# if there's an error.
# TODO(brandjon): Remove this once we're using Bazel 0.29, which
# contains the fix.
--incompatible_string_join_requires_strings=false && \
cp bazel-bin/rules_python/piptool.par bazel-bin/rules_python/whltool.par /opt/rules_python_source/tools/ && \
chown --reference=/opt/rules_python_source/update_tools.sh /opt/rules_python_source/tools/piptool.par /opt/rules_python_source/tools/whltool.par
Binary file modified tools/whltool.par
Binary file not shown.