CI Build not triggered by a merge request

So I probably just don’t understand gitlab-ci …

I expected that a CI build request would be triggered when a merge request was accepted on a branch, but that isn’t happening…

Just updated to CE version 7.12.2 … previous versions were: 7.10.1 and 7.12.1
Version 7.12 is my real first try at using gitlab-ci

My runners (gitlab-ci-multi-runner) are working and the .gitlab-ci.yml file seems to be working ok…
I can get both my branches to build by setting them as the default in gitlab and then using the services/gitlab-ci Test button…

My devl and pprdtest branches are protected with developer push enabled.
The devl branch is the default.

I committed directly to the devl branch (using the gitlab web editor) and a ci build is triggered for devl… good that’s expected…

Then issued a merge request to move the devl commit to the pprdtest branch.
I get a CI passed icon and accept the merge request … all reports good… Except that a CI build was never triggered for the pprdtest branch, so no code ever gets deployed.

Here’s my .gitlab-ci.yml file:

# Deploy script
develop:
  script: echo Do nothing for now
  tags:
    - trident-dev
  only:
    - devl

testing:
  script: '/home/gitlab_ci_multi_runner/pro-services-deploy'
  tags:
    - trident-pprd
  only:
    - pprdtest

What am I doing wrong here!
The production logs for both gitlab-ci and gitlab-rake seem fine … nothing indicating an error.

Are my expectations wrong?

What is really frustrating is that a freshly created repo seems to behave just as I’d expect … But applying the setup to an existing repo doesn’t have the same effect. In fact with my existing repo… commits pushed from my laptop to the gitlab devl branch don’t trigger builds either. If I create a new branch in gitlab, check that out on the laptop and push commits; it works fine…

[Solved] I think… The root cause was a problem in the hooks directory for the repository, that I most likely created myself while attempting deploys before gitlab-ci became a standard part of the gitlab-ce distribution.

The issue was indentified using this standard diagnostic:

gitlab-rake gitlab:check

which identified an issue with the hooks folder for the repository and gave a command to recreate it.
Now that the hooks folder is ok … deploys are working as one would expect…

So I may not really understand gitlab-ci yml files yet… but builds are happening as expected!
… and displaying ignorance in public leads to another fix … so thankyou!!