#!/bin/bash NAME=$(sed -n '/^Name:/{s/.* //;p}' *.spec) OWNER=$(sed -n '/^%global gh_owner/{s/.* //;p}' $NAME.spec) PROJECT=$(sed -n '/^%global gh_project/{s/.* //;p}' $NAME.spec) VERSION=$(sed -n '/^Version:/{s/.* //;p}' $NAME.spec) COMMIT=$(sed -n '/^%global gh_commit/{s/.* //;p}' $NAME.spec) SHORT=${COMMIT:0:7} if [ -f $NAME-$VERSION-$SHORT.tgz ]; then echo "Skip $NAME-$VERSION-$SHORT.tgz" else echo -e "\nCreate git snapshot\nName=$NAME, Owner=$OWNER, Project=$PROJECT, Version=$VERSION, Commit=$COMMIT\n" echo "Cloning..." git clone https://github.com/$OWNER/$PROJECT.git $PROJECT-$COMMIT echo "Getting commit..." pushd $PROJECT-$COMMIT git checkout $COMMIT || exit1 cp composer.json ../ composer config platform.php 7.4 composer install --no-interaction --no-progress --no-dev --optimize-autoloader cp vendor/composer/installed.json ../ popd echo "Archiving..." tar czf $NAME-$VERSION-$SHORT.tgz --exclude .git $PROJECT-$COMMIT echo "Cleaning..." rm -rf $PROJECT-$COMMIT fi