While I run puppetlint on the hiera_defaults file manually on bitbucket server it works fine. However when it is called off pre-receive hook, fails with below error.
The locale output looks like below.
[root@bitbucket root] locale
LANG=en_US.UTF-8
LC_CTYPE="en_US.UTF-8"
LC_NUMERIC="en_US.UTF-8"
LC_TIME="en_US.UTF-8"
LC_COLLATE="en_US.UTF-8"
LC_MONETARY="en_US.UTF-8"
LC_MESSAGES="en_US.UTF-8"
LC_PAPER="en_US.UTF-8"
LC_NAME="en_US.UTF-8"
LC_ADDRESS="en_US.UTF-8"
LC_TELEPHONE="en_US.UTF-8"
LC_MEASUREMENT="en_US.UTF-8"
LC_IDENTIFICATION="en_US.UTF-8"
LC_ALL=en_US.UTF-8
[root@bitbucket root]
remote: RUNNING /opt/bitbucket/home/puppet-git-hooks/pre-receive
remote: Validating imgroups module
remote: Checking yaml syntax on files/hiera_defaults.yaml
remote: /opt/puppetlabs/puppet/lib/ruby/gems/2.1.0/gems/puppet-lint-2.0.2/lib/puppet-lint/checks.rb:23:in `split': invalid byte sequence in US-ASCII (ArgumentError)
remote: from /opt/puppetlabs/puppet/lib/ruby/gems/2.1.0/gems/puppet-lint-2.0.2/lib/puppet-lint/checks.rb:23:in `load_data'
remote: from /opt/puppetlabs/puppet/lib/ruby/gems/2.1.0/gems/puppet-lint-2.0.2/lib/puppet-lint/checks.rb:53:in `run'
remote: from /opt/puppetlabs/puppet/lib/ruby/gems/2.1.0/gems/puppet-lint-2.0.2/lib/puppet-lint.rb:174:in `run'
remote: from /opt/puppetlabs/puppet/lib/ruby/gems/2.1.0/gems/puppet-lint-2.0.2/lib/puppet-lint/bin.rb:59:in `block in run'
remote: from /opt/puppetlabs/puppet/lib/ruby/gems/2.1.0/gems/puppet-lint-2.0.2/lib/puppet-lint/bin.rb:56:in `each'
remote: from /opt/puppetlabs/puppet/lib/ruby/gems/2.1.0/gems/puppet-lint-2.0.2/lib/puppet-lint/bin.rb:56:in `run'
remote: from /opt/puppetlabs/puppet/lib/ruby/gems/2.1.0/gems/puppet-lint-2.0.2/bin/puppet-lint:7:in `<top (required)>'
remote: from /opt/puppetlabs/puppet/bin/puppet-lint:23:in `load'
remote: from /opt/puppetlabs/puppet/bin/puppet-lint:23:in `<main>'
remote: Error: /tmp/tmp.0QQaWkGUEI/imgroups/files/hiera_defaults.yaml: hiera: bad style
remote: Error: 1 subhooks failed. Declining push.(B[m