v4l2rtspserver/.circleci/config.yml
2018-03-03 12:47:31 +01:00

109 lines
3.2 KiB
YAML

version: 2
jobs:
build_x86_64:
working_directory: ~/v4l2rtspServer
docker:
- image: heroku/heroku:16
steps:
- checkout
- run: apt-get update; apt-get install -y --no-install-recommends cmake autoconf automake libtool git make g++ liblog4cpp5-dev liblivemedia-dev
- run: cmake . && make
- run: cpack .
- run: mkdir -p /distrib && cp *.deb /distrib
- persist_to_workspace:
root: /
paths:
- distrib
build_rpi:
working_directory: ~/v4l2rtspServer
docker:
- image: heroku/heroku:16
steps:
- checkout
- run: apt-get update; apt-get install -y --no-install-recommends cmake autoconf automake libtool git make
- run: git clone --depth 1 https://github.com/raspberrypi/tools.git rpi_tools
- run: echo 'export PATH=${CIRCLE_WORKING_DIRECTORY}/rpi_tools/arm-bcm2708/gcc-linaro-arm-linux-gnueabihf-raspbian-x64/bin:$PATH' >> $BASH_ENV
- run: cmake -DCMAKE_TOOLCHAIN_FILE=${CIRCLE_WORKING_DIRECTORY}/raspberry.toolchain . && make
- run: cpack .
- run: mkdir -p /distrib && cp *.deb /distrib
- persist_to_workspace:
root: /
paths:
- distrib
build_mips:
working_directory: ~/v4l2rtspServer
docker:
- image: heroku/heroku:16
steps:
- checkout
- run: apt-get update; apt-get install -y --no-install-recommends cmake autoconf automake libtool git make g++-mips-linux-gnu
- run: cmake -DCMAKE_TOOLCHAIN_FILE=${CIRCLE_WORKING_DIRECTORY}/mips.toolchain . && make
- run: cpack .
- run: mkdir -p /distrib && cp *.deb /distrib
- persist_to_workspace:
root: /
paths:
- distrib
store_artifact:
working_directory: ~/v4l2rtspServer
docker:
- image: heroku/heroku:16
steps:
- attach_workspace:
at: /
- store_artifacts:
path: /distrib
github_release:
working_directory: ~/v4l2rtspServer
docker:
- image: heroku/heroku:16
steps:
- attach_workspace:
at: /
- run: curl https://storage.googleapis.com/golang/go1.8.linux-amd64.tar.gz | tar -C /usr/local -xzf -
- run: echo 'export PATH=/usr/local/go/bin:/root/go/bin:$PATH' >> $BASH_ENV
- run: go get github.com/tcnksm/ghr
- deploy:
name: "Deploy to Github"
command: ghr -t $GITHUB_TOKEN -u $CIRCLE_PROJECT_USERNAME -r $CIRCLE_PROJECT_REPONAME $CIRCLE_TAG /distrib
workflows:
version: 2
build:
jobs:
- build_x86_64:
filters:
tags:
only: /.*/
- build_rpi:
filters:
tags:
only: /.*/
- build_mips:
filters:
tags:
only: /.*/
- store_artifact:
requires:
- build_x86_64
- build_rpi
- build_mips
filters:
tags:
only: /.*/
- github_release:
requires:
- build_x86_64
- build_rpi
- build_mips
filters:
branches:
ignore: /.*/
tags:
only: /.*/