mirror of
https://gitlab.com/fdroid/fdroidserver.git
synced 2024-11-20 13:50:12 +01:00
buildserver: setup env vars using standard script
bash provides a standard file location for a script to be run when the shell starts: /etc/profile.d/ This converts the scattered bits of code for making ~/.bsenv into a single provisioning script to generate /etc/profile.d/bsenv.sh, which gets automatically executed when bash starts
This commit is contained in:
parent
721b3b79a6
commit
e449d2f583
@ -97,12 +97,6 @@ easy_install_package "compare-locales" do
|
||||
action :install
|
||||
end
|
||||
|
||||
execute "add-bsenv" do
|
||||
user user
|
||||
command "echo \". ./.bsenv \" >> /home/#{user}/.bashrc"
|
||||
not_if "grep bsenv /home/#{user}/.bashrc"
|
||||
end
|
||||
|
||||
execute "set-default-java" do
|
||||
command "update-java-alternatives --set java-1.7.0-openjdk-i386"
|
||||
end
|
||||
|
@ -40,9 +40,3 @@ EOF
|
||||
chmod a+x /opt/gradle/bin/gradle
|
||||
"
|
||||
end
|
||||
|
||||
execute "add-android-ndk-path" do
|
||||
user user
|
||||
command "echo \"export PATH=\\$PATH:/opt/gradle/bin #PATH-GRADLE\" >> /home/#{user}/.bsenv"
|
||||
not_if "grep PATH-GRADLE /home/#{user}/.bsenv"
|
||||
end
|
||||
|
16
buildserver/setup-env-vars
Normal file
16
buildserver/setup-env-vars
Normal file
@ -0,0 +1,16 @@
|
||||
#!/bin/sh
|
||||
#
|
||||
# sets up the environment vars needed by the build process
|
||||
|
||||
set -e
|
||||
set -x
|
||||
|
||||
bsenv=/etc/profile.d/bsenv.sh
|
||||
|
||||
echo "# generated on "`date` > $bsenv
|
||||
|
||||
echo export ANDROID_HOME=$1 >> $bsenv
|
||||
echo export ANDROID_NDK_HOME=$2 >> $bsenv
|
||||
echo 'export PATH=$PATH:${ANDROID_HOME}/tools:${ANDROID_HOME}/platform-tools:/opt/gradle/bin' >> $bsenv
|
||||
|
||||
chmod 0644 $bsenv
|
@ -388,7 +388,7 @@ def build_server(app, build, vcs, build_dir, output_dir, force):
|
||||
if options.verbose:
|
||||
cmdline += ' --verbose'
|
||||
cmdline += " %s:%s" % (app.id, build.vercode)
|
||||
chan.exec_command('bash -c ". ~/.bsenv && ' + cmdline + '"')
|
||||
chan.exec_command('bash -c "' + cmdline + '"')
|
||||
output = bytes()
|
||||
while not chan.exit_status_ready():
|
||||
while chan.recv_ready():
|
||||
|
@ -373,6 +373,12 @@ if config['apt_package_cache']:
|
||||
""".format(aptcachedir)
|
||||
|
||||
vagrantfile += """
|
||||
|
||||
config.vm.provision "shell" do |shell|
|
||||
shell.path = "setup-env-vars"
|
||||
shell.args = ["/home/vagrant/android-sdk", "/home/vagrant/android-ndk"]
|
||||
end
|
||||
|
||||
config.vm.provision :chef_solo do |chef|
|
||||
chef.cookbooks_path = "cookbooks"
|
||||
chef.log_level = :debug
|
||||
|
Loading…
Reference in New Issue
Block a user