| Code changes introduced with PUP-10216 break "feature branch" workflow. release notes excerpt:
Failure to fetch node definition results in bad pluginsync and cascading failure - Previously, Puppet agents would make a node definition request to the server to find out the correct environment to run in. This request has now been removed, and the agent saves its last used environment in the last_run_summary.yaml file. If the environment is not set in the CLI or config, agents attempt to use the environment in last_run_summary.yaml — only if the previous run had an agent/server environment mismatch. PUP-10216
We manage our environments within Foreman (ENC) and r10k. If an environment does not exist anymore (for example because of a merge in git), the next agent run fails: # puppet agent -t Info: Using environment '317_new_feature' Notice: Environment '317_new_feature' not found on server, skipping initial pluginsync. Info: Loading facts Error: Could not retrieve catalog from remote server: Find /puppet/v3/catalog/server11 resulted in 404 with the message: {"message":"Not Found: Could not find environment '317_new_feature'","issue_kind":"RUNTIME_ERROR"} Warning: Not using cache on failed catalog Error: Could not retrieve catalog; skipping run When working with feature branches environments get created and deleted often. A possible solution may be to introduce a config option to re-enable the initial query to ENC. |