mirror of
https://github.com/clementine-player/Clementine
synced 2025-01-25 13:08:34 +01:00
Remove CircleCI config
This commit is contained in:
parent
9fdb83c828
commit
d89ee1fae2
@ -1,873 +0,0 @@
|
||||
version: 2.1
|
||||
commands:
|
||||
cmake:
|
||||
description: Configure build
|
||||
steps:
|
||||
- run:
|
||||
name: cmake
|
||||
command: cmake ..
|
||||
working_directory: bin
|
||||
build_source_tarball:
|
||||
description: Build source tarball
|
||||
steps:
|
||||
- run:
|
||||
name: Build source tarball
|
||||
command: ../dist/maketarball.sh
|
||||
working_directory: bin
|
||||
|
||||
build_rpm:
|
||||
description: Build RPM
|
||||
steps:
|
||||
- run:
|
||||
name: Create rpmbuild directory
|
||||
command: mkdir -p ~/rpmbuild/SOURCES
|
||||
- run:
|
||||
name: Move source tarball
|
||||
command: mv clementine-*.tar.xz ~/rpmbuild/SOURCES
|
||||
working_directory: bin
|
||||
- run:
|
||||
name: Build RPM
|
||||
command: rpmbuild -ba ../dist/clementine.spec
|
||||
working_directory: bin
|
||||
cmake_debian:
|
||||
description: Configure build
|
||||
parameters:
|
||||
distribution:
|
||||
type: string
|
||||
default: xenial
|
||||
arch:
|
||||
type: string
|
||||
default: amd64
|
||||
steps:
|
||||
- run:
|
||||
name: cmake
|
||||
command: >
|
||||
cmake ..
|
||||
-DWITH_DEBIAN=ON
|
||||
-DDEB_ARCH=<< parameters.arch >>
|
||||
-DDEB_DIST=<< parameters.distribution >>
|
||||
-DFORCE_GIT_VERSION=
|
||||
-DENABLE_SPOTIFY_BLOB=OFF
|
||||
working_directory: bin
|
||||
make_deb:
|
||||
description: Build deb
|
||||
steps:
|
||||
- run:
|
||||
name: make deb
|
||||
command: make -j2 deb
|
||||
working_directory: bin
|
||||
copy_artifacts:
|
||||
description: Copy build artifacts
|
||||
parameters:
|
||||
build:
|
||||
type: string
|
||||
default: ubuntu-xenial
|
||||
steps:
|
||||
- run:
|
||||
name: Create artifact output directory
|
||||
command: mkdir -p /tmp/artifacts/<< parameters.build >>
|
||||
- run:
|
||||
name: Copy deb to artifacts directory
|
||||
command: cp bin/clementine_*.deb /tmp/artifacts/<< parameters.build >>/
|
||||
- persist_to_workspace:
|
||||
root: /tmp/artifacts
|
||||
paths:
|
||||
- << parameters.build >>/*
|
||||
- store_artifacts:
|
||||
path: /tmp/artifacts/<< parameters.build >>
|
||||
copy_rpm_artifacts:
|
||||
description: Copy build artifcats
|
||||
parameters:
|
||||
build:
|
||||
type: string
|
||||
default: fedora-30
|
||||
steps:
|
||||
- run:
|
||||
name: Create artifact output directory
|
||||
command: mkdir -p /tmp/artifacts/<< parameters.build >>
|
||||
- run:
|
||||
name: Copy RPM to artifacts directory
|
||||
command: cp ~/rpmbuild/RPMS/*/clementine-*.rpm /tmp/artifacts/<< parameters.build >>
|
||||
- persist_to_workspace:
|
||||
root: /tmp/artifacts
|
||||
paths:
|
||||
- << parameters.build >>/*
|
||||
- store_artifacts:
|
||||
path: /tmp/artifacts/<< parameters.build >>
|
||||
|
||||
copy_windows_artifacts:
|
||||
description: Copy build artifacts
|
||||
steps:
|
||||
- run:
|
||||
name: Create artifact output directory
|
||||
command: mkdir -p /tmp/artifacts/windows
|
||||
- run:
|
||||
name: Copy exe to artifacts directory
|
||||
command: cp dist/windows/ClementineSetup*.exe /tmp/artifacts/windows
|
||||
- persist_to_workspace:
|
||||
root: /tmp/artifacts
|
||||
paths:
|
||||
- windows/*
|
||||
- store_artifacts:
|
||||
path: /tmp/artifacts/windows
|
||||
|
||||
install_bionic_dependencies:
|
||||
description: Install Bionic dependencies
|
||||
steps:
|
||||
- run:
|
||||
name: Use AWS Ubuntu mirror
|
||||
command: >
|
||||
sed -i /etc/apt/sources.list
|
||||
-e 's#archive.ubuntu.com#us-east-2.ec2.archive.ubuntu.com#'
|
||||
- run:
|
||||
name: Install Dependencies
|
||||
command: >
|
||||
apt-get update && apt-get install -y
|
||||
build-essential
|
||||
cmake
|
||||
gettext
|
||||
git
|
||||
libasound2-dev
|
||||
libboost-dev
|
||||
libcdio-dev
|
||||
libchromaprint-dev
|
||||
libdbus-1-dev
|
||||
libfftw3-dev
|
||||
libglew1.5-dev
|
||||
libglib2.0-dev
|
||||
libgpod-dev
|
||||
libgstreamer-plugins-base1.0-dev
|
||||
libgstreamer1.0-dev
|
||||
liblastfm5-dev
|
||||
libmtp-dev
|
||||
libprotobuf-dev
|
||||
libpulse-dev
|
||||
libqt5x11extras5-dev
|
||||
libsqlite3-dev
|
||||
libtag1-dev
|
||||
pkg-config
|
||||
protobuf-compiler
|
||||
qtbase5-dev
|
||||
qttools5-dev-tools
|
||||
qttools5-dev
|
||||
libsparsehash-dev
|
||||
ssh
|
||||
|
||||
install_eoan_dependencies:
|
||||
description: Install Eoan dependencies
|
||||
steps:
|
||||
- run:
|
||||
name: Setup ENV
|
||||
command: |
|
||||
echo 'export DEBIAN_FRONTEND=noninteractive' >> $BASH_ENV
|
||||
source $BASH_ENV
|
||||
- run:
|
||||
name: Use AWS Ubuntu mirror
|
||||
command: >
|
||||
sed -i /etc/apt/sources.list
|
||||
-e 's#archive.ubuntu.com#us-east-2.ec2.archive.ubuntu.com#'
|
||||
- run:
|
||||
name: Install Dependencies
|
||||
command: >
|
||||
apt-get update && apt-get install -y
|
||||
cmake
|
||||
fakeroot
|
||||
gettext
|
||||
git
|
||||
libasound2-dev
|
||||
libboost-dev
|
||||
libboost-serialization-dev
|
||||
libcdio-cdda2
|
||||
libcdio-dev
|
||||
libchromaprint-dev
|
||||
libcrypto++-dev
|
||||
libdbus-1-dev
|
||||
libfftw3-dev
|
||||
libglew1.5-dev
|
||||
libgpod-dev
|
||||
libgstreamer-plugins-base1.0-dev
|
||||
libgstreamer1.0-dev
|
||||
liblastfm5-dev
|
||||
libmtp-dev
|
||||
libmygpo-qt-dev
|
||||
libplist-dev
|
||||
libprotobuf-dev
|
||||
libpulse-dev
|
||||
libqca-qt5-2-dev
|
||||
libqca-qt5-2-plugins
|
||||
libqt5x11extras5-dev
|
||||
libsparsehash-dev
|
||||
libsqlite3-dev
|
||||
libtag1-dev
|
||||
libusbmuxd-dev
|
||||
protobuf-compiler
|
||||
qtbase5-dev
|
||||
qttools5-dev-tools
|
||||
qttools5-dev
|
||||
ssh
|
||||
|
||||
install_fedora_dependencies:
|
||||
description: Install Fedora Dependencies
|
||||
steps:
|
||||
- run:
|
||||
name: Install Dependencies
|
||||
command: >
|
||||
dnf install --assumeyes
|
||||
@development-tools
|
||||
alsa-lib-devel
|
||||
boost-devel
|
||||
cmake
|
||||
cryptopp-devel
|
||||
dbus-devel
|
||||
desktop-file-utils
|
||||
fftw-devel
|
||||
gcc-c++
|
||||
gettext
|
||||
git
|
||||
glew-devel
|
||||
gstreamer1-devel
|
||||
gstreamer1-plugins-base-devel
|
||||
hicolor-icon-theme
|
||||
libappstream-glib
|
||||
libcdio-devel
|
||||
libchromaprint-devel
|
||||
libgpod-devel
|
||||
liblastfm-qt5-devel
|
||||
libmtp-devel
|
||||
libnotify-devel
|
||||
openssh
|
||||
pkgconfig
|
||||
protobuf-compiler
|
||||
protobuf-devel
|
||||
pulseaudio-libs-devel
|
||||
qca-qt5-devel
|
||||
qca-qt5-ossl
|
||||
qt5-devel
|
||||
rpmdevtools
|
||||
sha2-devel
|
||||
sparsehash-devel
|
||||
sqlite-devel
|
||||
taglib-devel
|
||||
tar
|
||||
|
||||
install_debian_dependencies:
|
||||
description: Install Debian dependencies
|
||||
steps:
|
||||
- run:
|
||||
name: Install Dependencies
|
||||
command: >
|
||||
apt-get update && apt-get install -y
|
||||
build-essential
|
||||
cmake
|
||||
gettext
|
||||
git
|
||||
libasound2-dev
|
||||
libboost-dev
|
||||
libcdio-dev
|
||||
libchromaprint-dev
|
||||
libcrypto++-dev
|
||||
libdbus-1-dev
|
||||
libfftw3-dev
|
||||
libglew1.5-dev
|
||||
libglib2.0-dev
|
||||
libgpod-dev
|
||||
libgstreamer-plugins-base1.0-dev
|
||||
libgstreamer1.0-dev
|
||||
liblastfm5-dev
|
||||
libmtp-dev
|
||||
libmygpo-qt-dev
|
||||
libprotobuf-dev
|
||||
libpulse-dev
|
||||
libqt5x11extras5-dev
|
||||
libsparsehash-dev
|
||||
libsqlite3-dev
|
||||
libtag1-dev
|
||||
pkg-config
|
||||
protobuf-compiler
|
||||
qtbase5-dev
|
||||
qttools5-dev-tools
|
||||
qttools5-dev
|
||||
ssh
|
||||
|
||||
jobs:
|
||||
build_bionic_64:
|
||||
docker:
|
||||
- image: ubuntu:bionic
|
||||
|
||||
steps:
|
||||
- install_bionic_dependencies
|
||||
- checkout
|
||||
- cmake_debian:
|
||||
distribution: bionic
|
||||
arch: amd64
|
||||
- make_deb
|
||||
- copy_artifacts:
|
||||
build: ubuntu-bionic
|
||||
|
||||
build_bionic_32:
|
||||
docker:
|
||||
- image: i386/ubuntu:bionic
|
||||
|
||||
steps:
|
||||
- install_bionic_dependencies
|
||||
- checkout
|
||||
- cmake_debian:
|
||||
distribution: bionic
|
||||
arch: i386
|
||||
- make_deb
|
||||
- copy_artifacts:
|
||||
build: ubuntu-bionic
|
||||
|
||||
build_focal_64:
|
||||
docker:
|
||||
- image: ubuntu:focal
|
||||
steps:
|
||||
- install_eoan_dependencies
|
||||
- checkout
|
||||
- cmake_debian:
|
||||
distribution: focal
|
||||
arch: amd64
|
||||
- make_deb
|
||||
- copy_artifacts:
|
||||
build: ubuntu-focal
|
||||
|
||||
build_eoan_64:
|
||||
docker:
|
||||
- image: ubuntu:eoan
|
||||
steps:
|
||||
- install_eoan_dependencies
|
||||
- checkout
|
||||
- cmake_debian:
|
||||
distribution: eoan
|
||||
arch: amd64
|
||||
- make_deb
|
||||
- copy_artifacts:
|
||||
build: ubuntu-eoan
|
||||
|
||||
build_eoan_32:
|
||||
docker:
|
||||
- image: i386/ubuntu:eoan
|
||||
steps:
|
||||
- install_eoan_dependencies
|
||||
- checkout
|
||||
- cmake_debian:
|
||||
distribution: eoan
|
||||
arch: i386
|
||||
- make_deb
|
||||
- copy_artifacts:
|
||||
build: ubuntu-eoan
|
||||
|
||||
build_buster_64:
|
||||
docker:
|
||||
- image: debian:buster
|
||||
steps:
|
||||
- install_debian_dependencies
|
||||
- checkout
|
||||
- cmake_debian:
|
||||
distribution: buster
|
||||
arch: amd64
|
||||
- make_deb
|
||||
- copy_artifacts:
|
||||
build: debian-buster
|
||||
|
||||
build_stretch_64:
|
||||
docker:
|
||||
- image: debian:stretch
|
||||
steps:
|
||||
- install_debian_dependencies
|
||||
- checkout
|
||||
- cmake_debian:
|
||||
distribution: stretch
|
||||
arch: amd64
|
||||
- make_deb
|
||||
- copy_artifacts:
|
||||
build: debian-stretch
|
||||
|
||||
build_fedora_30_64:
|
||||
docker:
|
||||
- image: fedora:30
|
||||
environment:
|
||||
RPM_BUILD_NCPUS: "2"
|
||||
|
||||
steps:
|
||||
- install_fedora_dependencies
|
||||
- checkout
|
||||
- cmake
|
||||
- build_source_tarball
|
||||
- build_rpm
|
||||
- copy_rpm_artifacts:
|
||||
build: fedora-30
|
||||
|
||||
build_fedora_31_64:
|
||||
docker:
|
||||
- image: fedora:31
|
||||
environment:
|
||||
RPM_BUILD_NCPUS: "2"
|
||||
|
||||
steps:
|
||||
- install_fedora_dependencies
|
||||
- checkout
|
||||
- cmake
|
||||
- build_source_tarball
|
||||
- build_rpm
|
||||
- copy_rpm_artifacts:
|
||||
build: fedora-31
|
||||
|
||||
build_mingw:
|
||||
docker:
|
||||
- image: eu.gcr.io/clementine-data/mingw-w64:latest
|
||||
environment:
|
||||
PKG_CONFIG_PATH: /target/lib/pkgconfig
|
||||
steps:
|
||||
- checkout
|
||||
- run:
|
||||
name: Fix liblastfm includes
|
||||
command: ln -s /target/include/lastfm /target/include/lastfm5
|
||||
- run:
|
||||
name: CMake
|
||||
working_directory: bin
|
||||
command: >
|
||||
cmake ..
|
||||
-DCMAKE_TOOLCHAIN_FILE=../Toolchain-mingw32.cmake
|
||||
-DCMAKE_BUILD_TYPE=Release
|
||||
- run:
|
||||
name: Make
|
||||
working_directory: bin
|
||||
command: make -j2
|
||||
- run:
|
||||
name: Copy output exes
|
||||
working_directory: dist/windows
|
||||
command: cp ../../bin/*.exe .
|
||||
- run:
|
||||
name: Copy base runtime DLLs
|
||||
command: >
|
||||
cp
|
||||
/usr/lib/gcc/i686-w64-mingw32/*-posix/libgcc_s_sjlj-1.dll
|
||||
/usr/lib/gcc/i686-w64-mingw32/*-posix/libstdc++-6.dll
|
||||
/usr/i686-w64-mingw32/lib/libwinpthread-1.dll
|
||||
~/project/dist/windows
|
||||
- run:
|
||||
name: Copy DLL dependencies
|
||||
working_directory: /target/bin
|
||||
command: >
|
||||
cp
|
||||
glew32.dll
|
||||
libcdio-16.dll
|
||||
libchromaprint.dll
|
||||
libeay32.dll
|
||||
libfaad.dll
|
||||
libffi-6.dll
|
||||
libfftw3-3.dll
|
||||
libFLAC-8.dll
|
||||
libgcrypt-20.dll
|
||||
libgio-2.0-0.dll
|
||||
libglib-2.0-0.dll
|
||||
libgmodule-2.0-0.dll
|
||||
libgmp-10.dll
|
||||
libgnutls-30.dll
|
||||
libgobject-2.0-0.dll
|
||||
libgpg-error-0.dll
|
||||
libgpod.dll
|
||||
libgstapp-1.0-0.dll
|
||||
libgstaudio-1.0-0.dll
|
||||
libgstbase-1.0-0.dll
|
||||
libgstcontroller-1.0-0.dll
|
||||
libgstfft-1.0-0.dll
|
||||
libgstnet-1.0-0.dll
|
||||
libgstpbutils-1.0-0.dll
|
||||
libgstreamer-1.0-0.dll
|
||||
libgstriff-1.0-0.dll
|
||||
libgstrtp-1.0-0.dll
|
||||
libgstrtsp-1.0-0.dll
|
||||
libgstsdp-1.0-0.dll
|
||||
libgsttag-1.0-0.dll
|
||||
libgstvideo-1.0-0.dll
|
||||
libgthread-2.0-0.dll
|
||||
libhogweed-4.dll
|
||||
libiconv-2.dll
|
||||
libid3tag.dll
|
||||
libintl-8.dll
|
||||
liblastfm5.dll
|
||||
libmad.dll
|
||||
libmms-0.dll
|
||||
libmp3lame-0.dll
|
||||
libnettle-6.dll
|
||||
libogg-0.dll
|
||||
liboil-0.3-0.dll
|
||||
liborc-0.4-0.dll
|
||||
liborc-test-0.4-0.dll
|
||||
libp11-kit-0.dll
|
||||
libplist.dll
|
||||
libpsl-5.dll
|
||||
libprotobuf-17.dll
|
||||
libsoup-2.4-1.dll
|
||||
libspeex-1.dll
|
||||
libspotify.dll
|
||||
libsqlite3-0.dll
|
||||
libtag.dll
|
||||
libtasn1-6.dll
|
||||
libvorbis-0.dll
|
||||
libvorbisenc-2.dll
|
||||
libxml2-2.dll
|
||||
Qt5Concurrent.dll
|
||||
Qt5Core.dll
|
||||
Qt5Gui.dll
|
||||
Qt5Network.dll
|
||||
Qt5NetworkAuth.dll
|
||||
Qt5OpenGL.dll
|
||||
Qt5Sql.dll
|
||||
Qt5Svg.dll
|
||||
Qt5Widgets.dll
|
||||
Qt5WinExtras.dll
|
||||
Qt5Xml.dll
|
||||
Qt5XmlPatterns.dll
|
||||
ssleay32.dll
|
||||
zlib1.dll
|
||||
~/project/dist/windows
|
||||
- run: mkdir dist/windows/imageformats
|
||||
- run:
|
||||
name: Copy Qt imageformat plugin DLLs
|
||||
working_directory: /target/plugins
|
||||
command: >
|
||||
cp
|
||||
imageformats/qgif.dll
|
||||
imageformats/qjpeg.dll
|
||||
~/project/dist/windows/imageformats
|
||||
- run: mkdir dist/windows/platforms
|
||||
- run:
|
||||
name: Copy Qt platforms plugin DLLs
|
||||
working_directory: /target/plugins
|
||||
command: >
|
||||
cp
|
||||
platforms/qwindows.dll
|
||||
~/project/dist/windows/platforms
|
||||
- run: mkdir dist/windows/styles
|
||||
- run:
|
||||
name: Copy Qt style plugin DLLs
|
||||
working_directory: /target/plugins
|
||||
command: >
|
||||
cp
|
||||
styles/qwindowsvistastyle.dll
|
||||
~/project/dist/windows/styles
|
||||
- run: mkdir dist/windows/gio-modules
|
||||
- run:
|
||||
name: Copy GIO modules
|
||||
command: cp /target/lib/gio/modules/libgiognutls.dll dist/windows/gio-modules
|
||||
- run: mkdir dist/windows/gstreamer-plugins
|
||||
- run:
|
||||
name: Copy gstreamer plugins
|
||||
working_directory: /target/lib/gstreamer-1.0
|
||||
command: >
|
||||
cp
|
||||
libgstapetag.dll
|
||||
libgstapp.dll
|
||||
libgstasf.dll
|
||||
libgstaudioconvert.dll
|
||||
libgstaudiofx.dll
|
||||
libgstaudioparsers.dll
|
||||
libgstaudioresample.dll
|
||||
libgstaudiotestsrc.dll
|
||||
libgstautodetect.dll
|
||||
libgstcdio.dll
|
||||
libgstcoreelements.dll
|
||||
libgstdirectsoundsink.dll
|
||||
libgstequalizer.dll
|
||||
libgstfaad.dll
|
||||
libgstflac.dll
|
||||
libgstgdp.dll
|
||||
libgstgio.dll
|
||||
libgsticydemux.dll
|
||||
libgstid3demux.dll
|
||||
libgstisomp4.dll
|
||||
libgstlame.dll
|
||||
libgstlibav.dll
|
||||
libgstmad.dll
|
||||
libgstmms.dll
|
||||
libgstogg.dll
|
||||
libgstplayback.dll
|
||||
libgstreplaygain.dll
|
||||
libgstsouphttpsrc.dll
|
||||
libgstspectrum.dll
|
||||
libgstspeex.dll
|
||||
libgsttaglib.dll
|
||||
libgsttcp.dll
|
||||
libgsttypefindfunctions.dll
|
||||
libgstudp.dll
|
||||
libgstvolume.dll
|
||||
libgstvorbis.dll
|
||||
libgstwavparse.dll
|
||||
~/project/dist/windows/gstreamer-plugins
|
||||
- run:
|
||||
name: Build windows installer
|
||||
working_directory: dist/windows
|
||||
command: makensis clementine.nsi
|
||||
- copy_windows_artifacts
|
||||
|
||||
build_mac:
|
||||
macos:
|
||||
xcode: "11.0.0"
|
||||
steps:
|
||||
- run:
|
||||
name: Setup PATH
|
||||
command: |
|
||||
echo 'export PKG_CONFIG_PATH=/usr/local/lib/pkgconfig' >> $BASH_ENV
|
||||
echo 'export Qt5_DIR=/usr/local/opt/qt5/lib/cmake/Qt5' >> $BASH_ENV
|
||||
echo 'export Qt5LinguistTools_DIR=/usr/local/opt/qt5/lib/cmake/Qt5LinguistTools' >> $BASH_ENV
|
||||
echo 'export GST_SCANNER_PATH=/usr/local/opt/gstreamer/libexec/gstreamer-1.0/gst-plugin-scanner' >> $BASH_ENV
|
||||
echo 'export GST_PLUGIN_PATH=/usr/local/lib/gstreamer-1.0' >> $BASH_ENV
|
||||
source $BASH_ENV
|
||||
- run:
|
||||
name: Unlink Python 2
|
||||
command: brew unlink python@2
|
||||
- run:
|
||||
name: Install dependencies from homebrew
|
||||
command: >
|
||||
brew install
|
||||
boost
|
||||
chromaprint
|
||||
cmake
|
||||
cryptopp
|
||||
fftw
|
||||
glew
|
||||
glib
|
||||
google-sparsehash
|
||||
gst-libav
|
||||
gst-plugins-bad
|
||||
gst-plugins-base
|
||||
gst-plugins-good
|
||||
gst-plugins-ugly
|
||||
gstreamer
|
||||
pkgconfig
|
||||
protobuf
|
||||
protobuf-c
|
||||
qt
|
||||
- run:
|
||||
name: Install liblastfm
|
||||
command: brew install https://raw.githubusercontent.com/tomahawk-player/homebrew-tomahawkqt5/master/liblastfm.rb
|
||||
- run:
|
||||
name: Fix liblastfm includes
|
||||
command: ln -s /usr/local/include/lastfm /usr/local/include/lastfm5
|
||||
- checkout
|
||||
- run:
|
||||
name: cmake
|
||||
command: >
|
||||
cmake
|
||||
..
|
||||
-Wno-dev
|
||||
-DCMAKE_BUILD_TYPE=Release
|
||||
-DCMAKE_OSX_ARCHITECTURES=x86_64
|
||||
-DGETTEXT_MSGMERGE_EXECUTABLE=/usr/local/opt/gettext/bin/msgmerge
|
||||
-DGETTEXT_MSGFMT_EXECUTABLE=/usr/local/opt/gettext/bin/msgfmt
|
||||
-DGETTEXT_XGETTEXT_EXECUTABLE=/usr/local/opt/gettext/bin/xgettext
|
||||
working_directory: bin
|
||||
- run:
|
||||
name: make
|
||||
command: make -j4
|
||||
working_directory: bin
|
||||
- run:
|
||||
name: Copy icon file and resources
|
||||
command: make install
|
||||
working_directory: bin
|
||||
- run:
|
||||
name: Build DMG
|
||||
command: make dmg
|
||||
working_directory: bin
|
||||
- run:
|
||||
name: Create artifact output directory
|
||||
command: mkdir -p /tmp/artifacts/mac
|
||||
- run:
|
||||
name: Copy dmg to artifacts directory
|
||||
command: cp bin/clementine*.dmg /tmp/artifacts/mac
|
||||
- persist_to_workspace:
|
||||
root: /tmp/artifacts
|
||||
paths:
|
||||
- mac/*
|
||||
- store_artifacts:
|
||||
path: bin/CMakeCache.txt
|
||||
- store_artifacts:
|
||||
path: bin/src/CMakeFiles/clementine.dir
|
||||
- store_artifacts:
|
||||
path: /tmp/artifacts/mac
|
||||
|
||||
build_source_tarball:
|
||||
docker:
|
||||
- image: ubuntu:eoan
|
||||
steps:
|
||||
- install_eoan_dependencies
|
||||
- checkout
|
||||
- cmake
|
||||
- build_source_tarball
|
||||
- run:
|
||||
name: Create artifacts directory
|
||||
command: mkdir -p /tmp/artifacts/source
|
||||
- run:
|
||||
name: Copy artifact
|
||||
command: cp bin/clementine-*.tar.xz /tmp/artifacts/source
|
||||
- persist_to_workspace:
|
||||
root: /tmp/artifacts
|
||||
paths:
|
||||
- source/*
|
||||
|
||||
upload_artifacts:
|
||||
docker:
|
||||
- image: google/cloud-sdk
|
||||
steps:
|
||||
- run:
|
||||
name: Google Cloud Auth
|
||||
command: |
|
||||
echo $GCLOUD_SERVICE_KEY | gcloud auth activate-service-account circleci-uploader@clementine-data.iam.gserviceaccount.com --key-file=-
|
||||
gcloud --quiet config set project clementine-data
|
||||
- attach_workspace:
|
||||
at: /tmp/artifacts
|
||||
- run:
|
||||
name: Upload Artifact to Google Cloud
|
||||
command: gsutil rsync -r /tmp/artifacts gs://builds.clementine-player.org/
|
||||
|
||||
create_release:
|
||||
docker:
|
||||
- image: circleci/golang:1.12
|
||||
steps:
|
||||
- attach_workspace:
|
||||
at: /tmp/artifacts
|
||||
- run:
|
||||
name: Aggregate artifacts
|
||||
command: |
|
||||
mkdir -p release_artifacts
|
||||
cp /tmp/artifacts/**/* release_artifacts/
|
||||
- run:
|
||||
name: Publish Release on GitHub
|
||||
command: |
|
||||
go get github.com/tcnksm/ghr
|
||||
VERSION=${CIRCLE_TAG}
|
||||
ghr -t ${GITHUB_TOKEN} -u ${CIRCLE_PROJECT_USERNAME} -r ${CIRCLE_PROJECT_REPONAME} -c ${CIRCLE_SHA1} -delete ${VERSION} release_artifacts/
|
||||
create_pre_release:
|
||||
docker:
|
||||
- image: circleci/golang:1.12
|
||||
steps:
|
||||
- attach_workspace:
|
||||
at: /tmp/artifacts
|
||||
- run:
|
||||
name: Aggregate artifacts
|
||||
command: |
|
||||
mkdir -p release_artifacts
|
||||
cp /tmp/artifacts/**/* release_artifacts/
|
||||
- run:
|
||||
name: Publish Release on GitHub
|
||||
command: |
|
||||
go get github.com/tcnksm/ghr
|
||||
VERSION=$(echo release_artifacts/*.tar.xz | sed -e 's/.*clementine-\(.*\).tar.xz/\1/')
|
||||
ghr -t ${GITHUB_TOKEN} -u ${CIRCLE_PROJECT_USERNAME} -r ${CIRCLE_PROJECT_REPONAME} -c ${CIRCLE_SHA1} -prerelease ${VERSION} release_artifacts/
|
||||
workflows:
|
||||
version: 2
|
||||
build_all:
|
||||
jobs:
|
||||
- build_focal_64:
|
||||
filters:
|
||||
tags:
|
||||
only: /\d+\.\d+\.\d+(rc\d+)?$/
|
||||
- build_eoan_64:
|
||||
filters:
|
||||
tags:
|
||||
only: /\d+\.\d+\.\d+(rc\d+)?$/
|
||||
- build_eoan_32:
|
||||
filters:
|
||||
tags:
|
||||
only: /\d+\.\d+\.\d+(rc\d+)?$/
|
||||
- build_bionic_64:
|
||||
filters:
|
||||
tags:
|
||||
only: /\d+\.\d+\.\d+(rc\d+)?$/
|
||||
- build_bionic_32:
|
||||
filters:
|
||||
tags:
|
||||
only: /\d+\.\d+\.\d+(rc\d+)?$/
|
||||
- build_buster_64:
|
||||
filters:
|
||||
tags:
|
||||
only: /\d+\.\d+\.\d+(rc\d+)?$/
|
||||
- build_stretch_64:
|
||||
filters:
|
||||
tags:
|
||||
only: /\d+\.\d+\.\d+(rc\d+)?$/
|
||||
- build_fedora_30_64:
|
||||
filters:
|
||||
tags:
|
||||
only: /\d+\.\d+\.\d+(rc\d+)?$/
|
||||
- build_fedora_31_64:
|
||||
filters:
|
||||
tags:
|
||||
only: /\d+\.\d+\.\d+(rc\d+)?$/
|
||||
- build_mingw:
|
||||
filters:
|
||||
tags:
|
||||
only: /\d+\.\d+\.\d+(rc\d+)?$/
|
||||
- build_mac:
|
||||
filters:
|
||||
branches:
|
||||
only: master
|
||||
tags:
|
||||
only: /\d+\.\d+\.\d+(rc\d+)?$/
|
||||
- build_source_tarball:
|
||||
filters:
|
||||
tags:
|
||||
only: /\d+\.\d+\.\d+(rc\d+)?$/
|
||||
- create_release:
|
||||
filters:
|
||||
tags:
|
||||
only: /\d+\.\d+\.\d+(rc\d+)?$/
|
||||
branches:
|
||||
ignore: /.*/
|
||||
context: github
|
||||
requires:
|
||||
- build_focal_64
|
||||
- build_eoan_64
|
||||
- build_eoan_32
|
||||
- build_bionic_64
|
||||
- build_bionic_32
|
||||
- build_buster_64
|
||||
- build_stretch_64
|
||||
- build_fedora_30_64
|
||||
- build_fedora_31_64
|
||||
- build_mingw
|
||||
- build_mac
|
||||
- build_source_tarball
|
||||
- create_pre_release:
|
||||
filters:
|
||||
branches:
|
||||
only: master
|
||||
tags:
|
||||
ignore: /.*/
|
||||
context: github
|
||||
requires:
|
||||
- build_focal_64
|
||||
- build_eoan_64
|
||||
- build_eoan_32
|
||||
- build_bionic_64
|
||||
- build_bionic_32
|
||||
- build_buster_64
|
||||
- build_stretch_64
|
||||
- build_fedora_30_64
|
||||
- build_fedora_31_64
|
||||
- build_mingw
|
||||
- build_mac
|
||||
- build_source_tarball
|
||||
- upload_artifacts:
|
||||
context: gcp
|
||||
requires:
|
||||
- build_focal_64
|
||||
- build_eoan_64
|
||||
- build_eoan_32
|
||||
- build_bionic_64
|
||||
- build_bionic_32
|
||||
- build_buster_64
|
||||
- build_stretch_64
|
||||
- build_fedora_30_64
|
||||
- build_fedora_31_64
|
||||
- build_mingw
|
||||
- build_mac
|
||||
- build_source_tarball
|
||||
filters:
|
||||
branches:
|
||||
only: master
|
||||
tags:
|
||||
only: /.*/
|
Loading…
x
Reference in New Issue
Block a user