Build on CI
This commit is contained in:
parent
7c331ad58b
commit
2d9d89d50e
49
.github/workflows/CI.yml
vendored
Normal file
49
.github/workflows/CI.yml
vendored
Normal file
|
@ -0,0 +1,49 @@
|
|||
name: PullRequest
|
||||
|
||||
on: [pull_request]
|
||||
|
||||
jobs:
|
||||
buildTest:
|
||||
name: Build
|
||||
runs-on: macOS-latest
|
||||
steps:
|
||||
- name: Checkout
|
||||
uses: actions/checkout@v2.3.4
|
||||
with:
|
||||
fetch-depth: 0
|
||||
- name: Install Android SDK
|
||||
uses: malinskiy/action-android/install-sdk@release/0.1.0
|
||||
- name: Install prerequisite brew
|
||||
run: |
|
||||
brew install opencv@3
|
||||
brew install python
|
||||
python --version
|
||||
- name: Install prerequisite Python
|
||||
run: |
|
||||
python --version |
|
||||
pip install --user six
|
||||
pip install numpy
|
||||
- name: Build project
|
||||
run: |
|
||||
export ANDROID_HOME=/Users/runner/Library/Android/sdk
|
||||
export ANDROID_NDK_HOME=$ANDROID_HOME/ndk-bundle
|
||||
echo a | ./build_android_examples.sh
|
||||
- name: Show result
|
||||
run: git status
|
||||
- name: Find Tag
|
||||
id: tagger
|
||||
uses: jimschubert/query-tag-action@v2
|
||||
with:
|
||||
skip-unshallow: 'true'
|
||||
abbrev: false
|
||||
commit-ish: HEAD
|
||||
- name: Rename AAR
|
||||
run: find bazel-bin/mediapipe/ -name *aar.aar -exec mv {} {}_${{steps.tagger.outputs.tag}}.aar \;
|
||||
- name: Get Version
|
||||
run: git describe --tags
|
||||
- name: Archive AAR ${{steps.tagger.outputs.tag}}
|
||||
uses: actions/upload-artifact@v2.2.1
|
||||
if: ${{ always() }}
|
||||
with:
|
||||
name: AAR-library-${{steps.tagger.outputs.tag}}
|
||||
path: bazel-bin/mediapipe//examples/android/src/java/com/google/mediapipe/apps/**/*.aar
|
69
Dockerfile
69
Dockerfile
|
@ -1,69 +0,0 @@
|
|||
# Copyright 2019 The MediaPipe Authors.
|
||||
#
|
||||
# Licensed 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.
|
||||
|
||||
FROM ubuntu:18.04
|
||||
|
||||
MAINTAINER <mediapipe@google.com>
|
||||
|
||||
WORKDIR /io
|
||||
WORKDIR /mediapipe
|
||||
|
||||
ENV DEBIAN_FRONTEND=noninteractive
|
||||
|
||||
RUN apt-get update && apt-get install -y --no-install-recommends \
|
||||
build-essential \
|
||||
ca-certificates \
|
||||
curl \
|
||||
ffmpeg \
|
||||
git \
|
||||
wget \
|
||||
unzip \
|
||||
python3-dev \
|
||||
python3-opencv \
|
||||
python3-pip \
|
||||
libopencv-core-dev \
|
||||
libopencv-highgui-dev \
|
||||
libopencv-imgproc-dev \
|
||||
libopencv-video-dev \
|
||||
libopencv-calib3d-dev \
|
||||
libopencv-features2d-dev \
|
||||
software-properties-common && \
|
||||
add-apt-repository -y ppa:openjdk-r/ppa && \
|
||||
apt-get update && apt-get install -y openjdk-8-jdk && \
|
||||
apt-get clean && \
|
||||
rm -rf /var/lib/apt/lists/*
|
||||
|
||||
RUN pip3 install --upgrade setuptools
|
||||
RUN pip3 install wheel
|
||||
RUN pip3 install future
|
||||
RUN pip3 install six==1.14.0
|
||||
RUN pip3 install tensorflow==1.14.0
|
||||
RUN pip3 install tf_slim
|
||||
|
||||
RUN ln -s /usr/bin/python3 /usr/bin/python
|
||||
|
||||
# Install bazel
|
||||
ARG BAZEL_VERSION=3.7.2
|
||||
RUN mkdir /bazel && \
|
||||
wget --no-check-certificate -O /bazel/installer.sh "https://github.com/bazelbuild/bazel/releases/download/${BAZEL_VERSION}/b\
|
||||
azel-${BAZEL_VERSION}-installer-linux-x86_64.sh" && \
|
||||
wget --no-check-certificate -O /bazel/LICENSE.txt "https://raw.githubusercontent.com/bazelbuild/bazel/master/LICENSE" && \
|
||||
chmod +x /bazel/installer.sh && \
|
||||
/bazel/installer.sh && \
|
||||
rm -f /bazel/installer.sh
|
||||
|
||||
COPY . /mediapipe/
|
||||
|
||||
# If we want the docker image to contain the pre-built object_detection_offline_demo binary, do the following
|
||||
# RUN bazel build -c opt --define MEDIAPIPE_DISABLE_GPU=1 mediapipe/examples/desktop/demo:object_detection_tensorflow_demo
|
4
setup_android_sdk_and_ndk.sh
Normal file → Executable file
4
setup_android_sdk_and_ndk.sh
Normal file → Executable file
|
@ -34,6 +34,10 @@ then
|
|||
echo "Found existing \$ANDROID_HOME="$ANDROID_HOME" and \$ANDROID_NDK_HOME="$ANDROID_NDK_HOME
|
||||
echo "Bazel will locate Android SDK and NDK automatically."
|
||||
exit 0
|
||||
else
|
||||
echo "You can specify ANDROID_HOME and ANDROID_NDK_HOME, currently I've these variables:"
|
||||
echo ANDROID_HOME=$ANDROID_HOME
|
||||
echo ANDROID_NDK_HOME=$ANDROID_NDK_HOME
|
||||
fi
|
||||
|
||||
android_sdk_path=$1
|
||||
|
|
0
setup_opencv.sh
Normal file → Executable file
0
setup_opencv.sh
Normal file → Executable file
Loading…
Reference in New Issue
Block a user