Build on CI
This commit is contained in:
parent
39309bedba
commit
b337588896
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.4.1
|
|
||||||
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 "Found existing \$ANDROID_HOME="$ANDROID_HOME" and \$ANDROID_NDK_HOME="$ANDROID_NDK_HOME
|
||||||
echo "Bazel will locate Android SDK and NDK automatically."
|
echo "Bazel will locate Android SDK and NDK automatically."
|
||||||
exit 0
|
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
|
fi
|
||||||
|
|
||||||
android_sdk_path=$1
|
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