1
0
mirror of https://github.com/qTox/qTox.git synced 2024-03-22 14:00:36 +08:00

chore(travis): add deployment of git stats to the github pages

With all authors shown #3898 could be fixed.
This commit is contained in:
Zetok Zalbavar 2016-12-14 20:31:36 +00:00
parent fba5f8ccc4
commit 49e362a72a
No known key found for this signature in database
GPG Key ID: C953D3880212068A
3 changed files with 95 additions and 0 deletions

View File

@ -15,6 +15,13 @@ matrix:
env: JOB=verify-commit-format
- os: linux
env: JOB=build-docs DOXYGEN_CONFIG_FILE=doxygen.conf
- os: linux
env: JOB=build-gitstats GITSTATS_DIR=gitstats
addons:
apt:
packages:
- gitstats
# the actual compilin'
- os: linux
env: JOB=build-ubuntu-14-04
- os: osx
@ -49,3 +56,8 @@ after_success:
&& test $TRAVIS_BRANCH == "master"
&& test $JOB == "build-docs"
&& bash ./.travis/deploy-docs.sh
->
test $TRAVIS_PULL_REQUEST == "false"
&& test $TRAVIS_BRANCH == "master"
&& test $JOB == "build-gitstats"
&& bash ./.travis/deploy-gitstats.sh

53
.travis/build-gitstats.sh Executable file
View File

@ -0,0 +1,53 @@
#!/bin/bash
#
# Copyright © 2016 The qTox Project Contributors
#
# This program is free software: you can redistribute it and/or modify
# it under the terms of the GNU General Public License as published by
# the Free Software Foundation, either version 3 of the License, or
# (at your option) any later version.
#
# This program is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
# GNU General Public License for more details.
#
# You should have received a copy of the GNU General Public License
# along with this program. If not, see <http://www.gnu.org/licenses/>.
# Scripts for generating gitstats on travis
#
# Downloads current git repo, and builds its stats.
# usage:
# ./$script
# Fail as soon as an error appears
set -eu -o pipefail
# need to download whole history, since travis does only a shallow clone
get_repo() {
git clone https://github.com/qTox/qTox.git
}
make_stats() {
gitstats \
-c authors_top=1000 \
-c max_authors=100000 \
qTox \
"$GITSTATS_DIR"
}
# check if at least something has been generated
verify_exists() {
[[ -e "$GITSTATS_DIR/index.html" ]]
}
main() {
get_repo
make_stats
verify_exists
}
main

30
.travis/deploy-gitstats.sh Executable file
View File

@ -0,0 +1,30 @@
#!/bin/bash
#
# Copyright © 2016 The qTox Project Contributors
#
# This program is free software: you can redistribute it and/or modify
# it under the terms of the GNU General Public License as published by
# the Free Software Foundation, either version 3 of the License, or
# (at your option) any later version.
#
# This program is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
# GNU General Public License for more details.
#
# You should have received a copy of the GNU General Public License
# along with this program. If not, see <http://www.gnu.org/licenses/>.
cd "$GITSTATS_DIR"
COMMIT=$(cd qTox && git describe)
git init --quiet
git config user.name "Travis CI"
git config user.email "qTox@users.noreply.github.com"
git add .
git commit --quiet -m "Deploy to GH pages from commit: $COMMIT"
echo "Pushing to GH pages..."
git push --force --quiet "https://${GH_TOKEN_GITSTATS}@github.com/qTox/gitstats.git" master:gh-pages &> /dev/null