[chef] Re: Re: Run as root or as vagrant user


Chronological Thread 
  • From: AJ Christensen < >
  • To: chef < >
  • Subject: [chef] Re: Re: Run as root or as vagrant user
  • Date: Wed, 15 May 2013 08:26:45 +1200

You've got the environment parameters in the bash script itself.

The environment parameter is a parameter to the EXECUTE and SCRIPT
resources e.g.

bash "script with env vars" do
  environment( "SOME_KEY" => "SOME_VALUE", "ANOTHER_KEY" => "ANOTHER_VALUE" )
  code <<-EOH
echo 'Env dump'
env
echo 'Env dumped'
env SOME_KEY
env ANOTHER_KEY
echo 'specific keys dumped'
EOH
end

As for whether Maven will honor this, I don't know, but it's trivial
to test that Chef can pass environment variables into a new process --
and this definitely does work.

Cheers,

AJ

On 15 May 2013 08:18, Mark H. Nichols 
< >
 wrote:
>
> On May 10, 2013, at 5:46 PM, AJ Christensen 
> < >
>  wrote:
>
> Try the 'environment' parameter to the bash script resource (it's
> actually from the Execute resource, but this inherits that)
>
> bash 'foo' do
>  environment 'MAVEN_OPTS' => '-Xms1024m -Xmx2048m -XX:MaxPermSize=500m'
> end
>
>
> I added the "environment" setting to my recipe, resulting in this code:
>
> bash "mvn install -DskipTests" do
>   code <<-EOH
>   environment 'MAVEN_OPTS' => '-Xms1024m -Xmx2048m -XX:MaxPermSize=500m'
>   environment 'JAVA_OPTS' => '-Xms1024m -Xmx2048m -XX:MaxPermSize=512m
> -noverify'
>   cd /home/vagrant/src/jbossas
>   /usr/local/maven3/bin/mvn install -DskipTests -Dcheckstyle.skip=true
>   EOH
> end
>
>
> However, I'm still getting a Java Heap space error.
>
> [INFO] BUILD FAILURE
> [INFO]
> ------------------------------------------------------------------------
> [INFO] Total time: 2:01.567s
> [INFO] Finished at: Tue May 14 20:13:36 UTC 2013
> [INFO] Final Memory: 105M/121M
> [INFO]
> ------------------------------------------------------------------------
> [ERROR] Failed to execute goal
> org.apache.maven.plugins:maven-compiler-plugin:2.3.2:compile
> (default-compile) on project jboss-as-clustering-infinispan: Fatal error
> compiling: Error while executing the compiler. InvocationTargetException:
> Java heap space -> [Help 1]
>
>
> From the output it appears that the "environment" setting is not working, as
> the memory is shown as 121M and not the 1024M minimum asked for.
>
> Is it not possible to use Maven to build something during a Chef run?
>
>
>
>
> etc.
>
> Maybe consider structuring it a little different as well? Write a
> shell script or similar, included in your code-base which wraps your
> 'mvn install', then just run that from Chef. That way you can re-run
> or developers could run it if you're hooning around by hand anyway.
> Just a thought :)
>
>
> Ultimately I'd like to have two recipes in the cookbook. One to install a
> pre-built JBoss AS 7.1.3 binary, and a second one to build it on the fly.
> The second one would all developers to tweak the build to add or remove
> debugging options as needed. I am using :shell provisioning elsewhere in my
> setup. I'm not convinced that using that method would get around this
> problem however.
>
> -- Mark
>



Archive powered by MHonArc 2.6.16.

§