Reintroduce jam rule for creating remote repository for testing.
* 'jam build-remote-test-repository' can now be used to create a remote repository which will then be used by the build system, such that the resulting package set can be tested.
This commit is contained in:
parent
4320349447
commit
49b970d9c2
@ -76,6 +76,17 @@ rule ProcessCommandLineArguments
|
||||
Always $(JAM_TARGETS) ;
|
||||
}
|
||||
|
||||
# Copy the given set of local package files to the remote repository
|
||||
# and create a new version of that remote repository (useful for
|
||||
# testing the package repository before pushing).
|
||||
case build-remote-test-repository : {
|
||||
BuildRemoteHaikuPortsRepository $(JAM_TARGETS[1])
|
||||
: $(JAM_TARGETS[2-]) ;
|
||||
JAM_TARGETS = $(JAM_TARGETS[1]) ;
|
||||
NotFile $(JAM_TARGETS) ;
|
||||
Always $(JAM_TARGETS) ;
|
||||
}
|
||||
|
||||
# A target starting with "@" is a build profile.
|
||||
case @* : {
|
||||
HAIKU_BUILD_PROFILE = [ Match "@(.*)" : $(JAM_TARGETS[1]) ] ;
|
||||
|
@ -652,3 +652,26 @@ actions UploadPackages1
|
||||
scp $(HAIKU_REMOTE_REPOSITORY_PACKAGES) $remote:hpkg-upload/
|
||||
fi
|
||||
}
|
||||
|
||||
|
||||
rule BuildRemoteHaikuPortsRepository target : packages
|
||||
{
|
||||
UploadPackages $(target) : $(packages) ;
|
||||
|
||||
local packageListFile = <repository-package-list>HaikuPorts-packages ;
|
||||
BuildRemoteHaikuPortsRepository1 $(target) : $(packageListFile) ;
|
||||
}
|
||||
|
||||
|
||||
actions BuildRemoteHaikuPortsRepository1
|
||||
{
|
||||
remote=git.haiku-os.org
|
||||
|
||||
repoArch=$(TARGET_PACKAGING_ARCH)
|
||||
scp $(2) $remote:hpkg-upload/$repoArch
|
||||
|
||||
cd $(HAIKU_TOP)
|
||||
branch=`git branch | cut -c3-`
|
||||
|
||||
ssh $remote "build_repository_for_testing.sh $branch $repoArch"
|
||||
}
|
||||
|
Loading…
Reference in New Issue
Block a user