Skip to content
GitLab
Projects
Groups
Snippets
Help
Loading...
Help
Help
Support
Community forum
Keyboard shortcuts
?
Submit feedback
Contribute to GitLab
Sign in
Toggle navigation
KStars
Project overview
Project overview
Details
Activity
Releases
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Issues
0
Issues
0
List
Boards
Labels
Service Desk
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Operations
Operations
Incidents
Environments
Packages & Registries
Packages & Registries
Package Registry
Analytics
Analytics
CI / CD
Repository
Value Stream
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
Robert Lancaster
KStars
Commits
3c77cc75
Commit
3c77cc75
authored
Sep 12, 2020
by
Eric Dejouhanet
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
Enable ccache and cache folder between builds.
parent
7fdf2924
Changes
1
Hide whitespace changes
Inline
Side-by-side
Showing
1 changed file
with
15 additions
and
117 deletions
+15
-117
.gitlab-ci.yml
.gitlab-ci.yml
+15
-117
No files found.
.gitlab-ci.yml
View file @
3c77cc75
# This YAML recipe builds KStars with INDI support, then runs all tests
# This is from packaging/linux/debian/control build-depends - fix that first if there is an issue in the CI build
.install_build_dependencies
:
&install_build_dependencies
-
apt update && apt -y install --no-install-recommends software-properties-common
-
apt update && add-apt-repository ppa:mutlaqja/ppa
-
>
apt update && apt -y install --no-install-recommends
gcc-multilib
g++-multilib
make
gettext
coreutils
cmake
extra-cmake-modules
qtbase5-dev
qtdeclarative5-dev
qtmultimedia5-dev
qtpositioning5-dev
libqt5websockets5-dev
libqt5svg5-dev
libqt5sql5-sqlite
kdoctools-dev
libkf5config-dev
libkf5guiaddons-dev
libkf5i18n-dev
libkf5newstuff-dev
libkf5notifications-dev
libkf5xmlgui-dev
libkf5plotting-dev
libkf5crash-dev
libkf5notifyconfig-dev
libeigen3-dev
zlib1g-dev
libcfitsio-dev
libnova-dev
libindi-dev
indi-bin
wcslib-dev
libraw-dev
libgsl-dev
phonon4qt5-backend-vlc
qt5keychain-dev
libsecret-1-dev
# Build dependencies are in packaged into image definition 'docker/Dockerfile'
# This is from packaging/linux/debian/control recommends/depends - fix that first if there is an issue in the CI build
.install_test_dependencies
:
&install_test_dependencies
-
apt update && apt -y install --no-install-recommends software-properties-common
-
apt update && add-apt-repository ppa:mutlaqja/ppa && add-apt-repository ppa:pch/phd2
-
>
apt update &&
apt -y --no-install-recommends install
make
cmake
extra-cmake-modules
xplanet
xplanet-images
astrometry.net
kded5
kinit
libindi1
indi-bin
breeze-icon-theme
libqt5sql5-sqlite
qml-module-qtquick-controls
phd2
xvfb
# As of 202009, two-stage pipeline fails on propagation of artifact from stage build to stage test
# Probably because the upload uses a webdav REST API, and there are many large files in the list
#image: ubuntu:latest
# We cache the ccache folder
cache
:
key
:
"
$CI_JOB_ID"
paths
:
-
.ccache
# Run the full validation in one step
# The artifacts take far too much time to propagate from one step to the other
...
...
@@ -76,13 +19,16 @@ build-and-test:
stage
:
test
interruptible
:
true
image
:
tallfurryman/kstars-ci
# before_script:
# - *install_build_dependencies
# - *install_test_dependencies
before_script
:
-
apt update && apt install -y --no-install-recommends ccache
-
mkdir -p .ccache
-
export CCACHE_BASEDIR=${PWD}
-
export CCACHE_DIR=${PWD}/.ccache
-
du -hs ${CCACHE_DIR}
script
:
-
mkdir -p kstars-build
-
cd kstars-build
-
cmake -DCMAKE_BUILD_TYPE=Release ..
-
cmake -DCMAKE_BUILD_TYPE=Release ..
-DCCACHE_SUPPORT=ON
-
make -j$(nproc) clean all install
-
rm -rf Testing
-
xvfb-run make test QT_TEST_TIMEOUT_FUNCTION=600000 QT_QPA_PLATFORM=eglfs ARGS='-T test -V --output-on-failure --no-compress-output' ||
true
...
...
@@ -93,59 +39,11 @@ build-and-test:
junit
:
kstars-build/junit_result.xml
# This part kept for reference, does not work on our gitlab instance
# Mainly because of the propagation of artifact from stage build to stage test
# Probably because the upload uses a webdav REST API, and there are many large files in the list
# In the meantime, following up on the many gitlab issues reporting that problem
# We build and test
#stages:
# - build
# - test
# We cache the build folder per job and per branch
# cache:
# key: "$CI_COMMIT_REF_SLUG"
# paths:
# - kstars-build/
# Consolidate runner with build packages and build
#build-kstars:
# stage: build
# interruptible: true
# before_script:
# - *install_build_dependencies
# script:
# - mkdir -p kstars-build
# - cd kstars-build
# - cmake -DCMAKE_BUILD_TYPE=Release ..
# - make -j$(nproc) clean all
# artifacts:
# expire_in: 3600 sec
# paths:
# - kstars-build/
# exclude:
# - kstars-build/**/*.o
# Consolidate runner with test packages and test
#test-kstars:
# stage: test
# interruptible: true
# needs:
# - build-kstars
# dependencies:
# - build-kstars
# before_script:
# - *install_test_dependencies
# script:
# - cd kstars-build
# - rm -rf Testing
# - xvfb-run -a make test QT_TEST_TIMEOUT_FUNCTION=600000 ARGS='-T test --no-compress-output'
# artifacts:
# reports:
# junit:
# kstars-build/Testing/**.xml
build-appimage
:
image
:
tallfurryman/kstars-ci
before_script
:
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
.
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment