mirror of
https://github.com/shlinkio/shlink.git
synced 2025-02-25 18:45:27 -06:00
Merge pull request #215 from acelaya/feature/automatic-release
Automatic release
This commit is contained in:
commit
7f7efd45ab
20
.travis.yml
20
.travis.yml
@ -1,5 +1,7 @@
|
|||||||
language: php
|
language: php
|
||||||
|
|
||||||
|
sudo: false # Use containerized environment
|
||||||
|
|
||||||
branches:
|
branches:
|
||||||
only:
|
only:
|
||||||
- /.*/
|
- /.*/
|
||||||
@ -12,7 +14,7 @@ before_install:
|
|||||||
- phpenv config-add data/infra/travis-php/memcached.ini
|
- phpenv config-add data/infra/travis-php/memcached.ini
|
||||||
- phpenv config-add data/infra/travis-php/apcu.ini
|
- phpenv config-add data/infra/travis-php/apcu.ini
|
||||||
|
|
||||||
before_script:
|
install:
|
||||||
- composer self-update
|
- composer self-update
|
||||||
- composer install --no-interaction
|
- composer install --no-interaction
|
||||||
|
|
||||||
@ -20,9 +22,21 @@ script:
|
|||||||
- mkdir build
|
- mkdir build
|
||||||
- composer check
|
- composer check
|
||||||
|
|
||||||
after_script:
|
after_success:
|
||||||
- vendor/bin/phpcov merge build --clover build/clover.xml
|
- vendor/bin/phpcov merge build --clover build/clover.xml
|
||||||
- wget https://scrutinizer-ci.com/ocular.phar
|
- wget https://scrutinizer-ci.com/ocular.phar
|
||||||
- php ocular.phar code-coverage:upload --format=php-clover build/clover.xml
|
- php ocular.phar code-coverage:upload --format=php-clover build/clover.xml
|
||||||
|
|
||||||
sudo: false
|
# Before deploying, build dist file for current travis tag
|
||||||
|
before_deploy:
|
||||||
|
- ./build.sh ${TRAVIS_TAG#?}
|
||||||
|
|
||||||
|
deploy:
|
||||||
|
provider: releases
|
||||||
|
api_key:
|
||||||
|
secure: a9dbZchocqeuOViwUeNH54bQR5Sz7rEYXx5b9WPFtnFn9LGKKUaLbA2U91UQ9QKPrcTpsALubUYbw2CnNmvCwzaY+R8lCD3gkU4ohsEnbpnw3deOeixI74sqBHJAuCH9FSaRDGILoBMtUKx2xlzIymFxkIsgIukkGbdkWHDlRWY3oTUUuw1SQ2Xk9KDsbJQtjIc1+G/O6gHaV4qv/R9W8NPmJExKTNDrAZbC1vIUnxqp4UpVo1hst8qPd1at94CndDYM5rG+7imGbdtxTxzamt819qdTO1OfvtctKawNAm7YXZrrWft6c7gI6j6SI4hxd+ZrrPBqbaRFHkZHjnNssO/yn4SaOHFFzccmu0MzvpPCf0qWZwd3sGHVYer1MnR2mHYqU84QPlW3nrHwJjkrpq3+q0JcBY6GsJs+RskHNtkMTKV05Iz6QUI5YZGwTpuXaRm036SmavjGc4IDlMaYCk/NmbB9BKpthJxLdUpczOHpnjXXHziotWD6cfEnbjU3byfD8HY5WrxSjsNT7SKmXN3hRof7bk985ewQVjGT42O3NbnfnqjQQWr/B7/zFTpLR4f526Bkq12CdCyf5lvrbq+POkLVdJ+uFfR7ds248Ue/jBQy6kM1tWmKF9QiwisFlA84eQ4CW3I93Rp97URv+AQa9zmbD0Ve3Udp+g6nF5I=
|
||||||
|
file: "./build/shlink_${TRAVIS_TAG#?}_dist.zip"
|
||||||
|
skip_cleanup: true
|
||||||
|
on:
|
||||||
|
tags: true
|
||||||
|
php: 7.1
|
||||||
|
52
build.sh
52
build.sh
@ -8,53 +8,51 @@ if [ "$#" -ne 1 ]; then
|
|||||||
fi
|
fi
|
||||||
|
|
||||||
version=$1
|
version=$1
|
||||||
builtcontent=$(readlink -f "../shlink_${version}_dist")
|
builtcontent="./build/shlink_${version}_dist"
|
||||||
projectdir=$(pwd)
|
projectdir=$(pwd)
|
||||||
[ -f ./composer.phar ] && composerBin='./composer.phar' || composerBin='composer'
|
[ -f ./composer.phar ] && composerBin='./composer.phar' || composerBin='composer'
|
||||||
|
|
||||||
# Copy project content to temp dir
|
# Copy project content to temp dir
|
||||||
echo 'Copying project files...'
|
echo 'Copying project files...'
|
||||||
rm -rf "${builtcontent}"
|
rm -rf "${builtcontent}"
|
||||||
mkdir "${builtcontent}"
|
mkdir -p "${builtcontent}"
|
||||||
sudo chmod -R 777 "${projectdir}"/data/infra/{database,nginx}
|
rsync -av * "${builtcontent}" \
|
||||||
cp -R "${projectdir}"/* "${builtcontent}"
|
--exclude=data/infra \
|
||||||
|
--exclude=**/.gitignore \
|
||||||
|
--exclude=CHANGELOG.md \
|
||||||
|
--exclude=composer.lock \
|
||||||
|
--exclude=vendor \
|
||||||
|
--exclude=docs \
|
||||||
|
--exclude=indocker \
|
||||||
|
--exclude=docker* \
|
||||||
|
--exclude=func_tests_bootstrap.php \
|
||||||
|
--exclude=php* \
|
||||||
|
--exclude=infection.json \
|
||||||
|
--exclude=phpstan.neon \
|
||||||
|
--exclude=config/autoload/*local* \
|
||||||
|
--exclude=**/test* \
|
||||||
|
--exclude=build*
|
||||||
cd "${builtcontent}"
|
cd "${builtcontent}"
|
||||||
|
|
||||||
# Install dependencies
|
# Install dependencies
|
||||||
echo "Installing dependencies with $composerBin..."
|
echo "Installing dependencies with $composerBin..."
|
||||||
rm -rf vendor
|
${composerBin} self-update
|
||||||
rm -f composer.lock
|
${composerBin} install --no-dev --optimize-autoloader --no-progress --no-interaction
|
||||||
$composerBin self-update
|
|
||||||
$composerBin install --no-dev --optimize-autoloader --no-progress --no-interaction
|
|
||||||
|
|
||||||
# Delete development files
|
# Delete development files
|
||||||
echo 'Deleting dev files...'
|
echo 'Deleting dev files...'
|
||||||
rm build.sh
|
|
||||||
rm CHANGELOG.md
|
|
||||||
rm composer.*
|
rm composer.*
|
||||||
rm LICENSE
|
rm -f data/database.sqlite
|
||||||
rm indocker
|
|
||||||
rm docker-compose.yml
|
|
||||||
rm docker-compose.override.yml
|
|
||||||
rm docker-compose.override.yml.dist
|
|
||||||
rm func_tests_bootstrap.php
|
|
||||||
rm php*
|
|
||||||
rm README.md
|
|
||||||
rm infection.json
|
|
||||||
rm -rf build
|
|
||||||
rm -ff data/database.sqlite
|
|
||||||
rm -rf data/infra
|
|
||||||
rm -rf data/{cache,log,proxies}/{*,.gitignore}
|
|
||||||
rm -rf config/params/{*,.gitignore}
|
|
||||||
rm -rf config/autoload/{{,*.}local.php{,.dist},.gitignore}
|
|
||||||
|
|
||||||
# Update shlink version in config
|
# Update shlink version in config
|
||||||
sed -i "s/%SHLINK_VERSION%/${version}/g" config/autoload/app_options.global.php
|
sed -i "s/%SHLINK_VERSION%/${version}/g" config/autoload/app_options.global.php
|
||||||
|
|
||||||
# Compressing file
|
# Compressing file
|
||||||
echo 'Compressing files...'
|
echo 'Compressing files...'
|
||||||
rm -f "${projectdir}"/build/shlink_${version}_dist.zip
|
cd "${projectdir}"/build
|
||||||
zip -ry "${projectdir}"/build/shlink_${version}_dist.zip "../shlink_${version}_dist"
|
rm -f ./shlink_${version}_dist.zip
|
||||||
|
zip -ry ./shlink_${version}_dist.zip ./shlink_${version}_dist
|
||||||
|
cd "${projectdir}"
|
||||||
rm -rf "${builtcontent}"
|
rm -rf "${builtcontent}"
|
||||||
|
|
||||||
echo 'Done!'
|
echo 'Done!'
|
||||||
|
Loading…
Reference in New Issue
Block a user