Replace rsync with tar-pipe copy in appstore packaging
Lint info.xml / xml-lint (push) Successful in 44s
Lint PHP / php-lint (8.2) (push) Successful in 2m1s
Lint PHP / php-lint (8.3) (push) Successful in 39s
Lint PHP / php-lint (8.4) (push) Successful in 38s
PHPUnit / unit-tests (push) Successful in 43s
Build release artifact / package (push) Failing after 1m32s
Lint info.xml / xml-lint (push) Successful in 44s
Lint PHP / php-lint (8.2) (push) Successful in 2m1s
Lint PHP / php-lint (8.3) (push) Successful in 39s
Lint PHP / php-lint (8.4) (push) Successful in 38s
PHPUnit / unit-tests (push) Successful in 43s
Build release artifact / package (push) Failing after 1m32s
The self-hosted Gitea runner's image has no rsync installed. tar is a core utility present on essentially any Linux base image, and its --exclude on a directory prevents descending into it at all, which also avoids the build/ output dir (itself inside the source tree) being copied into itself.
This commit is contained in:
@@ -6,25 +6,26 @@ appstore_artifact_directory=$(build_directory)/artifacts/appstore
|
||||
.PHONY: appstore
|
||||
appstore: clean
|
||||
mkdir -p $(appstore_build_directory) $(appstore_artifact_directory)
|
||||
rsync -av . $(appstore_build_directory) \
|
||||
--exclude=/.git \
|
||||
--exclude=/.gitea \
|
||||
--exclude=/.gitignore \
|
||||
--exclude=/composer.json \
|
||||
--exclude=/composer.lock \
|
||||
--exclude=/package.json \
|
||||
--exclude=/package-lock.json \
|
||||
--exclude=/node_modules \
|
||||
--exclude=/vite.config.js \
|
||||
--exclude=/src \
|
||||
--exclude=/tests \
|
||||
--exclude=/vendor \
|
||||
--exclude=/build \
|
||||
--exclude=/.php-cs-fixer.dist.php \
|
||||
--exclude=/.php-cs-fixer.cache \
|
||||
--exclude=/phpunit.xml \
|
||||
--exclude=/README.md \
|
||||
--exclude=/Makefile
|
||||
tar -cf - \
|
||||
--exclude=./.git \
|
||||
--exclude=./.gitea \
|
||||
--exclude=./.gitignore \
|
||||
--exclude=./composer.json \
|
||||
--exclude=./composer.lock \
|
||||
--exclude=./package.json \
|
||||
--exclude=./package-lock.json \
|
||||
--exclude=./node_modules \
|
||||
--exclude=./vite.config.js \
|
||||
--exclude=./src \
|
||||
--exclude=./tests \
|
||||
--exclude=./vendor \
|
||||
--exclude=./build \
|
||||
--exclude=./.php-cs-fixer.dist.php \
|
||||
--exclude=./.php-cs-fixer.cache \
|
||||
--exclude=./phpunit.xml \
|
||||
--exclude=./README.md \
|
||||
--exclude=./Makefile \
|
||||
. | tar -xf - -C $(appstore_build_directory)
|
||||
tar -czf $(appstore_artifact_directory)/$(app_name).tar.gz -C $(build_directory)/appstore $(app_name)
|
||||
|
||||
.PHONY: clean
|
||||
|
||||
Reference in New Issue
Block a user