Issue #16789 has been updated by Matthew Nicholson.

hm, no joy there. Here is what the master puppet.conf looks like:

    [agent]
    classfile = $vardir/classes.txt
    localconfig = $vardir/localconfig
    server=provisions.rc.fas.harvard.edu
    runinterval=10800
    splay=true
    report = true
    pluginsync = true
    graph = true
    reportdir = /var/lib/puppet/reports
    environment = production
    configtimeout = 900
    [master]
    configtimeout = 900
    tagmap = /etc/puppet/tagmail.conf
    ca_port = 8140
    puppetdlockfile = /var/lib/puppet/state/puppetdlock
    statefile = /var/lib/puppet/state/state.yaml
    splaylimit = 1800
    classfile = /var/lib/puppet/state/classes.txt
    report_port = 8140
    lastrunfile = /var/lib/puppet/state/last_run_summary.yaml
    graphdir = /var/lib/puppet/state/graphs
    report = true
    clientyamldir = /var/lib/puppet/client_yaml
    puppetdlog = /var/lib/puppet/log/puppetd.log
    inventory_server = localhost
    ca_server = localhost
    lastrunreport = /var/lib/puppet/state/last_run_report.yaml
    localconfig = /var/lib/puppet/state/localconfig
    client_datadir = /var/lib/puppet/client_data
    clientbucketdir = /var/lib/puppet/clientbucket
    report_server = provisions.rc.fas.harvard.edu
    inventory_port = 8140
    pidfile = /var/lib/puppet/run/master.pid
    manifestdir = /etc/puppet/manifests
    masterhttplog = /var/lib/puppet/log/masterhttp.log
    bucketdir = /var/lib/puppet/bucket
    reports = foreman
    fileserverconfig = /etc/puppet/fileserver.conf
    #manifest = /etc/puppet/manifests/site.pp
    rest_authconfig = $confdir/auth.conf
    storeconfigs = true
    storeconfigs_backend = puppetdb
    yamldir = /var/lib/puppet/yaml
    reportdir = /var/lib/puppet/reports
    #modulepath = /etc/puppet/modules
    config = /etc/puppet/puppet.conf
    masterlog = /var/lib/puppet/log/puppetmaster.log
    ssl_client_header = SSL_CLIENT_S_DN
    ssl_client_verify_header = SSL_CLIENT_VERIFY
    server_datadir = /var/lib/puppet/server_data
    libdir = /var/lib/puppet/lib
    inventory_terminus = yaml
    publickeydir = /var/lib/puppet/ssl/public_keys
    pluginsource = puppet://puppet/plugins
    privatedir = /var/lib/puppet/ssl/private
    factpath = /var/lib/puppet/lib/facter:/var/lib/puppet/facts
    hostcert = /var/lib/puppet/ssl/certs/$certname.pem
    statedir = /var/lib/puppet/state
    factsync = true
    route_file = /etc/puppet/routes.yaml
    localcacert = /var/lib/puppet/ssl/certs/ca.pem
    certdir = /var/lib/puppet/ssl/certs
    httplog = /var/lib/puppet/log/http.log
    requestdir = /var/lib/puppet/ssl/certificate_requests
    pluginsync = true
    rundir = /var/lib/puppet/run
    passfile = /var/lib/puppet/ssl/private/password
    hostprivkey = /var/lib/puppet/ssl/private_keys/$certname.pem
    hostcrl = /var/lib/puppet/ssl/crl.pem
    authconfig = /etc/puppet/namespaceauth.conf
    node_terminus = plain
    confdir = /etc/puppet
    certname = provisions.rc.fas.harvard.edu
    vardir = /var/lib/puppet
    ssldir = /var/lib/puppet/ssl
    plugindest = /var/lib/puppet/lib
    logdir = /var/lib/puppet/log
    privatekeydir = /var/lib/puppet/ssl/private_keys
    hostcsr = /var/lib/puppet/ssl/csr_$certname.pem
    factsource = puppet://puppet/facts/
    hostpubkey = /var/lib/puppet/ssl/public_keys/$certname.pem
    rrddir = /var/lib/puppet/rrd
    rrdinterval = 1800
    cacert = /var/lib/puppet/ssl/ca/ca_crt.pem
    cacrl = /var/lib/puppet/ssl/ca/ca_crl.pem
    signeddir = /var/lib/puppet/ssl/ca/signed
    autosign = /etc/puppet/autosign.conf
    ca_name = Puppet CA: $certname
    cakey = /var/lib/puppet/ssl/ca/ca_key.pem
    caprivatedir = /var/lib/puppet/ssl/ca/private
    capass = /var/lib/puppet/ssl/ca/private/ca.pass
    cert_inventory = /var/lib/puppet/ssl/ca/inventory.txt
    cadir = /var/lib/puppet/ssl/ca
    capub = /var/lib/puppet/ssl/ca/ca_pub.pem
    csrdir = /var/lib/puppet/ssl/ca/requests
    serial = /var/lib/puppet/ssl/ca/serial
    dblocation = /var/lib/puppet/state/clientconfigs.sqlite3
    archive_file_server = puppet
    devicedir = /var/lib/puppet/devices
    deviceconfig = /etc/puppet/device.conf
    templatedir = /var/lib/puppet/templates
    #for dynamic envs w/ git
    environment = production
    manifest = /etc/puppet/environments/$environment/manifests/site.pp
    modulepath=/etc/puppet/environments/$environment/modules
    
----------------------------------------
Bug #16789: server overridding client set environments
https://projects.puppetlabs.com/issues/16789#change-72809

Author: Matthew Nicholson
Status: Needs More Information
Priority: High
Assignee: Matthew Nicholson
Category: environments
Target version: 3.0.x
Affected Puppet version: 3.0.0
Keywords: environment autoritative
Branch: 


Running a 3.0.0 client with a specific environment yields:

[root@nichols2tst ~]# puppet --version
3.0.0
[root@nichols2tst ~]# puppet agent --test --environment=puppet3
Warning: Local environment: "puppet3" doesn't match server specified node 
environment "production", switching agent to "production".

the same results occurs with environment set in the clients puppet.conf

I can verify we ware NOT using a ENC setting environments (node_terminus = 
plain, just nodes.pp for us)

Doing the same on a 2.7.19 client works as expected (the client uses the 
environment specified) 

# References

 * [Puppet Users - environment set by client issues on nodes running 
3.0.0](https://groups.google.com/d/topic/puppet-users/vRL5k2bnKTk/discussion)


-- 
You have received this notification because you have either subscribed to it, 
or are involved in it.
To change your notification preferences, please click here: 
http://projects.puppetlabs.com/my/account

-- 
You received this message because you are subscribed to the Google Groups 
"Puppet Bugs" group.
To post to this group, send email to [email protected].
To unsubscribe from this group, send email to 
[email protected].
For more options, visit this group at 
http://groups.google.com/group/puppet-bugs?hl=en.

Reply via email to