Hide Forgot
If an application was created in OSE 1.2 and it had jenkins-client added, the gear most likely ended up with a copy of jenkins_shell_command in e.g. ~/php/metadata/jenkins_shell_command. This is because most web framework cartridges in OSE 1.2 have their own copy of jenkins_shell_command that is specific to that cartridge. With OSE 2.0, the custom jenkins_shell_command has been removed from web framework cartridges and only a couple of them have a custom one at this time. When upgrading a 1.2 app to 2.0, the gear's jenkins_shell_command should be removed as long as the web framework cartridge doesn't still have a custom version of that file. This is because the jenkins-client cartridge will use the gear's primary cartridge's jenkins_shell_command when creating the job in jenkins, if it exists. This wouldn't be correct, as the custom jenkins_shell_command is a remnant from the previous version of the cartridge, and must be deleted. If not, even if the user deletes jenkins-client from the application and re-adds it, it will still create the job using the previous version of jenkins_shell_command, and it won't be able to take advantage of the latest build/deployment features appropriately. See https://bugzilla.redhat.com/show_bug.cgi?id=1033581 for more details.
Following http://etherpad.corp.redhat.com/ose-2-0-upgrade-2014-01-07, and replace puddle using 2.0.z/2014-01-08.1, verification is PASS. Create app in ose-1.2, go to /var/lib/openshift/ # find .|grep jenkins_shell_command ./5298181af16d95099e0002dc/jbossews/metadata/jenkins_shell_command ./.cartridge_repository/redhat-python/0.0.1/versions/2.7/metadata/jenkins_shell_command.erb ./.cartridge_repository/redhat-python/0.0.1/versions/3.3/metadata/jenkins_shell_command.erb ./.cartridge_repository/redhat-python/0.0.1/versions/2.6/metadata/jenkins_shell_command.erb ./.cartridge_repository/redhat-jbossews/0.0.1/metadata/jenkins_shell_command.erb ./.cartridge_repository/redhat-perl/0.0.1/metadata/jenkins_shell_command.erb ./.cartridge_repository/redhat-ruby/0.0.2/metadata/jenkins_shell_command.erb ./.cartridge_repository/redhat-php/0.0.2/metadata/jenkins_shell_command.erb ./.cartridge_repository/redhat-jenkins-client/0.0.1/metadata/jenkins_shell_command ./.cartridge_repository/redhat-jbosseap/0.0.1/metadata/jenkins_shell_command.erb ./52982b9ef16d95099e000347/jbosseap/metadata/jenkins_shell_command ./52980c45f16d95099e000100/jbossews/metadata/jenkins_shell_command ./52980a8cf16d95099e0000c1/php/metadata/jenkins_shell_command ./52ceab78f16d956a1f000010/perl/metadata/jenkins_shell_command ./52980b24f16d95099e0000e4/ruby/metadata/jenkins_shell_command ./5298071af16d95099e00008d/ruby/metadata/jenkins_shell_command ./5298050df16d95099e000052/python/versions/2.7/metadata/jenkins_shell_command ./5298050df16d95099e000052/python/versions/3.3/metadata/jenkins_shell_command ./5298050df16d95099e000052/python/versions/2.6/metadata/jenkins_shell_command ./52981526f16d95099e00023d/php/metadata/jenkins_shell_command ./52981043f16d95099e000172/jbosseap/metadata/jenkins_shell_command ./529811a3f16d95099e0001a7/perl/metadata/jenkins_shell_command ./52980e3ff16d95099e000138/jbosseap/metadata/jenkins_shell_command ./52980d3cf16d95099e00011c/jbossews/metadata/jenkins_shell_command ./529816d1f16d95099e0002a7/ruby/metadata/jenkins_shell_command ./5298162df16d95099e000272/python/versions/2.7/metadata/jenkins_shell_command ./5298162df16d95099e000272/python/versions/3.3/metadata/jenkins_shell_command ./5298162df16d95099e000272/python/versions/2.6/metadata/jenkins_shell_command ./529812ecf16d95099e0001fb/ruby/metadata/jenkins_shell_command ./52981937f16d95099e000311/jbossews/metadata/jenkins_shell_command ./52982bf6f16d95bcfa00000f/perl/metadata/jenkins_shell_command Then upgrade env to 2.0, check again: # find .|grep jenkins_shell_command ./5298181af16d95099e0002dc/jenkins-client/metadata/jenkins_shell_command ./.cartridge_repository/redhat-python/0.0.8/usr/versions/2.7/metadata/jenkins_shell_command.erb ./.cartridge_repository/redhat-python/0.0.8/usr/versions/2.6/metadata/jenkins_shell_command.erb ./.cartridge_repository/redhat-jenkins-client/0.0.5/metadata/jenkins_shell_command ./52980a8cf16d95099e0000c1/jenkins-client/metadata/jenkins_shell_command ./52ceab78f16d956a1f000010/jenkins-client/metadata/jenkins_shell_command ./5298050df16d95099e000052/python/versions/2.7/metadata/jenkins_shell_command ./5298050df16d95099e000052/python/versions/3.3/metadata/jenkins_shell_command ./5298050df16d95099e000052/python/versions/2.6/metadata/jenkins_shell_command ./5298050df16d95099e000052/python/metadata/jenkins_shell_command ./52980e3ff16d95099e000138/jenkins-client/metadata/jenkins_shell_command ./529816d1f16d95099e0002a7/jenkins-client/metadata/jenkins_shell_command ./5298162df16d95099e000272/python/versions/2.7/metadata/jenkins_shell_command ./5298162df16d95099e000272/python/versions/3.3/metadata/jenkins_shell_command ./5298162df16d95099e000272/python/versions/2.6/metadata/jenkins_shell_command ./5298162df16d95099e000272/python/metadata/jenkins_shell_command ~/<cartridge>/metadata/jenkins_shell_command is already removed, and add jenkins-client to app, add hot_deploy marker to app, then trigger jenkins build, hot deploy is working well. Here I tested php, perl jbosseap, scalable jbossews and scalable ruby-1.9 cartrige. So verification is PASS.