bamboo works like this:
it gets your files from git
and it puts them in a working directory that only bamboo touches
and for me, what i do then is i run composer update on the working directory
and composer does all the wonderful things it does including putting symlinks in its bin dir out to your executables
and mine looks like this
0 lrwxrwxrwx 1 xxx xxx 24 Sep 17 15:54 behat -> ../behat/behat/bin/behat* 0 lrwxrwxrwx 1 xxx xxx 26 Jun 5 16:16 phpunit -> ../phpunit/phpunit/phpunit* 0 lrwxrwxrwx 1 xxx xxx 23 Jun 5 16:16 wp -> ../wp-cli/wp-cli/bin/wp* 0 lrwxrwxrwx 1 xxx xxx 27 Jun 5 16:16 wp.bat -> ../wp-cli/wp-cli/bin/wp.bat*
as it should
and then bamboo copies everything from the working directory out to the actual location on the file system where the wordpress install lives.
and then after that things look like this
4 -rwxr-xr-x 1 xxx xxx 859 Feb 22 2015 behat* 0 lrwxrwxrwx 1 xxx xxx 26 Apr 27 16:42 phpunit -> ../phpunit/phpunit/phpunit* 0 lrwxrwxrwx 1 xxx xxx 23 Apr 27 16:43 wp -> ../wp-cli/wp-cli/bin/wp* 0 lrwxrwxrwx 1 xxx xxx 27 Apr 27 16:43 wp.bat -> ../wp-cli/wp-cli/bin/wp.bat*
hey now that is not right, what gives bamboo?
i did this many times, i uninstalled behat (which is a laborious process when you have to involve git, composer, and bamboo to make this happen) and reinstalled and yes, every time. no symlink. actual file. my behat command doesn’t work.
so this is frustrating, but really it is also disturbing because i don’t understand what is happening and uuhhhhhhh oh god how do i not understand this?
so i google and google has something like this about how ant doesn’t respect symlinks. ant? okay so technically speaking i used to be on the ops side of “devops” but that was a really long time ago before ant existed and i know i had to figure out some really basic ant patterns when i first set up my bamboo stuff but
this system seems really fragile and i feel kind of stupid.
p.s. i know i will figure it out, this is more of a ‘share my pain’ than a ‘solve my problem’ sort of post.