Try unchecking Set default value on the dataLayer variables. I believe that's overwriting any values you are passing. Also, what does your rule look like?
EDIT:
I found the problem. You need to have an event sent with the onclick.
Steps to fix:
Step 1: Create a new event macro. I typically call mine trackEvent.
Step 2: Add that event to your datalayer.push (the event macro is need in order to pass an event type action into GTM):
dataLayer.push({
'event': 'trackEvent',
'location': 'header',
'linkname': gaTrackInfo
});
Step 3: Remove {{url}} matches RegEx .*
and add {{event}} equals trackEvent
:
Step 4: Publish container.